• Tidak ada hasil yang ditemukan

Pengenalan secara real time huruf Jawa jenis cetak menggunakan ekstraksi ciri Wavelet dan fungsi jarak Euclidean.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Pengenalan secara real time huruf Jawa jenis cetak menggunakan ekstraksi ciri Wavelet dan fungsi jarak Euclidean."

Copied!
106
0
0

Teks penuh

(1)

viii

INTISARI

Banyak pendatang dari luar pulau jawa yang menetap, bekerja, bersekolah, ataupun

berwisata di pulau Jawa yang terkadang ingin mengetahui kebudayaan jawa dari segi bahasa,

yaitu bahasa jawa beserta dengan huruf jawa. Sedikit orang yang mampu memahami huruf

yang rumit ini. Sehingga untuk memahami huruf jawa secara efisien, diperlukan sebuah

sistem pengenalan untuk mengenali huruf jawa tersebut yang diharapkan lebih dapat

dimengerti secara umum oleh masyarakat.

Sistem pengenalan huruf jawa yang akan dibuat menggunakan webcam dan laptop.

Webcam berfungsi untuk merekam dan mengambil citra dari potongan huruf jawa , dan laptop

untuk mengoperasikannya.Citra potongan huruf jawa yang telah dicapture kemudian diolah

dengan menggunakan preprocessing, ekstrasi ciri wavelet, jarak Euclidean dan kemudian

program akan menampilkan hasil pengenalan.

Sistem pengenalan huruf jawa secara real time dapat bekerja dengan baik.

Berdasarkan hasil percobaan, parameter terbaik adalah pada variasi resizing 32x64 dan

desimasi 2, yang mampu menghasilkan tingkat pengenalan sebesar 91% dan 92,8% dari

berbagai variasi rotasi dan skala.

(2)

ix

ABSTRACT

Many immigrants from outside java island which is settle, work, attend school, or

traveled in java island which is somestimes wants to find out how culture in terms of java

language, which is the java along with letters of java. Few people are able to understand the

letter a complicated. So as to understand java letters, in an efficient way required a

recognition systems to recognise java letter expected more intelligible in general by society.

Java letter recognition system to be created using a webcam and a laptop. Webcam

function for recording and retrieving images from a piece of Java letters, and laptops to

operate it. Image java letter pieces that have been captured and processed by using

preprocessing, wavelet characteristics extraction, Euclidean distance and then the program

will display the recognition result.

Java letter recognition systems in real time can work well. Based on the experiment

results, the best parameter is the variation resizing 32x64 and Decimation 2, which is able to

produce a recognition rate of 91% and 92,8% of the variations of rotation and scale

respectively

(3)

TUGAS AKHIR

PENGENALAN SECARA REAL TIME HURUF JAWA

JENIS CETAK MENGGUNAKAN EKSTRAKSI CIRI

WAVELET DAN FUNGSI JARAK EUCLIDEAN

Diajukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik

Program Studi Teknik Elektro

disusun oleh :

IGNASIUS ARDI ARYO PRABOWO

NIM : 105114006

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(4)

i

TUGAS AKHIR

PENGENALAN SECARA REAL TIME HURUF JAWA

JENIS CETAK MENGGUNAKAN EKSTRAKSI CIRI

WAVELET DAN FUNGSI JARAK EUCLIDEAN

Diajukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik

Program Studi Teknik Elektro

disusun oleh :

IGNASIUS ARDI ARYO PRABOWO

NIM : 105114006

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(5)

ii

FINAL PROJECT

REAL TIME RECOGNITION OF PRINTED JAVA

LETTER USING WAVELET FEATURE

EXTRACTION AND EUCLIDEAN DISTANCE

FUNCTIONS

In partial fulfillment of the requirements

For the degree of

Sarjana Teknik

Electrical Engineering Study Program

IGNASIUS ARDI ARYO PRABOWO

NIM : 105114006

ELECTRICAL ENGINEERING STUDY PROGRAM

DEPARTMENT OF ELECTRICAL ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

(6)

HALAMAN

PERSETT}JUAI'I

TT]GAS

AKHIR

PENGENALAN

SECARA

ftElL

TIME HUR{IF JAWA JtrNIS

CETAK

MENGGUNAKAN EKSTRAKSI

CIRI IrUWLETDAN

TUNGSI

JARAK EUCLIDEAN

(REAL

TIME

RECOGNITION

OF PRINTED

JAVA LETTER USING

WAVELET

F'trATTIRE

EXTRACTION

EUCLTDEAN

DISTANCE

rrNCTroNs)

Pembirnbing

r

W

lr

Dr. Linggo

Sum{rno

III

(7)

HALAMA1Y

PENGESAHAN

TUGAS

AKHIR

PENGENALAN

SECARA

REAL TIME

HTIRTIF JAWA JENIS

CETAK

MENGGT]NAKAIT EKSTRAKSI

CIRI

WAYELETDAN TUNGSI

JARAK EACLIDEAN

(REAI, TrME

RECOGNTTTON

Otr'.PRrNTED

JAVA LETTUR

USrNG

WAYELET FEATURE EXTRACTION EUCLIDEAN I}ISTANCE

ruNCTroNS)

Oleh:

ICr}{ASIUS ARDI ARYO PRABOWO

NIM : 105 114006

Telah dipertahankan di depan Panitia Penguji

Pada tanggal 23 Maret 2015

Dan dinyatakan memenuhi syarat

Ketua

$skretaris

Anggota

Susunan Panitia Penguji: Nama Lengkap

: fiendro, M,Kom

: I)r. Linggo Sumarna

: Petrus Setyo Prabowo, S.T.,M.T.

Yogyakana,

bo

APril

2016

Fakultas $ains dan Teknalogr Univ*rsita* Sanata Dh*rm*

iv

r{trffi

[.f

,m]]

\Bffi

(8)

W:r3}"i'ry$*"*-v

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

MOTTO:

"Mintalah, maka akan diberikan kepadamu;

carilah, maka kamu akan mendapat; ketoklah,

maka pintu akan dibukakan bagimu. Mat 7:7

Persembahan

Skripsi ini kupersembahkan untuk Tuhan Yesus

yang selalu membimbingku, menyertaiku dari awal

sampai akhir.

(9)

PERI\YATAAN

KBASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalarn kutipan dan daftar

pustaka sebagai mana layaknya karya ilmiah.

Yogyakarta, 10 April 2015

Penulis

Ignasius Ardi Aryo Prabowo

(10)

LEMBAR PERNYATAAN

PERSETUJUAN

PUBLIKASI

KARYA

ILMIAII UNTUK KEPENTINGAN

AKADEMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :

Nama: Ignasius Ardi Aryo Frabowo

Nomor Mahasiswa : 105 I 14006

Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas

Sanata Dharma karya ilmiah saya yang berjudul:

PENGENALAN SECARA REAL TIME HURUF JAWA JENIS CETAK

MENGGLINAKAN EKSTRAKSI CIRI I4/AYELET DAN FUNGSI JARAK EUCLIDEAN

beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada

Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk

media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas dan

mempublikasikannya pada media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya selama masih mencatumkan nzlma saya sebagai penulis.

Demikian pernyataan ini saya buat dengan sebenarnya.

Yogyakarta, 10 April 2Al5

v11

(11)

viii

INTISARI

Banyak pendatang dari luar pulau jawa yang menetap, bekerja, bersekolah, ataupun

berwisata di pulau Jawa yang terkadang ingin mengetahui kebudayaan jawa dari segi

bahasa, yaitu bahasa jawa beserta dengan huruf jawa. Sedikit orang yang mampu

memahami huruf yang rumit ini. Sehingga untuk memahami huruf jawa secara efisien,

diperlukan sebuah sistem pengenalan untuk mengenali huruf jawa tersebut yang

diharapkan lebih dapat dimengerti secara umum oleh masyarakat.

Sistem pengenalan huruf jawa yang akan dibuat menggunakan webcam dan laptop.

Webcam berfungsi untuk merekam dan mengambil citra dari potongan huruf jawa , dan

laptop untuk mengoperasikannya. Citra potongan huruf jawa yang telah dicapture

kemudian diolah dengan menggunakan preprocessing, ekstrasi ciri wavelet, jarak

Euclidean dan kemudian program akan menampilkan hasil pengenalan.

Sistem pengenalan huruf jawa secara real time dapat bekerja dengan baik.

Berdasarkan hasil percobaan, parameter terbaik adalah pada variasi resizing 32x64 dan

desimasi 2, yang mampu menghasilkan tingkat pengenalan sebesar 91% dan 92,8% dari

berbagai variasi rotasi dan skala.

(12)

ix

ABSTRACT

Many immigrants from outside java island which is settle, work, attend school, or

traveled in java island which is somestimes wants to find out how culture in terms of java

language, which is the java along with letters of java. Few people are able to understand the

letter a complicated. So as to understand java letters, in an efficient way required a

recognition systems to recognise java letter expected more intelligible in general by society.

Java letter recognition system to be created using a webcam and a laptop. Webcam

function for recording and retrieving images from a piece of Java letters, and laptops to

operate it. Image java letter pieces that have been captured and processed by using

preprocessing, wavelet characteristics extraction, Euclidean distance and then the program

will display the recognition result.

