Panduan Ultimate Deteksi Objek Menggunakan Deep Learning [2022]
Diterbitkan: 2021-01-08Daftar isi
pengantar
Deteksi objek , dalam istilah sederhana, adalah metode yang digunakan untuk mengenali dan mendeteksi objek berbeda yang ada dalam gambar atau video dan memberi label untuk mengklasifikasikan objek tersebut. Deteksi objek biasanya menggunakan algoritme yang berbeda untuk melakukan pengenalan dan pelokalan objek ini, dan algoritme ini menggunakan pembelajaran mendalam untuk menghasilkan hasil yang bermakna.
Deteksi Objek
Teknik deteksi objek membantu dalam pengenalan, deteksi, dan lokalisasi beberapa contoh visual objek dalam gambar atau video. Ini memberikan pemahaman yang jauh lebih baik tentang objek secara keseluruhan, bukan hanya klasifikasi objek dasar. Metode ini dapat digunakan untuk menghitung jumlah contoh objek unik dan menandai lokasi tepatnya, bersama dengan pelabelan. Seiring waktu, kinerja proses ini juga meningkat secara signifikan, membantu kami dengan kasus penggunaan waktu nyata. Secara keseluruhan, ini menjawab pertanyaan: "Objek apa di mana dan berapa banyak di sana?".
Sumber
Apa itu Objek?
Objek adalah elemen yang dapat direpresentasikan secara visual. Ciri-ciri fisik suatu benda tidak memiliki kisaran variabilitas yang luas. Sebuah objek harus semi-kaku untuk dideteksi dan dibedakan.
Sejarah Deteksi Objek
Dalam 20 tahun terakhir, kemajuan pendeteksian objek secara umum telah melalui dua periode perkembangan yang signifikan, dimulai dari awal tahun 2000-an:
1. Deteksi objek tradisional - awal 2000-an hingga 2014.

