• Tidak ada hasil yang ditemukan

Analisis Dan Perancangan Perangkat Lunak Image Thinning Dengan Metode Zhang Suen

N/A
N/A
Protected

Academic year: 2016

Membagikan "Analisis Dan Perancangan Perangkat Lunak Image Thinning Dengan Metode Zhang Suen"

Copied!
114
0
0

Teks penuh

(1)

ANALISIS DAN PERANCANGAN PERANGKAT LUNAK IMAGE

THINNING DENGAN METODE ZHANG SUEN

SKRIPSI

SUCI INDAH SYAHPUTRI

091421022

PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

(2)

ANALISIS DAN PERANCANGAN PERANGKAT LUNAK IMAGE

THINNING DENGAN METODE ZHANG SUEN

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Komputer

SUCI INDAH SYAHPUTRI

091421022

PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

(3)

PERSETUJUAN

Judul : ANALISIS DAN PERANCANGAN PERANGKAT LUNAK IMAGE THINNING DENGAN METODE ZHANG SUEN

Kategori : SKRIPSI Nama : SUCI INDAH SYAHPUTRI Nomor Induk Mahasiswa : 091421022

Program Studi : EKSTENSI S1 ILMU KOMPUTER Departemen : ILMU KOMPUTER

Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA

Diluluskan di

Medan, Juli 2011

Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Drs. Agus Salim Harahap, M.Si Maya Silvi Lydia, B.Sc., M.Sc NIP. 195408281981031004 NIP. 197401272002122001

Diketahui/Disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

(4)

PERNYATAAN

ANALISIS DAN PERANCANGAN PERANGKAT LUNAK IMAGE THINNING DENGAN METODE ZHANG SUEN

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, Juli 2011

(5)

PENGHARGAAN

Puji dan syukur penulis panjatkan kepada Allah SWT, yang selalu melimpahkan rahmat, kasih sayang, dan rizki yang tiada putus-putusnya, sehingga Alhamdulillah akhirnya kertas kajian ini berhasil diselesaikan dalam waktu yang telah ditetapkan.

(6)

ABSTRAK

Segmentasi citra merupakan langkah awal pada proses analisa citra yang bertujuan untuk pengenalan pola dengan mengambil informasi yang terdapat di dalam suatu citra. Image thinning merupakan salah satu aplikasi dari segmentasi citra untuk menghasilkan bentuk kerangka dari sebuah citra digital yang hanya berukuran 1 pixel sehingga mudah dikenal. Metode image thinning yang digunakan pada penelitian ini adalah Zhang Suen. Metode ini melakukan proses thinning dengan melakukan iterasi untuk mengambil nilai pixel yang termasuk ke dalam kategori contour point, melakukan iterasi untuk menghapus seluruh pixel yang termasuk ke dalam kategori contour point serta menampilkan hasil pengenalan pola dalam bentuk sebuah citra digital yang telah mengalami proses thinning.

(7)

ANALYSIS AND DESIGN IMAGE THINNING SOFTWARE WITH ZHANG SUEN METHOD

ABSTRACT

Image segmentation is the first step in the process of image analysis which aims to pattern recognition by taking the information contained in an image. Image thinning is one of the applications of image segmentation to produce a skeleton of a digital image that measures just 1 pixel so easily recognized. Image thinning method used in this study is Zhang Suen, it does the thinning process by performing iterations to retrieve pixel values that fall into the category of contour points, the perform iterations to remove all the pixels that fall into the category of contour points and displays the results of pattern recognition in the form a digital image that has undergone a process of thinning.

(8)

DAFTAR ISI

1.4 Tujuan Penelitian 3

1.5 Manfaat Penelitian 3

1.6 Metode Penelitian 3

1.7 Sistematika Penulisan 4

Bab 2 TINJAUAN PUSTAKA 6

2.1 Citra Digital 6

2.2 Format Citra Digital 8

2.3 Pengertian Pengolahan Citra 9

2.4 Peningkatan Mutu Citra 12

2.4.1 Filter Untuk Memperbaiki Citra 13 2.4.2 Filter Untuk Menyunting Citra 14 2.4.3 Filter Pergeseran Posisi (Position Shifting Filter) 16

2.5 Aritmetika Module 17

2.6 Citra Grayscale 17

2.7 Citra Biner 17

2.8 Citra Threshold 18

2.9 Image Thinning 19

2.9.1 Algoritma Thinning 23

2.9.2 Metode Zhang Suen 26

Bab 3 ANALISIS DAN PERANCANGAN SISTEM 28

3.1 Analisis Sistem 28

3.1.1 M

embaca Jumlah Pixel 29

3.1.2 M

enghitung Nilai RGB Citra 30

3.1.3 A

lgoritma Zhang Suen 37

(9)

3.2.1 F

lowchart Thinning Image 39

3.2.2 P

erancangan Antar Muka Program 41

Bab 4 IMPLEMENTASI DAN PENGUJIAN 44

4.1 Implementasi 44

4.1.1 Tampilan Menu Utama 45

4.1.2 Tampilan Image Thinning 47

4.1.3 Tampilan About 49

4.1.4 Tampilan Help 49

4.2 Pengujian Sitem 50

4.2.1 Pengujian Proses Thinning 51 4.2.2 Pengujian Tampilan Hasil Proses Thinning 57

Bab 5 PENUTUP 58

5.1. Kesimpulan 58

5.2. Saran 58

DAFTAR PUSTAKA 58

(10)

DAFTAR GAMBAR

Halaman

2.1 Sistem Kordinat Citra Digital 6 2.2 Representasi Warna RGB Pada Citra Digital 7 2.3 Image Histogram dari suatu gambar yang gelap 13

2.4 Gradasi Citra Biner 17

2.10 Citra Sirkuit Elektronika 22

2.11 Citra Karakter 22

2.12 Contoh Ukuran dari Beberapa Struktur Elemen 24

2.13 Contoh Struktur Elemen 25

2.14 Empat Bentuk Elemen Untuk Transformasi Hit-dan-miss 25 2.15 Proses Hit-dan-Miss yang Dilakukan pada suatu Citra Biner 26

2.16 Contoh Pixel P1 dengan 8 Tetangga 26

3.12 Rancangan Image Thinning 42

3.13 Rancangan About 42

4.5 Tampilan Hasil Thinning File Citra 47

4.6 Kotak Dialog Save File 48

(11)

4.8 Tampilan About 49

4.9 Tampilan Help 50

4.10 Citra Asli HP.bmp 51

4.11 Citra Hasil Thinning Hp.bmp 52

4.12 Citra Asli Uchy.bmp 52

4.13 Citra Hasil Thinning Uchy Thinning.bmp 53

4.14 Citra Asli Soccer.Jpg 54

4.15 Citra Hasil Thinning Thin.Jpg 55

4.16 Citra Asli Windows.Jpg 55

(12)

DAFTAR TABEL

Halaman

2.1 Bitmap Info Header 8

(13)

ABSTRAK

Segmentasi citra merupakan langkah awal pada proses analisa citra yang bertujuan untuk pengenalan pola dengan mengambil informasi yang terdapat di dalam suatu citra. Image thinning merupakan salah satu aplikasi dari segmentasi citra untuk menghasilkan bentuk kerangka dari sebuah citra digital yang hanya berukuran 1 pixel sehingga mudah dikenal. Metode image thinning yang digunakan pada penelitian ini adalah Zhang Suen. Metode ini melakukan proses thinning dengan melakukan iterasi untuk mengambil nilai pixel yang termasuk ke dalam kategori contour point, melakukan iterasi untuk menghapus seluruh pixel yang termasuk ke dalam kategori contour point serta menampilkan hasil pengenalan pola dalam bentuk sebuah citra digital yang telah mengalami proses thinning.

(14)

ANALYSIS AND DESIGN IMAGE THINNING SOFTWARE WITH ZHANG SUEN METHOD

ABSTRACT

Image segmentation is the first step in the process of image analysis which aims to pattern recognition by taking the information contained in an image. Image thinning is one of the applications of image segmentation to produce a skeleton of a digital image that measures just 1 pixel so easily recognized. Image thinning method used in this study is Zhang Suen, it does the thinning process by performing iterations to retrieve pixel values that fall into the category of contour points, the perform iterations to remove all the pixels that fall into the category of contour points and displays the results of pattern recognition in the form a digital image that has undergone a process of thinning.

(15)

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Segmentasi citra (image segmentation) merupakan langkah awal pada proses analisa citra yang bertujuan untuk mengambil informasi yang terdapat di dalam suatu citra.

Pada umumnya segmentasi secara otomatis adalah salah satu pekerjaan yang sulit

dalam pengolahan citra. Langkah ini akan menentukan berhasil atau tidaknya proses

analisa citra. Namun dengan segmentasi yang efektif, kemungkinan besar akan

didapatkan hasil yang baik.

Image Thinning merupakan salah satu aplikasi dari segmentasi citra untuk menghasilkan bentuk kerangka dari sebuah citra digital dan mengolah citra digital