Java letter recognition systems in real time can work well. Based on the experiment

results, the best parameter is the variation resizing 32x64 and Decimation 2, which is able to

produce a recognition rate of 91% and 92,8% of the variations of rotation and scale

respectively

(13)

x

KATA PENGANTAR

Puji dan syukur penulis panjatkan ke hadirat Tuhan Yang Maha Esa atas

berkat dan rahmat kasih-Nya yang telah dilimpahkan-Nya sehingga penulis dapat

menyelesaikan Tugas Akhir yang berjudul Pengenalan Secara Real Time Huruf Jawa

Jenis Cetak Menggunakan Ekstraksi Ciri Wavelet dan Fungsi Jarak Euclidean.

Tugas Akhir ini disusun sebagai salah satu syarat kelulusan untuk

memperoleh gelar Sarjana Teknik pada Program Studi Teknik Elektro, Fakultas Sains

dan Teknologi, Universitas Sanata Dharma Yogyakarta.

Penulisan Tugas Akhir ini tidak lepas dari campur tangan dan bantuan dari

banyak pihak baik secara langsung mapun tidak langsung. Penulis menyadari bahwa

banyak pihak yang telah memberi dukungan, semangat, bimbingan dan arahan serta

bantuan materil. Oleh karena itu, pada kesempatan ini penulis ingin mengucapkan

terima kasih kepada :

1. Tuhan Yesus Kristus, yang selalu membimbingku, menyertaiku dari awal

hingga terselesainya tugas akhir ini. Sungguh suatu karunia kasih-Mu.

2. Ibu Paulina Heruningsih Prima Rosa, S.si., M.Sc. selaku Dekan Fakultas

Sains dan Teknologi.

3. Bapak Petrus Setyo Prabowo, S.T., M.T. selaku Ketua Program Studi

Teknik Elektro Universitas Sanata Dharma Yogyakarta yang memberikan

arahan kepada penulis.

4. Bapak Dr. Linggo Sumarno, selaku dosen pembimbing yang telah banyak

membimbing, membantu, serta memberikan arahan, jasa dan motivasi

kepada penulis dalam menyelesaikan tugas akhir ini.

5. Bapak Petrus Setyo Prabowo, S.T., M.T. dan Bapak Ir. Tjendro, M.Kom.

selaku dosen penguji tugas akhir yang telah memberikan ilmu dan arahan

tambahan sehingga penulis dapat menyempurnakan penyusunan tugas

akhir ini.

6. Seluruh Dosen dan Laboran Program Studi Teknik Elektro, Fakultas

Sains dan Teknologi Universitas Sanata Dharma yang telah banyak

(14)

xi

7. Seluruh Staff Fakultas Sains dan Teknologi Universitas Sanata Dharma

Yogyakarta yang telah membantu dalam hal administrasi.

8. Kedua orang tua tercinta (Papa drg. Ludgerus Toto Utomo dan Mama

Rosalia Resmiharti), seluruh keluarga besar Soegiardjo seluruhnya dan

keluarga besar Suladi Wardoyo yang selalu mendukung serta mendoakan

penulis.

9. Kakak-kakak dan adik saya ( Albertus Adi Atma Prasetya, Natalia Indira,

Aegidia Dyah Pravita Sari, dan Sanca Christy Mareta) yang telah

memberikan semangat dan doa demi terselesaikannya tugas akhir ini.

Terima kasih untuk segala kasih dan kesabarannya.

10.Sahabat-sahabat saya tercinta (Irenne Patricia, Nikki Gusti, Chesa

Permita, Lukas Arma, Helena Dyah) yang telah banyak mendukung,

membantu, memberikan semangat, motivasi dan menghibur penulis

sampai menyelesaikan skripsi ini.

11.Teman-teman seperjuangan angkatan 2010 Teknik Elektro yang selalu

mendukung dan menyemangati dalam menyelesaikan tugas akhir ini.

12.Dan kepada semua pihak yang telah banyak membantu dalam

menyelesaikan skripsi ini yang tidak bisa disebutkan satu persatu.

Penulis menyadari bahwa dalam penulisan tugas akhir ini masih terdapat

banyak kekurangan dan jauh dari sempurna. Untuk itu, kritik dan saran yang

membangun senantiasa penulis harapkan guna menyempurnakan tugas akhir ini.

Akhir kata, penulis berharap agar hasil penelitian dan pembelajaran yang

tertuang dalam tugas akhir ini dapat bermanfaat bagi semua pihak.

(15)

xii

DAFTAR ISI

Halaman Sampul (Bahasa Indonesia) ... i

Halaman Sampul (Bahasa Inggris) ... ii

Halaman persetujuan ... iii

Halaman Pengesahan ... iv

Halaman Persembahan dan Motto Hidup ...v

Pernyataan Keaslian Karya ... vi

Lembar Pernyataan Persetujuan Publikasi Karya Ilmiah untuk Kepentingan Akademis ... vii

Intisari ... viii

Abstract ... ix

Kata Pengantar ...x

Daftar Isi ... xii

Daftar Gambar ...xv

Daftar Tabel ... xvii

BAB I:PENDAHULUAN 1.1. LatarBelakang ... 1

1.2. TujuandanManfaat Penelitian ... 2

1.3. BatasanMasalah ... 2

1.4. MetodologiPenelitian ... 3

BAB II: DASAR TEORI 2.1. Aksara Jawa ... 4

(16)

xiii

2.2. Pengolahan Citra ...4

2.2.1. Ruang Warna RGB ...5

2.2.2. Citra Grayscale...6

2.2.3. Cropping dan Resizing ...6

2.2.4.Transformasi Affine (Affine Transformation) ...7

2.3. Pengenalan Pola ...8

2.4. Wavelet ...8

2.4.1. Wavelet secara umum ...8

2.4.2.Wavelet Haar ...11

. 2.4.3.Konvolusi ...12

2.5. Jarak Euclidean ...13

2.6. Templete Matching ...14

2.7. Matlab ...15

2.8. Webcam ...16

2.9. GUIDE MATLAB ...17

BAB III:PERANCANGAN 3.1. GambaranSistem ... 18

3.1.1.Fixture ... 18

3.1.2.Potongan Huruf Jawa Jenis Cetak... 19

3.1.3.Webcam ...19

3.2. Proses Pengenalan Potongan Huruf Jawa ...19

3.2.1.Citra Potongan Huruf Jawa ...20

3.2.2.Tahap Preprocessing ...21

3.2.3.Tahap Ekstraksi Ciri ...23

(17)

xiv

3.2.5.Penentuan Keluaran ...26

3.3.Perancangan Database Huruf ...27

3.4.Huruf Uji ...27

3.5.Perancangan Tampilan GUI ...28

BAB IV:HASIL DAN PEMBAHASAN 4.1. Pengujian Program Pengenalan Huruf Jawa Carakan secara Real Time ...29

4.1.1.Tombol Kamera Aktif ...30

4.1.2.Tombol Ambil Gambar ...31

4.1.3. Pop-Up Menu ...32

4.1.4. Tombol Proses ...33

4.1.5. Tombol Reset ...38

4.1.6. Tombol Keluar ...38

4.2. Hasil Pengujian Program Pengenalan Terhadap Tingkat Pengenalan Citra Potongan Huruf Jawa Carakan...39

4.2.1. Pengujian Parameter Pengenalan Potongan Huruf Jawa Carakan Secara Tidak Real Time ...39

4.2.1. Pengujian Parameter Pengenalan Potongan Huruf Jawa Carakan Secara Real Time...42

BAB V:KESIMPULAN DAN SARAN 5.1. Kesimpulan ...48

5.2. Saran ...48

DAFTAR PUSTAKA ...49

(18)

xv

DAFTAR GAMBAR

Gambar 2.1. Aksara Jawa Carakan ... 4

Gambar 2.2. Koordinat citra digital ... 5

Gambar 2.3. Skema ruang warna RGB dalam bentuk kubus ... 5

Gambar 2.4. Contoh hasil cropping... 6

Gambar 2.5. Proses penskalaan pada citra potongan huruf. (a ) Citra sebelum penskalaan (b) citra setelah penskalaan 64x128... 8

Gambar 2.6. Algoritma pyramid. Dekomposisi wavelet satu level berdasarkan algoritma piramid; h(n) adalah tapis pelewat bawah; g(n) adalah tapis pelewat atas; CAj (LL) adalah koefisien rerata; (ℎ)(HL), (�)(LH), dan (�)(HH) masing adalah koefisien detil horisontal, vertikal dan diagonal ... 9

Gambar 2.7. Wavelet Haar ... 12

Gambar 2.8. Representasi matriks dari penjumlahan konvolusi, y = [1 5 14 26 29 21] ... 13

Gambar 2.9. Contoh tampilan Matlab ... 16

Gambar 2.10. Contoh webcam ... 17

Gambar 2.11. Tampilan Blank GUI (Default) ... 17

Gambar 3.1. Gambaran keseluruhan sistem ... 18

Gambar 3.2. Contoh potongan huruf jawa carakan ... 19

Gambar 3.3. Blok diagram proses pengenalan potongan huruf jawa ... 20

Gambar 3.4. Diagram alir pemrosesan citra ... 21

