Агуулгын хүснэгт:

Камбус - Хотын автобусны мэдээлэл цуглуулах систем: 8 алхам
Камбус - Хотын автобусны мэдээлэл цуглуулах систем: 8 алхам

Видео: Камбус - Хотын автобусны мэдээлэл цуглуулах систем: 8 алхам

Видео: Камбус - Хотын автобусны мэдээлэл цуглуулах систем: 8 алхам
Видео: 8 НАСТОЯЩИХ СТРАШНЫХ ИСТОРИЙ ИЗ ЯПОНИИ: ПРЕСЛЕДУЕМОЕ П... 2024, Долдугаар сарын
Anonim
Камбус - Хотын автобусны мэдээлэл цуглуулах систем
Камбус - Хотын автобусны мэдээлэл цуглуулах систем

Нийтийн тээвэрт мэдэгдэж буй бэрхшээл, бэрхшээлүүдийн дунд хүн ам бодит цаг хугацааны мэдээлэл дутмаг, хамгийн бат итгэлтэй байдаг. Нийтийн тээврийн автобусны ачаалал хэт их байгаа нь хэдэн цагийн турш хөдөлгөөнд оролцож байгаа ч хувийн машинаа ашиглахыг илүүд үздэг хэрэглэгчдийг холдуулдаг. Автобусны тоо гэх мэт бодит цагийн мэдээллийг хэрэглэгч хялбархан олж авах боломжтой бол тэрээр дараагийн автобусаа хүлээх үү, эсвэл автобусаар тойрох уу, өөрийн машин ашиглах уу гэдгээ сонгох боломжтой. Сонголтын хүч нь нийтийн тээврийг хэрэглэгчдэд илүү сонирхолтой болгодог.

Байшин доторх хүмүүсийг тоолох, тооцоолох ажлыг олон янзаар хийж болох бөгөөд үүнд хамгийн их ашиглагддаг нь:

  • Дулааны зураг;
  • Компьютерийн алсын хараа;
  • Нүүрний тоолуур;

Компьютерийн алсын харааг ашиглан хүрээлэн буй орчинд байгаа хүмүүсийг тооцоолоход тулгардаг бэрхшээлүүдийн дунд гол нь:

  • Хүмүүсийн бөглөрөл;
  • Урвуу гэрэлтүүлэг;
  • Статик бөглөрөл, өөрөөр хэлбэл объектуудын ард байгаа хүмүүс;
  • Камерын хүрээлэн буй орчны өнцөг;

Энэхүү төслийн хувьд тулгарч буй бэрхшээл бол зургийн арын дэвсгэрийг хасахад хамгийн сайн туслах камерын зөв өнцгийг мэдэх, мөн автобус дотор өдрийн цагаар гэрэлтдэг гэрэлтүүлгийг мэдэх явдал юм.

Саналын гол зорилго нь хэт ачааллыг тооцоолох бат бөх, тохируулагдсан загварыг бий болгох, үр дүнг ухаалаг гар утсаар дамжуулан хүн амд хүргэх явдал юм.

Алхам 1: Материал

Төсөлд дараахь материал шаардлагатай болно.

1 x Dragon Board 410c;

1 x USB камер;

1 x Android ухаалаг гар утас;

Алхам 2: Linaro -г Dragonboard 410c дээр суулгаарай

Linaro -г Dragonboard 410c дээр суулгаарай
Linaro -г Dragonboard 410c дээр суулгаарай
Linaro -г Dragonboard 410c дээр суулгаарай
Linaro -г Dragonboard 410c дээр суулгаарай

Доорх линк дээрх зааврыг дагаж Linaro 17.09 -ийг DragonBoard 410c дээр суулгана уу. GPS -ийн цөмийн дэмжлэг авахын тулд Linaro 17.09 -ийг суулгахыг зөвлөж байна.

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

Алхам 3: Алхам 2: Номын санг суулгаж, GitHub -аас эх кодыг татаж аваарай

Алхам 2: Номын санг суулгаж, эх кодыг GitHub -аас татаж аваарай
Алхам 2: Номын санг суулгаж, эх кодыг GitHub -аас татаж аваарай

Камбус нь модульчлагдсан архитектур, кодын дизайнтай. Машин сурах алгоритмаа кодлох, бусад үүл үйлчилгээнд шилжих, өөрийн хэрэглэгчийн програмыг үүсгэх боломжтой.