tersebut agar lebih padat. Dengan kata lain, image thinning bertujuan untuk memproses pixel-pixel pada sebuah citra digital agar menghasilkan sebuah citra digital yang lebih kecil ukurannya namun tetap memiliki informasi yang sama seperti

sebelum dilakukan proses thinning.

Thinning merupakan suatu proses penting sebelum melakukan proses-proses atau operasi-operasi pengolahan citra, seperti dalam proses pengenalan karakter optic, pengenalan sidik jari, pemrosesan teks, dan lain sebagainya. Tujuannya adalah

(16)

Dengan melakukan thinning pada sebuah citra digital, dapat dihasilkan sebuah citra digital dengan ukuran objek yang lebih kecil namun tidak mengurangi kualitas

dari citra digital tersebut. Salah satu metode image thinning yang dapat digunakan adalah Zhang Suen. Metode Zhang Suen merupakan algoritma image thinning yang menggunakan perbandingan sebagai basis dalam melakukan image thinning.

Dengan menggunakan perbandingan yang dilakukan secara berulang-ulang,

metode ini akan menghasilkan citra digital yang lebih padat sehingga cocok

digunakan dalam proses thinning sebuah citra digital.

Berdasarkan uraian di atas, penulis tertarik untuk merancang sebuah perangkat

lunak yang dapat melakukan thinning pada suatu citra digital dengan menggunakan metode Zhang Suen dan menuangkannya ke dalam penelitian dengan judul Analisis dan Perancangan Perangkat Lunak Image Thinning Dengan Metode Zhang Suen.

1.2 Rumusan Masalah

Adapun yang menjadi rumusan masalah dalam penelitian ini adalah:

a. Bagaimana cara melakukan thinning sebuah citra digital.

b. Bagaimana proses kerja metode Zhang Suen dalam melakukan thinning pada sebuah citra digital.

c. Bagaimana merancang sebuah perangkat lunak yang dapat melakukan thinning pada sebuah citra digital dengan menggunakan metode Zhang Suen.

1.3 Batasan Masalah

Adapun yang menjadi batasan masalah dalam penelitian ini adalah:

a. Metode image thinning yang digunakan adalah metode Zhang Suen.

b. Citra digital yang dapat di-thinning dibatasi dengan format JPEG dan BMP.

(17)

d. Output thinning yang dihasilkan merupakan sebuah citra digital dalam format JPEG.

e. Bahasa pemrograman yang digunakan adalah Microsoft Visual Basic 6.0.

1.4 Tujuan Penelitian

Tujuan dari penelitian ini adalah:

a. Untuk mengetahui proses kerja metode Zhang Suen dalam melakukan thinning pada sebuah citra digital.

b. Untuk mengetahui bentuk pengaplikasian metode Zhang Suen dalam bentuk sebuah perangkat lunak.

c. Untuk menghasilkan sebuah perangkat lunak yang mampu melakukan thinning pada sebuah citra digital.

1.5 Manfaat Penelitian

Manfaat dari penelitian ini adalah:

a. Membantu pengguna komputer untuk pengenalan pola dengan mengecilkan atau

menguruskan pola-pola pada citra digital.

b. Sebagai bahan referensi bagi peneliti lain yang ingin mengembangkan perangkat

lunak pengolahan citra digital, khususnya dalam bidang image thinning.

1.6 Metode Penelitian

Metode penelitian yang digunakan penulis dalam penelitian ini terdiri dari

tahapan-tahapan antara lain:

1. Studi literatur

Tentang teori image thinning, khususnya dengan menggunakan metode Zhang Suen.

2. Analisis

Pada tahap ini akan dilakukan analisis terhadap kebutuhan dan persyaratan

(18)

3. Perancangan Sistem

Pada tahap ini dilakukan perancangan tahapan proses pengolahan citra digital

sampai proses thinning, perancangan antarmuka serta perancangan prosedural sistem.

4. Pengkodean

Pada tahap ini sistem yang telah dirancang kemudian diimplementasikan ke

dalam bahasa pemrograman.

5. Pengujian dan Analisa Perangkat Lunak

Menganalisis dan menguji hasil image thinning dengan menggunakan metode Zhang Suen.

6. Penulisan laporan dalam bentuk skripsi

Menyusun laporan hasil analisis dan perancangan ke dalam format penulisan

skripsi dengan disertai kesimpulan akhir.

1.7 Sistematika Penulisan

Sistematika penulisan yang akan diuraikan dalam skripsi ini terbagi dalam beberapa

bab yang akan dibahas sebagai berikut:

BAB 1 : PENDAHULUAN

Pada Bab I membahas tentang latar belakang, perumusan masalah,

batasan masalah, tujuan penelitian, manfaat penelitian, metodologi

penelitian serta sistematika penulisan.

BAB 2 : LANDASAN TEORI

Pada Bab ini dibahas mengenai pengertian citra digital, image thinning, metode Zhang Suen dan teori lainnya yang mendukung pembuatan

(19)

BAB 3 : ANALISIS DAN PERANCANGAN SISTEM

Berisikan penjelasan analisis dari sistem yang akan dibangun,

perancangan sistem, diagram-diagram, perancangan antar muka (user interface) meliputi perancangan input serta output.

BAB 4 : IMPLEMENTASI DAN PENGUJIAN SISTEM

Pada bab ini akan dituangkan hasil analisa dan perancangan sistem yang

ada di Bab 3 dalam bentuk aplikasi yang dibangun melalui infrastuktur

yang telah dijelaskan di bab-bab sebelumnya.

BAB 5 : KESIMPULAN DAN SARAN

Di dalam bab ini akan diberikan kesimpulan akhir dari hasil pengujian

aplikasi ini serta saran bagi pengembangan aplikasi dibahas pada skripsi

(20)

BAB 2

TINJAUAN PUSTAKA

2.1 Citra Digital

Citra digital dapat didefinisikan sebagai fungsi dua variabel, f(x,y), dimana x dan y

adalah koordinat spasial dan nilai f(x,y) yang merupakan intensitas citra pada

koordinat tersebut [6]. Teknologi dasar untuk menciptakan dan menampilkan warna

pada citra digital berdasarkan pada penelitian bahwa sebuah warna merupakan

kombinasi dari tiga warna dasar, yaitu merah, hijau, dan biru (Red, Green, Blue - RGB). Sistem kordinat pada sebuah citra digital dapat dilihat pada Gambar 2.1.

Sumber: Munir, 2004

(21)

RGB adalah suatu model warna yang terdiri dari merah, hijau, dan biru, digabungkan dalam membentuk suatu susunan warna yang luas. Setiap warna dasar,

misalnya merah, dapat diberi rentang nilai. Untuk monitor komputer, nilai rentangnya

paling kecil = 0 dan paling besar = 256. Pilihan skala 256 ini didasarkan pada cara

mengungkap 8 digit bilangan biner yang digunakan oleh mesin komputer. Dengan

cara ini, akan diperoleh warna campuran sebanyak 256 x 256 x 256 = 1677726 jenis

warna. Sebuah jenis warna, dapat dibayangkan sebagai sebuah vektor di ruang

dimensi 3 yang biasanya dipakai dalam matematika, koordinatnya dinyatakan dalam

bentuk tiga bilangan, yaitu komponen-x, komponen-y dan komponen-z. Misalkan

sebuah vektor dituliskan sebagai r = (x,y,z). Untuk warna, komponen-komponen

tersebut digantikan oleh komponen R(ed), G(reen), B(lue). Jadi, sebuah jenis warna

dapat dituliskan sebagai berikut: warna = RGB(30, 75, 255). Putih = RGB

(255,255,255), sedangkan untuk hitam= RGB(0,0,0) [8]. Bentuk Representasi warna

dari sebuah citra digitial dapat dilihat pada Gambar 2.2.

Sumber: Sutoyo, 2009

Gambar 2.2 Representasi Warna RGB Pada Citra Digital

(22)

100 x 3 byte (karena RGB) = 30.000 byte = 30 KB atau 100 x 100 x 24 bits = 240.000 bits [9].

2.2 Format Citra Digital

Citra Digital memiliki beberapa format yang memiliki karakteristk tersendiri. Format

pada citra digital ini umumnya berdasarkan tipe dan cara kompresi yang digunakan

pada citra digital tersebut [2].

Ada empat format citra digital yang sering dijumpai, antara lain:

1. Bitmap (BMP)

Merupakan format Gambar yang paling umum dan merupakan format standard windows. Ukuran filenya sangat besar karena bisa mencapai ukuran megabyte. File ini merupakan format yang belum terkompresi dan menggunakan sistem warna

RGB (Red, Green, Blue) di mana masing-masing warna pixel-nya terdiri dari 3 komponen R, G, dan B yang dicampur menjadi satu. File BMP dapat dibuka dengan berbagai macam software pembuka Gambar seperti ACDSee, Paint, Irvan View dan lain-lain. File BMP tidak bisa (sangat jarang) digunakan di web (internet) karena ukurannya yang besar. Detail gambar BMP dapat dilihat pada Tabel 2.1 dan Tabel 2.2.

