/ #stats #math 

Research Step for Object Detection Using Tensoflow

Research Step for Object Detection Using Tensoflow

Salah satu yang mengalami perkembangan pesat pada bidang komputerisasi adalah computer vision. Dalam computer vision terdapat beberapa permasalahan diantaranya adalah Image classification, object detection, dan neural style transfer. Object detection dengan jaringan saraf tiruan ini masih berkembang sebagai teknologi untuk menduplikasi kemampuan manusia dalam memahami informasi dari sebuah gambar agar komputer dapat mengenali objek pada gambar selayaknya manusia. Lalu, bagaimana cara untuk membuat object detection menggunakan Tensorflow?

Figure 1

Langkah-langkah yang digunakan untuk membuat deteksi objek menggunakan Tensorflow adalah sebagai berikut :

  1. Tahap awal dimulai dengan mengumpulkan data gambar, pengumpulan data gambar dapat dilakukan dengan menggunakan aplikasi Fatkun Batch Download Image pada Chrome, Image Downloader pada Chrome DownThemAll atau pada Firefox. Dalam hal ini saya merekomendasikan menggunakan Fatkun Batch Download Image karena penggunaannya lebih mudah khususnya dalam hal penentuan halaman yang akan di download gambarnya. Langkah-langkah untuk mengambil gambar menggunakan Fatkun Batch Download Image dapat dilihat disini

  2. Langkah selanjutnya adalah dilakukan pelabelan gambar dan tracking costum object, tahap ini dilakukan untuk mempermudah memberikan nama pada objek dan merekam tampilan objek yang akan dideteksi. Pelabelan gambar dapat dilakukan menggunakan LabelImg Github dengan menginstall lxml. Figure 2

  3. Setelah proses pelabelan, file yang disimpan memiliki format .XML sehingga perlu adanya konversi berkas dari XML ke CSV. Hal ini bertujuan untuk konversi dataset ke berkas TFRecord karena TFRecord hanya dapat membaca berkas CSV. Cara untuk mengubah berkas XML ke CSV dapat dilihat disini dengan menggunakan file “xml_to_csv.py

  4. Setelah proses konversi berkas XML dengan output berupa file CSV perlu adanya konversi ke TensorFlow Record file yang digunakan untuk feeding data pada proses pelatihan menggunakan file “generate_tfrecord.py

  5. Kemudian dilakukan pembuatan label Map dan dataset (file TFRecord) yang sesuai dengan proses pelabelan data.

  6. Kemudian langkah selanjutnya adalah konfigurasi object detection training pipeline untuk mengkonfigurasi proses pelatihan dan evaluasi yang dilakukan menggunakan berkas protobuf. Sebelum tahap ini dilakukan terlebih dahulu dilakukan install dependencies. Beberapa dependencies tersebut dapat dilihat pada link Tensorflow Object Detection

  7. Langkah selanjutnya adalah dilakukan proses training.

    • Tahap awal pada proses pelatihan dimulai dengan Feeding data pelatihan atau memasukan data pelatihan ke dalam TensorFlow
    • Langkah selanjutnya yaitu dilakukan proses pelatihan data gambar untuk menghasilkan sistem pendeteksi objek dengan menggunakan algoritma Convolutional Neural Network
    • Langkah selanjutnya adalah Pooling Layer yang digunakan untuk mengurangi dimensi dari downsampling, sehingga mempercepat komputasi karena parameter yang harus diupdate semakin sedikit dan mengatasi overfitting.
    • Kemudian dilakukan aktivasi menggunakan ReLU (Rectrified Linear Units) kemudian langkah untuk proses pelatihan
    • Setelah dilakukan aktivasi, kemudian akan menghasilkan output prediksi kelas yang berupa gambar hasil deteksi
  8. Ketika output dari hasil pelatihan menghasilkan tingkat akurasi yang rendah maka akan dilakukan proses pelatihan kembali, akan tetapi apabila output menghasilkan akurasi yang tinggi akan dilanjutkan dengan langkah selanjutnya.

  9. Pada saat proses pelatihan maka akan menghasilkan checkpoint yang dibuat secara otomatis oleh TensorFlow berbentuk graph tensor yang bertujuan untuk menyimpan informasi proses pelatihan yang dilakukan, jika proses pelatihan selesai maka selanjutnya adalah mengeskpor graph tensor dan dijadikan model yang siap dipakai

  10. Setelah proses pelatihan dilakukan maka akan menghasilkan model yang siap dipakai.

  11. Selanjutnya adalah pengujian data dengan program yang digunakan saat dilakukan pelatihan tetapi dengan jumlah data yang lebih sedikit. Kemudian dengan langkah yang sama, proses pengujian juga dilakukan dimulai dengan langkah Convolution dan diakhiri dengan output prediksi hasil deteksi.

  12. Setelah mendapatkan model yang sesuai dengan tingkat akurasi yang tinggi maka dilakukan interpretasi hasil dan pembahasan

  13. Kesimpulan

Recommended object detection link :

Sentdex Tutorial

How to train your own object detector with Tensorflow’s Object Detector API

Author

Rizky D. Novyantika

I’m someone who very interested in the world of data, analysis, research to bring up something new that can be useful for others. Then engaging people, making ideas, things easier and simpler for them to understand through analysis, statistics and visualizing it.