BAB 2 TINJAUAN TEORITIS

dokumen-dokumen yang mirip
ALGORITMA IMAGE THINNING

By Emy. 2 of By Emy

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Oleh: Riza Prasetya Wicaksana

STUDI PERBANDINGAN BEBERAPA ALGORITMA THINNING DALAM PENGENALAN POLA

Operasi Morfologi. Kartika Firdausy - UAD blog.uad.ac.id/kartikaf. Teknik Pengolahan Citra

MILIK UKDW BAB I PENDAHULUAN. 1.1 Latar Belakang Permasalahan

1. Pendahuluan Gait Recognition atau sistem pengenalan gaya gerak berjalan manusia merupakan salah satu sistem di bidang keamanan biometrik yang menga

BAB 2 TINJAUAN TEORITIS

KONVERSI FORMAT CITRA RGB KE FORMAT GRAYSCALE MENGGUNAKAN VISUAL BASIC

BAB 2 TINJAUAN PUSTAKA

BAB 2 LANDASAN TEORI

SISTEM REKOGNISI KARAKTER NUMERIK MENGGUNAKAN ALGORITMA PERCEPTRON

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

Pertemuan 2 Representasi Citra

BAB 3 METODOLOGI PENELITIAN. a. Spesifikasi komputer yang digunakan dalam penelitian ini adalah

BAB 2 LANDASAN TEORI

PENGEMBANGAN APLIKASI PERHITUNGAN JUMLAH OBJEK PADA CITRA DIGITAL DENGAN MENGGUNAKAN METODE MATHEMATICAL MORPHOLOGY

TEKNIK PENGKERANGKAAN CITRA DIGITAL MEMPERGUNAKAN ALGORITMA STENTIFORD PADA INPUT CITRA DOKUMEN TEKS JAWA

BAB 2 LANDASAN TEORI

BAB III PERANCANGAN SISTEM. Pada dewasa sekarang ini sangat banyak terdapat sistem dimana sistem tersebut

Makalah Pengolahan Citra. Image Thinning

BAB 2 LANDASAN TEORI

BAB III PERANCANGAN SISTEM

LANDASAN TEORI. 2.1 Citra Digital Pengertian Citra Digital

Penggunaan Jaringan Syaraf Tiruanuntuk Membaca Karakter pada Formulir Nilai Mata Kuliah

BAB II DASAR TEORI. 2.1 Citra Digital

Studi Digital Watermarking Citra Bitmap dalam Mode Warna Hue Saturation Lightness

Pengenalan Plat Nomor Berdasarkan Klasikasi K-Nearest Neighbor (KNN)

SAMPLING DAN KUANTISASI

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

BAB 2 LANDASAN TEORI

PENGENALAN HURUF TULISAN TANGAN BERBASIS CIRI SKELETON DAN STATISTIK MENGGUNAKAN JARINGAN SARAF TIRUAN. Disusun oleh : Mario Herryn Tambunan ( )

KLASIFIKASI TELUR AYAM DAN TELUR BURUNG PUYUH MENGGUNAKAN METODE CONNECTED COMPONENT ANALYSIS

PERANCANGAN DAN PEMBUATAN APLIKASI UNTUK MENDESAIN KARTU UCAPAN

Pengenalan Bahasa Isyarat Tangan Menggunakan Metode PCA dan Haar-Like Feature

Suatu proses untuk mengubah sebuah citra menjadi citra baru sesuai dengan kebutuhan melalui berbagai cara.

BAB 3 IMPLEMENTASI SISTEM

BAB I PENDAHULUAN 1. Latar Belakang

COMPUTER VISION UNTUK PENGHITUNGAN JARAK OBYEK TERHADAP KAMERA

BAB 4 HASIL DAN ANALISA

GLOSARIUM Adaptive thresholding Peng-ambangan adaptif Additive noise Derau tambahan Algoritma Moore Array Binary image Citra biner Brightness

BAB 3 PERANCANGAN DAN PEMBUATAN SISTEM

BAB II LANDASAN TEORI

Pengenalan Karakter Sintaktik menggunakan Algoritma Otsu dan Zhang-Suen

PERANCANGAN SISTEM PENGENALAN DAN PENYORTIRAN KARTU POS BERDASARKAN KODE POS DENGAN MENGGUNAKAN ARTIFICIAL NEURAL NETWORK

Algoritma Kohonen dalam Mengubah Citra Graylevel Menjadi Citra Biner

UJI COBA PERBEDAAN INTENSITAS PIKSEL TIAP PENGAMBILAN GAMBAR. Abstrak

PENGOLAHAN CITRA DIGITAL

Segmentasi Dan Pelabelan Pada Citra Panoramik Gigi

APLIKASI PENGENALAN KARAKTER HURUF HIJAIYAH UNTUK PENDIDIKAN ANAK USIA DINI (PAUD) SKRIPSI

BAB 2 LANDASAN TEORI. Teknologi pengenalan teks merupakan teknologi yang mampu mengenali teks

