## IMPLEMETASI OFFLINE PENGENALAN SISTEM ISYARAT BAHASA INDONESIA MENGGUNAKAN METODE
DYNAMIC TIME WARPING PADA PERANGKAT ANDROID
Mohammad Iqbal Program Studi Teknik Elektro Fakultas Teknik, Universitas Muria Kudus Email: iqbal.umk@gmail.com

## Endang Supriyati
Program Studi Teknik Informatika Fakultas Teknik, Universitas Muria Kudus Email: esupriyati@gmail.com

## Tri Listyorini
Program Studi Teknik Informatika Fakultas Teknik, Universitas Muria Kudus Email: trilistyorini.ti.umk@gmail.com

## ABSTRAK
Algoritma Dynamic Time Warping (DTW) digunakan secara luas untuk berbagai penelitian, salah satunya di bidang bahasa isyarat. DTW adalah algoritma pencocokan pola ( template matching )  untuk mengukur kemiripan dua  data  sekuensial  ( time  series )  temporal  yang  berbeda  waktu  dan  kecepatan.    Pada  penelitian  ini  disajikan implementasi algoritma DTW untuk pengenalan bahasa isyarat  Indonesia (Sistem  Isyarat  Bahasa  Indonesia  – SIBI) secara offline . Dataset yang digunakan dalam penelitian ini sebanyak 900 data untuk dengan jumlah kelas 50 kata  isyarat,  yaitu  dengan  rincian  untuk  masing-masing  kelas  adalah  3  data  sebagai  data template dan  15  data sebagai data testing . Hasil pengujian menunjukkan bahwa tingkat pengenalan atau nilai accuracy adalah 89,73%. Waktu  rata-rata  yang  dibutuhkan  adalah  654.59  milidetik  untuk  proses  pengenalan  satu  data testing dengan menggunakan template sebanyak 3 data per kelas atau total template 150 data.
Kata kunci: pengenalan, offline, SIBI, bahasa isyarat Indonesia, android.

## ABSTRACT
Algorithm Dynamic Time Warping (DTW) is used widely to various studies, one in the field of sign language. DTW is template matching algorithm to measure the similarity of the two data sequential (time series) with different time and speed. In this study are presented DTW algorithm implementation for the offline  recognition  of  Indonesia  sign  language  (Sistem  Isyarat  Bahasa  Indonesia  –  SIBI).  The  dataset used in this study were 900 data for the number of grade 50 cue words, with details for each class is 3 the data  as a  data  template  and 15  of data  as  a  data  testing. The  results  show  that  the  recognition  rate  or accuracy  value  is  89.73%.  The  average  time  needed  is  654.59  milliseconds  for  the  introduction  of  the testing of data using a data template as much as 3 per class or template total of 150 data.
Keywords: recognition, offline, SIBI, Indonesia sign language, android