2. Deteksi berbasis pembelajaran mendalam- setelah 2014.
Evolusi teknis deteksi objek dimulai pada awal 2000-an dan detektor pada saat itu. Mereka mengikuti visi tingkat rendah dan menengah dan mengikuti metode 'pengenalan demi komponen'. Metode ini memungkinkan deteksi objek sebagai pengukuran kesamaan antara komponen objek, bentuk, dan kontur, dan fitur yang dipertimbangkan adalah transformasi jarak, konteks bentuk, dan edgeless, dll. Segalanya tidak berjalan dengan baik dan kemudian metode deteksi mesin mulai datang ke dalam gambar untuk memecahkan masalah ini.
Deteksi objek multi-skala harus dilakukan dengan mempertimbangkan objek-objek yang memiliki "ukuran berbeda" dan "rasio aspek berbeda". Ini adalah salah satu tantangan teknis utama dalam deteksi objek di fase awal. Tapi, setelah 2014, dengan peningkatan kemajuan teknis, masalah itu terpecahkan. Ini membawa kami ke fase kedua dari deteksi objek , di mana tugas diselesaikan dengan menggunakan pembelajaran yang mendalam .
Sumber
Konsep
Konsep utama di balik proses ini adalah bahwa setiap objek akan memiliki fitur-fiturnya. Fitur-fitur ini dapat membantu kita untuk memisahkan objek dari yang lain. Metodologi deteksi objek menggunakan fitur ini untuk mengklasifikasikan objek. Konsep yang sama digunakan untuk hal-hal seperti deteksi wajah, deteksi sidik jari, dll.
Mari kita ambil contoh, jika kita memiliki dua mobil di jalan, menggunakan algoritma pendeteksian objek , kita dapat mengklasifikasikan dan memberi label pada mereka.
Sumber :
Definisi
Deteksi objek adalah proses menemukan semua kemungkinan contoh objek dunia nyata, seperti wajah manusia, bunga, mobil, dll. dalam gambar atau video, secara real-time dengan akurasi tertinggi. Teknik pendeteksian objek menggunakan fitur turunan dan algoritma pembelajaran untuk mengenali semua kemunculan dari suatu kategori objek. Aplikasi dunia nyata dari deteksi objek adalah pengambilan gambar, keamanan dan pengawasan, sistem bantuan pengemudi tingkat lanjut, juga dikenal sebagai ADAS, dan banyak lainnya.
Baca: Top 10 Teknik Deep Learning
Deskripsi Umum Deteksi Objek
Kita manusia dapat mendeteksi berbagai objek yang ada di depan kita dan kita juga dapat mengidentifikasi semuanya dengan akurat. Sangat mudah bagi kita untuk menghitung dan mengidentifikasi banyak objek tanpa usaha apa pun. Perkembangan terbaru dalam teknologi telah menghasilkan ketersediaan data dalam jumlah besar untuk melatih algoritma yang efisien, untuk membuat komputer melakukan tugas klasifikasi dan deteksi yang sama.
Ada begitu banyak istilah yang terkait dengan pengenalan objek seperti visi komputer, lokalisasi objek, klasifikasi objek, dll. Dan itu mungkin membanjiri Anda sebagai pemula, jadi beri tahu kami semua istilah ini dan definisinya langkah demi langkah:
- Computer Vision: Ini adalah bidang kecerdasan buatan yang memungkinkan kita melatih komputer untuk memahami dan menafsirkan visual gambar dan video menggunakan algoritme dan model.
- Klasifikasi Gambar: Ini melibatkan deteksi dan pelabelan gambar menggunakan kecerdasan buatan. Gambar-gambar ini diklasifikasikan menggunakan fitur yang diberikan oleh pengguna.
- Lokalisasi Objek: Ini melibatkan deteksi objek yang berbeda dalam visual yang diberikan dan menggambar batas di sekitar mereka, sebagian besar kotak, untuk mengklasifikasikannya.
- Deteksi Objek: Ini melibatkan kedua proses ini dan mengklasifikasikan objek, kemudian menggambar batas untuk setiap objek dan memberi label sesuai dengan fitur mereka.
Semua fitur ini merupakan proses pengenalan objek.
Bagaimana cara kerja Deteksi Objek?
Sekarang kita telah melalui deteksi objek dan memperoleh pengetahuan tentang apa itu, sekarang saatnya untuk mengetahui cara kerjanya, dan apa yang membuatnya bekerja. Kita dapat memiliki berbagai pendekatan, tetapi ada dua pendekatan utama- pendekatan pembelajaran mesin dan pendekatan pembelajaran mendalam. Kedua pendekatan ini mampu mempelajari dan mengidentifikasi objek, tetapi eksekusinya sangat berbeda.
Baca Juga: Tutorial Deteksi Objek TensorFlow
Metode untuk Deteksi Objek
Deteksi objek dapat dilakukan dengan pendekatan machine learning dan pendekatan deep learning. Pendekatan pembelajaran mesin membutuhkan fitur untuk didefinisikan dengan menggunakan berbagai metode dan kemudian menggunakan teknik apa pun seperti Support Vector Machines (SVMs) untuk melakukan klasifikasi. Sedangkan pendekatan deep learning memungkinkan untuk melakukan seluruh proses deteksi tanpa secara eksplisit mendefinisikan fitur untuk melakukan klasifikasi. Pendekatan pembelajaran mendalam sebagian besar didasarkan pada Convolutional Neural Networks (CNNs).
Metode Pembelajaran Mesin
- Transformasi Fitur Skala-Invarian (SIFT)
- Fitur Histogram Gradien Berorientasi (HOG)
- Kerangka kerja deteksi objek Viola-Jones
Metode Pembelajaran Mendalam
- Proposal Wilayah (R-CNN, R-CNN Cepat, R-CNN Lebih Cepat)
- Anda Hanya Melihat Sekali (YOLO)
- Jaringan konvolusi yang dapat dideformasi
- Penyempurnaan Jaringan Saraf untuk Deteksi Objek (RefineDet)
- Retina-Net
Kita akan belajar tentang metode deep learning secara mendetail, tetapi pertama-tama, beri tahu kami apa itu machine learning, apa itu deep learning, dan apa perbedaan di antara keduanya.
Apa itu Pembelajaran Mesin?
Pembelajaran mesin adalah aplikasi Kecerdasan Buatan untuk membuat komputer belajar dari data yang diberikan kepadanya dan kemudian membuat keputusan sendiri serupa dengan manusia. Ini memberi komputer kemampuan untuk belajar dan membuat prediksi berdasarkan data dan informasi yang diberikan padanya dan juga melalui interaksi dan pengamatan dunia nyata. Pembelajaran mesin, pada dasarnya, adalah proses menggunakan algoritma untuk menganalisis data dan kemudian belajar darinya untuk membuat prediksi dan menentukan sesuatu berdasarkan data yang diberikan.
Algoritme pembelajaran mesin dapat mengambil keputusan sendiri tanpa diprogram secara eksplisit untuk itu. Algoritma ini membuat model matematika berdasarkan data yang diberikan, yang dikenal sebagai 'set pelatihan', untuk membuat prediksi. Dalam algoritma pembelajaran mesin, kita perlu menyediakan fitur ke sistem, untuk membuat mereka melakukan pembelajaran berdasarkan fitur yang diberikan, proses ini disebut Rekayasa Fitur.
Contoh aplikasi pembelajaran mesin sehari-hari adalah asisten suara, pemfilteran email-spam, rekomendasi produk, dll.
Apa itu Pembelajaran Mendalam?
Pembelajaran mendalam, yang juga kadang-kadang disebut pembelajaran terstruktur dalam, adalah kelas algoritma pembelajaran mesin. Pembelajaran mendalam menggunakan pendekatan multi-lapisan untuk mengekstrak fitur tingkat tinggi dari data yang disediakan untuknya. Itu tidak memerlukan fitur yang disediakan secara manual untuk klasifikasi, sebaliknya, ia mencoba mengubah datanya menjadi representasi abstrak. Itu hanya belajar dengan contoh dan menggunakannya untuk klasifikasi masa depan. Pembelajaran mendalam dipengaruhi oleh jaringan saraf tiruan (JST) yang ada di otak kita.
Sebagian besar metode pembelajaran mendalam menerapkan jaringan saraf untuk mencapai hasil. Semua model pembelajaran mendalam membutuhkan kekuatan komputasi yang besar dan volume besar data berlabel untuk mempelajari fitur langsung dari data. Aplikasi deep learning sehari-hari adalah agregasi berita atau deteksi berita penipuan, pengenalan visual, pemrosesan bahasa alami, dll.