BAB IV HASIL DAN PEMBAHASAN

BAB II TINJAUAN PUSTAKA

Analisa Perbandingan Metode Edge Detection Roberts Dan Prewitt

PENGUJIAN PENGENALAN KARAKTER PADA KTP MENGGUNAKAN METODE TEMPLATE MATCHING

BAB 3 METODOLOGI PENELITIAN

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

APLIKASI PENGENALAN DAUN UBI JALAR UNTUK JENIS UBI JALAR UNGU, MERAH, PUTIH DAN KUNING MENGGUNAKAN METODE PRINCIPAL COMPONENT ANALYSIS

BAB III METODE PENELITIAN

BAB 2 LANDASAN TEORI

IMPLEMENTASI METODE SPEED UP FEATURES DALAM MENDETEKSI WAJAH

DETEKSI NOMINAL MATA UANG DENGAN JARAK EUCLIDEAN DAN KOEFISIEN KORELASI

JURNAL INFORMATIKA IMPLEMENTASI MODEL BACKPROPAGATION DALAM MENGENALI POLA GAMBAR UNTUK MENDIAGNOSE PENYAKIT KULIT

PENDETEKSI TEMPAT PARKIR MOBIL KOSONG MENGGUNAKAN METODE CANNY

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM APLIKASI

BAB II LANDASAN TEORI

IDENTIFIKASI SIDIK JARI DENGAN DATA BERSKALA BESAR MENGGUNAKAN METODE HYBRID MINUTIAE DAN FILTER GABOR. Oleh : Siswo Santoso

BAB VI HASIL DAN PEMBAHASAN

PENGENALAN ABJAD AKSARA LATIN PADA KOMPUTER MENGGUNAKAN METODE SKELETONING

BAB 2 TINJAUAN TEORETIS

BAB 2 LANDASAN TEORI

BAB II TEORI DASAR PENGOLAHAN CITRA DIGITAL

BAB II LANDASAN TEORI

Mengenal Lebih Jauh Apa Itu Point Process

MKB3383 TEKNIK PENGOLAHAN CITRA Pemrosesan Citra Biner

Implementasi Algoritma Kompresi Shannon Fano pada Citra Digital

DEKOMPOSISI MORFOLOGI BENTUK BINER DUA DIMENSI MENJADI POLIGON KONVEKS DENGAN PENDEKATAN HEURISTIK

PERANCANGAN PROGRAM PENGENALAN BENTUK MOBIL DENGAN METODE BACKPROPAGATION DAN ARTIFICIAL NEURAL NETWORK SKRIPSI

BAB IV IMPLEMENTASI DAN EVALUASI. implementasi dan evaluasi yang dilakukan terhadap perangkat keras dan

BAB 2 LANDASAN TEORI

PEMANFAATAAN BIOMETRIKA WAJAH PADA SISTEM PRESENSI MENGGUNAKAN BACKPROPAGATION NEURAL NETWORK

BAB III ANALISIS DAN PERANCANGAN SISTEM. Dalam pengerjaan tugas akhir ini memiliki tujuan untuk mengektraksi

BAB II LANDASAN TEORI

BAB II DASAR TEORI. CV Dokumentasi CV berisi pengolahan citra, analisis struktur citra, motion dan tracking, pengenalan pola, dan kalibrasi kamera.

Pengenalan Plat Nomor Mobil Menggunakan Metode Learning Vector Quantization

Perancangan Sistem Identifikasi Barcode Untuk Deteksi ID Produk Menggunakan Webcam

BAB 2 TINJAUAN PUSTAKA

BAB II LANDASAN TEORI. Pengolahan Citra adalah pemrosesan citra, khususnya dengan menggunakan

BAB II LANDASAN TEORI...

Bab II Teori Dasar 2.1 Representasi Citra

BAB 2 LANDASAN TEORI. dari sudut pandang matematis, citra merupakan fungsi kontinyu dari intensitas cahaya

BAB 2 LANDASAN TEORI. metode yang digunakan sebagai pengawasan kendaraan yang menggunakan pengenalan

BAB II LANDASAN TEORI. Tanda Nomor Kendaraan Bermotor (disingkat TNKB) atau sering. disebut plat nomor atau nomor polisi (disingkat nopol) adalah plat

Pengenalan Plat Nomor Kendaraan Secara Otomatis Untuk Pelanggaran Lalu Lintas

BAB III METODE PENELITIAN

Operasi-operasi Dasar Pengolahan Citra Digital

Analisa Hasil Perbandingan Metode Low-Pass Filter Dengan Median Filter Untuk Optimalisasi Kualitas Citra Digital

Transkripsi:

