Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में OpenCV का उपयोग करके कंटूर खोजें और ड्रा करें

छवि विश्लेषण के उद्देश्य के लिए हम Opencv (ओपन सोर्स कंप्यूटर विजन लाइब्रेरी) पायथन लाइब्रेरी का उपयोग करते हैं। OpenCV इंस्टॉल करने के बाद आयात की जाने वाली लाइब्रेरी का नाम cv2 है।

नीचे दिए गए उदाहरण में हम एक छवि फ़ाइल में मौजूद कंटूर ढूंढते हैं। कंटूर हमें छवि में मौजूद आकार की पहचान करने में मदद करते हैं। कंटूर को उन सभी बिंदुओं को जोड़ने वाली रेखा के रूप में परिभाषित किया गया है जो एक छवि की सीमा के साथ हैं जिनकी तीव्रता समान है। OPenCV में findContours फ़ंक्शन हमें कंटूर की पहचान करने में मदद करता है। इसी तरह drawContours फ़ंक्शन हमें कंटूर ड्रा करने में मदद करता है। नीचे दोनों का सिंटैक्स दिया गया है।

सिंटैक्स

cv.FindContours(image, mode=CV_RETR_LIST, method=CV_CHAIN_APPROX_SIMPLE)
जहां image छवि का नाम है
mode कंटूर पुनर्प्राप्ति मोड है
method कंटूर सन्निकटन विधि है

cv.DrawContours(img, contours, contourIdx, colour, thickness)
जहां image छवि का नाम है
contours - सभी इनपुट कंटूर
contourIdx - ड्रा करने के लिए कंटूर दर्शाने वाला पैरामीटर। यदि यह ऋणात्मक है, तो सभी कंटूर ड्रा किए जाते हैं।
color - कंटूर का रंग
thickness - कंटूर ड्रा करने वाली रेखाओं की मोटाई

उदाहरण

नीचे दिए गए उदाहरण में हम नीचे दी गई छवि को अपनी इनपुट छवि के रूप में उपयोग करते हैं। फिर इसके चारों ओर कंटूर प्राप्त करने के लिए नीचे दिए गए प्रोग्राम को चलाते हैं।

पायथन में OpenCV का उपयोग करके कंटूर खोजें और ड्रा करें

उपरोक्त आरेख में हम तीन आकार देख सकते हैं। हम नीचे दिए गए प्रोग्राम का उपयोग करके उन सभी या कुछ के चारों ओर कंटूर ड्रा कर सकते हैं।

उदाहरण

import cv2
# छवि लोड करें
image = cv2.imread("path to image file")
# कलर-स्पेस बदलें
LUV = cv2.cvtColor(image, cv2.COLOR_BGR2LUV)
# किनारे खोजें
edges = cv2.Canny(LUV, 10, 100)
# कंटूर खोजें
contours, hierarchy = cv2.findContours(edges, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)
# कंटूर की संख्या खोजें
print("Number of Contours is: " + str(len(contours)))
# दो कंटूर के चारों ओर पीला बॉर्डर ड्रा करें
cv2.drawContours(image, contours, 0, (0, 230, 255), 6)
cv2.drawContours(image, contours, 2, (0, 230, 255), 6)
# कंटूर के साथ छवि दिखाएं
cv2.imshow('Contours', image)
cv2.waitKey(0)

आउटपुट

Number of Contours found = 3

और हमें नीचे दिया गया आरेख आउटपुट दिखाता है।

पायथन में OpenCV का उपयोग करके कंटूर खोजें और ड्रा करें

निष्कर्ष

OpenCV में findContours और drawContours का उपयोग करके छवि में कंटूर खोजें और ड्रा करें।

  1. Python में OpenCV का उपयोग करके इमेजेस का जोड़ और ब्लेंडिंग Python में OpenCV का उपयोग करके इमेजेस का जोड़ और ब्लेंडिंग

    हम जानते हैं कि जब हम किसी इमेज से संबंधित समस्या को हल करते हैं, तो हमें एक मैट्रिक्स लेना होता है। मैट्रिक्स कंटेंट इमेज टाइप के आधार पर भिन्न होगा - या तो यह बाइनरी इमेज (0, 1) होगी, ग्रेस्केल इमेज (0-255) या RGB इमेज (255 255 255)। इसलिए यदि हम दो इमेजेस को जोड़ना चाहते हैं तो इसका मतलब बहुत सरल

  1. Python OpenCV मॉड्यूल का उपयोग करके हिस्टोग्राम इक्वलाइज़ेशन Python OpenCV मॉड्यूल का उपयोग करके हिस्टोग्राम इक्वलाइज़ेशन

    यह इमेज प्रोसेसिंग में एक विधि है जो इमेज के हिस्टोग्राम का उपयोग करके कंट्रास्ट एडजस्टमेंट करती है। वास्तव में यह विधि आमतौर पर कई इमेजेस के ग्लोबल कंट्रास्ट को बढ़ाती है, विशेष रूप से जब इमेज का उपयोग योग्य डेटा क्लोज कंट्रास्ट वैल्यूज़ द्वारा दर्शाया जाता है और इस एडजस्टमेंट के माध्यम से, इंटेंसि

  1. पायथन में OpenCV का उपयोग करके इमेजेज का इरोजन और डाइलेशन पायथन में OpenCV का उपयोग करके इमेजेज का इरोजन और डाइलेशन

    इस समस्या में, हम देखेंगे कि पायथन OpenCV मॉड्यूल का उपयोग करके इरोजन और डाइलेशन जैसे कुछ मॉर्फोलॉजिकल ऑपरेशन्स कैसे कर सकता है। OpenCV लाइब्रेरी मुख्य रूप से कंप्यूटर विजन के लिए डिज़ाइन की गई है। यह ओपन सोर्स है। मूल रूप से इसे इंटेल द्वारा डिज़ाइन किया गया था। यह ओपन-सोर्स BSD लाइसेंस के तहत मुफ्