-
TRANSLASI BAHASA ISYARATJuniar Prima Rakhman1), Nana
Ramadijanti, S.Kom, M.Kom2), Edi Satriyanto S.Si, M.Si3)
Jurusan Teknik Informatika, PENS ITS SurabayaKampus ITS
Sukolilo, Surabaya 60111
081320445021E-mail : [email protected]
AbstrakMasyarakat tuna rungu pada umumnya menggunakan bahasa
isyarat sebagai alat komunikasi utamanya. Bahasa isyarat
mengutamakan komunikasi visual, pengguna bahasa ini menggunakan
orientasi, bentuk dan gerakan tangan, lengan, tubuh,serta expresi
wajah untuk mengungkapkan expresi mereka. Tetapi cara komunikasi
ini sering menyulitkan/membatasikomunikasi dengan orang lain yang
normal, karena perbedaan komunikasinya itu kurang dipahami oleh
lawankomunikasinya. Untuk mengatasi keterbatasan komunikasinya
tersebut diperlukan upaya penterjemahan bahasa isyaratmenjadi
lisan. Dengan demikian akan terjadi komunikasi yang lebih mudah
antar kaum tuna rungu dengan masyarakatumum.
Untuk menyelesaikan proyek akhir ini, digunakan kamera webcam
sebaga alat bantu untuk menangkap gambar daritangan pengguna.
Teknik yang digunakan adalah dengan menangkap posisi tangan,
mengekstrak bentuk dari tangantersebut, kemudian
mengklasifikasinya. Untuk mencari letak tangan dari setiap frame
yang dihasilkan, penulismenggunakan HaarClassifier yang sebelumnya
telah dilakukan training terlebih dahulu. Kemudian untuk
mengekstrakbentu tangan digunakan skin detection dan noise removal
yang kemudian dilanjutkan dengan thresholding dan
normalisasi.Setelah bentuk tangan ini didapatkan, maka gambar biner
bentuk tangan ini diklasifikasikan berdasarkan
kumpulangambar-gambar isyarat tangan yang digunakan sebagai data
training. Algoritma klasifikasi yang digunakan penulis
adalahalgoritma K Nearest Neigbors.
Sistem ini mampu mengenali 19 isyarat huruf tangan dari 26
isyarat yang ditargetkan. Rata-rata akurasi yangdihasilkan system
ini adalah 89.68%. Nilai akurasi ini dapat bervariasi tergantung
dari konsistensi data training dan noiseyang dihasilkan.Kata Kunci
: Skin detection, HaarClassifier, OpenCV, Machine Learning.
1. PendahuluanTeknologi komunikasi dengan perangkat komputer
telah maju pesat dan telah diterapkan dalam berbagaibidang atau
peralatan lain. Teknologi komunikasi tersebutantara lain yang
berkaitan dengan pengolahan danpenterjemahan citra atau isyarat
menjadi bahasa yangmudah dipahami oleh masyarakat umum,
ataupenterjemahan sinyal pada peralatan tertentu.
Misalnya,penggunaan teknologi tersebut dalam prinsip kerja
ataukonstruksi peralatan yang digunakan dalam bidangkeamanan,
medis, atau robotik. Teknologi (penerjemahancitra) tersebut sangat
mungkin dimanfaatkan untukmenyusun paket teknologi komunikasi
khusus untukmereka yang mempunyai keterbatasan fisik.
Karena kekurangan kondisi fisiknya, masyarakattuna rungu umumnya
menggunakan bahasa isyarat sebagai
alat komunikasi utamanya. Bahasa isyarat mengutamakankomunikasi
visual, pengguna bahasa ini menggunakanorientasi, bentuk dan
gerakan tangan, lengan, tubuh, sertaexpresi wajah untuk
mengungkapkan pikiran mereka.
Sama halnya dengan bahasa yang kita gunakanuntuk berbicara,
bahasa isyarat tidak bersifat universal.Bahasa isyarat unik dalam
jenisnya di setiap negara. UntukIndonesia, sistem yang sekarang
umum digunakan adalahSistem Isyarat Bahasa Indonesia (SIBI) yang
sama denganbahasa isyarat America (ASL - American Sign
Language).
Tetapi cara komunikasi tersebut seringmenyulitkan/membatasi
komunikasi dengan orang lainyang normal, karena perbedaan
komunikasinya itu kurangdapat difahami oleh masyarakat umum atau
lawankomunikasinya. Untuk mengatasi keterbatasan komunikasitersebut
diperlukan upaya penterjemahan bahasa isyarat(khusus yang digunakan
oleh tuna rungu) tersebut menjadibahasa yang umum atau mudah
difahami oranglain/normal. Dengan demikian akan terjadi
komunikasi
-
yang mudah antar masyarakat tuna rungu denganmasyarakat
umumnya.
Berkaitan dengan upaya tersebut di atas, maka akandikaji
penterjamahan bahasa isyarat menjadi bahasa tulissehingga
memungkinkan terjadinya komunikasi yangmudah antara kaum tuna rungu
dengan masyarakat yangkondisi fisiknya normal.
2. Model, Analisa, Desain dan Implementasi2.1 Dasar Teori2.1.1
Skin Color Detection
Untuk mengimplementasikan skin color detection,penulis
menggunakan metode peer model yang telahdimodifikasi. Adapun
pemodifikasian metode iniadalah dengan mendapatkan rata-rata dari
kulitmanusia dari berbagai macam ras mayoritas, dan jugadalam
kondisi yang berbeda-beda pula. Namunalangkah lebih baik jika
dilakukan normalisasisebelum dilakukan proses diatas. Berikut ini
adalahrumus hasil modifikasi dari metode peer model:
H = 48Figure 2.1 model peer modifikasi
2.1.2 Object DetectionMetode yang kami pakai untuk
mendeteksi
adanya obyek adalah HaarClassifier, yaitu metodeobject detection
yang membangun sebuah boostedrejection cascade, yang akan membuang
datatraining negative sehingga didapatkan suatukeputusan untuk
menentukan data positif. HaarClassifier adalah metode supervised
learning yaitumetode yang membutuhkan data training untukdapat
mendeteksi obyek-obyek tertentu. Untuk itu,dilakukan training data
terlebih dahulu sebelumakan menggunakan metode ini.
Gambar 2.1 Haar fiturTiga (3) tipe kotak(rectangular) fitur:-
Tipe two-rectangle feature- Tipe three-rectangle feature- Tipe
four-rectangle feature
Sedangkan untuk menghitung nilai darirectangle tersebut
digunakanlah Integral Image,adalah representasi tengah dari suatu
citra yangterdiri dari jumlah nilai keabu-abuan.
Figure 2.1 persamaan integral imageSetelah mendapatkan nilai
integral image,
langkah selanjutnya adalah mencari cascadeclassifier, adalah
sebuah rantai stage classifier,dimana setiap stage classifier
digunakan untukmendeteksi apakah didalam image subwindowterdapat
obyek yang diingikan (object of interest).
Gambar 2.2. Cascade Classifier
2.1.3 K Nearest Neighbors ClassifierAlgoritma k-nearest neighbor
(k-NN atau
KNN) adalah sebuah metode untukmelakukan klasifikasi terhadap
objek berdasarkan datapembelajaran yang jaraknya paling dekat
denganobjek tersebut.
Data pembelajaran diproyeksikan ke ruangberdimensi banyak,
dimana masing-masing dimensimerepresentasikan fitur dari data.
Ruang ini dibagimenjadi bagian-bagian berdasarkan klasifikasi
datapembelajaran. Sebuah titik pada ruang ini ditandaikelas c jika
kelas c merupakan klasifikasi yang palingbanyak ditemui pada k buah
tetangga terdekat titktersebut. Dekat atau jauhnya tetangga
biasanyadihitung berdasarkan jarak Euclidean.
r > 95 and g > 40 and b > 20 and max(r,g,b)-min(r,g,b)
> 15 and abs(r-g) > 15 and r > g and r> b and g > b
All Sub-
Window
Reject Sub-Window
FurtherProcessing
1 2 3 4
-
Pada fase pembelajaran, algoritma ini hanyamelakukan penyimpanan
vektor-vektor fitur danklasifikasi dari data pembelajaran. Pada
faseklasifikasi, fitur-fitur yang sama dihitung untuk datatest
(yang klasifikasinya tidak diketahui). Jarak darivektor yang baru
ini terhadap seluruh vektor datapembelajaran dihitung, dan sejumlah
k buah yangpaling dekat diambil. Titik yang baru
klasifikasinyadiprediksikan termasuk pada klasifikasi terbanyak
darititik-titik tersebut.
Ketepatan algoritma k-NN ini sangatdipengaruhi oleh ada atau
tidaknya fitur-fitur yangtidak relevan, atau jika bobot fitur
tersebut tidak setaradengan relevansinya terhadap klasifikasi.
Ketikajumlah data mendekati tak hingga, algoritma inimenjamin error
rate yang tidak lebih dari duakali Bayes error rate (error rate
minimum untukdistribusi data tertentu).
2.2 ImplementasiSebelum system diimplementasikan, terlebih
dahulu dibuat sistematika perancangan system
yangmerepresentasikan keseluruhan system agardidapatkan hasil yang
optimal. Berikut ini adalahblok diagram system kami:
Gambar 2.3 blok diagram systemBlok diagram diatas merupakan
keseluruhan
proses untuk mengimplemtasikan proyek akhir.Dimana setelah
gambar didapatkan dari kamera,proses yang pertama kali dilakukan
adalah deteksiwarna kulit. Kemudian dilakukan proses
filtering.Setelah didapatkan obyek yang dikehendaki, makalangkah
yang terakhir adalah menklasifikasi datatersebut.
2.3 Analisa
Pada pembahasan berikut ini berisi tentangpengujian perangkat
lunak. Pengujiana inidimaksudkan untuk melihat apakah perangkat
lunakyang telah dibuat sesuai dengan yang telahdirencanakan atau
belum. Pengujian dilakukandengan melalui beberapa tahap
secaraberkesinambungan. Pada pengujian ini yang pertamkali
dilakukan adalah pengujian bagian-bagian rutinyang telah dibuat,
kemudian dilakukan pengujianperangkat lunak secara keseluruhan.
Pengujian perangkat lunak ini bertujuan untukmengetahui hasil
dari perencanaan perangkat lunakyang telah dibuat, apakah sesuai
dengan yangdiharapkan, selain itu juga berfungsi untukmengetahui
kelemahan dari system yang ada.
Karena sebagai media untuk pengambilan gambarmenggunakan kamera,
maka factor cahaya sangatberperan penting dalam proses capture
gambar.
2.3.1 Skin DetectionBerikut ini adalah hasil pengujian deteksi
warna
kulit pada model RGB an HSV dengan sumbercahaya berbeda:
Original Skin RGB Skin HSV
30 FPS 23-24 FPS 12-13 FPSOriginal Skin RGB Skin HSV
20 FPS 18-19 FPS 11-12 FPSOriginal Skin RGB Skin HSV
13 FPS 11-12 FPS 10-11 FPS
Gambar 2.4 deteksi warna kulitDari hasil pengujian pada tabel
4.2, 4.3, dan 4.4
dapat kita lihat bahwa metode skin detection pada
Gambar darikamera
Skin detection
Preprocessing(Filtering)
FeatureClassification
Hasilterjemahan
-
HSV colorspace mempunyai konsistensi yang lebihbaik baik pada
linkungan dengan intensitas cahayayang rendah, cukup, maupun
tinggi..
2.3.2 Posisi TanganPengujian selanjutnya adalah pendeteksian
tangan
dengan posisi yang berbeda, tetapi menggunakanjarak yang sama
dan intensitas cahaya yang samapula. Berikut adalah tabel hasil
pengujian:Subyek Tegak 300 450 900 Terbalik
1 V V V X X2 V X X X X3 V V X X X4 V X X X X5 V X X X X6 V V X X
X7 V V X X X8 V V X X X9 V V X X X10 V X X X Xrata 100% 60% 10% 0%
0%
Tabel 2.2 deteksi tangan dengan posisi berbeda
Dari data diatas menunjukkan bahwa systempendeteksian tangan
yang dibuat hanya dapatdigunakan untuk mendeteksi tangan dalam
posisitegal, dan tidak berlaku untuk posisi yang lainnya.Hal ini
terjadi karena sesuai dengan data trainingyang kami pakai selama
training Haar Classifier.
(a) (b)
(c)Gambar 2.5 deteksi tangan dengan posisi berbeda,
(a) tegak, (b) 450, (c) 900
2.3.3Hal tersebut terjadi karena metode Haar
Classifier mencari classifier ke seluruh windowuntuk dideteksi,
sehingga hal tersebutmenyebabkkan program menjadi tidak begitu
cepat.Oleh karena itu, system ini hanya optimal jikamendeteksi
obyek dalam keadaan diam ataubergerak tetapi dalam keadaan
lambat.
2.3.4 JarakPengujian ini dilakukan dengan menggunakan
parameter jarak yang berbeda tetapi dengan jumlahcahaya yang
sama dan posisi telapak tangan yangsama. Berikut ini adalah hasil
pengujiannya:
Subyek 30 cm 50 cm 70 cm 90 cm 110 cm1 V V V V X2 V V X X X3 V V
V V X4 V V V V X5 V V V X X6 V V V X X7 V V V X X8 V V V X X9 V V V
X X10 V V V V X
Rata-rata 100% 100% 90% 40%
0%
Tabel 2.4 deteksi tangan terhadap jarakDari tabel diatas dapat
kita lihat bahwa jarak
optimal yang mampu dideteksi oleh system adalahjarak 30 cm
sampai dengan 70 cm. Hal ini terjadikarena pada saat training data
Haar Classifier, kamimenggunakan data tangan sebesar 20x25 pixel.
Jikaanda menginginkan pendeteksian tangan denganjarak yang lebih
jauh dari 1 meter, maka lebih baikkita menggunakan data tangan
sebesar 30x30 pixel.
(a) (b)
(c)Gambar 2.6 deteksi tangan dengan jarak berbeda,
(a) 30 cm, (b) 50 cm, (c) 70 cm
-
3. HasilApabila kondisi-kondisi seperti yang telah
dijelaskan pada bab sebelumnya terpenuhi, makatahap adalah
mengklasifikasinya. Pada pengujian akandiklasifikasi 19 isyarat
huruf yang dapat dibedakandengan mudah yaitu huruf A, B, C, D, F,
G, H, I, K, L,O, P, Q, R, U, V, W, X dan Y. Pengujian inidijalankan
oleh 10 orang dan setiap orang inimemberikan 10 isyarat tangan per
huruf. Jumlah datatraining yang digunakan adalah 100 data per huruf
dannilai variabel K yang digunakan adalah 32.
Gambar 3.3 Akurasi klasifiksi secara keseluruhan.
Dapat kita lihat bahwa pada beberapa hurufseperti huruf P, H, R,
dan U akurasi yang didapatkankurang dari 80%. Ini disebabkan oleh
beberapa faktoryaitu miripnya bentuk isyarat P dengan K dan Rdengan
U. Faktor lain yang mempengaruhi adalahkonsistensi datang training
yang dibuat, konsistensi inidipengaruhi oleh beberapa hal seperti
pencahayaandan noise yang bervariasi.
4. KesimpulanSetelah melaksanakan pengujian dan analisa pada
system Translasi Bahasa Isyarat, maka dapat diambilbeberapa
kesimpulan sebagai berikut:
Jarak maksimal yang masih mampu dideteksiadalah 90 cm,
selebihnya system tidak dapatmendeteksi adanya tangan.
Untuk mendapatkan hasil yang optimal dalampendeteksian tangan,
maka posisi tangan harusdalam keadaan tegak.
Metode modifikasi peer untuk mendeteksi warnakulit pada HSV
color model dapat mendeteksiwarna kulit dengan lebih baik dibanding
metode
modifikasi peer untuk mendeteksi warna kulit padaRGB color
model.
Tahap noise removal dan normalisasi sangat efektifuntuk
menghasilkan data training yang konsisten.
Algoritma KNN sebagai metode klasifikasi dapatmemberi akurasi
pendeteksian isyarat tangan yangcukup akurat. Ini ditunjukan oleh
akurasi sebesar89.68%.
Beberapa isyarat seperti huruf M, N, S, T, J dan Zbelum dapat
dideteksi karena sulit dibedakan danmenggunakan gerakan tangan.
Daftar Pustaka1. Open computer vision library.
Http://sourceforge.net/project/opencvlibrary/.2. Tom Cassey,
Tommy Chheng, Jefery Lien,Camera
Based Hand and Body Driven Interaction with VeryLarge Display,
ucsd lab, June 15, 2007.
3. Erdem Yoruk, Ender Konukoglu, Bulent Sankur,Jerome Darbon,
Shape-Based Hand Recognition,Bogazici Lab, July 2006.
4. Neo, Naotoshi. OpenCV Haar Training. 2007.5. Sun, Min. OpenCV
and face detection. 2006.6. Gary Bradski, Adrian Kaehler.
Learning
OpenCV. Oreilly teams Intel. 2005.7. Paul Viola and Michaels J.
Jones. Rapid Object
Detection using boosted Cascade of SimpleFeatures. IEEE CVPR,
2001.
8. Jure Kovac, Peter Peer and Franc Solina. HumanSkin Colour
Clustering For Face Detection.University of Ljubljana Faculty of
Computer andInformation Science. Slovenia.
9. Robin Hewitt. seeing with openCV part 2 Finding Face in
image. Jan, 2007.
10. Gary Agam. introduction to programming withOpenCV. 2006.