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

C++ का उपयोग करके OpenCV में एकल चैनल छवि के पिक्सेल मान को कैसे पढ़ा जाए?

डिजिटल इमेज पिक्सल से बनी होती है। OpenCV का उपयोग करके, पिक्सेल के मान को पढ़ना आसान है। हालांकि, अगर हम पिक्सेल मान प्राप्त करना चाहते हैं, तो हमें एक चैनल को अलग से संभालना होगा।

यहां हम 'cimage' नाम के मैट्रिक्स में एक इमेज लोड कर रहे हैं, और फिर यह 'cvtColor(cimage, img, COLOR_BGR2GRAY) का उपयोग करके इमेज को कनवर्ट करता है; ' और इसे 'img' नाम के मैट्रिक्स में स्टोर करें।

निम्न प्रोग्राम किसी छवि के पिक्सेल मान को पढ़ता है और कंसोल विंडो में मान दिखाता है।

उदाहरण

#include<iostream>
#include<opencv2/highgui/highgui.hpp>
#include<opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main() {
   int x;//Declaring an integer variable to hold values of pixels//
   Mat cimage = imread("colors.jpg");//loading an image//
   Mat img;//Declaring an empty matrix to store converted image//
   cvtColor(cimage, img, COLOR_BGR2GRAY);//Converting loaded image to grayscale image//
   for (int i = 0; i < img.rows; i++)//loop for rows// {
      for (int j = 0; j < img.cols; j++)//loop for columns// {
         x = (int)img.at<uchar>(i, j);//storing value of (i,j) pixel in variable//
         cout << "Value of pixel" << "(" << i << "," << j << ")" << "=" << x << endl;//showing the values in console window//
      }
   }
   imshow("Show", img);//showing the image//
   waitKey();//wait for keystroke from keyboard//
   return 0;
}

आउटपुट

C++ का उपयोग करके OpenCV में एकल चैनल छवि के पिक्सेल मान को कैसे पढ़ा जाए?


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

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

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

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

  1. सी ++ का उपयोग कर ओपनसीवी में किसी छवि के चैनलों की संख्या की गणना कैसे करें?

    इस विषय में, हम समझेंगे कि किसी छवि के चैनलों की संख्या का पता कैसे लगाया जाए। प्रोग्राम चलाने के बाद, कंसोल विंडो में चैनल का नंबर दिखाया जाएगा। चैनल की संख्या प्राप्त करने के लिए, हमने ओपनसीवी के एक वर्ग का उपयोग किया है जिसका नाम चैनल () है। जब हम इमेज मैट्रिक्स को चैनल () वर्ग के ऑब्जेक्ट के रू