बाइनरी इमेज केवल एक डिजिटल इमेज है जो दो रंगों, काले और सफेद को दर्शाती है। इमेज प्रोसेसिंग के दृष्टिकोण से, बाइनरी इमेज में दो संभावित मानों वाले पिक्सेल होते हैं - शून्य और एक। जब पिक्सेल का मान 0 होता है, तो यह शुद्ध काले रंग को दर्शाता है। जब पिक्सेल का मान 1 होता है, तो इसका मतलब शुद्ध सफेद रंग होता है।
ग्रेस्केल इमेज में, प्रत्येक के लिए 256 अलग-अलग संभावित मान होते हैं। लेकिन बाइनरी इमेज में केवल दो संभावित मान होते हैं। बाइनरी इमेज के विभिन्न प्रकार के अनुप्रयोग होते हैं। उदाहरण के लिए, मॉर्फोलॉजिकल ट्रांसफॉर्मेशन के लिए बाइनरी इमेज की आवश्यकता होती है, बैकग्राउंड से ऑब्जेक्ट आकार निष्कर्षण के लिए बाइनरी इमेज की आवश्यकता होती है, आदि। OpenCV का उपयोग करके, हम एक इमेज को स्वतंत्र रूप से बाइनरी इमेज में परिवर्तित कर सकते हैं।
निम्नलिखित उदाहरण 'original_image' मैट्रिक्स में लोड की गई इमेज को ग्रेस्केल इमेज में परिवर्तित कर रहा है और इसे 'grayscale_image' मैट्रिक्स में संग्रहीत कर रहा है -
cvtColor(original_image, grayscale_image, COLOR_BGR2GRAY);
अगली लाइन ग्रेस्केल इमेज को बाइनरी इमेज में परिवर्तित कर रही है और परिवर्तित इमेज को 'binary_image' मैट्रिक्स में संग्रहीत कर रही है।
threshold(grayscale_image, binary_image, 100, 255, THRESH_BINARY);
यहां 'grayscale_image' स्रोत मैट्रिक्स है, 'binary_image' गंतव्य मैट्रिक्स है। उसके बाद, दो मान 100 और 255 हैं। ये दो मान थ्रेशोल्ड रेंज को दर्शाते हैं। इस लाइन में, थ्रेशोल्ड रेंज उन ग्रेस्केल पिक्सेल मानों को दर्शाती है जिन्हें परिवर्तित किया जाना है।
निम्नलिखित प्रोग्राम एक इमेज लोड करता है और इसे बाइनरी इमेज में परिवर्तित करता है।
उदाहरण
#include <iostream>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
using namespace cv;
using namespace std;
int main(int argc, char** argv) {
Mat original_image;
Mat grayscale_image;
Mat binary_image;
namedWindow("Original Image");
namedWindow("Show Binary");
original_image = imread("teddy.jpg");
cvtColor(original_image, grayscale_image, COLOR_BGR2GRAY);
threshold(grayscale_image, binary_image, 100, 255, THRESH_BINARY);
imshow("Original Image", original_image);
imshow("Show Binary", binary_image);
waitKey(0);
return 0;
}
आउटपुट