Tabel 2.1 Bitmap InfoHeader Nama Field Size in Bytes Keterangan

bfType 2 Mengandung karakter “BM” yang mengidentifikasikan tipe file

bfSize 4 Memori file

bfReserved1 2 Tidak dipergunakan

bfReserved1 2 Tidak dipergunakan

bfOffBits 4 Offset untuk memulai data pixel

(23)

bcSize 4 Memori Header

bcWidth 2 Lebar Gambar

bcHeight 2 Tinggi Gambar

bcPlanes 2 Harus 1

bcBitCount 2 Bits per pixels – 1,4,8 atau 24 2. Joint Photographic Expert Group (JPEG/JPG)

Format JPEG merupakan format yang paling terkenal sampai sekarang ini. Hal ini

karena sifatnya yang berukuran kecil (hanya puluhan/ratusan KB saja), dan

bersifat portable. Format file ini sering digunakan pada bidang fotografi untuk menyimpan file foto hasil perekaman analog to digital converter (ADC). Karena ukurannya kecil maka file ini banyak digunakan di web (internet).

2.3Pengertian Pengolahan Citra

Ada tiga bidang studi utama yang menangani pengolahan data dalam bentuk gambar

dan citra yaitu: grafika komputer, pengolahan citra dan pengenalan pola. Karena

pengenalan pola sering juga merupakan bagian dari pengolahan citra seperti misalnya

pada proses klasifikasi, maka perbedaan tiga bidang studi tersebut berubah menjadi:

grafika komputer, pengolahan citra dan visi komputer. Dimana pengenalan pola menjadi bagian dari pengolahan citra dan bagian dari visi komputer.

Komputer grafika banyak melakukan proses yang bersifat sintesis yang

mempunyai ciri data masukan berbentuk deskriptif dengan pengeluaran hasil proses

yang berbentuk gambar. Sebagai contoh adalah proses penggambaran prespektif suatu

objek tiga dimensi, yang merupakan data masukan berupa koordinat titik-titik yang

berbentuk objek tertentu, kemudian melalui proses transformasi tiga dimensi

menghasilkan gambar objek tiga dimensi sebagai hasil keluarannya. Contoh aplikasi

dari teknik komputer grafik ini banyak dijumpai pada proses desain dibidang

enjinering dan banyak pula ditemui dalam bidang seni.

Visi komputer merupakan proses analisis citra yang cirinya merupakan

(24)

gambar, dan proses yang dilakukan adalah proses penggalian struktur gambar dengan

hasil keluaran yang bersifat deskriptif. Sebagai contoh pengenalan jenis penyakit paru

melalui citra sinar-x paru penderita.

Pengolahan citra merupakan proses pengolahan dan analisis citra yang banyak

melibatkan persepsi visual. Proses ini mempunyai ciri data masukan dan informasi keluaran yang berbentuk citra. Dalam kenyataannya, batas antara ketiga bidang studi

diatas sulit untuk ditentukan. Sebagai contoh, dalam pembuatan film animasi, objek

dan proses animasinya diciptakan dengan teknik komputer grafik sedangkan

pembuatan latar belakangnya dapat dilakukan dengan teknik pengolahan citra. Disini

latar belakang gambar dapat dibuat secara sederhana melalui kombinasi proses

digitalisasi suatu foto dan proses zooming atau scrolling. Atau dapat pula dengan teknik yang lebih rumit seperti pembuatan fraktal dan tekstur. Pembauran antara

penggunaan teknik pengolahan citra dan grafika komputer juga dapat dilihat dalam

proses penggabungan peta tematik dan peta kontur. Contoh lain pada proses

pengenalan objek yang terkandung dalam suatu citra, dimana proses segmentasi yang

diperlukan merupakan bagian dari teknik pengolahan citra dan proses pengenalan

objeknya merupakan bagian dari teknik visi komputer.

Dalam penerapan pengolahan citra digital tujuannya adalah untuk mengolah

citra suatu objek agar dapat memperoleh informasi mengenai objek itu sendiri karena

hanya citra digital yang dapat diolah oleh komputer maka citra dari suatu objek harus dikonversi ke citra digital yang merupakan representasi dari objek itu sendiri.

Sistem pengolahan citra digital secara umum mencakup tiga operasi dasar yang terdiri

dari :

1. Digitalisasi (Digitalization) 2. Pengolahan (Processing) 3. Peragaan (Display)

Oleh karena itu maka sistem pengolahan citra digital mempunyai beberapa

komponen dasar, yang terdiri atas:

1. Digitizer

(25)

3. Storage 4. Alat peraga

Komputer digital hanya dapat memproses suatu citra dalam bentuk digital. Citra digital dapat diperoleh secara otomatis dari sistem penangkap citra digital (digitizer) yang melakukan penjelajahan citra dan membentuk suatu matriks dimana elemen-elemennya dinyatakan nilai intensitas cahaya pada suatu himpunan diskrit dari

titik-titik. Pada digitizer, sinyal yang diterima masih merupakan sinyal analog yang harus diubah ke digital dengan merubah harga kontinu menjadi harga diskrit selanjutnya citra yang diskrit diolah pada komputer digital untuk siap ditampilkan

pada monitor peraga dengan mengolah prosesor video digital melalui pengolahan citra terhadap pixel-pixel pada citra. Pada bagian operator disini dilakukan komunikasi antara pemakai dengan mesin pengolah. Baik bagi citra yang telah ditampilkan

maupun citra yang diolah dapat disimpan pada berbagai media penyimpanan seperti

hard disk maupun optical disk.

Adakalanya citra yang diperoleh dari digitizer langsung ditampilkan keperaga tetapi terlebih dahulu dengan mengolah prosesor video digital terhadap pixel citra tersebut. Proses konversi citra analog ke citra digital disebut dengan digitalisasi dan alatnya disebut dengan digitizer. Dengan demikian digitizer berfungsi untuk mengkonversi suatu image ke proses representasi numerik yang cocok untuk input oleh komputer digital. Contoh alat digitizer seperti scanner dan kamera digital.

Proses digitalisasi citra analog atau citra kontinu dibagi dalam daerah-daerah

kecil yang dinamakan dengan elemen gambar yang disebut dengan pixel. Skema pembagian paling umum adalah sisi segi empat yaitu dibagi kedalam garis-garis

(26)

Resolusi suatu array citra berpengaruh pada kualitas citra yang akan ditampilkan. Pada umumnya semakin tinggi suatu array citra maka semakin baik kualitas citra yang akan ditampilkan. Namun semakin tingginya resolusi suatu array

citra maka semakin besar jumlah bit memori yang harus dialokasikan untuk representasinya. Selain memori utama, pengolahan citra juga memerlukan

penyimpanan sekunder yang berfungsi untuk menyimpan data citra yang tidak sedang

diproses. Dengan tersedianya fasilitas storage dalam jumlah yang besar adalah suatu hal yang penting dalam perancangan pemakaian sistem pengolahan citra digital.

Alat peraga merupakan mata rantai terakhir pengolahan citra digital. Fungsi

alat peraga pada sistem pengolahan citra adalah untuk mempresentasikan nilai-nilai

numerik yang tersimpan dalam array citra kedalam bentuk yang dapat dimengerti oleh peralatan visual manusia. Untuk peraga citra tidak diperlukan jika outputnya berupa data numeric atau keputusan, tetapi sangat diperlukan bila output berupa tingkat keabuan. Semakin besar ukuran citra yang dapat diperagakan maka akan semakin

bagus alat peraga citra tersebut. Contoh alat peraga yang akan digunakan adalah

tabung sinar katoda (cathoda ray tube).

Printer sebagai peralatan peragaan untuk mencetak citra terutama berguna untuk tugas pengolahan citra resolusi rendah. Satu pendekatan sederhana untuk

membangkitkan bentuk keabuan citra langsung pada kertas adalah dengan

menggunakan kemampuan dari printer. Tingkat keabuan pada tiap-tiap hasil cetakan dapat dikontrol dengan nomor dan kepadatan dari tiap karakter pada saat pencetakan

[5].

2.4 Peningkatan Mutu Citra

Enhancement citra merupakan segala proses awal yang bertujuan untuk meningkatkan mutu citra baik untuk keperluan menghilangkan gangguan, keperluan interpretasi,

maupun untuk keperluan keindahan, untuk kepentingan analisis citra pada proses ini

(27)

1. Filter untuk memperbaiki citra. 2. Filter untuk menyunting citra. 3. Filter pergeseran posisi.

2.4.1 Filter Untuk Memperbaiki Citra

Filter untuk memperbaiki citra seperti memperjelas citra yang terlalu terang atau terlalu gelap dan membersihkan citra yang penuh gangguan (noise). Setiap gambar dapat diperbaiki dengan menganalisis dan melihat image histogramnya, dimana image histogramnya adalah grafik yang menunjukkan frekuensi (jumlah yang digunakan)