Sumber
Deteksi Objek menggunakan Deep Learning
Sekarang setelah kita mengetahui tentang deteksi objek dan pembelajaran mendalam dengan sangat baik, kita harus mengetahui bagaimana kita dapat melakukan deteksi objek menggunakan pembelajaran mendalam .
Ini adalah model pembelajaran mendalam yang paling banyak digunakan untuk deteksi objek:
1. Keluarga model R-CNN: Singkatan dari Jaringan Saraf Konvolusi Berbasis Wilayah
- R-CNN
- R-CNN cepat
- R-CNN lebih cepat
2. Keluarga model YOLO: Singkatan dari You Look Only Once
- YOLOv1
- YOLOv2 dan YOLOv3
Mari kita lihat satu per satu dan pahami cara kerjanya.
Proses deteksi objek melibatkan langkah-langkah yang harus diikuti:
- Mengambil visual sebagai masukan, baik berupa gambar maupun video.
- Bagilah input visual menjadi beberapa bagian, atau wilayah.
- Ambil setiap bagian satu per satu, dan kerjakan sebagai satu gambar
- Melewati gambar-gambar ini ke Convolutional Neural Network (CNN) kami untuk mengklasifikasikannya ke dalam kelas-kelas yang memungkinkan.
- Setelah klasifikasi, kita dapat menggabungkan semua gambar dan menghasilkan gambar input asli, tetapi juga dengan objek yang terdeteksi dan labelnya.
Keluarga Convolutional Neural Networks (R-CNN) Berbasis Wilayah
Ada beberapa model deteksi objek di bawah R-CNN Family. Model deteksi ini didasarkan pada struktur proposal wilayah. Fitur-fitur ini telah berkembang pesat seiring waktu, meningkatkan akurasi dan efisiensi.
Model yang berbeda di bawah R-CNN adalah:
- R-CNN
Metode R-CNN menggunakan proses yang disebut pencarian selektif untuk mengetahui objek dari citra. Algoritma ini menghasilkan sejumlah besar wilayah dan secara kolektif bekerja pada mereka. Kumpulan region ini diperiksa untuk memiliki objek jika berisi objek apa pun. Keberhasilan metode ini tergantung pada keakuratan klasifikasi objek.
- Cepat-RCNN
Metode Fast-RCNN menggunakan struktur R-CNN beserta SPP-net (Spatial Pyramid Pooling) untuk mempercepat model R-CNN yang lambat. Fast-RCNN menggunakan SPP-net untuk menghitung representasi CNN untuk seluruh gambar hanya sekali. Kemudian menggunakan representasi ini untuk menghitung representasi CNN untuk setiap patch yang dihasilkan oleh pendekatan pencarian selektif R-CNN. Fast-RCNN membuat proses kereta dari ujung ke ujung.
Model Fast-RCNN juga menyertakan regresi bounding box beserta proses pelatihannya. Hal ini membuat kedua proses lokalisasi dan klasifikasi dalam satu proses, membuat proses lebih cepat.
- Lebih cepat-RCNN
Metode Faster-RCNN bahkan lebih cepat daripada Fast-RCNN. Fast-RCNN memang cepat tapi proses selective search dan proses ini diganti di Faster-RCNN dengan mengimplementasikan RPN (Region Proposal Network). RPN membuat proses seleksi lebih cepat dengan menerapkan jaringan konvolusi kecil, yang pada gilirannya, menghasilkan wilayah yang diminati. Seiring dengan RPN, metode ini juga menggunakan Anchor Boxes untuk menangani berbagai aspek rasio dan skala objek. Faster-RCNN adalah salah satu algoritma pendeteksian objek yang paling akurat dan efisien.
R-CNN | Cepat-RCNN | Lebih cepat-RCNN | |
Waktu tes per gambar | 50 detik | 2 detik | 0,2 detik |
Kecepatan | 1x | 25x | 250x |
Kamu Hanya Terlihat Sekali (YOLO) Keluarga
Pendekatan R-CNN yang kita lihat di atas berfokus pada pembagian visual menjadi bagian-bagian dan fokus pada bagian-bagian yang memiliki probabilitas lebih tinggi untuk berisi objek, sedangkan kerangka kerja YOLO berfokus pada keseluruhan gambar secara keseluruhan dan memprediksi kotak pembatas. , lalu menghitung probabilitas kelasnya untuk memberi label pada kotak. Keluarga kerangka kerja YOLO adalah pendeteksi objek yang sangat cepat.
Berbagai model YOLO dibahas di bawah ini:
- YOLOv1
Model ini juga disebut YOLO unified, karena model ini menyatukan deteksi objek dan model klasifikasi bersama sebagai jaringan deteksi tunggal. Ini adalah upaya pertama untuk membuat jaringan yang mendeteksi objek waktu nyata dengan sangat cepat. YOLO hanya memprediksi jumlah kotak pembatas yang terbatas untuk mencapai tujuan ini.
- YOLOv2 dan v3
YOLOv2 dan YOLOv3 adalah versi yang disempurnakan dari kerangka kerja YOLOv1. YOLOv2 juga disebut YOLO9000. Kerangka kerja YOLOv1 membuat beberapa kesalahan pelokalan, dan YOLOv2 memperbaikinya dengan berfokus pada penarikan dan pelokalan. YOLOv2 menggunakan normalisasi batch, kotak jangkar, pengklasifikasi resolusi tinggi, fitur berbutir halus, pengklasifikasi multi-level, dan Darknet19. Semua fitur ini membuat v2 lebih baik dari v1. Ekstraktor fitur Darknet19 berisi 19 lapisan convolutional, 5 lapisan max-pooling, dan lapisan softmax untuk klasifikasi objek yang ada dalam gambar.
Metode YOLOv3 adalah metode pendeteksian objek tercepat dan paling akurat. Ini secara akurat mengklasifikasikan objek dengan menggunakan pengklasifikasi logistik dibandingkan dengan pendekatan softmax yang digunakan oleh YOLOv2. Hal ini membuat kita mampu membuat klasifikasi multi-label. YOLOv3 juga menggunakan Darknet53 sebagai ekstraktor fitur, yang memiliki 53 lapisan konvolusi, lebih banyak dari Darknet19 yang digunakan oleh v2, dan ini membuatnya lebih akurat. Ini juga menggunakan detektor objek kecil untuk mendeteksi semua objek kecil yang ada dalam gambar, yang tidak dapat dideteksi dengan menggunakan v1.
Harus Dibaca : Metode Langkah-demi-Langkah Untuk Membangun Sistem AI Anda Sendiri Hari Ini
Ringkasan
Saya harap gambaran umum tentang deteksi objek dan implementasinya menggunakan pembelajaran mendalam di atas bermanfaat bagi Anda dan membuat Anda memahami ide inti dari deteksi objek dan bagaimana penerapannya di dunia nyata menggunakan berbagai metode dan secara khusus menggunakan pembelajaran mendalam.
Deteksi objek dapat digunakan di banyak bidang untuk mengurangi upaya manusia dan meningkatkan efisiensi proses di berbagai bidang. Deteksi objek, serta pembelajaran mendalam, adalah area yang akan berkembang di masa depan dan hadir di berbagai bidang. Ada banyak ruang lingkup di bidang ini dan juga banyak peluang untuk perbaikan.
Kursus yang Ditawarkan oleh upGrad
u pGrad telah mengembangkan program pelatihan online komprehensif tentang pembelajaran mendalam serta pembelajaran mesin sesuai dengan harapan industri. Modul pelatihan dan pendekatan pendidikan upGrad membantu siswa belajar dengan cepat dan bersiap untuk tugas apa pun.
Program pendidikan utama yang ditawarkan upGrad cocok untuk tingkat pemula dan karir menengah
1. PG Diploma dalam Pembelajaran Mesin dan AI : Sangat cocok untuk para profesional yang bekerja yang ingin mempelajari pembelajaran mesin langsung dari awal dan mengalihkan peran karir mereka ke Insinyur Pembelajaran Mesin, Ilmuwan Data, Arsitek AI, Analis Bisnis atau Analis Produk.
2. Master of Science dalam Machine Learning dan AI: Ini adalah program 18 bulan yang komprehensif yang membantu individu untuk mendapatkan master di bidang ini dan mendapatkan pengetahuan tentang bidang ini bersama dengan memiliki pengalaman praktis di sejumlah besar proyek.

