Anda di halaman 1dari 9

Technologia”Vol 13, No.

4, Oktober 2022 375

DETEKSI MASKER WAJAH SECARA REALTIME DENGAN ARDUINO UNTUK


MENCEGAH PENYEBARAN COVID-19
1
Arafat
2
Silvia Ratna
3
Wagino
a
Program Studi Teknik Infrormatika, Fakultas Teknologi Informasi, UNISKA
b
Program Studi Teknik Infrormatika, Fakultas Teknologi Informasi, UNISKA
c
Program Studi Teknik Infrormatika, Fakultas Teknologi Informasi, UNISKA

email: aaruniska@gmail.com
email: via.borneo@gmail.com
email : ginouniska@gmail.com

Abstrak
The emergence of the COVID-19 pandemic has had a lasting impact on countries around the world since
2019. Face mask detection has been a significant advance in the field of image processing and deep
learning studies. Many face detection models have been designed using different algorithms and
techniques. The approach proposed in this proposal is developed to prevent people without masks from
entering public places (i.e. Malls, Universities, Offices, …etc) by detecting face masks using deep
learning, TensorFlow, Keras, and OpenCV methods and sending a signal to the connected Arduino
device. to the door to be opened. To detect a person's face in real-time and identify whether the person
is wearing a mask or not. This method uses datasets collected from various sources.

Keywords: Mask detection, deep learning, TensorFlow, Keras, OpenCV, Arduino

1. PENDAHULUAN karyawannya menggunakan masker


Sejak Desember 2019, dunia digemparkan sebelum masuk ke kantor. Untuk mencegah
dengan munculnya COVID-19 yang persebaran COVID-19 yang tidak
merupakan penyakit pernafasan akut. terkendali ini, maka dibuatlah penelitian
Penyakit ini disebabkan oleh virus corona sistem deteksi masker dengan metode deep
yang bernama severe acute respiratory learning pada era new normal COVID-19.
syndrome coronavirus 2 atau disingkat Sistem deteksi masker ini menggunakan
SARS CoV-2 (Susilo et al., 2020). tools anaconda dan python 3.8. Sistem ini
Pemerintah selaku pembuat kebijakan, menggunakan beberapa library dengan
memberlakukan peraturan bagi setiap orang meng-upgrade pip seperti scipy, pillow,
yang akan keluar rumah wajib matplotlib dan opencv contrib python.
menggunakan masker dan juga tetap Metode yang digunakan pada proposal ini
melakukan physical distancing agar setiap adalah deep learning dimana algoritma ini
orang dapat keluar rumah dan melakukan merupakan salah satu model machine
pekerjaan tanpa harus khawatir terpapar learning yang kerap kali digunakan sebagai
virus COVID-19 ini. Dengan adanya pondasi aplikasi object detection (terutama
himbauan ini, diharapkan setiap masyarakat face recognition) dalam sebuah gambar
mampu untuk mematuhi penggunan masker maupun video. Metode ini sering
(Lambacing & Ferdiansyah, 2020). digunakan untuk mengenali area mana saja
Penularan virus COVID-19 ini sendiri terdapat wajah manusia (face recognition)
dapat terjadi melalui percikan saat bersin pada sebuah gambar menggunakan
atau batuk antar manusia. Oleh karena itu OpenCV. Data yang digunakan adalah data
penggunaan masker dan physical dari orang yang menggunakan masker dan
distancing telah beroperasi pada tidak menggunakan masker.
lingkungan perusahaan yang mewajibkan
Technologia”Vol 13, No. 4, Oktober 2022 376

Pada 31 Maret 2020, Surat Keputusan learning sebagai algoritma untuk


