BAB 2
LANDASAN TEORI
Bab ini membahas tentang teori penunjang dan penelitian sebelumnya yang berhubungan
dengan penerapan metode Recurrent Neural Network untuk mengidentifikasi jenis tulisan Jepang huruf Katakana.
2.1 Citra
Citra secara harfiah, adalah gambar pada bidang dua dimensi dan disusun oleh banyak
piksel yang merupakan bagian terkecil dari citra. Pada umumnya, citra dibentuk dari
kotak-kotak persegi empat yang teratur sehingga jarak horizontal dan vertikal antara
piksel adalah sama pada seluruh bagian citra (Ldya, et al. 2010). Citra sebagai keluaran
dari suatu sistem perekaman data dapat bersifat :
1. optik berupa foto,
2. analog berupa sinyal video seperti gambar pada monitor televisi,
3. digital yang dapat langsung disimpan pada suatu pita magnetik.
Citra digital adalah representasi visual dari suatu objek setelah mengalami bebagai
transformasi data dari berbagai bentuk rangkaian numeric (Putra, 2012). Citra digital
1. Citra Biner
Citra biner adalah citra yang hanya mempunyai dua nilai derajat keabuan yaitu
hitam dan putih. Piksel-piksel objek bernilai 1 dan piksel-piksel latar belakang
bernilai 0. Piksel bernilai 0 ada pada warna putih dan piksel bernilai 1 ada pada
warna hitam pada saat menampilkan citra.
2. Citra Keabuan
Citra keabuan adalah citra yang disetiap piksel nya mengandung satu layer
dimana nilai instensitasnya berada pada nilai 0 (hitam) – 255 (putih). Untuk
menghitung citra keabuan digunakan rumus :
I (x,y) = α . R + β . G + y . B
dengan I(x,y) adalah level keabuan pada suatu koordinat yang diperoleh dengan mengatur warna R (merah), G (hijau), B (biru) yang ditunjukkan oleh nilai
parameter α, β dan γ. Secara umum nilai α, β dan γ adalah 0.33. Nilai yang lain
juga dapat diberikan untuk ketiga parameter tersbut asalkan total keseluruhannya
adalah 1 (Putra, 2009).
3. Citra warna
Citra warna adalah citra digital yang memiliki informasi warna pada setiap
pikselnya. Sistem pewarnaan citra warna ada beberapa macam seperti RGB,
CMYK, HSV, dll.
2.2 Image Processing
Image Processing atau pengolahan citra adalah suatu pemrosesan citra, khususnya menggunakan komputer dengan tujuan menghasilkan citra dengan kualitas lebih baik.
a. Grafika Komputer (computer graphics).
Grafika komputer bertujuan untuk menghasilkan citra dengan primitif-primitif
geometri seperti garis, lingkaran, dan sebagainya. Primitif-primitif geometri
tersebut memerlukan data deskriptif untuk melukis elemen-elemen gambar.
b. Pengenalan Pola (pattern recognition/image interpretation).
Pengenalan pola adalah proses pengelompokan data numerik dan simbolik secara
otomatis oleh mesin. Tujuan dari pengelompokan ini adalah untuk mengenali
suatu objek didalam citra. Manusia bisa mengenali objek-objek disekitarnya
karena otak manusia belajar mengklasifikasi objek-objek di alam sehingga mampu
membedakan suatu objek dengan objek lainnya. Kemampuan sistem visual
manusia inilah yang akan ditiru oleh mesin. Komputer menerima masukan berupa
citra objek yang akan diidentifikasi, memproses citra tersebut, dan memberikan
keluaran berupa deskripsi objek didalam citra.
c. Pengolahan Citra (image processing).
Pengolahan Citra bertujuan memperbaiki kualitas citra agar mudah diinterpretasi
oleh manusia / mesin (computer). Teknik - teknik pengolahan citra
mentransformasikan citra menjadi citra dengan kualitas yang lebih baik.
Pengenalan pola mengelompokkan data numerik dan simbolik (termasuk citra)
secara otomatis oleh mesin (komputer). Pengelompokan ini untuk mengenali suatu
objek di dalam citra. Komputer menerima masukan berupa citra objek yang
diidentifikasi, memproses citra, dan memberi keluaran berupa deskripsi objek di
dalam citra (Ldya, et al. 2010).
Beberapa teknik yang termasuk dalam Image Processing yaitu grascale, resizing,
a. Grayscale
Grayscale adalah teknik yang digunakan untuk mengubah citra berwarna menjadi bentuk
grayscale atau tingkat keabuan (dari hitam - putih). Pembentukan citra keabuan menggunakan metode luminance yakni nilai RGB dikalikan dengan nilai yang telah ditentukan yang kecocokan nya sesuai dengan sensitivitas mata terhadap warna. Hijau
adalah warna paling dominan, diikuti merah dan terakhir biru (Lennie et al. 1993). Hasil akhir proses ini adalah nilai keabuan (8 bit) dengan rentang hitam (0) dan putih (255).
Pada pengubahan sebuah gambar menjadi grayscale dapat dilakukan dengan cara
mengambil semua pixel pada gambar kemudian warna tiap pixel akan diambil informasi
mengenai 3 warna dasar yaitu merah, biru dan hijau (melalui fungsi warnatoRGB), ketiga
warna dasar ini akan dijumlahkan kemudian dibagi tiga sehingga didapat nilai ratarata.
Nilai rata-rata inilah yang akan dipakai untuk memberikan warna pada pixel gambar
sehingga warna menjadi grayscale, tiga warna dasar dari sebuah pixel akan diset menjadi
nilai rata-rata (melalui fungsi RGBtowarna). Contoh citra yang sudah mengalami
grayscalling dapat dilihat pada gambar 2.1
Gambar 2.1 Proses Grayscalling (Santi, 2011)
b. Resizing
Resizing merupakan proses mengubah dan menyamakan citra masukan, dengan mengubah resolusi horizontal dan vertikal citra masukan tersebut. Kinerja sistem akan
melambat apabila terdapat keanekaragaman ukuran citra masukan. Resizing dilakukan agar citra dapat direpresentasikan dalam bentuk yang lebih kompak sehingga memerlukan
citra yang telah resize harus tetap mempunyai kualitas citra yang bagus. Contoh citra yang sudah mengalami resizing dapat dilihat pada gambar 2.2. Citra sebelah kiri (a) adalah citra kapal yang berukuran 258 KB. Citra sebelah kanan (b) merupakan hasil
resizing sehingga ukuran citra menjadi 49 KB .
Gambar 2.2 Proses Resizing (Wijaya et al , 2010)
c. Normalisasi
Normalisasi adalah proses mengubah nilai daripada intensitas piksel menjadi satu
keseragaman dalam satu intensitas yang lebih mendekati kenormalan daripada
kemampuan melihat suatu gambar. Normalisasi terkadang disebut juga pelebaran kontras
dan pelebaran histogram (Gonzalez & Woods, 2007). Normalisasi dalam image processing adalah proses yang ditujukan untuk membuat citra lebih mudah dimunculkan fitur-fiturnya. Dengan cara mengubah rentang nilai intensitas piksel dan juga
meningkatkan akurasi pengenalan. Contoh citra yang sudah mengalami normalisasi dapat
dilihat pada gambar 2.3
d. Thinning
Thinning merupakan proses yang bertujuan untuk mengurangi ukuran dari suatu citra (imagesize) dengan tetap mempertahankan informasi dan karakteristik penting dari citra tersebut. Hal ini diimplementasikan dengan mengubah citra awal dengan pola binary
menjadi representasi kerangka (skeletal representation) image tersebut. Objek seperti huruf atau silhouettes dapat lebih mudah dikenali dengan melihat kepada kerangkanya saja (Phillips, 2000).
Thinning hanya digunakan pada citra biner dan menghasilkan citra biner lain sebagai outputnya . Thinning merupakan bentuk "pre-processing" yang digunakan dalam banyak teknik analisa citra. Output dari proses ini disebut sebagai "skeleton" , oleh karena itu
thinning bisa juga disebut sebagai "skeletonisasi" . Thinning bertujuan untuk mengurangi bagian yang tidak perlu (redudant) sehingga hanya dihasilkan informasi yang essensial
saja. Pola hasil penipisan harus tetap menyerupai bentuk pola asal . Sebagai contoh pada
gambar 2.3 adalah huruf "R" dan hasil polanya menjadi rangka "R"
Gambar 2.4 Proses Thinning (Fitri, 2013)
Algoritma penipisan yang umum adalah memeriksa pixel-pixel di dalam jendela yang
berukuran 3 X 3 pixel dan mengelupas satu pixel pada pinggiran (batas) objek pada setiap
lelaran, sampai objek berkurang menjadi garis tipis. Notasi pixel di dalam jendela 3 X 3
diperlihatkan pada gambar 2.5 (c). Algoritma bekerja secara iteratif, pada setiap lelaran
Algoritmanya adalah sebagai berikut:
1. Mula-mula diperiksa jumlah pixel objek (yang bernilai 1), N, di dalam jendela 3 X 3
pixel.
2. Jika N kurang atau sama dengan 2, tidak ada aksi yang dilakukan karena di dalam
jendela terdapat ujung lengan objek.
3. Jika N lebih besar dari 7, tidak ada aksi yang dilakukan karena dapat menyebabkan
pengikisan (erosion) objek.
Gambar 2. 5 (a) Penghapusan pixel pinggir menyebabkan ketidakterhubungan, (b) penghapusan pixel pinggir memperpendek lengan objek,
(c) notasi pixel yang digunakan untuk memeriksa keterhubungan.
4. Jika N lebih besar dari 2, periksa apakah penghilangan pixel tengah menyebabkan
objek tidak terhubung. Ini dilakukan dengan membentuk barisan p1p2p3…p8p1. Jika
jumlah peralihan 0 ® 1 di dalam barisan tersebut sama dengan 1, berarti hanya terdapat
satu komponen terhubung di dalam jendela 3 X 3. Pada kasus ini, dibolehkan menghapus
pixel tengah yang bernilai 1 karena penghapusan tersebut tidak mempengaruhi
keterhubungan.
2.3 Ekstraksi Fitur
Ekstraksi fitur adalah proses pengukuran terhadap data yang telah dinormalisasi untuk
membentuk sebuah nilai fitur. Nilai fitur digunakan oleh pengklasifikasi untuk mengenali
ini mudah untuk dibedakan (Pradeep et. al, 2011). Secara luas, fitur adalah semua hasil pengukuran yang bisa diperoleh. Fitur juga bisa menggambarkan karakteristik objek yang
dipantau (Putra, 2009). Contoh dari fitur level rendah adalah intensitas sinyal. Fitur bisa
berupa simbol, numerik atau keduanya. Contoh dari fitur simbol adalah warna. Contoh
dari fitur numerik adalah berat. Fitur bisa diperoleh dengan mengaplikasikan algoritma
pencari fitur pada data masukan.
Fitur dapat dinyatakan dengan variabel kontinu, diskret atau diskret-biner. Fitur biner
dapat digunakan untuk menyatakan ada tidaknya suatu fitur tertentu. Fitur yang baik
memiliki syarat berikut, yaitu mudah dalam komputasi, memiliki tingkat keberhasilan
yang tinggi dan besarnya data dapat diperkecil tanpa menghilangkan informasi penting
(Putra, 2009).
2.4 Diagonal Based Featured Extraction
Diagonal Based Feature Extraction adalah proses untuk mengenali karakter tulisan dengan metode offline di dalam pengerjaannya (Pradeep, et.al, 2011). Setiap citra karakter berukuran 90 x 60 piksel kemudian dibagi menjadi 54 zona yang sama, dan masing –
masing zona berukuran 10 x 10 piksel. Fitur yang akan di ekstraksi dari setiap zona piksel
dengan bergerak secara diagonal dari tiap zona yang masing – masing berukuran 10 x 10
piksel. Setiap zona memiliki 19 garis diagonal dan foreground pixel yang ada disetiap baris diagonal dan dijumlahkan untuk mendapatkan sub-fitur tunggal.
Kemudian, nilai dari 19 sub-fitur ini dibagi rata untuk mendapatkan satu nilai fitur
dan ditempatkan di zona yang sesuai. Prosedur ini dilakukan berulang secara berurutan di
semua zona. Apabila ada suatu zona yang garis diagonal nya bernilai kosong, maka nilai
fitur yang sesuai dengan zona tersebut adalah 0. Untuk lebih jelas dapat dilihat seperti
Gambar 2.6 Diagonal Based Featured Extraction (Pradeep et al.2011)
Algoritma diagonal based feature extraction (Pradeep et al. 2011):
1. Hitung histogram diagonal setiap zona. Histogram diagonal adalah banyaknya
piksel hitam setiap diagonal pada satu zona. Setiap zona memiliki 19 nilai
histogram diagonal yang disebut Histds, dimana 1 ≤ d ≤ 19. Secara jelas dapat dilihat pada gambar 2.7.
Gambar 2.7 Histogram Diagonal Zona (Pradeep et al. 2011)
2. Hitung nilai fitur setiap zona, yaitu rata-rata histogram setiap zona, disebut Zn
Zn =
19
3. Hitung rata-rata zona setiap baris, disebut Bi, dimana 1 ≤ i ≤ 9.
Bi =
6
Baris 1 = (Z1+Z2+Z3+Z4+Z5+Z6) /6
Baris 2 = (Z7+Z8+Z9+Z10+Z11+Z12) /6
Baris 3 = (Z13+Z14+Z15+Z16+Z17+Z18) /6
Baris 4 = (Z19+Z20+Z21+Z22+Z23+Z24) /6
Baris 5 = (Z25+Z26+Z27+Z28+Z29+Z30) /6
Baris 6 = (Z31+Z32+Z33+Z34+Z35+Z36) /6
Baris 7 = (Z37+Z38+Z39+Z40+Z41+Z42) /6
Baris 8 = (Z43+Z44+Z45+Z46+Z47+Z48) /6
Baris 9 = (Z49+Z50+Z51+Z52+Z53+Z56) /6
4. Hitung rata-rata zona setiap kolom, disebut Kj, dimana 1 ≤ j ≤ 6
Kj =
9
Kolom 1 = (Z1+Z7+Z13+Z19+Z25+Z31+Z37+Z43+Z49) /9
Kolom 2 = (Z2+Z8+Z14+Z20+Z26+Z32+Z38+Z44+Z50) /9
Kolom 3 = (Z3+Z9+Z15+Z21+Z27+Z33+Z39+Z45+Z51) /9
Kolom 4 = (Z4+Z10+Z16+Z22+Z28+Z34+Z40+Z46+Z52) /9
Kolom 5 = (Z5+Z11+Z17+Z23+Z29+Z35+Z41+Z47+Z53) /9
Kolom 6 = (Z6+Z12+Z18+Z24+Z30+Z36+Z42+Z48+Z54) /9
2.5 Jaringan Syaraf Tiruan
Jaringan saraf tiruan adalah paradigma pengolahan informasi yang terinspirasi oleh sistem
paradigma ini adalah struktur dari sistem pengolahan informasi yang terdiri dari sejumlah
besar elemen pemrosesan yang saling berhubungan (neuron), bekerja serentak untuk menyelesaikan masalah tertentu. Cara kerja jaringan saraf tiruan adalah seperti cara kerja
manusia, yaitu belajar pola atau klasifikasi data, melalui proses pembelajaran (Sutojo et al. 2010).
Jaringan saraf tiruan disusun dengan asumsi yang sama seperti jaringan saraf biologi
(Puspitaningrum, 2006):
1. Pengolahan informasi terjadi pada elemen-elemen pemrosesan (neuron). 2. Sinyal antara dua buah neuron diteruskan melalui link-link koneksi. 3. Setiap link koneksi memiliki bobot terasosiasi.
4. Setiap neuron menerapkan sebuah fungsi aktivasi terhadap input jaringan
(jumlah sinyal input berbobot). Tujuannya adalah untuk menentukan sinyal output.
Pembagian arsitektur jaringan saraf tiruan bisa dilihat dari kerangka kerja dan skema
antar interkoneksi. Kerangka kerja jaringan saraf tiruan bisa dilihat dari jumlah lapisan
(layer) dan jumlah node pada setiap lapisan (Puspitaningrum, 2006).
Lapisan – lapisan penyusun jaringan saraf tiruan dapat dibagi menjadi tiga : 1. Lapisan input
Node-node di dalam lapisan input disebut unit-unit input. Unit-unit input
menerima input dari dunia luar. Input yang dimasukkan merupakan penggambaran dari suatu masalah.
2. Lapisan tersembunyi
Node-node di dalam lapisan tersembunyi disebut unit-unit tersembunyi. Output
dari lapisan ini tidak secara langsung dapat diamati.
3. Lapisan output
Mengadopsi esensi dasar dari system syaraf biologi, syaraf tiruan dijelaskan yaitu
menerima input atau masukan (baik dari data yang dimasukkan atau dari output sel syaraf
pada jaringan syaraf. Setiap input datang melalui suatu koneksi atau hubungan yang
mempunyai sebuah bobot (weight). Setiap sel syaraf mempunyai sebuah nilai ambang. Jumlah bobot dari input dan dikurangi dengan nilai ambang kemudian akan mendapatkan
suatu aktivasi dari sel syaraf (post synaptic potential, PSP, dari sel syaraf). Signal aktivasi kemudian menjadi fungsi aktivasi / fungsi transfer untuk menghasilkan output dari sel
syaraf. Jika tahapan fungsi aktivasi digunakan ( output sel syaraf = 0 jika input <0 dan 1
jika input >= 0) maka tindakan sel syaraf sama dengan sel syaraf biologi yang dijelaskan
diatas (pengurangan nilai ambang dari jumlah bobot dan membandingkan dengan 0
adalah sama dengan membandingkan jumlah bobot dengan nilai ambang). Biasany
tahapan fungsi jarang digunakan dalam jaringan syaraf tiruan.
2.6 Recurrent Neural Network
Recurrent Neural Network ( RNN ) adalah neural network dengan fasilitas umpan balik menuju neuron itu sendiri maupun neuron yang lain, sehingga aliran informasi dari
masukan mempunyai arah jamak (Aribowo, 2010) . Recurrent Neural Network adalah jaringan yang mempunyai minimal satu feedback loop. RNN memiliki kemampuan penggambaran yang sangat bagus dan dapat mengatasi kelemahan feedfoward (Soelaiman & Rifa’i, 2010) . Keluaran RNN tidak hanya bergantung pada masukan saat itu saja,
tetapi juga tergantung pada kondisi masukan neural network untuk waktu lampau. Kondisi ini dimaksudkan untuk menampung kejadian lampau diikutkan pada proses
komputasi. Hal ini penting untuk masalah yang cukup rumit, dan tanggapan keluaran
neural network berkaitan dengan variasi waktu ( time-varying ), sehingga neural network
Gambar 2.8 Struktur Recurrent Neural Network (Aribowo, 2011)
Keluaran Recurrent Neural Network dapat dihitung dengan persamaan sebagai berikut :
dimana :
• xˆ(k) ∈ℜ n adalah internal state vector • A∈ℜ nxn adalah matrik tetap
• x(k) ∈ℜ n adalah state vector
• u(k) ∈ℜ m adalah vektor masukan, Nilai u(k) dan x(k) diketahui • mxnk k W W ∈ℜ 1, 2, , adalah bobot pada lapisan hidden • nxmk k V V ∈ℜ 1, 2, , adalah bobot pada lapisan output
• xˆ(k +1) adalah nilai dari state vektor hasil perkiraan pada iterasi ke k +1
Fungsi aktifasi yang digunakan pada jaringan adalah
Nilai σ dan φ dihitung dengan menggunakan fungsi sigmoid (Soelaiman & Rifa’i, 2010).
Adapun arsitektur umum Recurrent Neural Network yang dapat dilihat pada gambar 2.9
Gambar 2.9 Arsitektur umum Recurent Neural Network (Soelaiman & Rifa’i, 2010).
2.7 Huruf Katakana
Bahasa Jepang memiliki aturan gramatikal, cara baca dan cara menulis huruf bahasa
Jepang. Bahasa Jepang memiliki 3 (tiga) huruf, yaitu huruf hiragana, huruf katakana, dan
huruf kanji.
Katakana jauh lebih sulit dikuasai dibanding Hiragana karena hanya digunakan untuk
kata-kata tertentu, sehingga kesempatan untuk berlatih membacanya lebih jarang.
Sebagaimana telah disebutkan sebelumnya, katakana digunakan terutama untuk kata yang
diimpor dari bahasa asing. Kata-kata impor tersebut banyak yang berasal dari bahasa
Inggris. Katakana juga bisa digunakan untuk menekankan kata-kata tertentu sebagaimana
Katakana melambangkan suara-suara yang sama dengan Hiragana, namun tentu saja
semua hurufnya berbeda (Handoyono & Susanto, 2010). Untuk lebih jelas dapat dilihat
seperti pada gambar 2.10.
Gambar 2.10 Tabel huruf Katakana( Handoyono ,2011 )
2.8 Penelitian Terdahulu
Di bagian ini akan dijabarkan beberapa penelitian terdahulu. Saat ini sudah banyak
penelitian teknologi informasi yang bergerak dibidang kedokteran bagian kardiologi.
Untuk lebih jelasnya, pada tabel 2.1 berikut akan dijelaskan penelitian – penelitian yang
telah dibuat sebelumnya.
Tabel 2.1 Penelitian terdahulu
No Judul Penulis dan
Tahun
Metode yang digunakan
Keterangan
1 Penerapan Jaringan Syaraf Tiruan Metode Propagasi Balik dalam
Handoyono, Susanto. 2012
Metode Propagasi Balik
Tabel 2.1 Penelitian terdahulu (lanjutan)
3 Identifikasi Nonlinier
Tabel 2.1 Penelitian terdahulu (lanjutan) 4 Implementasi Recurrent