Daftar Isi:
- Langkah 1: Bahan
- Langkah 2: Instal Linaro di Dragonboard 410c
- Langkah 3: Langkah 2: Instal Perpustakaan dan Unduh Kode Sumber Dari GitHub
- Langkah 4: Menyiapkan AWS IoT Core, DynamoDB
- Langkah 5: Siapkan Twilio dan Dweet API
- Langkah 6: Tantangan
- Langkah 7: Hasil dan Pekerjaan Masa Depan
- Langkah 8: Referensi
Video: Cambus - Sistem Pendataan Bus Perkotaan: 8 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:56
Di antara masalah dan kesulitan yang diketahui di angkutan umum, penduduk kekurangan informasi real time dan dengan sedikit ketegasan. Kepadatan bus angkot membuat pengguna angkot menjauh, yang lebih memilih menggunakan kendaraan sendiri, meski masih macet berjam-jam. Jika informasi waktu nyata, seperti jumlah bus, mudah tersedia bagi pengguna, ia dapat memilih apakah akan menunggu bus berikutnya atau berkeliling dengan bus atau menggunakan kendaraannya sendiri. Kekuatan pilihan membuat transportasi umum menjadi pilihan yang lebih menarik bagi pengguna.
Menghitung atau menaksir orang di dalam ruangan dapat dilakukan dengan banyak cara, di antaranya yang paling umum digunakan adalah:
- Gambar termal;
- Visi komputer;
- Penghitung wajah;
Di antara beberapa kesulitan untuk memperkirakan orang di lingkungan menggunakan visi komputer, yang utama adalah:
- Oklusi orang;
- Membalikkan pencahayaan;
- Oklusi statis, yaitu orang di belakang objek;
- Sudut kamera ke lingkungan;
Tantangan untuk proyek ini adalah untuk mengetahui sudut kamera yang tepat yang akan membantu dalam pengurangan latar belakang gambar, serta luminositas variabel pada siang hari di dalam bus.
Tujuan utama dari proposal ini adalah untuk membuat model yang kuat dan dapat dikonfigurasi untuk memperkirakan kepadatan penduduk dan membuat hasilnya tersedia untuk penduduk melalui telepon pintar.
Langkah 1: Bahan
Bahan yang dibutuhkan untuk proyek ini adalah sebagai berikut:
1 x Papan Naga 410c;
1 x kamera USB;
1 x Ponsel Cerdas Android;
Langkah 2: Instal Linaro di Dragonboard 410c
Ikuti petunjuk pada tautan di bawah ini untuk menginstal Linaro 17.09 di DragonBoard 410c. Kami merekomendasikan menginstal Linaro 17.09 untuk dukungan kernel untuk GPS.
www.96boards.org/documentation/consumer/dr…
Langkah 3: Langkah 2: Instal Perpustakaan dan Unduh Kode Sumber Dari GitHub
Cambus memiliki arsitektur modular dan desain kode. Dimungkinkan untuk membuat kode algoritme pembelajaran mesin Anda sendiri, mengubah ke layanan cloud lain, dan membuat aplikasi pengguna Anda sendiri.
Untuk menjalankan proyek cambus, pertama-tama Anda perlu mengunduh kode sumber dari github (https://github.com/bmonteir00/cambus). Instal python (Cambus adalah mode untuk dijalankan pada versi 2.7 dan > 3.x) dan pustaka berikut menggunakan 'pip' (Sudo apt-get install python-pip). Ini akan diperlukan untuk menginstal banyak perpustakaan di sistem Linaro(Juga, Disarankan untuk membuat lingkungan virtual - pip install virtualenv - untuk mengisolasi sistem Cambus dari SO). Silakan, instal perpustakaan berikut:
- instal pip paho-mqtt
- pip install numpy
- pip instal opencv-python
- pip instal opencv-contrib-python
- pip install twilio
- pip instal matplotlib
Program utama dibagi menjadi beberapa kelas:
- CamBus - kelas utama;
- Sensor - kelas untuk mendapatkan data seperti posisi GPS, suhu, Co2.
- Counter - class dengan algoritma pengolahan citra.
Pastikan jika semua perpustakaan telah diinstal dan jalankan python CamBus_v1.py.
Langkah 4: Menyiapkan AWS IoT Core, DynamoDB
Kami menggunakan inti AWS IoT sebagai broker MQTT dengan TLS dan X509 serta NoSQL dan DynamoDB untuk mencatat data. Anda harus membuat akun di https://aws.amazon.com/free.). Selanjutnya, Anda harus mengikuti langkah-langkah di bawah ini untuk membuat sesuatu dan berintegrasi dengan Dynamo:
docs.aws.amazon.com/iot/latest/developergu…
Langkah 5: Siapkan Twilio dan Dweet API
Layanan SMS Twilio juga disiapkan. Lihat URL di bawah untuk petunjuk menyelesaikan langkah ini:
www.twilio.com/docs/iam/api/account
Integrasi antara aplikasi android dan sistem dilakukan dengan cara REST menggunakan platform Dweet. Tidak perlu mendaftar.
dweet.io/
Langkah 6: Tantangan
Selama pengembangan kami, banyak tantangan yang kami hadapi, mulai dari teknik OpenCV hingga platform AWS. Kami memutuskan untuk membuat kode dengan Python untuk menghemat waktu pengembangan di C/C++. Selama pengembangan kami hanya metode dasar Opencv seperti:
• cv2. GaussianBlur(..)
• cv2.threshold(..)
• cv2.morphologyEx(..)
• cv2.contourArea(..)
• cv2.findContours(..)
Metode dasar ini tidak cukup untuk mencapai kualitas yang baik dalam mendeteksi orang. Skenario dengan video goyah ML (Machine Learning) digunakan. Jadi, kami memutuskan untuk menggunakan perpustakaan pembelajaran mesin OpenCV dan kami mendapat masalah lain karena menemukan input data yang baik untuk algoritma ML adalah masalah yang kami habiskan selama berhari-hari. Kami telah menggunakan algoritma OpenCV SVM tetapi tidak berhasil. Kami menggunakan OpenCV Naive Bayses dan yang ini bekerja dengan baik. Kami telah mencoba menggunakan jaringan saraf Tensorflow dan CNN, namun kami tidak mewujudkannya untuk saat ini. CNN menggunakan banyak kekuatan pemrosesan, sesuatu yang tidak kami miliki. Menggunakan OpenCV ML dan metode dasar OpenCV membantu kami mencapai tingkat pendeteksian orang yang baik. Namun demikian, untuk setiap jenis video kami harus menyesuaikan parameter OpenCV untuk mencapai tingkat pendeteksian orang yang baik dan menghindari kesalahan positif. Di tengah dua bulan ini kami mengembangkan ide pertama kami untuk melakukan pusat pengumpulan data bukan hanya jumlah penumpang dan lokasi GPS. Kami memutuskan untuk mengumpulkan bukan data menggunakan sensor lain seperti suhu dan sebagainya. Kami membuat file.ini untuk membuat parameter aplikasi dan membuatnya dapat dikonfigurasi. Pada file Cambus.ini Anda dapat mengkonfigurasi aplikasi dengan banyak cara.
Langkah 7: Hasil dan Pekerjaan Masa Depan
Seperti yang Anda lihat di video, penghitung bekerja dengan akurat. Garis biru menandai batas input dan garis merah sebagai batas output. Dalam hal ini, video digunakan untuk simulasi karena kami tidak dapat menyebarkannya ke bus.
Ingatlah bahwa beberapa perubahan harus dilakukan pada kondisi Anda tentang ukuran video, sudut kamera, luminositas, dll. Setiap jenis video harus memiliki penyesuaian parameternya sendiri seperti latar belakang penyedotan kernel opencv dan sebagainya.
Silakan juga mengubah variabel di cambus.ini, menunjukkan broker MQTT dan sebagainya.
Kami mempertimbangkan dalam implementasi mendatang untuk menambahkan sensor, misalnya, suhu, kelembaban, dan CO2 dalam sistem. Idenya adalah untuk mendapatkan data di sekitar kota yang membuatnya tersedia untuk masyarakat.
Berikut ini kami menghitung langkah selanjutnya yang dapat Anda lakukan untuk meningkatkan proyek:
- Tulis ulang kode menggunakan C/C++;
- Meningkatkan algoritma ML;
- Faktor ulang kode python;
- Penyebaran ke dalam bus;
Kami ingin mengucapkan terima kasih kepada Embarcados dan Qualcomm atas semua dukungan yang diberikan.
Kolaborator:
Bruno Monteiro - [email protected]
Kleber Drobowok - [email protected]
Vinicius de Oliveira - [email protected]
Langkah 8: Referensi
[1]
[2]
[3]
[4]
[5]
Direkomendasikan:
Tachometer/Scan Gauge Menggunakan Arduino, OBD2, dan CAN Bus: 8 Langkah
Tachometer/Scan Gauge Menggunakan Arduino, OBD2, dan CAN Bus: Setiap pemilik Toyota Prius (atau kendaraan hybrid/khusus lainnya) akan tahu bahwa dasbor mereka mungkin kehilangan beberapa tombol! Prius saya tidak memiliki RPM mesin atau pengukur suhu. Jika Anda seorang pria kinerja, Anda mungkin ingin mengetahui hal-hal seperti waktu maju dan
Retas Mobil Anda Dengan Terminal Wio dan CAN Bus: 7 Langkah
Retas Mobil Anda Dengan Terminal Wio dan CAN Bus: Jika Anda memiliki pemahaman tentang pemrograman CAN Bus dan Arduino, dan ingin meretas mobil Anda, maka instruksi ini dapat memberi Anda solusi. Adapun mengapa Anda ingin meretas mobil Anda, saya tidak tahu, tapi ini memang hal yang menarik. Pra
Tombol Roda Kemudi ke Adaptor Stereo Mobil (CAN Bus -> Key1): 6 Langkah
Tombol Roda Kemudi ke Adaptor Stereo Mobil (CAN Bus -> Key1): Beberapa hari setelah membeli mobil bekas, saya menemukan bahwa saya tidak dapat memutar musik dari ponsel melalui stereo mobil. Yang lebih membuat frustrasi adalah mobil itu memiliki bluetooth, tetapi hanya mengizinkan panggilan suara, bukan musik. Itu juga memiliki port USB Windows Phone, tetapi saya
Cara Decode Data CAN Bus Kendaraan: 8 Langkah
Cara Mendekode Data Bus CAN Kendaraan: Dalam instruksi ini, kami akan merekam data bus CAN mobil atau truk dan mengubah data log bus CAN yang direkam menjadi nilai yang dapat dibaca. Untuk decoding kami akan menggunakan layanan cloud can2sky.com yang gratis. Kami dapat merekam log dengan adaptor CAN-USB tetapi membayar
Pengalaman Bus yang Ditingkatkan untuk Orang Tunanetra Dengan Arduino dan Pencetakan 3D: 7 Langkah
Pengalaman Bus yang Ditingkatkan untuk Penyandang Tunanetra Dengan Arduino dan Pencetakan 3D: Bagaimana perjalanan transportasi umum dapat dipermudah bagi penyandang gangguan penglihatan? Data waktu nyata pada layanan peta seringkali tidak dapat diandalkan saat menggunakan transportasi umum. Hal ini dapat menambah tantangan perjalanan untuk individu dengan gangguan penglihatan. T