1
Rancang Bangun Sistem Bantu Komunikasi Verbal Pada Pasien Penderita Stroke Berdasarkan Pergerakan Mata Aminudin, Ronny Mardiyanto, Djoko Purwanto. Jurusan Teknik Elektro, Fakultas Teknologi Industri, Institut Teknologi Sepuluh Nopember (ITS) Jl. Arief Rahman Hakim, Surabaya 60111 E-mail:
[email protected]
Abstrak— Kematian jaringan otak pada penderita stroke dapat menyebabkan gejala yang berupa kelemahan (impairment), keterbatasan kemampuan (disabilitas), bahkan suatu kecacatan (handycap) dalam aktifitas kesehariannya. Terapi yang intensif adalah cara yang tepat untuk pemulihan kondisi pasien penderita stroke ini. Untuk penderita stroke tertentu, hanya dapat berbaring di atas tempat tidur mereka sehingga cukup sulit dalam melakukan terapi motorik dan kognitif. Pada pasien dengan kondisi seperti ini, membutuhkan perlakuan yang khusus dalam usaha pemulihannya. Sampai saat ini, terus dikembangkan teknologi sebagai penunjang terapi penderita stroke tersebut. Salah satunya adalah teknologi untuk membantu penderita stroke untuk berkomunikasi dan bersosialisasi dengan sekitar. Dalam tugas akhir ini, dirancang sebuah sistem yang dapat membantu penderita stroke untuk melakukan komunikasi verbal. Sistem ini memungkinkan pasien penderita stroke untuk mengetikkan sesuatu dengan menggunakan pandangan mata mereka kemudian diucapkan oleh program pada komputer. Sistem ini dilakukan dengan cara memproses citra mata dan citra monitor untuk melakukan pengontrolan pointer pada layar monitor. Juga menggunakan software eye to speech, pengguna dapat mengetikkan tombol-tombol yang ada pada layar yang kemudian dirubah menjadi suara/bahasa verbal oleh Microsoft Speech SDK. Sistem ini dapat berfungsi dengan optimal dengan penerangan yang sesuai. Dengan menggunakan sistem ini, diharapkan penderita stroke dapat lebih terbantu dan dapat lebih menikmati aktifitas komunikasi dengan orang lain. Kata Kunci— Stroke, pandangan mata, pengolahan citra, eye to speech.
I. PENDAHULUAN
S
troke adalah suatu kondisi yang terjadi ketika pasokan darah ke otak tiba-tiba terganggu. Dalam jaringan otak, kurangnya aliran darah menyebabkan serangkaian reaksi biokimia yang dapat merusak atau mematikan sel-sel saraf di otak[8]. Kematian jaringan otak dapat menyebabkan hilangnya fungsi yang dikendalikan oleh jaringan itu. Gejalanya dapat berupa munculnya suatu kelemahan (impairment), keterbatasan kemampuan (disabilitas), bahkan suatu kecacatan (handycap) di dalam menjalankan aktifitas sehari-hari secara pribadi maupun sosial. Pada penderita stroke akut terkadang hanya bisa mendengarkan perkataan orang lain dengan berbaring tak berdaya di tempat tidur. Umumnya para penderita stroke merasa frustasi karena tidak dapat berkomunikasi dua arah dengan para penjenguknya. Dengan kondisi seperti ini, penderita stroke sangat terbatasi untuk bisa berkomunikasi
dengan pengunjungnya, padahal hal itu merupakan terapi yang terbaik untuk penderita stroke akut[8]. Pada tugas akhir ini dirancang sebuah sistem yang dapat membantu penderita stroke untuk dapat berkomunikasi dengan pengunjungnya untuk menunjang terapi mereka. Dengan memanfaatkan pergerakan mata dari penderita stroke, dapat dibuat sistem untuk menterjemahkan pergerakan mata tersebut menjadi kata-kata. Lebih lanjut, kata-kata ini akan direalisasikan ke dalam bahasa verbal agar dapat mengurangi keterbatasan tersebut sehingga para penderita stroke dapat menikmati aktifitas komunikasi dengan pengunjungnya. Menggunakan sistem yang dikembangkan dalam tugas akhir ini, seorang objek manusia penggunanya dapat melakukan pengontrolan posisi pointer menggunakan arah pandangan mata. Dengan demikian, seseorang dapat mengoperasikan fitur software eye to speech dengan gerakan matanya. II. TINJAUAN PUSTAKA A. Pupil Knowledge in The Gaze Estimation Mata harus terdeteksi terlebih dahulu untuk menganalisa pandangan mata. Metode yang umum digunakan deformable template ini mencocokkan bentuk umum pola mata pada citra. Metode ini kurang handal tapi dapat memproses dengan lebih cepat. Digunakan klasifikasi Viola-Jones ketika metode sebelumnya gagal. Hasil training dari banyak sampel citra mata dan wajah dipergunakan dalam Metode ViolaJones. Dengan OpenCV, dicari lokasi titik tengah wajah dan titik tengah mata pada citra. Untuk mendapatkan lokasi pupil yang akurat pada keadaan yang berbeda-beda digunakan, ditentukan nilai threshold (T) yang didapatkan dari rata-rata nilai pixel (µ) dari citra I. Dan menentukan nilai threshold 27% dibawah rata-rata.
(2.1)
Gambar 1 Noise dan percampuran yang muncul antara pupil dan kelopak mata[2].
(a) Mata terbuka jelas. (b) Ukuran dan bentuk pupil dan noise hampir sama. (c) Pupil menghilang jadi tidak ada pixel hitam yang terekstrak.
2 Hasil dari adaptif threshold dapat mendeteksi lokasi pupil ditandai sebuah lingkaran pada citra yaitu pada pixel hitam pupil seperti pada Gambar 1. Kondisi pengguna melihat ke arah kanan atau kiri membuat bentuk pupil berubah dan deteksi pupil sulit dilakukan. Digunakan lokasi pupil sebelumnya, yaitu dengan persamaan berikut, (2.2) Gambar (b) menampilkan lokasi pupil yang rasional P(t) masih berada di sekitar lokasi sebelumnya P(t-1) dengan area pencarian C . III. PERANCANGAN SISTEM
mendapatkan posisi kepala terhadap layar monitor. Dengan demikian, melalui perhitungan posisi mata dan posisi layar monitor, dapat ditentukan daerah arah pandangan mata pada layar monitor. Dalam mendapatkan titik pusat pupil, diperlukan suatu peningkatan kontras citra pupil dengan citra iris yang juga cenderung gelap pada mata penduduk Indonesia. Untuk itu, dilakukan sedikit modifikasi pada sensor kamera. Pada tugas akhir ini sensor kamera diberi tambahan Infra Red LED untuk mendapatkan pencahayaan sinar Infra Red pada objek mata yang diamati. Juga dengan melepas filter cahaya Infra Red pada sensor kamera tersebut, didapatkan peningkatan kontras yang signifikan pada citra yang didapat antara pupil dan iris seperti yang dapat dilihat pada Gambar 3[10].
Sistem yang dirancang pada tugas akhir ini dimaksudkan menjadi alat bantu komunikasi verbal bagi penderita stroke yaitu keterbatasan dalam komunikasi verbal dan keterbatasan gerak yang serupa. Untuk merealisasikannya dibutuhkan beberapa tahap. Gambar 3 (a) Citra mata pencahayaan normal, (b) Citra mata dengan pencahayaan Infra Red.
Dengan modifikasi kedua kamera yang dipasangkan pada sebuah kacamata tanpa lensa, maka eye tracker yang dipergunakan dalam tugas akhir ini dapat dilihat pada Gambar 4.
Gambar 4 Modifikasi Eye Tracker Gambar 2. Ilustrasi cara kerja sistem.
Cara kerja sistem secara keseluruhan antara lain adalah sebagai berikut: Kamera digital sebagai sensor visual menangkap citra mata dan citra layar monitor. Setelah komputer menerima citra, kedua citra tersebut akan diolah dengan pengolahan citra digital oleh CPU. Dalam CPU dibuat suatu program aplikasi Windows sebagai interface dengan objek manusia untuk menggunakan fitur virtual keyboard dan text to speech. Kemudian dari kata-kata yang diinputkan, dirubah dalam bentuk ucapan suara yang dikeluarkan melalui speaker. Program akan melakukan pendeteksian koordinat pupil mata dan keempat sudut layar monitor yang mempunyai pola persegi. Calibrasi camera dilakukan terlebih dahulu sebelum fitur pengetikan pada virtual keyboard dapat dijalankan untuk mengestimasikan arah pandangan mata. Setelah itu, fitur pengetikan menggunakan pandangan mata dapat dijalankan dengan konsep keyboard yang serupa dengan keypad pada handphone Setelah kata diketikkan, kata dapat dieksekusikan menjadi ucapan yang keluar melalui speaker A. Perancangan Hardware Eye Tracker Selain pemasangan sensor kamera untuk image mata, pada tugas akhir ini dipergunakan sebuah kamera lain untuk
Untuk menunjang pendeteksian sudut tepian dari layar monitor menggunakan sensor kamera, ditambahkan suatu marker warna pada bingkai monitor dengan warna yang cukup unik, dalam hal ini dipergunakan marker dengan warna ungu.
Gambar 5 Capture program eye tracking.
B. Perancangan Software Setelah mendapatkan kedua citra yaitu citra mata dan citra layar monitor, selajutnya akan diproses menggunakan software. Dalam perancangan software ini software dibagi dalam tiga bagian yaitu pengenalan pola citra digital, camera calibration, dan software eye to speech. Gambar 5
3 menunjukkan hasil capture program eye tracking yang digunakan dalam tugas akhir ini. 1) Pengenalan Pola Citra Layar Monitor Pada tugas akhir ini, didapatkan dua buah citra yaitu citra mata dan citra monitor. Dari kedua citra ini, diterapkan image pre-processing sehingga didapatkan koordinat titik pusat pupil mata dan keempat sudut layar monitor. Citra monitor yang didapatkan dari kamera yang digunakan adalah berukuran 640x480 pixel. Diagram alir dari algoritma prosedur pre-processing dan pengenalan pola citra layar monitor dapat dilihat pada Gambar 6.
Gambar 7 Diagram alir pengenalan pola citra mata.
Gambar 6 Diagram alir pengenalan pola citra layar monitor.
2) Pengenalan Pola Citra Mata Sedangkan untuk citra mata, tidak perlu dilakukan perubahan skala HSV karena hanya dibutuhkan suatu kontras yang signifikan untuk membedakan area pupil. Citra yang didapatkan dari kamera yang digunakan memiliki ukuran 480x360 pixel. Diagram alir dari algoritma prosedur pre-processing citra mata dapat dilihat pada Gambar 7. C. Camera Calibration Sebelum sistem benar-benar dapat dijalankan, objek pengguna haruslah terlebih dahulu melakukan camera calibration menggunakan eye tracker[13]. Proses ini mengkalibrasi dan kemudian dapat menghubungkan posisi arah pandangan mata dengan posisi kursor pada layar monitor. Pada inisisasi, dibutuhkan sebuah window baru sebesar layar monitor khusus untuk camera calibration. Screen ini terbagi dalam beberapa segmen yang nantinya setiap perpotongan segmen akan dijadikan titik acuan dalam camera calibration.
Gambar 8 Diagram alir camera calibration.
Diagram alir dari algoritma prosedur kalibrasi dapat dilihat pada Gambar 8. Dan dari proses yang dijelaskan di atas, didapatkan sekumpulan titik koordinat mata saat mengarahkan pandangannya pada beberapa titik kalibrasi pada layar monitor. Sekumpulan titik koordinat mata ini dijadikan referensi untuk mencari nilai rata-rata sumbu x kolom dan nilai rata-rata sumbu y baris pada setiap kolom dan baris titik-titik kalibrasi. Dengan informasi tersebut, kita berusaha untuk mengasosiasikan koordinat posisi pusat pupil mata dengan koordinat suatu posisi pada monitor. Posisi ini nantinya digunakan untuk menggerakkan pointer berdasarkan koordinat pupil. Dapat dinyatatakan koordinat pada mata ( merupakan fungsi dari koordinat titik koordinat pada layar ( (masih dengan asumsi kedudukan kepala tidak berubah). Maka dinotasikan sebagai berikut: (3.1) (3.2)
4 dengan asumsi fungsi tersebut adalah fungsi linier, maka untuk mendapatkan persamaan dari fungsi tersebut, perlu dicari nilai konstanta pengali weight dan dan konstanta awal koordinat mata dan dari masing-masing axis. Dengan persamaan linier umum yang dinotasikan sebagai berikut: (3.3) (3.4) Diambil dua sample dari hasil kalibrasi, yaitu 2 titik pojok kiri atas dan kanan bawah hasil dari rata-rata baris dan kolom seperti yang telah dijelaskan sebelumnya untuk dimasukkan dalam persamaan (3.3) di atas, pertama-tama untuk mencari parameter sumbu x. (3.5) (3.6) Maka dengan metode eliminasi,
(3.7) Dan substitusi,
(3.8) Begitu pula dengan sumbu y: (3.9) (3.10) Maka dengan metode eliminasi, Gambar 9 Diagram alir software eye to speech.
(3.11) Dan substitusi,
Diagram alir dari algoritma prosedur pre-processing dan pengenalan pola citra mata dapat dilihat pada Gambar 9 Pada tampilan Gambar 10 ini proses utama eye to speech dilakukan.
(3.12) Setelah didapatkan nilai keempat parameter tersebut dari program, proses pengontrolan posisi pointer dapat dilakukan dengan memasukkan dalam rumus (3.3) dan (3.4):
Maka dapat didapatkan koordinat posisi pointer : (3.13) (3.14) D. Software Eye to Speech Pada bagian ini akan dijelaskan mengenai program utama dari sistem ini yaitu program eye to speech. Dalam program eye to speech ini, dipergunakan fitur yang menyerupai keyboard virtual. Dalam tugas akhir ini, dipergunakan konsep keyboard virtual yang menyerupai keypad pada handphone disertai tombol “speak” untuk mengeksekusi kata-kata yang telah diketikkan ke dalam ucapan/ bahasa verbal.
Gambar 10 Capture keyboard virtual pada eye to speech.
Window pada Gambar 10 ini memuat sebuah keyboard virtual dan sebuah tampilan untuk menampilkan tulisan yang sedang diketikkan. Window ini memiliki 12 tombol yaitu 10 tombol untuk mengetikkan karakter, 1 tombol untuk menghapus satu karakter sebelumnya, dan 1 tombol untuk mengucapkan kata-kata yang telah dituliskan. Untuk menekan tombol ini, berdasarkan pandangan mata, pointer diarahkan pada salah satu tombol karakter dan mendiamkan pointer tersebut selama 10 sequence iterasi program. Jadi, untuk mengetikkan sebuah karakter pada
5 keyboard virtual ini, pengguna diharuskan untuk hanya sekedar memandang salah satu tombol karakter selama beberapa saat dan kemudian muncul pilihan tombol lain pada layar untuk pemilihan tombolnya. IV. PENGUJIAN DAN ANALISIS Pengujian yang dilakukan pada tugas akhir bertujuan untuk melihat respon dari metode yang digunakan pada sistem, beserta analisanya. Pengujian pada bab ini meliputi proses pengambilan data dari eye tracker yaitu koordinat titik pusat pupil dan koordinat posisi titik-titik sudut layar monitor, pengambilan data camera calibration, pengujian mouse pointer yang dikontrol pandangan mata, serta software eye to speech. A. Pengujian Software tahap Pengenalan Pola Citra Digital Pengujian ini dimaksudkan untuk mengetahui apakah setelah output dari tahap pengenalan pola citra digital yang memproses citra mata dan citra layar monitor dapat berhasil mengekstrak data koordinat posisi titik pusat mata dan koordinat titik-titik sudut layar monitor. Gambar 11 menunjukkan capture salah satu hasil pengujian tahap pengenalan pola citra digital. Dari hasil pengujian yang ditunjukkan pada Gambar 13, didapatkan koordinat titik pusat pupil mata dan koordinat keempat titik sudut layar monitor dari deteksi segi empat pada citra layar monitor (ditandai dengan bingkai warna hijau) yaitu: - Titik pusat pupil : 322,279 - Sudut kiri atas : 37,90 - Sudut kiri bawah : 47,408 - Sudut kanan atas : 535,80 - Sudut Kanan bawah : 527,405
- Didapatkan 4 koordinat titik hasil kalibrasi - Didapatkan nilai rata-rata koordinat x dan rata-rata koordinat y dari titik-titik tersebut pada setiap baris dan kolom - Didapatkan nilai konstanta awal dan weight elemen x dan elemen y yang akan dipergunakan untuk pengontrolan posisi pointer menggunakan arah pandangan mata. -
Gambar 12 tidak dipublikasikan
Gambar 12 Hasil pengujian camera calibration dengan 4 (2x2) titik.
Dengan keempat parameter ini, dapat dilakukan proses pengontrolan koordinat posisi pointer pada layar monitor berdasarkan koordinat posisi pusat pupil mata. C. Pengujian Mouse Pointer yang Dikontrol Pandangan Mata Pengujian dengan 4 titik kalibrasi ini merupakan pengembangan dari pengujian sebelumnya yang masih mempergunakan 12 titik kalibrasi. Dengan 4 titik kalibrasi, proses kalibrasi dapat berlangsung lebih cepat dan bisa mendapatkan nilai-nilai parameter kalibrasi dengan lebih presisi karena dapat menghindari pergerakan kedudukan kepala pada saat proses kalibrasi berlangsung. Hasil yang didapatkan sebagai berikut: Tabel 1 Pengujian pengontrolan posisi pointer x_screen 31 1231 31 1231
Gambar 11 tidak dipublikasikan
Gambar 11 Pengujian Software tahap Pengenalan Pola.
B. Camera calibration dengan 2x2 Titik Kalibrasi Dipergunakan proses kalibrasi dengan hanya 4 (2x2) titik. Dengan begitu, proses kalibrasi dapat berlangsung lebih cepat agar posisi kepala pada saat kalibrasi tidak banyak berubah. Dengan 4 titik saja juga masih dapat mendapatkan parameter-parameter yang dibutuhkan dalam proses normalisasi posisi mata dengan posisi pointer pada monitor. Parameter-parameter ini antara lain , , , dan . Dari pengujian tahap kalibrasi kali ini yang dapat dilihat dari Gambar 12, didapatkan hasil sebagai berikut:
y_screen x_eye y_eye x_pointer x_error y_pointer y_error 18
347
157
18 Tabel 300 1 tidak 149 728 728
243 191
144 144
23
8
27 dipublikasikan 1258
41
23
36,21 18,21
70
39
769
41
1250
19
733
5
Dari tabel 1 tersebut didapatkan nilai absolut error posisi hasil pengontrolan 19,35 pixel untuk sumbu x dan 22,59 pixel untuk sumbu y. Hal ini menunjukkan bahwa posisi pointer pada layar monitor cukup representatif pada arah pandangan mata. D. Pengujian Fitur Software Eye to Speech Ketika telah selesai melakukan pengetikan, tentunya yang dilakukan selanjutnya adalah mengeksekusi kata-kata tersebut ke dalam ucapan/ bahasa verbal. Dengan fitur inilah yang diharapkan dapat menjadikan alat ini agar dapat menjadi alat bantu untuk komunikasi bagi para penderita keterbatasan seperti penderita penyakit stroke, dan penyakit yang serupa. Untuk mengeksekusi kata-kata tersebut ke dalam ucapan/bahasa verbal dan mengaktifkan fitur text to speech yang disediakan oleh Microsoft Speech SDK, cukup dengan penekanan tombol speak pada keyboard virtual. Ucapan kata-kata akan keluar dengan segera melalui speaker PC seketika tombol “SPEAK” ditekan. Untuk saat ini, fitur text to speech ini masing menggunakan speech SDK dar
6 Microsoft yang masih hanya menyediakan suara dengan logat bahasa inggris. Tabel 2 Hasil pengujian software eye to speech. Jumlah karakter
Yang diketikkan
Waktu pengetikkan
communication tool aids
23 1.57.04
based on eye gaze
Tabel 2 tidak dipublikasikan
dalam detik
waktu/jumla h karakter
117
5,08
18 1.29.22
89
4,94
for disabled person
20 2.09.68
129
6,45
by electronics laboratory
26 2.18.88
138
5,30
Dari tabel 2 hasil percobaan di atas dari beberapa kali pengetikkan kata-kata, didapatkan rata-rata kecepatan pengetikkan karakter dalam software eye to speech adalah kisaran 4-6,5 detik. Dan dari 4 kali percobaan tersebut didapatkan rata-rata kecepatan pengetikan karakter adalah 5,44 detik per-karakter.
[8]
[9]
[10] [11]
[12]
[13]
[14]
V. KESIMPULAN Setelah dilakukan rangkaian kegiatan perancangan sistem dan pengujian alat penulis memperoleh kesimpulan sebagai berikut: a. Dengan pengolahan citra yang diterapkan dan jarak ±55 cm pada layar monitor, 99% eye tracker dapat mendeteksi posisi layar monitor dan koordinat titik pusat pupil.. b. Metode dengan 4 (2x2) titik kalibrasi dapat menurunkan 20% hasil percobaan dengan error lebih dari 53% dari koordinat mata daripada metode kalibrasi dengan 12 (4x3) titik. c. Sistem yang dirancang mampu melakukan pengontrolan posisi pointer untuk menjalankan fitur text to speech dengan error 7% sampai 10,3% dari ukuran tombol dengan tingkat kegagalan 20% akibat kesalahan kalibrasi yang menyebabkan didapatnya parameter perhitungan yang tidak valid atau perubahan posisi kepala yang menyebabkan pergeseran posisi pointer. d. Pergeseran 2 cm posisi kepala dan perubahan 2 derajat arah pandangan kepala dapat menyebabkan rata-rata error pengontrolan pointer sebesar 78,16% dan 229,67 % dari posisi pointer. e. Kecepatan rata-rata pengetikan pada text to speech sekitar 4-6,5 detik per karakter, dengan tingkat error pengetikan 8,04 %. f. Percobaan dengan beberapa pengguna yang berbeda untuk mengetikkan kata “hello” menggunakan software tersebut. Rata-rata kecepatan pengetikan karakter adalah 7,35 detik per karakter. DAFTAR PUSTAKA [1] [2]
[3] [4] [5] [6]
[7]
Arman, Arry Akhmad, Indonesian Text to Speech"
, May 2003. [2]Arai, Kohei and Mardiyanto, Ronny, "Eye-based HCI with full specification of mouse and keyboard using pupil knowledge in the gaze estimation. Saga University, 2011. [3]Bradski,G and Kaehler, A, "Learning OpenCV", O'Reilly Media Amerika Serikat, September 2008. [5]Efford, Nick. Digital Image Processing: A Practical Introduction Using JavaTM. Pearson Education, 2000. [9]Kuntz, Noah, "Affine Transform", , 2009. [10]Maragos, Petros, "Morphological Filtering For Image Enhancement and Feature Detection" The Image and Video Processing Handbook, 2nd edition, edited by A.C. Bovik, Elsevier Academic Press, 2005, pp.135-156, November 2004. [11]LC Technologies, Inc, "Eye Trackers"
[15] [16] [17]
, 2012. [12]Obat Stroke, "Penyebab Stroke" , 2010. [13]OpenCV Dev Team, "Camera Calibration With OpenCV", , June 2013. [15]Q-Branch, "The Eyewriter" , 2010. [16]Rahman, Abid, "Contours", , June 2012. [17]Rouse, Margaret, "Virtual Keyboard" , December 2006. [18]Szeliski, Richard, "Brightness and contrast adjustments" , Springer, September 2010. [19]Tejada, Pedro J., “A Computer Geometry Approach to Digital Image Contour Extraction”, Utah State University, 2009. [21]Universitas Sumatra Utara, "Teori Dasar Citra Digital", Medan, 2008. [22]Ahmad, U. (2005). Pengolahan Citra Digital dan Teknik Pemrogramannya. Yogyakarta: Graha Ilmu. [23] Vilis, Tutis, "Eye movement Tutorial" , 2010.
BIODATA PENULIS Aminudin dilahirkan di Surabaya 26 Juli 1991. Anak ketiga dari tiga bersaudara dari pasangan Nusri Faroch dan Mimik Alisah. Penulis menyelesaikan pendidikan dasar di SDN Medokan Ayu II Surabaya kemudian penulis menyelesaikan pendidikan menengah di SMP Negeri 35 Surabaya dan SMA Negeri 16 Surabaya. Pada tahun 2009, penulis memulai pendidikan di jurusan Teknik Elektro, Fakultas Teknologi Industri, Institut Teknologi Sepuluh Nopember (ITS) Surabaya. Selama kuliah penulis aktif membantu penyelenggaran kegiatan dan aktif sebagai asisten laboratorium Elektronika Dasar pada semester 2011-2013.