suatu nomor warna. Sumbu horizontal dari grafik menunjukkan nomor warna yang

dipakai mulai dari 0 hingga 255, dan sumbu vertikal menunjukkan jumlah titik yang

mempergunakan warna yang bersangkutan.

Terlihat bahwa nomor warna yang lebih kecil dari 70 (nomor warna 0-69)

cenderung sering digunakan dibandingkan dengan nomor warna yang lebih besar dari

70 yaitu 71-225. Inilah yang mengakibatkan gambar sangat gelap. Cara untuk

memperjelas gambar tersebut yaitu dengan penambahan intensitas atau dengan

histogram equalization. Teknik ini adalah teknik memperterang suatu intensitas warna dengan memperhitungkan berapa titik yang mempergunakan warna tersebut. Semakin

banyak titik yang menggunakan suatu intensitas warna, semakin jelas terlihat titik

tersebut, karena perbedaan intensitas warna dengan titik lain disekitarnya cenderung

jelas.

Pada Gambar 2.3 diperlihatkan suatu image histogram dari citra yang gelap. Frekuensi

Warna di range ini terlihat tidak pernah dipakai karena pita intensitasnya = 0

(28)

Gambar 2.3 Image Histogram dari suatu gambar yang gelap

Filter untuk memperbaiki citra juga dapat digunakan untuk membersihkan

gambar yang terganggu (terdapat noise). Noise ini berarti gangguan–gangguan dimana terjadi sewaktu gambar dikirim dari komputer ke komputer lain ataupun saat satelit

mengirimkan foto permukaan bumi ke stasiun bumi. Dengan adanya pengolahan citra

maka bintik-bintik noise tersebut dapat hilang.

2.4.2 Filter Untuk Menyunting Citra

Filter penyunting citra banyak dipakai pada pengeditan photo, seperti misalnya menghaluskan gambar, memperbesar/memperkecil citra. Ada beberapa penyunting

citra antara lain adalah:

a. Transparansi filtering b. Negatif Filtering c. Mean Filtering d. Median Filtering

e. Mozaik Filtering dan Modus Filtering

a. Transparansi Filtering

Jenis filter ini digunakan pada pembuatan film-film maupun dalam dunia pertelevisian. Dimana sebuah gambar muncul diatas gambar yang lain. Cara

pembuatan efek ini ialah dengan menambahkan titik pada koordinat yang sama pada

gambar yang pertama dengan titik pada koordinat kedua kemudian hasilnya diambil

rata-rata. Dengan ini diperoleh dua gambar yang terlihat transparan. Pada filtering akan ditimbulkan efek gambar pertama seakan-akan menghilang dan sebelum

benar-benar hilang timbul gambar yang kedua yang semakin lama semakin terang seiring

dengan hilangnya gambar pertama.

(29)

Filter ini merupakan kebalikan dari proses pencucian film. Dimana dari film negatif dibuat menjadi film berwarna. Disini dilakukan proses sebaliknya yaitu dari gambar

berwarna menjadi gambar negatif. Proses pembuatannya adalah untuk gambar yang

berwarna harus dibuat dahulu menjadi gambar hitam-putih agar dapat diperoleh

negatifnya. Negatif ini didapat dari hasil perhitungan intensitas warna terhadap warna

titik (255 – warna titik). Perhitungan ini dilakukan untuk seluruh titik pada layar dan

hasil perhitungan inilah warna negatif dari titik tersebut. Jika ditinjau dari image histogramnya maka hasil dari negatif filtering ini adalah pencerminan horizontal, dimana intensitas warna yang berada disebelah kiri pada imagehistogram gambar asli akan berpindah pada bagian kanan dari image histogram yang merupakan hasil negatif filter.

c. Mean Filtering (Memperhalus gambar)

Mean filtering ini adalah filter yang digunakan untuk menghaluskan gambar yang terlalu kasar. Jika filter ini dilakukan pada gambar yang sudah halus, maka hasilnya gambar tersebut akan semakin kabur. Mean filtering ini biasa disebut “smoothing filter atau blur effect”. Mean filtering ini termasuk jenis spatial filtering yang artinya untuk memproses sebuah titik, juga mengikut sertakan titik-titik sekitar dalam kalkulasi.

Sebenarnya hal ini telah dilakukan pada bagian pembersihan gambar dimana

digunakan titik-titik sekitar noise untuk memperkirakan titik yang akan digunakan untuk mengganti noise tersebut.

d. Median Filtering

Kegunaan filter ini adalah memperhalus gambar tetapi tidak sehalus mem-filtering. Gambar yang dihasilkan terlihat tidak rapi, karena tidak dilakukan proses rata-rata

tetapi dilakukan proses mencari nilai tengah dari titik yang direkam dalam matriks.

Nilai tengah dari beberapa nilai dapat dicari sebagai berikut: misalkan ada sejumlah

nilai sebagai berikut : 9, 5, 8, 3, 5, 2, 1, 4, 2 dan untuk mencari nilai tengah, harus

mengurutkan nilai-nilai tersebut menjadi 1, 2, 2, 3, 4, 5, 5, 8, 9. Karena ada sembilan

angka maka nilai tengah ialah angka yang berada pada urutan tengah yaitu 9/2 = 5,

(30)

e. Mozaik Filtering (Efek Berkotak-kotak)

Filter ini merupakan spatial filtering yang tidak menggunakan mask. Filter ini sangat sering digunakan dalam acara televisi terutama untuk menutupi wajah orang-orang

yang tidak mau wajahnya terlihat dalam televisi misalnya wajah kriminal. Sebenarnya

teknik mozaik filtering ini hampir sama dengan teknik mean filtering, hanya saja tidak semua titik yang diproses melainkan titik setiap kelipatan N (dimana N adalah ukuran

spatial yang digunakan). Kemudian warna hasilnya tidak dicetakkan sebagai balok

sebesar NxN sehingga efek kotak-kotak muncul pada gambar setelah di-filter. Semakin besar spatial yang digunakan, semakin besar kotak-kotak yang dihasilkan.

f. Modus Filtering (Efek Cat Minyak)

Modus filtering adalah termasuk jenis spatialfiltering yang tidak menggunakan mask. Setelah dilakukan proses perekaman titik-titik sekitar dan titik yang sedang diperiksa

kedalam matriks, dicari warna apa yang paling banyak dipakai dalam tabel warna

tersebut. Warna inilah yang akan digunakan sebagai warna titik yang akan diletakkan

pada layar output. Tujuan utama dari filter ini adalah membuat gambar ini menjadi berbintik-bintik seperti dicat dengan cat minyak.

2.4.3 Filter Pergeseran Posisi (Position Shifting Filtering)

Salah satu proses peningkatan mutu citra yang orientasi prosesnya per citra adalah

proses koneksi geometri citra. Jenis penggunaan yang bersifat geometris yang sering

terjadi waktu proses rekaman citra yang dapat berbentuk pergeseran pusat citra dan

perubahan orientasi koordinat citra yang sering disebut sebagai skewed. Koneksi geometris yang sederhana dan sering digunakan untuk mengatasi gangguan-gangguan

tersebut diatas adalah proses rotasi citra dan translasi citra yang semuanya termasuk

(31)

2.5Aritmetika Module

Aritmetika module (modular arithmetic) memainkan peranan yang penting dalam komputasi integer. Operator yang digunakan pada aritmetika module adalah mod.

Operator mod memberikan sisa pembagian.

Misalnya: 23 dibagi 5 memberikan hasil = 4 dan sisa = 3, sehingga ditulis 23

mod 5 = 3 [7].

2.6 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 [6].

(32)

Citra biner adalah citra dimana piksel-pikselnya hanya memiliki dua buah nilai

intensitas yaitu bernilai 0 dan 1 dimana 0 menyatakan warna latar belakang

(background) dan 1 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 [8].

Gradasi Citra biner dapat dilihat pada Gambar 2.4.

1

0

Gambar 2.4 Gradasi Citra Biner

Contoh sebuah citra biner seperti pada Gambar 2.5

Gambar 2.5 Citra Biner

2.8 Citra Threshold

Citra threshold dilakukan dengan mempertegas citra dengan cara mengubah citra hasil yang memiliki derajat keabuan 255 (8 bit), menjadi hanya dua buah yaitu hitam dan

putih. Hal yang perlu diperhatikan pada proses threshold adalah memilih sebuah nilai threshold (T)dimana piksel yang bernilai dibawah nilai threshold akan diset menjadi hitam dan piksel yang bernilai diatas nilai threshold akan diset menjadi putih. Umumnya nilai T dihitung dengan menggunakan persamaan:

(33)

Dimana fmaks adalah nilai intensitas maksimum pada citra dan fmin adalah nilai intensitas minimum pada citra. Jika f(x,y) adalah nilai intensitas pixel pada posisi (x,y) maka pixel tersebut diganti putih atau hitam tergantung kondisi berikut.

