2012-09-20 16 views
7

मैं पृष्ठभूमिSubtractorMOG2 कैसे बता सकता हूं जो पृष्ठभूमि मॉडल में अद्यतन करने के लिए पिक्सल और कौन से पिक्सेल नहीं होना चाहिए।पृष्ठभूमि के लिए मुखौटा SubtractorMOG2

जब कोई ऑब्जेक्ट दृश्य में प्रवेश करता है और कुछ दस सेकंड के लिए रुक जाता है तो मुझे समस्या का सामना करना पड़ रहा है, ऑब्जेक्ट पृष्ठभूमि मॉडल में अवशोषित हो जाएगा।

मैं सीखने की दर कम करना चाहता था या विशेष बंद वस्तु के आसपास सीखना बंद करना चाहता था लेकिन मैं यह कैसे कर सकता हूं? क्या BackgroundSubtractorMOG2 मास्क का उपयोग अपने अपडेट फ़ंक्शन में करता है?

मैं ओपनसीवी 2.4.1 का उपयोग कर रहा हूं।

धन्यवाद, एल्विन।

+0

अच्छा सवाल है ... मैं ठीक उसी समस्या का सामना कर रहा हूँ। –

+0

ओपनसीवी पृष्ठभूमि घटाव एल्गोरिदम के लिए उच्च स्तरीय प्रतिक्रिया के लिए कोई तंत्र नहीं है। कुछ हद तक सामान्य अद्यतन फ़ंक्शन के लिए मेरा सुझाव एक अद्यतन मुखौटा शामिल होगा। – killogre

उत्तर

3

BackgroundSubtractorMOG2 इनपुट मास्किंग का समर्थन नहीं करता है। लेकिन, यदि आप जानते हैं कि आप कौन से पिक्सेल को मास्क करना चाहते हैं तो आप आउटपुट मास्क कर सकते हैं: कहें कि आपने subtractor(input, fg, learningRate); कहा है और आप किसी भी तरह से जानते हैं कि ऑब्जेक्ट अब कहां है (हो सकता है कि आप इसे औसत शिफ्ट या पैटर्न पहचान का उपयोग करके ट्रैक कर रहे हों) बस करें fg |= mask; जहां mask है, जैसा कि आप किसी अन्य स्रोत से जानते हैं, वस्तु है।

+0

जो पृष्ठभूमि में अवशोषित होने वाले अग्रभूमि को ट्रैक करने में सहायता करता है। लेकिन यह वह जवाब नहीं है जिसे मैं ढूंढ रहा हूं, यदि संभव हो तो मैं अपने पृष्ठभूमि मॉडल को साफ रखना चाहता हूं। –

+1

यहां तक ​​कि मेरी पहली वाक्य भी वह उत्तर नहीं है जिसे आप चाहते हैं? यदि आपकी वस्तुएं ऐसी हैं कि वे अंदर आते हैं और अभी भी रहते हैं, तो MOG2 मॉडल उन्हें ट्रैक करने के लिए पर्याप्त नहीं है। प्रारंभिक ऑब्जेक्ट डिटेक्शन और कुछ ऑब्जेक्ट ट्रैकिंग एल्गोरिदम के बाद इसे बाद में ट्रैक करने के लिए आप MOG2 को संयोजित करना बेहतर होगा। या क्या मैं आपकी समस्या को गलत समझता हूं? – artm

2

आप नीचे बहुत कम सीखने दर निर्धारित करके ऐसा कर सकते हैं

अर्थात्:

mog(input, output, 0.00000001); 
संबंधित मुद्दे