BAB 2 TINJAUAN TEORITIS 2.1 Citra RGB Suatu citra biasanya mengacu ke citra RGB. Citra (image) merupakan suatu yang menggambarkan objek dan biasanya dua dimensi. Citra merupakan suatu representasi, kemiripan atau imitasi dari suatu objek atau benda. Citra dalam komputer tidak lebih dari sekumpulan sejumlah piksel dimana setiap triplet terdiri atas variasi tingkat keterangan (brightness) dari elemen red, green dan blue. Representasinya dalam citra, triplet akan terdiri dari 3 angka yang mengatur intensitas dari Red (R), Green (G) dan Blue (B) dari suatu triplet. Setiap triplet akan merepresentasikan 1 piksel (picture element). Suatu triplet dengan nilai 67, 228 dan 180 berarti akan mengeset nilai R ke nilai 67, G ke nilai 228 dan B ke nilai 180. Angka-angka RGB ini yang seringkali disebut dengan color values. Pada format.bmp citra setiap piksel pada citra direpresentasikan dengan dengan 24 bit, 8 bit untuk R, 8 bit untuk G dan 8 bit untuk B, dengan pengaturan seperti pada gambar dibawah ini. Gambar 2.1 Citra RGB [Sitorus, S dkk. 2006. Pengolahan Citra Digital. Medan:USU Press.hal1]

2.2 Piksel Piksel merupakan informasi terkecildari sebuah citra yang terdiri dari 3 buah layer yaitu Red layer,green layer dan Blue layer yang membentuk sebuah warna. Ketiga unsur warna tersebut ( Red = Merah, Green = Hijau, Blue = Biru) dapat membentuk 255 3 kombinasi warna. Ketiga unsur warna pembentuk warna piksel ini dapat dipisahpisahkan untuk membantu dalam pengolahan citra. 2.3 Pengenalan Pola Pola adalah entitas yang terdefinisi dan dapat didefinisikan melalui ciri-cirinya (feature). Ciri-ciri tersebut digunakan untuk membedakan suatu pola dengan pola yang lain. Pengenalan pola bertujuan untuk menentukan kelompok untuk kategori pola berdasarkan ciri-ciri yang dimiliki oleh pola tersebut. Dengan kata lain pengenalan pola membedakan objek dengan objek lain. Ada 3 pendekatan yang digunakan dalam menerapkan pattern recognition (pengenalan pola), yaitu : 1. Statistik Semakin banyak pola yang disimpan, maka sistem akan semakin cerdas. Salah satu contoh penerapannya banyak pada pola pengenalan iris scan. Kelemahannya : hanya bergantung pada data yang disimpan saja, tidak memiliki sesuatu struktur yang unik yang dapat menjadi kunci pengenalan pola. 2. Sintaks (rule) Dengan rule / aturan maka sistem yang lebih terstruktur sehingga memiliki sesuatu ciri yang unik. Salah satu contoh penerapannya pada pola pengenalan sidik jari / fingerprint.

3. Jaringan Saraf Tiruan (JST) Merupakan gabungan dari pendekatan statistik dan pendekatan sintaks. Dengan gabungan dari dua metode maka JST merupakan pengenalan pola yang lebih akurat. Salah satu contoh penerapannya pada pola pengenalan suatu citra JST merupakan suatu sistem yang dapat memproses informasi dengan meniru cara kerja jaringan saraf otak manusia. [Sitorus, S dkk. 2006. Pengolahan Citra Digital. Medan:USU Press.hal135] 2.4 Citra Grayscale Citra yang ditampilkan dari citra jenis ini terdiri atas warna abu-abu, bervariasi pada warna hitam pada bagian yang intensitas terlemah dan warna putih pada intensitas terkuat. Citra grayscale berbeda dengan citra hitam-putih, dimana pada konteks komputer, citra hitam putih hanya terdiri atas 2 warna saja yaitu hitam dan putih saja. Pada citra grayscale warna bervariasi antara hitam dan putih, tetapi variasi warna diantaranya sangat banyak. Citra grayscale seringkali merupakan perhitungan dari intensitas cahaya pada setiap pixel pada spektrum elektromagnetik single band. Citra grayscale disimpan dalam format 8 bit untuk setiap sample pixel, yang memungkinkan sebanyak 256 intensitas. Format ini sangat membantu dalam pemrograman karena manipulasi bit yang tidak terlalu banyak. Untuk mengubah citra berwarna yang mempunyai nilai matrik masing-masing R, G dan B menjadi citra grayscale dengan nilai X, maka konversi dapat dilakukan dengan mengambil rata-rata dari nilai R, G dan B sehingga dapat dituliskan menjadi: X = (R + G + B) / 3 Warna = RGB(X, X, X) [S, Riyanto dkk. 2005. Step by Step Pengolahan Citra Digital. Yogyakarta: Andi. Hal 23].

