पर लागू करें I opencv के Threshold
फ़ंक्शन को एक numpy सरणी में लागू करने का प्रयास कर रहा हूं। मैं ओपनसीवी 2.1 के लिए पायथन बाइंडिंग का उपयोग कर रहा हूं। यह इस प्रकार है:ओपनसीवी थ्रेसहोल्ड को एक numpy array
import cv
import numpy as np
a = np.random.rand(1024,768)
cv.Threshold(a,a,0.5,1,cv.CV_THRESH_BINARY)
और यह एक त्रुटि फेंकता है:
OpenCV Error: Unsupported format or combination of formats() in threshold
तो, मुझे विश्वास है कि मैं जानता हूँ कि मैं क्या कर रहा नहीं कर रहा हूँ, लेकिन मुझे उम्मीद थी Threshold
तरह काम करेंगे के लिए, उदाहरण के लिए, Smooth
, जिसमें मैं
cv.Smooth(a,a)
कोई समस्या नहीं के साथ
चला सकते हैं, और एक चिकनी (ईआर) छवि के साथ खत्म। मुझे यकीन नहीं है कि ओपनसीवी के रूप में "प्रारूप" के बारे में कैसे सोचना है, ओपनसीवी उन्हें देखता है, लेकिन अगर मुझे ऐसा करने की ज़रूरत नहीं है तो मैं numpy सरणी को ओपनसीवी छवि प्रारूप में बदलने के लिए नाराज हूं (और मेरे सभी प्रयास विफल हो गए हैं वैसे भी)।
मुझे पता है क्यों Threshold
स्पष्ट रूप से अनुभवहीन तरह से मैं यह काम करने के लिए कोशिश कर रहा हूँ में काम नहीं कर रहा चाहते हैं, और यह पता है कि मैं बजाय करना चाहिए बहुत अच्छा होगा।
पीएस मुझे पता है कि मैं खुद को numpy सरणी पर एक थ्रेसहोल्डिंग ऑपरेशन कर सकता हूं, लेकिन मैं opencv को समझने की कोशिश कर रहा हूं।