ALGORITMA THINNING STENTIFORD UNTUK MENDAPATKAN BENTUK DASAR HURUF Skripsi Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Sains Program Studi Ilmu Komputer

  

ALGORITMA THINNING STENTIFORD

UNTUK MENDAPATKAN BENTUK DASAR HURUF

Skripsi

Diajukan untuk Memenuhi Salah Satu Syarat

  

Memperoleh Gelar Sarjana Sains

Program Studi Ilmu Komputer

Oleh

Leonardus Beni Aji Prabangkoro

  

NIM : 043124005

PROGRAM STUDI ILMU KOMPUTER

JURUSAN MATEMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

  

STENTIFORD THINNING ALGORITHM

TO OBTAIN THE BASIC FORM OF LETTER

A Thesis

Presented as Partial Fulfillment of the Requirements

to obtain the Sarjana Sains Degree

in Computer Science

  

By

Leonardus Beni Aji Prabangkoro

Student Number : 043124005

COMPUTER SCIENCE STUDY PROGRAM

  

DEPARTMENT OF MATHEMATHICS

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

HALAMAN MOTTO

  

Love, like truth and beauty, is concrete. Love is not fundamentally a sweet feeling;

not, at heart, a matter of sentiment, attachment, or being "drawn toward." Love is

active, effective, a matter of making reciprocal and mutually beneficial relation with

one's friends and enemies

  (Carter Heyward)

You're not obligated to win. You're obligated to keep trying to do the best you can

every day.

  (Marian Wright Edelman) Difficulties increase the nearer we get to the goal.

  (Goethe)

HALAMAN PERSEMBAHAN

  Tugas akhir ini kupersembahkan untuk ¾ Tuhan Yesus Kristus, Puji syukur atas segala rahmat, anugrah dan cinta kasih – Mu yang selama

ini yang telah membimbing hidupku untuk mencapai tahap ini.

  ¾ Kedua Orang Tuaku, Bapak dan Ibu, Tugas akhirku ini sebagai ungkapan hormat, terima kasih dan baktiku.

  ¾ Kakak dan Adikku, Anita dan Yoyok, Terima kasih atas dukungan kalian, O.. ya..dan maafkan adik dan

kakakmu ini yang telah mengambil jatah waktu komputer kalian

  

ABSTRAK

Kemajuan teknologi telah membuat perkembangan aplikasi di bidang

pengenalan karakter maju dengan pesat. Pengenalan karakter meliputi pengolahan

dan analisa dokumen citra. Data masukan untuk analisa dokumen atau pengenalan

karakter umumnya berupa citra dokumen yang diperoleh secara offline. Dalam

pengolahan dan analisa ada beberapa proses yang umumnya dijalankan yaitu

grayscaling , binerisasi atau tresholding dan thinning. Thinning merupakan operasi

pengolahan citra yang beroperasi pada citra biner dengan mengikis bagian objek

menjadi bentuk garis yang mewakili kerangka dari objek tersebut.

Operasi thinning mempunyai beberapa definisi. Iterative Morphological

Method merupakan salah satu dari definisi tersebut. Metode ini melakukan operasi

penghapusan piksel dengan dasar pencocokan pada template. Algoritma Stentiford

menjadi salah satu contoh dari metode ini yang dapat digunakan.

  Dari hasil pengujian, Algoritma Stentiford mempunyai beberapa isu atau

kekurangan. Dalam pengujian yang telah dilakukan, timbulnya line fuzz membuat

data citra hasil pengoperasian thinning secara visual tidak memenuhi asumsi atau

definisi dari kerangka. Oleh karena itu, beberapa operasi dapat ditambahkan untuk

mengatasi permasalahan ini.

  

ABSTRACT

The progress of technology has made a great development in pattern

recognition field of study. Pattern recognition is covering image document

processing and analysis. Input data that used for document analysis and letter

recognition are generally in a form of image document that obtained in an offline

manner. Grayscaling, tresholding and thinning are few process that generally

included in processing and analysis step. Thinning is an image-processing operation

in which binary valued image regions are reduced to lines that approximate the

center lines, or skeletons of the regions.

  Thinning operation has several definitions. Iterative morphological method is

one of those definitions. This operation is being done by doing a deletion process to

some pixels that have a match to some templates. Stentiford algorithm is an example

for this kind of method that can be used.

  The test shows that Stentiford Thinning Algorithm has some issues and

problems. On the test that already done, line fuzz appearance had made input data

became visually inappropriate to the assumption and definition for skeleton.

Therefore, additional operations are needed to solve these problems.

KATA PENGANTAR

  Puji syukur penulis panjatkan ke Tuhan atas berkat dan cinta kasih – Nya,

sehingga penulis dapat menyelesaikan penelitian dan penyusunan skripsi berjudul

“Algoritma Thinning Stentiford untuk Mendapatkan Bentuk Dasar Huruf”. Skripsi

ini disusun sebagai salah satu syarat mencapai gelar Sarjana Sains (S.Si) Program