2.5 Citra Threshold Citra Threshold Dilakukan dengan mempertegas citra dengan cara mengubah citra hasil yang memiliki derajat keabuan 256 (8bit), menjadi hanya dua buah yaitu hitam dan putih. Hal yang perlu diperhatikan pada Proses Thresholding adalah memilih sebuah nilai threshold dimana piksel yang bernilai dibawah nilai threshold akan diset menjadi hitam dan piksel yang bernilai diatas nilai threshold akan diset menjadi putih. Misalkan ditetapkan suatu nilai batas / ambang, sebesar 128 dimana elemenelemen (piksel) pada citra batas nilainya lebih kecil dari pada nilai batas tersebut menyala, dan elemen-elemen lainnya dianggap dimatikan, dan keduanya diubah nilainya sesuai statusnya. Jika X <128 maka X = 0 Jika tidak, maka X = 255 Warna = RGB(X, X, X) [S, Riyanto dkk. 2005. Step by Step Pengolahan Citra Digital. Yogyakarta: Andi. Hal 24]. 2.6 Citra Biner Citra biner adalah citra dimana piksel-pikselnya hanya memiliki dua buah nilai intensitas, biasanya bernilai 0 dan 1 dimana 0 menyatakan warna latar belakang (background) dan menyatakan warna tinta/objek (foreground) atau dalam bentuk angka 0 untuk warna hitam dan angka 255 untuk warna putih. Citra biner diperoleh dari nilai citra Threshold sebelumnya yakni: Jika Citra RGB(0, 0, 0) maka X=1, Jika tidak maka X=0 [Basuki, A. 2005. Pengolahan Citra Digital menggunakan VB. Yogyakarta: Graha Ilmu. Hal 33].

2.7 Operasi Morfologi Berdasarkan etimologi bahasa, Morphologi berasal dari kosakata bahasa Jerman yaitu morphologie yang terdiri dari morph+logie/logy. Morph adalah suatu kerja yang berupa singkatan dari metamorphose yang artinya perubahan bentuk atau karakter akibat perubahan pada struktur atau komposisi (transformasi). Sesuai dengan arti dasarnya, konsep Morphological Operation pada pengolahan citra adalah operasioperasi perubahan bentuk pada binary image. Berbagai jenis Morphological Operation antara lain: Erosion, dilation, opening, closing, thinning, dan thickness. Saat ini yang dibahas adalah thinning. [Sitorus, S dkk. 2006. Pengolahan Citra Digital. Medan:USU Press. Hal 115]. 2.7.1 Algoritma Thinning Thinning merupakan salah satu image processing yang digunakan untuk mengurangi ukuran dari suatu image (image size) dengan tetap mempertahankan informasi dan karakteristik penting dari image tersebut. Hal ini diimplementasikan dengan mengubah image awal dengan pola binary menjadi representasi kerangka (skeletal representation) image tersebut. Terdapat cukup banyak algoritma untuk image thinning dengan tingkat kompleksitas, efisiensi dan akurasi yang berbeda-beda. Citra yang digunakan untuk proses thinning adalah citra biner, jika data masukannya berupa citra RGB maka haruslah citra tersebut dimanipulasi menjadi citra grayscale, citra grayscale merupakan syarat guna menghasilkan suatu citra biner. Namun untuk mengubah citra grayscale menjadi citra biner dilakukan proses thresholding dahulu. Sehingga diperoleh citra threshold, jika citra threshold sudah diperoleh maka citra biner dapat dicari. Citra biner ini yang kemudian akan diproses dalam proses thinning. Citra hasil dari algoritma thinning biasanya disebut dengan skeleton(kerangka).

Umumnya suatu algoritma thinning yang dilakukan terhadap citra biner seharusnya memenuhi kriteria-kriteria sebagai berikut: 1. Skeleton dari citra kira-kira berada di bagian tengah dari citra awal sebelum dilakukan thinning. 2. Citra hasil dari algoritma thinning harus tetap menjaga struktur keterhubungan yang sama dengan citra awal. 3. Suatu skeleton seharusnya memiliki bentuk yang hampir mirip dengan citra awal. 4. Suatu skeleton seharusnya mengandung jumlah piksel yang seminimal mungkin namun tetap memenuhi kriteria-kriteria sebelumnya. Berikut adalah hasil dari operasi Thinning dari citra binari yang sederhana. (a) (b) Gambar 2.2 (a) Pola awal (b) Pola hasil Thinning. Sebagian besar algoritma thinning merupakan algoritma yang besifat iteratif. Dalam sebuah penelusuran piksel sisi diperiksa berdasarkan beberapa kriteria untuk menentukan apakah suatu piksel sisi dihapus atau tidak. Banyaknya jumlah penelusuran yang terjadi dihitung berdasarkan jumlah loop (perulangan) yang terjadi. Ada beberapa jenis algoritma thinning yaitu sequential dan parallel. Jenis sequential menggunakan hasil dari penelusuran sebelumnya dan hasil yang didapatkan sejauh ini dalam penelusuran yang sekarang untuk memproses piksel yang sekarang. Jadi pada