f(x,y) = 255, jika f(x,y) ≥ T f(x,y) = 0, jika f(x,y) < T

Sebagai contoh misalnya diketahui citra grayscale 4x4 pixel dengan kedalaman 8 bit seperti Gambar 2.6.

200 230 150 75 240 50 170 92 210 100 120 80 100 90 200 230 Sumber: Sutoyo, 2009

Gambar 2.6 Citra Grayscale 4x4 Pixel Dengan motede ini, nilai threshold T adalah:

T= = = 145

Bila nilai T = 145 diterapkan untuk citra pada Gambar 2.8 di atas maka diperoleh citra

seperti pada Gambar 2.7.

255 255 255 0

255 0 255 0

255 0 0 0

0 0 255 255

Sumber: Sutoyo, 2009

Gambar 2.7 Citra Hasil Threshold

2.9 Image Thinning

(34)

mereduksi informasi tertentu dalam gambar tersebut. Thinning ini biasa digunakan mencari bentuk dasar/rangka/skeleton dari suatu gambar. Contohnya pada PCB

(printed circuit boards) untuk mengetahui aliran/arus data pada PCB tersebut. Selain untuk kompresi suatu gambar, kegunaan lain dari thinning adalah untuk mencari informasi tertentu dari suatu gambar dengan menghilangkan informasi yang tidak

diperlukan. Misalnya saja untuk mencari dataran tinggi dalam peta geografis.

Algoritma thinning binary regions memberikan aspek sebagai berikut : (1) thinning tidak menghapus point terakhir, (2) thinning tidak merusak konektivitas, dan (3) thinning tidak menyebabkan pengikisan berlebihan dari region. Diasumsikan region points memiliki nilai 1 dan background points memiliki nilai 0. Metode ini terdiri dari 2 langkah dasar yang dikenakan terhadap contour points dari suatu region, dimana contour points adalah sembarang piksel dengan nilai 1 dan memiliki paling sedikit satu dari 8-tetangga bernilai 0. Algoritma ini menggunakan tanda untuk

memilih piksel mana yang akan dihapus. Aturannya, 8-tetangga terdekat dari setiap

piksel P1 dinomori P2 (untuk piksel di atas P1) sampai dengan P9 sesuai dengan arah

jarum jam.

P9 P2 P3

P8 P1 P4

P7 P6 P5

Gambar 2.8 Piksel 8 Tetangga

Langkah 1 Beri tanda sebuah contour point p1 untuk dihapus apabila memenuhi

semua kondisi-kondisi berikut ini :

(a) 2  N(P1)  6;

(b) S(P1) = 1;

(c) P2 . P4. P6 = 0;

(d) P4.P6 . P8 = 0;

di mana N(P1) adalah jumlah dari tetangga-tetangga dari p1 yang bukan

nol; sehingga:

(35)

dan S(P1) adalah jumlah dari transisi 0 ke 1 dalam urutan P2, P3, P4, P5,

P6, P7, P8, P9.

P9 P2 P3

P8 P1 P4

P7 P6 P5

Langkah 2 Hampir sama dengan langkah 1, hanya saja pada langkah 2 ini bagian

(c) dan (d) berubah menjadi sebagai berikut :

(c) P2 . P4 . P8 = 0;

(d) P2 . P6. P8 = 0;

Langkah 1 diterapkan untuk border pixel pada binary region. Jika satu atau lebih dari kondisi (a) sampai dengan (d) tidak dipenuhi, maka nilai dari point yang diperiksa tidak berubah (tidak perlu diberi tanda). Points yang diperiksa tidak akan dihapus sampai semua border points selesai diproses. Hal ini dilakukan untuk mencegah agar tidak terjadi perubahan pada struktur data saat pengeksekusian algoritma. Setelah

langkah 1 telah selesai dilakukan terhadap semua border points , semua yang telah diberi tanda dihapus (diubah ke 0). Lalu, langkah 2 baru dijalankan terhadap hasil data

persis sama seperti pada langkah 1.

Jadi, satu iterasi dalam algoritma thinning ini terdiri dari :

1. Pengerjaan langkah 1 untuk memberi tanda pada border points untuk dihapus. 2. Penghapusan points yang telah diberi tanda.

3. Pengerjaan langkah 2 untuk memberi tanda border points yang tersisa untuk dihapus.

4. Penghapusan points yang telah diberi tanda.

(36)

Jadi misalnya terdapat suatu gambar yang cukup tebal, jika kita lakukan proses

thinning pada gambar tersebut, maka gambar yang tersisa hanyalah kerangka utama dari gambar tersebut. Contohnya dapat dilihat dalam gambar akar berikut, (a) gambar

akar yang terlihat cukup tebal, sedangkan dalam (b) setelah dilakukan proses thinning, maka gambar akar yang terlihat hanya tinggal pola atau kerangka utamanya saja.

Gambar asli Gambar hasil

Gambar 2.9 Citra Akar

Pada bidang industri sering digunakan proses thinning untuk mencari kerangka utama dari sirkuit, seperti Gambar 2.10 di bawah ini:

Gambar sebuah sirkuit Gambar hasil thinning Gambar 2.10 Citra Sirkuit Elektronika

(37)

Gambar 2.11 Citra Karakter

2.9.1 Algoritma Thinning

Thinning merupakan salah satu teknik dalam 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 citra tersebut diubah menjadi citra grayscale karena 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).

Ada beberapa komponen penting yang perlu diketahui dan dipahami dalam

melakukan proses thinning, seperti struktur elemen (kernel) dan tranformasi hit -dan-miss (hit-and-misstransformation), yaitu :

1. Struktur elemen

Struktur elemen atau biasa disebut sebagai kernel, berisi pola yang

mengkhususkan koordinat dari beberapa titik yang memiliki relatifitas yang sama

(38)

Gambar 2.12 Contoh Ukuran dari Beberapa Struktur Elemen

Origin tidak perlu harus di tengah, namun biasanya di tengah. Struktur elemen dengan ukuran 3 x 3 adalah yang paling banyak digunakan. Setiap titik bisa

memiliki nilai. Umumnya untuk mengoperasikan suatu binary image seperti erosion, keseluruhan element hanya memiliki sebuah nilai, yaitu 1 (satu). Pada thinning atau grayscale morphological operations dapat memiliki nilai yang lain. Pada kotak-kotak yang kosong, yang artinya tidak memiliki nilai, biasanya direpresentasikan

dengan menggunakan 0 (nol).

Ketika morphological operation dilakukan, origin dari structuring elements diposisikan pada setiap pixel pada citra input, lalu nilai dari structuring elements yang bersesuaian dibandingkan dengan nilai dari pixel citra. Detil dari perbandingan ini dan efeknya tergantung dari jenis operator, pada hal ini adalah structuring elements yang digunakan.

2. Transformasi hit -dan-miss

(39)

dengan angka 1 dan pixel background dinyatakan dengan angka 0. Contohnya dapat dilihat pada struktur elemen yang ditunjukkan pada Gambar 2.13.

Gambar 2.13 Contoh Struktur Elemen

Struktur elemen di atas dapat digunakan untuk menemukan posisi sudut kanan (right angle convex corner) dari suatu citra. Untuk dapat menemukan semua sudut dalam citra biner, harus dilakukan transformasi hit-dan-miss sebanyak empat kali dengan empat elemen berbeda yang merepresentasikan empat jenis sudut yang ditemukan

dalam citra biner tersebut. Empat bentuk elemen tersebut dapat dilihat pada Gambar

2.14.

Gambar 2.14 Contoh Empat Bentuk Elemen Untuk Transformasi Hit-dan-miss

Setelah menemukan lokasi dari setiap orientasi sudut, kita kemudian

melakukan operasi OR dari semua citra untuk mendapat hasil akhir yang

menunjukkan lokasi dari semua sudut kanan pada orientasi apapun. Citra pada

(40)

Gambar 2.15 Proses Hit-dan-Miss yang Dilakukan pada suatu Citra Biner

2.9.2 Metode Zhang Suen

Algoritma ini adalah salah satu algoritma thinning yang cukup populer dan telah digunakan sebagai suatu basis perbandingan untuk thinning. Algoritma ini cepat dan mudah diimplementasikan. Setiap iterasi dari metode ini terdiri dari dua sub-iterasi

yang berurutan dan dilakukan terhadap contour points dari wilayah citra. Contour point adalah setiap piksel dengan nilai 1 dan memiliki setidaknya 8-neighbour yang memiliki nilai 0.

Dengan informasi ini, dilakukan pembagian pixel dalam ukuran 3 X 3, di mana pixel yang berada di posisi tengah merupakan pixel yang akan diuji. Gambar 2.16 diberikan contoh citra ukuran 3 x 3 pixel dengan 8 tetangga.

P9 P2 P3

P8 P1 P4

P7 P6 P5

Gambar 2.16 Contoh Pixel P1 dengan 8 Tetangga

Proses thinning dari Gambar 2.16 di atas dengan menggunakan metode Zhang Suen ini adalah sebagai berikut:

