Nodeflux Central
Tracking

Tracking

Lacak pergerakan objek — wajah atau kendaraan — secara real-time lintas kamera menggunakan Face Tracking dan Plate Tracking di Lenz Dashboard.

Pengenalan

Fitur Tracking memungkinkan Anda menelusuri riwayat pergerakan suatu objek — individu (berdasarkan wajah) atau kendaraan (berdasarkan nomor plat) — di seluruh kamera yang terpasang dalam sistem. Berbeda dengan Live Events yang menampilkan semua kejadian secara masuk dari seluruh kamera, Tracking berfokus pada satu subjek spesifik dan memvisualisasikan seluruh jejak pergerakannya secara kronologis.

Kapan Menggunakan Tracking

SkenarioFitur yang Tepat
Memantau semua aktivitas deteksi dari seluruh kamera secara langsungLive Events
Melacak rute pergerakan seorang individu di seluruh kameraFace Tracking
Melacak di mana saja suatu kendaraan terdeteksi berdasarkan nomor platPlate Tracking
Mencari wajah dari foto di data event historisFace Search

Perbedaan dengan Live Events

AspekLive EventsTracking
FokusSemua event dari semua kameraSatu subjek (face_id atau nomor plat)
Arah penelusuranReal-time, stream masukHistoris, berdasarkan rentang waktu
OutputDaftar event lintas analitikKronologi lokasi satu objek
Tipe dataSemua jenis analitikFace Recognition / LPR saja

Halaman /tracking mendukung dua mode: Tracking Wajah dan Tracking Plat. Anda dapat berpindah mode menggunakan toggle di bagian atas halaman. Mode yang aktif tercermin pada URL melalui parameter ?type=face atau ?type=plate.

Akses ke halaman ini dikendalikan oleh RBAC dan feature flag. Dibutuhkan izin pada resource FACE_TRACKING atau PLATE_TRACKING, serta flag FACE_TRACKING_FEATURE_ENABLED atau PLATE_TRACKING_FEATURE_ENABLED yang diaktifkan oleh administrator. Jika halaman tidak dapat diakses, hubungi administrator sistem Anda.


Cara Menggunakan

Face Tracking — Lacak Pergerakan Berdasarkan Wajah

Buka halaman Tracking

Akses halaman /tracking dari sidebar Lenz Dashboard. Secara default, mode yang aktif adalah Tracking Wajah. Pastikan toggle di bagian atas menampilkan "Tracking Wajah".

Masukkan identitas yang ingin dilacak

Di halaman pencarian, Anda dapat memasukkan subjek dengan dua cara:

  • Cari berdasarkan nama — ketik nama individu yang sudah terdaftar (enrolled) di kolom pencarian. Sistem akan menampilkan daftar kandidat dari database enrollment.
  • Masukkan Face ID secara langsung — jika Anda sudah mengetahui face_id individu tersebut (misalnya dari hasil Face Search), masukkan langsung ke kolom ID.

Pilih individu yang tepat dari daftar hasil pencarian, atau tekan Enter setelah memasukkan Face ID.

Atur rentang waktu

Gunakan filter rentang waktu untuk menentukan periode yang ingin Anda telusuri. Semakin spesifik rentang waktu, semakin cepat sistem merespons dan semakin relevan hasilnya.

Lihat hasil Tracking

Sistem akan memanggil endpoint GET /api/events/face-related dan menampilkan seluruh event di mana individu tersebut terdeteksi, diurutkan secara kronologis. Setiap event menampilkan:

  • Foto wajah yang terdeteksi (thumbnail)
  • Nama lokasi dan kamera
  • Waktu deteksi
  • Tingkat kepercayaan (confidence score)
  • Koordinat geografis kamera (jika tersedia)

Telusuri detail per event

Klik event mana pun untuk melihat detail lengkap, termasuk gambar konteks lokasi (location image) dan data pipeline dari mesin analitik.