Gambar 3.5. Contoh konversi citra potongan huruf dengan RGB (a) menjadi grayscale (b) ... 22

Gambar 3.6. Contoh cropping pada citra potongan huruf ... 22

Gambar 3.7. Contoh resizing pada citra potongan huruf. (a) Citra sebelum diresizing. (b) citra setelah diresizing 64x128. (c) citra a setelah diresizing 16x32 ... 23

Gambar 3.8. Diagram ekstraksi ciri ... 24

Gambar 3.9. Diagram alir konvolusi ... 24

Gambar 3.10. Diagram alir downsampling ... 25

Gambar 3.11. Diagram alir fungsi jarak Euclidean ... 26

(19)

xvi

Gambar 3.13. Blok diagram perancangan database ... 27

Gambar 3.14. Sketsa perancangan GUI... 28

Gambar 4.1. Icon Matlab R2010a ... 29

Gambar 4.2. Tampilan awal Matlab R2010a ... 30

Gambar 4.3. Grafik Tingkat Pengenalan secara tidak real time ... 41

(20)

xvii

DAFTAR TABEL

Tabel 3.1. Spesifikasi Webcam Logitech c 170h ... 18

Tabel 3.2. Jumlah kombinasi set database ... 26

Tabel 4.1. Persentase Data Hasil Pengujian Secara Tidak Real Time ... 40

Tabel 4.2. Jumlah Koefisien Ekstraksi Ciri ... 42

Tabel 4.3. Gambar Citra Huruf Jawa Carakan Setiap Variaasi Resizing dan Desimasi ... 43

Tabel 4.4. Jumlah rata-rata persentase hasil percobaan 1, 2, 3, 4, 5 rotasi dan penskalaan(tabel 1-5 lihat lampiran) ... 45

(21)

1

BAB I

PENDAHULUAN

1.1

Latar Belakang

Penduduk Indonesia memiliki beraneka ragam kebudayaan yang memiliki

bahasa berbeda-beda sesuai dengan tempat tinggalnya. Mayoritas mempunyai

dwibahasa yaitu kemampuan untuk menguasai kosakata bahasa Nasional yaitu bahasa

Indonesia dan bahasa Daerah tempat tinggal masing-masing. Seperti penduduk jawa

menguasai dua bahasa yang sering digunakan untuk berkomunikasi yaitu bahasa

Indonesia sebagai bahasa pemersatu dan bahasa daerah yaitu bahasa jawa sebagai

bahasa sehari-hari.

Jawa merupakan sebuah pulau padat penduduk karena terdapat pusat

pemerintahan, dengan begitu banyak pendatang dari luar pulau. Para pendatang tersebut

terkadang ingin mengetahui kebudayaan jawa dari segi bahasa maupun sejarahnya.

Misalnya dari segi bahasa, yaitu bahasa jawa beserta dengan huruf jawa biasa disebut

dengan aksara jawa. Sayangnya, hanya sedikit orang yang mampu memahami aksara

yang rumit ini. Sehingga untuk memahami huruf jawa secara efisien, diperlukan sebuah

sistem pengenalan untuk mengenali huruf jawa tersebut yang diharapkan lebih dapat

dimengerti secara umum oleh masyarakat. Dengan menerapkan salah satu contoh

aplikasi computer vision masyarakat bisa mengenali beberapa huruf jawa secara real

time. Computer vision adalah proses otomatis yang mengintegrasikan sejumlah besar

proses untuk persepsi visual, seperti akuisisi data, pengolahan citra, klasifikasi,

pengenalan, dan membuat keputusan [1].

Sudah ada penelitian mengenai pengenalan aksara jawa, antara lain oleh Wastu

[2]. Metode yang digunakan untuk sistem pengenalan aksara jawa adalah Hidden

Markov Models. Selain itu penulis juga menemukan penelitian yang berkaitan dengan

pengenalan karakter huruf, diantaranya pernah diteliti oleh Kurniawan [3] tentang

pengenalan huruf Jepang Hiragana menggunakan perluasan metode Feature point

Extraction dan metode perbandingan dengan mengukur jarak Euclidean. Pada penelitian

(22)

dilakukan secara real time dan belum menyelidiki pengaruh variasi rotasi serta

penskalaan. Maka penulis ingin membuat suatu pengenalan secara real time huruf jawa

jenis cetak menggunakan ekstraksi ciri Wavelet dan fungsi jarak Euclidean dengan

menyelidiki pengaruh variasi rotasi serta penskalaan.

1.2

Tujuan dan Manfaat Penelitian

Tujuan yang akan dicapai dalam penulisan ini adalah menerapkan salah satu

contoh aplikasi computer vision yang dapat mengenali beberapa huruf jawa jenis cetak

secara real time menggunakan ekstraksi ciri Wavelet dan metode pengukuran jarak

euclidean. Manfaat penelitian ini adalah sebagai dasar untuk penelitian selanjutnya

dalam mengenali nama jalan dengan tulisan jawa yang berada di pinggir jalan, prasasti

dan buku dengan tulisan jawa.

1.3

Batasan Masalah

Pembahasan dan penyelesaian masalah pada tugas akhir ini dibatasi pada:

1. Pengenalan huruf jawa carakan jenis cetak dengan ukuran huruf 6,8x3 cm dan

ukuran template 10x5 cm. Huruf jawa berasal dari poster huruf jawa (lihat

lampiran).

2. Huruf jawa carakan jenis cetak yang yang akan dikenali terdiri dari 1 huruf.

3. Hasil pengenalan yang sudah ditentukan di luar huruf jawa akan dikenali, tetapi

hasilnya keliru.

4. Gambar huruf jawa untuk pengujian akan menggunakan variasi rotasi -10o, -5o, 0o, 5o, 10o dan penskalaan 90%, 95%, 100%, 105%, 110%. Variasi rotasi untuk mensimulasikan kamera yang berputar. Variasi penskalaan untuk

mensimulasikan kamera yang naik turun.

5. Menggunakan ekstraksi ciri wavelet Haar.

6. Menggunakan fungsi jarak Euclidean untuk metode pengenalan pola.

7. Hasil pengenalan secara real time.

8. Menggunakan webcam merk Logitech seri C170h yang diletakkan tegak lurus

diatas poster huruf jawa dengan jarak 26cm.

9. Menggunakan software Matlab R2010a dalam pembuatan program.

10. Resizing citra yang digunakan ukurannya bervariasi seperti 64x128, 32x64,

(23)

11. Nilai desimasi yang digunakan pada tahap ekstraksi ciri bervariasi seperti 1, 2, 3,

4, 5.

12. Pencahayaan menggunakan dua buah lampu LED 5 watt dengan jarak lampu ke

objek 21 cm.

13. Hasil keluaran berupa teks di layar monitor dengan tambahan suara melalui

speaker.

1.4

Metodologi Penelitian

Berdasarkan pada tujuan yang ingin dicapai metode-metode yang digunakan

dalam penyusunan tugas akhir ini adalah:

1. Pengumpulan bahan-bahan referensi berupa buku-buku dan jurnal-jurnal ilmiah

mengenai pengenalan suatu objek, pemograman matlab, image processing,

Wavelet ,dan Euclidean.

2. Perancangan subsistem software

Tahap ini bertujuan untuk mencari bentuk model yang optimal dari sistem yang

akan dibuat dengan mempertimbangkan berbagai faktor–faktor permasalahan

dan kebutuhan yang ditentukan.

3. Pembuatan subsistem software

Sistem akan bekerja apabila user menekan tombol push button yang sudah

disediakan dalam software. Sebelum user memberikan interupsi untuk memulai

pengenalan huruf jawa jenis cetak. Sistem akan mengolah data yang diterima

dari webcam terlebih dahulu dan mulai menampilkan proses menampilkan video

(record) sampai user memberikan perintah untuk pengambilan gambar

(capture). Kemudian, Matlab akan mengolah huruf jawa jenis cetak dan

menyajikan sebagai sebuah informasi.

4. Analisa data yang pertama dilakukan dengan menyelidiki pengaruh variasi

resizing (ukuran citra) dan desimasi terhadap tingkat pengenalan. Penyimpulan

hasil dilakukan untuk mencari ukuran resizing dan desimasi yang terbaik yang

menghasilkan tingkat pengenalan yang optimal. Analisa data yang kedua adalah

menyelidiki pengaruh penskalaan dan rotasi terhadap tingkat pengenalan.

Penyimpulan akhir dilakukan untuk mengetahui kinerja sistem pengenalan

(24)

4

BAB II

DASAR TEORI

2.1

Aksara Jawa

2.1.1. Aksara Carakan

Carakan (abjad Jawa) yang digunakan di dalam ejaan bahasa Jawa pada dasarnya

terdiri atas 20 aksara pokok (lihat gambar 2.1) yang bersifat silabik (bersifat kesukukataan)

[4].

Gambar 2.1 Aksara jawaCarakan

2.2

Pengolahan Citra

Sesungguhnya citra merupakan suatu fungsi intensitas dalam bidang dua dimensi.

Suatu citra dapat didefinisikan sebagai fungsi f(x,y) berukuran M baris dan N kolom,

dengan x dan y adalah koordinat spasial, dan amplitudo f di titik koordinat (x,y) dinamakan