3. Sertifikasi Lanjutan dalam Pembelajaran Mesin dan Cloud dari IIT Madras: Ini adalah kursus lanjutan yang disediakan oleh IIT Madras untuk bidang Pembelajaran Mesin dan Teknologi Cloud.
4. Sertifikasi PG dalam Pembelajaran Mesin dan Pembelajaran Mendalam: Kursus ini berfokus pada mesin dan pembelajaran mendalam. Dengan kursus ini, siswa dapat melamar posisi seperti Machine Learning Engineer dan Data Scientist.
5. Sertifikasi PG dalam Pembelajaran Mesin dan NLP: Ini adalah kursus yang terstruktur dengan baik untuk mempelajari pembelajaran mesin dan pemrosesan bahasa alami. Peluang kerja bagi para pelajar adalah Data Scientist dan Data Analyst.
upGrad telah mengembangkan kurikulum program ini untuk pembelajaran mesin dan pembelajaran mendalam dengan mempertimbangkan prinsip-prinsip pembelajaran mesin, aspek, dan komponen utama pembelajaran mesin dan peluang kerja sehingga keterampilan dikembangkan langsung dari awal. Setelah menyelesaikan program dari upGrad, peluang karir machine learning yang luar biasa menanti Anda di beragam industri dan berbagai peran.
Garis bawah
Siswa dapat mengambil salah satu jalur yang disebutkan di atas untuk membangun karier mereka dalam pembelajaran mesin dan pembelajaran mendalam. Dukungan penempatan upGrad membantu siswa untuk meningkatkan prospek pekerjaan mereka melalui peluang karir yang menarik di portal pekerjaan, pameran karir dan Hackathon serta dukungan penempatan. Masa depan deep learning semakin cerah dengan meningkatnya permintaan dan prospek pertumbuhan, dan juga banyak individu yang ingin berkarir di bidang ini. Ikuti salah satu kursus ini dan banyak lagi yang ditawarkan oleh upGrad untuk mendalami peluang karier pembelajaran mesin yang menanti Anda.
Apa algoritma pembelajaran mendalam yang digunakan dalam deteksi objek?
Deteksi objek adalah tugas visi komputer yang mengacu pada proses menemukan dan mengidentifikasi beberapa objek dalam suatu gambar. Algoritme pembelajaran mendalam seperti YOLO, SSD, dan R-CNN mendeteksi objek pada gambar menggunakan jaringan saraf konvolusi dalam, sejenis jaringan saraf tiruan yang terinspirasi oleh korteks visual. Jaringan saraf deep convolutional adalah kelas paling populer dari algoritma pembelajaran mendalam untuk deteksi objek. Jaringan konvolusi dalam dilatih pada kumpulan data besar. Jaringan ini dapat mendeteksi objek dengan lebih efisien dan akurat daripada metode sebelumnya.
Algoritma mana yang terbaik untuk deteksi objek?
Ada banyak algoritma untuk pendeteksian objek, mulai dari kotak sederhana hingga Deep Networks yang kompleks. Standar industri saat ini adalah YOLO, kependekan dari You Only Look Once. YOLO adalah jaringan saraf sederhana dan mudah diimplementasikan yang mengklasifikasikan objek dengan akurasi yang relatif tinggi. Singkatnya, jaringan saraf adalah sistem lapisan yang saling berhubungan yang mensimulasikan bagaimana neuron di otak berkomunikasi. Setiap lapisan memiliki set parameternya sendiri, yang diubah sesuai dengan data yang disediakan. Data yang keluar dari setiap layer diumpankan ke layer berikutnya, begitu seterusnya, sampai kita mendapatkan prediksi akhir sebagai output.
Apa kesulitan yang Anda hadapi dalam mengidentifikasi objek?
Ada banyak kesulitan yang kita hadapi saat mengidentifikasi objek. Salah satu kesulitannya adalah ketika objeknya berupa gambar suatu pemandangan. Dalam kasus seperti itu kita perlu mengetahui posisi kamera di masa lalu dan kita harus memperkirakan posisi objek yang bergerak. Karena perubahan seiring waktu, kami mungkin mendapatkan gambar yang sama sekali berbeda dan tidak dapat dicocokkan. Salah satu cara untuk mengatasi masalah ini adalah dengan mengambil bantuan estimasi gerak. Satu lagi adalah melakukan perhitungan ulang dengan perbedaan waktu.