Presiden No. 11 Tahun 2020 dikeluarkan mendeksi masker wajahnya. Perancangan
karena adanya Corona Virus Disease 2019 perangkat keras dan perangkat lunak
(COVID-19). Berdasarkan keputusan meliputi pembuatan model pemasangan
tersebut, terdapat kebijakan untuk memakai alat pembuka pintu. Bahan yang digunakan
masker guna meminimalisir penyebaran meliputi
COVID-19 khususnya pada tempat dan
fasilitas umum (Kurniawan, 2021)s. Untuk a. Perangkat Keras
membantu pengawasan terhadap kebijakan 1. Camera
tersebut, dibutuhkanlah teknologi yang 2. Raspberry Pi 4
terintegrasi pada sistem yang 3. Monitor 7” touch screen
mengimplementasikan penggunaan deep 4. Arduino uno
learning. Penerapan sistem tersebut 5. Relay
ditujukan untuk mendeteksi penggunaan 6. Slide Door
masker pada masyarakat secara real-time.
b. Software yang digunakan untuk
2. METODE PENELITIAN pembuatan sistem:
1. Python: 3.9 atau terbaru
Penelitian ini dilakukan berdasarkan 2. PySerial
tahapan-tahapan penting yang dikerjakan 3. Tensorflow
dengan berorientasikan kepada indikator
keberhasilan dalam menghubungkan 4. Keras
arduino dengan deep learning sehingga 5. Imutil
dapat digunakan untuk menyelesaikan 6. Numpy
permasalahan multi objektif. Untuk dapat 7. Opencv-python
mencapai, indikator tersebut, maka 8. Matplotlib
tahapan-tahapan penelitian ini adalah 9. Scipy
sebagai berikut :
Perancangan Sistem
1. Analisa masalah, dalam hal ini Sistem ini dirancang untuk mendeteksi
kebutuhan menganalisa permasalahan wajah dalam bentuk video secara real-time
yang akan diteliti mengenai masker dan untuk menentukan apakah orang
wajah. tersebut memakai masker wajah atau tidak.
2. Analisa kebutuhan, dalam hal ini Dengan menggunakan data yang
segala kebutuhan dalam meneliti baik terdeteksi, sistem dapat memutuskan
dari jurnal, buku, literatur-literatur, apakah orang yang bersangkutan boleh
alat dan bahan. masuk ke tempat-tempat umum seperti
3. Mendesain alat yang akan dibangun (pasar, atau rumah sakit) atau tidak. Sistem
dengan menggunakan arduino dengan ini dapat digunakan di rumah sakit, pasar,
algoritma deep learning. terminal bus, restoran, dan tempat-tempat
4. Membuat program dengan umum lainnya di mana pemantauan harus
menggunakan arduino IDE dilakukan.
5. Menguji alat dengan kode program
yang dibuat.
6. Membuat laporan dan menyimpulkan
hasil penelitian
Alat dan Bahan
Dalam perencanaan dan pembuatan
Deteksi Masker Wajah Secara Realtime
Dengan Arduino Untuk Mencegah
Penyebaran Covid-19 menggunakan
arduino sebagai controller dan deep
Gambar 1.1 Alur Kerja Sistem
Technologia”Vol 13, No. 4, Oktober 2022 377

Sistem ini pada dasarnya terdiri dari, kamera Pengumpulan Data


yang ditempatkan di depan pintu, kamera Proses deteksi masker wajah secara real-time akan
mengirimkan frame video ke OpenCV yang melibatkan dua tahap yaitu proses training dan
berjalan di raspberry pi 4. Jika OpenCV deteksi masker.
mendeteksi wajah maka akan mengambil
Training
gambar orang yang masuk ke tempat umum
a. Dataset
dengan kamera, kemudian gambar wajah yang
Untuk training model, penulis memiliki
terdeteksi dikirim ke sistem untuk
kumpulan data yang di dapatkan dari
dibandingkan (diuji) apakah orang tersebut
Kaggle (Chakraborty, 2020) yang berisi
memakai masker wajah atau tidak dengan
sekitar total 3833 gambar, yaitu, 1918
menggunakan tenserflow. Setelah pemrosesan
gambar dengan menggunakan masker dan
data, TenserFlow akan mengirimkan hasilnya
1915 gambar tanpa masker seperti yang
ke Arduino apakah akan membuka pintu atau
ditunjukkan pada gambar 1.3 dan gambar
tidak seperti yang ditunjukkan pada gambar 1.1.
1.4. Penulis telah menggunakan kumpulan
data ini seperti yang ada di dalamnya yang
3. HASIL DAN PEMBAHASAN berupa gambar horizontal dan vertikal.
Prinsip Kerja Alat
Sistem ini terdiri dari fase software dan
hardware. Fase software bertanggung jawab
untuk melakukan training gambar pada dataset
dan kemudian menerapkan proses pengambilan
gambar wajah dari video secara real-time
kemudian mengidentifikasi, apakah
menggunakan masker atau tidak menggunakan
masker, sedangkan pada fase hardware adalah
untuk melakukan proses membuka/menutup
pintu geser sesuai dengan hasil fase software Gambar 1.3 Dataset (dengan masker)
seperti yang ditunjukkan pada gambar. Jika
menggunakan masker maka pintu akan terbuka
dan jika tidak menggunkan masker pintu akan
tertutup yang akan di perintah oleh arduino
untuk melakukan proses buka dan tutup pintu

