वर्तमान नई CV2 lib में कुछ omisions रहे हैं। आम तौर पर ये स्थिरांक होते हैं जिन्हें अभी तक सीवी 2 में माइग्रेट नहीं किया गया है और अभी भी सीवी में हैं। यहाँ आप उन्हें खोजने में मदद करने के लिए कुछ कोड है:
import cv2
import cv2.cv as cv
nms = [(n.lower(), n) for n in dir(cv)] # list of everything in the cv module
nms2 = [(n.lower(), n) for n in dir(cv2)] # list of everything in the cv2 module
search = 'window'
print "in cv2\n ",[m[1] for m in nms2 if m[0].find(search.lower())>-1]
print "in cv\n ",[m[1] for m in nms if m[0].find(search.lower())>-1]
CV2 के आसपास पिछले सीवी से सी ++ libs एक और अधिक वफादार आवरण है। मैंने इसे पहले भ्रमित कर लिया लेकिन परिवर्तन करने के बाद यह बहुत आसान है। कोड पढ़ने के लिए बहुत आसान है और numpy मैट्रिक्स मैनिपुलेशन बहुत तेज हैं।
मेरा सुझाव है कि आप सीओएस स्थिरांक को ढूंढें और उपयोग करें, जबकि विलुप्त होने पर ओपनसीवी बग ट्रैकर को बग्स के रूप में उनके चूक को रिपोर्ट करते समय। सीवी 2 ताजा और छोटा है लेकिन इसमें सुधार होगा।
एफवाईआई। उपयोग से पहले नामित खिड़कियों को तुरंत चालू करना, बाहर निकलने पर उन्हें मारना भी उचित है। आईएमएचओ
उदा।
import cv2
if __name__ == '__main__':
cap = cv2.VideoCapture(0) # webcam 0
cv2.namedWindow("input")
cv2.namedWindow("grey")
key = -1
while(key < 0):
success, img = cap.read()
cv2.imshow("input", img)
grey = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
cv2.imshow("grey", grey)
key = cv2.waitKey(1)
cv2.destroyAllWindows()
पायथन बाइंडिंग सी ++ इंटरफेस के आसपास सिर्फ एक रैपर हैं, जो ज्यादातर सी इंटरफेस के चारों ओर एक रैपर है। अपने अंतिम प्रश्न के लिए, ओपनसीवी मेलिंग सूची में एक संदेश भेजें और उनसे पूछें :) – karlphillip