## 1. PENDAHULUAN
Telah banyak penelitian dengan menggunakan algoritma DTW ( Dynamic Time Warping ) yaitu pengenalan gesture [1], dengar cara menghitung jarak terdekat antara dua vektor ciri menggunakan DTW untuk memperbaiki akurasi  pengenalan.  Dengan  pendekatan  baru  ini  mampu  menunjukkan  kemampuan  yang  signifikan  dalam mengenali multiple gesture , mengidenfifikasikan awal dan akhir pada sekuen waktu. Performa kinerja lebih baik dibanding dengan DTW klasik. Pengenalan emosi manusia [2] seperti marah, senang, sedih dapat dikenali melalui gesture tubuh manusia. Metode  ini digunakan untuk analisis perilaku emosional berdasarkan  klasifikasi dari time series  dan  pada  model  yang  menyediakan  indikator  yang  menggambarkan  dinamika  gerak  isyarat  ekspresif. Pengenalan  aktifitas  manusia  [3]    penelitian  ini    fokus  untuk  mengenali  beberapa  tindakan  manusia  seperti melambaikan tangan, meninju, bertepuk tangan, dll. Untuk meningkatkan tingkat pengenalan , dilakukan pelacakan tubuh menggunakan kamera mendalam untuk memulihkan informasi bagian sendi tubuh manusia di dunia real 3D sistem  koordinat.  Kemudiani  membangun  vektor  fitur  dari  orientasi  bersama    time  series  yang  invarian  dengan ukuran  tubuh  manusia.  DTW  kemudian  diterapkan  pada  vektor  fitur  dihasilkan.  Model  transisi  perpindahan[4] algoritma  clustering  DTW  sebagai  ukuran  jarak  diusulkan  untuk  gerakan  pengelompokan  transisi  antara  dua
isyarat, dan  kemudian algoritma  yang  sesuai disajikan  untuk pelatihan  model-model  gerakan transisi.  Algoritma pelatihan  dapat  membagi  secara  otomatis  transisi  gerakan  dengan  iterasi  bootstrap,  di  mana  algoritma  temporal digunakan  untuk  cluster  gerakan  transisi.  Percobaan  menunjukkan  bahwa  pengenalan  bahasa  isyarat berkesinambungan berdasarkan model gerakan transisi memiliki kinerja yang baik selama kosakata besar .
Pada penelitian ini disajikan implementasi algoritma DTW untuk pengenalan bahasa isyarat Indonesia secara offline . Dataset yang digunakan dalam penelitian ini sebanyak 900 data untuk dengan jumlah kelas 50 kata isyarat, yaitu  dengan  rincian  untuk  masing-masing  kelas  adalah  3  data  sebagai  data template dan  15  data  sebagai  data testing .
Pada  dasarnya  algoritma  DTW  adalah  algoritma  pemprograman  dinamis,  dengan  menggunakan update rekursif dengan cara  menjumlahkan jarak elemen  yang dipetakan dari setiap langkah rekursif. Perhitungan jarak antar  dua  elemen  sering  menggunakan  algoritma  jarak Euclidean ,  untuk  mencari  derajat  kemiripan  ( similiarity ) antara dua data sekuensial ( time series ), untuk panjang data yang sama. Tetapi untuk dua data sekuensial dengan panjang data yang yang berbeda, maka digunakan algoritma DTW.

## 2. METODOLOGI PENELITIAN
Blok  desain  sistem  pengenalan offline bahasa  isyarat  Indonesia  adalah  seperti  pada  gambar  1. Implementasi  secara offline pada perangkat android, dilakukan mulai dari pengolahan data file untuk mendapatkan ciri (proses ektraksi ciri), proses pencocokan pola sampai dengan mendapatkan hasil yang cocok dari data template .
Akusisi
Data Ekstraksi
Ciri
Ekstraksi Ciri Pencocokan Template File Data Uji Data Testing Data Template Template Yang cocok Piranti Akusisi Data Vektor Ciri Vektor Ciri
Gambar 1. Diagram Blok Desain Sistem Pengenalan Offline Bahasa Isyarat Indonesia [7]
Hasil  akusisi  data  disimpan  ke  dalam  bentuk file dan  dijadikan  sebagai  data  uji.  Data  uji  tersebut dibagi menjadi dua sebagai data testing dan data template , untuk kemudian dilakukan ekstraksi ciri untuk mendapatkan vektor ciri dan dilanjutkan dengan pencocokan template untuk mencari data template yang cocok dengan data testing , berdasarkan jarak terdekat menggunakan metode DTW.