Flowchart

Gambar 1.4 Dataset (tanpa masker)


b. Pra pemrosesan gambar
Untuk akurasi yang lebih baik dalam
pra-pemrosesan gambar adalah sebuah
langkah penting sebelum melakukan
training yang sebenarnya. Seperti
dalam penelitian ini, penulis
menggunakan Convolutional Neural
Networks, untuk merubah ukuran
gambar dataset menjadi resolusi 224 x
224 piksel seperti yang ditunjukkan
pada Gambar 1.5.
Setelah merubah ukuran gambar,
Gambar 1.2 Flowchart proses deteksi
gambar tersebut telah menjadi
masker dan buka tutup pintu
pixelized (yaitu, dirubah menjadi
Technologia”Vol 13, No. 4, Oktober 2022 378

sebuah array) dengan library OpenCV. dari inisial target juga semakin
Setelah proses pixelized, gambar diberi jauh.
label sebagai ‘Menggunakan Masker' 2) Epoch
atau ‘Tanpa Masker’ dengan fungsi Epoch adalah hyperparameter
library dari TensorFlow dan Keras. yang menentukan berapa
Array master yang berisi semua jumlah algoritma pembelajaran
gambar berpiksel dengan label yang akan bekerja mengolah seluruh
telah dibuat untuk dilakukan training. dataset training.
3) Batch size
Merupakan jumlah kelompok
dari sampel data. Contoh: jika
mempunyai 100 dataset dan
batch size kita adalah 5 maka
dataset akan dibagi menjadi 5
Gambar 1.5 Merubah ukuran resolusi bagian dan disetiap bagian ada
gambar menjadi 224 x 224 piksel 20 dataset. Untuk jumlah nilai
variable seperti yang
c. Training dan validasi dataset ditampilkan pada pseudocode
Dalam melakukan training dan validasi berikut:
dataset akan menggunakan bantuan INIT_LR = 1e-4
EPOCHS = 5
python dengan menggunakan metode BS = 32
Deep Neural Network, untuk 2. Partisi dataset
tahapannya sebagai berikut: Partisi yang dimaksudkan ada
1. Mempersiapkan variable global kapasitas dari dataset yang akan
Variable global merupakan sebuah dibagi menjadi 2 yaitu 80% dataset
parameter dalam training data digunakan untuk training dan
untuk menghitung nilai koreksi sisanya digunakan untuk validasi
bobot pada waktu. Semakin besar dan ini dilakukan pada setiap
learning rate maka rentang untuk epoch atau setiap sekali training
menentukan perubahan bobot dataset yang menggunakan semua
dalam neural network semakin data dari dataset. Seperti yang
besar dan berpengaruh dengan terlihat pada pseudocode berikut:
kedekatan fitur kepada kelas yang
lain. Saat learning rate kecil maka trainX,testX,trainY,testY) =
perubahan bobot semakin kecil train_test_split(data,labels
,test_size=0.20,stratify=lab
dan kedekatan pola ke kelas lain els,random_state=20)
dari inisial target juga semakin 3. Data Augmenatation
jauh. Data Augmentation adalah sebuah
1) Learning rate merupakan teknik memanipulasi sebuah data
sebuah parameter dalam tanpa kehilangan inti atau esensi
raining data untuk menghitung dari data tersebut. Untuk data
nilai koreksi bobot pada waktu berupa Image, kita bisa lakukan
proses training. Semakin besar rotate, flip, crop, dll.
learning rate maka rentang aug = ImageDataGenerator(
untuk menentukan perubahan rotation_range=20,
bobot dalam neural network zoom_range=0.15,
width_shift_range=0.2,height
semakin besar dan berpengaruh _shift_range=0.2,shear_range
dengan kedekatan fitur kepada =0.15,horizontal_flip=True,f
kelas yang lain. Saat learning ill_mode="nearest")
rate kecil maka perubahan Dari pseudocode diatas terdiri
bobot semakin kecil dan dari:
kedekatan pola kekelas lain
Technologia”Vol 13, No. 4, Oktober 2022 379