setiap ujung penelusuran sejumlah piksel telah diproses terlebih dahulu. Hasil ini dapat digunakan secepatnya untuk memproses piksel selanjutnya. Sedangkan jenis parallel, hanya hasil dari penelusuran sebelumnya yang mempengaruhi keputusan untuk menghapus suatu titik pada penelusuran yang sekarang. Definisi yang dipakai dalam operasi morfologi: 1. Titik obyek, adalah titik yang merupakan bagian dari obyek (P1= obyek). 2. Titik latar, adalah titik yang merupakan bagian dari latar (P1= latar). 3. N(P1) = banyaknya tetangga dari P1 yang merupakan titik obyek. 4. S(P1) = banyaknya pola latar, obyek untuk urutan P2-P4-P6-P8-P2 pada operasi terhubung -4 atau urutan P2- P3- P4- P5- P6- P7- P8- P9- P2 pada operasi terhubung-8. 5. S(P2) = banyaknya pola latar, obyek untuk urutan P2-P4-P6-P8-P2 pada operasi terhubung -4 atau urutan PX- PY- P3- P4- P1- P8- P9- PX- PY pada operasi terhubung-8. Untuk P1= P2. 6. S(P3) = banyaknya pola latar, obyek untuk urutan P3-P C -P5-P1-P3 pada operasi terhubung -4 atau urutan P3-PB-PC-PD-P5-P6-P1-P2-P3 pada operasi terhubung-8. Untuk P1= P4. 7. Titik terisolasi, adalah titik obyek yang semua tetangganya adalah titik latar. N(P1) = 0. 8. Titik ujung, adalah titik obyek yang mempunyai tepat sebuah tetangga yang merupakan titik obyek juga. N(P1) = 1. 9. Titik batas, adalah titik obyek yang salah satu atau lebih tetangganya adalah titik latar. N(P1) < 4 pada operasi terhubung-4 dan N(P1) < 8 pada operasi terhubung-8. 10. Apabila semua titik tetangganya adalah titik obyek maka dapat dipastikan titik tersebut berada di dalam obyek (bukan titik batas). 11. Titik simpel, adalah titik obyek yang jika diubah menjadi titik latar maka tidak mengubah kondisi hubungan antar titik-titik obyek tetangganya. [H.E.Burdick, dan Mc Graw Hill. 1997. Morphological Operations. Http://ppsc.pme.nthu.edu.tw/.../Chapter%209%20Morphological%20operations.pdf. Diakses tanggal 7 Januari 2010].

2.7.1.1 Algoritma ZhangSuen Algoritma ini adalah algoritma untuk citra biner, dimana piksel background citra bernilai 0, dan piksel foreground (region) bernilai 1. Algoritma ini cocok digunakan untuk bentuk yang diperpanjang (elongated) dan dalam aplikasi OCR (Optical Character Recognition). Algoritma ini terdiri dari beberapa penelusuran, dimana setiap penelusurannya terdiri dari 2 langkah dasar yang diaplikasikan terhadap titik objek (titik batas) region. Titik objek ini dapat didefinisikan sebagai sembarang titik yang pikselnya bernilai 1, dan memiliki paling sedikit 1 piksel dari 8-tetangganya yang bernilai 0. Gambar berikut ini mengilustrasikan titik objek P1 dan 8-tetangganya: P9 P2 P3 Gambar 2.3 Contoh Piksel P1 dengan 8 tetangga Langkah pertama dari sebuah penelusuran adalah menandai semua titik objek untuk dihapus, jika titik objek tersebut memenuhi syarat-syarat berikut: a. 2 N (P1) 6 b. S(P1) = 1 c. P2 * P4 * P6 = 0 d. P4 * P6 * P8 = 0 Keterangan : 1. jumlah dari tetangga titik objek P1, yang pikselnya bernilai 1, yaitu: N(P1) = P2 + P3 + P4 +... + P9 2. S(P1) adalah jumlah perpindahan nilai dari 0 (nol) ke 1 (satu) mulai dari P2, P3, P8, P9. 3. P2 * P4 * P6 = 0, memiliki arti P2 atau P4 atau P6 bernilai 0 (nol).

Dan pada langkah kedua, kondisi (a) dan (b) sama dengan langkah pertama, sedangkan kondisi (c) dan (d) diubah menjadi: (c ) P2 * P4 * P8 = 0; (d ) P2 * P6 * P8 = 0 Langkah pertama dilakukan terhadap semua titik obyek di citra. Jika salah satu dari keempat kondisi di atas tidak dipenuhi atau dilanggar maka nilai piksel yang bersangkutan tidak ditandai untuk dihapus. Sebaliknya jika semua kondisi tersebut dipenuhi maka piksel tersebut ditandai untuk penghapusan. Piksel yang telah ditandai tidak akan dihapus sebelum semua titik obyek selesai diproses. Hal ini berguna untuk mencegah perubahan struktur data. Setelah langkah 1 selesai dilakukan untuk semua titik obyek maka dilakukan penghapusan untuk titik yang telah ditandai (diubah menjadi 0). Setelah itu dilakukan langkah 2 pada data hasil dari langkah 1 dengan cara yang sama dengan langkah 1. Prosedur ini dilakukan secara iteratif sampai tidak ada lagi titik yang dapat dihapus, pada saat algoritma ini selesai maka akan dihasilkan skeleton dari citra awal. Sebagai contoh : 0 0 1 1 P1 0 1 0 1 Gambar 2.4 Contoh piksel N(P1) = 4 dan S(P1) = 3 [Jason Rupard. Skeletonization (part 1). www.rupj.net/portfolio/docs/skeletonization.pdf. Diakses tanggal 7 Januari 2010].

2.7.1.2 Algoritma Stentiford Metode ini adalah algoritma thinning dengan menggunakan teknik template-based mark-and-delete. Metode ini cukup terkenal karena reliable dan kefektifannya. Metode thinning jenis ini menggunakan template untuk dicocokkan dengan citra yang akan di-thinning. Algoritma ini bersifat iteratif yang berguna untuk mengikis lapisan piksel terluar sampai tidak ada lapisan lagi yang dapat dihilangkan. Didalam algoritma ini terdiri dari empat kondisi. Template yang dipakai adalah 4 buah template 3 x 3 yaitu, Gambar 2.5 Template Stentiford. Berikut ini akan dijelaskan langkah langkah algoritma Stentiford : 1. Cari piksel pada lokasi (i,j) dimana piksel-piksel pada image cocok dengan template T1. Dengan template ini, maka semua piksel di bagian atas dari image akan dihilangkan (remove). Pencocokkan template ini bergerak dari kiri ke kanan dan dari atas ke bawah. 2. Bila piksel tengah bukan merupakan endpoint dan mempunyai jumlah konektivitas (connectivity number) 1, maka tandai piksel tersebut untuk kemudian dihilangkan (remove). Endpoint piksel : piksel yang merupakan batas akhir dan hanya terhubung dengan 1 piksel saja. Contoh : suatu piksel hitam hanya mempunyai satu tetangga saja yang hitam juga dari kemungkinan delapan tetangga. Connectivity number : merupakan suatu ukuran berapa banyak obyek yang terhubung dengan piksel tertentu (dihitung berdasarkan rumus di bawah). C n = Nk ( Nk. Nk +1. Nk + 2) k S

N k merupakan nilai dari 8 tetangga di sekitar piksel yang akan dianalisa (Titik obyek) dan nilai S = {1,3,5,7}. N 0 adalah nilai dari piksel tengah (Titik obyek). N 1 adalah nilai dari piksel pada sebelah kanan titik obyek dan sisanya diberi nomor berurutan dengan arah berlawanan jarum jam. 4 3 2 5 0 1 6 7 8 Contoh : Gambar 2.6 Urutan nilai dari piksel algoritma Stentiford 0 0 0 1 0 1 1 0 1 1 0 1 0 1 0 0 1 0 1 1 1 1 1 1 0 1 1 1 1 1 0 0 0 1 1 1 1 0 1 1 0 1 0 1 0 a b c d e Gambar 2.7 Contoh tampilan jumlah konektivitas Bagian a) menjelaskan tentang jumlah konektivitas (connectivity number) = 0. Bagian b) menjelaskan tentang jumlah konektivitas (connectivity number) = 1. Bagian c) menjelaskan tentang jumlah konektivitas (connectivity number) = 2. Bagian d) menjelaskan tentang jumlah konektivitas (connectivity number) = 3. Bagian e) menjelaskan tentang jumlah konektivitas (connectivity number) = 4. 3. Ulangi langkah 1 dan 2 untuk semua piksel yang cocok dengan template T1. 4. Ulangi langkah 1 3 untuk template T2, T3 dan T4. Pencocokkan template T2 akan dilakukan pada sisi kiri dari obyek dengan arah dari bawah ke atas dan dari kiri ke kanan. Pencocokkan template T3 akan dilakukan pada sisi bawah dari obyek dengan arah dari kanan ke kiri dan dari bawah ke atas.

