Contours कुछ और नहीं बल्कि एक विशेष आकृति की सीमा के साथ सभी बिंदुओं को मिलाने वाली रेखा है। इसका उपयोग करके आप कर सकते हैं -
-
किसी वस्तु का आकार खोजें।
-
किसी वस्तु के क्षेत्रफल की गणना करें।
-
किसी वस्तु का पता लगाएं।
-
किसी वस्तु को पहचानें।
आप findContours() का उपयोग करके एक छवि में विभिन्न आकृतियों, वस्तुओं की रूपरेखा पा सकते हैं तरीका। इसी तरह आप ड्रा कर सकते हैं
आप drawContours() . का उपयोग करके किसी छवि की मिली हुई आकृति बना सकते हैं विधि यह विधि निम्नलिखित मापदंडों को स्वीकार करती है -
-
परिणाम छवि को संग्रहीत करने के लिए एक खाली मैट ऑब्जेक्ट।
-
एक सूची वस्तु मिली जिसमें समोच्च शामिल हैं।
-
एक पूर्णांक मान जो आरेखण के लिए समोच्च निर्दिष्ट करता है (-वे मान उन सभी को आकर्षित करने के लिए)।
-
समोच्च का रंग निर्दिष्ट करने के लिए एक अदिश वस्तु।
-
समोच्च की मोटाई निर्दिष्ट करने के लिए एक पूर्णांक मान।
उदाहरण
आयात करें .Point;import org.opencv.core.Scalar;import org.opencv.highgui.highGui;import org.opencv.imgcodecs.Imgcodecs;import org.opencv.imgproc.Imgproc;public class DrawingContours { public static void main(String args []) अपवाद फेंकता है {// OpenCV कोर लाइब्रेरी लोड हो रहा है System.loadLibrary(Core.NATIVE_LIBRARY_NAME); स्ट्रिंग फ़ाइल ="D:\\Images\\shapes.jpg"; मैट स्रोत =Imgcodecs.imread (फ़ाइल); // स्रोत छवि को बाइनरी मैट ग्रे में परिवर्तित करना =नया मैट (src.rows (), src.cols (), src.type ()); Imgproc.cvtColor(src, धूसर, Imgproc.COLOR_BGR2GRAY); मैट बाइनरी =नया मैट (src.rows (), src.cols (), src.type (), नया स्केलर (0)); Imgproc.threshold(ग्रे, बाइनरी, 100, 255, Imgproc.THRESH_BINARY_INV); // ढूँढना समोच्च सूचीइनपुट इमेज
आउटपुट
निष्पादित करने पर, उपरोक्त प्रोग्राम निम्न विंडो उत्पन्न करता है -