(41)

3. Untuk setiap pixel yang bukan merupakan pixel ujilakukan : a. Hitung nilai nearest neighbour pixel dengan pixel uji.

b. Jika nilai nearest neighbour berada pada rentang nilai 2 ≤ N ≤ 6, tandai pixel sebagai contour point. Jika tidak, beri penanda 0 pada pixel.

c. Beri penanda 0 pada pixel uji.

4. Untuk setiap pixel dalam ukuran dimensi 3 X 3, hapus seluruh pixel yang bertanda 0. Penghapusan pixel ini biasanya dilakukan dengan menggunakan warna putih. 5. Untuk setiap pixel yang tergolong ke dalam kategori contour point, ubah warna

pixel menjadi warna hitam (dapat digunakan warna lain sesuai dengan keinginan).

Proses penelusuran yang pertama dilakukan adalah menandai semua titik objek

untuk dihapus jika titik obejek tersebut memenuhi syarat-syarat sebagai berikut:

1. Jumlah pixel tetangga yang bernilai 1, ≥ 2 dan ≤ 6 atau (2≤N(P1) ≤ 6)

2. Jumlah perpindahan nilai pixel dari 0 ke 1 = 1 (S(P1) ), dimulai dari pixel P2 sampai P9.

(42)

BAB 3

ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Sistem

Citra yang digunakan untuk proses thinning adalah citra biner, jika data masukannya berupa citra warna (RGB) maka citra tersebut harus dimanipulasi menjadi citra grayscale, yang merupakan syarat guna menghasilkan suatu citra biner. Untuk mengubah citra grayscale menjadi citra biner, maka dilakukan proses thresholding dahulu. Setelah diperoleh citra threshold, maka citra biner dapat dihitung berdasarkan nilai ambang yang ditetapkan.

Proses thinning dengan menggunakan metode zhang-suen adalah sebagai berikut:

1. Membaca jumlah pixel di dalam gambar.

2. Melakukan iterasi untuk mengambil nilai pixel gambar.

3. Melakukan iterasi untuk mengambil nilai pixel yang termasuk ke dalam kategori contour point.

4. Melakukan iterasi untuk menghapus seluruh pixel yang termasuk ke dalam kategori contour point.

5. Menampilkan hasil pengenalan pola dalam bentuk sebuah citra digital yang

(43)

3.1.1 Membaca Jumlah Pixel

Pada citra digital 24-bit tidak terdapat palet RGB, karena nilai RGB langsung diuraikan dalam data bitmap. Setiap elemen data bitmap panjangnya 3 byte, masing-masing byte menyatakan komponen R, G, dan B.

<Header> <data bitmap>

10010000 01011010 011110001 011110001 10

Gambar 3.1 Format Citra 24-bit (16 juta warna)

Pada citra bitmap 24-bit, tiap pixel-nya mengandung 24-bit kandungan warna atau 8-bit untuk masing-masing warna dasar (R, G, dan B), dengan kisaran nilai

kandungan antara 0 (00000000) sampai 255 (11111111) untuk tiap warna. Pada

contoh format citra 24-bit di atas data pertama adalah header yang berisi informasi nama file, jenis format dan dimensi citra. Di bawah data bitmap terdapat pixel pertama mempunyai R = 10010000 (biner), G = 01011010 (biner), B = 011110001 (biner).

Bagian terkecil sebuah citra adalah pixel yang memiliki nilai intensitas hasil kuantisasi peralatan digital. Citra warna memiliki tiga komponen warna yang setiap

komponen warna menggunakan penyimpanan 8 bit atau 1 byte. Berarti jumlah bit dalam 1 pixel adalah sebanyak 3 x 8 bit = 24 bit. Jadi untuk menghitung jumlah pixel sebuah citra dilakukan dengan membagi nilai intensitas citra dengan 24 bit.

Representasi nilai pixel pada citra warna dapat dilihat pada Gambar 3.2.

(44)

Nilai intensitas citra disimpan dalam data bitmap dalam bentuk nilai biner dengan nilai antara 0 dan 1. Jadi jumlah pixel-nya adalah jumlah kelipatan 24 bit. Misalnya citra bunga dengan nilai intensitas di atas adalah adalah:

111100001111000011111110001100001111000011111111111100001111000011111

000111100001111000011111001111100001111000011111010101100001111000011

111111111100001111000011111111111100001111000011010111111110000111100

001100000111110000111100001111011000111100001111000011111111111100001

111000011111000011100001111000011110101011110000111100001111000110111

111000011110000111111111111000011110000111010111111110000111100001111

1111 dan seterusnya.

Nilai 111100001111000011111111 = 24 bit mewakili 1 pixel dari citra.

Jika jumlah bit citra di atas adalah 1800000 bit, maka jumlah pixel-nya adalah 1800000/24 bit = 75.000 pixel.

3.1.2 Menghitung Nilai RGB Citra

Pada metode Zhang Suen citra yang diuji terdiri dari 9 pixel (3x3), maka citra pada Gambar 3.2 di atas dilakukan pembagian pixel dalam ukuran 3 x 3, di mana pixel yang berada di posisi tengah merupakan pixel yang akan diuji. Maka penghitungan nilai komponen warna RGB-nya dilakukan dalam 9 pixel seperti pada Gambar 3.3.

1 2 3

4 5 6

7 8 9

Gambar 3.3 Citra Bunga 9 pixel

Misalnya nilai pixel 1 dalam biner 24 bit adalah: Pixel 1 = 111100001111000011111111

Pixel 2 = 100000011110000111110000

Pixel 3 = 111100001111000011111111

(45)

Pixel 5 = 111100001111000011111111

Pixel 6 = 100000011110000111110000

Pixel 7 = 000100001111000011111111

Pixel 8 = 100000011110000111110111

Pixel 9 = 101110111111000011111100

Untuk mendapatkan masing-masing nilai R, G dan B dilakukan operasi modulo

(sisa bagi) dengan rumus sebagai berikut:

Nilai R = c Mod 256 ……….. (3.1)

Nilai G = (c and 65280) / 256 ……….. (3.2)

Nilai B = (c and 16711680) / 65280 ……….. (3.3)

Dimana c adalah nilai pixel citra

a. Nilai pixel 1 adalah 111100001111000011111111 (24 bit).

Nilai R dihitung dengan persamaan (3.1) yaitu nilai pixel modulo bilangan 256 (100000000) sebagai berikut:

Nilai komponen R dengan rumus = nilai pixel A mod 100000000 Nilai R = 111100001111000011111111 mod 100000000

= 11111111 dalam biner = 255 dalam desimal

Nilai komponen G dihitung dengan persamaan (3.2):

Nilai G = (111100001111000011111111 and 1111111100000000)/ 100000000 = 11110000 = 240

Nilai komponen B dihitung dengan persamaan (3.3):

Nilai B = (111100001111000011111111 and 111111110000000000000000)/ 10000000000000000

= 11110000 = 240

Sehingga diperoleh nilai pixel 11111111 11110000 11110000: R = 11111111 = 255, G = 11110000 = 240, B = 11110000 = 240

b. Nilai pixel 2 adalah 100000011110000111110000 (24 bit). Nilai komponen R dengan rumus = nilai pixel A mod 100000000 Nilai R = 100000011110000111110000 mod 100000000

(46)

Nilai G = (100000011110000111110000 and 1111111100000000)/ 100000000

= 10000001 = 129

Nilai B= (100000011110000111110000 and

111111110000000000000000) / 10000000000000000

= 00000001 = 1

Sehingga diperoleh nilai pixel 11110000 11110000 11110000: R = 11100001 = 225, G = 10000001 = 129, B = 00000001 = 1

c. Nilai pixel 3 adalah 111100001111000011111111 (24 bit). Nilai komponen R dengan rumus = nilai pixel A mod 100000000 Nilai R = 111100001111000011111111 mod 100000000

= 11110000 dalam biner = 240 dalam desimal

Nilai G = (111100001111000011111111 and 1111111100000000)/ 100000000

= 11110000 = 240

Nilai B= (111100001111000011111111 and 111111110000000000000000) /

10000000000000000

= 00000001 = 1

Sehingga diperoleh nilai pixel 11110000 11110000 11110000: R = 11100001 = 240, G = 11110000 = 240, B = 00000001 = 1

d. Nilai pixel 4 adalah 101110011110000111110000 (24 bit). Nilai komponen R dengan rumus = nilai pixel A mod 100000000 Nilai R = 101110011110000111110000 mod 100000000

= 11100001 dalam biner = 225 dalam desimal

Nilai G = (101110011110000111110000 and 1111111100000000)/ 100000000

= 10111001 = 185

Nilai B= (101110011110000111110000 and 111111110000000000000000) /

10000000000000000

= 00000001 = 1

(47)

e. Nilai pixel 5 adalah 111100001111000011111111

Nilai komponen R dengan rumus = nilai pixel A mod 100000000 Nilai R = 111100001111000011111111 mod 100000000

