Syntax
Literate: Jurnal Ilmiah
Indonesia p�ISSN: 2541-0849 e-ISSN: 2548-1398
Vol. 7, No. 9, September 2022
ANALISIS DETEKSI
OBJEK CITRA DIGITAL MENGGUNAKAN ALGORITMA YOLO DAN CNN DENGAN ARSITEKTUR REPVGG
PADA SISTEM PENDETEKSIAN DAN PENGENALAN EKSPRESI WAJAH
Anisa Pratiwi Saputri, Ahmad Taqwa, Sopian Soim
Program
Studi Teknik Telekomunikasi, Jurusan
Teknik Elektro, Politeknik
Negeri Sriwijaya Palembang, Sumatera Selatan,
Indonesia
Email:
[email protected], [email protected], [email protected]
Abstrak
Salah satu topik yang paling sering digunakan dalam machine
learning adalah mendeteksi
wajah. Metode yang digunakan dalam mendeteksi wajah sangat beragam. Kami menggunakan algoritma YOLO dan arsitektur RepVGG untuk mendeteksi
ekspresi wajah. YOLO menerapkan satu jaringan saraf yang dimana pada algoritma ini dapat membagi
gambar dalam beberapa wilayah sehingga dapat diprediksi yang akan menghasilkan data yang akurat dengan secara
real-time. Sedangkan
RepVGG menerapkan jaringan saraf konvolusi untuk mengklasifikasi gambar (deteksi objek) dalam skala besar.
Dalam pengklasifikasian ekspresi wajahnya menggunakan dataset fer2013.� Dataset yang digunakan
terbagi menjadi 7 kelompok ekspresi wajah yaitu Neutral, Happy, Sad, Anger,
Fear, Surprise dan Disgust.
Hasil dari pengujian algoritma YOLO mendapatkan tingkat keyakinan sebesar 89%. Dan untuk pengujian keseluruhan sistem untuk ekspresi
Happy menghasilkan
tingkat keyakinan sebesar 99,3%.
Kata Kunci: YOLO, CNN, Ekspresi Wajah, RepVGG, Fer2013
Abstract
One of the most frequently used topics in
machine learning is face detection. The methods used in detecting faces are
very diverse. We used the YOLO algorithm and the RepVGG
architecture to detect facial expressions. YOLO implements a neural network which
in this algorithm can divide the image into several regions so that it can be
predicted which will produce accurate data in real-time. Meanwhile, RepVGG applies a convolutional neural network to classify
images (object detection) on a large scale. In classifying facial expressions
using the fer2013 dataset. The dataset used is divided into 7 groups of facial
expressions, namely Neutral, Happy, Sad, Anger, Fear, Surprise and Disgust. The
results of testing the YOLO algorithm get a confidence level of 89%. And for
testing the whole system for the Happy expression, it produces a confidence
level of 99.3%.
Keywords: YOLO, CNN, Facial Expression, RepVGG, Widerface, AffectNet
Pendahuluan
Perkembangan
teknologi yang sangat banyak
sehingga memungkinkan manusia dalam menciptakan
stau sistem yang akan membantu dalam
pengenalan citra digital. Contoh dari pengenalan
citra digital itu sendiri salah satunya adalah pendeteksian dan pengenalan ekspresi wajah. Wajah menampilkan
berbagai informasi rumit tentang identitas,
usia, jenis kelamin dan ras. Selain itu, wajah
juga dapat digunakan sebagai instrumen untuk membedakan ekspresi seseorang dan dalam ilmu komputer
(teknologi informasi) termasuk dalam aplikasi klasifikasi pola (pengenalan). Setiap ekspresi wajah memiliki sebuah respon yang tentunya berbeda-beda. Instrumen wajah yang digunakan untuk membedakan ekspresi wajah adalah dari
bentuk dan posisi mata, hidung, dan mulut. Dalam pengenalan
ekspresi wajah, ciri-ciri tersebut merupakan komponen-komponen yang digunakan oleh metode-metode pengenalan ekspresi wajah dalam teknologi
informasi (Jtik, Teknologi, Adrianto, Wahyuddin, & Winarsih,
2021).
Pada pemanfaatan pengolahan citra, digital banyak sekali menggunakan
teknologi, metode dan algoritma untuk membangun sistem pendeteksian dan pengenalan ekspresi wajah. Namun masih banyak
yang harus dikembangkan dan
uji coba untuk terus mendapatkan akurasi yang lebih baik. Salah satu teknologi yang digunakan adalah Artificial
Intelligence. Artificial Intelligence atau kecerdasan buatan adalah sistem
komputer yang mampu melakukan tugas-tugas yang biasanya membutuhkan kecerdasan manusia (Mccarthy, 2004). Teknologi ini dapat membuat
keputusan dengan cara menganalisis dan menggunakan data yang tersedia di
dalam sistem. Salah satu cabang dari
artificial intelligence adalah Machine
Learning yang berfokus pada penggunaan
data dan algoritma untuk meniru cara manusia
belajar dan secara bertahap dapat meningkatkan akurasinya dikarenakan machine
learning yang �merupakan komponen terpenting didalam bidang ilmu perkembangan data (�Apa itu Machine Learning? Beserta Pengertian dan Cara Kerjanya -
Dicoding Blog,� n.d.).
Pada penelitian ini menggunakan dua metode algoritma
yaitu algoritma You Only Look Once (YOLO) dan Convolutional Neural Network (CNN) dengan arsitektur RepVGG. Yang akan mendeteksi dan mengenal beberapa ekspresi wajah seperti neutral, sad, fear, happy, disgust,
surprised dan angry. Algoritma YOLO merupakan metode yang dipakai sebagai Real Time Object 10 Detection yang berguna untuk mendeteksi
citra secara langsung. Sistem pendeteksian dilakukan dengan menggunakan repurpose classifier dan localizer untuk
melakukan deteksi (�YOLO (you only look once) � Universitas Gadjah Mada
Menara Ilmu Machine Learning,� n.d.).
Sebuah model yang telah diterapkan di beberapa lokasi dan skala. Algoritma yolo sendiri menjadi algoritma yang sedang popular untuk dikembangkan dengan model machine learning yang bisa bekerja secara
otomatis dalam pendeteksian wajah Selain mendeteksi karakter, YOLO juga dapat mendeteksi ekspresi wajah manusia. Hasil deteksi dari metode
YOLO akan digunakan untuk proses pengenalan ekspresi wajah.
Sedangkan
algoritma CNN merupakan metode yang memiliki hasil yang paling signifikan dalam proses pengenalan citra digital. Karena CNN mampu mengkasifikasi suatu objek dan menghasilkan akurasi yang baik. CNN termasuk klasifikasi gambar, deteksi objek, pelacakan objek, estimasi pose, deteksi teks dan pengenalan, pelabelan adegan dan bahasa alami pemrosesan. CNN juga memiliki beberapa arsitektur umum yang sering digunakan seperti LeNet 5, AlexNet, VGGNet, GooLeNet, ResNet (�Implementasi Deep Learning Menggunakan Convolutional
Neural Network Untuk Klasifikasi Alat Tulis,� n.d.).
Masing-masing arsitektur mempunyai
kelebihan dan kekurangan. Penggunaan arsitektur yang digunakan pada CNN sangat mempengaruhi
hasil dari klasifikasi suatu objek.�
Metode Penulisan
Kerangka Kerja
Untuk memperlancar proses penelitian, maka penelitian inni akan melewati
beberapa tahapan-tahapan
yang telah ditentukan agar pengerjaannya lebih structural. Dan
juga kerangka kerja ini merupakan bagian
terpenting karena dapat mengetahui tahapan-tahapan yang akan dicapai. Tahapan-tahapan yang dilalui, dilaksanakan seusai dengan rancangan
kerangka kerja (framework) yang telah
disusun sebelumnya. Tahapan yang pertama kali dilakukan adalah studi literatur sebagai acuan penelitian
bagi penulis yang nantinya akan dilakukan
pengambilan dataset
dari berbagai sumber. Selanjutnya penulis akan melakukan
tahapan preprocessing
data dimana pada tahap ini data yang didapat akan diproses terlebih
dahulu sebelum digunakan dalam proses pelatihan (training) dan
pengujian (testing).
Kemudian dilanjutkan dengan melakukan pelatihan pada dataset yang ada dengan menggunakan beberapa algoritma yaitu algoritma YOLO dan CNN dengan arsitektur RepVGG, yang nantinya akan dilanjutkan dengan tahapan selanjutnya yaitu melakukan training atau pelatihan terhadap dataset untuk menghasilkan model yang dapat mengklasifikasi dataset berdasarkan penamaannya (label). Setelah model didapatkan dari proses pelatihan, akan dilakukan pengujian terhadap model tersebut untuk menguji keakuratan model dalam memprediksi, pada proses pengujian ini akan
ada beberapa kasus uji yang dilakukan demi mendapatkan perbandingan antara beberapa model yang dibuat. Kemudian akan dilakukan analisa terhadap beberapa kasus uji tersebut dan melakukan perbandingan. Terakhir penulis akan menarik
beberapa kesimpulan sementara dari apa yang telah dikerjakan pada penelitian tugas akhir ini.
Adapun diagram alir pada penelitian
ini yang dapat dilihat pada gambar 3.1. sebagai acuan agar memudahkan dan tidak membingungkan dalam proses perancangan dan menghasilkan suatu sistem.
Gambar
1
Kerangka Kerja Penelitian
Studi Literatur
Studi
literature merupakan tahap dimana penulis akan melakukan proses menambah pengetahuan yang berhubungan dengan penelitian yang diambil dengan cara mencari
dan mempelajari berbagai literatur yang berhubungan dengan konsep penelitian
yang diambil penulis yaitu mengenai Deteksi Objek Citra Digital Menggunakan Algoritma YOLO dan
CNN dengan Arsitektur RepVGG Pada Sistem Pendeteksian dan Pengenalan Ekspresi Wajah. Dan literature
yang diperoleh digunakan dalam penyusunan landasan teori, metodelogi penelitian dan pengembangannya. Literatur ini dijadikan acuan
yang berasal dari jurnal, buku, dan artikel yang ada pada internet tentang penelitian dalam materi yang serupa. Literatur yang digunakan dapat dilihat pada halaman daftar pustaka.
Pengambilan Dataset
Pengambilan
dataset merupakan
tahap dimana penulis melakukan pengambilan data yang dibutuhkan dalam rangka membuat
model yang sesuai dengan penelitian penulis yaitu menganalisis sistem pendeteksian dan pengenalan ekspresi wajah. Data ekspresi wajah yang digunakan berupa data foto beberapa ekspresi wajah. Ekspresi wajah pada penelitian ini dibagi menjadi
7 ekspresi wajah. Ekspresi yang diambil ialah dibagi menjadi
kelas-kelas yaitu neutral, sad, happy, angry, Surprised, fear dan
disgust. Dataset yang diambil merupakan data dari berbagai sumber,
Tahapan Penelitian
Secara Keseluruhan
Tahapan
penelitian secara keseluruhan ini merupakan tahapan dimana alur dari
proses input foto hingga selesai. Sehingga keseluruhan block diagram tersebut
akan menghasilkan suatu sitem yang dapat difungsikan. Tahapan ini diawali
dengan proses input foto
yang akan deprogram dengan menggunakan bahasa pemrograman Phyton. Yang selanjutnya
akan di lakukan pendeteksian wajah menggunakan algoritma YOLO (You Only Look Once) dengan
Widerface
dan mengklasifikasi Ekspresi
wajah menggunakan CNN (Convolutional Neural Network) Arsitektur RepVGG dengan AffecNet. Dan yang terakhir akan dilakukan
analisis kinerja dari sistem pendeteksian
dan pengenalan ekspresi wajah yang terlah dibuat. Block diagram sistem secara keseluruhan ditunjukkan dalam Gambar 3.2.
Gambar 2
Block Diagram Sistem Pendeteksian dan Pengenalan Ekspresi Wajah
Pengujian pada Sistem
Pendeteksian dan Pengenalan
Ekspresi Wajah
Pengujian deteksi
Wajah dengan Algoritma YOLO
����������� Untuk rencangan sistem algoritma YOLO digunakan untuk menangkap gambar. Sistem disini hanya dapat
mendeteksi objek wajah manusia setelah
gambar objek telah selesai. Tahapan selanjutnya membuat label dengan cara memberikan kotak pembatas beserta nilai tingkat
keyakinannya.
Gambar
3
Cara
memanggil Algoritma YOLO dalam deteksi Wajah
Pengujian pada Pengenalan
Ekspresi Wajah dengan RepVGG
Pada perancangan
sistem untuk RepVGG ini membuat
sistem pengenalan ekspresi wajah. Dimana dalam prosesnya, algoritma YOLO akan diganungkan dengan Arsitektur RepVGG untuk mendapatkan hasil dari pengenalan
ekspresi wajah dengan nilai tingkat
keyakinannya.
Cara memanggil Arsitektur RepVGG
Hasil
Dan Pembahasan
Hasil penelitian
ini dilaksanakan berdasarkan studi literature tentang sistem pendeteksian dan pengenalan ekspresi wajah dengan menggunakan algoritma YOLO dan RepVGG dan pemrograman bahasa phyton. Berikut
iniakan dijelaskan hasil dari penelitian
sesuai dengan yang ingin dituju.
Hasil
Pengujian pada Algoritma
YOLO
Pengujian
untuk algoritma YOLO yang dilatih dengan citra berupa wajah
manusia dan anotasinya yang
didapatkan dari dataset Imagenet untuk pendeteksian wajah. Pengujian dilakukan dengan menggunakan Algoritma YOLOv5s.
�����������
���
���������������� �������������������������(a)���������������������������������� �����������������(b)
Gambar 4.1
(a)
Foto Sebelum di Uji Oleh Algoritma YOLO (b) Foto Sesudah di
Uji Oleh Algoritma YOLO
�����������
Gambar
4.3 (a) merupakan input foto sebelum diuji oleh algoritma YOLO. Dan gambar 4.3
(b) merupakan hasil pengujian dari algoritma YOLO. Yang dimana algoritma ini
berhasil untuk mendeteksi wajah manusia dengan kotak pembatas dan nilai tingkat
keyakinannya sebesar 89%. Hasil keluaran
dari algoritma YOLO adalah berupa kotak
pembatas lokasi wajah dengan nilai
tingkat keyakinannya pada citra yang dideteksi.
Hasil
Pengujian pada Arsitektur RepVGG
Pengujian
untuk arsitektur RepVGG yang dilatih dengan citra berupa
wajah manusia dan anotasinya yang didapatkan dari dataset FER-2013 untuk pengenalan ekspresi wajah. Pengujian dilatih dengan jumlah epoch sebanyak 200 epoch
dan menggunakan data citra sebanyak 35.887 berupa ekpresi wajah manusia.
Masing-masing wajah yang digunakan
akan dibagi menjadi 7 kelas ekspresi wajah yang berbeda-beda.
(a)
��������������������������������������������(b)
Gambar
4.4
(a)
Foto Sebelum di Uji Arsitektur RepVGG (b)Foto Sesudah di Uji Arsitektur RepVGG
�����������
Pada
gambar 4.4 (a) diatas merupakan foto sebelum diuji oleh arsitektur RepVGG. Dan gambar 4.4 (b) merupakan foto yang sudah diklasifikasi oleh arsitektur RepVGG yang menghasilkan ekspresi Happy dengan nilai tingkat
keyakinannya sebesar 99,3%.
Arsitektur RepVGG ini berhasil dalam
melakukan pengenalan atau klasifikasi terhadap ekspresi wajah. Hasil keluaran pada pengujian untuk arsitektur RepVGG ini adalah berupa
pengenalan ekspresi wajah dan nilai tingkat keyakinannya.
Hasil Pendeteksian
dan Pengenalan Ekspresi Wajah
Hasil
dari sistem pendeteksian dan pengenalan ekspresi wajah menggunakan 70 citra wajah dari 10 orang yang dibagi menjadi 7 kelas yaitu ekspresi
neutral, sad, angry, happy, fear,
surprise dan disgust. Hasil pendeteksian dan pengenalan ekspresi wajah akan terlihat pada Tabel 1.
Tabel 1
Hasil
Pendeteksian dan Pengenalan
Ekspresi Wajah
Happy |
Neutral |
Sad |
Angry |
Surprise |
Fear |
Disgust |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
�����������
Tabel
diatas merupakan hasil foto dari
pendeteksian dan pengenalan
ekspresi wajah dengan menggunakan algoritma YOLO dan RepVGG. Yang dimana hasil ekspresi
dan persentase untuk deteksi dan pengenalan ekspresi wajah terdapat pada tabel 2.
Tabel 2
Hasil
dan persentase dari 10
orang dengan 7 ekspresi wajah.
Foto |
Happy |
Neutral |
Sad |
Angry |
Surprise |
Fear |
Disgust |
Orang 1 |
Happy (98,4%) |
Neutral (92,4%) |
Sad (90,8%) |
Angry (82,7%) |
Suprrise (82,2%) |
Fear (43,1%) |
Disgust (41,2%) |
Orang 2 |
Happy (99,1%) |
Neutral (62,90%) |
Sad (75,9%) |
Angry (51,4%) |
Suprrise (53,0%) |
Fear (81,7%) |
Disgust (38,3%) |
Orang 3 |
Happy (93,8%) |
Neutral (81,1%) |
Sad (41,1%) |
Angry (82,4%) |
Suprrise (82,6%) |
Fear (65,9%) |
Disgust (36,5%) |
Orang 4 |
Happy (71,1%) |
Neutral (71,5%) |
Sad (59,7%) |
Angry (54,4%) |
Suprrise (49,9%) |
Angry (57,6%) |
Disgust (55,6%) |
Orang 5 |
Happy (99,8%) |
Neutral (84,3%) |
Sad (74,0%) |
Angry (57,3%) |
Suprrise (90,6%) |
Fear (48,5%) |
Disgust (51,4%) |
Orang 6 |
Happy (87,3%) |
Neutral (86,9%) |
Sad (98,8%) |
Angry (59,0%) |
Suprrise (70,8%) |
Fear (43,4%) |
Neutral (71,6%) |
Orang 7 |
Happy (99,8%) |
Neutral (81,4%) |
Sad (48,3%) |
Angry (72,7%) |
Suprrise (38,2%) |
Fear (53,3%) |
Angry (41,6%) |
Orang 8 |
Happy (98,4%) |
Neutral (75,7%) |
Sad (75,0%) |
Angry (56,4%) |
Suprrise (44,7%) |
Surprise (52,4%) |
Neutral (49,1%) |
Orang 9 |
Happy (99,8%) |
Neutral (66,1%) |
Sad (92,6%) |
Angry (69,6%) |
Suprrise (76,5%) |
Fear (51,9%) |
Fear (59,8%) |
Orang 10 |
Happy (99,5%) |
Neutral (68,5%) |
Sad (49,3%) |
Angry (47,1%) |
Suprrise (37,6%) |
Fear (46,5%) |
Angry (56,9%) |
Berdasarkan
hasil yang dapat dilihat pada tabel diatas prediksi yang dihasilkan bahwa hampir seluruh ekspresi Happy,
Neutral, Sad, Angry dan Surprise terdeteksi. Hanya saja untuk ekspresi
Fear dan Disgust beberapa ada
yang tidak terdeteksi. Untuk ekspresi fear 2 orang yang yang
tidak terdeteksi. Dan disgust ada 5
orang yang tidak terdeteksi.
Hal ini dikarenakan dataset
yang tidak bagus, ekspresi model yang tidak memadai atau ekspresi
model tersebut bukan ekspresi yang mendekati Disgust.
Evaluasi
dari sistem Pendeteksian dan Pengenalan Ekspresi Wajah ini harus memperhatikan
bentuk dari ekspresi yang akan diambil. �Contohnya seperti ekspresi surprise harus melakukan bagian mulut berbentuk
�O� dan alis sedikit naik. ini bertujuan untuk
mempermudah dalam pendeteksian dan pengenalan ekspresi wajah.
Kesimpulan
Hasil penelitian
dari Deteksi Objek Citra Digital Menggunakan Algoritma YOLO (You
Only Look Once) dan CNN (Convolutional
Neural Network) dengan Arsitektur
RepVGG pada Sistem Pendeteksian dan Pengenalan Ekspresi Wajah berjalan dengan baik. Untuk hasil
pengujiannya dengan sampel model 10 orang dengan
masing-masing 7 kelas Ekspresi
yaitu Happy,
Neutral, Sad, Angry, Surprise, Fear dan Disgust.
Akurasi yang didapatkan pun
hampir mendekati 95%. Ada beberapa ekspresi yang tidak terbaca dikarenakan
ekspresi pada model tidak mendekati ekspresi Disgust. Algoritma
YOLO terbukti memiliki tingkat deteksi wajah yang baik. Dan untuk RepVGG terbukti
memiliki tingkat pengklasifikasian ekspresi wajah yang baik sehingga dalam proses pengenalan ekspresi wajah mendapatkan hasil yang sesuai. Untuk penelitian selanjutnya harus memperhatikan karakter ekspresi yang akan diuji karena bertujuan
untuk memudahkan dalam mendeteksi dan mengenali ekspresi wajah. Dan untuk pengembangannya model CNN dapat menggunakan arsitektur lainnya seperti RegNet, AlexNet, dan lain-lain. �Harapan kami dari hasil penelitian ini dapat bermanfaat
dan juga menjadi pembelajaran.
BIBLIOGRAFI
Apa Itu Machine Learning? Beserta Pengertian Dan Cara
Kerjanya - Dicoding Blog. (n.d.).
Implementasi Deep Learning Menggunakan Convolutional Neural
Network Untuk Klasifikasi Alat Tulis. (n.d.).
Jtik, Jurnal, Teknologi, Jurnal, Adrianto, Lintang Bagas,
Wahyuddin, Mohammad Iwan, & Winarsih, Wina. (2021). Implementasi Deep
Learning Untuk Sistem Keamanan Data Pribadi Menggunakan Pengenalan Wajah Dengan
Metode Eigenface Berbasis Android. 5(1).
Mccarthy, John. (2004). What Is Artificial Intelligence?
Yolo (You Only Look Once) � Universitas Gadjah Mada Menara
Ilmu Machine Learning. (n.d.).
Anisa
Pratiwi Saputri, Ahmad Taqwa, Sopian Soim (2022) |
First publication right: Syntax Literate:
Jurnal Ilmiah Indonesia |
This article is licensed under: |