पृष्ठभूमि घटाव
किसी छवि को उसके पृष्ठभूमि इतिहास से घटाएँ।
OpenCV के बैकग्राउंड सब्ट्रैक्शन एल्गोरिद्म का उपयोग करके वीडियो स्ट्रीम से मोशन मास्क बनाएं।
यह ब्लॉक कैसे काम करता है
यह ब्लॉक बैकग्राउंड सब्ट्रैक्शन (विशेष रूप से MOG2 एल्गोरिद्म) का उपयोग उन पिक्सल्स की पहचान करने के लिए करता है जो सीखे गए बैकग्राउंड मॉडल से भिन्न हैं, और मोशन क्षेत्रों को हाइलाइट करने वाली एक मास्क इमेज आउटपुट करता है। यह ब्लॉक बैकग्राउंड मॉडल को बनाने और अपडेट करने के लिए फ्रेम्स के बीच स्थिति बनाए रखता है:
बैकग्राउंड मॉडल आरंभ करता है - पहले फ्रेम पर, निर्दिष्ट history और threshold पैरामीटर का उपयोग करके एक बैकग्राउंड सब्ट्रैक्टर बनाता है
प्रत्येक फ्रेम को प्रोसेस करता है - सीखे गए बैकग्राउंड मॉडल से भिन्न पिक्सल्स की पहचान करने के लिए बैकग्राउंड सब्ट्रैक्शन लागू करता है
मोशन मास्क बनाता है - एक फ़ोरग्राउंड मास्क जनरेट करता है जहाँ सफेद पिक्सल्स मोशन क्षेत्रों को दर्शाते हैं और काले पिक्सल्स बैकग्राउंड को दर्शाते हैं
इमेज फ़ॉर्मेट में बदलता है - सिंगल-चैनल मास्क को कार्यप्रवाहों द्वारा आवश्यक 3-चैनल इमेज फ़ॉर्मेट में बदलता है
मास्क इमेज लौटाता है - मोशन मास्क को ऐसी इमेज के रूप में आउटपुट करता है जिसे विज़ुअलाइज़ किया जा सकता है या आगे प्रोसेस किया जा सकता है
आउटपुट मास्क इमेज एक काले बैकग्राउंड के विरुद्ध सफेद पिक्सल्स के रूप में मोशन क्षेत्रों को दिखाती है, जिससे यह देखना आसान हो जाता है कि फ्रेम में मोशन कहाँ हुआ। इस मास्क का उपयोग आगे विश्लेषण, विज़ुअलाइज़ेशन, या अन्य प्रोसेसिंग चरणों के इनपुट के रूप में किया जा सकता है।
सामान्य उपयोग के मामले
मोशन विज़ुअलाइज़ेशन: वीडियो स्ट्रीम में यह देखने के लिए दृश्य मोशन मास्क बनाएं कि मॉनिटरिंग, विश्लेषण, या डिबगिंग उद्देश्यों के लिए गति कहाँ होती है
मोशन मॉडल्स के लिए प्रीप्रोसेसिंग: मास्क डेटा की आवश्यकता वाले मोशन-आधारित मॉडलों के साथ प्रशिक्षण या इन्फ़रेंस के लिए मोशन मास्क को इनपुट डेटा के रूप में जनरेट करें
मोशन क्षेत्र निष्कर्षण: आगे की प्रोसेसिंग, विश्लेषण, या फीचर निष्कर्षण के लिए वीडियो फ्रेम्स से मोशन के क्षेत्रों को निकालें
वीडियो विश्लेषण: मोशन पैटर्न्स का विश्लेषण करने के लिए मास्क इमेजों को प्रोसेस करें ताकि मूवमेंट ट्रेंड्स, गतिविधि स्तर, या मोशन विशेषताएँ पहचानी जा सकें
बैकग्राउंड हटाना: सेगमेंटेशन या आइसोलेशन कार्यों के लिए मोशन मास्क का उपयोग करके फ़ोरग्राउंड (गतिशील) ऑब्जेक्ट्स को स्थिर बैकग्राउंड से अलग करें
मोशन-आधारित फ़िल्टरिंग: मोशन मास्क का उपयोग उन क्षेत्रों पर प्रोसेसिंग को फ़िल्टर करने या केंद्रित करने के लिए करें जहाँ मोशन होता है, और स्थिर बैकग्राउंड क्षेत्रों को अनदेखा करें
अन्य ब्लॉक्स से कनेक्ट करना
इस ब्लॉक से प्राप्त मोशन मास्क इमेज को इससे जोड़ा जा सकता है:
विज़ुअलाइज़ेशन ब्लॉक्स ताकि मोशन मास्क को मूल इमेजों पर ओवरले करके या स्वतंत्र विज़ुअलाइज़ेशन के रूप में प्रदर्शित किया जा सके
ऑब्जेक्ट डिटेक्शन ब्लॉक्स ताकि डिटेक्शन मॉडल्स को केवल मास्क द्वारा पहचाने गए मोशन क्षेत्रों पर चलाया जा सके
इमेज प्रोसेसिंग ब्लॉक्स ताकि मोशन मास्क इमेजों पर अतिरिक्त रूपांतरण, फ़िल्टर, या विश्लेषण लागू किया जा सके
डेटा स्टोरेज ब्लॉक्स (जैसे, Local File Sink, Roboflow Dataset Upload) ताकि प्रशिक्षण डेटा, विश्लेषण, या दस्तावेज़ीकरण के लिए मोशन मास्क सहेजे जा सकें
सशर्त लॉजिक ब्लॉक्स ताकि मास्क इमेजों में मोशन की उपस्थिति या अनुपस्थिति के आधार पर कार्यप्रवाह निष्पादन को रूट किया जा सके
मॉडल प्रशिक्षण ब्लॉक्स ताकि मोशन-आधारित मॉडलों या सेगमेंटेशन कार्यों के लिए मोशन मास्क को प्रशिक्षण डेटा के रूप में उपयोग किया जा सके
प्रकार पहचानकर्ता
चरण में निम्न पहचानकर्ता का उपयोग करें "type" फ़ील्ड: roboflow_core/background_subtraction@v1 अपने वर्कफ़्लो में ब्लॉक को एक चरण के रूप में जोड़ने के लिए।
गुण
नाम
प्रकार
विवरण
संदर्भ
नाम
स्ट्रिंग
इस चरण के लिए एक अद्वितीय पहचानकर्ता दर्ज करें..
❌
थ्रेशहोल्ड
पूर्णांक
MOG2 बैकग्राउंड सब्ट्रैक्शन एल्गोरिद्म द्वारा उपयोग की जाने वाली वर्गित महालनोबिस दूरी के लिए थ्रेशहोल्ड मान। यह मोशन के प्रति संवेदनशीलता को नियंत्रित करता है - छोटे मान संवेदनशीलता बढ़ाते हैं (छोटे परिवर्तनों का पता लगाते हैं) लेकिन अधिक फ़ॉल्स पॉज़िटिव उत्पन्न कर सकते हैं, जबकि बड़े मान संवेदनशीलता घटाते हैं (केवल महत्वपूर्ण परिवर्तनों का पता लगाते हैं) लेकिन सूक्ष्म मोशन छूट सकता है। अनुशंसित सीमा 8-32 है। डिफ़ॉल्ट 16 है..
✅
इतिहास
पूर्णांक
बैकग्राउंड मॉडल बनाने के लिए उपयोग किए गए पिछले फ्रेम्स की संख्या। यह नियंत्रित करता है कि बैकग्राउंड परिवर्तनों के अनुसार कितनी तेज़ी से अनुकूलित होता है - बड़े मान (जैसे, 50-100) एक अधिक स्थिर बैकग्राउंड मॉडल बनाते हैं जो अस्थायी परिवर्तनों के प्रति कम संवेदनशील होता है, लेकिन स्थायी बैकग्राउंड परिवर्तनों के अनुसार धीरे अनुकूलित होता है। छोटे मान (जैसे, 10-20) तेज़ अनुकूलन की अनुमति देते हैं, लेकिन यदि गतिशील ऑब्जेक्ट्स चलना बंद कर दें, तो उन्हें बैकग्राउंड के रूप में मान सकते हैं। डिफ़ॉल्ट 30 फ्रेम्स है..
✅
The संदर्भ स्तंभ यह दर्शाता है कि गुण को गतिशील मानों के साथ पैरामीटराइज़ करने की संभावना है, जो वर्कफ़्लो रनटाइम। देखें बाइंडिंग्स अधिक जानकारी के लिए।
रनटाइम संगतता
सॉफ्ट - रनटाइम होस्टेड_सर्वरलेस, समर्पित_परिनियोजन; निष्पादन दूरस्थ; इनपुट वीडियो : ब्लॉक वीडियो_मेटाडेटा.video_identifier द्वारा कुंजीबद्ध, प्रक्रिया मेमोरी में प्रति-वीडियो स्थिति बनाए रखता है। स्टेटलेस या मल्टी-रिप्लिका HTTP रनटाइम्स पर रिमोट स्टेप निष्पादन के साथ, लगातार अनुरोध अलग-अलग वर्कर प्रोसेस द्वारा परोसे जा सकते हैं, इसलिए कॉल्स के बीच स्थिति रीसेट हो जाती है और ट्रैकिंग / काउंटिंग / एग्रीगेशन के लिए आउटपुट अर्थहीन हो जाता है। स्थिर क्रॉस-फ्रेम परिणामों के लिए एक स्थायी WebRTC सेशन में लोकल स्टेप निष्पादन का उपयोग करें।
सॉफ्ट - इनपुट छवि : ब्लॉक वीडियो या दोहराए गए-फ्रेम कार्यप्रवाहों से प्राप्त कालिक संदर्भ पर निर्भर करता है। एक स्थिर छवि/फ़ोटो के साथ, ट्रैक करने, तुलना करने, एकत्रित करने, या विज़ुअलाइज़ करने के लिए कोई सार्थक इतिहास नहीं होता, इसलिए यह ब्लॉक बहुत कम या कोई लाभ नहीं देता।
इनपुट और आउटपुट बाइंडिंग्स
उपलब्ध कनेक्शन इसके बाइंडिंग प्रकारों पर निर्भर करते हैं। देखें कि कौन-से बाइंडिंग प्रकार बैकग्राउंड सब्ट्रैक्शन संस्करण v1 है।
इनपुट और आउटपुट बाइंडिंग्स
इनपुट
छवि(छवि): इनपुट छवि या वीडियो फ्रेम जिसे बैकग्राउंड सब्ट्रैक्शन के लिए प्रोसेस किया जाना है। ब्लॉक बैकग्राउंड मॉडल बनाने के लिए फ्रेम्स को क्रमिक रूप से प्रोसेस करता है - प्रत्येक फ्रेम बैकग्राउंड मॉडल को अपडेट करता है और सीखे गए बैकग्राउंड से भिन्न क्षेत्रों को दिखाने वाला मोशन मास्क बनाता है। इसे कार्यप्रवाह इनपुट्स या पिछले चरणों से जोड़ा जा सकता है..थ्रेशहोल्ड(पूर्णांक): MOG2 बैकग्राउंड सब्ट्रैक्शन एल्गोरिद्म द्वारा उपयोग की जाने वाली वर्गित महालनोबिस दूरी के लिए थ्रेशहोल्ड मान। यह मोशन के प्रति संवेदनशीलता को नियंत्रित करता है - छोटे मान संवेदनशीलता बढ़ाते हैं (छोटे परिवर्तनों का पता लगाते हैं) लेकिन अधिक फ़ॉल्स पॉज़िटिव उत्पन्न कर सकते हैं, जबकि बड़े मान संवेदनशीलता घटाते हैं (केवल महत्वपूर्ण परिवर्तनों का पता लगाते हैं) लेकिन सूक्ष्म मोशन छूट सकता है। अनुशंसित सीमा 8-32 है। डिफ़ॉल्ट 16 है..इतिहास(पूर्णांक): बैकग्राउंड मॉडल बनाने के लिए उपयोग किए गए पिछले फ्रेम्स की संख्या। यह नियंत्रित करता है कि बैकग्राउंड परिवर्तनों के अनुसार कितनी तेज़ी से अनुकूलित होता है - बड़े मान (जैसे, 50-100) एक अधिक स्थिर बैकग्राउंड मॉडल बनाते हैं जो अस्थायी परिवर्तनों के प्रति कम संवेदनशील होता है, लेकिन स्थायी बैकग्राउंड परिवर्तनों के अनुसार धीरे अनुकूलित होता है। छोटे मान (जैसे, 10-20) तेज़ अनुकूलन की अनुमति देते हैं, लेकिन यदि गतिशील ऑब्जेक्ट्स चलना बंद कर दें, तो उन्हें बैकग्राउंड के रूप में मान सकते हैं। डिफ़ॉल्ट 30 फ्रेम्स है..
आउटपुट
छवि(छवि): कार्यप्रवाहों में इमेज।
अंतिम अपडेट
क्या यह उपयोगी था?