• Rotation range, merupakan derajat mendeteksi wajah sebagai wajah yang


rotasi gambar menggunakan makser.Sistem pengendali pintu
• Zoom range, merupakan tingkat akses masuk digunakan untuk mendeteksi
perbesar dari gambar apakah seseorang menggunakan masker
• Width shift range, untuk mengatur sehingga pendeteksian yang diharapkan dapat
lebar gambar memiliki akurasi tinggi adalah pendeteksian
• Hight shift range, untuk mengatur wajah bermasker. Algoritma program yang
tinggi gambar digunakan dalam sistem ini berjalan secara
• Shear range, gambar akan terus menerus tanpa terminasi.
didistorsi sesuai dengan sumbu.
• Horizontal flip, untuk mengatur
gambar berbentuk horizontal
• Fill mode, untuk mengatur layout
gambar.
4. Pembuatan struktur Deep Neural
Network
Dalam menerapkan Deep Neural
Network disini dijelaskan
memiliki 2 hidden layer yang
dijelaskan pada pseudocode Gambar 1.6 Rancangan hardware untuk
berikut: membuka dan menutup pintu
baseModel =
MobileNetV2(weights="imagene
t", include_top=False, Hasil Implementasi Pengendali Pintu
input_tensor=Input(shape=(22 Pada gambar 1.7 terdapat layar monitor dan
4, 224, 3)))
headModel = baseModel.output web cam yang terhubung dengan raspberry 4
headModel = dan arduino Uno sebagai kendali akses pintu
AveragePooling2D(pool_size=( masuk yang di gerakan oleh motor DC.
7, 7))(headModel)
headModel =
Flatten(name="flatten")(head
Model)
headModel = Dense(128,
activation="relu")(headModel
)
headModel =
Dropout(0.5)(headModel)
headModel = Dense(2,
activation="softmax")(headMo
del)
Gambar 1.7 Pemasangan hardware pada
Dari pseudocode diatas dijalaskan
pintu
bahwa untuk input menggukan
Pada kondisi pintu tertutup, ini berarti tidak ada
gambar dengan ukuran 224 x 224
orang yang bergerak di depan pintu atau tidak
pixel dan menghasilkan 2 output
menggunakan masker, maka pintu tetap akan
yaitu with mask dan without mask.
tertutup dan jika ada orang tanpa masker maka
Perancangan Pengendali Pintu Masuk alarm berbunyi.
Untuk sistem yang digunakan pada pengendali
pintu akses masuk, diterapkan pada Raspberry
Pi 4. Untuk pengendalian pintu masuk,
digunakan motor DC yang dapat digerakkan
untuk membuka dan menutup akses pintu
masuk. Motor DC akan bergeser ke kiri untuk
membuka pintu dan bergeser kekanan untuk
menutup Motor DC membuka bila program
Technologia”Vol 13, No. 4, Oktober 2022 380

dibawah 0.1, baik dalam training maupun


validasi.

Gambar 1.8 Kondisi pintu tertutup


