Best Practices & Troubleshooting
Panduan penempatan kamera dan konfigurasi garis/zona, keterbatasan yang terverifikasi dari kode, dan runbook untuk pesan error umum Vehicle Analytics.
Best Practices
Penempatan Kamera
Sebagian besar masalah counting/dwelling berakar pada penempatan kamera dan posisi garis/zona: kendaraan saling menutupi, garis terlalu dekat area antrean, atau zona terlalu lebar. Ikuti panduan di Persyaratan — Penempatan Kamera.
Uji Konfigurasi Garis/Zona Sebelum Go-Live
Kirim POST dengan sub_analytics yang hanya mengaktifkan satu logic dulu, verifikasi lewat GET /pipeline/{node_num}/{stream_id}/{analytic_id} bahwa areas tersimpan sesuai yang dikirim, lalu tambahkan logic lain secara bertahap. Untuk dwelling, uji entry_lines/exit_lines dengan kendaraan yang benar-benar melintasi sisi tersebut.
Memilih Antara Multi-Logic dan Single-Logic
- Gunakan
NFV4-MVA/NFV4-MVAA/NFV4-MVAShanya jika Anda memang butuh lebih dari satu logic (counting + dwelling, atau roi_counting + density) pada stream yang sama. - Jika hanya butuh counting garis,
NFV4-VC/NFV4-VC-HWlebih sederhana untuk dikonfigurasi dan dipantau — tidak ada risiko salah mengisisub_analytics. - Aktifkan
NFV4-MVAAhanya jika sistem hilir benar-benar memakai warna/tipe/merek — klasifikasi atribut menambah beban GPU per kandidat dump.
Keterbatasan
- Occlusion traffic padat — kendaraan yang sangat berdekatan atau bertumpuk (terutama motor berkelompok) dapat gagal dideteksi individual atau tracker kehilangan
tracker_id. Aktifkanenable_group_trackingjika Anda ingin motor berkelompok dihitung sebagai satu entitas, bukan menghilang. - Malam tanpa inframerah — akurasi deteksi menurun signifikan tanpa pencahayaan buatan/IR. Akurasi klasifikasi warna (
NFV4-MVAA) menurun lebih jauh lagi pada mode IR (hitam-putih). - Sudut top-down ekstrem — sudut kamera mendekati 90° mengurangi akurasi klasifikasi tipe kendaraan karena bentuk kendaraan dari atas kurang khas dibanding tampak samping/depan.
- Kecepatan tinggi — kendaraan yang bergerak sangat cepat relatif terhadap shutter speed kamera menghasilkan motion blur yang menurunkan akurasi deteksi dan klasifikasi atribut.
NFV4-MVAStidak melengkapi atribut warna/tipe/merek — layanan atribut dipanggil, tetapi fungsi penggabung hasil (pipeline_data_appenddisrc/handler/helper/snapshot.hpp:379-395) tidak memiliki cabang untukNFV4-MVAS. EventNFV4-MVAShanya berisiattributes.vehicle, tidak pernahattributes.color/type/brand. Lihat Konfigurasi.roi_countingmengabaikandumping_sampling_time/dump_ignore_iou_thresholddari body — kode pengecekan memakai kunci salah eja (dumpling_sampling_time), sehingga kedua parameter yang Anda kirim tidak pernah diterapkan padaroi_counting(src/packages/multi_logics/routines.hpp:156-161).countingtidak terpengaruh oleh bug ini.roi_type(whitelist/blacklist) pada konfigurasi zona diterima tapi tidak memengaruhi perilaku — tidak ada logic pada kode saat ini yang membaca field ini (hanya fieldinsidepada sub-analitikdensityyang benar-benar mengatur dalam/luar zona).NFV4-VASdanNFV4-VCATberstatus proof-of-concept pada deskripsi pipeline di kode sumber — verifikasi stabilitas dan akurasi sebelum dipakai di produksi.- Atribut tipe/merek tidak tersedia untuk
motorcycle— hanya warna yang diklasifikasikan; fieldtype/brandtidak dikirim untuk deteksi berlabelmotorcycle. - Estimasi kecepatan butuh kalibrasi manual —
NFV4-MVAStidak dapat mengestimasi kecepatan tanpa tepat 4 titikplane_calibration.pointsyang valid; tanpa itu, homography gagal dihitung dan hasil kecepatan tidak dapat diandalkan.
Troubleshooting
Sebagian besar pesan berikut muncul di log container (docker logs visionaire4), bukan sebagai side message pipeline — Vehicle Analytics tidak menggunakan mekanisme side message seperti Face Recognition.
Konfigurasi
Referensi lengkap format sub_analytics, parameter tiap logic, konfigurasi garis/zona, atribut, environment variable, dan argumen aplikasi Vehicle Analytics.
API Reference — Vehicle Analytics
Endpoint REST API untuk membuat pipeline Vehicle Analytics pada stream Visionaire4, event streaming via WebSocket, dan struktur event JSON per varian.