29-35 29
ISSN. 1412-4785; e-ISSN. 2252-620X, Terakreditasi RISTEKDIKTI No. 36b/E/KPT/2016
DOI: 10.17529/jre.v17i1.16376
Abstrak—Pasien cacat fisik seperti kehilangan kaki atau mengalami kelumpuhan, akan mengalami kesulitan untuk
bergerak dari satu tempat ke tempat yang lain. Mereka membutuhkan seseorang atau perangkat yang dapat
membantu mereka. Salah satu yang sering digunakan oleh pasien adalah kursi roda. Tujuan utama penulisan
artikel ini adalah merancang sebuah sistem navigasi kursi roda elektrik yang dapat dikendalikan dengan perintah
suara menggunakan metode Convolutional Neural Network (CNN). CNN digunakan sebagai metode utama untuk
mengidentifikasi perintah yang akan ditanam pada mikrokontroler Raspberry Pi. Data suara direkam kemudian
dikonversi ke gambar spectrogram sebelum diumpankan ke CNN. Metode ini terbukti baik dalam pengenalan
perintah suara dengan akurasi diatas 90 %. Ada lima perintah suara yang berbeda, yaitu maju, mundur, kiri, kanan,
dan berhenti (stop). Hasil eksperimen awal menunjukkan bahwa kursi roda elektrik yang dirancang bergerak sesuai
dengan perintah yang diberikan.
Kata kunci: pasien, cacat fisik, kursi roda elektrik, convolutional neural network (cnn), raspberry pi
Abstract—Patients with physical disabilities, such as losing a leg or experiencing paralysis, will have difficulty
moving from one place to another. As a result, they need someone or a device that can help them to move. One that
is often used by patients is a wheelchair. This study proposes an electric wheelchair navigation system that can be
controlled by voice commands using the Convolutional Neural Network (CNN) method. CNN is used as the main
method for identifying commands embedded on the Raspberry Pi microcontroller. The recorded voice data is then
converted to spectrogram images before being fed to CNN. This method is proven to be better in voice command
recognition with an accuracy of above 90%. There are five different voice commands: forward, backward, left,
right, and stop. Preliminary experimental results indicate that the electric wheelchair is able to move according to
the commands given.
Keywords: patient, physical disabilities, electric wheelchair, convolutional neural network (cnn), raspberry pi
Copyright © 2021 Jurnal Rekayasa Elektrika. All right reserved
modul HM 2007 [6] sebagai modul suara, serta Artificial Pengaturan (setting) pada aplikasi sound recorder
Neural Network (ANN) yang beberapa diantaranya dalam pro ditunjukkan pada Gambar 1, Salah satu kelebihan
bentuk prototype [7]. Akan tetapi tingkat akurasi yang dari aplikasi ini adalah kemampuan perekaman secara
dihasilkan dari penelitian sebelumnya masih kurang baik terus menerus, sehingga lebih efisien dari segi waktu.
dan belum bisa membedakan perintah pada saat terdapat Perekaman dilakukan di ruang tenang dan tertutup dengan
noise di sekitar pengguna, dikarenakan dataset yang masing-masing sampel suara sebanyak 120 dan total
digunakan sebagai masukan pada sistem tanpa noise. Oleh data suara pada ruang tenang sebanyak 600 data. Untuk
sebab itu, dibutuhkan suatu metode yang lebih akurat wilayah perkantoran, pusat perbelanjaan, jalan raya dan
untuk mendapat hasil yang lebih baik. ruang publik masing-masing memiliki 600 data dengan
Salah satu poin utama dari penulisan artikel ini adalah total keseluruhan data yang direkam adalah 3.000 data
penggunaan metode yang masih jarang digunakan untuk suara.
navigasi kursi roda elektrik. Salah satu metode yang Setiap kata yang direkam akan memiliki ukuran dan
menjanjikan adalah Convolutional Neural Network durasi yang berbeda, oleh sebab itu untuk mempermudah
(CNN). Kontribusi utama dari artikel ini adalah penerapan proses selanjutnya, dibutuhkan proses penyamaan ukuran
metode CNN yang tertanam pada Raspberry Pi untuk setiap panjang durasi data suara dengan menggunakan
menafsirkan perintah suara dari pengguna. Kelebihan dari aplikasi sox-sound exchange. Proses ini disebut dengan
kursi roda ini adalah, selain memiliki tingkat akurasi yang trim dan padding. Pada intinya, file suara yang ada
baik, juga dapat mengenali perintah suara dengan tingkat tidak dikurangi bahkan noise-nya pun tidak dihilangkan
intonasi yang berbeda serta terhadap adanya noise . , melainkan suara hanya dipotong pada batas ambang
Kursi roda elektrik ini memiliki peranan penting dalam tertentu dengan tujuan untuk menghilangkan bagian yang
perkembangan masyarakat masa depan. Berdasarkan tidak diperlukan. Akan tetapi, pada tahapan ini perlu
kondisi ini, kursi roda elektrik menggunakan teknologi dilakukan proses denoising (menghilangkan noise) agar
identifikasi pengenalan suara dapat membantu pengguna model dapat berkerja pada lingkungan yang terdapat
secara langsung dan memudahkan dalam menggerakkan noise. Langkah pertama dari proses ini adalah file suara di-
kursi roda untuk memfasilitasi keterbatasan pasien trim ke depan selama 0.1 s, di-trim ke belakang selama 0.1
penyandang cacat fisik. Dalam sistem yang disajikan, s, audio file di-pad selama 2 s, kemudian potong menjadi
sistem pengenalan suara digunakan sebagai antarmuka 1 s. Dengan demikian, semua data suara akan memiliki
pengguna dalam mengoperasikan sistem. Pasien yang ukuran sama yaitu 32 KB dan durasi sama yakni 1 s. Data
secara khusus tidak bisa berjalan, diakibatkan oleh cacat yang sudah mengalami proses tersebut di atas, selanjutnya
atau lumpuh sehingga mereka harus menggunakan kursi disebut sebagai dataset.
roda untuk pekerjaan sehari-hari yang dapat berpindah
hanya menggunakan perintah suara mereka [8]. Dengan B. Short-time Fourier Transform (STFT)
sistem kontrol kursi roda elektrik ini, para pasien cacat fisik
akan menjadi lebih mudah dan mandiri. Sistem kontrol Sebelum diumpankan ke CNN, data suara harus
kursi roda elektrik ini menggunakan sistem pengenalan divisualisikan terlebih dahulu. Gambar 2 menunjukkan
suara untuk memicu dan mengendalikan semua gerakan hasil plot gelombang suara dari perintah kanan, kiri, maju,
kursi roda [9]. mundur, dan berhenti. Gelombang inilah yang nantinya
akan diubah terlebih dahulu menjadi gambar spectrogram.
II. Metode Metode pengenalan suara yang paling sering
digunakan adalah Mel Frequency Cepstrum Coefficients representasi dari perintah kanan, kiri, maju, mundur dan
(MFCC). Metode ini merupakan salah satu metode yang berhenti (stop). Secara umum arsitektur utama dari CNN
sering dipakai dalam bidang teknologi pengenalan suara terdiri dari input, feature learning layer, dan classification.
baik pada speaker recognition ataupun speech recognition. Model arsitektur dari metode CNN yang diusulkan
Pengenalan suara dapat dilakukan dengan cara melakukan pada penelitian ini terdiri dari input, 3 lapisan konvolusi,
feature extraction (ekstraksi fitur) yang merupakan 3 lapisan (layer) pooling, dan lapisan fully connected,
proses konversi sinyal suara/audio menjadi beberapa seperti yang ditunjukkan pada Gambar 4. Arsitektur
parameter [11], serta dengan menggunakan metode tersebut diperoleh setelah melalui beberapa percobaan.
spectrogram. Metode spectrogram merupakan hasil Model CNN dibuat menggunakan bahasa pemrograman
dari representasi sinyal audio dalam domain frekuensi. Python dengan Keras. Adapun ukuran citra masukan
Untuk menghasilkan spectrogram, pada penelitian ini dalam CNN dapat dinyatakan sebagai:
digunakan STFT yang berfungsi untuk mengonversi data w1 × h1 × d1 , (1)
mentah dari audio window atau sinyal suara menjadi
spectrogram. Spectrogram magnitude yang dihasilkan dimana w1 dan h1 secara berurutan merupakan lebar
kemudian dipetakan ke skala mel, sehingga diperoleh dan tinggi citra, sedangkan d1 adalah jumlah kanal Red
mel-spectrogram. Skala frekuensi ini berperan menekan Green Blue (RGB) yang mana dalam CNN sering disebut
frekuensi rendah di atas frekuensi tinggi, yang mirip depth atau kedalaman citra masukan. Input berupa
dengan kemampuan persepsi telinga manusia [12]. Hasil gambar spectrogram dengan ukuran 177 × 98 piksel yang
representasi dari sinyal suara menjadi gambar spectrogram merupakan channel RGB, batch size = 32. Selanjutnya
dengan menggunakan metode STFT ditunjukkan pada dilanjutkan pada konvolusi lapisan (layer) pertama
Gambar 3. Selanjutnya, spectrogram inilah yang akan dengan ukuran kernel 2 × 2 serta filter 64 layer, dengan
menjadi input pada CNN. aktivasi ReLU. Lapisan konvolusi ini merupakan salah
satu blok utama dari sebuah CNN, dikarenakan sebagian
C. CNN Classifier besar komputasi dilakukan pada blok ini. Sedangkan
2×2 merupakan bidang reseptif untuk setiap neuron dan
CNN adalah salah satu jenis jaringan saraf yang biasa menyatakan bahwa filter yang digunakan berukuran 2 ×
digunakan dalam pengolahan data citra [13]. CNN juga 2. Jumlah parameter pada konvolusi pertama yaitu 320.
dapat digunakan untuk mendeteksi dan mengenali objek Bidang reseptif tersebut akan ditelusuri secara tumpang
berupa gambar. CNN tidak jauh berbeda dari jaringan tindih parsial dimana setiap neuron akan berbagi bobot
saraf biasa yang terdiri dari neuron yang memiliki bobot, koneksi (weight sharing). Aktivasi ReLU digunakan
bias dan fungsi aktivasi. CNN termasuk dalam jenis deep untuk mengenalkan non-linearitas dan meningkatkan
neural network karena memiliki tingkat jaringan lebih representasi dari model. Aktivasi ini mengaplikasikan
banyak dan secara luas banyak diterapkan pada data citra. fungsi f(x) = max(0, x)[14] dan menggunakan stride = 1
Metode CNN memiliki dua tahapan, yaitu tahap klasifikasi dengan zero padding sebesar:
menggunakan feedforward dan tahap pembelajaran
menggunakan backpropagation. Cara kerja CNN memiliki
( F − 1)
P= , (2)
kesamaan dengan MLP, akan tetapi setiap neuron pada 2
CNN disajikan dalam bentuk dua dimensi. Berbeda halnya
dengan MLP, dimana setiap neuron hanya memilki satu
dimensi. Operator konvolusi digunakan untuk mengetahui
sinyal input yang berupa suara dan beberapa ekstraksi
gambar tambahan. Untuk pengklasifikasian CNN, terdapat
5 input berupa gambar spectrogram yang merupakan hasil
w2 × h2 ×d 2 , (3)
dimana:
( w1 − F + 2 P)
=w2 +1 (4)
S
Gambar 5. Blok diagram sistem navigasi kursi roda elektrik Gambar 6. Desain perangkat keras
Sutikno dkk.: Sistem Navigasi Kursi Roda Elektrik untuk Pasien Penyandang Cacat Fisik Menggunakan Metode 33
Convolutional Neural Network
yang sudah mengalami pelatihan sebelumnya ketika Lapisan kedua yaitu hidden layer, sering disebut sebagai
algoritma tersebut menemukan data baru yang belum lapisan tersembunyi, yang memungkinkan jaringan saraf
pernah dikenali sebelumnya. Hal ini sering disebut sebagai untuk menghitung fungsi yang tidak dapat dipisahkan
generalisasi. Hasil dari pelatihan tersebutdisebut sebagai secara linier. Lapisan terakhir yaitu output layer yang
model. Semakin banyak data training yang dijadikan memiliki prinsip kerja seperti hidden layer. Pada lapisan
sebagai data pelatihan, maka model yang dihasilkan ini peneliti menggunakan fungsi sigmoid dan Adam
semakin bagus terhadap pengenalan pola perintah suara. optimizer. Pada proses awal digunakan early stopping
Perbandingan antara data training dan data testing yang bertujuan untuk menghentikan proses training ketika
ditunjukkan pada Tabel 1. validasi akurasi menurun. Input shape yang digunakan
Pada ruang tenang, terdapat 600 data suara yang berukuran 177 × 98 dengan epoch sebanyak 30.[H1]
terdiri dari 120 perintah kanan, 120 kiri, 120 maju, 120 Tabel 2 merupakan hasil pengujian sistem usulan
mundur dan 120 stop. Dari masing-masing data 120 menggunakan metode ANN, terlihat bahwa dari epoch
tersebut, terbagi dua pertiga sebagai data training dan pertama hingga epoch ke 30 tidak ada perubahan yang
sepertiga data testing. Jadi tiap-tiap perintah suara ada 80 signifikan dengan akurasi yang diperoleh rata-rata 13.31
data training dan 40 data testing. Karena ada 5 macam % dan validasi akurasi 32.12 %, loss sebesar 50.28 % dan
perintah suara, maka total pada tiap lokasi yaitu 80 × 5 = validasi loss 65.07 %.
400 data training, dan 40 × 5 = 200 data testing. Begitu Tingkat akurasi dan loss sistem dengan menggunakan
pula dengan lokasi perkantoran, pusat perbelanjaan, jalan metode ANN secara berurutan ditunjukkan pada Gambar
raya, dan ruang publik, jumlah keseluruhan data training 7 dan Gambar 8 . Untuk tingkat akurasi sistem yang
sebanyak 2.000 dan data testing 1.000. dihasilkan menggunakan metode ANN tidak begitu bagus
B. Training dan Testing Data Tabel 2. Data pengujian menggunakan ANN
Pelaksanaan training dan testing data menggunakan Epoch Loss Val_Loss Accuracy Val_ Accuracy
tools google colab yang sudah menyediakan GPU gratis 1 52.07 % 75.66 % 13.37 % 32.71 %
untuk user sehingga mempermudah dan mempercepat 2 50.30 % 89.99 % 13.07 % 32.17 %
proses training yang terdiri dari 2.000 data training 3 59.25 % 89.13 % 13.14 % 32.40 %
yang akan diolah. Percobaan pertama peneliti mencoba 4 56.36 % 89.24 % 13.09 % 32.50 %
menggunakan Artificial Neural Network (ANN) dengan
5 54.65 % 79.51 % 13.91 % 32.54 %
menggunakan keras. Pada ANN terdapat beberapa lapisan,
6 53.82 % 78.38 % 13.37 % 32.12 %
yaitu lapisan pertama berupa lapisan input (input layer)
yang berfungsi menghubungkan jaringan pada sumber 7 52.90 % 78.16 % 13.06 % 32.88 %
data dan meneruskan data pada jaringan berikutnya. 8 52.65 % 78.12 % 13.14 % 32.67 %
9 52.39 % 78.02 % 13.09 % 32.58 %
Tabel 1. Perbandingan data training dan data testing 10 52.18 % 78.36 % 13.93 % 32.67 %
11 51.75 % 68.89 % 13.37 % 32.58 %
No Perintah Jumlah Data training Data testing
12 51.54 % 68.80 % 13.07 % 32.62 %
1 Kanan 600 400 200
13 51.48 % 67.89 % 13.14 % 32.79 %
2 Kiri 600 400 200
14 51.14 % 67.88 % 13.09 % 32.54 %
3 Maju 600 400 200
15 51.20 % 67.34 % 13.91 % 32.54 %
4 Mundur 600 400 200
16 51.13 % 67.14 % 13.37 % 32.33 %
5 Stop 600 400 200
17 51.38 % 67.40 % 13.27 % 32.29 %
Jumlah 3.000 2.000 1.000
18 51.01 % 67.53 % 13.14 % 32.58 %
19 51.10 % 67.66 % 13.99 % 32.04 %
20 51.16 % 68.81 % 13.22 % 32.79 %
21 50.90 % 66.16 % 13.07 % 32.83 %
22 50.90 % 66.67 % 13.01 % 32.62 %
23 50.90 % 66.07 % 13.14 % 32.23 %
24 50.78 % 65.37 % 13.09 % 32.22 %
25 50.93 % 65.81 % 13.91 % 32.12 %
26 50.81 % 65.75 % 13.37 % 32.12 %
27 50.85 % 65.97 % 13.07 % 32.12 %
28 50.78 % 65.04 % 13.14 % 32.12 %
29 50.70 % 65.40 % 13.09 % 32.12 %
Gambar 7. Akurasi dan validasi akurasi sistem menggunakan ANN 30 50.28 % 65.07 % 13.31 % 32.12 %
34 Jurnal Rekayasa Elektrika Vol. 17, No. 1, Maret 2021
karena pada fully connected layer dengan ANN tidak Hasil pengujian menggunakan metode CNN
cocok dalam memproses citra gambar. Hal ini diakibatkan ditunjukkan pada Tabel 3 dimana setiap epoch
oleh jumlah parameter yang sangat besar. Sebagai contoh menampilkan loss, validasi loss, akurasi, dan validasi
yaitu pada ANN yang digunakan, dengan input berukuran akurasi dengan jumlah epoch yang digunakan sebanyak 30.
177 × 98 dengan 128 neuron pada lapisan pertama Pada epoch pertama tingkat akurasi yang dihasilkan hanya
fully connected ANN, membutuhkan 177 × 98 × 128 = 23.71 %, pada epoch kedua dan seterusnya mengalami
2.220.416 dengan total parameter 2.254.085 yang harus peningkatan. Meskipun tidak semua mengalami kenaikan
dioptimasi pada layer pertama. Jika kita menambahkan dibandingkan dengan epoch sebelumnya, justru terdapat
layer maka secara otomatis jumlah parameter tersebut beberapa epoch yang lebih kecil. Tingkat akhir akurasi
akan bertambah pula, sehingga akan menyebabkan yang di peroleh menggunakan metode CNN ini adalah
overfitting. Dengan demikian dapat disimpulkan bahwa 91.25 % dan validasi akurasi 92.87 %, seperti ditunjukkan
metode ANN tidak cocok untuk digunakan sebagai metode pada Gambar 9.
image recognition. Solusi untuk mengatasi hal tersebut Pada Gambar 10, diperlihatkan hasil dari nilai loss
adalah dengan mengekstrak fitur dan menurunkan dimensi dan validasi loss sistem menggunakan metode CNN. Pada
tanpa menghilangkan karakteristik dari input yaitu dengan awal training, loss yang dihasilkan sangat besar, yaitu
menggunakan metode CNN. 51.23 % dengan validasi loss mencapai 64.55 %. Namun
pada epoch berikutnya nilai loss dan validasi loss-nya
semakin kecil hingga tercatat loss pada epoch 30 menjadi
5.65 % dengan validasi loss 10.45 %. Tingkat akurasi dan
loss pada CNN juga dipengaruhi oleh banyaknya data
yang digunakan dalam proses training dan juga algoritma [5] K. B. Rai, J. Thakur, and N. Rai, “Voice controlled wheel chair
using arduino,” Int. J. Sci. Technol. Manag., vol. 4, no. 6, pp.
yang dibangun. Setelah hasil training dan testing data
6–13, June 2015.
dilakukan, tahap selanjutnya adalah menyimpan model
yang sudah dibangun. Model tersebut kemudian di- [6] D. Aradhana, “Voice controlled smart wheel chair,” Int. J. Res.
Appl. Sci. Eng. Technol., vol. 8, no. 6, pp. 568–570, June 2020.
compile ke Raspberry Pi 3. Pada tahap ini, prosesnya tidak
terlalu rumit dikarenakan proses training sudah dilakukan [7] M. Jabardi, “Voice controlled smart electric-powered wheelchair
based on artificial neural network network,” Int. J. Adv. Res.
di-google colab, sehingga hanya model saja yang di- Comput. Sci., vol. 8, no. 5, pp. 31–37, June 2017.
upload para Raspberry Pi 3.
[8] H. Sharma, A. Gadhavi, P. Pandya, P. Methaniya, and P. Jadeja,
“Voice controlled wheel chair,” in Proc. National Conf. on
IV. Kesimpulan Emerging Trends, Challenges & Oppor. in Power Sector, March
2017, pp. 9–13.
Dalam studi ini, kami mengembangkan sebuah [9] J. A. Clark and R.B. Roemer, “Voice controlled wheelchair,”
sistem navigasi kursi roda menggunakan metode CNN Archives of Physical Medicine and Rehabilitation, vol. 58, no. 4,
yang dilengkapi dengan modul suara untuk penyandang pp. 169-175, Apr. 1977 .
cacat fisik. Kursi roda ini secara khusus dirancang untuk [10] M. Ilyas Malik, T. Bashir, M. Omar, and F. Khan, “Voice
mempermudah mereka dalam bergerak tanpa harus controlled wheel chair system,” Int. J. Comput. Sci. Mob.
menghabiskan banyak energi. Kami menggunakan Comput., vol. 6, no. 6, pp. 411–419, June 2017.
motor sebagai driver, modul mikrofon sebagai alat untuk [11] Z. Effendi, T. Erlina, and R. Aisuwarya, “Pengenalan suara
mengaktifkan suara dan Raspberry Pi 3 sebagai sistem menggunakan metode MFCC (Mel Frequency Cepstrum
kontrol. Kursi roda dapat bergerak sesuai dengan perintah Coefficients) dan DTW (Dynamic Time Warping) untuk sistem
penguncian pintu,” Semin. Nas. Teknol. Inf. dan Komun. Terap.
suara dengan tingkat akurasi diatas 90 %. Tingkat akurasi (SEMANTIK), June 2015, pp. 239–243.
dipengaruhi oleh jumlah dataset yang digunakan, serta
[12] P. Yenigalla, A. Kumar, S. Tripathi, C. Singh, S. Kar, and J. Vepa,
algoritma yang dipakai. “Speech emotion recognition using spectrogram & phoneme
embedding,” in Proc. Annu. Conf. Int. Speech Commun. Assoc.
Referensi INTERSPEECH, Sep. 2018, pp. 3688–3692.
[1] Chaidir, K. Anam, and Rahardi, “Lane tracking pada robot [13] Prabhu. (view Jan. 2021). Understanding of Convolutional Neural
beroda holonomic menggunakan pengolahan citra,” Jurnal Network (CNN)—Deep Learning [Online]. Available: https://
ELKOMNIKA, vol. 8, no. 1, pp. 69–79, Jan. 2020. medium.com/@RaghavPrabhu/understanding-of-convolutional-
neural-network-cnn-deep-learning-99760835f148.
[2] C. Joseph, S. Aswin, and J. Sanjeev Prasad, “Voice and gesture
controlled wheelchair,” in Proc. 3rd Int. Conf. Comput. Methodol. [14] J. Heaton, Artificial Intelligence for Humans Volume 3 : Deep
Commun. (ICCMC), August 2019, pp. 29–34. Learning and Neural Networks, 1st ed., vol. 3, Heaton Research:
Washington DC, 2015.
[3] P. Arie, “Inklusi penyandang disabilitas di Indonesia,” J. Refleks.
Huk., vol. 1, pp. 1–4, 2017. [15] S. Albelwi and A. Mahmood, “A framework for designing the
architectures of deep convolutional neural networks,” Entropy,
[4] R. Chauhan, Y. Jain, H. Agarwal, and A. Patil, “Study of vol. 19, no. 6, May 2017.
implementation of voice controlled wheelchair,” in Proc. 3rd
Int. Conf. Adv. Comput. Commun. Syst. (ICACCS),, Oct. 2016,
pp. 1–4.