## 2.1 Data Uji
Data uji yang digunakan pada penelitian ini adalah data uji yang didapatkan dengan  menggunakan piranti  akuisi  data  yang  digunakan  pada  penelitian[5][7].  Gerakan  isyarat  untuk  SIBI  yang  digunakan pada  penelitian  ini  adalah  mengacu  pada  kamus  isyarat  bahasa  Indonesia  dan  portal  i-chat  (http://i- chat.org). Kata isyarat yang dipilih adalah kata isyarat yang dengan satu tangan, yaitu tangan kanan. Data penelitian  berupa  data  kata  isyarat  yang  terdiri  dari  50  kelas  atau  jenis  kata  isyarat.  Total  data  uji  yang digunakan  sebagai  data template adalah  3  data  per  kelas  atau  total  150  data.  Sedangkan  data testing adalah 15 data per kelas atau total 750 data.

## 2.2 Ektraksi Ciri
Ekstraksi ciri ini merupakan salah satu bagian terpenting dan berpengaruh terhadap akurasi hasil pengenalan. Untuk data testing dan data template dilakukan ekstraksi ciri yang sama untuk mendapatkan vektor ciri. Vektor ciri merupakan  nilai-nilai  hasil  pengolahan  data-data flex dan  data accelerometer yang  kemudian  diatur  sedemikian rupa membentuk baris angka (nilai). Pada ekstraksi ciri ini dilakukan perhitungan mean , nilai simpangan baku, dan kuantisasi seperti pada penelitian [7]. Proses ekstraksi ciri ini akan  menghasilkan vektor ciri dengan panjang data yang tidak sama, meskipun pada data file untuk kelas yang sama. Gambar 2 menunjukkan blok diagram proses ekstraksi ciri.
Data sensor Data sensor Flex
Data Accelerometer Rata-rata u a ,u b ,u c ,u d ,u e
Simpangan Baku s a ,s b ,s c ,s d ,s e Akselarasi Aktual a x1 ,a x2 ,a x3 ,…,a xn a y1 ,a y2 ,a y3 ,…,a yn a z1 ,a z2 ,a z3 ,…,a zn
Kuantisasi
k x1 ,k x2 ,k x3 , …,k xn k y1 ,k y2 ,k y3 , …,k yn k z1 ,k z2 ,k z3 , …,k zn
Vektor Ciri
u a ,u b ,u c ,u d ,u e , s a ,s b ,s c ,s d ,s e , k x1 ,k y1 ,k z1 ,k x2 ,k y2 ,k z2 , k x3 ,k y3 ,k z3 , …, k xn ,k xn ,k xn
Gambar 2. Diagram Blok Desain Sistem Pengenalan Offline Bahasa Isyarat Indonesia [7]

## 2.3 Metode Pencocokan Pola Menggunakan DTW (Dynamic Time Warping)
Gerak  isyarat  merupakan  data  sekuensial.  Tiap  elemen  data  sekuensial  diukur  dan  disimpan  pada satu  periode  waktu  yang  tetap  antara  elemen  satu  dengan  yang  berikutnya.  Salah  satu  metode  untuk membandingkan  dua  data  sekunesial  dengan  panjang  yang  berbeda  adalah  dengan  algoritma Dynamic Time Warping (DTW).
DTW  merupakan  algoritma  yang  digunakan  untuk  mengukur  kemiripan  antara  dua  sekuensial dengan panjang atau jumlah data yang berbeda. DTW mencocokkan dua sekuensial dengan menghitung tranformasi  temporal sehingga keduanya dapat diselaraskan ( aligned ).  Penyelarasan ( alignment ) adalah optimal jika  terukur jarak kumulatif terkecil antara dua sampel yang telah diselaraskan.
Jika  diasumsikan  terdapat  dua  data  sekuensial, Q dan C ,  dengan  panjang  masing-masing n dan m sebagaimana persamaan 1 dan persamaan 2,
Q = q 1 , q 2 , ..., q i , ..., q n (1)
C = c 1 , c 2 , ..., c j , ...., c m (2)
Maka untuk menyelaraskan ( align ) kedua sekuensial tersebut mengunakan DTW, dibentuk matriks m x n dengan elemen matriks ( i , j ) berupa nilai jarak d ( q i , c j ) antara dua titik q i dan, yaitu d ( q i , c j ) = ( q i – c j ) 2 . Setiap elemen matriks ( i,j ) berhubungan dengan penyelarasan ( alignment ) antara titik q i dan c j . Warping path  W merupakan  sekelompok  elemen  matriks  yang  berdampingan  yang  mendefinisikan  pemetaan antara Q dan C . Elemen ke- k dari W dirumuskan sebagai w k = ( i,j ) k , sehingga didapat persamaan 3.
W = w 1 , w 2 , ..., w k , ..., w K (3)
dengan: max(m,n)  K < m+n – 1
Sedangkan path didefinisikan  sebagai  jarak  kumulatif D(i,j) yaitu  jarak d ( q i , c j )  untuk  elemen tersebut  ditambah  dengan  minimum  dari  jarak  kumulatif  dari  elemen  bertetanggaan  ( adjacent ), sebagaimana persamaan 4.
D(i,j) = d ( q i , c j ) + min {D(i-1,j-1),D(i-1,j),D(i,j-1)
(4)
Setelah didapatkan  warping path yang optimal  maka jarak atau warping cost dihitung berdasarkan persamaan 5.
DTW( Q,C ) = min
(5)
  
     K k k w 1

## 2.4 Evaluasi Kinerja Sistem
Evaluasi  kinerja  implementasi offline pengenalan  pengenalan  bahasa  isyarata  indonesia  dengan bantuan confusion matrix , sebagaimana tabel 1.
Tabel 1. Confusion matrix dua kelas [8]
Instrumen  pengukuran  yang  digunakan  untuk  evaluasi  kinerja  sistem,  yang  dihitung  dengan berdasarkan data yang tercantun pada confusion matrix adalah accuracy dan sensitivity atau TPR ( True Positive  Ratio ). Accuracy digunakan  untuk  mengukur  kinerja  sistem  secara  keseluruhan  sedangkan sensitivty digunakan untuk mengukur kinerja sistem tiap kelas.
Selain  evaluasi  kinerja  sistem  menggunakan  instrumen  pengukuran  berdasar  confusion  matrix, digunakan juga pengukuran berdasarkan waktu yang dibutuhkan untuk tiap proses pengenalan.

## 3. HASIL DAN PEMBAHASAN
Pengembangan  aplikasi  pada  perangkat  android  menggunakan  bahasa  pemrograman  android  dengan bantuan software adt-bundle-windows-x86_64-20131030 yang merupakan integrasi eclipse dengan ADT ( Android Development Tool ) sebagai tool pengembangan aplikasi berbasis android. Aplikasi android yang dikembangkan diberi nama SIBI Blue .
Tahap  pengembangan  aplikasi  pada  penelitian  ini  adalah  pembuatan  program  untuk  implementasi offline pengenalan sistem isyarat bahasa isyarat indonesia. Selain untuk mengetahui kebenaran penerapan metode  DTW,  juga  untuk  mengukur  atau  melakukan  evaluasi  kinerja  sistem.  Perangkat  android  yang digunakan  adalah  memiliki  spesifikasi Processor  Dual  Core  Snapdragon MSM8625  dengan  kecepatan akses hingga 1,2 Ghz,  dibekali dengan RAM 768 MB dan memori internal 4GB.
Proses pengenalan dilakukan secara offline , artinya menggunakan data yang tersimpan dalam bentuk file. File atau data offline ini didapatkan pada proses akuisisi data untuk penelitian sebelumnya. Metode pencocokan  pola  yang  digunakan  adalah  metode  menghitung  jarak  antara  dua  data  sekuensial menggunakan DTW. Proses pencocokan pola dilakukan dengan menghitung jarak DTW untuk satu data testing dengan semua data yang ada di template , dari data-data jarak yang diperoleh kemudian dicari jarak yang  paling  dekat.  Jika  data template yang  mempunyai  jarak  terdekat  dengan  data testing ,  maka  data template tersebut  akan  menjadi  data  yang  paling  cocok  dengan  data testing ,  sehingga  dapat  ditentukan kelasnya.
Pada gambar 3 menunjukkan hasil pengenalan kata ‘adik’. Pada gambar 3(a), file 001_adik_011.ibi dikenali  benar  oleh  sistem  sebagai  kata  ‘adik’  yaitu  sesuai  dengan    nilai  DTW  terkecil  =  1,6907903 terhadap  file  001_adik_002.ibi  yang  dijadikan  sebagai  salah  satu template nya.  Sedangkan  gambar  3(b), file  001_adik_015.ibi  dikenali  benar  oleh  sistem  sebagai  kata  ‘adik’  yaitu  sesuai  dengan    nilai  DTW terkecil = 2,9285197  terhadap file 001_adik_002.ibi yang dijadikan sebagai salah satu template nya.

## (a) (b)
Gambar 3. Tampilan Pada Pengenalan Kata Isyarat ‘adik’
Pada gambar 4 menunjukkan hasil pengenalan kata ‘ajak’. Pada gambar 4(a), file 002_ajak_016.ibi dikenali  benar  oleh  sistem  sebagai  kata  ‘ajak’  yaitu  sesuai  dengan    nilai  DTW  terkecil  =  2,4316094 terhadap  file  002_ajak_003.ibi  yang  dijadikan  sebagai  salah  satu template nya.  Sedangkan  gambar  4(b), file  002_ajak_020.ibi    dikenali  benar  oleh  sistem  sebagai  kata  ‘ajak’  yaitu  sesuai  dengan    nilai  DTW terkecil = 2,9661014 terhadap file 002_ajak_003.ibi yang dijadikan sebagai salah satu template nya.
(a) (b)
Gambar 4. Tampilan Pada Pengenalan Kata Isyarat ‘ajak
Pada  gambar  5  menunjukkan  hasil  pengenalan  kata  ‘ambil’  dan  kata  ‘apel’  sebagai  contoh  hasil pengenalan yang salah oleh sistem. Pada gambar 5(a), file 004_ambil_023.ibi  dikenali salah oleh sistem sebagai kata ‘adik’ yaitu sesuai dengan  nilai DTW terkecil = 4,9645243 terhadap file 001_adik_003.ibi yang  dijadikan  sebagai  salah  satu template nya.  Sedangkan  gambar  5(b),  file  005_apel_011.ibi    dikenali salah oleh sistem sebagai kata ‘harus’ yaitu sesuai dengan  nilai DTW terkecil = 3,995636  terhadap file 014_harus_002.ibi yang dijadikan sebagai salah satu template nya.
(a) (b)
Gambar 5. Tampilan Pada Pengenalan Kata Isyarat ‘ambil’ Dan ‘apel’
Hasil lengkap untuk pengenalan offline untuk 750 data testing sebagaimana diperlihatkan pada tabel 3. Berdasarkan kelasnya, nampak pada tabel bahwa 25 kata isyarat dapat dikenali sesuai kelasnya, yaitu ditunjukkan dengan nilai sensitivity sebesar 100%.  Meskipun demikian terdapat satu kata isyarat dengan nilai  sensitivy  sebesar  33%  yaitu  untuk  kata  isyarat  ‘maaf’.  Pada  data  yang  lebih  detail  pada  tabel  2, ternyata  kata  isyarat  ‘maaf’  lebih  banyak  dikenali  sebagai  kata  isyarat  ‘kemarin’  dan  dua  di  antaranya dikenali sebagai kata ‘sopan’.
Tabel 2. Hasil detail kata isyarat ‘maaf’
No Nama file kata isyarat Dikenali sebagai DTW 1 026_maaf_011.ibi 026_maaf_002.ibi 3.037023 2 026_maaf_012.ibi 026_maaf_002.ibi 2.724542 3 026_maaf_013.ibi 021_kemarin_003.ibi  2.730529 4 026_maaf_014.ibi 021_kemarin_003.ibi  2.782734 5 026_maaf_015.ibi 021_kemarin_003.ibi  2.842935 6 026_maaf_016.ibi 041_sopan_003.ibi 2.639532 7 026_maaf_017.ibi 026_maaf_001.ibi 2.184742 8 026_maaf_018.ibi 021_kemarin_001.ibi  2.437264 9 026_maaf_019.ibi 021_kemarin_003.ibi  2.452122 10 026_maaf_020.ibi 021_kemarin_001.ibi  2.731976 11 026_maaf_021.ibi 041_sopan_003.ibi 2.932506 12 026_maaf_022.ibi 021_kemarin_003.ibi  2.815367 13 026_maaf_023.ibi 021_kemarin_001.ibi  2.206296 14 026_maaf_024.ibi 026_maaf_003.ibi 2.769988 15 026_maaf_025.ibi 026_maaf_001.ibi 1.483388
Tabel 3. Hasil pengenalan offline pengenalan sistem isyarat bahasa indonesia No Kata Isyarat True Positive (TP) Sensitivity Waktu Rata-rata(ms) 1 adik 15 100% 652 2 ajak 15 100% 715 3 akan 15 100% 744 4 ambil 14 93% 662 5 apel 14 93% 655 6 ayah 15 100% 938 7 belum 14 93% 666 8 buah 13 87% 806 9 cari 15 100% 839 10 dengar 15 100% 662 11 dia 15 100% 682 12 dulu 15 100% 712 13 gadis 13 87% 686 14 harus 13 87% 640 15 haus 15 100% 630 16 ibu 11 73% 663 17 ikan 15 100% 702 18 kakak 15 100% 643 19 kami 15 100% 706 20 kamu 15 100% 627 21 kemarin 11 73% 584 22 kita 14 93% 609 23 lihat 13 87% 653 24 lupa 14 93% 751 25 lusa 12 80% 570 26 maaf 5 33% 596 27 mandi 14 93% 618 28 masih 15 100% 619 29 milik 15 100% 705 30 minta 15 100% 581 31 minum 12 80% 578 32 obat 10 67% 628 33 pakai 13 87% 671 34 pandai 13 87% 682 35 saja 13 87% 606 36 sakit 15 100% 631 37 saya 15 100% 573 38 selesai 13 87% 582 39 senang 8 53% 565 40 siapa 15 100% 663 41 sopan 15 100% 565 42 sudah 15 100% 587 43 suka 12 80% 684 44 supaya 10 67% 668 45 teh 11 73% 521 46 telepon 15 100% 594 47 tidak 15 100% 621 48 topi 15 100% 605 49 untuk 15 100% 691 50 yang 8 53% 697 JUMLAH 673
Berdasarkan tabel 3, maka nilai accuracy atau tingkat pengenalan sistem adalah (673 * 100% / 750) =  89,73%.  Sedangakan  waktu  rata-rata  yang  diperlukan  untuk  tiap  proses  pengenalan  adalah  654.59 milidetik.

## 4. KESIMPULAN
1) Pengenalan Offline sistem isyarat bahasa indoneisia menggunakan 50 kelas atau jenis kata isyarat kata, dengan jumlah data template sebanyak 3 data, dan jumlah data testing sebanyak 750 data, mendapatkan nilai akurasi sebesar 89,73%.
2) Waktu  rata-rata  yang  dibutuhkan  adalah  654.59  milidetik  untuk  proses  pengenalan  satu  data testing dengan menggunakan template sebanyak 3 data per kelas atau total template 150 data.