Камбус төслийг ажиллуулахын тулд эхлээд github -аас эх кодыг татаж авах хэрэгтэй (https://github.com/bmonteiro00/cambus). Python (Камбус нь 2.7 ба> 3.x хувилбар дээр ажиллах горим байсан) болон дараах номын сангуудыг 'pip' (sudo apt-get install python-pip) ашиглан суулгана уу. Линаро системд олон тооны номын сан суулгах шаардлагатай болно (Камбус системийг SO -аас тусгаарлахын тулд виртуал орчинг бий болгохыг зөвлөж байна - pip install virtualenv). Дараахь номын санг суулгана уу.

  • paho-mqtt-ийг суулгах
  • pip суулгах numpy
  • opencv-python-ийг суулгах
  • pip суулгах opencv-Contrib-python
  • pip суулгах twilio
  • matplotlib -ийг pip суулгах

Үндсэн хөтөлбөрийг ангиудад хуваасан:

  • CamBus - үндсэн анги;
  • Мэдрэгч - GPS байршил, температур, Co2 зэрэг өгөгдлийг олж авах анги.
  • Зураг боловсруулах алгоритмтай эсрэг анги.

Бүх номын санг суулгасан эсэхийг шалгаад pyBon CamBus_v1.py -ийг ажиллуулна уу.

Алхам 4: AWS IoT Core, DynamoDB -ийг тохируулах

AWS IoT Core, DynamoDB -ийг тохируулах
AWS IoT Core, DynamoDB -ийг тохируулах
AWS IoT Core, DynamoDB -ийг тохируулах
AWS IoT Core, DynamoDB -ийг тохируулах
AWS IoT Core, DynamoDB -ийг тохируулах
AWS IoT Core, DynamoDB -ийг тохируулах

Бид AWS IoT цөмийг TLS, X509, NoSQL, DynamoDB -тэй MQTT брокер болгон ашиглаж өгөгдлийг бүртгэдэг. Та 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 -ийг тохируулах

Twilio SMS үйлчилгээг бас тохируулсан. Энэ алхамыг гүйцэтгэх зааврыг доорх URL -с үзнэ үү.

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

Андройд апп болон системийн хоорондох интеграцийг Dweet платформыг ашигласан REST аргаар хийсэн бөгөөд бүртгүүлэх шаардлагагүй.

dweet.io/

Алхам 6: Сорилтууд

Хөгжлийн явцад OpenCV техникээс эхлээд AWS платформ хүртэлх олон бэрхшээл тулгарсан. C/C ++ дээр хөгжих цагийг хэмнэхийн тулд бид Python -той код бичихээр шийдсэн. Бидний хөгжүүлэлтийн явцад зөвхөн Opencv -ийн үндсэн аргууд орно.

• cv2. GaussianBlur (..)

• cv2. босго (..)

• cv2.morphologyEx (..)

• cv2.contourArea (..)

• cv2.findContours (..)

Эдгээр үндсэн аргууд нь хүмүүсийг илрүүлэх сайн чанарт хүрэхэд хангалтгүй байв. Чичиргээтэй видео ML (Machine Learning) бүхий сценариудыг ашигласан. Тиймээс бид OpenCV машин сургалтын номын санг ашиглахаар шийдсэн бөгөөд ML алгоритмын хувьд сайн өгөгдлийн оролт олох нь бидний олон хоног зарцуулсан асуудал байсан тул бидэнд бас нэг асуудал тулгарлаа. Бид OpenCV SVM алгоритмыг ашигласан боловч ажиллаагүй байна. Бид OpenCV Naive Bayses -ийг ашигласан бөгөөд энэ нь сайн ажилласан. Бид Tensorflow болон CNN -ийн мэдрэлийн сүлжээг ашиглахыг оролдсон боловч одоогоор үүнийг хийж чадаагүй байна. CNN нь маш их боловсруулалтын хүчийг ашигладаг бөгөөд бидэнд байхгүй байсан. OpenCV ML болон OpenCV -ийн үндсэн аргуудыг ашиглах нь хүмүүсийг илрүүлэх өндөр түвшинд хүрэхэд бидэнд тусалсан юм. Гэсэн хэдий ч видео бичлэгийн төрөл бүрийн хувьд бид хүмүүсийг илрүүлэх өндөр түвшинд хүрч, хуурамч эерэг байдлаас зайлсхийхийн тулд OpenCV -ийн параметрүүдийг өөрчлөх шаардлагатай болдог. Энэ хоёр сарын дундуур бид мэдээлэл цуглуулах төв хийхгүй байх тухай анхны санаагаа боловсруулсан. зөвхөн зорчигчдын тоо, GPS байршил. Бид температур гэх мэт бусад мэдрэгч ашиглан өгөгдөл цуглуулахгүй байхаар шийдсэн бөгөөд програмыг параметрчлэх, тохируулах боломжтой болгохын тулд.ini файлыг үүсгэсэн. Cambus.ini файл дээр та програмыг олон янзаар тохируулах боломжтой.

Алхам 7: Үр дүн ба ирээдүйн ажил

Видеоноос харахад лангуу үнэн зөв ажиллаж байна. Цэнхэр шугам нь оролтын хязгаарыг, улаан шугам нь гаралтын хязгаарыг тэмдэглэнэ. Энэ тохиолдолд бид үүнийг автобусанд байрлуулж чадаагүй тул дууриамал болгохын тулд видеог ашигласан болно.

Видео нөхцөл, камерын өнцөг, гэрэл гэгээ гэх мэт таны нөхцөл байдалд зарим өөрчлөлт оруулах шаардлагатай гэдгийг санаарай. Видео бичлэгийн төрөл бүр өөрийн параметрийн тохируулга байх ёстой.

Мөн cambus.ini дээрх MQTT брокер гэх мэт хувьсагчдыг өөрчилнө үү.

Цаашид хэрэгжүүлэхдээ системд температур, чийгшил, CO2 зэрэг мэдрэгчийг нэмж оруулах талаар авч үзэх болно. Гол санаа нь хотуудын эргэн тойрон дахь мэдээллийг олон нийтэд хүргэх явдал юм.

Төслийг сайжруулахын тулд бид дараах алхмуудыг жагсаав.

  • C/C ++ ашиглан кодыг дахин бичих;
  • ML алгоритмыг сайжруулах;
  • Python кодыг дахин факторлох;
  • Автобусанд суух;

Бидэнд үзүүлсэн бүх дэмжлэгт Embarcados болон Qualcomm -д талархал илэрхийлье.

Хамтран ажиллагсад:

Бруно Монтейро - [email protected]

Клебер Дробовок - [email protected]

Винисиус де Оливейра - [email protected]

Алхам 8: Ашигласан материал

[1]

[2]

[3]

[4]

[5]

Зөвлөмж болгож буй: