BAB II
LANDASAN TEORI
2.1 Tinjauan Pustaka
Tinjauan pustaka terhadap penelitian yang telah dilakukan akan dijadikan sebagai sumber referensi dan penunjang penelitian ini. Daftar tinjauan pustaka dapat dilihat pada tabel 2.1.
Tabel 2.1 Tinjauan Pustaka Nomor
Literatur Penulis Tahun Judul
Literatur 1 Yusuf Umar Hanafi 2020 Deteksi Penggunaan Helm Pada Pengendara Bermotor Berbasis Deep Learning
Literatur 2 Dicky Giancini, Eva Yulia Puspaningrum, Yisti Vita Via
2020 Identifikasi Penggunaan Masker Menggunakan Algoritma CNN YOLOv3- Tiny
Literatur 3 Adam Fahmi Fandisyah, Nur Iriawan, Wiwiek Setya Winahju
2021 Deteksi Kapal di Laut Indonesia Menggunakan YOLOv3
Literatur 4 Nurul Iman Hasan, Fadhlan Hafizhelmi
Kamaru Zaman,
Nooritawati Md. Tahir, Habibah Hashim
2020 People Detection System Using YOLOv3 Algorithm
Tabel Lanjutan Literatur 5 Jing Gong, Jianhui Zhao,
Fan Li, He Zhang
2020 Vehicle detection in thermal images with an improved yolov3-tiny
Literatur 6 Nur Khamdi, Muhammad Susantok, Piter Leopard
2017 Pendeteksian Objek Bola Dengan Metode Color Filtering HSV Pada Robot Soccer Humanoid
2.1.1 Tinjauan Literatur 1
(Umar et al., 2020) melakukan penelitian berjudul “Deteksi Penggunaan Helm Pada Pengendara Bermotor Berbasis Deep Learning”. Penelitian ini membandingkan metode YOLOv3 dengan YOLOv3-tiny sebagai proses deteksi penggunaan helm, data input yang digunakan berupa data rekaman video kamera pemantau lalu lintas pada pagi, siang dan sore. Objek yang dideteksi dibagi menjadi 3 kelas yaitu rider (pengendara), with helmet (menggunakan helm), dan without helmet (tanpa menggunakan helm). Hasil dari penelitian YOLOv3-tiny mempunyai waktu pemrosesan yang lebih cepat dibandingkan dengan YOLOv3, hal ini ditunjukkan dengan waktu yang diperoleh dalam mendeteksi dalam satuan sekon.
2.1.2 Tinjauan Literatur 2
(Giancini, Puspaningrum and Via, 2020) melakukan penelitian berjudul
“Identifikasi Penggunaan Masker Menggunakan Algoritma CNN YOLOv3-Tiny”.
Pada penelitian ini membandingkan data asli dengan data yang telah di augmentasi, data augmentasi yang dilakukan yaitu mengubah data asli kemudian dilakukan rotasi, flipping, dan cropping sehingga menambah variasi dataset, tidak hanya menambah variasi tetapi dapat meminimalisir terjadinya eror. Dataset yang
digunakan open source yang sudah beranotasi kemudian dirubah ke format YOLO. Peneliti menggunakan arsitektur CPU Intel Core i7-7700HQ, GPU NVIDIA GTX 1050 4GB GDDR5 dengan jumlah core sebesar 640, RAM 16GB 2400Mhz dan HDD Storage SATA 1TB 5400 rpm. Berdasarkan hasil traning dan uji coba yang telah dilakukan, data yang telah di augmentasi mendapatkan nilai akurasi yang cukup tinggi.
2.1.3 Tinjauan Literatur 3
(Fandisyah, Iriawan and Winahju, 2021) melakukan penelitian berjudul
“Deteksi Kapal di Laut Indonesia Menggunakan YOLOv3” Pada penelitian ini, pendeteksian objek dilakukan untuk mendeteksi tipe kapal sesuai dengan ukurannya yang dibagi menjadi 6 kelas. Penelitian ini membandingkan 2 model hasing traning dengan hyperparameter yang berbeda. Pada model 2 dengan hasil traning menggunakan anchors sebanyak anchors dengan melalui prose k-means mendapatkan hasil kinerja yang baik dibandingkan dengan model 1. Nilai rata-rata loss pada model 2 lebih kecil dibandingkan dengan model, dan nilai mAP data traning pada model 2 lebih tinggi dibandingkan dengan model 1. Hasil deteksi tipe kapal pada data testing diperoleh hasil average precission pada model 2 setiap kelas memiliki nilai yang lebih tinggi jika dibandingkan dengan model 1.
2.1.4 Tinjauan Literatur 4
(Hassan et al., 2020) melakukan penelitian berjudul “People Detection System Using YOLOv3 Algorithm” penelitian ini menggunakan dataset dengan jumlah 500 gambar dengan resolusi tinggi. Setelah dilakukan proses traning didapatkan nilai mAP 78,3% dan average loss 0,6, sistem deteksi berhasil
mendeteksi manusia di daerah ramai dan secara efektif mengidentifikasi dalam keadaan yang beragam.
2.1.5 Tinjauan Literatur 5
(Gong et al., 2020) melakukan penelitian berjudul “Vehicle detection in thermal images with an improved yolov3-tiny” Untuk mengatasi masalah akurasi yang rendah, peneliti melakukan peningkatan pada yolov3-tiny versi yang asli dengan menambahkan lapisan konvolusi 3 x 3 dan 1 x 1 untuk mengekstrak fitur kendaraan dengan lebih baik. Hasil eksperimen menunjukkan bahwa nilai mAP meningkaat 6% lebih tinggi dari model yolov3-tiny asli.
2.1.6 Tinjauan Literatur 6
(Khamdi, Susantok and Leopard, 2017) melakukan penelitian berjudul
“Pendeteksian Objek Bola Dengan Metode Color Filtering HSV Pada Robot Soccer Humanoid” dari hasil penelitian menggunakan model warna HSV mendapatkan hasil yang cukup baik, dengan pengujian menggunakan dua ukuran bola yang berbeda dengan jarak yang sama, bola besar dengan diameter 6 cm dan bola kecil dengan diameter 3 cm. Bola dapat terdeteksi dengan kamera dengan jarak minimal 20 cm sampai maksimal 200 cm untuk bola besar. Ketika melewati jarak maksisal, bola tidak dapat terdeteksi. Sedangkan bola kecil pada jarak 190 cm tidak dapat terdeteksi. Namun jika terdapat objek lain dengan warna yang serupa maka robot akan tetap mendeteksi bahwa objek tersebut sebagai bola.
Berdasarkan hasil analisis dari berbagai penelitian yang sebelumnya telah dilakukan, penelitian akan dilakukan pada proses identifikasi objek menggunakan metode Deep Learning yaitu YOLOv3-tiny. Metode YOLOv3-tiny ini digunakan untuk memecahkan masalah identifikasi objek karena penggunaannya
membutuhkan proses komputasi relatif cepat, sehingga diharapkan penelitian ini dapat mengidentifikasi objek secara akurat dan cepat.
2.2 Machine Learning
Machine Learning (ML) merupakan bagian dari Artificial Intelligence (AI) yang bertujuan untuk memberikan optimasi dalam kriteria dengan menganalisis sampel data sebelumnya yang telah disimpan atau direkam untuk membuat prediksi. Sehingga manusia tidak perlu sepenuhnya mengidentifikasi suatu proses, karena dengan Machine Learning, komputer mampu membuat pola untuk mengambil keputusan.
Machine Learning melakukan training yang merupakan proses mempelajari model data yang telah didefinisikan menjadi beberapa parameter (data training) yang menghasilkan beberapa pola sehingga komputer dapat melakukan proses klasifikasi berdasarkan pola atau karakteristik yang telah diperoleh dalam proses training. Kemudian komputer dapat memberikan prediksi pada data baru berdasarkan hasil training. Machine Learning dapat memberikan solusi untuk berbagai masalah seperti Vision (Visi Komputer), Speech Recognition (Pengenalan Suara) dan Robotics (Robotika).
2.2.1 Supervised Learning
Supervised Learning merupakan metode pembelajaran dimana dataset yang akan dilatih untuk diekstrasi polanya sudah memiliki label atau kelas yang menunjukkan klasifikasi.
2.2.2 Unsupervised Learning
Unsupervised Learning adalah metode pembelajaran di mana kumpulan data yang akan dilatih tidak memiliki label atau kelas. Jadi komputer harus menganalisis pola yang dimiliki data untuk ekstraksi atribut dari data yang ada.
2.3 Deep Learning
Deep Learning adalah bidang keilmuan dalam bidang machine learning.
Deep learning memiliki kemampuan yang sangat baik dalam visi komputer.
Salah satunya dalam hal identifikasi objek. Dengan mengimplementasikan salah satu metode machine learning yang dapat digunakan untuk identifikasi citra objek yaitu Convolution Neural Network (CNN) (Marifatul Azizah, Fadillah Umayah and Fajar, 2018).
2.4 Komputer Vision
Komputer Vision adalah sebuah analisis gambar dan video secara otomatis oleh komputer guna mendapatkan suatu pemahaman mengenai dunia. Komputer Vision terinspirasi dari kemampuan sistem indra penglihatan manusia. Hal ini seperti menanamkan naluri dari kecerdasan manusia ke dalam komputer.
(Szeliski, 2011). Komputer vision mengimplementasikan beberapa kemampuan visual manusia seperti deteksi objek, pengenalan wajah dan pengenalan bahaya.
Dalam computer vision, deep learning sering digunakan untuk pengenalan dan deteksi objek. Proses Deep Learning dalam computer vision menggunakan piksel pada citra untuk ekstraksi pola atau atribut dari gambar yang akan dideteksi. Namun hal ini menyebabkan sistem komputasi menjadi lama karena dalam sebuah citra berisi ribuan piksel. Begitu banyak arsitektur computer vision
yang menstandarkan ukurannya, sehingga gambar harus dipotong atau diminimalkan untuk mempercepat proses komputasi.
2.5 Citra (image)
Citra (image) adalah gambar pada bidang dua dimensi dan terdiri dari banyak piksel yang membentuk bagian terkecil dari gambar. Gambar keseluruhan dibentuk dari kotak beraturan jarak horizontal dan vertikal antar piksel sama di seluruh gambar. Citra (image) terbagi menjadi dua bagian, yaitu citra diam dan gambar bergerak. Gambar bergerak ditampilkan secara berurutan (sequentially), memberikan kesan gambar bergerak pada mata (Widiastuti, 2015).
2.6 Neural Network
Neural Network (NN) merupakan metode pembelajaran yang terinspirasi dari jaringan sistem pembelajaran biologi yang terdiri dari jaringan sel saraf (neuron) yang saling terhubung satu sama lain menjadi arsitektur komputer dan arsitektur algoritma untuk komputer konvensional. Memungkinkan untuk menggunakan operasi komputasi yang sangat sederhana (penambahan, pengurangan, dan logika dasar). (Yunita, 2015).
2.7 Convolutional Neural Network (CNN)
Convolutional Neural Network merupakan salah satu jenis neural network yang biasanya digunakan dalam pengolahan data citra (image). Konvolusi merupakan matriks yang memiliki fungsi filter. Convolutional Neural Network memiliki beberapa lapisan yang digunakan untuk menyaring setiap proses. Proses tersebut disebut proses pelatihan (training). Dalam proses pelatihan ada 3 tahapan yaitu Convolutional Layer, Pooling Layer, dan Fully Connected Layer (Santoso and Ariyanto, 2018).
Gambar 2.1 Convolutional Neural Network 2.7.1 Convolutional Layer
Semua data yang menyentuh lapisan konvolusional akan mengalami prose konvolusi. Lapisan akan mengkonversi setiap filter menjadi seluruh bagian data input dan menghasilkan activation map atau feature map 2D. Filter yang tersedia pada Convolutional Layer memiliki panjang, tinggi (pixels) dan ketebalan sesuai dengan saluran data masukan. Setiap filter akan mengalami pergeseran dan operasi "dot" antara data input dan nilai filter. Lapisan konvolusi secara signifikan mengalami kompleksitas model melalui optimalisasi outputnya. Masalah ini dioptimalkan melalui tiga parameter: depth, stride, dan pengaturan zero padding.
Gambar 2.2 Convolutional Layer
2.7.2 Pooling Layer
Pooling Layer adalah tahapan setelah Convolutional Layer. Pooling Layer terdiri dari filter dengan ukuran dan langkah tertentu. Setiap peergrseran akan ditentukan oleh jumlah stride yang akan digeser di seluruh area feature map atau activation map. Dalam penerapannya, Pooling Layer yang biasa digunakan adalah Max Pooling dan Average Pooling. Bentuk lapisan pooling biasanya menggunakan filter 2x2 yang diterapkan dalam dua langkah dan berfungsi pada setiap potongan masukan.
Gambar 2.3 Pooling Layer 2.7.3 Fully Connected Layer
Feature map yang dihasilkan dari tahap sebelumnya berbentuk multidimensional array, sehingga sebelym masuk ke dalam tahap Fully Connected Layer, Featur Map tersebut akan melalui sebuah proses flatten atau reshape. Proses flatten menghasilkan sebuah vektor yang nantinya akan digunakan sebagai input dari Fully Connected Layer. Fully Connected Layer mempunyai beberapa Hidden Layer, Action Function, Output Layer dan Loss Function. Gambaran Fully Connected Layer dapat dilihat pada gambar 2.4.
Gambar 2.4 Fully Connected Layer 2.8 Tensorboard
TensorBoard adalah alat untuk menyediakan pengukuran dan visualisasi yang diperlukan selama alur kerja machine learning, memungkinkan pelacakan metrik eksperimen seperti loss dan accuracy, memvisualisasikan grafik model, memproyeksikan embeddings ke ruang dimensi yang lebih rendah, dan banyak lagi (Tensorflow.org, 2021). Tampilan tensorboard dapat dilihat pada gambar 2.5
Gambar 2.5 Tampilan TensorBoard
2.9 You Only Look Once (YOLO)
You Only Look Once (Yolo) adalah algoritma yang dikembangkan untuk mendeteksi objek secara real-time. Sistem deteksi dilakukan adalah menggunakan localizer atau repurpose classifier untuk melakukan deteksi.Area dengan gambar yang diberi skor tertinggi akan dianggap sebagai deteksi. Arsitektur YOLO dapat dilihat pada gambar 2.6.
Gambar 2.6 Arsitektur YOLO
YOLO mendeteksi objek menggunakan unified detection yang menyatukan komponen deteksi objek ke dalam single neural network. Sistem di YOLO membagikan gambar input menjadi gird S × S. Setiap sel kotak memprediksi bounding box B dan nilai confidence untuk setiap kotak. Nilai confidence mewakili keakuratan model bahwa ada objek di bounding box. Setiap bounding box memiliki 5 parameter prediksi yaitu x, y, w, h, dan confidence seperti pada Gambar 2.7. Koordinat (x,y) adalah pusat kotak relatif terhadap gambar dan confidence adalah Intersection over Union (IoU) antara predicted box dan kotak ground-truth box. Setiap sel grid memprediksi kelas probabilitas C.
Setiap sel grid memprediksi nilai probabilitas di kelas C. Probabilitas dikondisikan oleh sel grid yang berisi objek. Sehingga hanya satu kelas
probabilitas yang terdeteksi di setiap sel grid tanpa memperhitungkan jumlah bounding box B. Pada proses deteksi.
Gambar 2.7 Proses Deteksi pada YOLO
Mengingat ukuran ekstraktor fitur yang sangat besar, oleh karena itu dibuat rancangan arsitektur yang lebih kecil yang disebut YOLO-tiny. Disebut kecil karena kedalaman convolutional layers dikurangi sehingga bisa mendapatkan kecepatan yang lebih cepat.
2.9.1 Feature Extractor
Pada YOLOv3 feature extractor yang digunakan Darknet-53, dengan menggunakan 53 layer. Pada penelitian ini menggunakan model YOLOv3-tiny menggunakan feature extractor dengan susunan layer seperti pada tabel 2.8.
Tabel 2.2 Feature Extractor Darknet-53
Type Filters Size Output
Convolutional 32 3x3 256x256
Convolutional 64 3x3/2 128x128
Convolutional 32
Convolutional 64 1x1 1x
Residual 3x3 128x128
Convolutional 128 3x3/2 64x64
Convolutional 64 1x1
Convolutional 128 3x3 2x
Residual 64x64
Convolutional 256 3x3/2 32x32
Convolutional 128 1x1
Convolutional 256 3x3 8x
Residual 32x32
Convolutional 512 3x3/2 16x16
Convolutional 256 1x1
Convolutional 1024 3x3 8x
Residual 8x8
Convolutional 1024 3x3/2 8x8
Convolutional 512 1x1
Convolutional 1024 3x3 4x
Residual 8x8
Avgpool Global
Connected 1000
Softmax
Tabel 2.3 Feature Extractor YOLOv3-tiny
Layer Type Filters Size/Stride Input Output 0 Convolutional 16 3x3/1 416x416x3 416x416x16
1 Maxpool 2x2/2 416x416x16 208x208x16
2 Convolutional 32 3x3/1 208x208x16 208x208x32
3 Maxpool 2x2/2 208x208x32 104x104x32
4 Convolutional 64 3x3/1 104x104x32 104x104x 64
5 Maxpool 2x2/2 104x104x64 52x52x64
6 Convolutional 128 3x3/1 52x52x64 52x52x128
7 Maxpool 2x2/2 52x52x128 26x26x128
8 Convolutional 256 3x3/1 26x26x128 26x26x256
9 Maxpool 2x2/2 26x26x256 13x13x256
10 Convolutional 512 3x3/1 13x13x256 13x13x512
11 Maxpool 2x2/1 13x13x512 13x13x512
12 Convolutional 1024 3x3/1 13x13x512 13x13x1024 13 Convolutional 256 1x1/1 13x13x1024 13x13x256 14 Convolutional 512 3x3/1 13x13x256 13x13x512 15 Convolutional 255 1x1/1 13x13x512 13x13x255
16 YOLO
17 Route 13
18 Convolutional 128 1x1/1 13x13x256 13x13x128
19 Upsamle 2x2/1 13x13x128 26x26x128
20 Route 19,8
21 Convolutional 256 3x3/1 26x26x384 26x26x256 22 Convolutional 255 1x1/1 26x26x256 26x26x255
23 YOLO
2.9.2 Confusion Matrix
Confusion Matrix atau error matrix adalah tabel yang sering digunakan untuk menggambarkan performansi model klasifikasi (classifier) pada beberapa data uji yang nilainya sudah diketahui, sehingga dapat membuat visualisasi bagaimana performansi suatu algoritma. Dalam confusion matrix terdapat beberapa ketentuan sebagai berikut :
1. True Positive (TP) : data positif yang terdeteksi positif atau robot terdeteksi sebagai robot.
2. False Positive (FP) : data negatif yang terdeteksi positif atau bukan robot tapi terdeteksi sebagai robot.
3. False Negative (FN) : data negatif terdeteksi negatif atau robot tidak terdeteksi.
2.9.3 Recall
Recall didefinisikan sebagai rasio jumlah total sampel positif yang diklasifikasikan dengan benar dibagi dengan jumlah total contoh positif. High Recall menunjukkan bahwa kelas dikenali dengan benar (FN sedikit). Recall dapat dihitung dengan persamaan 2.3.
(2.3) 2.9.4 Precision
Nilai presisi diperoleh dengan membagi jumlah total contoh positif yang diklasifikasikan dengan benar dengan jumlah sampel positif diprediksi seperti pada persamaan 2.4.
(2.4) 2.9.5 Accuracy
Accuracy merupakan parameter penilaian untuk menguji akurasi model dan tingkat confident dalam melakukan klasifikasi terhadap data baru. Untuk mengetahui akurasi suatu model dapat dicari dengan rumus seperti pada persamaan 2.5.
(2.5)