एक वीडियो से वाहन की गिनती


10

डिस्क्लेमर : मैंने इस सवाल को StackOverFlow पर पोस्ट किया है, लेकिन पता चला है कि यह यहां बेहतर अनुकूल है।

मैं इमेज प्रोसेसिंग के लिए थोड़ा नया हूं इसलिए मैं आपसे अपनी समस्या के लिए इष्टतम समाधान खोजने के बारे में पूछना चाहूंगा, कोड के लिए मदद नहीं। मैं एक अच्छे विचार के बारे में सोच भी नहीं सकता था इसलिए आपकी सलाह माँगना चाहता था।

मैं OpenCV का उपयोग करके एक प्रोजेक्ट पर काम कर रहा हूं ताकि वीडियो फ़ाइल या लाइव कैमरा से वाहनों की गिनती की जा सके। ऐसी परियोजना पर काम करने वाले अन्य लोग आम तौर पर चलती वस्तुओं को ट्रैक करते हैं, फिर उन्हें गिनते हैं लेकिन इसके बजाय, मैं एक अलग दृष्टिकोण के साथ काम करना चाहता था; उपयोगकर्ता को वीडियो विंडो पर आरओआई (ब्याज का क्षेत्र) सेट करने के लिए कहें और केवल इस क्षेत्र के लिए काम करें (कुछ कारणों से, पूरे फ्रेम के साथ सौदा नहीं करना और कुछ प्रदर्शन में वृद्धि), जैसा कि नीचे देखा गया है। (उपयोगकर्ता एक से अधिक आरओआई सेट कर सकता है और उपयोगकर्ता को अनुपात की भावना से एक सामान्य कार के बारे में आरओआई की ऊंचाई निर्धारित करने के लिए कहा जाता है।)

चित्र 1

मैंने अब तक कुछ बुनियादी प्रगति की है, जैसे बैकग्राउंड अपडेटिंग, मॉर्फोलॉजिकल फ़िल्टर, थ्रॉल्डिंग और बाइनरी इमेज के रूप में मूविंग ऑब्जेक्ट को नीचे की तरह प्राप्त करना।

Picture2

उन्हें करने के बाद, मैंने अंतिम थ्रेसहोल्ड अग्रभूमि फ्रेम के सफेद पिक्सल को गिनने की कोशिश की और यह अनुमान लगाया कि यह कुल सफेद पिक्सेल संख्या की जांच करके कार थी या नहीं (मैंने आरओआई की ऊंचाई को जानकर एक स्थिर गणना द्वारा निम्न सीमा निर्धारित की है) । वर्णन करने के लिए, मैंने एक नमूना ग्राफिक आकर्षित किया:

picture3

जैसा कि आप देख सकते हैं, सफेद पिक्सेल की गणना करना और यह जांचना आसान था कि क्या यह समय तक एक वक्र खींचता है और यह निर्धारित करता है कि कार या शोर जैसी कोई चीज है या नहीं।

मुसीबत

मैं तब तक काफी सफल रहा जब तक कि दो कारें एक ही समय में मेरे ROI से होकर नहीं गुजरीं। मेरे एल्गोरिथ्म ने गलत तरीके से उन्हें एक कार के रूप में गिना। मैंने इस समस्या के लिए अलग-अलग तरीकों की कोशिश की और लंबे वाहनों के समान है लेकिन मुझे कोई संतोषजनक समाधान नहीं मिला।

सवाल

क्या पिक्सेल मान गिनती के इस दृष्टिकोण से इस कार्य को संभालना संभव है? यदि नहीं, तो आप क्या सुझाव देते हैं?


आपकी समस्या वह कारण है जिसके कारण लोग ट्रैकिंग का उपयोग करते हैं। इसके अलावा, क्या आप ऐसी कारें चाहते हैं जो एक साथ चल रही हों (जैसे, ट्रेलर वाली कार) को एक वाहन या दो के रूप में गिना जाए?
एमरे

सबसे पहले, संस्करण के लिए धन्यवाद। मुझे 100% सटीकता की उम्मीद नहीं है, ट्रेलरों वाली कारों को अनदेखा किया जा सकता है। लेकिन अगर यह दो अलग-अलग कारें हैं जो एक-दूसरे के बहुत करीब जा रही हैं, तो मुझे कार्यक्रम को उन दोनों को अलग करने की आवश्यकता है, लेकिन मुझे कोई पता नहीं है।
क्षितिज

जवाबों:


5

आप अंतिम 10-15 फ़्रेमों का ट्रैक रख सकते हैं और इन फ़्रेमों के सफ़ेद पिक्सेल की संख्या गिन सकते हैं। आप अंतर कर सकते हैं कि क्या यह एक वाहन है या नहीं, चूंकि ग्राफ़ 10-15 फ़्रेम के लिए उच्च होगा, आप यह कहने में सक्षम होंगे कि यह एक वाहन है अन्यथा यह शोर है।

कई कारों को एक साथ साइड लेन में कई कारों की गिनती करने के लिए आप पिक्सल के कॉलम को चेक कर सकते हैं, मेरा मतलब है लंबवत। कुछ समय के लिए आपको सफेद पिक्सेल के लिए क्षैतिज रूप से पिक्सेल की जाँच करनी चाहिए।


हाँ आप ऊर्ध्वाधर रेखाओं की जाँच के बारे में सही हैं लेकिन कैसे? क्या मैं अपने ROI की पहली पंक्ति की जाँच करके वाहनों के प्रवेश बिंदु का निर्धारण कर सकता हूँ?
क्षितिज
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.