विषयसूची:

कंबस - शहरी बस पर डेटा संग्रह की प्रणाली: 8 कदम
कंबस - शहरी बस पर डेटा संग्रह की प्रणाली: 8 कदम

वीडियो: कंबस - शहरी बस पर डेटा संग्रह की प्रणाली: 8 कदम

वीडियो: कंबस - शहरी बस पर डेटा संग्रह की प्रणाली: 8 कदम
वीडियो: Khesari Lal Yadav-भतार मेरा होली में धोखा दिया है(Bhatar Mera Holi Mein)|Superhit Bhojpuri Holi Geet 2024, नवंबर
Anonim
कंबस - शहरी बस पर डेटा संग्रह की प्रणाली
कंबस - शहरी बस पर डेटा संग्रह की प्रणाली

सार्वजनिक परिवहन में ज्ञात समस्याओं और कठिनाइयों के बीच, जनसंख्या में वास्तविक समय की जानकारी और कम से कम मुखरता का अभाव है। सार्वजनिक परिवहन बसों की भीड़भाड़ उन उपयोगकर्ताओं को दूर ले जाती है, जो अपने स्वयं के वाहनों का उपयोग करना पसंद करते हैं, भले ही वे अभी भी घंटों यातायात में हों। यदि वास्तविक समय की जानकारी, जैसे बसों की संख्या, एक उपयोगकर्ता के लिए आसानी से उपलब्ध है, तो वह चुन सकता है कि अगली बस की प्रतीक्षा करनी है या बस से घूमना है या अपने वाहन का उपयोग करना है। पसंद की शक्ति सार्वजनिक परिवहन को उपयोगकर्ता के लिए अधिक आकर्षक विकल्प बनाती है।

घर के अंदर लोगों की गिनती या अनुमान कई तरीकों से किया जा सकता है, जिनमें से सबसे अधिक नियोजित हैं:

  • थर्मल छवियां;
  • कंप्यूटर दृष्टि;
  • चेहरा काउंटर;

कंप्यूटर विज़न का उपयोग करके वातावरण में लोगों का अनुमान लगाने में कई कठिनाइयों में से मुख्य हैं:

  • लोगों का आक्षेप;
  • उलटा प्रकाश;
  • स्थैतिक रोड़ा, यानी वस्तुओं के पीछे के लोग;
  • पर्यावरण के लिए कैमरा कोण;

इस परियोजना के लिए एक चुनौती कैमरे के सही कोण को जानना है जो छवि की पृष्ठभूमि के घटाव के साथ-साथ बस के अंदर दिन के दौरान परिवर्तनीय चमक में सबसे अच्छी सहायता करेगा।

प्रस्ताव का मुख्य उद्देश्य भीड़भाड़ का अनुमान लगाने और स्मार्टफोन के माध्यम से आबादी को परिणाम उपलब्ध कराने के लिए एक मजबूत और विन्यास योग्य मॉडल बनाना है।

चरण 1: सामग्री

परियोजना के लिए आवश्यक सामग्री अगला है:

1 एक्स ड्रैगन बोर्ड 410 सी;

1 एक्स यूएसबी कैमरा;

1 एक्स स्मार्टफोन एंड्रॉइड;

चरण 2: ड्रैगनबोर्ड 410c. में लिनारो स्थापित करें

ड्रैगनबोर्ड 410c. में लिनारो स्थापित करें
ड्रैगनबोर्ड 410c. में लिनारो स्थापित करें
ड्रैगनबोर्ड 410c. में लिनारो स्थापित करें
ड्रैगनबोर्ड 410c. में लिनारो स्थापित करें

DragonBoard 410c पर Linaro 17.09 स्थापित करने के लिए नीचे दिए गए लिंक पर दिए गए निर्देशों का पालन करें। हम जीपीएस के लिए कर्नेल समर्थन के लिए लिनारो 17.09 स्थापित करने की सलाह देते हैं।

www.96boards.org/documentation/consumer/dr…

चरण 3: चरण 2: पुस्तकालय स्थापित करें और GitHub से स्रोत कोड डाउनलोड करें