Pencocokkan template T4 akan dilakukan pada sisi kanan dari obyek dengan arah dari atas ke bawah dan dari kanan ke kiri. 5. Piksel-piksel yang ditandai untuk dihilangkan (remove) dibuat sama dengan background (di-set 0 untuk binary image). [Jason Rupard. Skeletonization (part 1). www.rupj.net/portfolio/docs/skeletonization.pdf. Diakses tanggal 7 Januari 2010]. 2.7.1.3 Algoritma Hilditch Algoritma Hilditch dengan ukuran jendela (window) 3 x 3, yakni menggunakan tetangga Moore dari titik yang kita tinjau. Pada algoritma yang merupakan operasi terhubung-8 ini dilakukan beberapa kali penelusuran pengikisan pada suatu obyek, di mana pada setiap pengikisan dilakukan pemeriksaan pada semua titik dalam citra dan melakukan. Pengubahan sebuah titik obyek menjadi titik latar apabila memenuhi keempat kriteria berikut ini: 1. 2 N(P1) 6 2. S(P1) =1 3. P2, P4, atau P8 ada yang merupakan titik latar, atau S(P2) 1 4. P2, P4, atau P6 ada yang merupakan titik latar, atau S(P4) 1 Algoritma dihentikan apabila pada suatu penelusuran tidak ada lagi titik yang diubah. a) Kriteria 1 1. Menunjukkan bahwa tidak ada titik terisolasi, N(P1) = 0, ataupun titik ujung, N(P1) = 1, yang terkikis, sebagaimana ditunjukkan pada Gambar dibawah ini. 2. Demikian juga titik yang ada di dalam obyek seperti pada (d), sedangkan titik pada (c) juga tidak boleh dihilangkan untuk mencegah pengecilan kerangka.