Pintu akan terbuka jika ada orang yang
mengadap ke web cam dengan menggunakan
masker, tetapi jika pemasangan masker pada
wajah tidak menutupi mulut atau memasang Gambar 2.1 Tingkat Kegagalan
secara sembarangan, maka oarang tersebut
dianggap tidak menggunakan masker. Pengujian sistem dibuat untuk mengetahui
apakah hasil pelatihan menggunakan CNN
dapat menghasilkan akurasi yang baik yang
dapat digunakaan untuk mengendalikan pintu
akses masuk. Proses pengujian dilakukan
dengan membuat 2 buah program terpisah.
Program utama adalah program yang
digunakaan untuk mendeteksi dan
mengkategorikan apakah gambar wajah yang
ditangkap kamera merupakan gambar wajah
bermasker ataupun gambar wajah tanpa masker.
Program ini akan menggunakan data model
jaringan CNN yang dihasilkan pada program
Gambar 1.9 Kondisi pintu terbuka pelatihan sebelumnya. Program ke-2 adalah
program yang akan menampilkan gambar
Pengujian Sistem
wajah tertentu dalam periode waktu +/- 7 detik.
Tingkat accuracy (akurasi) dan loss (kegagalan)
dalam melakukan training serta validasi Pada
gambar 2.0 dijelaskan dari 20 epoch didapatkan
tingkat akurasi yang tinggi diatas 0.9, baik dalam
training maupun validasi.

Gambar 2.2 Menggunakan masker


terdeteksi

Gambar 2.0 Tingkat Akurasi

Pada gambar 2.0 dijelaskan dari 20 epoch


didapatkan tingkat kegagalan yang rendah
Technologia”Vol 13, No. 4, Oktober 2022 381

Pengujian Alat
Dari hasil pengujian didapatkan hasil seperti
pada tabel 1.1, diketahui dari semua kondisi ada
2 kondisi yang tidak lolos, yaitu ketika ada
sebuah gambar wajah aplikasi tetap mendeteksi
bahwa itu adalah wajah, dan yang kedua adalah
apabila maker hanya menutupi hidung saja
aplikasi tetap menganggap penggunaan masker
sudah benar, kedua kondisi ini tidak bisa
memenuhi ekspentasi sehingga hasilnya false.

Tabel 1.1 Test case scenario prototype Mask


Gambar 2.3 Tanpa menggunakan masker Detector

Test Pre condition Expented Real


case result Resul
t
Aplikasi Alarm True
mendeteksi berbunyi
user
tidak
menggunakan
masker
Bunyi Aplikasi Alarm True
Alarm mendeteksi tidak
user berbunyi
menggunakan
masker
Tidak ada user Tidak True
didepan mendeteksi
kamera wajah
1 user didepan Mendeteks True
kamera i 1 wajah
2 user atau Tidak True
lebih didepan mendeteksi
kamera wajah
Deteks Ada gambar Tidak False
i atau pola mendeteksi
wajah berbentuk wajah
Gambar 2.4 Penggunaan masker yang salah dan wajah didepan
terdeteksi tidak pakai masker maske kamera
r Masker Aplikasi True
Pada saat program kedua dijalankan, maka
gambar pada monitor akan menampilkan menutupi mendeksi
gambar sesuai kategori yang diuji. Kategori hidung penggunaa
dan mulut n masker
yang diuji ada 3 yakni:
dari
1. Gambar Wajah dengan masker standard, user dan
memiliki warna yang konstan, tidak alarm tidak
bermotif dan tidak bergambar. berbunyi
2. Gambar wajah tidak bermasker Masker tidak Aplikasi True
3. Gambar wajah dengan masker bermotif, menutupi tidak
memiliki bentuk dan warna yang hidung dan mendeksi
bervariasi, bergambar wajah, mulut mulut user
ataupun gambar bentuk lainnya. mengguna
kan
masker
Technologia”Vol 13, No. 4, Oktober 2022 382

serta alarm user dan


berbunyi alarm
Masker Aplikasi False tidak
menutupi mendeksi berbunyi
hidung penggunaa
tetapi tidak n masker 4. KESIMPULAN
menutupi yang 1. Sistem kecerdasan buatan modern dan
mulut salah dan algoritma machine learning telah
alarm
merevolusi pendekatan terhadap
berbunyi
tantangan ilmiah dan teknologi di
Masker Aplikasi True
berbagai bidang. Saat ini, teknik Deep
menutupi mendeksi
mulut penggunaa Learning (DL) dan Machine Learning
tetapi tidak n masker (ML) telah menjadi algortima pada
menutupi yang berbagai alat yang berguna dalam
hidung salah dan memecahkan masalah.
alarm 2. Dalam model deteksi masker wajah
berbunyi secara real-time yang dihasilkan,
User memakai Aplikasi True metode dengan Deep Learning
masker mendeksi digunakan untuk mendeteksi wajah dan
berwarna penggunaa menentukan apakah orang tersebut
seperti kulit n masker memakai masker atau tidak. Dari tabel
dan dari
hasil percobaan, terlihat bahwa sistem
menutupi user dan
hidung dan alarm tidak pendeteksi wajah secara real time
mulut berbunyi memiliki akurasi yang tinggi dalam
User memakai Aplikasi True mendeteksi masker, hal ini membantu
masker mendeksi untuk mengendalikan penyebaran
berwarna dan penggunaa COVID-19 di tempat-tempat umum
menutupi n dengan cara mencegah orang masuk
hidung dan masker tanpa menggunakan masker.
mulut dari

