AI-For-Beginners/translations/id/lessons/4-ComputerVision/11-ObjectDetection
leestott 2555d81160 🌐 Update translations via Co-op Translator 2025-08-29 16:53:37 +00:00
..
lab 🌐 Update translations via Co-op Translator 2025-08-29 16:53:37 +00:00
ObjectDetection.ipynb 🌐 Update translations via Co-op Translator 2025-08-29 16:53:37 +00:00
README.md 🌐 Update translations via Co-op Translator 2025-08-29 16:53:37 +00:00

README.md

Deteksi Objek

Model klasifikasi gambar yang telah kita bahas sejauh ini mengambil sebuah gambar dan menghasilkan hasil kategoris, seperti kelas 'angka' dalam masalah MNIST. Namun, dalam banyak kasus, kita tidak hanya ingin mengetahui bahwa sebuah gambar menggambarkan objek - kita ingin dapat menentukan lokasi tepatnya. Inilah tujuan dari deteksi objek.

Kuis sebelum pelajaran

Deteksi Objek

Gambar dari situs web YOLO v2

Pendekatan Naif untuk Deteksi Objek

Misalkan kita ingin menemukan seekor kucing dalam sebuah gambar, pendekatan yang sangat naif untuk deteksi objek adalah sebagai berikut:

  1. Memecah gambar menjadi sejumlah ubin.
  2. Melakukan klasifikasi gambar pada setiap ubin.
  3. Ubin yang menghasilkan aktivasi yang cukup tinggi dapat dianggap mengandung objek yang dimaksud.

Deteksi Objek Naif

Gambar dari Notebook Latihan

Namun, pendekatan ini jauh dari ideal, karena hanya memungkinkan algoritma untuk menentukan kotak pembatas objek dengan sangat tidak presisi. Untuk lokasi yang lebih presisi, kita perlu menjalankan semacam regresi untuk memprediksi koordinat kotak pembatas - dan untuk itu, kita memerlukan dataset khusus.

Regresi untuk Deteksi Objek

Blog post ini memberikan pengenalan yang baik tentang cara mendeteksi bentuk.

Dataset untuk Deteksi Objek

Anda mungkin menemukan dataset berikut untuk tugas ini:

  • PASCAL VOC - 20 kelas
  • COCO - Common Objects in Context. 80 kelas, kotak pembatas, dan masker segmentasi

COCO

Metrik Deteksi Objek

Intersection over Union

Sementara untuk klasifikasi gambar mudah untuk mengukur seberapa baik algoritma bekerja, untuk deteksi objek kita perlu mengukur baik kebenaran kelas maupun presisi lokasi kotak pembatas yang dihasilkan. Untuk yang terakhir, kita menggunakan Intersection over Union (IoU), yang mengukur seberapa baik dua kotak (atau dua area arbitrer) saling tumpang tindih.

IoU

Gambar 2 dari blog post yang sangat baik tentang IoU

Idenya sederhana - kita membagi area perpotongan antara dua bentuk dengan area gabungannya. Untuk dua area yang identik, IoU akan menjadi 1, sementara untuk area yang sepenuhnya terpisah akan menjadi 0. Selain itu, nilainya akan bervariasi dari 0 hingga 1. Kita biasanya hanya mempertimbangkan kotak pembatas yang memiliki IoU di atas nilai tertentu.

Average Precision

Misalkan kita ingin mengukur seberapa baik suatu kelas objek C dikenali. Untuk mengukurnya, kita menggunakan metrik Average Precision, yang dihitung sebagai berikut:

  1. Pertimbangkan kurva Precision-Recall yang menunjukkan akurasi tergantung pada nilai ambang deteksi (dari 0 hingga 1).
  2. Bergantung pada ambang batas, kita akan mendapatkan lebih banyak atau lebih sedikit objek yang terdeteksi dalam gambar, dan nilai presisi serta recall yang berbeda.
  3. Kurva akan terlihat seperti ini:

Gambar dari NeuroWorkshop

Average Precision untuk kelas tertentu C adalah area di bawah kurva ini. Lebih tepatnya, sumbu Recall biasanya dibagi menjadi 10 bagian, dan Precision dirata-rata di semua titik tersebut:


AP = {1\over11}\sum_{i=0}^{10}\mbox{Precision}(\mbox{Recall}={i\over10})

AP dan IoU

Kita hanya akan mempertimbangkan deteksi yang memiliki IoU di atas nilai tertentu. Misalnya, dalam dataset PASCAL VOC biasanya \mbox{IoU Threshold} = 0.5, sementara dalam COCO AP diukur untuk berbagai nilai \mbox{IoU Threshold}.