intensitas atau tingkat keabuan dari citra pada titik tersebut. Apabila nilai x, y, dan nilai

amplitudo f secara keseluruhan berhingga (finite) dan bernilai diskrit maka dapat dikatakan

bahwa citra tersebut adalah citra digital. Gambar 2.2 menunjukkan posisi koordinat citra

(25)

Gambar 2.2 Koordinat citra digital

Citra digital terdiri dari sejumlah elemen tertentu, setiap elemen mempunyai lokasi

dan nilai tertentu. Elemen–elemen ini disebut picture element, image element, pels dan

pixels. Istilah terakhir (pixel) paling sering digunakan pada citra digital.

2.2.1 Ruang Warna RGB[6]

Ruang warna RGB biasa diterapkan pada monitor CRT dan kebanyakan sistem

grafika komputer. Ruang warna ini menggunakan tiga komponen dasar yaitu merah (R),

hijau (G), dan biru (B). Setiap piksel dibentuk oleh ketiga komponen tersebut. Model RGB

biasa disajikan dalam bentuk kubus tiga dimensi, dengan warna merah, hijau, dan biru

berada pada pojok sumbu (Gambar 2.3). Warna hitam berada pada titik asal dan warna

putih berada di ujung kubus yang berseberangan. Gambar 2.3 memperlihatkan kubus

warna secara nyata dengan resolusi 24 bit. Perlu diketahui, dengan menggunakan 24 bit,

jumlah warna mencapai 16.777.216 [6].

(26)

2.2.2 Citra Grayscale

Citra grayscale merupakan citra digital yang hanya memiliki satu nilai kanal pada

setiap pixelnya, dengan kata lain nilai bagian RED = GREEN = BLUE. Nilai tersebut

digunakan untuk menunjukkan tingkat intensitas. Warna yang dimiliki adalah warna dari

hitam, keabuan, dan putih. Tingkatan keabuan di sini merupakan warna abu dengan

berbagai tingkatan dari hitam hingga mendekati putih. Citra grayscale memiliki kedalaman

warna 8 bit (256 kombinasi warna keabuan) [5]. Mengubah citra berwarna menjadi citra

grayscale adalah proses awal yang dilakukan dalam pengolahan citra. Citra RGB diubah

ke dalam grayscale dapat dilakukan dengan menggunakan persamaan (2.1) sebagai

berikut:

=

+ +

3 (2.1)

di mana:

R,G,B : Red, Green, Blue

S : nilai grayscale

2.2.3 Cropping dan Resizing

Salah satu jenis transformasi geometri atau perubahan bentuk adalah proses

pemotongan citra (cropping) yang bertujuan untuk mengambil elemen citra yang

diinginkan pada citra digital. Hal ini dilakukan untuk mendapatkan data yang tepat

sehingga memudahkan dalam proses pengolahan data. Gambar 2.4 di bawah ini merupakan

contoh gambar hasil cropping.

(27)

Penentuan titik yang akan diambil yaitu menggunakan matrik_titiksudut_crop yaitu yang

merepresentasikan nilai [x,y,a,b] dimana x dan y adalah titik awal (sudut kiri atas) dari

image yang akan dicrop sedangkan a adalah jumlah piksel memanjang kearah sumbu-x dan

b adalah jumlahpiksel ke arah sumbu-y.

Rezising citra adalah proses mengubah besar kecilnya ukuran citra dalam piksel.

Pada tahap ini hanya ukuran pikseldan matriksnya yang dirubah, untuk tampilan citra tidak

ada yang berubah.

2.2.4Transformasi Affine (Affine Transformation)[5]

Metode transformasi Affine ini menggabungkan proses dasar seperti rotasi dan

penskalaan ke dalam satu proses untuk mendapatkan citra output yang diinginkan.. Secara

matematis rumus transformasi Affine adalah sebagai berikut.

2

2 = × 1

1 + (2.2)

Proses penskalaan didapat dengan mengganti nilai A dan B dengan nilai sebagai berikut.

= � 0

0 (2.3)

= 0

0 (2.4)

Sehingga didapatkan rumus pengganti untuk proses penskalaan adalah sebagai berikut.

2 2 =

� 0

0 ×

1 1 +

0

0 (2.5)

Sehingga:

2 2 =

� 0

0 ×

1

1 (2.6)

Rumus diatas menggambarkan sebuah proses linear penskalaan dalam satu proses.

Penskalaan adalah sebuah operasi geometri yang memberikan efek memperbesar

atau memperkecil ukuran citra input sesuai dengan variable penskalaan citranya. Ukuran

baru hasil penskalaan didapat melalui perkalian antara ukuran citra input dengan variable

penskalaan. Proses penskalaan dapat dilakukan dengan rumus:

� = � (2.7)

= × (2.8) (�, )

(28)

50 100 150 200 20

40 60 80 100 120

50 100 150 200

20 40 60 80 100

penskalannya akan memperbesar ukuran citra, sebaliknya apabila variabel pensklaannya

lebih kecil dari 1 maka hasilnya akan memperkecil ukuran citra. Gambar 2.5 berikut ini

menunjukkan hasil implementasi dari proses penskalaan sebesar 64x128.

(a) (b)

Gambar 2.5 Proses penskalaanpada citra potongan huruf. (a ) Citra sebelum penskalaan(b)

citra setelah penskalaan64x128

2.3 Pengenalan Pola

Mengelompokkan data numerik dan simbolik (termasuk citra) secara otomatis oleh

mesin (dalam hal komputer). Tujuan pengelompokan adalah untuk mengenali suatu objek

di dalam citra. Manusia bisa mengenali objek yang dilihatnya karena otak manusia telah

belajar mengklasifikasi objek-objek di alam sehingga mampu membedakan suatu objek

dengan lainnya. Kemampuan sistem visual manusia inilah yang dicoba ditiru mesin.

Komputer menerima masukan berupa citra objek yang akan diidentifikasi, memproses citra

tersebut, dan memberikan keluaran berupa deskirpsi objek di dalam citra.

2.4

Wavelet

2.4.1Wavelet secara umum

Menurut Sydney (1998), Wavelet merupakan gelombang mini (small wave) yang

mempunyai kemampuan mengelompokkan energi citra dan terkonsentrasi pada

sekelompok kecil koefisien, sedangkan kelompok koefisien lainnya hanya mengandung

sedikit energi yang dapat dihilangkan tanpa mengurangi nilai informasinya. Wavelettelah

banyak digunakan di berbagai bidang seperti pengolahan citra. Wavelet biasa digunakan

(29)

berlainan. Proses ini dinamakan dekomposisi, dan kemudian mengkaji setiap komponen

dengan suartu resolusi yang sesuai dengan skalanya.Transformasi wavelet merupakan

pengubahan sinyal kedalam berbagai wavelet basis dengan berbagai pergeseran dan

penyekalaan, oleh karena itu koefisien wavelet dari beberapa skala atau resolusi dapat

dihitung dari koefisien wavelet pada resolusi tinggi berikutnya. Hal ini memungkinkan

mengimplementasikan transformasi wavelet menggunakan struktur pohon yang dikenal

sebagai algoritma piramid (pyramid algorithm), bisa dilihat pada gambar 2.6 [7].

kolom

baris +1

kolom

(+1ℎ)

CAj kolom

baris ( )+1

kolom

( )+1

: konvolusikan baris dengan tapis g(n) atau h(n)

: konvolusikan kolom dengan tapis g(n) atau h(n)

: downsampling dengan menjaga kolom yang genap

: downsampling dengan menjaga baris yang genap

Gambar 2.6Algoritma pyramid. Dekomposisi wavelet satu level berdasarkan algoritma

piramid; h(n) adalah tapis pelewat bawah; g(n) adalah tapis pelewat atas;

CAj(LL) adalah koefisien rerata;

(ℎ)

(HL), ( )(LH), dan ( )(HH)

masing-masing adalah koefisien detil horisontal, vertikal dan diagonal kolom

baris

h(n)

g(n)

h(n)

g(n)

h(n)

g(n) 2 1

2 1

1 2

1 2

1 2

1 2

X

X

21 1

(30)

Proses dekomposisi tersebut dapat dilakukan sebanyak lebih dari satu kali, yaitu

sebanyak jumlah level yang telah ditentukan sebelumnya. Untuk melakukan dekomposisi

lebih dari satu kali, proses dekomposisi selanjutnya dilakukan dekomposisi pada koeficien

aproksimasi (cA) atau LL, karena berisi sebagian besar dari informasi citra. Kemudian

didapat 4 subband lagi, yaitu LL1, LH1, HL1 dan HH1. Begitu seterusnya hingga

mencapai level yang diinginkan. Sebagai contoh, terdapat citra dengan matriks input

sebagai berikut: = 1 2 5 8 3 2 2 6 2 5 7 4 8 9 7 4

filter lowpass dan filter highpass dengan jenis haar adalah sebagai berikut:

� =

1

2 1

2 0 0

0 0 1 2 1 2 �ℎ � = 1 2 − 1

2 0 0

0 0 1 2 −

1 2

Langkah pertama adalah mengalikan filter lowpass dengan matriks M terhadap

baris. Untuk memudahkan perkalian terhadap baris dilakukan transpose pada matriks M,

sehingga didapat :

= 1 5 2 8 2 7 5 4 3 2 4 6 8 7 9 4

