/ / OpenCV C ++ में एक मुखौटा स्थानांतरण - c ++, opencv

ओपनसीवी सी ++ में एक मुखौटा स्थानांतरित करना - सी ++, ओपनसीवी

में विभाजन की समस्या पर काम कर रहा हूँवीडियो। उपयोगकर्ता पहले फ्रेम को सही ढंग से सेगमेंट करता है (यहां हथियाने का उपयोग करके) और मैं यहां से मुखौटा उत्पन्न करता हूं। काला पिक्सेल सभी पृष्ठभूमि के अनुरूप है और सफेद पिक्सेल अग्रभूमि के अनुरूप हैं। बाद के सभी फ़्रेम में मैं कुछ नियम के अनुसार इन सफेद पिक्सेल को स्थानांतरित करना चाहता हूं। यही कारण है कि मैं कुछ राशि से सभी सफेद पिक्सेल को स्थानांतरित करना चाहता हूं। वहाँ वैसे भी (शायद एक समारोह है?) जो मुझे इस स्थानांतरण में मदद कर सकता है?

के रूप में, एक जानवर बल तरीका हर आने जाने के लिए किया जाएगापिक्सेल और यदि यह सफेद है, तो मुखौटा को स्थानांतरित करने के लिए मुझे जो भी राशि चाहिए, उसके हिसाब से स्थानांतरित करने के लिए इसे पिक्सेल (दाएं / बाएं) बनाएं। मैं सोच रहा था कि क्या ऐसा करने का कोई होशियार तरीका है?

उत्तर:

उत्तर № 1 के लिए 1

तो आपने छवि को एक सीमा से दूर कर दिया, जिसके परिणामस्वरूप बैक और अग्रभूमि पिक्सेल (जैसे कैनी)?

आप अग्रभूमि पिक्सेल पर एक समोच्च लागू कर सकते हैं। प्रत्येक समोच्च को बिंदुओं के एक वेक्टर के रूप में संग्रहीत किया जाता है, इसलिए आप अगले फ्रेम पर एक समोच्च को लागू / स्थानांतरित कर सकते हैं।

एक छवि उपयोग में आकृति खोजने के लिए findContours.