Program Studi S1 Teknik Kimia, Fakultas Teknik, Universitas Negeri Semarang,Kampus Sekaran
Gunungpati, Semarang 50229, Indonesia
ABSTRAK
HARDISC merupakan aplikasi berbasis android yang menawarkan sistem
pengenalan huruf dengan mendeteksi gerakan tangan menggunakan kamera. HARDISC
memberikan 1 pelayanan dasar dan 1 pelayanan tambahan yaitu kamera, kamera ini
berfungsi untuk mendeteksi gerakan tangan yang kemudian menghasilkan output berupa
huruf, pelayanan ini memudahkan bagi penyandang disabilitas maupun masyarakat umum
untuk mereka saling komunikasi. Pelayanan selanjutnya yaitu tutorial penggunaan aplikasi
hal ini agar memudahkan para pengguna dalam menggunakan aplikasi HARDISC. Aplikasi
ini masuk kedalam penerapan Artificial Intelligence (AI) dengan klasifikasi Computer
Vision (CV) yang ditunjukan untuk membantu masyarakat secara nyata. Aplikasi ini
menggunakan model Transfer Learning Inception ResNetV2 dan VGG16 dengan hasil
yang cukup memuaskan dengan perolehan evaluasi sebesar 98.98% dan nilai loss sebesar
0,0417 pada Inception ResNetV2 dan pada perolehan evaluasi VGG16 menghasilkan nilai
evaluasi sebesar 99.40% dan nilai loss sebesar 0.0146. Sehingga model sudah dapat
dikatakan bekerja dengan baik. Setalah model di deployment ke dalam android dapat
bejalan dengan baik pada spesifikasi minimal android kitkat4 maksimal android 12
Kata kunci : HARDISC, Disabilitas, Artificial Intelligence (AI), Computer Vision (CV)
Pendahuluan
Komunikasi merupakan hal terpenting dalam kehidupan sosial dan masyarakat.
Komunikasi digunakan untuk menyampaikan informasi dari orang ke orang lain
ataupun dari orang ke grub atau komunitas. Tidak semua manusia memiliki
kemampuan berkomunikasi yang sempurna dengan orang lain seperti tunarungu
dan tunawicara. Lebih dari 5% populasi dunia atau 430 juta orang memerlukan alat
bantu untuk mengatasi gangguan pendengaran atau tunarungu (432 juta orang
dewasa dan 34 juta anak-anak). Diperkirakan pada tahun 2050 lebih dari 700 juta
orang atau satu dari setiap sepuluh orang akan mengalami tunarungu dan
tunawicara (WHO, 2021).
Kurangnya pengenalan bahasa isyarat bagi masyarakat umum membuat
penyandang tunarungu dan tunawicara kesulitan berkomunikasi serta kurang
percaya diri dalam bermasyarakat (Solikhatun, 2013) sehingga diperlukannya
aplikasi yang dapat membantu mereka berkomunikasi tidak hanya itu aplikasi ini
harus memberikan edukasi mendasar kepada masyarakat umum. Seperti proyek
aplikasi penulis yaitu “aplikasi “hardisc” pendeteksi bahasa isyarat untuk
mempermudah tuna wicara dan tuna rungu dalam berkomunikasi berbasis teknologi
computer vision”. HARDISC merupakan aplikasi berbasis android yang
menawarkan sistem pengenalan huruf dengan mendeteksi gerakan tangan
menggunakan kamera. memberikan 1 pelayanan dasar dan 1 pelayanan tambahan
yaitu kamera, kamera ini berfungsi untuk mendeteksi gerakan tangan yang
kemudian menghasilkan output berupa huruf, pelayanan ini memudahkan bagi
penyandang disabilitas maupun masyarakat umum untuk mereka saling
komunikasi. Pelayanan selanjutnya yaitu tutorial penggunaan aplikasi hal ini agar
memudahkan para pengguna dalam menggunakan aplikasi HARDISC
Dengan sistem yang terdapat pada aplikasi HARDISC akan memudahkan
para pengguna dalam berkomunikasi dengan satu sama lain. Pembuatan aplikasi
HARDISC menggunakan model transfer learning InceptionResNetV2 dan
VCG16.
Metode
Tahapan pembuatan aplikasi HARDISC sebagai berikut:
Diagram Alir Project Akhir
Analisa
Masalah dan
Solusi
Data
Acquisition
Data
Augmentasi
Data
Preprosessing
Evaluasi
Deployment
❖ InceptionResNetV2
1. Tahap persiapan InceptionResNetV2 untuk transfer learning
2. Penambahan fully connected layers di akhir jaringan InceptionResNetV2.
● Arsitektur model setelah ditambahkan fully connected layers
menjadi base model InceptionResNetV2,
● GlobalAveragePooling2D untuk mengoprasi pooling
● Flatten untuk fungsi flattening
● Layer Dense 1 dengan 512 layers, dengan aktivasi relu,
● Untuk mencegah terjadinya overfitting maka tambahkan Dropout
0.3.
● Layer dense 2 dengan ukuran fille 256 layers, dengan dilengkapi
aktivasi relu
● Untuk mencegah terjadinya overfitting kami menambahkan dropout
0.3 atau 30% dari hasil training
● Pada layer terakhir kami menggunakan layer dense dengan total 27
layers berdasarkan jumlah kelas dengan aktivasi softmax karena di
anggap cocok untuk Multiclass classification.
● Kemudian melakukan compile model dengan menggunakan loss
categorical_crossentropy, optimizer RMSproop learning rate
0.0001, dan metrik accuracy.
==============================================================
===
Total params: 55,261,947
Trainable params: 925,211
Non-trainable params: 54,336,736
______________________________________________________________
___
❖ VGG16
1. Persiapan VGG16 untuk transfer learning
2. Menambahankan set fully connected layers diakhir jaringan VGG16
● Arsitektur model setelah ditambahkan fully connected layers
menjadi base model VGG16
● Flatten untuk fungsi flattening
● Layer Dense 1 dengan 1024 layers, dengan aktivasi relu,
● Untuk mencegah terjadinya overfitting kami menambahkan Dropout
0.3 atau 30% dari hasil training
● Pada layer terakhir kami menggunakan layer dense dengan total 27
layers berdasarkan jumlah kelas dengan aktivasi softmax karena di
anggap cocok Multiclass classification.
● kemudian melakukan compile model dengan menggunakan loss
categorical_crossentropy, optimizer RMSprop learning rate 0,0001,
dan metirk accuracy.
Model: "sequential_1"
______________________________________________________
Layer (type) Output Shape Param #
==============================================================
===
vgg16 (Functional) (None, 8, 8, 512)
14714688
==============================================================
===
Total params: 48,297,819
Trainable params: 33,583,131
Non-trainable params: 14,714,688
______________________________________________________________
___
E. Evaluation
Pada tahap evaluasi kami menggunakan precision, recall, f-1 score, dan akurasi
serta menggunakan confusion matrix pada kedua model. Precision merupakan rasio
item yang relevan dipilih terhadap semua item yang terpilih. Untuk dapat
menghitung nilai precision dapat digunakan rumus sebagai berikut:
𝑇𝑃
𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 = × 100% (3.1)
(𝐹𝑃 + 𝑇𝑃)
Recall merupakan rasio item yang relevan dipilih terhadap jumlah total item relevan
yang tersedia. Untuk dapat menghitung nilai recall dapat digunakan rumus sebagai
berikut:
𝑇𝑃
𝑅𝑒𝑐𝑎𝑙𝑙 = × 100% (3.2)
(𝐹𝑁 + 𝑇𝑃)
F1 score merupakan perbandingan rata-rata nilai precision dan recall. Untuk dapat
menghitung nilai f1-score dapat digunakan rumus sebagai berikut:
𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 × 𝑅𝑒𝑐𝑎𝑙𝑙
𝑅𝑒𝑐𝑎𝑙𝑙 = 2 × 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 + 𝑅𝑒𝑐𝑎𝑙𝑙 (3.3)
F. Deployment
Tahapan ini bertujuan untuk mengakses dan menjalankan model yang sudah dibuat
dengan python, aplikasi dibuat untuk mempermudah penggunaan hasil model deep
learning dan diimplementasikan pada keseharian. Dalam Proyek ini menggunakan
android studio 2021, library yang digunakan openCVLibrary3413, database yang
digunakan MySQL firebase. Android studio adalah tools intergrated development
environment (IDE) resmi hasil kolaborasi antara google dan jetbrains yang dibuat
khusus untuk pengembangan aplikasi android (Dwiyankie et al., 2022). Aplikasi ini
ini bersifat open source atau gratis. Peluncuran Android Studio ini diumumkan oleh
Google pada 16 mei 2013 pada event Google I/O Conference untuk tahun 2013.
Sejak saat itu, Android Studio mengantikan Eclipse sebagai IDE resmi untuk
mengembangkan aplikasi Android (Andi, 2015). Android studio memiliki
komponen yang lengkap meliputi source code editor, compiler dan debugger.
Aplikasi ini dapat digunakan minimal android kitkat4 maksimal android 12.
Hasil dan Pembahasan
A. Hasil Permodelan InceptionResNet V2
Epoch 1/25
loss: 3.2522 - accuracy: 0.1097 - val_loss: 2.5205 val_accuracy: 0.4597
Epoch 2/25
loss: 2.5148 - accuracy: 0.3062 - val_loss: 1.6635 - val_accuracy: 0.7272
Epoch 3/25
loss: 1.9956 - accuracy: 0.4404 - val_loss: 1.1909 - val_accuracy: 0.7909
Epoch 4/25
loss: 1.5812 - accuracy: 0.5419 - val_loss: 0.8695 - val_accuracy: 0.8341
Epoch 5/25
loss: 1.2789 - accuracy: 0.6334 - val_loss: 0.6456 - val_accuracy: 0.8654
Epoch 6/25
loss: 1.0390 - accuracy: 0.7009 - val_loss: 0.4677 - val_accuracy: 0.8996
Epoch 7/25
loss: 0.8831 - accuracy: 0.7380 - val_loss: 0.4536 - val_accuracy: 0.8960
Epoch 8/25
loss: 0.7523 - accuracy: 0.7726 - val_loss: 0.3267 - val_accuracy: 0.9381
Epoch 9/25
loss: 0.6314 - accuracy: 0.8089 - val_loss: 0.3265 - val_accuracy: 0.9249
Epoch 10/25
loss: 0.5479 - accuracy: 0.8377 - val_loss: 0.2225 - val_accuracy: 0.9453
Epoch 11/25
loss: 0.4765 - accuracy: 0.8535 - val_loss: 0.2113 - val_accuracy: 0.9507
Epoch 12/25
loss: 0.4144 - accuracy: 0.8749 - val_loss: 0.1969 - val_accuracy: 0.9357
Epoch 13/25
loss: 0.3791 - accuracy: 0.8910 - val_loss: 0.1634 - val_accuracy: 0.9579
Epoch 14/25
val_accuracy: 0.9706
Epoch 15/25
loss: 0.3041 - accuracy: 0.9087 - val_loss: 0.1214 - val_accuracy: 0.9736
Epoch 16/25
loss: 0.2816 - accuracy: 0.9158 - val_loss: 0.1187 - val_accuracy: 0.9675
Epoch 17/25
loss: 0.2461 - accuracy: 0.9267 - val_loss: 0.1624 - val_accuracy: 0.9489
Epoch 18/25
212/212 [==============================] - ETA: 0s - loss:
0.2325 - accuracy: 0.9278
Epoch 18: val_loss improved from 0.11871 to 0.08344, saving model to
best_model_bisindo_inception.hdf5
212/212 [==============================] - 145s 684ms/step -
loss: 0.2325 - accuracy: 0.9278 - val_loss: 0.0834 - val_accuracy: 0.9784
Epoch 19/25
loss: 0.2176 - accuracy: 0.9300 - val_loss: 0.0559 - val_accuracy: 0.9910
Epoch 20/25
loss: 0.1976 - accuracy: 0.9386 - val_loss: 0.0676 - val_accuracy: 0.9886
Epoch 21/25
loss: 0.1842 - accuracy: 0.9423 - val_loss: 0.0517 - val_accuracy: 0.9844
Epoch 22/25
loss: 0.1655 - accuracy: 0.9520 - val_loss: 0.0751 - val_accuracy: 0.9802
Epoch 23/25
loss: 0.1631 - accuracy: 0.9504 - val_loss: 0.0705 - val_accuracy: 0.9814
Epoch 24/25
loss: 0.1454 - accuracy: 0.9572 - val_loss: 0.0488 - val_accuracy: 0.9826
Epoch 25/25
loss: 0.1368 - accuracy: 0.9572 - val_loss: 0.0420 - val_accuracy: 0.9898
213/213 [==============================] - 51s 238ms/step -
loss: 0.0580 - accuracy: 0.9838
53/53 [==============================] - 93s 2s/step - loss:
0.0418 - accuracy: 0.9898
[INFO] accuracy: 98.98%
[INFO] Loss: 0.041771784424781
Menunjukkan grafik dan tabel performa hasil akurasi dan loss dari arsitektur
Inception ResNetV2 dimana garis merah untuk data training dan garis biru
untuk data validasi. Hasil grafik dan tabel menunjukkan bahwa dari epoch 1
hingga epoch 25 menunjukkan hasil akurasi semakin meningkat dengan
perolehan nilai akurasi sebesar 98.98% dan hasil loss semakin rendah dengan
perolehan nilai loss sebesar 0.0417. Sehingga model sudah dapat dikatakan
bekerja dengan baik.
Menunjukkan grafik dan tabel performa hasil akurasi dan loss dari arsitektur
VGG16 dimana garis merah untuk data training dan garis biru untuk data validasi.
Hasil grafik dan tabel menunjukkan bahwa dari epoch 1 hingga epoch 25
menunjukkan hasil akurasi semakin meningkat dengan perolehan nilai akurasi
sebesar 99.40% dan hasil loss semakin rendah dengan perolehan nilai
Tampilan aplikasi
Kesimpulan
HARDISC merupakan aplikasi berbasis android yang menawarkan sistem
pengenalan huruf A hingga Z dengan mendeteksi gerakan isyarat tangan
menggunakan kamera. HARDISC memberikan 1 pelayanan dasar dan 1 pelayanan
tambahan yaitu kamera, kamera ini berfungsi untuk mendeteksi gerakan tangan
yang kemudian menghasilkan output berupa huruf, pelayanan ini memudahkan bagi
penyandang disabilitas maupun masyarakat umum untuk mereka saling
komunikasi. Pelayanan selanjutnya yaitu tutorial penggunaan aplikasi hal ini agar
memudahkan para pengguna dalam menggunakan aplikasi HARDISC. Hal ini
masih jarang di temukan di aplikasi lain.
Aplikasi HARDISC ditujukan untuk kepentingan sosial dan tidak berbayar
sehingga dapat diakses oleh siapapun dan dimanapun sebab tidak memerlukan data
seluler untuk mengaksesnya.
Daftar Pustaka
Andi, J. (2015) ‘Pembangunan Aplikasi Child Tracker Berbasis Assisted – Global
Positioning System ( A-GPS ) Dengan Platform Android’, Jurnal Ilmiah
Komputer dan Informatika (KOMPUTA), 1(1), pp. 1–8.
Dwiyankie, R. N. et al. (2022) ‘Pembuatan Aplikasi Penjualan Online Sederhana
Berbasis Mobile’, (May), pp. 0–10.
Kaggle.com (2021) ISLBISINDO1 | Kaggle, 2021. Available at:
https://www.kaggle.com/datasets/idhamozi/indonesian-sign-language-bisindo
(Accessed: 25 January 2023).
Rahmah, F. N. (2018) ‘Problematika Anak Tunarungu Dan Cara Mengatasinya’,
Quality, 6(1), p. 1. doi: 10.21043/quality.v6i1.5744.
Solikhatun, Y. U. (2013) ‘Penyesuaian Sosial Pada Penyandang Tunarungu di
SLB Negeri Semarang’, Educational Psychology Journal, 1(1), pp. 65–72.
WHO (2021) Deafness and hearing loss. Available at: https://www.who.int/news-
room/fact-sheets/detail/deafness-and-hearing-loss (Accessed: 24 January 2023).