= 11110000 dalam biner = 240 dalam desimal

Nilai G = (111100001111000011111111 and 1111111100000000)/ 100000000

= 11110000 = 240

Nilai B= (111100001111000011111111 and 111111110000000000000000) /

10000000000000000

= 00000001 = 1

Sehingga diperoleh nilai pixel 11110000 11110000 11111111: R = 11110000 = 240, G = 11110000 = 240, B = 00000001 = 1

f. Nilai pixel 6 adalah 100000011110000111110000

Nilai komponen R dengan rumus = nilai pixel A mod 100000000 Nilai R = 100000011110000111110000 mod 100000000

= 11100001 dalam biner = 225 dalam desimal

Nilai G = (100000011110000111110000 and 1111111100000000)/ 100000000

= 10000001= 129

Nilai B= (100000011110000111110000 and 111111110000000000000000) /

10000000000000000

= 00000001 = 1

Sehingga diperoleh nilai pixel 11110000 11110000 11111111: R = 11100001 = 225, G = 10000001 = 129, B = 00000001 = 1

g. Nilai pixel 7 adalah 000100001111000011111111

Nilai komponen R dengan rumus = nilai pixel A mod 100000000 Nilai R = 000100001111000011111111 mod 100000000

= 10000111 dalam biner = 135 dalam desimal

Nilai G = (000100001111000011111111 and 1111111100000000)/ 100000000

= 10000111= 135

Nilai B= (000100001111000011111111 and 111111110000000000000000) /

10000000000000000

(48)

Sehingga diperoleh nilai pixel 10000111 10000111 00000001: R = 10000111 = 135, G = 10000111 = 135, B = 00000001 = 1

h. Nilai pixel 8 adalah 100000011110000111110111

Nilai komponen R dengan rumus = nilai pixel A mod 100000000 Nilai R = 100000011110000111110111 mod 100000000

= 11100001 dalam biner = 225 dalam desimal

Nilai G = (100000011110000111110111 and 1111111100000000)/ 100000000

= 10000001 = 129

Nilai B= (100000011110000111110111 and 111111110000000000000000) /

10000000000000000

= 00000001 = 1

Sehingga diperoleh nilai pixel 10000111 10000111 00000001: R = 11100001 = 225, G = 10000001= 129, B = 00000001 = 1

i. Nilai pixel 9 adalah 101110111111000011111100

Nilai komponen R dengan rumus = nilai pixel A mod 100000000 Nilai R = 101110111111000011111100 mod 100000000

= 11110000 dalam biner = 225 dalam desimal

Nilai G = (101110111111000011111100 and 1111111100000000)/ 100000000

= 10111011 = 187

Nilai B= (101110111111000011111100 and 111111110000000000000000) /

10000000000000000

= 00000001 = 1

Sehingga diperoleh nilai pixel 10000111 10000111 00000001: R = 11110000 = 225, G = 10111011 = 187, B = 00000001 = 1

(49)

255,240,240 225,129,1 240,240,1

225,185,1 240,240,1 225,129,1

135,135,1 225,129,1 225,187,1

Gambar 3.4 Matriks Nilai RGB Citra Bunga 9 Pixel

Selanjutnya nilai RGB per Pixel pada Gambar 3.4 di atas di konversi ke nilai grayscale dengan cara mencari nilai rata-rata per pixel.

f0 (x,y) = ………..………

(3.4)

di mana: adalah nilai komponen red fG adalah nilai komponen green fB adalah nilai komponen blue

Nilai grayscale dihitung dengan menggunakan persamaan (3.4) sebagai berikut: Piksel 1 = (255,240,240) = (255+240+240)/3 = 245

Piksel 2 = (225,129,1) = (225+129+1)/3 = 118.3

Piksel 3 = (240,240,1) = (240+240+1)/3 = 160.3

Piksel 4 = (225,185,1) = (225+185+1)/3 = 137