3. REFERENSI

Ariyanto, Mochammad & Haryanto, Ismoyo & Available:


Setiawan, Joga & Muna, Munadi & Radityo, https://medium.com/purwadhikaconnect/
M.. (2019). Real-Time Image Processing opencv-face-recognitionberbasis-
Method Using Raspberry Pi for a Car Model. algoritma-haar-cascade-1a5e23d9e8cb.
46-51. [Accessed: 26-Jun-2022].
Coronavirus Study Group,” Nat. Microbiol., pp. 1– Lambacing, M. M., & Ferdiansyah, F. (2020).
15, Feb. 2020. WHO, “WHO Coronavirus Rancang Bangun New Normal Covid-19
Disease (COVID-19) Dashboard Masker Detektor Dengan Notifikasi
Febtriko, A. (2017). Sistem Kontrol Perternakan Ikan Telegram Berbasis Internet of Things.
Dengan Menggunakan Mikrokontroller Dinamik, 25(2), 77–84.
Berbasis Android. Rabit : Jurnal Teknologi https://doi.org/10.35315/dinamik.v25i2.8
Dan Sistem Informasi Univrab, 2(1), 140–149. 070
https://doi.org/10.36341/rabit.v2i1.148 M. Kim, D. Lee, and K.-Y. Kim, “System
Kurniawan, M. B. (2021). POLITIK HUKUM architecture for realtime face detection on
PEMERINTAH DALAM PENANGANAN analog video camera,” Int. J. Distrib.
PANDEMI COVID-19 ( Government Legal Sens.Networks, vol. 11, no. 5, p. 251386,
L. Wisesa, “OpenCV Face Recognition 2015.
Berbasis Algoritma Haar Cascade,”
Purwadhika Connect, 2019. [Online].
Technologia”Vol 13, No. 4, Oktober 2022 383

Najiyah, I., & Topiq, S. (2021). Klasifikasi 2020 3rd International Conference on
Jenis Kendaraan Roda Empat, 3(2), 199– Applied Engineering (ICAE), Batam,
206. Indonesia, pp. 1-5.
Putri, N. I. (2020). Deep Learning Dan Susilo, A., Rumende, C. M., Pitoyo, C. W.,
Teknologi Big Data Untuk Keamanan Santoso, W. D., Yulianti, M.,
IOT. COMPUTING| Jurnal Informatika, Herikurniawan, H., Yunihastuti, E.
7(1), 48–73. (2020). Coronavirus Disease 2019:
R. K. Sinuraya, D. P. Destiani, I. M. Puspitasari, Tinjauan Literatur Terkini. Jurnal
and A. Diantini, “Pengukuran Tingkat Penyakit Dalam Indonesia, 7(1), 45.
Kepatuhan Pengobatan Pasien Hipertensi https://doi.org/10.7454/jpdi.v7i1.415
di Fasilitas Kesehatan Tingkat Pertama di V. K. Gudipati, O. R. Barman, M. Gaffoor, and
Kota Bandung,” Indones. J. Clin. Pharm., A. Abuzneid, “Efficient facial expression
vol. 7, no. 2, pp. 124–133, 2018. recognition using adaboost and haar
S. Susanto, F. A. Putra, R. Analia and I. K. L. cascade classifiers,” in 2016 Annual
N. Suciningtyas, (2020) "The Face Mask Connecticut Conference on Industrial
Detection For Preventing the Spread of Electronics, Technology & Automation
COVID-19 at Politeknik Negeri Batam," (CT-IETA), 2016, pp. 1–4

Anda mungkin juga menyukai