P9 P2 P3 P9 P2 P3 P9 P2 P3 P9 P2 P3 (a) N(P1)=0 (b) N(P1)=1 (c) N(P1)=7 (d) N(P1)=8 Gambar 2.8 Contoh titik yang tidak memenuhi kriteria 1 algoritma Hilditch b) Kriteria 2 1. Menunjukkan sifat konektivitas, di mana jika kita menghilangkan suatu titik mempunyai nilai A lebih dari 1, seperti pada Gambar dibawah ini, maka pola atau kerangka akan menjadi terputus. 2. Dengan demikian titik P1 pada contoh-contoh tersebut tidak boleh dihapus. P9 P2 P3 P9 P2 P3 P9 P2 P3 (a) S(P1)=2 (b) S(P1)=2 (c) S(P1)=4 Gambar 2.9 Contoh titik yang tidak memenuhi kriteria 2 algoritma Hilditch. c) Kriteria 3 1. Digunakan untuk menghindarkan terhapusnya garis horizontal dengan lebar 2 titik, seperti pada Gambar dibawah ini. 2. Dalam gambar tersebut, titik obyek pada (a) tidak memenuhi kriteria 3 sehingga tidak boleh dihapus, sedangkan titik P1 pada (b) dan (c) memenuhi kriteria, sehingga mungkin akan dihapus.