Gambar dari NeuroWorkshop

Mean Average Precision - mAP

Metrik utama untuk Deteksi Objek disebut Mean Average Precision, atau mAP. Ini adalah nilai Average Precision, rata-rata di semua kelas objek, dan kadang-kadang juga di atas \mbox{IoU Threshold}. Proses perhitungan mAP dijelaskan secara lebih rinci dalam blog post ini), dan juga di sini dengan contoh kode.

Pendekatan Deteksi Objek yang Berbeda

Ada dua kelas besar algoritma deteksi objek:

  • Region Proposal Networks (R-CNN, Fast R-CNN, Faster R-CNN). Ide utamanya adalah menghasilkan Regions of Interests (ROI) dan menjalankan CNN di atasnya, mencari aktivasi maksimum. Ini agak mirip dengan pendekatan naif, dengan pengecualian bahwa ROI dihasilkan dengan cara yang lebih cerdas. Salah satu kelemahan utama metode ini adalah lambat, karena kita memerlukan banyak proses klasifikasi CNN pada gambar.
  • One-pass (YOLO, SSD, RetinaNet) metode. Dalam arsitektur ini, kita merancang jaringan untuk memprediksi baik kelas maupun ROI dalam satu kali proses.

R-CNN: Region-Based CNN

R-CNN menggunakan Selective Search untuk menghasilkan struktur hierarkis dari wilayah ROI, yang kemudian diteruskan melalui ekstraktor fitur CNN dan pengklasifikasi SVM untuk menentukan kelas objek, serta regresi linier untuk menentukan koordinat bounding box. Paper Resmi

RCNN

Gambar dari van de Sande et al. ICCV11

RCNN-1

*Gambar dari blog ini

F-RCNN - Fast R-CNN

Pendekatan ini mirip dengan R-CNN, tetapi wilayah didefinisikan setelah lapisan konvolusi diterapkan.

FRCNN

Gambar dari Paper Resmi, arXiv, 2015

Faster R-CNN

Ide utama pendekatan ini adalah menggunakan jaringan neural untuk memprediksi ROI - yang disebut Region Proposal Network. Paper, 2016

FasterRCNN

Gambar dari paper resmi

R-FCN: Region-Based Fully Convolutional Network

Algoritma ini bahkan lebih cepat daripada Faster R-CNN. Ide utamanya adalah sebagai berikut:

  1. Kita mengekstrak fitur menggunakan ResNet-101.
  2. Fitur diproses oleh Position-Sensitive Score Map. Setiap objek dari C kelas dibagi menjadi k\times k wilayah, dan kita melatih untuk memprediksi bagian-bagian objek.
  3. Untuk setiap bagian dari wilayah k\times k, semua jaringan memberikan suara untuk kelas objek, dan kelas objek dengan suara maksimum dipilih.

r-fcn image

Gambar dari paper resmi

YOLO - You Only Look Once

YOLO adalah algoritma satu kali proses yang real-time. Ide utamanya adalah sebagai berikut:

  • Gambar dibagi menjadi S\times S wilayah.
  • Untuk setiap wilayah, CNN memprediksi n objek yang mungkin, koordinat bounding box, dan confidence=probabilitas * IoU.

YOLO

Gambar dari paper resmi

Algoritma Lain

✍️ Latihan: Deteksi Objek

Lanjutkan pembelajaran Anda di notebook berikut:

ObjectDetection.ipynb

Kesimpulan

Dalam pelajaran ini, Anda telah menjelajahi berbagai cara untuk melakukan deteksi objek!

🚀 Tantangan

Baca artikel dan notebook tentang YOLO ini dan coba sendiri:

Kuis setelah pelajaran

Tinjauan & Studi Mandiri

Tugas: Deteksi Objek


Penafian:
Dokumen ini telah diterjemahkan menggunakan layanan penerjemahan AI Co-op Translator. Meskipun kami berupaya untuk memberikan hasil yang akurat, harap diperhatikan bahwa terjemahan otomatis mungkin mengandung kesalahan atau ketidakakuratan. Dokumen asli dalam bahasa aslinya harus dianggap sebagai sumber yang berwenang. Untuk informasi yang bersifat kritis, disarankan menggunakan jasa penerjemahan manusia profesional. Kami tidak bertanggung jawab atas kesalahpahaman atau penafsiran yang keliru yang timbul dari penggunaan terjemahan ini.