Nodeflux Central
License Plate Recognition (LPR)

Persyaratan

Spesifikasi kamera, panduan penempatan kamera agar plat nomor terbaca jelas, dan dependensi resource untuk License Plate Recognition.

Akurasi OCR plat ditentukan jauh sebelum frame sampai ke model deteksi — oleh kamera yang dipilih dan cara memasangnya. Halaman ini menjelaskan spesifikasi minimum dan cara menempatkan kamera agar plat yang masuk ke pipeline cukup besar dan tajam untuk dibaca.

Spesifikasi Kamera

PersyaratanMinimumRekomendasi
Resolusi1080p (1920×1080)1080p — investasikan pada lensa dan shutter speed, bukan resolusi lebih tinggi
Frame rate8 fps15–30 fps, lebih tinggi untuk kendaraan cepat
LensaFixed, dipilih sesuai jarak titik bacaVarifocal agar FOV bisa disempitkan ke lajur kendaraan
Shutter speedAutoMinimum 1/500 s pada jalur kendaraan bergerak untuk menghindari motion blur pada karakter plat
IR / malam hariTidak wajibIR illuminator untuk operasi 24 jam; hindari mode IR jika pencahayaan tampak masih memungkinkan (kontras karakter lebih baik)
CodecH.264H.264 / H.265, bitrate cukup agar karakter tidak pecah

Kedua varian arsitektur menurunkan frame ke 416×224 sebelum deteksi (cv::Size(416, 224) di src/packages/lpr/lpr.cpp dan lpr3.cpp). Untuk varian single-stage (NFV4-LPR2/NFV4-LPRS), seluruh frame — termasuk plat — diturunkan langsung ke resolusi ini dalam satu langkah, sehingga ukuran plat di frame asli sangat menentukan apakah plat masih terbaca setelah downscale. Varian two-stage (NFV4-LPR3/NFV4-LPR3S) lebih toleran: deteksi plat berjalan pada crop per-kendaraan yang di-resize ulang, bukan pada frame penuh yang sudah diperkecil.

Penempatan Kamera

Tujuan penempatan: plat kendaraan yang melintasi titik baca tetap terbaca setelah frame diturunkan ke ukuran input model.

Satu titik baca per kamera

Arahkan kamera ke satu jalur/gerbang tempat kendaraan pasti melintas dengan kecepatan relatif konsisten. Hindari kamera overview yang mencakup beberapa lajur sekaligus — plat pada lajur terjauh akan terlalu kecil untuk terbaca akurat.

Sudut dan jarak

ParameterNilaiAlasan
Sudut vertikal (pitch)15–30° dari horizontalTerlalu tegak lurus (>30°) mendistorsi perspektif plat; terlalu datar (<15°) membuat plat mudah terhalang kendaraan di depannya
Tinggi pemasangan1–1,5 m dari permukaan jalanSejajar dengan tinggi rata-rata plat kendaraan roda empat
Jarak ke titik baca3–8 mSesuaikan dengan focal length lensa; makin jauh, makin sempit FOV yang dibutuhkan agar plat tetap besar
HindariKamera menghadap langsung ke matahariBacklight membuat plat tampak sebagai siluet gelap

Menghitung ukuran plat setelah downscale

Untuk varian single-stage, ukuran plat yang sampai ke model deteksi mengikuti downscale langsung dari resolusi kamera ke 416×224:

lebar plat di input model (px) ≈ lebar plat di frame kamera (px) × (416 ÷ lebar frame kamera (px))

Pada kamera 1080p (lebar frame 1920 px), faktor downscale-nya ≈ 0,217×:

Lebar plat di frame kamera (1080p)Lebar plat di input model (416 px)
200 px~43 px (baik)
150 px~33 px (cukup)
120 px~26 px (batas nyaman)
80 px~17 px (batas bawah, berisiko)
60 px~13 px (terlalu kecil, hindari)

Sempitkan FOV (lensa lebih panjang atau varifocal disetel lebih dekat) sehingga lebar plat di frame kamera tidak kurang dari ~120 px pada 1080p. Untuk NFV4-LPR3/NFV4-LPR3S, batas ini lebih longgar karena plat dideteksi ulang dari crop kendaraan, bukan dari frame 416×224 secara langsung — tetap ikuti panduan di atas sebagai baseline aman untuk semua varian.

Pencahayaan

  • Minimal 300 lux di area plat agar karakter tidak underexposed.
  • Pasang IR illuminator untuk operasi malam hari atau area kurang cahaya.
  • Pertimbangkan polarizing filter untuk mengurangi glare dari permukaan plat metalik/reflektif.
  • Hindari sumber cahaya langsung yang mengarah ke lensa kamera (lampu kendaraan lain, lampu jalan).

Yang perlu dihindari

  • Lensa wide-angle pada jarak jauh — plat kecil dan terdistorsi di tepi frame.
  • Sudut kamera yang membuat plat kendaraan lain menghalangi plat kendaraan di depannya pada lajur padat.
  • Kamera fisheye/PTZ yang ikut dipakai untuk overview — gunakan kamera khusus untuk titik baca LPR.

Dependensi

KomponenKebutuhanSumber
CPU3 core per pipelineget_resource_req() di src/packages/lpr/lpr.cpp dan lpr3.cpp — nilai tetap, sama untuk keempat varian
RAM2000 MB per pipelineget_resource_req(), nilai tetap
GPUDibagikan sebagai fraksi resource GPU bersama pipeline lain di node yang sama (bukan alokasi VRAM tetap)register_service(...) di register_package_lpr/register_package_lpr_exp, fraksi berbeda per tipe GPU (mis. ~0,1 pada GPU tipe Default/L4/L40, ~0,01 pada A100, ~0,11 pada T4)
Stream videoAktif dan dapat diakses node Visionaire—

LPR tidak bergantung pada layanan eksternal seperti FREMIS-N — seluruh pemrosesan (deteksi, OCR, grouping/tracking, dedup) berjalan di dalam pipeline itu sendiri.

Daftar lengkap parameter ada di Konfigurasi. Setelah persyaratan terpenuhi, buat pipeline sesuai API Reference — Manajemen Pipeline.

On this page