Plate Tracking — Lacak Pergerakan Berdasarkan Nomor Plat

Aktifkan mode Plate Tracking

Di halaman /tracking, klik toggle Tracking Plat di bagian atas halaman. URL akan berubah menjadi /tracking?type=plate.

Cari nomor plat

Di kolom pencarian, ketikkan sebagian atau seluruh nomor plat kendaraan. Sistem mendukung wildcard (*) untuk pencarian parsial — misalnya B 1234* akan menemukan semua plat yang diawali dengan "B 1234".

Sistem memanggil GET /api/events/search/plates dan menampilkan daftar plat yang cocok beserta ringkasan:

  • Nomor plat
  • Pertama kali terdeteksi (first_seen)
  • Terakhir kali terdeteksi (last_seen)
  • Jumlah total deteksi (detection_count)

Pilih plat dan lihat riwayat pergerakan

Pilih nomor plat dari hasil pencarian. Sistem kemudian memanggil GET /api/events/plate-related untuk mengambil seluruh riwayat deteksi kendaraan tersebut, diurutkan berdasarkan waktu. Setiap entri menampilkan lokasi kamera, waktu deteksi, dan gambar kendaraan.

Plate Tracking menggunakan deduplication berbasis bucket waktu 10 menit per Stream — artinya jika kendaraan yang sama terdeteksi oleh kamera yang sama dalam rentang 10 menit, hanya satu entri yang ditampilkan. Ini mencegah hasil yang terlalu padat dari satu lokasi.


Tipe Tracking

Face Tracking

Lacak pergerakan individu berdasarkan face_id di seluruh kamera. Data diambil dari mesin Face Recognition dan ditampilkan beserta confidence score, foto wajah, dan lokasi kamera secara kronologis.

Plate Tracking

Lacak rute perjalanan kendaraan berdasarkan nomor plat. Mendukung pencarian parsial dengan wildcard dan menampilkan agregasi first_seen, last_seen, serta jumlah deteksi sebelum Anda melihat detail riwayat lengkap.


Fitur Utama

Pencarian Lintas Kamera

Satu face_id atau nomor plat ditelusuri di seluruh kamera yang terpasang — tanpa perlu memeriksa rekaman satu per satu secara manual.

Kronologi Pergerakan

Hasil ditampilkan secara urut waktu sehingga Anda dapat merekonstruksi rute pergerakan subjek dari satu lokasi ke lokasi lain.

Confidence Score

Setiap event Face Tracking menyertakan skor kepercayaan (70–99%) dari mesin Face Recognition, membantu Anda menilai keandalan setiap deteksi.

Location Image

Thumbnail gambar konteks lokasi disertakan per event, memberikan gambaran visual situasi di sekitar kamera saat deteksi terjadi.

Wildcard Search (Plate)

Pencarian plat mendukung karakter wildcard (*) sehingga Anda dapat menemukan kendaraan meski hanya mengetahui sebagian nomor plat.

Optimasi Payload

Parameter disable_base64_image mengurangi ukuran payload hingga 99% dengan menggunakan URL gambar menggantikan data base64 — mempercepat respons pada koneksi terbatas.


API Reference

Semua endpoint memerlukan header Authorization: Bearer <token>. Basis URL mengikuti konfigurasi instalasi Lenz Anda.

Mengambil seluruh event di mana individu dengan face_id tertentu terdeteksi dalam rentang waktu yang ditentukan.

Query Parameters:

Prop

Type

cURL — Face Tracking Events
curl -G "${API_URL}/api/events/face-related" \
  -H "Authorization: Bearer ${TOKEN}" \
  --data-urlencode "face_id=abc123def456" \
  --data-urlencode "timestamp_from=2025-04-01T00:00:00Z" \
  --data-urlencode "timestamp_to=2025-04-30T23:59:59Z" \
  --data-urlencode "limit=50" \
  --data-urlencode "disable_base64_image=true"