Piksel 5 = ((240,240,1) = (240+240+1)/3 = 160.3

Piksel 6 = (225,129,1) = (225+129+1)/3 = 118.3

Piksel 7 = (135,135,1) = (255+240+240)/3 = 90.3

Piksel 8 = (225,129,1) = (225+129+1)/3 = 118.3

Piksel 9 = (255,187,1) = (255+240+240)/3 = 147.6

Selanjutnya nilai grayscale semua pixel pada citra bunga 9 pixel dimasukkan ke dalam matriks nilai grayscale seperti pada Gambar 3.5.

245 118 160

137 160 118

90 118 147

(50)

Nilai grayscale matriks citra pada gambar diatas diubah menjadi nilai threshold dengan nilai ambang. Nilai ambang yang digunakan diperoleh dengan rumus:

T= ………

(3.5)

Nilai threshold untuk matriks citra pada Gambar 3.5 di atas dihitung dengan menggunakan persamaan (3.5) sebagai berikut:

T= = 167.5 = 168

Nilai ambang 168 dapat digunakan jika persentase nilai pixel > 168 adalah > 50 %, jika persentase nilai pixel > 168 adalah < 50 %, maka digunakan rumus:

T= = 255/2 = 127.5 = 128 ………

(3.6)

Dari Gambar 3.4 di atas dapat diperoleh persentase nilai pixel diatas 168 adalah: 1/9 x 100 % = 11 %, maka digunakan nilai ambang pada persamaan (3.6).

Pixel 1 = 245, P1 > 128 maka P1= 1. Pixel 2 = 118, P2 < 128 maka P2= 0. Pixel 3 = 160, P3 > 128 maka P3= 1. Pixel 4 = 137, P4 > 128 maka P4= 1. Pixel 5 = 160, P5 > 128 maka P5= 1. Pixel 6 = 118, P6 < 128 maka P6= 0. Pixel 7 = 90, P7 < 128 maka P7= 0. Pixel 8 = 118, P8 < 128 maka P8= 0. Pixel 9 = 147, P9 > 128 maka P9= 1.

Selanjutnya nilai threshold semua pixel pada citra bunga 9 pixel dimasukkan ke dalam matriks citra biner seperti pada Gambar 3.6.

1 0 1

1 1 0

(51)

Gambar 3.6 Matriks Citra Biner 9 Pixel

3.1.3 Algoritma Zhang Suen

Dalam metode zhang-suen, pengenalan pola dilakukan dengan cara mengeliminasi setiap pixel citra biner yang termasuk ke dalam kategori contour point. Contour point adalah penghapusan pixel dimana jika nilai biner pixel-nya adalah 1 (pixel foreground), maka akan diubah menjadi 0 (pixel background). Adapun syarat penghapusan adalah:

5. Jumlah pixel tetangga yang bernilai 1, ≥ 2 dan ≤ 6 atau (2≤N(P1) ≤ 6) 6. Jumlah perpindahan nilai pixel dari 0 ke 1 = 1

7. Perkalian Pixel2Pixel4Pixel6 = 0 ( P2*P4*P6=0) 8. Perkalian Pixel4 Pixel6 Pixel8 = 0 ( P4*P6*P8=0)

Dari matriks citra biner seperti pada Gambar 3.6 dilakukan penelusuran dengan

memberi label penanda dimana P5 adalah pixel yang diuji adalah seperti pada Gambar 3.7.

1 0 1 P1 P2 P3

1 1 0 P4 P5 P6

0 0 1 P7 P8 P9

Gambar 3.7 Matriks Citra Awal 9 Pixel

Melakukan pengujian syarat metode Zhang-Suen adalah sebagai berikut:

1. N (P1) = 4, maka 2 ≤N(P1) ≤6 = true 2. S (P1) = 3, maka S(P1) = 1 = false 3. P2*P4*P6=0 = 0*1*1 = 0 = true 4. P4*P6*P8= 1*0*0 = 0 = true

(52)

Berikut sebagai contoh diberikan piksel citra 3 x 3 dari blok citra selanjutnya

dari Gambar 3.1 yang akan diuji adalah seperti pada Gambar 3.8:

0 0 1

0 1 1

0 0 0

Gambar 3.8 Matriks Citra

1. N (P1) = 2, maka 2 ≤N(P1) ≤6 = true 2. S (P1) = 1, maka S(P1) = 1 = true 3. P2*P4*P6=0 = 0*1*1 = 0 = true 4. P4*P6*P8= 1*0*0 = 0 = true

Dari hasil penelusuran, dapat dilihat 4 hasil pengujian semua bernilai true yang berarti nilai pixel yang diuji akan dihapus dan menghasilkan matrik citra yang baru seperti pada Gambar 3.9.

0 0 1

0 0 1

0 0 0

Gambar 3.9 Matriks Citra Akhir

3.2 Perancangan Sistem

Berdasarkan analisa yang penulis lakukan terhadap metode zhang-suen dalam melakukan thinning pada sebuah citra digital, penulis melakukan perancangan terhadap perangkat lunak yang mana tahapannya terbagi menjadi lima tahapan yaitu:

(53)

2. Konversi nilai Pixel ke nilai RGB 3. Konversi Nilai RGB ke Nilai Grayscale 4. Proses Thresholding

5. Proses Thinning

Dalam perancangan perangkat lunak ini, tahap pertama yang penulis lakukan

adalah merancang proses kerja dari perangkat lunak ini. Adapun alat bantu

perancangan proses yang penulis gunakan adalah sebuah bagan alir (flowchart). Proses kerja sistem dimulai dari proses penginputan citra digital yang akan dilakukan

proses thinning.

Sistem akan membaca setiap nilai pixel dari citra untuk menghitung nilai RGB, nilai grayscale serta pembentukan matriks citra biner dari proses threshold. Untuk setiap posisi pixel, sistem akan melakukan pengecekan apakah pixel tersebut termasuk ke dalam kategori contour point atau tidak. Jika pixel termasuk ke dalam kategori contour point, sistem akan melakukan penghapusan terhadap pixel tersebut. Proses penghapusan ini dilakukan dengan cara mengubah nilai pixel menjadi warna putih (255). Setelah seluruh pixel yang termasuk ke dalam kategori contour point dihapus, maka sistem akan menampilkan hasil proses thinning terhadap citra digital.

3.2.1 Flowchart Thinning Image

(54)

Input citra digital Start

Baca nilai setiap pixel

Hitung nilai RGB setiap pixel

Hitung nilai Grayscale setiap pixel

Hitung nilai threshold setiap pixel

Buat Matriks Citra Biner 3x3 (n)

Cek kategori contour pointpixel

Yes

Pixel termasuk kategori

Contour point?

Hapus pixel

n=n-1

No

n=0 ?

No

Yes

Tampilkan hasil thinning

(55)

Gambar 3.10 Flowchart Proses Thinning

3.2.2 Perancangan Antar Muka Program

Setelah melakukan perancangan terhadap proses kerja dari perangkat lunak ini,

penulis melakukan perancangan terhadap antar muka yang akan digunakan sebagai

media interaksi antara pengguna dan sistem yang dirancang. Perancangan antar muka

perangkat lunak ini terdiri dari:

1. Rancangan Menu Utama

Rancangan Menu utama berfungsi untuk menampilkan judul skripsi serta menu

pendukung perangkat lunak image thinning antara lain Image Thinning, Help serta About. Rancangan Menu Utama dapat dilihat pada Gambar 3.11.

Image Thining Help About Quit

Gambar 3.11 Menu Utama

2. Rancangan Image Thinning

(56)

Perangkat Lunak Image Thinning Dengan Metode Zhang-suen

Gambar 3.12 Rancangan Image Thinning

3. Rancangan About

Rancangan About berfungsi untuk menampilkan sekilas informasi mengenai perangkat lunak. Rancangan About seperti pada Gambar 3.13.

(57)

Gambar 3.13 Rancangan About

4. Rancangan Help

Rancangan Help berfungsi untuk menampilkan sekilas informasi mengenai perangkat lunak. Rancangan Help seperti pada Gambar 3.14.

Tata Cara Pengoperasian Sistem

X Help

(58)

BAB 4

IMPLEMENTASI DAN PENGUJIAN

4.1. Implementasi

Setelah melalui tahap perancangan, tahan selanjutnya untuk mengembangkan suatu

perangkat lunak adalah tahapan implementasi. Setelah melakukan implementasi

terhadap rancangan yang diperoleh sebelumnya ke dalam bahasa pemrograman,

penulis memperoleh hasil berupa sebuah perangkat lunak image thinning dengan metode Zhang Suen.

Hasil dari implementasi perangkat lunak Image Thinning terdiri dari tampilan menu Utama, Image Thinning, Help dan About adalah sebagai berikut:

4.1.1 Tampilan Menu Utama

Tampilan Menu Utama merupakan tampilan yang pertama kali pada saat sistem

dijalankan. Tampilan ini berfungsi sebagai tempat menu-menu yang mendukung

perangkat lunak Image Thinning dengan metode Zhang-Suen. Tampilan menu Utama

(59)

Gambar 4.1 Tampilan Form Utama

4.1.2 Tampilan Image Thinning

Tampilan Image Thinning adalah program yang melakukan thinning (perampingan) terhadap citra digital. Pada tampilan ini terdapat dua kotak gambar yang berfungsi

(60)

Gambar 4.2 Image Thinning

Keterangan Gambar:

Dibawah tampilan kotak gambar terdapat tombol-tombol untuk melakukan proses

thinning sebuah citra antara lain:

a. Tombol Open File berfungsi untuk membaca file citra digital

b. Tombol Process berfungsi untuk melakukan thinning citra.

c. Tombol Clear berfungsi untuk membersihkan tampilan pada kotak gambar

d. Tombol Save berfungsi menyimpan hasil thinning citra

e. Tombol Exit untuk menutup tampilan thinning

Untuk membuka file citra pilih tombol Open File dan akan muncul kotak dialog

(dialog box) seperti pada Gambar 4.3.

Gambar 4.3 Kotak Dialog Open File

Selanjutnya pilih salah satu file citra pada kotak dialog untuk menampilkannya pada

(61)

Gambar 4.4 Tampilan File Citra

Keterangan:

Setelah file citra dibuka dan ditampilkan pada kotak citra, maka akan tampil

properties dari file citra antara lain: Nama file : Nama file citra

Path : Alamat file citra

Ukuran file : Ukuran (size)

(62)

Gambar 4.5 Tampilan Hasil Thinning File Citra

Setelah proses thinning, maka untuk menyimpan hasilnya dalam bentuk file pilih

tombol Save seperti pada Gambar 4.6.

Gambar 4.6 Kotak Dialog Save File

Pada kotak dialog Save file, isikan nama file yang baru dan pilih tombol Save untuk

(63)

Gambar 4.7 Tampilan Hasil Penyimpanan

Keterangan:

Setelah file citra hasil disimpan dan ditampilkan pada kotak citra hasil thinning, maka

akan tampil properties dari file citra hasil penyimpanan antara lain:

Nama file : Nama file citra hasil thinning

Path : Alamat file citra hasil thinning

Ukuran file : Ukuran (size) sesudah thinning

4.1.3 Tampilan About

Tampilan About merupakan tampilan yang berfungsi untuk menampilkan sekilas informasi mengenai perancang perangkat lunak ini. Adapun tampilan About seperti ditunjukkan pada Gambar 4.8.

Gambar 4.8 Tampilan About

4.1.4 Tampilan Help

(64)

Gambar 4.9 Tampilan Help

4.2 Pengujian Sistem

Setelah mendapatkan hasil tampilan perangkat lunak, selanjutnya dilakukan pengujian

terhadap sistem tersebut. Adapun pengujian sistem yang penulis lakukan adalah terdiri

dari:

a. Pengujian Proses Thinning

Pengujian proses thinning adalah melakukan proses thinning terhadap file citra digital yang berformat Bmp dan Jpg yang memiliki warna latar belakang (background color) dan tanpa warna latar belakang dan menghitung ukuran file sebelum dan sesudah

proses thinning.

b. Pengujian Tampilan Hasil Proses Thinning

Pengujian Tampilan Hasil Proses Thinning adalah menampilkan hasil proses thinning terhadap file citra digital yang berformat Bmp dan Jpg yang memiliki warna latar

Gambar

Gambar 2.5 Citra Biner
Gambar 2.6 Citra Grayscale 4x4 Pixel
Gambar 2.8 Piksel 8 Tetangga
Gambar 2.9 Citra Akar
+7

Referensi

Dokumen terkait

Berdasarkan penjelasan di atas maka peneliti tertarik untuk melakukan penelitian yang berjudul “Pengaruh Growth Opportunities dan Profitability terhadap Konservatisme

Hasil pengujian hipotesis kedua berdasarkan rumusan masalah kedua dalam penelitian ini yaitu pengaruh tidak langsung Tingkat Kesehatan Perbankan dengan menggunakan variabel Risk

(GCG) DAN RASIO KEUANGAN TERHADAP PROFITABILITAS BANK SYARIAH (Studi Kasus Pada Bank Umum Syariah di Indonesia Periode 2007-2012), adalah hasil tulisan saya sendirii. Dengan ini

Kejadian tersebut di atas diterima oleh Sultan Bintara dengan kemurkaannya, kemudian lewat patih dikeluarkanlah Jaka Tingkir dari segala ikatan Keraton

Menurut Scott (2009) alasan apapun yang dapat digunakan manajer dalam memilih suatu kebijakan akuntansi dari sekumpulan akuntansi agar dapat meraih tujuannya

Berdasarkan gambar 2.1. dapat dijelaskan bahwa dalam mengukur kinerja koperasi khususnya unit simpan pinjam berpedoman pada surat keputusan menteri koperasi dan UKM

[r]

Untuk memperkuat tingkat keamanan, sebaiknya digunakan bilangan prima p dan q yang besar, oleh Stinson (2006) dianjutran sebesar &gt;80 digit, sehingga pihak