## UCAPAN TERIMA KASIH
Penelitian  ini  didanai  oleh  DP2M  DIKTI  (Direktorat  Penelitian  dan  Pengabdian  Kepada  Masyarakat, Direktorat  Jenderal  Pendidikan  Tinggi)  melalui  Program  Desentralisasi  Penelitian  Hibah  Bersaing  Tahun  2015. Penulis mengucapkan terima kasih kepada DIKTI, Kopertis Wilayah VI dan Universitas Muria Kudus.

## DAFTAR PUSTAKA
[1] Reyes,M., Dominguez, G., and Escalera, S. (2011),  “Feature weighting in dynamic time warping for gesture recognition  in depth data”. In  Computer Vision Workshops (ICCV Workshops), 2011 IEEE International Conference on, pages 1182 –1188
[2] Ginevra  Castellano,  Santiago  D.  Villalba,  and  Antonio  Camurri,  (2007),  “Recognising  Human  Emotions from Body Movement and Gesture Dynamics”, ACII 2007, LNCS 4738, pp. 71–82, 2007. Springer-Verlag Berlin Heidelberg 2007
[3] Samsu  Sempena,    Nur  Ulfa  Maulidevi,  Peb  Ruswono  Aryan,(2011)  “Human  Action  Recognition  Using Dynamic Time Warping”, 2011 International Conference on Electrical Engineering and Informatics 17-19 July 2011, Bandung, Indonesia.
[4] Wen  Gao,  Gaolin  Fang,  Debin  Zhao,  Yiqiang  Chen,  (2015),  “Transition  Movement  Models  for  Large Vocabulary Continuous Sign Language Recognition”, DOI:  10.1109/AFGR.2004.1301591Source: IEEE Xplore
[5] Endang S, Mohammad Iqbal, (2013), “Recognition System of Indonesia Sign Language based on Sensor and Artificial Neural Network”, Makara Seri Teknologi, 2013, 17(1): 25-31 DOI: 10.7454/mst.v17i1.1924
[6] Eamonn  Keogh  (2002 ).  Exact  indexing  of  dynamic  time  warping .  Proceedings  of  the  28 th VLDB Conference, Hong Kong, China
[7] Mohammad  Iqbal,  Endang  Supriyati  (2012),  “Ekstraksi  Ciri  pada  Pengenalan    Sistem    Isyarat Bahasa Indonesia Berbasis Sensor Flex dan Accelerometer”,  Seminar Nasional Embedded System (SNES), 20 Septemer 2012, LIPI, Bandung
[8] https://en.wikipedia.org/wiki/Confusion_matrix