Kemudian dilakukan perkalian matriks MT dengan filter lowpass yang menghasilkan matriks D1T.

D1 T =

1 2

1

2 0 0

0 0 1 2 1 2 × 1 5 2 8 2 7 5 4 3 2 4 6 8 7 9 4

= 2,1213 9,1923 4,9497 7,7781 3,5355 5,6568 12,0207 7,7781

Untuk mengembalikan ke baris dan kolom sebenarnya, dilakukan

(31)

1 = 2,1213 3,5355 9,1923 5,6568 4,9497 7,7781 12,0207 7,7781

Langkah selanjutnya adalah melakukan perkalian filter lowpass dengan matriks

D1 terhadap kolom. Proses tersebut menghasilkan matriks D2, sebagai berikut :

2 =

1 2

1

2 0 0

0 0 1 2 1 2 × 2,1213 3,5355 9,1923 5,6568 4,9497 7,7781 12,0207 7,7781

= 8 6,5 9 14

Matriks D2 ini yang disebut dengan koeficien aproksimasi (LL). Untuk mencari

nilai HL, LH dan HH, sama seperti langkah diatas, namun dilakukan dengan mengalikan

filter lowpass terhadap baris dan filter highpass terhadap kolom untuk HL, mengalikan

filter highpass terhadap baris dan filter lowpass terhadap kolom untuk LH dan mengalikan

filter highpass terhadap baris dan kolom untuk HH.

2.4.2Wavelet Haar[5]

Haar adalah wavelet paling tua dan paling sederhana, diperkenalkan oleh Alfred

Haar pada tahun 1909. Koefisien transformasi h0 = (h0(0), h0(1)) =

1 2,

1

2 (tapis low pass)

dan h1 = (h1(0), h1(1)) =

1 2,−

1

2 (tapis high pass) ini merupakan fungsi basis wavelet Haar.

Pada citra, tapis high pass dan tapis low pass dapat direpresentasikan sebagai matriks 2D.

Dekomposisi perataan dan pengurangan yang telah dilakukan sebelumnya sebenarnya

sama dengan melakukan dekomposisi (transformasi) citra dengan wavelet Haar. Kedua

tapis tersebut bersifat ortogonal namun tidak ortonormal. Tapis Haar yang bersifat

ortogonal dan juga ortonormal adalah:

h0 =

1 2 ,

1

2 (2.9)

h1 =

1 2 ,−

1

(32)

0 0.5 1 -1

-0.5 0 0.5 1

[image:32.595.82.522.68.593.2]

Haar Wavelet

Gambar 2.7 Wavelet Haar

2.4.3 Konvolusi

Konvolusi merupakan sebuah operasi matematika sederhana yang umum digunakan

pada pengolahan citra. Jika ada dua barisan u dan hmaka hasil konvolusinya (y) dinyatakan

dengan persamaan:

= ℎ (2.11)

=−

Di mana Notasi ringkas yang digunakan bagi konvolusi adalah

=

∗ ℎ

atau = ∗ ℎ 2.12)

Yang berarti juga bahwa konvolusi adalah komutatif (dapat dipertukarkan), yaitu:

=ℎ ∗ = ∗ ℎ (2.13)

Dengan menggunakan cara matriks, dapat memudahkan dalam perhitungan tersebut

