Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

C++ का उपयोग करके OpenCV में रुचि क्षेत्र (ROI) कैसे कार्य करता है?

छवि से किसी विशेष भाग को अलग करने के लिए, हमें पहले क्षेत्र का पता लगाना होगा। फिर हमें उस क्षेत्र को मुख्य छवि से दूसरे मैट्रिक्स में कॉपी करना होगा। OpenCV में ROI इस प्रकार काम करता है।

इस उदाहरण में, शुरुआत में दो मैट्रिक्स घोषित किए गए हैं। उसके बाद, 'image_name.jpg' . नाम की एक छवि 'image1' . में लोड कर दिया गया है आव्यूह। अगली पंक्ति 'image2=image1 (रेक्ट(100, 100, 120, 120));' विशेष ध्यान देने की आवश्यकता है। यह रेखा छवि के परिभाषित क्षेत्र को काट रही है और इसे 'छवि 2' मैट्रिक्स में संग्रहीत कर रही है।

C++ का उपयोग करके OpenCV में रुचि क्षेत्र (ROI) कैसे कार्य करता है?

यह आंकड़ा दिखाता है कि हमने यहां 'रेक्ट (100,100,120,120)' कोड के साथ क्या किया है। कोड की इस पंक्ति का मूल रूप है 'रेक्ट(x, y,x1 ,y<उप>1 )'। यहां x और y आयत के शुरुआती बिंदु को परिभाषित करते हैं और x1 और y1 आयत के समापन बिंदु का प्रतिनिधित्व करता है। इन मानों को बदलकर हम आयत का आकार बदल सकते हैं।

उदाहरण

निम्नलिखित कार्यक्रम OpenCV में रुचि के क्षेत्र के कार्य को प्रदर्शित करता है:

#include
#include
#include
using namespace std;
using namespace cv;
int main() {
   Mat image1; //Declaring a matrix named 'image1'//
   Mat image2; //Declaring a matrix named 'image2'//
   image1 = imread("RGB.png"); //Loading an image name 'image_name.png into image1 matrix//
   image2 = image1(Rect(100, 100, 120, 120)); //imposing a rectangle on
   image1//
   namedWindow("Image_Window1"); //Declaring an window to show actual image//
   namedWindow("Image_Window2"); //Declaring an window to show ROI//
   imshow("Image_Window1", image1); //Showing actual image//
   imshow("Image_Window2", image2);
   waitKey(0);
   return 0;
}

आउटपुट C++ का उपयोग करके OpenCV में रुचि क्षेत्र (ROI) कैसे कार्य करता है?



  1. C++ का उपयोग करके OpenCV में एक रेखा कैसे खींचना है?

    एक रेखा खींचने के लिए हमें दो बिंदुओं की आवश्यकता होती है-आरंभिक बिंदु और अंत बिंदु। रेखा खींचने के लिए हमें कैनवास की भी आवश्यकता होती है। ओपनसीवी, हमारे कैनवास में मैट्रिक्स का उपयोग करके, हमें लाइन के शुरुआती और समाप्ति बिंदुओं को परिभाषित करने की आवश्यकता है। हमें रेखा को भी एक रंग निर्दिष्ट कर

  1. सी ++ का उपयोग कर ओपनसीवी में बाइनरी छवि को कैसे पलटना है?

    बाइनरी इमेज को इनवर्ट करने का मतलब है पिक्सल वैल्यू को इनवर्ट करना। एक दृश्य परिप्रेक्ष्य से, जब हम एक बाइनरी छवि को उलटते हैं, तो सफेद पिक्सेल काले रंग में परिवर्तित हो जाएंगे, और काले पिक्सेल सफेद में परिवर्तित हो जाएंगे। इस फ़ंक्शन का मूल रूप है - cvtColor(original_image, grayscale_image, COLOR_

  1. सी ++ का उपयोग कर ओपनसीवी में बाइनरी छवि कैसे बनाएं?

    एक द्विआधारी छवि सिर्फ एक डिजिटल छवि है जो दो रंगों, काले और सफेद का प्रतिनिधित्व करती है। इमेज प्रोसेसिंग के नजरिए से, बाइनरी इमेज में दो संभावित मानों वाले पिक्सल होते हैं- शून्य और एक। जब पिक्सेल का मान 0 होता है, तो यह एक शुद्ध काले रंग का प्रतिनिधित्व करता है। जब पिक्सेल का मान 1 होता है, तो इस