Response — Face Tracking Events
{
  "ok": true,
  "message": "success",
  "data": [
    {
      "id": 1001,
      "analytic_id": "fr-analytic-01",
      "stream_id": "stream-camera-lobby",
      "stream_latitude": -6.2088,
      "stream_longitude": 106.8456,
      "primary_image_url": "https://api.example.com/images/primary/1001.jpg",
      "secondary_image_url": "https://api.example.com/images/secondary/1001.jpg",
      "label": "John Doe",
      "result": "abc123def456",
      "location": "Lobby Utama",
      "status": "KNOWN",
      "logic": "MATCH",
      "timestamp": "2025-04-15T08:23:11Z",
      "confidence": 92,
      "location_image": "https://api.example.com/images/location/1001.jpg",
      "node_num": 1,
      "instance": "instance-jakarta",
      "pipeline_event_id": "evt-9876"
    }
  ]
}

Keterangan field response:

Prop

Type


Mencari plat kendaraan di data event historis dan mengembalikan hasil yang diagregasi per nomor plat.

Query Parameters:

Prop

Type

cURL — Plate Search
curl -G "${API_URL}/api/events/search/plates" \
  -H "Authorization: Bearer ${TOKEN}" \
  --data-urlencode "q=B 1234*" \
  --data-urlencode "timestamp_from=2025-04-01T00:00:00Z" \
  --data-urlencode "timestamp_to=2025-04-30T23:59:59Z" \
  --data-urlencode "limit=20"
Response — Plate Search
{
  "ok": true,
  "message": "success",
  "data": [
    {
      "plate_number": "B 1234 XYZ",
      "first_seen": "2025-04-03T07:12:00Z",
      "last_seen": "2025-04-28T18:45:30Z",
      "detection_count": 47
    }
  ]
}

Mengambil seluruh riwayat deteksi untuk satu nomor plat dalam rentang waktu tertentu.

Query Parameters:

Prop

Type

cURL — Plate Tracking Events
curl -G "${API_URL}/api/events/plate-related" \
  -H "Authorization: Bearer ${TOKEN}" \
  --data-urlencode "plate_number=B 1234 XYZ" \
  --data-urlencode "timestamp_from=2025-04-01T00:00:00Z" \
  --data-urlencode "timestamp_to=2025-04-30T23:59:59Z" \
  --data-urlencode "limit=50" \
  --data-urlencode "disable_base64_image=true"
Response — Plate Tracking Events
{
  "ok": true,
  "message": "success",
  "data": [
    {
      "id": 2001,
      "analytic_id": "lpr-analytic-01",
      "stream_id": "stream-gate-in",
      "stream_latitude": -6.1751,
      "stream_longitude": 106.8272,
      "primary_image_url": "https://api.example.com/images/primary/2001.jpg",
      "secondary_image_url": "https://api.example.com/images/secondary/2001.jpg",
      "label": "B 1234 XYZ",
      "result": "B 1234 XYZ",
      "location": "Gerbang Masuk",
      "logic": "LPR",
      "timestamp": "2025-04-15T07:58:44Z",
      "plate_number": "B 1234 XYZ",
      "location_image": "https://api.example.com/images/location/2001.jpg",
      "node_num": 2,
      "instance": "instance-jakarta",
      "pipeline_event_id": "evt-5432"
    }
  ]
}

Endpoint plate-related menerapkan deduplication berbasis bucket waktu 10 menit per Stream. Artinya, jika kendaraan yang sama terdeteksi oleh kamera yang sama lebih dari sekali dalam rentang 10 menit, hanya satu event yang dikembalikan. Ini menjaga jumlah hasil tetap proporsional dan tidak terlalu padat.


Tips & Troubleshooting


API Reference

Dokumentasi lengkap seluruh Endpoint Tracking — parameter, schema respons, dan contoh cURL untuk Face Tracking dan Plate Tracking.


Selanjutnya

On this page