Muhammad Farhan Aditama
Saat pandemi COVID-19 pemerintah sangat tegas untuk melakukan protokol kesehatan yang ketat kepada masyarakat terutama penggunaan masker dimanapun. Dengan cara ini membantu untuk mengurangi penularan akibat wabah pandemi COVID-19. Namun, banyak sekali masyarakat yang tidak mematuhi protokol kesehatan terutama penggunaan masker, dengan masalah tersebut maka dibuatkan project “Face Mask Detection Using CNN” untuk membantu mengawasi masyarakat dalam penggunaan masker.
Convolutional Neural Network (CNN) merupakan salah satu jenis algoritma Deep Learning yang dapat menerima input berupa gambar, menentukan aspek atau obyek apa saja dalam sebuah gambar yang bisa digunakan mesin untuk “belajar” mengenali gambar, dan membedakan antara satu gambar dengan yang lainnya. Dalam project ini digunakan sebuah algoritma Convolutional Neural Network (CNN) karena CNN mempunyai kinerja yang sangat baik dalam banyak tugas pengenalan skala besar dalam Computer Vision. CNN memanfaatkan proses konvolusi dengan menggerakan sebuah kernel konvolusi (filter) berukuran tertentu ke sebuah gambar dengan itu CNN sangat efektif untuk pemrosesan gambar. Terdapat beberapa langkah-langkah untuk mulai membuat Face Mask Detection, yaitu:
Hal pertama yang harus dilakukan adalah mengumpulkan dataset berupa data image. Dalam mengumpulkan data dapat menggunakan dari Kaggle API atau bisa mengunduh langsung dari Kaggle. Dataset tersebut terdapat 3 class/label yaitu penggunaan masker yang salah, penggunaan masker yang benar dan tanpa masker dengan masing-masing sebanyak 2994 image. Berikut link dataset yang digunakan https://www.kaggle.com/datasets/vijaykumar1799/face-mask-detection
Setelah melakukan pengumpulan data selanjutnya data di split atau dipisahkan untuk data training sebesar 90% dan data testing sebesar 10%.
Selanjutnya menggunakan Image Augmentation. Image Augmentation adalah sebuah teknik memanipulasi sebuah data tanpa kehilangan inti atau esensi dari data tersebut.
Dalam tahap modelling digunakan algoritma CNN dengan hiden layer sebanyak 2 masing – masing 512 neuron dengan fungsi aktivasi ReLU (Rectified Linear Unit), kemudian output layer sebanyak 3 neuron dengan fungsi aktivasi softmax dan di compile dengan loss yaitu categorical crossentropy, optimizer yaitu adam dan metrics yang dipakai yaitu accuracy.
Kemudian gunakan callback agar mencegah overfitting dan menghentikan training setelah akurasi terpenuhi, dalam kondisi ini accuracy dan validation accuracy sudah melebihi atau menyentuh angka 98%. Selanjutnya dilakukan proses training dengan epoch sebanyak 50 epoch.
Setelah proses training diperoleh accuracy sebesar 98%.