seperti gambar 2.7 merupakan contoh penyelesaian sebuah konvolusi dari dua baris u = {1

(33)

Gambar 2.8Representasi matriks dari penjumlahan konvolusi, y = [1 5 14 26 29 21]

Berdasarkan masukan yang diterima dapat digunakan sebagai low pass filter. Low

pass filter dari sinyal x(n) dengan masukan w(n) merupakan suatu proses konvolusi antara

x(n) dengan w(n). Bila sinyal x(n) memiliki panjang yang terbatas, dan juga ujung-ujung

sinyalnya diskontinu, akan memunculkan distorsi pada ujung-ujung sinyal hasil

konvolusinya. Ada suatu metode memperpanjang sinyal x(n) dengan cara sinyal

pengulangan yang disebut periodisasi. Metode ini untuk mengatasi masalah akan sinyal

x(n) yang memiliki panjang terbatas yang diusulkan oleh Misiti et al[9]. Berikut contoh

dari metode tersebut, x(n) = {x(1), x(2), ..., x(M)} yang akan dikonvolusi dengan masukan

w(n)= {w(1), w(2), ..., w(N)}, di mana N adalah bilangan genap, dan M>N, sehingga sinyal

pengulangan dengan cara periodisasi akan menjadi

= { − + 1 ,…, , 1 ,…, , 1 ,…, −1 } (2.20)

Konvolusi sinyal yang diperpanjang xper (n) dengan masukan w(n) akan

menghasilkan sinyal keluaran

= ∗ ℎ( ) (2.14)

atau

= ℎ + 1− (2.15)

di mana M + N– 1 lebih besar dari panjang x(n). Agar sinyal output memiliki panjang yang

sama dengan sinyal input, maka hanya bagian-bagian tertentu dari sinyal output yang

(34)

jadi yang dipilihbagian-bagian tertentu dari y(n) adalah

= { + 1 ,…, + } (2.16)

2.5

Jarak Euclidean[6]

Jarak Euclidean dapat dianggap sebagai jarak yang paling pendek antar dua

poin-poin, dan pada dasarnya sama halnya dengan persamaan Pythagoras ketika digunakan di

dalam 2 dimensi. Secara matematis dapat dituliskan di dalam persamaan berikut:

d(i,j)= ( 1− 1)2+ ( 2− 2)2+⋯( − )2 (2.17)

di mana:

d(i,j) : jarak euclidean antara idan j

i : nilai matriks hasil ekstraksi ciri

j : nilai matriks dari database

Dengan d(i,j) adalah titik koordinat jarak Euclidean. Jika rumus jarak pada dua titik

berbentuk segitiga diukur dengan menggunakan rumus Phytagoras, maka untuk penerapan

penghitungan jarak dan kasus yang nyata digunakan rumus jarak Euclidean. Penerapan ini

digunakan karena ada banyak faktor yang menentukan jarak yang nyata seperti kecepatan

dan bentuk permukaan sehingga penerapan jarak Euclidean tersebut lebih cocok diterapkan

pada berbagai kasus.

2.6

Template Matching

Template matching adalah salah satu teknik dalam pengolahan citra digital yang

berfungsi untuk mencocokan tiap-tiap bagian dari suatu citra dengan citra yang menjadi

template (acuan). Teknik ini banyak digunakan dalam bidang industri sebagai bagian dari

quality control. Metode template matching sering digunakan untuk mengindentifikasi citra

karakter huruf, angka, sidik jari (fingerprint) dan aplikasi-aplikasi pencocokan citra

(35)

Prinsip metode ini adalah membandingkan antara image objek yang akan dikenali

dengan image template yang ada. Image objek yang akan dikenali,diukur tingkat

kemiripannyadengan masing-masing image template. Pengecekan kemiripan dapat

dilakukan menggunakan fungsi jarak ataupun korelasi. Pengenalan dilakukan dengan

melihat nilai tingkat kemiripan tertinggi dari image objek tersebut[11].

2.7

Matlab[12]

Matlab adalah sebuah bahasa (pemrograman) dengan unjuk kerja tinggi untuk

komputasi teknis, yang mengintegrasikan komputasi, visualisasi, dan pemrograman di

dalam lingkungan yang mudah penggunaannya dalam memecahkan persoalan dengan

solusinya yang dinyatakan dengan notasi matematik.

Nama MATLAB merupakan singkatan dari ‘matrix laboratory’. Sistem MATLAB terdiri dari 5 bagian utama, yaitu:

1. Bahasa (pemrograman) MATLAB

Bagian ini adalah bahasa (pemrograman) tingkat tinggi yang menggunakan

matriks/arraydengan pernyataan aliran kendali program, struktur data,

masukan/keluaran, dan fitur-fitur pemrograman berorientasi objek.

2. Lingkungan kerja MATLAB

Bagian ini adalah sekumpulan kakas dan fasilitas MATLAB yang digunakan oleh

pengguna atau pemrogram. Fasilitas yang dimaksutkan misalnya untuk mengelola

variabel di dalam ruang kerja (workspace) dan melakukan impor dan ekspor data.

Sedangkan kakas yang disediakan untuk pengembangan, pengelolaan, proses

debugging’, dan pembuatan profil M-files untuk aplikasi MATLAB. 3. Penanganan Grafik

Bagian ini adalah sistem grafik MATLAB, termasuk perintah-perintah (program)

tingkat tinggi untuk visualisasi data dimensi-2 dan dimensi-3, pengolahan citra,

animasi, dan presentasi grafik. Selain itu, bagian ini juga termasuk

perintah-perintah (program) tingkat rendah untuk menetapkan sendiri tampilan grafik seperti

halnya membuat antarmuka pengguna grafis untuk aplikasi MATLAB.

4. Pustaka (library) fungsi matematis MATLAB

Bagian ini adalah koleksi algoritma komputasi mulai dari fungsi dasar seperti

(36)

aritmatika bilangan kompleks; fungsi-fungsi seperti invers matriks, nilai eigan

matriks, fungsi Bessel, dan FFT (fast fourier transform).

5. API (Apllication Program Interface) MATLAB

Bagian ini adalah pustaka (library) untuk menuliskan program dalam bahasa C dan

Fortran yang berinteraksi dengan MATLAB, termasuk fasilitas untuk memanggil

rutin program dari MATLAB (dynamic linking), memanggil MATLAB sebagai

mesin komputasi (computational engine), dan untuk pembacaan serta penulisan

[image:36.595.87.524.103.459.2]

MAT-files.

Gambar 2.9Contoh tampilan Matlab

2.8

Webcam

Webcam atau web cameraadalah sebuah kamera video digital kecil yang

dihubungkan ke komputer melalui port USB. Webcam digunakan juga sebagai pengambil

citra/gambar yang akan diolah.Gambar yang diambil oleh WebCam ditampilkan ke layar

monitor, karena dikendalikan oleh komputer maka ada interface atau port yang digunakan

untuk menghubungkan webcamdengan komputer atau jaringan. Ada beberapa orang

mengartikan WebCam sebagai Web pages + Camera, karena dengan menggunakan

WebCam untuk mengambil gambar video secara aktual bisa langsung di upload bila

komputer yang mengendalikan terkoneksi internet [13].

Sebuah web camera yang sederhana terdiri dari sebuah lensa standar, dipasang di

sebuah papan sirkuit untuk menangkap sinyal gambar; casing (cover), termasuk casing

depan dan casing samping untuk menutupi lensa standar dan memiliki sebuah lubang lensa

di casing depan yang berguna untuk memasukkan gambar; kabel support, yang dibuat dari

(37)

satu lagi memiliki connector, kabel ini dikontrol untuk menyesuaikan ketinggian, arah dan

sudut pandang web camera.. Gambar 2.9 menunjukkan salah satu contoh webcam.

Gambar 2.10 Contoh webcam

2.9

GUIDE MATLAB[14]

GUIDE atau GUI Builder merupakan sebuah Graphical User Interface (GUI) yang

dibangun dengan objek grafis seperti tombol (pushbutton), edit, slider, text,

combo,sumbu(axes), maupun menu dan lain-lain untuk kita gunakan. Sebagai contoh,

ketikamenggerakkan slider, maka kita dapat melihat perubahan sebuah nilai.

Kemudianketika kita menekan tombol OK, maka aplikasi akan dijalankan. Aplikasi

yangmenggunakan GUI umumnya lebih mudah dipelajari dan digunakan karena orangyang

menjalankannya tidak perlu mengetahui perintah yang ada dan bagaimanaperintah bekerja.

Gambar 3.0 merupakan Blank GUI (Default).

(38)

18

BAB III

PERANCANGAN

3.1

Gambaran Sistem

Gambaran sistem yang akan dibuat adalah sistem pengenalan huruf jawa jenis cetak

[image:38.595.103.519.246.520.2]

secara real time. Secara keseluruhan sistem tersebut dapat dilihat pada gambar 3.1

Gambar 3.1 Gambaran keseluruhan sistem

Sistem pengenalan huruf jawa jenis cetak terdiri dari hardware dan software.

Hardware yang digunakan adalah potongan huruf jawa, fixture, laptop, lampu dan webcam

yang dihubungkan dengan laptop untuk pengambilan citra. Pemrograman Matlab R2010a

merupakan software pada laptop yang berfungsi sebagai user interface dalam proses

pengenalan.

3.1.1 Fixture

Fixture digunakan sebagai alat pemegang serta dudukan webcam dan serpihan

huruf jawa jenis cetak. Fixture yang digunakan terbuat dari kayu. Posisi webcam tegak

lurus dengan posisi potongan huruf jawa jenis cetak agar mendapatkan hasil citra yang

simetris.

Sudut 65o

26cm 26cm

(39)

3.1.2 Potongan Huruf Jawa Jenis Cetak

potongan huruf jawa jenis cetak yang digunakan merupakan potongan dari poster,

sesuai dengan poster-poster yang sering digunakan pada umumnya untuk proses

pembelajaran anak sekolahan. Potongan huruf jawa yang digunakan mempunyai ukuran

template 9x5 cm dengan ukuran huruf yang paling besar adalah 6,8x3, dan dapat dilihat

[image:39.595.78.546.189.610.2]

pada contoh gambar 3.2.

gambar 3.2 Contoh potongan huruf jawa

3.1.3 WebCam

Webcam yang digunakan adalah webcam merk Logitech seri c 170h, sebagai

perangkat untuk mengambil citra potongan huruf jawa. Pada proses pengambilan citra

menggunakan resolusi 640x480. Spesifikasi webcam dapat diihat pada tabel 3.1.

Tabel 3.1 Spesifikasi Webcam Logitech c 170h

High definition video (HD) VGA

Photo Quality 5 Megapixel

Video Quality Good

Focus Type Always Focused

Auto Light Correction -

3.2

Proses Pengenalan Potongan Huruf Jawa

Proses di mana potongan huruf jawa yang dicapture dikenali bentuknya adalah

proses pengenalan potongan huruf jawa. Secara garis besar proses pengenalan terdiri dari

empat tahap yaitu pengambilan citra, preprocessing, pengenalan, dan keluaran. Proses

(40)

Pengambilan citra potongan

huruf jawa

Penentuan keluaran Penghitungan

fungsi jarak

euclidean

Ekstraksi ciri menggunakan

wavelet

Keluaran berupa teks dan suara

Database

potongan huruf

Preprocessing

Gambar 3.3 Blok diagram proses pengenalan potongan huruf jawa.

Citra masukan berupa potongan huruf jawa masuk ke tahapan pengambilan citra,

kemudian tahap preprocessing adalah tahap di mana citra yang telah dikonversi ke dalam

bentuk grayscale akan dicropping sebesar citra potongan huruf jawa, setelah citra

dicropping selanjutnya citra diresizing sesuai dengan ukuran yang diinginkan. Citra yang

telah diresizing menjadi masukan ke tahap selanjutnya adalah tahap pengenalan. Tahap

pengenalan terdiri dari ekstraksi ciri, penghitungan fungsi jarak, dan database citra huruf.

Terakhir dari tahap pengenalan huruf yaitu tahap penentuan keluaran. Hasil pengenalan

huruf ditentukan berdasarkan jarak minimum yang diperoleh setelah proses penghitungan

jarak.

3.2.1 Citra Potongan Huruf Jawa

Citra potongan huruf jawa diambil menggunakan webcam, gambar yang akan

diambil (capture) oleh webcam akan disimpan dalam satu folder. Jarak pengambilan

gambar oleh webcam dengan potongan huruf jawa adalah 21cm dengan sudut kemiringan

65º dan menghasilkan gambar yang fokus. Pada proses ini memakai cahaya sendiri yaitu

dengan menggunakan cahaya dua lampu LED 5 watt yang dipasang pada lampu belajar

agar tidak bergantung pada cahaya sekitar.

Pada proses pengambilan citra, sebelumnya webcam terlebih dulu diinisialisaasi ke

dalam program dengan menggunakan fungsi imaqhwinfo. Fungsi imaqhwinfo bertujuan

untuk mengetahui nama adaptor dalam webcam tersebut. Kemudian diinisialisasi sesuai

nama adaptornya yaitu winvideo dan untuk mengambil citra menggunakan perintah getsnapsot.

Berikut ini merupakan perintah program inisialisasi webcam dan pengambilan citra.

vidobj = videoinput('winvideo',1,'YUY2_640x480'); preview(vidobj);

(41)

frame = getsnapshot(vidobj); stop(vidobj)

delete(vidobj)

gambar=yuy2torgb(frame); imshow(gambar)

3.2.2 Tahap Preprocessing

Preprocessing merupakan proses di mana ada tiga tahap yaitu grayscale, cropping,

dan resizing. Secara garis besar dapat dilihat pada gambar 3.4.

Mulai

Input: Citra potongan

huruf

Grayscale

Cropping

Resizing

Output: Citra hasil

Preprocessing

[image:41.595.99.494.214.599.2]

Selesai

Gambar 3.4 Diagram alir pemrosesan citra

Tahap grayscale menggunakan perintah program rgb2gray yang berada di dalam

matlab. Fungsinya untuk mengubah citra potongan huruf jawa yang telah diambil menjadi

(42)

X: 496 Y: 208 Index: 0.3098 RGB: 0.294, 0.294, 0.294 X: 248 Y: 208

Index: 0.851 RGB: 0.851, 0.851, 0.851

X: 248 Y: 338 Index: 0.8196 RGB: 0.816, 0.816, 0.816

50 100 150 200 20

40 60 80 100 120

[image:42.595.88.523.368.707.2]

(a) (b)

Gambar 3.5 contoh konversi citra potongan huruf dengan RGB (a) menjadi grayscale (b)

>> a=imread('1.jpg'); >> x=double(rgb2gray(a)); >> gmbr=x/255;

>> imshow(gmbr)

Tahap cropping menggunakan perintah program imcrop I, Δ Δ yang telah disediakan di dalam matlab. Hal tersebut dilakukan untuk memotong bagian citra atau

potongan huruf jawa yang tidak digunakan dalam proses pengenalan. Nilai x dan y adalah

koordinat pada sumbu x dan y kiri atas ditunjukkan pada Gambar 3.6 bagian a, Δ adalah

selisih antara sumbu x kanan atas dengan sumbu x kiri atas ditunjukkan pada Gambar 3.6

bagian b, Δ adalah selisih antara sumbu y kiri bawah dengan sumbu y kiri atas

ditunjukkan pada Gambar 3.6 bagian c. Citra hasil cropping dapat dilihat pada gambar 3.6

bagian d.

)

(a) (b) (c)

(d)

(43)

10 20 30 5

10 15

50 100 150 200 20

40 60 80 100 120

20 40 60 80 100120 20

40 60

>> a2=imcrop(gmbr,[248 208 248 130]); >> imshow(a2)

Tahap resizing menggunakan perintah program imresize. Ukuran resizing yang digunakan

akan bervariasi dan ukuran dari ekstraksi ciri wavelet akan menyesuaikan dengan ukuran

resizing yang digunakan. Contoh nilai-nilai pikel yang bervariasi seperti 32x64, 16x32,

8x16. Citra hasil resizing dapat dilihat pada gambar 3.7.

(a) (b) (c)

Gambar 3.7 Contoh resizing pada citra potongan huruf. (a) Citra sebelum diresizing. (b)

citra setelah diresizing 64x128. (c) citra gambar a setelah diresizing 16x32

>> a3=imresize(a2,[64 128]); >> imshow(a3); axis on

3.2.3 Tahap Ekstraksi Ciri

Wavelet adalah ekstraksi ciri yang digunakan dalam tahap pengambilan ciri pada

suatu citra. Wavelet yang digunakan yaitu wavelet Haar yang memiliki 4 macam filter,

tetapi yang digunakan hanya low-pass filter dekomposisi karena hanya bentuk dasar dari

citra yang akan dicari. Wavelet Haar dilakukan dengan menerapkan konvolusi dan low-pas

filter dekomposisi secara simultan untuk mendapatkan sinyal global. Secara keseluruhan

tahap ekstraksi ciri dapat dilihat pada gambar 3.8. Masukan dari proses ekstraksi ciri

adalah citra hasil preprocessing yang kemudian akan dikonvolusi dilanjutkan dengan

tahap downsampling. Output dari ekstraksi ciri tergantung dari jumlah desimasi (N) yang

akan di tentukan oleh user. Tahap ini akan melakukan pengulangan sampai menghasilkan

[image:43.595.77.531.214.502.2]
(44)

Mulai

Desimasi = N

Output: Hasil ekstraksi ciri

Selesai Input: Citra Hasil Preprocessing

Konvolusi menggunakan

wavelet Haar

Downsampling

N = 0 Tidak

[image:44.595.91.515.67.437.2]

Ya N = N - 1

Gambar 3.8 Diagram ekstraksi ciri

Tahap konvolusi merupakan tahap untuk melakukan filtering, menggunakan

decomposition low pass filter Wavelet Haar. Tahap konvolusi ini berada pada bidang

dimensi dua, maka konvolusi diterapkan dua kali yaitu pada kolom dan baris citra input.

Dari masukan berupa citra hasil preprocessing yang kemudian akan dikonvolusi per baris

dan per kolom (lihat gambar 3.9).

Mulai

Selesai Input:

Citra hasil preprocessing

Konvolusi (1D) dengan ekstensi per baris

Konvolusi (1D) dengan ekstensi per kolom

[image:44.595.89.490.421.723.2]

Output: Hasil Konvolusi 2D

(45)

Tahap downsampling adalah tahap setelah konvolusi, di mana hasil dari konvolusi

merupakan masukan untuk downsampling. Untuk memproses masukan ada dua proses

yaitu menghilangkan baris dan kolom ganjil dengan menjaga baris dan kolom genap

seperti diperlihatkan pada gambar 3.10

Mulai

Selesai Input: Hasil konvolusi 2D Menghilangkan baris ganjil Menghilangkan kolom ganjil

Output:

[image:45.595.96.497.163.531.2]

Hasil Downsampling(hasil ekstraksi ciri)

Gambar 3.10 Diagram alir downsampling

3.2.4 Tahap Fungsi Jarak

Tahap fungsi jarak ini adalah tahap membandingkan citra masukan huruf yang

dicapture dengan database huruf yang telah dimasukkan sebelumnya. Dalam sistem ini

yang digunakan yaitu fungsi jarak Euclidean. Jarak euclidean adalah jarak untuk mencari

selisih dari data yang dibandingkan. Hasil dari selisih perbandingan merupakan jarak yang

paling pendek yang kemudian akan digunakan dalam proses selanjutnya yaitu penentuan

(46)

Mulai Input:

Hasil Ekstraksi ciri masukan, Ekstraksi ciri database

Penghitungan jarak: Ekstraksi ciri data masukan dengan ekstraksi ciri database

Output:

Hasil perhitungan jarak menghasilkan jarak minimum

[image:46.595.88.512.69.378.2]

Selesai

Gambar 3.11 Diagram alir fungsi jarak Euclidean

3.2.5 Penentuan Keluaran

Pada proses penentuan keluaran ini hasil pengenalan potongan huruf jawa

ditentukan berdasarkan selisih perbandingan jarak yang paling pendek yang didapatkan

setelah proses penghitungan jarak. Proses ini adalah bagian sistem terakhir dari proses

pengenalan potongan huruf jawa jenis cetak, dapat dilihat pada gambar 3.12.

Mulai

Input: Hasil perhitungan jarak minimum (r)

Citra keluaran = jarak minimum (r)

Output: Hasil berupa teks dan suara

Selesai

[image:46.595.89.511.342.703.2]
(47)

3.3

Perancangan Database Huruf

Pada sistem pengenalan huruf jawa jenis cetak ada sebuah penentuan yang

digunakan sebagai acuan dalam pengenalan yaitu database. Database akan dibandingkan

dengan citra masukan huruf yang telah dicapture. Perancangan database pada sistem

pengenalan ini terdiri dari 20 huruf aksara jawa yaitu ha na ca...ba tha nga. Gambar 3.13

menunjukkan blok diagram perancangan database.

Pengambilan citra

Database

potongan huruf Ekstraksi ciri

menggunakan

[image:47.595.82.526.210.632.2]

wavelet preprocessing

Gambar 3.13 Blok diagram perancangan database

Dalam penelitian ini, terdapat 14 set database huruf jawa yang dibuat berdasarkan

kombinasi nilai–nilai yang akan dievaluasi. Nilai yang dievaluasi dapat dilihat pada tabel 3.2.

Tabel 3.2 Jumlah kombinasi set database

Dari (pixel) Ke (pixel)

2x4

8x16 2

16x32 3

32x64 4

64x128 5

Jumlah keseluruhan 14

3.4

Huruf Uji

Huruf uji diambil setelah pengguna menekan tombol “Ambil Gambar”. Hasil citra

atau sampel diambil dengan posisi potongan huruf jawa jenis cetak sudah tetap dan

(48)

citra potongan huruf jawa jenis cetak, preprocessing, ekstraksi ciri wavelet, dan fungsi

jarak euclidean. Hasil proses tersebut disimpan dan kemudian diproses kembali untuk

mendapatkan hasil pengenalan potongan huruf jawa jenis cetak secara real time.

3.5

Perancangan Tampilan GUI

Tampilan interface pada perancangan sistem pengenalan huruf menggunakan GUI

(Graphical User Interface) matlab yang bertujuan untuk membantu dalam proses

pengenalan huruf. Secara keseluruhan sistem tersebut dapat dilihat pada gambar 3.14.

Camera

Kamera aktif Ambil gambar

Variasi Desimasi

Proses

Preprocessing

Cropping Resizing

Keluaran berupa huruf

Reset

Keluar

Ekstraksi CIri

Hasil wavelet

Page 1

Sketsa Perancangan GUI

Variasi Resizing

Keluaran berupa

[image:48.595.88.523.241.599.2]

suara

(49)

29

BAB IV

HASIL DAN PEMBAHASAN

Sistem program yang telah dirancang akan dilakukan sebuah pengujian. Dari

pengujian tersebut muncul hasil berupa data-data. Dalam bab ini membahas mengenai

hasil pengujian sistem program tersebut dalam melakukan pengenalan huruf jawa carakan.

Pengujian sisterm perlu dilakukan untuk mengetahui suatu sistem dapat bekerja dengan

baik sesuai dengan perncangan.

4.1

Pengujian Program Pengenalan Huruf Jawa Carakan secara Real

Time

Pengujian sistem program bertujuan untuk mengetahui suatu sistem dapat bekerja

dengan baik sesuai perncangan yang sudah dibuat sebelumnya. Pada pengujian program

menggunakan laptop dengan spesifikasi sebagai berikut:

a. Processor Intel(R) Core(TM) i5-2430M CPU @ 2.40GHz

b. RAM 2 GB

c. Matlab R2010a

d. Tipesistem operasi32 bit

Di bawah ini adalah proses untuk menjalankan program pengenalan huruf aksara

jawa carakan:

[image:49.595.81.529.206.675.2]

1. Mengklik dua kali icon Matlab R2010apada layar dekstop seperti gambar 4.1

(50)

2. Setelah melakukan langkah 1, akan muncul tampilan awal software Matlab seperti

[image:50.595.96.521.121.587.2]

pada gambar 4.2.

Gambar 4.2. Tampilan awal Matlab R2010a

3. Perlu memastikan terlebih dahulu pada Current Directory(1) sebelum membuka

tampilan program utama dari software Matlab, sudah sesuai dengan tempat

penyimpanan program yang telah dirancang.

4. Kemudian ketik mulai pada command window untuk memunculkan tampilan

jendela pengenalan huruf jawa carakan seperti yang ditunjukkan pada gambar 4.3,

klik run untuk menjalankan program.

5. Setelah di run, akan muncul tampilan seperti gambar 4.4.

4.1.1. Tombol Kamera Aktif

Tombol kamera aktif digunakan untuk menghubungkan antara webcam dengan

Matlab dan kemudian ditampilkan ke dalam proses pengenalan huruf jawa carakan. Proses

tombol kamera aktif sebagai berikut:

% --- Executes on button press in pushbutton1.

function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) imaqhwinfo;

info = imaqhwinfo('winvideo');

(51)

vidobj = videoinput('winvideo',1,'YUY2_640x480'); vidobj.FramesPerTrigger = 1 ;

triggerconfig(vidobj, 'manual');

vidRes = get(vidobj, 'VideoResolution'); imWidth = 640;

imHeight = 480;

nBands = get(vidobj, 'NumberOfBands');

hImage = image(zeros(imHeight, imWidth, nBands), 'parent',handles.axes2); preview(vidobj, hImage);

Perintah program imaqhwinfo dijalankan sebelum memulai mengambil data dari

video kamera untuk memastikan adapter kamera terbaca dengan baik. Secara garis besar

perintah program tersebutuntuk menampilkan informasi yang akan disampaikan oleh

webcam dan kemudian informasi tersebut akan diinisialisasi di dalam program agar antara

webcam dengan software Matlab dapat melakukan komunikasi. Dalam proses tersebut

yang tertampil seperti video resolusi, lebar, panjang, port webcam, dan band dari video.

Handle Image telah didapatkan maka perintah program preview dapat berjalan yang

berfungsi untuk menampilkan video pada saat kamera aktif dengan inisialisasi yang telah

digunakan.

4.1.2. Tombol Ambil Gambar

Tombol ambil gambar digunakan untuk meng-capture potongan gambar huruf jawa

carakan yang akan dikenali dalam proses pengenalan citra. Program tombol ambil gambar

sebagai berikut:

% --- Executes on button press in pushbutton2.

function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) imaqhwinfo;

info = imaqhwinfo('winvideo');

dev_info = imaqhwinfo('winvideo',1);

vidobj = videoinput('winvideo',1,'YUY2_640x480'); vidobj.FramesPerTrigger = 1 ;

triggerconfig(vidobj, 'manual');

vidRes = get(vidobj, 'VideoResolution'); imWidth = 640 ;

imHeight = 480;

nBands = get(vidobj, 'NumberOfBands');

hImage = image(zeros(imHeight, imWidth, nBands), 'parent',handles.axes2); preview(vidobj, hImage);

Perintah program di atas sama dengan program pada “tombol kamera aktif” tetapi

(52)

mengubah warna citra menjadi keabu-abuan. Citra berwarna keabu-abuan karena pada saat

preprocessing citra yang telah dicapture harus mengalami proses grayscale.

start(vidobj); pause(1); trigger(vidobj); stoppreview(vidobj);

capt1=double(getdata(vidobj));

gambar=yuy2torgb1(capt1);

Perintah program getdata adalah untuk capturing citra pada saat webcam dalam

kondisi aktif.

handles.b=gambar;

guidata(hObject,handles) axes(handles.axes2); imshow(gambar)

Citra yang sudah mengalami capturing akan diinisialisasi menggunakan handles agar dapat dipanggil dalam file figure maupun file.m, kemudian akan tampil pada axes2.

4.1.3. Pop-Up Menu

Pop-up menu digunakan untuk memilih variasi ukuran atau nilai yang diinginkan

sebelum melanjutkan ke tombol proses pengenalan. Variasi tersebut terdapat pada pop-up

menu1 dan pop-up menu2.

Perintah program yang digunakan pada pop-up menu1 adalah sebagai berikut:

% --- Executes on selection change in popupmenu3.

function popupmenu3_Callback(hObject, eventdata, handles) % hObject handle to popupmenu3 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) indeks=get(handles.popupmenu3,'Value');

switch indeks

case 2

des=1;

case 3

des=2;

case 4

des=3;

case 5

des=4;

case 6

des=5;

end

handles.des=des;

(53)

Program di atas adalah pemilihan nilai variasi desimasi. Nilai variasi desimasi

diinisialisasi dengan nama “des” yang terdiri dari nilai 1,2,3,4, dan 5. Inisialisasi kata “des”

diubah menjadi “handles.des” agar nilai desimasi yang telah dipilih oleh user dapat

dikenali sebagai bahasa program untuk proses selanjutnya.

Perintah program yang digunakan pada pop-up menu2 adalah sebagai berikut:

% --- Executes on selection change in popupmenu4.

function popupmenu4_Callback(hObject, eventdata, handles) % hObject handle to popupmenu4 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) indeks=get(handles.popupmenu4,'Value');

switch indeks

case 2

ukuran=64;

case 3

ukuran=32;

case 4

ukuran=16;

case 5

ukuran=8;

end

handles.ukuran=ukuran; guidata(hObject,handles);

Program pada pop-up menu2 hampirsama dengan program pop-up menu1, yang

membedakan adalah pada pop-up menu2 untuk pemilihan nilai variasi resizing. Nilai

variasi resizing diinisialisasi dengan nama “ukuran”yang terdiri dari nilai 64(64x128),

32(32x64), 16(16x32), dan 8(8x16). Kata “handles” pada program di atas sama dengan di

program pop-up menu1yaituuntukmembuat agar nilairesizing yang telahdipilihuser

dapatdikenalisebagaibahasa program untuklangkahselanjutnya.

4.1.4. Tombol Proses

Tombol proses adalah tombol yang berfungsi untuk menjalankan proses pengenalan

mulai dari processing yang terdiri dari cropping dan resizing, ekstraksi ciri, jarak

Euclidean dan hasil keluaran berupa teks. Tombol proses ini berkaitan dengan yang sudah

dibahas pada bab III pada gambar 3.4 tentang diagram alir pemrosesan citra Berikut

adalah program dari tombol proses:

% --- Executes on button press in pushbutton5.

function pushbutton5_Callback(hObject, eventdata, handles) % hObject handle to pushbutton5 (see GCBO)

(54)

% handles structure with handles and user data (see GUIDATA)

ukuran=handles.ukuran; des=handles.des;

if (ukuran==64) &(des==1) load dB1r64d1;

elseif (ukuran==64) &(des==2) load dB1r64d2;

elseif (ukuran==64) &(des==3) load dB1r64d3;

elseif (ukuran==64) &(des==4) load dB1r64d4;

elseif (ukuran==64) &(des==5) load dB1r64d5;

elseif (ukuran==32) &(des==1) load dB1r32d1;

elseif (ukuran==32) &(des==2) load dB1r32d2;

elseif (ukuran==32) &(des==3) load dB1r32d3;

elseif (ukuran==32) &(des==4) load dB1r32d4;

elseif (ukuran==16) &(des==1) load dB1r16d1;

elseif (ukuran==16) &(des==2) load dB1r16d2;

Gambar

Gambar 2.7 Wavelet Haar
Gambar 2.9Contoh tampilan Matlab
Gambar 3.1 Gambaran keseluruhan sistem
gambar 3.2 Contoh potongan huruf jawa
+7

Referensi

Dokumen terkait

Hasil penelitian menunjukkan bahwa kepemimpinan transformasional dan lingkungan kerja fisik memiliki pengaruh positif dan signifikan secara langsung terhadap kinerja pegawai,

1) Persentase cakupan wilayah pesisir dan lautan pada WPP-NRI yang terawasi dari kegiatan dan pemanfaatan ekosistem dan kawasan konservasi perairan illegal dan/atau

Obligasi merupakan suatu surat utang jangka panjang yang dapat dipindahtangankan yang berisi tentang janji dari pihak yang menerbitkan untuk membayar imbalan

Agar pelaksanaan ketentuan Pasal 114 KUHAP dapat berjalan maksimal dan memiliki suatu kepastian hukum maka perlu diatur dalam suatu peraturan perundang-undangan yang

Berdasarkan hasil analisis dengan menggunakan uji Kruskal-Wallis diperoleh tidak terdapat perbedaan kepadatan telur di dalam rumah berdasarkan warna ovitrap pada ketinggian

Tajam penglihatan akhir pada kasus trauma mata dipengaruhi oleh multifaktor, antara lain : penyebab trauma, akibat langsung pada jaringan ikat bola mata yang terkena, ada

Penawaran umum saham ditawarkan kepada para investor secara keseluruhan, sedangkan pada penawaran umum terbatas saham yang ditawarkan perusahaan kepada pemegang

Pada tanggal 27 Juni 2008, PT Bank Pan Indonesia Tbk (Bank Panin), pemegang saham, melakukan transaksi penjualan saham Perusahaan melalui PT Bursa Efek Indonesia sebanyak