7 Langkah Uji Model Computer Vision Sebelum Dipakai
Model yang akurat saat latihan sering gagal di kamera asli. Cara menguji model computer vision sebelum dipakai adalah memisahkan data uji sejak awal, membaca matriks kesalahan, lalu mencobanya di kondisi yang benar-benar akan kamu hadapi. Urutan berikut saya pakai supaya tidak kaget saat model mulai menebak di lapangan.
1. Pisahkan data uji sejak awal, jangan saat-saat terakhir
Bagi dataset jadi tiga bagian sebelum kamu melatih apa pun: data latih, data validasi, dan data uji. Data uji disimpan rapat-rapat, tidak boleh ikut dipakai memilih parameter. Kalau kamu baru memisahkan data setelah model selesai dilatih, hasil ujinya akan terlalu bagus karena model sudah pernah melihat gambar itu.
Pembagian yang umum adalah 70 persen latih, 15 persen validasi, 15 persen uji. Jumlahnya bisa digeser, tapi pastikan tiap kelas gambar terwakili di ketiga bagian. Kalau satu kelas cuma punya sepuluh gambar, sisakan minimal dua untuk uji.
2. Uji dengan gambar dari ruangan atau kamera yang berbeda
Model deteksi objek sering lulus uji di dataset tapi gagal begitu kamera bergeser. Pencahayaan kantor yang terang menghasilkan warna berbeda dari gudang yang remang. Latar belakang juga berubah: meja kerja dibanding rak barang.
Sisihkan satu set gambar dari lokasi yang tidak ikut dilatih. Kalau hasilnya turun jauh, model-mu belajar ciri latar, bukan ciri objek. Untuk memahami kenapa ini terjadi, cara kerja deteksi objek seperti YOLO bisa membantu melihat apa yang sebenarnya dipelajari jaringan.
Cara cepat: rekam sepuluh menit video dari kamera target, ambil lima puluh frame acak, lalu jalankan model. Jangan memilih frame yang paling jelas.
3. Baca matriks kesalahan, jangan cuma akurasi
Akurasi 92 persen terdengar bagus sampai kamu tahu modelnya selalu bilang "tidak ada objek" di video yang hampir kosong. Matriks kesalahan menunjukkan mana yang salah: model melewatkan objek, atau justru menandai benda yang tidak ada.
Untuk deteksi, hitung precision dan recall secara terpisah. Precision tinggi berarti saat model menandai sesuatu, tebakannya cenderung benar. Recall tinggi berarti model jarang melewatkan objek. Dua angka ini bertolak belakang, jadi sesuaikan dengan kebutuhanmu.
- Sistem penghitung orang di pintu masuk: prioritaskan recall supaya tidak ada yang terlewat.
- Sistem peringatan di lini produksi: prioritaskan precision supaya operator tidak kelelahan karena alarm palsu.
- Klasifikasi sampah: sesuaikan dengan biaya salah tebak, biasanya kelas tertentu lebih mahal daripada kelas lain.
4. Cek data uji benar-benar bersih dari kebocoran
Kebocoran data paling sering muncul dari frame video yang mirip. Kalau kamu memotong video jadi frame lalu membaginya secara acak, frame detik ke-10 bisa masuk latih dan frame detik ke-11 masuk uji. Keduanya hampir identik, jadi model mudah menebak.
Bagi berdasarkan video atau sesi perekaman, bukan berdasarkan file gambar. Aturan yang sama berlaku untuk foto beruntun dari objek yang sama. Ini juga alasan memberi label data gambar perlu dilakukan hati-hati, karena label yang konsisten antar sesi mempermudah pemisahan data uji.
5. Uji ambang kepercayaan pada data, bukan di kepala
Setiap model punya skor keyakinan per deteksi. Ambang 0,5 yang sering jadi nilai bawaan belum tentu cocok untuk kasusmu. Turunkan atau naikkan ambang, lalu lihat bagaimana precision dan recall bergeser di data uji.
Buat tabel sederhana berisi tiga kolom: ambang, precision, recall. Pilih baris yang paling masuk akal untuk kebutuhan lapangan, bukan yang angkanya paling cantik di kertas. Kalau kamu memakai model untuk menghitung objek, ambang yang terlalu rendah membuat hitungan membengkak.
6. Jalan bareng kamera asli selama beberapa jam
Uji di data gambar bagus untuk angka, tapi pengujian sebenarnya terjadi saat model berjalan dengan kamera yang akan dipakai. Pasang kamera, nyalakan model, biarkan berjalan setengah hari, lalu catat kejadian aneh.
Perhatikan hal yang tidak muncul di dataset: orang lewat cepat, bayangan sore, lampu berkedip, atau objek tertutup sebagian. Catat juga waktu proses per frame. Kalau model butuh 400 milidetik per frame, sistem tidak akan bisa memproses video 30 frame per detik. Untuk pemasangan kamera yang stabil, panduan memasang kamera USB untuk computer vision membahas posisi dan sudut yang berpengaruh ke hasil.
Kalau perangkatmu berupa proyek keras di meja, merapikan kabel proyek Arduino agar rapi dan aman mengurangi risiko kabel tertarik saat kamera digeser.
7. Siapkan skenario gagal dan cara menanganinya
Model yang baik tahu kapan harus diam. Tambahkan aturan sederhana: jika skor keyakinan di bawah ambang minimum, jangan tampilkan deteksi. Jika jumlah objek tiba-tiba melonjak tiga kali lipat dari rata-rata, tandai sebagai anomali untuk diperiksa.
Uji juga dengan gambar gelap, gambar buram, dan kamera yang tertutup. Sistem seharusnya tidak crash. Kalau kamera terlepas lalu tersambung lagi, pastikan proses berjalan ulang tanpa perlu restart manual. Bagian ini sering terlupa sampai kejadian di lokasi.
Untuk memindahkan hasil uji berupa rekaman ke laptop, perbandingan metode transfer file dari HP ke laptop bisa jadi acuan kalau kamu merekam lewat ponsel.
Ringkasan
Urutan pengujian yang saya sarankan: pisahkan data uji, uji di kamera berbeda, baca matriks kesalahan, cek kebocoran data, kalibrasi ambang, jalankan di lapangan, lalu siapkan penanganan gagal. Angka di kertas hanya pintu masuk. Keputusan memakai model diambil setelah kamu melihatnya bekerja di kondisi nyata.
Pertanyaan yang Sering Diajukan
Berapa banyak gambar uji yang cukup?
Tidak ada angka pasti. Untuk tugas sederhana dengan dua kelas, sekitar tiga puluh sampai lima puluh gambar per kelas sudah memberi gambaran. Makin beragam kondisinya, makin banyak yang dibutuhkan. Yang penting gambar uji diambil dari sesi perekaman yang tidak ikut dilatih.
Apakah akurasi 90 persen sudah aman dipakai?
Bergantung pada dampak kesalahan. Untuk hitung pengunjung di toko, 90 persen mungkin cukup. Untuk sistem yang memicu alarm atau menghentikan mesin, sisa 10 persen kesalahan bisa mahal. Selalu lihat precision dan recall per kelas, bukan satu angka akurasi.
Model bagus di data uji tapi buruk di kamera, apa yang salah?
Biasanya data latih tidak mewakili kondisi kamera target: sudut, pencahayaan, atau jarak objek. Rekam beberapa contoh dari lokasi asli, beri label, lalu latih ulang dengan campuran data lama dan baru. Periksa juga apakah ada kebocoran data antar frame video.