Studi Ilmu Komputer.

  Dalam pelaksanaan penelitian dan penyusunan skripsi ini tidak terlepas dari bantuan berbagai pihak. Oleh karena itu penulis ucapkan terima kasih kepada:

  1. Bapak Y. Joko Nugroho, S.Si selaku dosen pembimbing, terima kasih atas segala bimbingan, saran, kritik dan kesabarannya dalam membimbing penulis selama menyelesaikan skripsi ini.

  2. Ibu P. H. Prima Rosa, S.Si, M.Sc. , selaku kaprodi ilmu komputer, Terima Kasih sudah menemani kami dan menjadi ibu kedua bagi kami sebagai generasi ikom yang terakhir.

  3. Kedua Orang Tuaku, Bapak dan Ibu, Terima kasih atas restu dan dukungan kalian, dan terima kasih atas persediaan kopi yang tak perna habis.

  4. Kakak dan Adikku, Anita dan Yoyok, Terima kasih atas dukungan kalian, O..Ya...dan maafkan adik atau kakakmu ini yang telah mengambil jatah waktu komputer kalian.

  6. Mas Susilo, Terima kasih atas bantuannya selama ini.

  7. Steven, Thanks Buat Nomer HP nya!!, Ayo buruan nyusul.

  8. Komunitas Lab, Gurit, Lilik, Iyus, Hendro, Ferry, Yus,Terima Kasih untuk sentilan – sentilan kalian.

  9. Komunitas Triple3Bugs, Angga, Aryo`, Cnug, DC, Evan, Krena, Emon, Miko, Kotank....hei kapan kita ngumpul lagi?, “Ayo...Ngopi neng Code!”, terima kasih sudah menjadi pengobat stress di masa – masa beratku.

  10. Teman – Teman IKOM angkatan 2004, Seto, Thomas, Kornel, Beni Dam, Henry, Ipunk, Hali, Githa, Mia, Tina, Arum, Bli, Adit, Steven, Debi, Pakdhe (ndari), Yo, Dewi, Amel, Munik, Via, Fitria, Madya, Willy, Trivo, Agung, Elin, Eka, Desi, Terima kasih atas dukungan dan kerjasama kalian selama ini.

  11. Lielie, Sobat jauhku, Terima kasih untuk dorongan semangat yang kau beri tanpa henti.

  12. Dan pihak – pihak yang belum dapat penulis sebutkan. Penulis menyadari bahwa skripsi ini masih jauh dari sempurna. Harapan penulis semoga skripsi ini bermanfaat bagi kemajuan kita semua.

  Yogyakarta, Juli 2008 Penulis Leonardus Beni Aji Prabangkoro

PERNYATAAN KEASLIAN KARYA

  Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini

tidak memuat dan menggunakan hasil karya atau bagian dari hasil karya orang lain,

kecuali yang telah tercantum dan disebutkan dalam kutipan serta daftar pustaka

sebagaimana layaknya karya ilmiah.

  Yogyakarta, Juli 2008 Penulis Leonardus Beni Aji Prabangkoro

  

DAFTAR ISI

HALAMAN JUDUL ........................................................................................... i

HALAMAN PERSETUJUAN PEMBIMBING .............................................. ii

HALAMAN PENGESAHAN ............................................................................ iii

HALAMAN MOTTO ........................................................................................ iv

HALAMAN PERSEMBAHAN ......................................................................... v

ABSTRAK .......................................................................................................... vi

ABSTRACT ........................................................................................................ vii

KATA PENGANTAR ........................................................................................ viii

HALAMAN KEASLIAN KARYA ................................................................... x

DAFTAR ISI ....................................................................................................... xi

DAFTAR TABEL ............................................................................................... xiv

DAFTAR GAMBAR .......................................................................................... xv

BAB I PENDAHULUAN ...................................................................................

  1

  1.1. Latar Belakang ................................................................................... 1

1.2. Perumusan Masalah ..........................................................................

  2

1.3. Batasan Masalah ................................................................................

  2

1.4. Tujuan Dan Manfaat Penelitian .......................................................

  3

1.5. Metode Penulisan ...............................................................................

  3

  1.6. Sistematika Penulisan ........................................................................ 4 BAB II DASAR TEORI .....................................................................................

  6

2.1 Citra .....................................................................................................

  6 2.1.1. Pengertian Citra ....................................................................

  6 2.1.2. Format Citra Digital .............................................................

  6

2.2. Pemrosesan Citra ...............................................................................

  8 2.3. Thinning .............................................................................................

  9

   2.3.1. Pengertian Thinning .............................................................

  9 2.3.2. Definisi Thinning ...................................................................

  10 2.4. Algoritma Thinning Stentiford .........................................................

  14 BAB III ANALISA DAN PERANCANGAN ...................................................

  19

3.1. Rancangan Umum .............................................................................

  19

3.2. Perancangan Proses Dalam Aplikasi ...............................................

  19 3.2.1. Proses Input Citra .................................................................

  20 3.2.2. Proses Grayscaling ................................................................

  20 3.2.3. Proses Binerisasi ...................................................................

  21

  3.2.4. Proses penduplikasian citra ke dalam bentuk array 2 dimensi ...................................................................................

  21 3.2.5. Proses Thinning .....................................................................

  22

  3.2.6. Proses rekonstruksi array 2 dimensi ke dalam bentuk citra .........................................................................................

  22

3.3. Kebutuhan Perangkat Lunak ...........................................................

  23

3.4. Kebutuhan Perangkat Keras ............................................................

  23

3.5. Perancangan Tampilan Antar Muka ...............................................

  23 3.5.1. Form Tampilan Awal ............................................................

  24 3.5.2. Form Menu Utama (Tampilan Utama) ...............................

  24 3.5.3. Form Penampil Citra Input .................................................

  25 3.5.4. Form Penampil Citra Hasil Olahan ....................................

  25 3.5.5. Form Masukkan Citra ..........................................................

  26 3.5.6. Form Simpan Citra ...............................................................

  26 3.5.7. Form Dialog ...........................................................................

  27 3.5.8. Form Message Box ................................................................

  27 BAB IV IMPLEMENTASI ...............................................................................

  28

4.1. Deskripsi Kerja Program Secara Umum ........................................

  28

4.2. Implementasi Algoritma ...................................................................

  30

  4.2.1. Algoritma Membuka dan Menampilkan Citra ..................

  47 4.2.10. Algoritma Utama .................................................................

  5.2. Saran .................................................................................................... 61

DAFTAR PUSTAKA .......................................................................................... 63

LAMPIRAN .........................................................................................................

  5.1. Kesimpulan ......................................................................................... 61

  61

  4.4. Pengujian Program ............................................................................ 54 BAB V PENUTUP ...............................................................................................

  4.3. Implementasi Antarmuka Tampilan ................................................ 49

  48

  40 4.2.9. Algoritma Fungsi Rekonstruksi Citra .................................

  30 4.2.2. Algoritma Menyimpan Citra ...............................................

  36 4.2.8. Algoritma Fungsi Thinning Stentiford ................................

  34 4.2.7. Algoritma Fungsi Acute Angle Emphasis ............................

  33 4.2.6. Algoritma Fungsi Smoothing ...............................................

  32 4.2.5. Algoritma Fungsi Duplikasi .................................................

  30 4.2.4. Algoritma Fungsi Binerisasi .................................................

  30 4.2.3. Algoritma Fungsi Grayscaling ..............................................

  65

  

DAFTAR TABEL

Tabel 4.1 Daftar Hasil Pengujian..........................................................................

  58

  

DAFTAR GAMBAR

Gambar 2.1. Contoh kombinasi elemen Red, Green dan Blue ........................... 7 Gambar 2.2. Contoh hasil Medial Axis Tranform seperti yang diuraikan J.R.

  Parker (1997) .................................................................................

  11 Gambar 2.3. Contoh iterasi pada huruf T yang terjadi dalam algoritma Stentiford seperti yang diungkapkan oleh J.R. Parker (1997) ......

  12 Gambar 2.4. Ilustrasi polygon dan kerangkanya seperti yang diungkapkan oleh J.R. Parker (1997) ...............................................................

  13 Gambar 2.5. Template yang digunakan Stentiford ............................................. 14

Gambar 2.6. Ilustrasi konektivitas piksel tengah dengan 8 piksel disekitarnya . 16Gambar 2.7. Posisi nomor setiap delapan anggota tetangga .............................. 17Gambar 2.8. Template yang digunakan oleh prosedur Acute Angle Emphasis.... 18Gambar 3.1. Gambaran Proses Secara Umum .................................................... 20 Gambar 3.2. Gambaran Proses Level 1 ..............................................................

  20 Gambar 3.3. Variabel yang bertipe Tbitmap di-scan dan diambil nilai RGB- nya yang kemudian akan dilakukan penghitungan. ......................

  21 Gambar 3.4. Gambar yang sudah dalam bentuk grayscale di-scan kembali untuk dikonversi menjadi gambar biner ........................................

  21 Gambar 3.5. Variabel bitmap yang sudah dalam format warna 1bit kemudian diduplikasi ke dalam bentuk array 2 dimensi ................................

  22 Gambar 3.6. Proses Thinning yang didahului dengan smoothing dan AAE ....... 22

Gambar 3.7. Rekonstruksi gambar (variabel TBitmap) dari array ...................... 23 Gambar 3.8. Tampilan form tampilan awal .........................................................

  24 Gambar 3.9. Tampilan form utama ..................................................................... 24

Gambar 3.10. Tampilan Form Penampil Citra Input ........................................... 25Gambar 3.11. Tampilan Form Penampil Citra hasil olahan ................................ 25Gambar 3.12. Tampilan form dialog masukkan citra .......................................... 26Gambar 3.13. Tampilan form dialog simpan citra .............................................. 26Gambar 3.14. Tampilan form konfirmasi untuk user .......................................... 27 Gambar 3.15. Tampilan form message box .........................................................

  27 Gambar 4.1. Jalannya proses dalam program ..................................................... 28

Gambar 4.2. Tampilan utama dari program ....................................................... 50Gambar 4.3. Tampilan form dialog buka citra ................................................... 51 Gambar 4.4. Tampilan form citra RGB .............................................................

  52 Gambar 4.5. Tampilan form peringatan ketika ukuran lebar dan tinggi citra

tidak sama .....................................................................................

  52 Gambar 4.6. Tampilan form citra yang telah direkonstruksi dari array dan telah melalui proses thinning Stentiford .......................................

  53 Gambar 4.7. Tampilan form dialog ketika user ingin menyimpan citra hasil

operasi thinning ............................................................................

  54 Gambar 4.8. Tampilan form konfirmasi bagi user ............................................. 54

Gambar 4.9. Tampilan form tentang program yang menyajikan informasi program .........................................................................................

  55 Gambar 4.10 Tampilan form bantuan. Form ini menyajikan hal-hal yang perlu diperhatikan sebelum menjalankan program ................................

  56

BAB I PENDAHULUAN

1.1 LATAR BELAKANG

  Pengenalan pola karakter merupakan proses pengolahan citra yang diikuti

dengan proses penghitungan dengan rumus matematis agar dapat dikenali. Dalam

penerapan prinsip pengenalan pola, terkadang citra yang menjadi objek pengenalan

mempunyai banyak aspek visual yang dapat dianggap sebagai gangguan, misal

seperti noise, ukuran objek yang berbeda, dan lain-lain. Atau dengan kata lain, citra

yang menjadi objek pengenalan belum menjadi objek data yang siap olah.

  

Preprocessing , ekstraksi ciri dan klasifikasi adalah garis besar dari proses pengenalan

pola yang dikembangkan. Beberapa proses dikembangkan untuk menjadikan objek

tersebut menjadi siap olah.

  Thinning menjadi salah satu aspek dalam preprocessing atau pengolahan citra

disamping grayscaling, tresholding, binerisasi dan banyak tahap–tahap lainnya yang

dikembangkan. Thinning merupakan tahap dalam preprocessing yang berfungsi untuk

menyederhanakan objek dalam citra agar proses penghitungan dan pengolahan

selanjutnya menjadi semakin cepat, ringan dan mudah. Tetapi, Thinning sendiri pun

belum menjamin apakah data hasil operasi dapat langsung dilakukan pengenalan.

  Iterative Morphological Method merupakan salah satu dari sekian banyak

algoritma thinning yang dikembangkan. Algoritma Stentiford merupakan salah satu

  1.2 PERUMUSAN MASALAH Bagaimana mendapatkan kerangka dasar dan sederhana dari sebuah objek citra dengan menggunakan Algoritma stentiford?

  

contoh dari metode tersebut. Algoritma tersebut menggunakan 4 buah template yang

menjadi pedoman pencocokan piksel.

  1.3 BATASAN MASALAH Ada beberapa batasan dalam jalannya proses penelitian.

  • Cakupan materi dari penelitian ini hanya meliputi pembuktian metode dan percobaan implementasi saja.
  • Bahan atau objek dari penelitian adalah berupa citra / gambar objek huruf yang diambil secara offline dengan tipe BMP.
  • Citra yang digunakan mempunyai ukuran / dimensi panjang dan lebar yang sama.
  • Piranti lunak atau bahasa pemrograman yang digunakan Delphi versi 7 dalam implementasi aplikasi.
  • Binerisasi, tresholding, thinning merupakan subbagian dari preprocessing citra. Penelitian ditekankan pada proses thinning saja, meskipun tidak menutup kemungkinan pada proses implementasi dan pengujian aplikasi ada

    beberapa proses yang mungkin akan tetap dilakukan dengan porsi kecil.

1.4 TUJUAN DAN MANFAAT PENELITIAN

  1. Tujuan Penelitian

  • Mencari dan mengetahui isu atau masalah penting yang berkaitan dengan algoritma Stentiford.

  2. Manfaat Penelitian

  • Menemukan bentuk atau kerangka yang lebih sederhana dari objek citra yang sebenarnya.

1.5 METODE PENULISAN

  1. Analisa metode dan studi pustaka Pada tahap ini akan dilakukan analisa metode yang digunakan dan mencoba mencari pemecahannya, lalu mengumpulkan bahan dengan studi literatur baik dari artikel yang didapat melalui browsing di internet, maupun arsip yang didapat dari hasil studi pada buku – buku acuan.

  2. Perancangan aplikasi Perancangan model aplikasi dilakukan pada tahap ini yang meliputi perancangan proses / algoritma, perancangan tampilan / antarmuka.

  3. Implementasi Proses implementasi merupakan proses yang menjadi titik awal percobaan / uji apakah hasil studi literatur yang telah kita lakukan telah sesuai dengan jalan / algoritma yang ada. Pada proses ini akan dilakukan pembuatan aplikasi

sesuai dengan rancangan yang telah ada pada tahap perancangan aplikasi.

  4. Pengujian Proses pengujian merupakan proses dimana aplikasi yang dibuat penulis sebagai hasil studi teori akan diuji. Dalam pengujian ini, Akan digunakan hasil pengujian teori sebagai pembanding yang dilakukan oleh beberapa penulis buku yang menjadi acuan teori.

  5. Pembuatan Laporan Tahap terakhir dari proses penelitian adalah pembuatan laporan yang mendokumentasikan semua proses dan hasil yang sudah ditempuh selama penelitian berlangsung.

1.6 SISTEMATIKA PENULISAN

  BAB I. PENDAHULUAN Dalam Pendahuluan, hal yang akan dibahas meliputi latar belakang masalah, rumusan masalah, batasan masalah, tujuan penulisan, manfaat penulisan, metode penulisan, sistematika penulisan.

BAB 2. DASAR TEORI Dasar teori merupakan bab dimana landasan teori tentang hal yang dibahas dan diteliti akan dikupas secara mendalam.

  BAB 3. ANALISA DAN PERANCANGAN Analisa dan perancangan merupakan bab dimana akan dilakukan analisa terhadap teori yang dipergunakan dan bagaimana proses perancangan terhadap aplikasi. Sehingga pada akhirnya nanti pada saat implementasi,

aplikasi yang dibuat tidak akan melenceng dari dasar teori yang digunakan.

BAB 4. IMPLEMENTASI Pada tahap implementasi, akan dibuat aplikasi untuk pengujian metode BAB 5. PENUTUP Penutup, akan ditarik kesimpulan tentang hasil dari pengujian yang dilakukan.

BAB 2 DASAR TEORI

2.1 Citra

  2.1.1 Pengertian Citra Citra adalah representasi informasi yang diciptakan dalam bentuk 2 dimensi

dimana representasi tersebut merupakan susunan array dari bilangan real atau

bilangan kompleks yang diwakilkan dalam bilangan–bilangan bit terhingga.

  Citra adalah gambar pada bidang dwimatra (dua dimensi) (Munir, 2004).

Citra ada dua macam : Citra Kontinyu dan Citra Diskrit. Agar sebuah citra dapat

diolah dengan komputer digital, maka suatu citra harus direpresentasikan secara

numerik dengan nilai–nilai diskrit. Representasi citra dari fungsi malar (kontinyu)

menjadi nilai–nilai diskrit disebut digitalisasi citra dan citra yang dihasilkan inilah

yang disebut sebagai citra digital. Pada umumnya citra digital berbentuk empat

persegi panjang dan dimensi ukurannya dinyatakan sebagai tinggi x lebar (atau lebar

x panjang) (Munir, 2004).

  2.1.2 Format Citra Digital Menurut intensitas warnanya format citra digital dapat dikategorikan, antara lain :

  1. Citra RGB (True Color) Citra RGB merupakan citra yang mempunyai 3 komponen channel yaitu Red, tergantung warna yang akan direpresentasikan. Misal, Untuk merepresentasikan warna Biru Muda, seperti pada gambar 2.1, ada tiga kombinasi tingkat warna Red, Green dan Blue untuk menghasilkan warna biru muda.

Gambar 2.1 : Contoh kombinasi elemen Red, Green dan Blue

  2. Citra Grayscale Citra grayscale merupakan citra menggunakan satu fungsi intensitas untuk menentukan warnanya. Fungsi intensitas yang digunakan adalah fungsi intensitas warna keabuan (hitam - putih). Fungsi intensitas warna yang digunakan pada citra grayscale mempunyai kedalaman piksel yang beragam. Tetapi, pada kebanyakan aplikasi, citra grayscale dikuantisasi pada 256 level dan membutuhkan 1 byte (8 bit) untuk representasi setiap pikselnya.

  3. Citra Biner Citra biner atau yang sering juga disebut citra monokrom merupakan citra yang hanya mempunyai dua nilai kemungkinan warna pada setiap pikselnya. Citra

biner hanya dikuantisasikan pada dua level yaitu 0 dan 1, sehingga setiap piksel

pada citra cukup direpresentasikan dengan 1 bit (0 atau 1) .

2.2 Pemrosesan Citra

  Analisa dokumen citra mempunyai tujuan untuk mengenali komponen

tulisan dan gambar yang terkandung dalam citra serta mengambil informasi yang ada

dalam citra itu sendiri. Analisa citra dokumen mempunyai 2 komponen penting yaitu

pemrosesan textual dan pemrosesan grafis.

  Pemrosesan citra merupakan salah satu tahap dalam analisa dokumen citra

yang berfungsi untuk mempersiapkan citra yang akan dianalisa. Pemrosesan citra

sendiri mempunyai tujuan agar citra dapat lebih mudah dan lebih cepat untuk

diproses.

  Dalam Pemrosesan citra, beberapa tahap yang akan dilakukan dapat dijabarkan sebagai berikut :

1. Grayscaling

  Citra grayscale merupakan citra dimana representasi setiap piksel diwakili dengan hanya satu jenis atau satu nilai warna dalam skala keabuan. Untuk mendapatkan nilai intensitas keabuan, maka dapat dihitung dengan dan 11% channel Blue. Hasil penjumlahan dari setiap elemen tersebut, yang kemudian akan direpresentasikan dalam setiap channel Red, Green dan Blue dengan nilai intensitas yang sama.

  2. Tresholding Tresholding atau yang disebut juga sebagai gray – level segmentation (pemisahan warna dalam skala keabuan) merupakan proses pengubahan dari sebuah citra dengan skala keabuan menjadi citra biner atau citra dengan 2 intensitas warna yaitu hitam dan putih.

  3. Thinning Thinning atau skeletonization merupakan proses dimana citra yang telah dibinerkan akan direduksi hingga yang tersisa merupakan garis tengah atau kerangka dari objek. Tujuan dari proses thinning adalah mencari informasi dasar dari citra sehingga dapat mempermudah analisis pada tahap selanjutnya.

2.3 Thinning

2.3.1 Pengertian Thinning

  Secara garis besar, thinning dapat diartikan sebagai proses pereduksian

wilayah dari tepi objek berupa citra hingga yang tersisa merupakan garis tengahnya

saja atau dapat disebut juga sebagai skeleton atau kerangka. Skeleton atau kerangka

oleh J.R. Parker (1997) diasumsikan sebagai representasi bentuk dari suatu objek

dalam jumlah piksel yang relatif kecil (sedikit), yang dimana kesemuanya merupakan

  

kerangka diharapkan dapat merepresentasikan bentuk dari sebuah objek dalam

jumlah piksel yang relatif kecil, yang dimana semuanya saling berkaitan dan

merupakan yang terpenting. Dalam garis yang ada pada kerangka, dapat terwakili

informasi yang ada pada citra yang sesungguhnya.

  Dalam konsep yang telah dikembangkan oleh banyak orang, J.R. Parker

(1997) mengemukakan bahwa tidak semua objek dapat dikenai operasi thinning, dan

hasil dari operasi thinning itu sendiri yang disebut sebagai kerangka mempunyai

kemungkinan untuk tidak berfungsi disemua situasi. J.R. Parker (1997) juga

mengemukakan bahwa thinning merupakan operasi untuk mengidentifikasi kerangka

sebuah objek, operasi thinning itu sendiri tidak didefinisikan oleh algoritma yang

digunakan.

2.3.2 Definisi thinning

  Thinning mempunyai beberapa definisi atau metode berdasarkan uraian yang dikemukakan oleh J.R. Parker (1997), yang diantaranya adalah sebagai berikut : Medial Axis Transform 1.

  Medial Axis Function (MAF) mungkin merupakan definisi yang diperkenalkan oleh Blum pada tahun 1967. MAF memperlakukan semua batas piksel terluar objek sebagai titik–titik sumber dari wave front (gelombang tepi). Setiap piksel membangkitkan setiap titik tetangganya (titik yang berhubungan) agar menjadi bagian dari wave front. Gelombang ini melewati setiap titik hanya satu kali dan ketika dua gelombang bertemu mereka akan saling membatalkan dan

  

menghasilkan sudut. Medial axis (poros tengah) merupakan tempat dimana sudut

itu berada dan saling membentuk skeleton. Metode Medial Axis Transform yang

diterapkan pada sebuah objek huruf T dapat diilustrasikan pada gambar 2.2 berikut (J.R. Parker, 1997):

Gambar 2.2 contoh hasil Medial Axis Transform seperti yang diuraikan J.R. Parker

  (1997)

2. Iterative Morphological Method

  

Mayoritas dari algoritma thinning didasarkan pada penghilangkan lapisan–

lapisan piksel hingga tidak ada lagi lapisan yang dapat dihilangkan. Pada

penerapannya, ada beberapa aturan yang digunakan dalam penghilangan lapisan

piksel. Dan kadang - kadang, proses pencocokan dengan template digunakan untuk mengimplementasikan metode ini. Algoritma thinning Stentiford merupakan salah satu contoh dari metode ini. Penjelasan secara detail dari algoritma Stentiford akan dibahas pada bab ini.

  Algoritma Stentiford yang diterapkan pada huruf T dapat diilustrasikan pada

gambar 2.3 di bawah ini:Gambar 2.3 Contoh iterasi pada huruf T yang terjadi dalam algoritma Stentiford seperti

  yang diungkapkan oleh J.R. Parker (1997) 3.

   Contour Based Method Contour Based Method merupakan cara lain dalam mendapatkan kerangka dari sebuah objek. Metode ini bekerja dengan mendeteksi bentuk terluar dari objek.

  Contour Based Algorithm mempunyai alur inti sebagai berikut : 1. Mendeteksi bagian / bentuk terluar dari objek.

  2. Mengidentifikasi piksel dari bagian yang tidak dapat dihapus.

  3. Hapus semua bagian piksel kecuali yang telah dideteksi di bagian ke – 2.

4. Jika ada bagian piksel yang telah dihapuskan pada langkah 3 , ulangi dari langkah pertama.

  

Metode ini mencoba untuk menyingkirkan penggunaan template 3 x 3 dalam

operasinya.

   Line Following (Line Tracing) 4.

  Line Following merupakan salah satu metode dalam mengidentifikasi dan

mendapatkan kerangka dari objek. Metode ini bekerja dengan menggunakan

pointer untuk menentukan arah dari garis.

  5. Memperlakukan objek sebagai Polygon Cara lain untuk melakukan operasi thinning dapat dilakukan dengan memperlakukan batas terluar (boundary) objek sebagai polygon sebelum

diidentifikasi kerangkanya. Memperlakukan batas luar objek sebagai polygon

dapat diilustrasikan dengan gambar 2.4 berikut:

Gambar 2.4 ilustrasi polygon dan kerangkanya seperti yang diungkapkan oleh J.R. Parker (1997)

  6. Force Based Thinning Forced Based Thinning juga merupakan salah satu metode untuk

mengidentifikasi kerangka objek. Metode ini bekerja, pertama dengan mencari piksel background yang mempunyai setidaknya satu objek piksel sebagai tetangganya dan memberi tanda. Piksel ini akan diasumsikan memberi penekanan gaya berlawanan ke semua objek piksel, semakin dekat jarak piksel disekitarnya dengan piksel yang ditandai ini, maka semakin besar gaya tekan yang akan

didapat. Daerah gaya ini dipetakan dengan membagi-bagi daerah menjadi kotak-

kotak kecil dan menghitung gaya yang bekerja pada sudut-sudut kotak. Kerangka (skeleton) dari objek terletak di dalam kotak yang mempunyai gaya bekerja di sudutnya mempunyai arah yang saling berlawanan.

2.4 Algoritma Thinning Stentiford Algoritma Thinning Stentiford pertama kali diperkenalkan oleh F. W. M.

  

Stentiford dan R. G. Mortimer. Algoritma Stentiford menggunakan template

berukuran 3 x 3 untuk melakukan pencocokan dengan citra. Ketika kecocokan

terjadi, titik tengah dari piksel 3 x 3 tersebut akan dihapus (diubah warnanya ke

warna putih).

  Algoritma Stentiford menggunakan 4 buah template, yaitu : M1 M2 M3 M4

Gambar 2.5. Template yang digunakan Stentiford

  Tanda X yang dijabarkan pada template mengindikasikan piksel, dimana nilai pada piksel tersebut dapat bernilai 0 maupun 1.

  Algoritma stentiford dapat dijabarkan sebagai berikut :

1. Cari lokasi piksel (i,j) dimana piksel yang ada di citra I, cocok dengan template M1.

  2. Jika titik tengah piksel bukan merupakan endpoint (titik akhir) dan mempunyai indeks konektivitas = 1, maka tandai piksel ini untuk penghapusan. 3. ulangi langkah 1 – 2 untuk semua lokasi piksel yang cocok dengan template M1.

  4. ulangi langkah 1 – 3 untuk sisa template yang belum dicocokkan : M2, M3, M4.

  5. jika ada piksel yang telah ditandai sebelumnya untuk proses penghapusan, maka hapuskan piksel tersebut dengan mengubahnya menjadi warna putih.

  6. jika masih ada piksel yang dapat dihapus pada langkah ke 5, maka ulangi semua proses mulai dari langkah ke – 1, jika tidak berhenti

Setiap Template mempunyai fungsi yang berbeda – beda. M1 berfungsi untuk

mencari piksel-piksel yang dapat dihilangkan pada bagian tepi atas objek, bergerak

dengan arah kiri ke kanan atas ke bawah. M2 akan mencocokkan pada bagian tepi

kiri dari objek, template ini bergerak dengan arah dari bawah ke atas, dari kiri ke

kanan. M3 akan mencari piksel–piksel sepanjang tepi bawah bergerak dari kanan ke

kiri, bawah ke atas. M4 akan mencocokan piksel–piksel pada bagian kanan objek

dari atas ke bawah, kanan ke kiri.

  Dalam proses tersebut, ditemukan beberapa permasalahan. Yaitu ketika

proses penghapusan menemui sebuah endpoint. Sebuah piksel disebut Endpoint

(Titik ujung) ketika piksel tersebut hanya terhubung dengan 1 piksel diantara 8 piksel

disekitarnya. Ketika proses dilakukan dan endpoint tersebut akan dihapus, Semua

bagian dari citra yang berupa garis lurus, kurva terbuka akan ikut terhapus.

  Indeks Konektivitas adalah konsep yang dikembangkan untuk mengurangi

masalah tersebut. Indeks Konektivitas merupakan ukuran untuk menentukan

seberapa banyak objek akan terhubung dengan sebuah piksel. Untuk menghitung

indeks konektivitas dapat digunakan rumus:

  = − ( ⋅ ⋅ ) 1 k + + nk k k

  ∈ Dari konsep konektivitas tersebut, dapat diilustrasikan: C1 C2 C3 C4 C0

  2 C N N N N k s

Gambar 2.6 : Ilustrasi konektivitas piksel tengah dengan 8 piksel disekitarnya

  N merupakan nilai warna dari salah satu dari delapan tetangga piksel yang k terlibat, dan S = {1, 3, 5, 7}, N 1 adalah nilai warna dari piksel di sebelah kanan dari

piksel tengah dan piksel lainnya diberi nomor secara berurutan mengikuti arah jarum

jam. Posisi dari setiap delapan anggota piksel yang menjadi tetangga dari piksel

pusat, mungkin dapat ditunjukkan dengan gambar 2.7 di bawah ini:

Gambar 2.7 Posisi nomor setiap delapan anggota tetangga

  Nilai dari N k adalah 1 jika berwarna putih (Background) dan 0 jika hitam (objek). Dan piksel tengah diberi nomor N .

  Dari hasil penghitungan indeks konektivitas, dihasilkan kesimpulan tentang kriteria dari piksel yang dapat dihapus (diubah menjadi putih), yaitu:

  1. Jika sebuah piksel tidak terhubung dengan piksel lainnya, maka dapat disimpulkan bahwa indeks konektivitasnya = 1. Ketika indeks konektivitas dari sebuah piksel pusat tersebut bernilai satu maka piksel

pusat tersebut dapat dihapus dengan mengesetnya ke warna putih.

  2. Indeks konektivitas = 2, piksel nilai konektivitas ini mempunyai keterhubungan dengan 2 buah piksel lain di sekitarnya. Maka ketika

piksel ini dihapus akan membuat bagian kiri dan kananya terputus.

  3. Indeks konektivitas = 3.

  4. Indeks konektivitas = 4.

  5. Indeks konektivitas = 0 Dalam perkembangannya Stentiford menyarankan untuk memasukkan tahap

preprocessing sebelum dilakukan operasi thinning. Tahap preprocessing tersebut

meliputi operasi smoothing dan prosedur acute angle emphasis. Operasi smoothing

adalah operasi penghapusan piksel yang mempunyai dua atau kurang tetangga digunakan untuk mengatasi permasalahan tentang line fuzz yang sering muncul di implementasi algoritma Stentiford. Oleh J.R. Parker (1997), diuraikan bahwa line fuzz sering disebabkan oleh bentuk yang tidak biasa dari outline (bagian tepi atau garis tepi) objek. Prosedur acute angle emphasis dilakukan untuk menangani masalah necking pada algoritma. Operasi ini melakukan pencocokan piksel pada citra dengan template acute angle emphasis. Operasi–operasi tersebut dilaksanakan dengan urutan smoothing, acute angle emphasis kemudian baru diikuti oleh operasi thinning . Template yang digunakan dalam prosedur acute angle emphasis adalah seperti pada gambar 2.3 berikut: D1 D2 D3 D4 D5

U1 U2 U3 U4 U5

Gambar 2.8 Template yang digunakan oleh prosedur Acute Angle Emphasis

BAB III ANALISA DAN PERANCANGAN

  3.1.RANCANGAN UMUM Secara umum, program ini menitikberatkan pada proses thinning meskipun

dalam proses yang dilakukan meliputi proses grayscaling, binerisasi. Program

  

Simulasi Thinning ini bertujuan memberikan gambaran sebuah proses thinning yang

dilakukan dalam proses pengenalan pola. Simulasi ini menggunakan algoritma

Stentiford. Proses thinning merupakan proses mengambil bentuk pokok dari suatu

objek sebelum dilakukan klasifikasi dalam pengenalan pola.

  Dalam program ini, gambar yang digunakan merupakan gambar huruf–huruf

dan diambil dan dibuat secara offline. Dalam program, gambar tersebut diolah

terlebih dahulu dengan grayscaling dan binerisasi.

  3.2.PERANCANGAN PROSES DALAM APLIKASI Dalam pemrosesan yang terjadi dalam aplikasi, secara umum proses dibagi

menjadi 5 buah proses inti yang dapat diilustrasikan menjadi desain proses secara

umum dan Proses Level 1, yaitu:

Gambar 3.2 Gambaran Proses Level 1 3.2.1.

   Proses input citra.

  

Proses input citra merupakan proses awal dalam program dimana citra di baca

oleh sistem. Dalam proses ini, citra dimasukkan oleh user untuk dilakukan simulasi. Proses ini terlebih dahulu dilakukan dengan memilih citra yang telah diambil secara offline. Adapun cara yang dilakukan dengan modul OpenPictureDialog yang telah tersedia dalam Delphi. Input citra berupa citra

BMP dengan ukuran dimensi yang sama (MxN, dimana M=N). Setelah dilakukan