चरण 2: पुस्तकालय स्थापित करें और GitHub से स्रोत कोड डाउनलोड करें
चरण 2: पुस्तकालय स्थापित करें और GitHub से स्रोत कोड डाउनलोड करें

कंबस में मॉड्यूलर आर्किटेक्चर और कोड डिज़ाइन है। अपने स्वयं के मशीन लर्निंग एल्गोरिदम को कोड करना, अन्य क्लाउड सेवा में बदलना और अपने स्वयं के उपयोगकर्ता एप्लिकेशन बनाना संभव है।

कैंबस प्रोजेक्ट को चलाने के लिए, सबसे पहले आपको जीथब (https://github.com/bmonteiro00/cambus) से सोर्स कोड डाउनलोड करना होगा। अजगर स्थापित करें (कंबस संस्करण 2.7 और> 3.x पर चलने के लिए मोड था) और 'पाइप' (sudo apt-get install python-pip) का उपयोग करके निम्नलिखित पुस्तकालय। लिनारो सिस्टम में पुस्तकालयों का एक गुच्छा स्थापित करने की आवश्यकता होगी (इसके अलावा, यह एक आभासी वातावरण बनाने के लिए अनुशंसित है - pip install virtualenv - एसओ से कंबस सिस्टम को अलग करने के लिए)। कृपया, निम्नलिखित पुस्तकालय स्थापित करें:

  • पाइप स्थापित पाहो-mqtt
  • पाइप स्थापित numpy
  • पाइप ओपनसीवी-पायथन स्थापित करें
  • पाइप स्थापित opencv-contrib-python
  • पाइप स्थापित टवीलियो
  • पाइप स्थापित करें matplotlib

मुख्य कार्यक्रम को वर्गों में विभाजित किया गया था:

  • कैमबस - मुख्य वर्ग;
  • सेंसर - जीपीएस स्थिति, तापमान, सीओ 2 जैसे डेटा प्राप्त करने के लिए एक वर्ग।
  • इमेज प्रोसेसिंग एल्गोरिथम के साथ काउंटर-क्लास।

सुनिश्चित करें कि सभी पुस्तकालय स्थापित किए गए थे और python CamBus_v1.py निष्पादित करें।

चरण 4: AWS IoT Core, DynamoDB सेट करना

AWS IoT कोर, DynamoDB की स्थापना
AWS IoT कोर, DynamoDB की स्थापना
AWS IoT कोर, DynamoDB की स्थापना
AWS IoT कोर, DynamoDB की स्थापना
AWS IoT कोर, DynamoDB की स्थापना
AWS IoT कोर, DynamoDB की स्थापना

हमने डेटा लॉग करने के लिए TLS और X509 और NoSQL और DynamoDB के साथ MQTT ब्रोकर के रूप में AWS IoT कोर का उपयोग किया। आपको https://aws.amazon.com/free पर एक खाता बनाना होगा।) इसके बाद, आपको एक चीज़ बनाने और डायनेमो के साथ एकीकृत करने के लिए नीचे दिए गए चरणों का पालन करना होगा:

docs.aws.amazon.com/iot/latest/developergu…

चरण 5: सेटअप Twilio और Dweet API

सेटअप Twilio और Dweet API
सेटअप Twilio और Dweet API
सेटअप Twilio और Dweet API
सेटअप Twilio और Dweet API

ट्विलियो एसएमएस सेवा भी स्थापित की गई थी। इस चरण को पूरा करने के निर्देशों के लिए नीचे दिया गया URL देखें:

www.twilio.com/docs/iam/api/account

एंड्रॉइड ऐप और सिस्टम के बीच एकीकरण आरईएसटी के माध्यम से किया गया था जिसमें ड्वेट प्लेटफॉर्म का इस्तेमाल किया गया था। साइन अप की आवश्यकता नहीं है।

dweet.io/

चरण 6: चुनौतियां

हमारे विकास के दौरान ओपनसीवी तकनीकों से लेकर एडब्ल्यूएस प्लेटफॉर्म तक कई चुनौतियों का सामना करना पड़ा। हमने C/C++ में विकसित होने वाले समय को बचाने के लिए पायथन के साथ कोड करने का निर्णय लिया। हमारे विकास के दौरान केवल मूल Opencv विधियाँ जैसे:

• cv2.गाऊसी धुंधला (..)

• cv2. दहलीज (..)

• cv2.morphologyEx(..)

• cv2.contourArea(..)

• cv2.findContours(..)

लोगों का पता लगाने में अच्छी गुणवत्ता तक पहुंचने के लिए ये बुनियादी तरीके पर्याप्त नहीं थे। अस्थिर वीडियो एमएल (मशीन लर्निंग) वाले परिदृश्यों का उपयोग किया गया था। इसलिए, हमने ओपनसीवी मशीन लर्निंग लाइब्रेरी का उपयोग करने का फैसला किया और हमें एक और समस्या मिली क्योंकि एमएल एल्गोरिदम के लिए एक अच्छा डेटा इनपुट ढूंढना एक समस्या थी जिसे हमने कई दिन बिताए। हमने ओपनसीवी एसवीएम एल्गोरिदम का उपयोग किया है लेकिन काम नहीं किया है। हमने OpenCV Naive Bayses का इस्तेमाल किया और इसने ठीक काम किया। हमने Tensorflow और CNN तंत्रिका नेटवर्क का उपयोग करने का प्रयास किया है, हालाँकि हमने इसे अभी के लिए नहीं किया है। सीएनएन बहुत सारी प्रसंस्करण शक्ति का उपयोग करता है, कुछ ऐसा जो हमारे पास नहीं था। ओपनसीवी एमएल और मूल ओपनसीवी विधियों का उपयोग करने से हमें लोगों का पता लगाने की अच्छी दर तक पहुंचने में मदद मिली। फिर भी, प्रत्येक प्रकार के वीडियो के लिए हमें लोगों का पता लगाने और झूठी सकारात्मकता से बचने के लिए ओपनसीवी के मापदंडों को अनुकूलित करना होगा। इन दो महीनों के मध्य में हमने डेटा संग्रह का केंद्र बनाने के लिए अपना पहला विचार विकसित किया केवल यात्रियों की संख्या और जीपीएस स्थान। हमने तापमान आदि जैसे अन्य सेंसर का उपयोग करके डेटा एकत्र करने का निर्णय लिया। हमने एप्लिकेशन को पैरामीटर करने और इसे कॉन्फ़िगर करने योग्य बनाने के लिए एक.ini फ़ाइल बनाई। Cambus.ini फ़ाइल पर आप एप्लिकेशन को कई तरह से कॉन्फ़िगर कर सकते हैं।

चरण 7: परिणाम और भविष्य का कार्य

जैसा कि आप वीडियो में देख सकते हैं, काउंटर सटीक रूप से काम कर रहा है। नीली रेखाएं इनपुट सीमा और लाल रेखा आउटपुट सीमा को चिह्नित करती हैं। इस मामले में, एक वीडियो का उपयोग अनुकरण करने के लिए किया गया था क्योंकि हम इसे एक बस में तैनात नहीं कर सकते थे।

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

कृपया cambus.ini पर वेरिएबल भी बदलें, जो MQTT ब्रोकर वगैरह को दर्शाता है।

हम भविष्य के कार्यान्वयन में सेंसर जोड़ने पर विचार करते हैं, उदाहरण के लिए, सिस्टम में तापमान, आर्द्रता और CO2। विचार यह है कि शहरों के आसपास के डेटा को समुदाय के लिए उपलब्ध कराया जाए।

निम्नलिखित हम अगले चरणों की गणना करते हैं जो आप परियोजना को बेहतर बनाने के लिए कर सकते हैं:

  • C/C++ का उपयोग करके कोड को फिर से लिखें;
  • एमएल एल्गोरिथ्म में सुधार;
  • पुन: कारक अजगर कोड;
  • बस में तैनाती;

हम दिए गए सभी समर्थन के लिए एम्बरकाडोस और क्वालकॉम को धन्यवाद देना चाहते हैं।

सहयोगी:

ब्रूनो मोंटेइरो - [email protected]

क्लेबर ड्रोबोवोक - [email protected]

विनीसियस डी ओलिवेरा - [email protected]

चरण 8: संदर्भ

[१]

[२]

[३]

[४]

[५]

सिफारिश की: