BAB II TINJAUAN PUSTAKA 2.1
Tinjauan Empiris Dalam tinjauan empiris ini akan menampilkan beberapa penelitian yang
telah dilakukan oleh peneliti sebelumnya mengenai metode dan hasil dari pengidentifikasian bahasa isyarat. Berikut adalah hasil dari penelitian yang dilakukan sebelumnya.
Nama
Tabel 2.1 Beberapa Hasil Penelitian Judul Metode Hasil
Nachmai Alphabet
Image
America sign language yang terdiri
Recognition of Processing, dari 26 huruf dan 10 entri alphabet American Sign Nearest
perulangan dengan perbedaan cahaya
Language
Neighbor
dan orientasi. 80% dari sampel uji
dan SIFT
digunakan untuk pelatihan dan 20% untuk pengujian. Hasil uji memberikan 100% akurasi dalam mengidentifikasi sampel uji untuk data set yang digunakan.
Atwod, J American Sign Euclidean dan Justin, F
Hasil tes adalah 99,2% tetapi jika user
Language
distance
tes tidak ada dalam data pelatihan,
Recognition
dan SIFT
maka akurasi pengenalan menurun
System
drastis menjadi 35-45%, karena user baru memiliki ukuran dan bentuk yang berbeda.
Ashwin, et al
Sign Language SIFT, Book Hasil memperlihatkan bahwa metode Recognition of word ini kuat terhadap kondisi cahaya using Scale Invarian Feature 1
Transform and (BOW) dan berbeda, jarak dan sudut pengambilan SVM SVM gambar
2
Asriani, F dan
Pengenalan
Isyarat Tangan syaraf
Susilawa Statis ti, H.
Jaringan
pada tiruan
Dari hasil pengujian ditetapkan bahwa jaringan syaraf tiruan dengan arsitektur 4096-75-15 merupakan jaringan yang
Sistem Isyarat
paling
optimal
Bahasa
pengenalan 69%.
dengan
tingkat
Indonesia berbasis Jaringan Syaraf Tiruan Perambat Balik Pradana, F.A
2.2
Pengenalan Huruf Isyarat menggunakan Modified KNearest Neighbor
Modified
Peneliti membandingkan KNN dan
K-Nearest
MKNN dimana hasil
Neighbor
memberikan
dan
maksimum sebesar 89,1% sementara
invariant
MKNN memperoleh tingkat akurasi
moment
sebesar 77,5%
tingkat
dari KNN akurasi
Tinjauan Teoritis
2.2.1 Bahasa Isyarat Bahasa isyarat merupakan bahasa yang mengutamakan komunikasi manual, yaitu menggunakan bahasa tubuh, tangan dan gerak bibir, bukan suara lisan. Kaum tunarungu adalah kelompok utama yang menggunakan bahasa ini, biasanya dengan mengkombinasikan bentuk tangan, orientasi dan gerak tangan, lengan, dan tubuh, serta ekspresi wajah untuk mengungkapkan pikiran mereka. Bahasa isyarat unik dalam jenisnya di setiap negara. Bahasa isyarat bisa saja berbeda di negara-negara yang berbahasa sama. Contohnya, Amerika Serikat dan Inggris meskipun memiliki
3
bahasa tertulis yang sama, memiliki bahasa isyarat yang sama sekali berbeda (American Sign Language dan British Sign Language). Untuk di negara Indonesia sendiri, sistem yang sekarang umum digunakan adalah Sistem Isyarat Bahasa Indonesia (SIBI) dimana sistem ini sama dengan bahasa isyarat yang diterapkan di Amerika (ASL - American Sign Language).
Gambar 2.1 Huruf SIBI yang mengacu pada ASL (Sumber: Pengenalan Bahasa Isyarat Menggunakan Metode PCA dan Haar Like Feature)
2.2.2 Citra Digital Citra digital adalah citra yang dinyatakan secara diskrit (tidak kontinu), baik untuk posisi koordinatnya maupun warnanya. Dengan demikian, citra digital dapat digambarkan sebagai suatu matriks, dimana indeks baris dan indeks kolom dari matriks menyatakan posisi suatu titik di dalam citra dan harga dari elemen matriks menyatakan warna citra pada titik tersebut. Dalam citra digital yang dinyatakan sebagai susunan matriks seperti ini, elemenβelemen matriks tadi disebut juga dengan istilah piksel yang berasal dari kata picture element (Sari,2010). Citra digital dapat didefinisikan sebagai fungsi dua variabel, f(x,y), di mana x dan y adalah koordinat spasial sedangkan nilai f(x,y) adalah intensitas citra pada koordinat tersebut, hal tersebut diilustrasikan pada gambar berikut:
4
Gambar 2.2 Citra Fungsi Dua Variabel Citra digital tersusun atas titik-titik yang biasanya berbentuk persegi panjang yang secara beraturan membentuk baris-baris dan kolom-kolom. Setiap titik memiliki koordinat dan biasanya dinyatakan dalam bilangan bulat positif, yaitu 0 atau 1 bergantung pada sistem yang digunakan. Format nilai pixel sama dengan format citra keseluruhan. Pada kebanyakan sistem pencitraan, nilai ini biasanya berupa bilangan bulat positif juga. Format citra digital yang banyak digunakan, yaitu: 1. Citra Biner (Monokrom) Citra monokrom atau citra hitam-putih merupakan citra satu kanal di mana citra f(x,y) merupakan fungsi tingkat keabuan dari hitam ke putih. 2. Citra Skala Keabuan (Gray Scale) Dikatakan format citra skala keabuan karena pada umumnya warna yang dipakai adalah warna hitam sebagai warna minimum dan warna putih sebagai warna maksimalnya, sehingga warna antara ke dua warna tersebut adalah abu-abu. 3. Citra Berwarna Citra warna terdiri atas 3 layer matriks, yaitu R-layer, G-layer, B-layer. sistem warna RGB menggunakan sistem tampilan grafik kualitas tinggi yaitu mode 24 bit. setiap komponen warna merah, hijau, biru masing-masing mendapatkan alokasi 8 bit untuk menampilkan warna. Pada sistem warna RGB, tiap pixel akan dinyatakan dalam 3 parameter dan bukan nomor warna. setiap warna mempunyai range nilai 00 (angka desimalnya adalah 0) dan f (angka desimalnya 255) atau 5
mempunyai nilai derajat keabuan 256 = 28. Dengan demikian, range warna yang digunakan adalah (28)(28)(28) = 224 (atau dikenal dengan istilah True Color pada Windows). Nilai warna yang digunakan merupakan gabungan warna cahaya merah, hijau dan biru.
2.2.3 SIFT (Scale Invariant Feature Transform) Pada tahun 1999, David G. Lowe seorang peneliti dari University of British Columbia memperkenalkan suatu metode baru dalam ekstrasi fitur dari suatu citra. Metode ekstrasi fitur ini disebut sebagai Scale Invariant Feature Transform (SIFT). Dengan mengunakan SIFT ini, suatu citra akan di ubah menjadi vector fitur lokal yang kemudian akan digunakan sebagai pendekatan dalam mendeteksi objek yang dimaksud. Sebagai metode ekstrasi fitur pada pengenalan objek, SIFT ini memiliki kelebihankelebihan sebagai berikut: a. Hasil ekstraksi fitur bersifat invarian terhadap ukuran, translasi dan rotasi dua dimensi. b. Hasil ekstrasi fitur bersifat invarian sebagian terhadap perubahan iluminasi dan perubahan sudut pandang tiga dimensi. c. Mampu mengekstrak banyak keypoint dari citra yang tipikal. d. Hasil ekstrasi fitur benar-benar mencirikan secara khusus (distinctive) Dengan kelebihan-kelebihan tersebut, penggunaan metode SIFT banyak dikembangkan untuk aplikasi pengenalan objek. Secara garis besar, algoritma yang digunakan pada metode SIFT terdiri dari empat tahap, yaitu: a. Mencari nilai ekstrim pada skala ruang b. Menentukan keypoint c. Penentuan Orientasi d. Deskriptor keypoint Setelah melalui tahapan tersebut maka akan diperoleh fitur-fitur lokal yang digunakan sebagai descriptor dari suatu objek untuk diolah lebih lanjut.
6
2.2.3.1 Pencarian Nilai Ekstrim pada Skala Ruang Pencarian nilai ekstrim pada skala ruang merupakan tahap awal dalam penentuan keypoint dari suatu citra. Dengan menggunakan fungsi Gaussian, citra pada skala ruang dapat didefinisikan sebagai fungsi πΏ(π₯, π¦, π), yang diperoleh dari hasil konvolusi skala variable Gaussian, πΊ(π₯, π¦, π), dengan citra masukan πΌ(π₯, π¦), sehingga diperoleh: πΏ(π₯, π¦, π) = πΊ(π₯, π¦, π) β πΌ(π₯, π¦) β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦.
(2.1)
Dimana * adalah operasi konvulasi antara π₯ dan π¦ dan πΊ(π₯, π¦, π) adalah skala variabel Gaussian: πΊ(π₯, π¦, π) =
1 2ππ2
π
β
(π₯2 +π¦2 ) 2 2 π
β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦.
(2.2)
Citra hasil Difference of Gaussian, π·(π₯, π¦, π), diperoleh dengan melakukan operasi konvolusi pada citra masukan dengan filter Difference of Gaussian, maka: π·(π₯, π¦, π) = (πΊ(π₯, π¦, ππ) β πΊ(π₯, π¦, π)) β πΌ(π₯, π¦) = πΏ(π₯, π¦, ππ) β πΏ(π₯, π¦, π) β¦β¦β¦.β¦β¦β¦β¦β¦β¦.
(2.3)
Dari persamaan (2.3) terlihat bahwa citra hasil Difference of Gaussian sebenarnya merupakan selisih antara citra hasil Gaussian blur dengan nilai skala k yang berbeda. Proses ini diilustrasikan pada Gambar 2.3
Gambar 2.3 Diagram Difference of Gaussian
7
Citra hasil konvolusi kemudian dikelompokkan berdasarkan octave (satu octave setara dengan penggandaan besarnya nilai π), nilai k ditetapkan di awal sehingga diperoleh jumlah citra kabur yang sama pada setiap octave serta diperoleh citra hasil DoG yang sama untuk setiap octave. Setelah diperoleh citra DoG pada setiap octave, maka langkah selanjutnya ialah mencari kandidat keypoint. Kandidat keypoint dideteksi sebagai titik maksimum lokal atau titik minimum lokal dari citra hasil DoG. Untuk mencari nilai maksimum atau minimum lokal maka masingmasing piksel pada citra hasil DoG akan di bandingkan dengan 8 piksel disekitarnya yang berada pada skala yang sama dan dengan 9 piksel yang bersesuaian dengannya pada skala berbeda (perhatikan Gambar 2.4). Jika piksel tersebut merupakan maksimum atau minimum lokal, maka piksel tersebut akan dijadikan sebagai kandidat keypoint.
Gambar 2.4 Ilustrasi pencarian maksimum atau minimum lokal dari citra DoG 2.2.3.2 Penentuan Keypoint Setelah kandidat keypoint ditemukan melalui tahapan pada 2.2.3.1, maka langkah selanjutnya adalah untuk mengambil detail dari kandidat keypoint tersebut. Detail yang diambil merupakan lokasi, skala dan rasio kelengkungan inti dari kandidat keypoint. Pada tahap ini akan terjadi pengurangan jumlah kandidat keypoint. Dimana setiap kandidat keypoint yang dianggap sangat rentan terhadap noise akan dihilangkan, yaitu kandidat keypoint yang memiliki nilai kontras yang rendah dan kandidat keypoint yang kurang jelas dan terletak di sepanjang tepi. Untuk menghilangkan keypoint dengan nilai kontras yang rendah, maka digunakan langkah-langkah berikut: 8
a.
Dengan menggunakan deret Taylor pada fungsi skala ruang π·(π₯, π¦, π) yang kemudian digeser sehingga titik asal berada pada titik sampel, sehingga: π·(π₯) = π· +
ππ· π ππ₯
1
π2 π·
π₯ + 2 π₯ π ππ₯ 2 π₯ β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦ (2.4)
Dimana D dan penurunannya dilihat dari titik sampel, dan π₯ = (π₯, π¦, π)π adalah offset dari titik ini. b.
Lokasi dari nilai ekstrim, π₯, diambil dengan menurunkan persamaan 2.4 terhadap π₯, sehingga: π₯Μ = β
c.
π2 π· β1 ππ· ππ₯ 2 ππ₯
β¦β¦...β¦β¦β¦β¦.β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦ (2.5)
Fungsi nilai ekstrim, π·(π₯Μ), diperoleh dengan mensubstitusikan persamaan 6.5 kepada persamaan 6.4 sehingga menghasilkan persamaan berikut : 1 ππ· π
π·(π₯Μ) = π· + 2
ππ₯
π₯Μ β¦β¦β¦β¦β¦.β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦ (2.6)
Pada SIFT ini, semua nilai ekstrim, π·(π₯Μ), yang bernilai kurang dari 0,03 akan dihilangkan. Untuk menghilangkan keypoint yang kurang jelas pada tepi maka digunakan persamaan berikut: ππ(π»)2
< π·ππ‘(π»)
(π+1)2 π
β¦β¦...β¦β¦β¦β¦.β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦ (2.7)
Dimana H merupakan matrix Hessian 2x2 dan r merupakan ambang batas dari kecekungan inti yang diperbolehkan. Pada SIFT ini, semua keypoint yang memiliki nilai r lebih besar dari 10 akan dihilangkan.
2.2.3.3 Penentuan Orientasi Pada tahap ini, masing-masing keypoint yang diperoleh akan diberikan suatu orientasi yang tetap berdasarkan sifat-sifat lokal pada citra. Dengan adanya proses ini maka keypoint yang diperoleh dapat dipresentasikan relatif terhadap orientasi ini sehingga keypoint yang dihasilkan tidak terpengaruh terhadap adanya rotasi pada citra. Untuk menentukan orientasi dari masingmasing keypoint maka dilakukan perhitungan terhadap besarnya gradien dan sudut arah orientasi. Adapun perhitungan terhadap besar nilai gradien, π(π₯, π¦), dan arah orientasi, π(π₯, π¦), dilakukan menggunakan persamaan berikut: π(π₯, π¦) = β(πΏ(π₯ + 1, π¦) β πΏ(π₯ β 1, π¦))2 + (πΏ(π₯, π¦ + 1) β πΏ(π₯, π¦ β 1))2... (2.8) 9
((πΏ(π₯,π¦+1)βπΏ(π₯,π¦β1))
π(π₯, π¦) = π‘ππβ1 (πΏ(π₯+1,π¦)βπΏ(π₯β1,π¦))) β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦.
(2.9)
2.2.3.4 Deskriptor Keypoint Pada proses ini, masing-masing keypoint yang telah diorientasikan akan diberikan pencirian khusus (deskriptor). Proses ini bertujuan untuk mendapatkan keypoint yang invarian terhadap perubahan intensitas cahaya atau perubahan sudut pandang tiga dimensi. Deskriptor akan diukur sebagai suatu histogram orientasi pada wilayah piksel dengan ukuran 4x4. Nilai orientasi diperoleh dari citra Gaussian yang memiiki skala terdekat dengan skala keypoint yang akan dihitung. Agar keypoint yang diperoleh invarian terhadap orientasi, maka koordinat dari deskriptor dan gradien orientasi akan di rotasi relatif terhadap orientasi dari keypoint. Kemudian fungsi pembebanan Gaussian, dengan besar nilai π satu setengah kali dari besar jendela deskriptor, akan digunakan sebagai pembebanan pada setiap besaran nilai dari titik sampel. Proses ini ditunjukkan pada lingkaran yang terdapat pada Gambar 2.5 sebelah kiri.
Gambar 2.5 Deskriptor dari perhitungan besar gradien dan orientasi serta gambar lingkaran Gaussian (kiri) dan gambar deskriptor keypoint (kanan) Deskriptor keypoint pada Gambar 2.5 menunjukkan adanya 8 arah pada masing-masing histogram orientasi dengan panjang masing-masing anak panah sesuai dengan besar nilai dari histogram asal. Selanjutnya deskriptor keypoint yang telah diperoleh akan dinormalisasi untuk mengatasi pengaruh perubahan cahaya.
10
Setelah melalui tahapan-tahapan tersebut, maka pada hasil akhir akan diperoleh suatu citra dengan keypoint yang invarian terhadap berbagai macam perubahan, seperti yang ditunjukkan pada gambar 2.6
Gambar 2.6 Keypoint yang diperoleh dari suatu citra menggunakan SIFT Keypoint ini yang kemudian menjadi fitur-fitur lokal pada suatu citra dan akan di cocokkan dengan keypoint-keypoint yang terdapat pada citra lain untuk menyesuaikan dengan objek yang tersedia pada data set training.
2.2.4 Android 2.2.4.1 Perkembangan Android Android adalah sebuah sistem operasi untuk perangkat mobile berbasis linux yang mencakup system operasi. Middleware dan aplikasi. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka. Android merupakan generasi baru platform mobile, platform yang memberikan pengembang untuk melakukan pengembangan sesuai dengan yang diharapkannya. Sistem operasi yang mendasari Android dilesensikan di bawah GNU, General Public license version 2 (GPLv2), yang sering dikenal dengan istilah βcopyleftβ lisensi dimana setiap perbaikan pihak ketiga harus terus jatuh di bawah terms. Android di distribusikan di bawah lisensi Apache Software (ASL/Apache2), yang memungkinkan untuk distribusi kedua dan seterusnya. Pengembang memiliki beberapa pilihan ketika membuat aplikasi yang berbasis android. Sebagian besar pengembang menggunakan Eclipse yang tesedia secara bebas. Eclipse adalah IDE 11
yang paling populer untuk pengembangan android, karena memiliki android plug-in yang tersedia untuk memfasilitasi pengembagan android. Selain itu, Eclipse juga mendapat dukungan langsung dari google untuk menjadi IDE pengembagan aplikasi android. Google Inc, Samsung, HTC, Qualcomm, Motorola dan lain-lain telah berkolaborasi dalam pengembangan Android melalui Open Handset Alliance, sebuah aliansi multinasional yang memimpin industri mobile dan teknologi. Aliansi ini bertujuan mendorong inovasi pada perangkat mobile dan memberikan konsumen pengalaman yang jauh lebih baik daripada apa yang tersedia pada platform mobile saat ini (Safaat Nazarudin, 2012).
2.2.4.2 Kelebihan Android Sudah banyak platform untuk perangkat selular saat ini, termasuk didalamnya Symbian, iPhone, Windows Mobile, BlackBerry, Java Mobile Edition, Linux Mobile (LiM0), dan banyak lagi. Namun ada beberapa hal yang menjadi kelebihan Android. Walaupun beberapa fitur-fitur yang ada telah muncul sebelumnya pada platform lain, Android adalah yang pertama menggabungkan hal seperti berikut: 1.
Keterbukaan, Bebas pengembangan tanpa dikenakan biaya terhadap system karena berbasiskan Linux dan open source. Pembuat perangkat menyukai hal ini karena dapat membangun platform yang sesuai yang diinginkan tanpa harus membayar royality. Sementara pengembang software menyukai karena Android dapat digunakan diperangkat manapun dan tanpa terikat oleh vendor manapun.
2.
Banyak dukungan service, kemudahan dalam menggunakan berbagai macam layanan pada aplikasi seperti penggunaan layanan pencarian lokasi, database SQL, browser dan penggunaan peta. Semua itu sudah tertanam pada Android sehingga memudahkan dalam pengembangan aplikasi.
3.
Dukungan grafis dan suarat terbaik, dengan adanya dukungan 2D grafis dan animasi yang diilhami oleh Flash menyatu dalam 3D menggunakan OpenGL memungkinkan membuat aplikasi maupun game yang berbeda.
4.
Portabilitas aplikasi, aplikasi dapat digunakan pada perangkat yang ada saat ini maupun yang akan datang. Semua program ditulis dengan menggunakan bahas pemrograman Java dan dieksekusi oleh mesin virtual Dalvik, sehingga kode program portabel antara ARM, 12
X86, dan arsitektur lainnya. Sama halnya dengan dukungan masukan seperti penggunaan Keyboard, layar sentuh, trackball dan resolusi layar semua dapat disesuaikan dengan program.
2.2.5 Metode Prototipe Prototipe sering disebut Rapid Application Design (RAD), karena pembuatan aplikasi dengan menggunakan metode ini menyederhanakan dan mempercepat desain perancangan sistem (Sudharyana, 2012). Menurut Ian Sommerville (1995), prinsip yang digunakan adalah untuk membantu pengguna dan pengembang mengerti kebutuhan sistem. Berikut adalah beberapa keuntungan menggunakan prototipe antara lain: 1. Pengembang menjadi lebih memahami kebutuhan pengguna. 2. Kekurangan fitur β fitur dapat terdeteksi. 3. Sistem kerja tersedia lebih awal. 4. Fitur β fitur yang membingungkan dapat didiskusikan. Dalam penelitiannya, Sudharyana, P (2012) menyatakan dalam pengembangan software, prototipe adalah proses untuk membuat versi awal untuk dievaluasi, sebelum menginvestasikan sumber daya lain.
13