P9 P2 P3 P9 P2 P3 P9 P2 P3 (a) garis vertikal (b) P2, P4, P8 latar (c) P2, P4, atau P8 =latar berlebar 2 titik S(P2) 1 S(P2)=1 Gambar 2.10 Contoh titik kriteria 3 algoritma Hilditch. d) Kriteria 4 1. Mirip dengan kriteria 3, namun digunakan untuk menghindarkan terhapusnya garis vertikal berlebar 2 titik. 2. Titik P1 pada (a) tidak memenuhi kriteria tersebut sehingga tidak boleh dihapus, sedangkan pada (b) dan (d) memenuhi syarat, sehingga mungkin dapat dihapus. P9 P2 P3 P9 P2 P3 P9 P2 P3 (a) garis vertikal (b) P2, P4, P6 latar (c) P2, P4, atau P6 =latar berlebar 2 titik S(P4) 1 S(P4)=1 Gambar 2.11 Contoh titik pada kriteria 4 algoritma Hilditch [H.E.Burdick, dan Mc Graw Hill. 1997. Morphological Operations. Http://ppsc.pme.nthu.edu.tw/.../Chapter%209%20Morphological%20operations.pdf. Diakses tanggal 7 Januari 2010].

2.7.1.4 Algoritma Rosenfeld Algoritma yang dijelaskan di sini adalah algoritma paralel sederhana karena karya algoritma Rosenfeld. Algoritma ini membuang berturut-turut dalam model paralel himpunan bagian dari "batas" dari P. Terlebih dahulu tetapkan batas. Biarkan P jadi, himpunan hitam (1) piksel. Komplemen dari P adalah latar belakang (seperti piksel adalah putih (0)). Perhatikan sebuah piksel P1 dari P. Label dari 8 tetangga dari P1 seperti yang ditunjukkan di bawah ini: P9 P2 P3 Gambar 2.12 Contoh label 8 tetangga dari P1 P1 adalah titik perbatasan Utara jika P2 = 0. P9 P2 P3 Gambar 2.13 Contoh piksel P1 sebagai titik batas utara P1 adalah titik perbatasan timur jika P4 = 0. P9 P2 P3 Gambar 2.14 Contoh piksel P1 sebagai titik batas timur P1 adalah titik perbatasan barat jika P8 = 0.

P9 P2 P3 Gambar 2.15 Contoh piksel P1 sebagai titik batas barat P1 adalah titik perbatasan selatan jika P6 = 0. P9 P2 P3 Gambar 2.16 Contoh piksel P1 sebagai titik batas selatan P1 adalah 4-titik endpoint dengan syarat bahwa tepat satu dari 4-tetangga adalah hitam. P9 P2 P3 P9 P2 P3 Gambar 2.17 Dua contoh di mana P1 adalah 4-endpoint P1 adalah sebuah 8-titik endpoint dengan syarat bahwa tepat satu dari 8 tetangganya adalah hitam. P9 P2 P3 P9 P2 P3 Gambar 2.18 Dua contoh di mana P1 adalah sebuah 8-endpoint P1 adalah 4-titik terisolasi jika tidak ada satupun dari 4-tetangga adalah hitam.

P9 P2 P3 P9 P2 P3 Gambar 2.19 Dua contoh di mana P1 adalah 4-titik terisolasi P1 adalah sebuah 8-titik terisolasi jika tidak ada satupun dari 8-tetangganya adalah hitam. P9 P2 P3 Gambar 2.20 Contoh piksel P1 adalah sebuah 8-titik terisolasi Sebuah titik perbatasan P1 adalah sebuah 4-simple jika berubah dari hitam menjadi putih (satu nol) tidak mengubah 4-konektivitas dari sisa piksel hitam dalam tetangga Moore dari P1. Di sini ada dua contoh yang tidak 4-simple: P9 P2 P3 P9 P2 P3 Gambar 2.21 Dua contoh di mana P1 bukanlah 4-simple point Sebuah titik perbatasan P1 adalah sebuah 8-simple jika berubah dari hitam menjadi putih (satu nol) tidak mengubah 8-konektivitas dari sisa piksel hitam dalam lingkungan Moore P1. Berikut adalah dua contoh yang tidak 8-simple:

P9 P2 P3 P9 P2 P3 Gambar 2.22 Dua contoh di mana P1 bukan merupakan 8-simple point Sekarang siap untuk menggambarkan algoritma yang dapat dilihat dalam dua mode yang berbeda tergantung pada jenis konektivitas used. Algoritma ini berada di bagian berurutan dan dalam bagian paralel. Algoritma 4-TERSAMBUNG Mulai ulangi sampai tidak ada piksel yang berubah dari hitam menjadi putih: langkah 1: (secara paralel) Ubah semua piksel hitam menjadi putih jika mereka border utara titik yang 4-Simple tetapi tidak 4-terisolasi atau 4-endpoint. langkah 2: (secara paralel) Ubah semua piksel hitam menjadi putih jika mereka border selatan titik yang 4-Simple tetapi tidak 4-terisolasi atau 4-endpoint. langkah 3: (secara paralel) Ubah semua piksel hitam menjadi putih jika mereka border timur titik yang 4-Simple tetapi tidak 4-terisolasi atau 4-endpoint. langkah 4: (secara paralel) Ubah semua piksel hitam menjadi putih jika mereka barat yang border poin 4-Simpletetapi tidak 4-terisolasi atau 4-endpoint. ulangi akhir akhir. Algoritma 8-TERSAMBUNG Mulai ulangi sampai tidak ada piksel yang berubah dari hitam menjadi putih: langkah 1: (secara paralel) Ubah semua piksel hitam menjadi putih jika mereka border utara titik yang 8-Simple tetapi tidak 8-terisolasi atau 8-endpoint. langkah 2: (secara paralel) Ubah semua piksel hitam menjadi putih jika mereka border selatan titik yang 8-Simple tetapi tidak 8-terisolasi atau 8-endpoint. langkah 3: (secara paralel) Ubah semua piksel hitam menjadi putih jika mereka border timur titik yang 8-Simple tetapi tidak 8-terisolasi atau 8-endpoint.

langkah 4: (secara paralel) Ubah semua piksel hitam menjadi putih jika mereka border barat titik yang 8-Simple tetapi tidak 8-terisolasi atau 8-endpoint. ulangi akhir. Akhir Urutan bagian dari algoritma paralel, yaitu utara, selatan, timur, barat urutan untuk memeriksa titik-titik perbatasan yang sewenang-wenang, tetapi harus juga membantu keterhubungan piksel. Dengan cara ini untuk memperoleh kerangka yang berpusat di asli pola. Sebuah sifat penting dari algoritma ini adalah bahwa ia melindungi konektivitas dari pola input. [Tingmei Wang. Analysis and Application of IterationSkeletonization Algorithm in Recognizing Chinese Characters Image. http:// www.academypublisher.com/proc/iscsct09/papers/iscsct09p281.pdf. diakses tanggal 7 Januari 2010]. 2.8 Flowchart Flowchart adalah gambaran dalam bentuk diagram alir dari algoritma dalam suatu program yang menyatakan arah alur program dalam menyelesaikan suatu masalah. Berikut adalah beberapa simbol yang digunakan dalam menggambar suatu flowchart:

Tabel 2.1 Bagian-bagian dari Flowchart SIMBOL NAMA FUNGSI TERMINATOR GARIS ALIR (FLOW LINE) PREPARATION PROSES INPUT/OUTPUT DATA DECISION ON PAGE CONNECTOR OFF PAGE CONNECTOR Permulaan/ akhir program. Arah alir program. Proses inisialisasi/pemberian harga awal Proses penghitungan/proses pengolahan data. Proses input/output data, parameter. Informasi. Perbandingan pernyataan, penyeleksian data yang memberikan pilihan untuk langkah selanjutnya. Penghubung bagian-bagian flowchart yang berada pada satu halaman. Penghubung bagian-bagian flowchart yang berada pada halaman berbeda. [Supardi, Y. 2000. Pascal dan Flowchart lewat Praktek. Jakarta:Dinastindo].