PERANCANGAN DAN PEMBUATAN APLIKASI SEGMENTASI GAMBAR DENGAN MENGGUNAKAN METODE MORPHOLOGICAL WATERSHED
Oleh: Rudy Adipranata Andreas Handojo Ivan Prayogo Oviliani Yenty Yuliana
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI UNIVERSITAS KRISTEN PETRA SURABAYA 2005
LAPORAN PENELITIAN NO: 13/Pen/Informatika/I/2005
PERANCANGAN DAN PEMBUATAN APLIKASI SEGMENTASI GAMBAR DENGAN MENGGUNAKAN METODE MORPHOLOGICAL WATERSHED
Oleh: Rudy Adipranata Andreas Handojo Ivan Prayogo Oviliani Yenty Yuliana
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI UNIVERSITAS KRISTEN PETRA SURABAYA 2005
LEMBAR IDENTITAS DAN PENGESAHAN LAPORAN HASIL PENELITIAN
1. a. Judul Penelitian
b. Nomor Penelitian c. Jalur Penelitian 2. Ketua Peneliti a. Nama lengkap dan Gelar b. Jenis Kelamin c. Pangkat/Golongan/NIP d. Bidang Ilmu yang diteliti e. Jabatan Akademik f. Fakultas/Jurusan g. Universitas 3. Anggota Tim Peneliti (I) a. Nama lengkap dan Gelar b. Jenis Kelamin c. Pangkat/Golongan/NIP d. Bidang Ilmu yang diteliti e. Jabatan Akademik f. Fakultas/Jurusan g. Universitas Anggota Tim Peneliti (II) a. Nama lengkap dan Gelar b. Jenis Kelamin c. Pangkat/Golongan/NIP d. Bidang Ilmu yang diteliti e. Jabatan Akademik f. Fakultas/Jurusan g. Universitas Anggota Tim Peneliti (III) a. Nama lengkap dan Gelar b. Jenis Kelamin c. Pangkat/Golongan/NIP d. Bidang Ilmu yang diteliti e. Jabatan Akademik f. Fakultas/Jurusan g. Universitas
: PERANCANGAN DAN PEMBUATAN APLIKASI SEGMENTASI GAMBAR DENGAN MENGGUNAKAN METODE MORPHOLOGICAL WATERSHED : 13/Pen/Informatika/I/2005 : I/ II/ III/ IV : : : : : :
Rudy Adipranata, ST., M.Eng Laki-laki Asisten Ahli/ IIIC/ 99015 Teknologi Perangkat Lunak Asisten Ahli Fakultas Teknologi Industri/ Teknik Informatika : Universitas Kristen Petra : : Andreas Handojo, ST. : Laki-laki : Asisten Ahli/ IIIC/ 00016 : Teknologi Perangkat Lunak : Asisten Ahli : Fakultas Teknologi Industri/ Teknik Industri : Universitas Kristen Petra : : Ivan Prayogo : Laki-laki : : Teknologi Perangkat Lunak : : Fakultas Teknologi Industri/ Teknik Informatika : Universitas Kristen Petra : : Oviliani Yenty Yuliana, ST., MS-CIS : Perempuan : Pembina/ IVA/ 94014 : Teknologi Perangkat Lunak : Lektor : Fakultas Ekonomi/ Program Studi Akuntansi : Universitas Kristen Petra iii
4. Lokasi Penelitian : 5. Kerjasama dengan Instansi lain Nama Instansi : Alamat : 6. Tanggal Penelitian : 7. Biaya :
Surabaya Januari 2005 s/d Juni 2005 Surabaya, 30 Juni 2005
Mengetahui, Ketua Jurusan/ Ka. Unit
Ketua Peneliti
Djoni Haryadi Setiabudi, M.Eng NIP. 85-009
Rudy Adipranata, M.Eng NIP. 99-015
Menyetujui, Dekan Fakultas Teknologi Industri
Oegik Soegihardjo, M.Sc.,MA. NIP. 87-007
iv
ABSTRAK Saat ini, pengolahan gambar dapat lebih mudah dilakukan dengan menggunakan pengolahan gambar digital. Salah satu penyebabnya adalah adanya segmentasi pada gambar digital. Segmentasi dapat dikatakan memisahkan objekobjek yang ada pada gambar, sehingga pengolahan gambar digital dapat dilakukan pada masing-masing objek. Morphological watershed adalah salah satu metode dalam segmentasi. Morphological watershed memproses gambar berdasarkan tingkat warna abu-abunya. Gambar dibentuk seakan-akan menjadi topografi dengan warna paling gelap menjadi dasarnya. Sebelum segmentasi dilakukan dibutuhkan juga pre-processing. Ada banyak macam pre-processing yang dapat dilakukan dan objek yang dihasilkan oleh morphological watershed untuk sebuah gambar berbeda-beda berdasarkan pre-processing yang dilakukan. Kata kunci: Segmentasi, morphological watershed, morphological processing, pengolahan gambar digital.
v
ABSTRACT In this time, image processing can be easier by using digital image processing. One of its cause is segmentation existence of digital image. Segmentation can be told is to separate object from an image, so that the digital image processing can be done at each object. Morphological Watershed is one of method in segmentation. Morphological Watershed process image based from its gray-level. Image will formed become topography with darkest colour become its floor. Before using segmentation, pre-processing is required. There are many kinds of pre-processing which can be done and the object resulted by morphological watershed for an image are different each other based on the preprocessing. Keywords: Segmentation, morphological watershed, morphological processing, digital image processing.
vi
KATA PENGANTAR Penulis mengucapkan syukur kepada Tuhan Yang Maha Esa atas terselesaikannya penelitian ini. Penulis sadar bahwa hasil penelitian ini masih jauh dari sempurna, karena itu penulis mengharapkan saran dan kritik yang membangun dari berbagai pihak demi perbaikan dari penelitian ini. Penulis berharap semoga penelitian ini dapat memberikan kontribusi bagi perkembangan bidang ilmu sistem informasi dan teknologi informasi pada umumnya. Akhir kata, penulis mengucapkan terima kasih kepada semua pihak yang tidak dapat disebutkan satu persatu yang telah membantu terselesaikannya penelitian ini Surabaya, Juni 2005 Penyusun
vii
DAFTAR ISI LEMBAR IDENTITAS DAN PENGESAHAN.................................................... iii ABSTRAK .............................................................................................................. v ABSTRACT........................................................................................................... vi KATA PENGANTAR .......................................................................................... vii DAFTAR ISI........................................................................................................ viii DAFTAR GAMBAR .............................................................................................. x BAB 1. PENDAHULUAN ..................................................................................... 1 1.1
Latar Belakang ........................................................................................ 1
1.2
Permasalahan .......................................................................................... 1
1.3
Tujuan Penelitian .................................................................................... 1
1.4
Manfaat Penelitian .................................................................................. 2
1.5
Ruang Lingkup Pembahasan................................................................... 2
1.6
Sistematika Penyusunan Laporan ........................................................... 2
BAB 2. TINJAUAN PUSTAKA ............................................................................ 4 2.1
Digital Image Processing........................................................................ 4
2.2
Gray Level............................................................................................... 5
2.3
Grayscaling ............................................................................................. 6
2.4
Histogram dan Histogram Equalization ................................................. 6
2.5
Thresholding ......................................................................................... 10
2.6
Morphological Processing .................................................................... 11
2.6.1
Dilation ......................................................................................... 11
2.6.2
Erosion .......................................................................................... 13
2.6.3
Opening ......................................................................................... 13 viii
2.6.4
Closing .......................................................................................... 14
2.6.5
Morphological Gradient ............................................................... 16
2.7
Segmentasi Gambar .............................................................................. 17
2.8
Morphological Watershed..................................................................... 18
2.8.1
Pembentukan Dam ........................................................................ 18
2.8.2
Algoritma Morphological Watershed ........................................... 20
2.9
Pengenalan Objek Sederhana................................................................ 21
2.9.1
Signature ....................................................................................... 21
2.9.2
Slope Histogram............................................................................ 22
BAB 3. METODE PENELITIAN ........................................................................ 24 3.1
Metodologi Penelitian ........................................................................... 24
3.2
Perencanaan Software ........................................................................... 24
3.2.2
Pre-processing pertama ................................................................ 26
3.2.3
Pre-processing kedua.................................................................... 30
3.2.4
Proses Segmentasi......................................................................... 32
3.2.5
Perencanaan User Interface .......................................................... 33
3.2.6
Proses Pengenalan Objek .............................................................. 35
BAB 4. HASIL PENELITIAN DAN PEMBAHASAN ....................................... 38 4.1
Implementasi Software.......................................................................... 38
4.2
Pengujian Software ............................................................................... 38
BAB 5. KESIMPULAN DAN SARAN ............................................................... 55 5.1
Kesimpulan ........................................................................................... 55
5.2
Saran...................................................................................................... 56
DAFTAR PUSTAKA ........................................................................................... 57
ix
DAFTAR GAMBAR Gambar 2.1 Histogram dari 4 Jenis Gambar yang Berbeda.................................... 7 Gambar 2.2 Histogram Equalization dari 4 Jenis Gambar yang Berbeda .............. 9 Gambar 2.3 Dilation A oleh B .............................................................................. 12 Gambar 2.4 Salah Satu Aplikasi Dilation yaitu Memperjelas Teks yang Rusak.. 12 Gambar 2.5 Erosion A oleh B............................................................................... 13 Gambar 2.6 Opening A oleh B.............................................................................. 14 Gambar 2.7 Closing A oleh B ............................................................................... 15 Gambar 2.8 Contoh Lain Opening dan Closing.................................................... 15 Gambar 2.9 Opening dan Closing Gambar Sidik Jadi oleh Matriks B ................. 16 Gambar 2.10 Gambar Sebelah Kanan adalah Hasil Morphological Gradient dari Gambar Jeruk Sebelah Kiri. .......................................................................... 16 Gambar 2.11 Proses Penganalisaan Gambar......................................................... 17 Gambar 2.12 Konsep Dasar Morphological Watershed ....................................... 19 Gambar 2.13 Pembuatan Dam .............................................................................. 19 Gambar 3.1 Diagram Alir Aplikasi Secara Garis Besar ....................................... 25 Gambar 3.2 Diagram Alir Pre-Processing Pertama ............................................. 26 Gambar 3.3 Diagram Alir Proses Grayscaling ..................................................... 27 Gambar 3.4 Diagram Alir Proses Histogram Equalization .................................. 28 Gambar 3.5 Diagram Alir Proses Thresholding.................................................... 29 Gambar 3.6 Diagram Alir Proses Invert ............................................................... 29 Gambar 3.7 Diagram Alir Proses Erosion ............................................................ 30 Gambar 3.8 Diagram Alir Proses Dilation............................................................ 30 Gambar 3.9 Diagram Alir Proses Morphological Gradient.................................. 31 x
Gambar 3.10 Diagram Alir Proses Minima Removal............................................ 32 Gambar 3.11 Diagram Proses Segmentasi / Watershed........................................ 33 Gambar 3.12 Perencanaan User Interface ............................................................ 34 Gambar 3.13 Diagram Alir Proses Signature ....................................................... 36 Gambar 3.14 Diagram Alir Pembuatan Slope Histogram..................................... 37 Gambar 4.1 Gambar Hasil Pengujian Terhadap Pre-processing 1 ....................... 39 Gambar 4.2 Gambar Hasil Pengujian Terhadap Pre-processing 2 ....................... 40 Gambar 4.3 Hasil Pengujian Terhadap Gambar Bunga ........................................ 41 Gambar 4.4 Hasil Pengujian Terhadap Gambar Sanrio ........................................ 44 Gambar 4.5 Hasil Pengujian Terhadap Gambar Sederhana.................................. 47 Gambar 4.6 Data Sumber Objek Sederhana ......................................................... 51 Gambar 4.7 Gambar yang akan Diuji Pengenalan Objek ..................................... 53 Gambar 4.8 Hasil Pengenalan Dari Objek Hasil Segmentasi Dari Gambar 4.7 ... 54
xi
BAB 1. PENDAHULUAN 1.1 Latar Belakang Penggunaan gambar digital sudah mulai menggeser penggunaan gambar analog. Banyak orang sudah mulai menyimpan gambar-gambar ke dalam bentuk digital. Hal ini disebabkan karena gambar digital dapat disimpan dalam jangka waktu yang lama, tidak mudah rusak dan dapat diperbanyak sesuai keinginan dengan mudah, cukup dengan meng-copy gambar itu. Selain itu gambar digital dapat dilihat dahulu sebelum dicetak dan dapat diubah sesuai keinginan misalnya untuk membuat gambar hasil dari gabungan dengan gambar lain. Untuk kebutuhan ini dibutuhkan aplikasi yang dapat mengolah gambar. Aplikasi tersebut sudah banyak tersedia di pasar. Banyak sekali fungsi-fungsi yang disediakan untuk mengolah gambar antara lain : fungsi segmentasi gambar, fungsi coloring, fungsi pengaturan brightness dan contrast, fungsi transformation seperti rotating, scaling dan lain-lain. Salah satu fungsi yang penting adalah fungsi untuk mensegmentasi gambar, karena dengan segmentasi gambar, pengolahan atau pemanipulasian dapat dilakukan lebih mudah dan lebih cepat. Segmentasi gambar membagi sebuah gambar menjadi objek-objek berdasarkan karakteristik tertentu dan kemudian masing-masing objek dapat diolah sendiri-sendiri. Hal ini tentunya mempermudah dan mempercepat proses pengolahan gambar.
1.2 Permasalahan Permasalahan yang dihadapi dan diharapkan dapat diselesaikan melalui penelitian ini adalah • Bagaimana menghasilkan objek-objek hasil segmentasi yang tepat dan sesuai dengan bentuk objek aslinya. • Bagaimana menjalankan proses pengolahan gambar dengan cepat, mengurangi scan terhadap tiap titik pada gambar yang dilakukan berulang-ulang.
1.3 Tujuan Penelitian Tujuan
dari
penelitian
ini
1
adalah
membuat
program
yang
2
mengimplementasikan mensegmentasikan
metode
sebuah
Morphological
gambar
sehingga
lebih
Watershed
untuk
memudahkan
untuk
memanipulasi dan mengolah gambar.
1.4 Manfaat Penelitian Hasil penelitian ini diharapkan dapat bermanfaat bagi perkembangan sistem informasi serta memberikan aplikasi yang dapat digunakan oleh umum guna melakukan memanipulasi dan mengolah gambar.
1.5 Ruang Lingkup Pembahasan Dalam penelitian ini terdapat batasan, yaitu: • Pembuatan aplikasi yang hanya dapat mengimplementasikan segmentasi gamba. • Metode segmentasi yang digunakan adalah Morphological Watershed. • Gambar yang disegmentasi merupakan gambar yang tetap/tidak bergerak. • Format gambar yang digunakan hanya format yang umum dipakai saja yaitu: jpg, gif, dan bmp. • Pembuatan aplikasi program dengan Borland Delphi 7.0. • Dapat menghitung jumlah objek hasil dari segmentasi dan mengetahui seberapa lama proses segmentasi dilakukan. • Dapat mengenali objek-objek sederhana seperti persegi, persegi panjang, segitiga, elips, dan lingkaran. • Data sumber untuk pengenalan objek dapat ditambah, diubah dan dihapus, data dapat berupa objek dari hasil segmentasi yang dilakukan.
1.6 Sistematika Penyusunan Laporan Laporan penelitian ini secara keseluruhan terdiri dari lima bab, dimana secara garis besar masing-masing bab membahas hal-hal sebagai berikut: BAB 1
Pendahuluan:
berisi
latar
belakang,
permasalahan,
tujuan
penelitian, manfaat penelitian, ruang lingkup permasalahan, dan sistematika penyusunan laporan.
3
BAB 2
Tinjauan Pustaka: membahas tentang teori-teori dasar yang relevan dan metode yang digunakan untuk memecahkan persoalan yang dibahas pada penelitian ini.
BAB 3
Metode Penelitian: membahas tentang metode penelitian yang dilakukan serta perancangan aplikasi.
BAB 4
Hasil Penelitian dan Pembahasan: berisi tentang hasil dari penelitian, berupa aplikasi yang telah dikembangkan beserta dengan pengujian aplikasi tersebut.
BAB 5
Kesimpulan dan Saran: berisi kesimpulan yang mencakup beberapa hal penting pada hasil yang didapat dari penelitian dan saran-saran yang diajukan bagi penyempurnaannya.
BAB 2. TINJAUAN PUSTAKA Sebuah gambar dapat didefinisikan sebagai fungsi dua dimensi, f(x,y), di mana x dan y adalah koordinat ruang dan amplitudo dari f dapat disebut intensitas atau gray-level dari sebuah gambar pada titik yang terletak pada koordinat x dan y. Jika x, y, dan nilai amplitudo dari f adalah terbatas dan dapat ditentukan nilainya maka gambar tersebut adalah gambar digital. Gambar digital dibentuk dari beberapa elemen, yang tiap-tiap elemennya memiliki posisi dan nilai tertentu. Salah satu elemen yang paling sering digunakan adalah pixel. Pixel adalah titik yang berisi nilai tertentu yang membentuk sebuah gambar yang lokasinya ditentukan oleh kombinasi x dan y. Dalam komputer, ada 2 macam cara penyimpanan gambar dalam memori yaitu vector graphics, raster graphics dan kombinasi antara keduanya. Pada vector graphics, penyimpanan gambar 2 dimensi pada komputer dilakukan secara vektor yaitu penyimpanan posisi titik-titik yang jika dihubungkan membentuk garis dan garis-garis tersebut kemudian membentuk gambar. Pada raster graphics, penyimpanan gambar 2 dimensi pada komputer dilakukan secara apa adanya dalam bentuk array atau matriks yang berisi pixel-pixel, seringkali disebut sebagai bitmap.
2.1 Digital Image Processing Image processing adalah suatu metode yang digunakan untuk memproses atau memanipulasi gambar dalam bentuk 2 dimensi (Gonzalez, 2002). Image processing dapat juga dikatakan segala operasi untuk memperbaiki, menganalisa, atau mengubah suatu gambar. Konsep dasar pemrosesan suatu objek pada gambar menggunakan image processing diambil dari kemampuan indera penglihatan manusia yang selanjutnya dihubungkan dengan kemampuan otak manusia. Dalam sejarahnya, image processing telah diaplikasikan dalam berbagai bentuk, dengan tingkat kesuksesan cukup besar. Seperti berbagai cabang ilmu lainnya, image processing menyangkut pula berbagai gabungan cabang-cabang ilmu, diantaranya adalah optik, elektronik, matematika, fotografi, dan teknologi komputer.
4
5
Pada
umumnya,
objektifitas
dari
image
processing
adalah
mentransformasikan atau menganalisis suatu gambar sehingga informasi baru tentang gambar dibuat lebih jelas. Ada empat klasifikasi dasar dalam image processing yaitu point, area, geometric, dan frame. a. Point memproses nilai pixel suatu gambar berdasarkan nilai atau posisi dari pixel tersebut. Contoh dari proses point adalah adding, substracting, contrast stretching dan lainnya. b. Area memproses nilai pixel suatu gambar berdasarkan nilai pixel tersebut beserta nilai pixel sekelilingnya. Contoh dari proses area adalah convolution, blurring, sharpening, dan filtering. c. Geometric digunakan untuk mengubah posisi dari pixel. Contoh dari proses geometric adalah scaling, rotation, dan mirroring. d. Frame memproses nilai pixel suatu gambar berdasarkan operasi dari 2 buah gambar atau lebih. Contoh dari proses frame adalah addition, substraction, dan and/or. Selain itu masih ada 3 tipe image processing yaitu: a. Low-level process: proses-proses yang berhubungan dengan operasi primitif seperti image pre-processing untuk mengurangi noise, menambah kontras dan menajamkan gambar. Pada low-level process, input dan output-nya berupa gambar. b. Mid-level process: proses-proses yang berhubungan dengan tugas-tugas seperti segmentasi gambar (membagi gambar menjadi objek-objek), pengenalan (recognition) suatu objek individu. Pada mid-level process, input pada umumnya berupa gambar tetapi output-nya berupa atribut yang dihasilkan dari proses yang dilakukan gambar tersebut seperti garis, garis contour, dan objek-objek individu. c. High-level process: proses-proses yang berhubungan dengan hasil dari midlevel process.
2.2 Gray Level Gambar digital dapat diwakili oleh format warna RGB (Red-Green-Blue)
6
untuk setiap titiknya, di mana setiap komponen warna memiliki batasan sebesar 1 byte (Gonzalez, 2002). Jadi untuk masing-masing komponen R, G, dan B mempunyai variasi dari 0 sampai 255. Total variasi yang dapat dihasilkan untuk sistem dengan format warna RGB adalah 256 x 256 x 256 atau 16.777.216 jenis warna. Karena setiap komponen warna memiliki batasan sebesar 1 byte atau 8 bit, maka total untuk mempresentasikan warna RGB adalah 8+8+8 = 24 bit. Gray-level adalah tingkat warna abu-abu dari sebuah pixel, dapat juga dikatakan tingkat cahaya dari sebuah pixel. Maksudnya nilai yang terkandung dalam pixel menunjukan tingkat terangnya pixel tersebut dari hitam ke putih. Biasanya ditetapkan nilainya antara 0 hingga 255 (untuk 256-graylevel), dengan 0 adalah hitam dan 255 adalah putih. Karena hanya terbatas 1 byte saja maka untuk mempresentasikan nilai pixel cukup 8 bit saja. Grayscale adalah gambar yang memiliki gray-level sebagai nilai dari tiap pixel-nya.
2.3 Grayscaling Grayscaling adalah proses perubahan nilai pixel dari warna (RGB) menjadi gray-level (Gonzalez, 2002). Pada dasarnya proses ini dilakukan dengan meratakan nilai pixel dari 3 nilai RGB menjadi 1 nilai. Untuk memperoleh hasil yang lebih baik, nilai pixel tidak langsung dibagi menjadi 3 melainkan terdapat persentasi dari masing-masing nilai. Salah satu persentasi yang sering digunakan adalah 29,9% dari warna merah (Red), 58,7% dari warna hijau (Green), dan 11,4% dari warna biru (Blue). Nilai pixel didapat dari jumlah persentasi 3 nilai tersebut.
2.4 Histogram dan Histogram Equalization Histogram adalah grafik yang menunjukkan distribusi dari intensitas sebuah gambar (Gonzalez, 2002). Histogram dari sebuah gambar digital berupa sebuah fungsi h(rk ) = n k , dimana rk adalah nilai warna ke-k dan nk adalah jumlah pixel dalam gambar yang memiliki nilai tersebut. Pada gray-level, rk adalah tingkat gray-level ke-k. k=0, 1, 2, …, L-1. L adalah batas maksimum nilai. Normalisasi dari histogram adalah dengan membagi tiap nilai nk dengan total pixel dari gambar, p(rk)=nk/n. Jumlah total nilai ( p(rk) ) dari normalisasi
7
histogram adalah 1. Manipulasi dari histogram dapat digunakan secara efektif untuk image enhancement (peningkatan kualitas dari gambar). Selain itu juga berguna untuk aplikasi image processing lainnya seperti segmentasi, kompresi, dan lain-lain. Histogram juga mudah untuk dikalkulasikan dalam software. Hal-hal tersebut membuat histogram menjadi sebuah tool yang populer untuk real-time image processing.
Gambar 2.1 Histogram dari 4 Jenis Gambar yang Berbeda Gonzalez, R.C., Woods, R.E. Digital Image Processing Second Edition (New Jersey, Prentice Hall, 2002). p. 90 Pada Gambar 2.1. sebelah kiri terdapat sebuah gambar dengan 4 macam
8
karakteristik gray-level yang berbeda: gelap, terang, low-contrast, dan highcontrast. Di sebelah kanan adalah histogram yang berhubungan dengan gambar d sebelah kirinya. Bagian horisontal dari histogram adalah nilai gray-level, rk. Bagian vertikal dari histogram adalah nilai dari h(rk ) = n k atau p(rk)=nk/n bila
nilai dinormalisasikan. Pada gambar yang gelap, nilai-nilai dari histogram terkonsentrasi pada bagian rendah (gelap) dari gray-scale. Demikian pula pada gambar yang terang, nilai-nilai dari histogram terkonsentrasi pada bagian tinggi (terang) dari grayscale. Pada gambar dengan kontras yang rendah (low-contrast), nilai-nilai dari histogram menjadi sempit dan terkonsentrasi pada bagian tengah dari histogram. Pada gambar dengan kontras yang tinggi (high-contrast), nilai-nilai dari histogram relatif merata pada seluruh nilai gray-level, dengan beberapa garis vertikal saja yang jauh lebih tinggi dari garis vertikal yang lain. Gambar dengan histogram seperti ini memiliki detil gray-level yang baik. Ada 3 macam histogram processing : a. Histogram equalization b. Histogram matching (specification) c. Local enhancement Histogram equalization bertujuan untuk mengubah intensitas suatu gambar menjadi sebuah gambar dengan nilai histogram yang relatif sama di setiap levelnya. Nama lain histogram equalization adalah histogram linearization. k
nj
j =0
n
s k = T (rk ) = ∑
k
= ∑ p r (r j ) di mana 0 < rk < 1, k=0,1,2,...,L-1 j =0
Fungsi di atas menghasilkan sebuah nilai s untuk setiap nilai pixel r pada gambar aslinya. Histogram equalization memiliki hasil yang hampir sama dengan contrast stretching tetapi histogram equalization menawarkan kelebihan yaitu bekerja otomatis secara penuh, karena histogram equalization menetapkan fungsi transformasi untuk menghasilkan gambar baru dengan histogram yang uniform. Histogram matching (specification) hampir sama dengan histogram equalization, hanya saja pada histogram matching, dapat ditentukan sendiri bentuk dari histogram yang akan dihasilkan. Prosedur dalam menjalankan histogram matching yaitu :
9
Gambar 2.2 Histogram Equalization dari 4 Jenis Gambar yang Berbeda Gonzalez, R.C., Woods, R.E. Digital Image Processing Second Edition (New Jersey, Prentice Hall, 2002). p. 95
10
a. Nilai gray-level dari gambar yang asli di-equalize dengan k
nj
j =0
n
s = T (rk ) = ∑
di mana n=total jumlah pixel, nj=jumlah pixel pada gray-level j b. Tentukan fungsi density yang diinginkan z
z
0
i =0
v = G ( z ) = ∑ p z ( w) ≈ ∑
ni , n
pz adalah fungsi yang diinginkan untuk output c. Gunakan fungsi transformasi invers, z=G-1(s) pada gray-level dihasilkan pada langkah (a). Histogram equalization dan histogram matching dilakukan pada seluruh bagian dari gambar. Berbeda dengan local enhancement yang merupakan proses histogram equalization atau histogram matching yang dilakukan pada bagian/daerah kecil pada gambar.
2.5 Thresholding
Misal pada sebuah gambar, f(x,y) tersusun dari objek yang terang pada sebuah background yang gelap (Gonzalez, 2002). Gray-level milik objek dan milik background terkumpul menjadi 2 grup yang dominan. Salah satu cara untuk mengambil objek dari backgroundnya adalah dengan memilih sebuah nilai threshold T yang memisahkan grup yang satu dengan grup yang lain. Maka semua pixel yang memiliki nilai > T disebut titik objek, yang lain disebut titik background. Proses ini disebut thresholding. Sebuah gambar yang telah di threshold g(x,y) dapat didefinisikan: ⎧1 jika f ( x, y ) > T g ( x, y ) = ⎨ ⎩0 jika f ( x, y ) ≤ T Nilai T dapat ditentukan dengan banyak cara, salah satunya adalah melalui perhitungan dimana nilai rata-rata jumlah pixel yang memiliki nilai di bawah T sana dengan nilai rata-rata jumlah pixel yang memiliki nilai di atas T . Untuk perhitungan ini, nilai T yang didapat untuk gambar yang memiliki histogram yang telah ter-equalize adalah berkisar antara 127 dan 128. Nilai maksimum dari T
11
adalah nilai tertinggi dari sistem warna yang digunakan dan nilai minimum dari T adalah nilai terendah dari sistem warna yang digunakan. Untuk 256-graylevel maka nilai tertinggi T adalah 255 dan nilai terendahnya adalah 0. Jika T hanya tergantung pada f(x,y) maka disebut thresholding global. Jika T tergantung dari f(x,y) dan p(x,y) (properti lokal milik titik tersebut, misalnya rata-rata gray-level pada "tetangga" dari (x,y)) maka disebut thresholding local. Jika T tergantung dari koordinat spatial x dan y maka disebut thresholding dynamic atau adaptive.
2.6 Morphological Processing
Kata morphology menandakan cabang dari biologi yang berhubungan dengan bentuk dan struktur hewan dan tumbuhan (Gonzalez, 2002). Kata morphology di sini dihubungkan dengan konteks mathematical morphology yang berarti proses yang menggunakan matematika sebagai tool untuk mengambil komponen gambar yang berguna untuk menampilkan ulang dan deskripsi dari region shape (seperti boundaries, skeletons dan convex hull). Juga dapat digunakan sebagai preprocessing ataupun post processing seperti filtering, thinning. Morphological processing yang digunakan di sini adalah dilation, erosion, opening, closing, dan morphological gradient. 2.6.1
Dilation Dengan A dan B terletak pada Z2, dilation A oleh B, ditandai oleh A ⊕ B,
didefinisikan A ⊕ B = {x | ( Bˆ ) x ∩ A ≠ ∅}
Persamaan ini didapat dari reflection dari B pada titik origin dan kemudian digeser sebesar x. Dilation A oleh B adalah kumpulan dari semua pergantian x sehingga Bˆ dan A saling bertumpuk pada paling sedikit 1 elemen yang bukan 0 (nol).
12
(a) Elemen A (b) Elemen B (c) Dilation dari A oleh B (d) Elemen B yang baru (e) Dilation dari A oleh B yang baru
Gambar 2.3 Dilation A oleh B Gonzalez, R.C., Woods, R.E. Digital Image Processing Second Edition (New Jersey, Prentice Hall, 2002). p. 524
(a) Contoh teks dengan resolusi buruk, dengan karakter yang rusak (b) Elemen B (c) Dilation dari (a) oleh B. Segmen yang rusak tergabung Gambar 2.4 Salah Satu Aplikasi Dilation yaitu Memperjelas Teks yang Rusak Gonzalez, R.C., Woods, R.E. Digital Image Processing Second Edition (New Jersey, Prentice Hall, 2002). p. 525
13
2.6.2
Erosion Dengan A dan B terletak pada Z2, erosion A oleh B, ditandai oleh AӨB,
didefinisikan A Ө B = {x | ( B) x ⊆ A} Erosion A oleh B adalah kumpulan dari semua titik x di mana B ditranslasikan oleh x, termasuk di dalam A.
(a) (b) (c) (d) (e)
Elemen A Elemen B Erosion dari A oleh B (berwarna abu-abu) Elemen B yang baru Erosion dari A oleh B yang baru Gambar 2.5 Erosion A oleh B
Gonzalez, R.C., Woods, R.E. Digital Image Processing Second Edition (New Jersey, Prentice Hall, 2002). p. 526 2.6.3
Opening Seperti yang telah dijelaskan pada 2.6.1. dan 2.6.2. bahwa dilation
14
memperbesar gambar dan erosion memperkecilnya. Opening adalah proses erosion yang kemudian dilanjutkan dengan dilation. Maka opening dari A oleh B, yang ditandai oleh A◦B dapat didefinisikan :
A o B = ( A B) ⊕ B Opening digunakan untuk menghaluskan garis luar dari sebuah objek, menghancurkan isthmuses yang sempit dan menghilangkan penonjolan.
(a) (b) (c) (d)
Elemen B ”meluncur” pada bagian dalam garis batas dari A Elemen B Garis tebal adalah garis batas dari opening Opening lengkap (berwarna abu-abu) Gambar 2.6 Opening A oleh B
Gonzalez, R.C., Woods, R.E. Digital Image Processing Second Edition (New Jersey, Prentice Hall, 2002). p. 528 2.6.4
Closing Closing adalah kebalikan dari opening yaitu proses dilation yang
kemudian dilanjutkan dengan erosion. Maka closing dari A oleh B, yang ditandai oleh A·B dapat didefinisikan :
A • B = ( A ⊕ B) B Closing digunakan untuk menghaluskan garis luar sebuah objek tetapi kebalikan dari opening, closing menghilangkan lubang, celah, dan lain-lain
15
(a) Elemen B ”meluncur” pada bagian luar garis batas dari A (b) Garis tebal adalah garis batas dari closing (c) Closing lengkap (berwarna abu-abu) Gambar 2.7 Closing A oleh B Gonzalez, R.C., Woods, R.E. Digital Image Processing Second Edition (New Jersey, Prentice Hall, 2002). p. 529
Gambar 2.8 Contoh Lain Opening dan Closing Gonzalez, R.C., Woods, R.E. Digital Image Processing Second Edition (New Jersey, Prentice Hall, 2002). p. 530
16
(a) gambar banyak noise (b) matriks B (c) gambar yang sudah dierosion (d) Opening dari A (e) Dilation dari opening (f) Closing dari opening
Gambar 2.9 Opening dan Closing Gambar Sidik Jadi oleh Matriks B Gonzalez, R.C., Woods, R.E. Digital Image Processing Second Edition (New Jersey, Prentice Hall, 2002). p. 531 2.6.5
Morphological Gradient Morphological gradient merupakan salah satu aplikasi morphological
processing yang melibatkan dilation dan erosion seperti halnya opening dan closing. Morphological gradient adalah proses yang menghasilkan output berupa gambar yang didapat dari pengurangan hasil dilation gambar asli dengan hasil erosion gambar asli, sehingga dapat didefinisikan:
g = ( f ⊕ b) − ( f Ө b)
Gambar 2.10 Gambar Sebelah Kanan adalah Hasil Morphological Gradient dari Gambar Jeruk Sebelah Kiri.
17
2.7 Segmentasi Gambar
Segmentasi gambar adalah pemisahan objek yang satu dengan objek yang lain dalam suatu gambar (Ballerini). Ada 2 macam segmentasi, yaitu full segmentation dan partial segmentation. Full segmentation adalah pemisahan suatu object secara individu dari background dan diberi ID (label) pada tiap-tiap segmen. Partial segmentation adalah pemisahan sejumlah data dari background dimana data yang disimpan hanya data yang dipisahkan saja untuk mempercepat proses selanjutnya. Image analysis
Image Pre-processing, enhancement
image
Data
Binary Classification
operations
and
matching Morphological
operations
and
feature extraction
Segmentation "What are the objects to be analyzed?"
Gambar 2.11 Proses Penganalisaan Gambar Pada gambar di atas, sebuah gambar yang akan dianalisa dan diolah, sebelumnya dilakukan segmentasi gambar dahulu agar objek mana saja yang akan dianalisa dan diolah dapat diambil. Ada 3 tipe dari segmentasi yaitu: 1. classification-based: segmentasi berdasarkan kesamaan suatu ukuran dari nilai pixel. Salah satu cara paling mudah adalah thresholding. Thresholding ada 2 macam yaitu global dan lokal. Pada thresholding global, segmentasi berdasarkan pada sejenis histogram. Pada thresholding lokal, segmentasi
18
dilakukan berdasarkan posisi pada gambar, gambar dibagi menjadi bagianbagian yang saling melengkapi, jadi sifatnya dinamis. 2. edge-based: mencari garis yang ada pada gambar dan garis tersebut digunakan sebagai pembatas dari tiap segmen. 3. region-based: segmentasi dilakukan berdasarkan kumpulan pixel yang memiliki kesamaan (tekstur, warna atau tingkat warna abu-abu) dimulai dari suatu titik ke titik-titik lain yang ada disekitarnya.
2.8 Morphological Watershed
Morphological
Watershed
adalah
salah
satu
pendekatan
untuk
segmentasi (IDL, 1999). Konsep dari Morphological Watershed adalah menggambarkan sebuah gambar dalam bentuk 3 dimensi dengan menganggap tingkat warna abu-abu adalah sebagai ketinggiannya dan dianggap bahwa semakin ke arah warna putih semakin tinggi. Jadi lebih cocok kalau dikatakan bahwa tingkat warna abu-abu adalah sebagai tingkat kedalamannya. Prinsip dari Morphological Watershed adalah mencari garis watershed (batas air) yaitu garis dimana titik-titiknya merupakan titik tertinggi dari penggambaran sebuah gambar ke dalam bentuk 3 dimensi. 2.8.1
Pembentukan Dam Dam atau watershed line adalah hal yang paling penting dalam
morphological watershed. Pembuatan dam didasarkan pada gambar binary, yang merupakan anggota Z2. Cara termudah untuk membuat dam adalah dengan menggunakan morphological dilation.
19
Gambar 2.12 Konsep Dasar Morphological Watershed
Gambar 2.13 Pembuatan Dam
20
Pada Gambar 2.13 disebutkan ada 2 daerah (daerah dengan nilai minimum) yang akan di segmentasi pada kondisi pengisian air n-1 (gambar paling atas). Kemudian gambar selanjutnya menunjukan kondisi pada saat pengisian air n. Pada saat ini 2 daerah tersebut menjadi 1 daerah. Pada kondisi seperti ini, dam harus dibuat untuk mencegah 2 daerah tersebut menyatu. Gambar paling bawah menunjukan
proses
pengisian
air
secara
perlahan
dengan
melakukan
morphological dilation menggunakan matriks 3x3. Pada pengisian atau morphological dilation pertama masih belum terjadi penyatuan 2 daerah (ditunjukan pada Gambar 2.13 paling bawah dengan warna abu-abu muda). Kemudian pada morphological dilation selanjutnya (warna abu-abu tua) terjadi penyatuan 2 daerah, maka titik di mana 2 daerah tersebut menyatu dibangun sebuah dam, yang ditandai dengan kotak yang berisi tanda silang. Proses ini dilakukan berulang hingga proses pengisian air n = maks+1. 2.8.2
Algoritma Morphological Watershed Buat M1,M2,M3, ... , MR menjadi kumpulan koordinat titik dalam daerah
dengan nilai minimum dari sebuah gambar g(x,y). Gambar di sini pada umumnya sudah merupakan gambar yang telah diproses dengan pre-processing terlebih dahulu. Kemudian buat C(Mi) menjadi kumpulan koordinat pada daerah pengisian yang memiliki hubungan dengan daerah minimum Mi (dianggap daerah pengisian dan daerah minimum membentuk komponen yang saling tersambung). Notasi min dan max digunakan untuk menandai nilai minimum dan nilai maksimum dari g(x,y). Kemudian buat T[n] menjadi kumpulan koordinat (s,t) di mana g(s,t) < n, sehingga dapat didefinisikan: T[n]={(s,t)|f(x,y)
21
Kemudian buat Cn(Mi) menjadi kumpulan koordinat titik pada daerah pengisian yang berhubungan dengan daerah minimum Mi yang diisi pada tahap n. Cn(Mi) dapat dilihat sebagai gambar binary bila menggunakan persamaan: C n ( M i ) = C ( M i ) ∩ T [ n] Dengan kata lain Cn(Mi) = 1 pada lokasi (x,y) jika (x,y) ∈ C(Mi) dan (x,y) ∈ T[n], R
selain itu Cn(Mi) = 0. Dari sini dapat dikatakan bahwa C[n] = U C n ( M i ) dan i =1
R
C[max + 1] = U C( M i ) i =1
C[n-1] adalah subset dari C[n] dan C[n] adalah subset dari T[n] maka C[n-1] adalah subset dari T[n]. Dari sini didapatkan bahwa tiap komponen yang terhubung dari C[n-1] memiliki 1 komponen yang terhubung dari T[n]. Jika Q adalah kumpulan komponen yang terhubung dalam T[n], maka untuk tiap komponen yang terhubung q ∈ Q[n], maka ada 3 kemungkinan: a. q ∩ C[n − 1] adalah kosong b. q ∩ C[n − 1] mengandung 1 komponen yang terhubung dari C[n-1] c. q ∩ C[n − 1] mengandung lebih dari 1 komponen yang terhubung dari C[n-1] Jika kondisi c terjadi maka pengisian akan menyebabkan 2 daerah menjadi 1, maka titik pada C[n-1] menjadi milik dam atau watershed line.
2.9 Pengenalan Objek Sederhana Salah satu pengaplikasian segmentasi adalah pengenalan objek hasil segmentasi yang telah dilakukan (Gonzalez, 2002). Pengenalan objek di sini adalah pengenalan objek sederhana dengan menggunakan metode Signature dan Slope Histogram untuk mengenali objek sederhana tersebut. Objek sederhana di sini berupa lingkaran, kotak, segitiga, dan lain-lain. 2.9.1
Signature Signature adalah sebuah representasi fungsional 1-D untuk sebuah
batasan dan dapat di-generate dalam berbagai cara. Salah satu cara yang paling mudah adalah dengan mencari jarak titik tengah dengan pixel yang merupakan
22
batasan berdasarkan sudut mulai dari 0 hingga 359 derajat. Bentuk yang dihasilkannya umumnya berupa garis atau dapat juga disebut waveform. Metode ini diperlukan untuk mengenali objek–objek yang mengalami perubahan baik ukuran maupun kemiringannya. Untuk objek yang mengalami perubahan ukuran (diperbesar atau diperkecil), garis atau waveform yang dihasilkan memiliki perbedaan amplitudo dengan garis atau waveform dari objek yang sebenarnya. Untuk objek yang mengalami perubahan kemiringan (dirotasi), garis atau waveform yang dihasilkan mengalami pergeseran titik awalnya (starting point-nya) dengan garis atau waveform dari objek yang sebenarnya. 2.9.2
Slope Histogram Slope Histogram adalah histogram yang mencatat gradien atau
kemiringan dari tiap pixel berwarna hitam dalam sebuah gambar. Slope Histogram dapat digunakan untuk mengenali objek dengan cara membandingkan histogram dari data asli dengan histogram dari objek yang ingin dikenali. Untuk dapat menggunakan Slope Histogram, sebuah gambar sebaiknya diubah dahulu menjadi biner. Hal ini dapat dilakukan dengan menggunakan threshold. Setelah gambar siap, maka gradien atau kemiringan tiap pixel yang berwarna hitam dicari. Di sini dapat digunakan matriks yang memetakan pixel tersebut dengan pixel-pixel berwarna hitam yang ada disekelilingnya. Matriks yang digunakan adalah 5 x 5. Persamaan garis dalam matematika adalah sebagai berikut: ax+by+c=0 di mana a, b, dan c adalah parameter yang menjelaskan posisi garis dan orientasinya, dan x,y adalah koordinat horisontal dan vertikal. Nilai a dapat dicari dengan menggunakan rumus cos( θ + π/2 ) dan b dapat dicari dengan (1 – a * a)1/2 Sedangkan konstanta c dapat dicari dari c = -ax –by. Garis yang ”terbaik” didapat dengan mencoba semua sudut antara -90 hingga 90 derajat dengan asumsi bahwa garis harus melalui paling sedikit satu dari pixel berwarna gelap dalam matriks 5x5. Nilai error didapatkan dari jumlah ax+by+c untuk setiap x dan y yang pixelnya berwarna hitam. Jika semua pixel berwarna hitam berada pada 1 garis maka nilai error-nya adalah 0 dan dengan memilih garis dengan nilai error paling
23
minimum, maka garis yang ”terbaik” dapat dipilih. Nilai pada histogram milik sudut dari garis yang ”terbaik” di-increment dan dengan demikian terbentuklah Slope Histogram. Untuk membandingkan 2 Slope Histogram dapat digunakan distance yang didefinisikan: D=
a•b a•a +b•b − a•b
Dimana dot product dari a dan b didefinisikan: N
a • b = ∑ ai bi i −1
Nilai D dapat dikatakan nilai kemiripan dari a dan b.
BAB 3. METODE PENELITIAN 3.1 Metodologi Penelitian Metodologi dan langkah-langkah yang digunakan dalam penelitian ini adalah sebagai berikut: 1. Studi literatur, yaitu pengumpulan bahan dan pembelajaran mengenai algoritma yang diperlukan, khususnya algoritma Morphological Watershed. 2. Desain program, yaitu tampilan dari aplikasi yang akan dibuat. 3. Pembuatan program dengan menggunakan Delphi 7.0. 4. Pengujian dan analisa program
• Pengujian terhadap program yang dibuat dengan mencoba hasil segmentasi gambar, apakah sesuai dengan perhitungan yang ada pada algoritma. Selain itu mencoba semua tombol yang ada pada aplikasi, apakah terjadi error atau tidak.
• Analisa hasil segmentasi gambar dari program yang dibuat, apakah sama dengan
hasil
yang
diharapkan
dari
segmentasi
dengan
metode
Morphological Watershed. 5. Pembuatan laporan, yaitu pembuatan laporan penelitian yang terdiri dari:
• Pendahuluan • Tinjauan Pustaka • Metode Penelitian • Hasil Penelitian dan Pembahasan • Kesimpulan dan Saran
3.2 Perencanaan Software Agar software morphological watershed dapat mengsegmentasi gambar dengan baik, maka diperlukan rancangan algoritma. Secara garis besar algoritma ditunjukkankan pada Gambar 3.1.
24
25
Gambar 3.1 Diagram Alir Aplikasi Secara Garis Besar Keterangan:
• Input file pertama kali adalah file yang nantinya akan disegmentasi. Setelah nama file di-input-kan, gambar di-load dan dipersiapkan untuk segmentasi.
• Pre-processing di sini masih terdiri dari beberapa proses dan akan dibahas lebih lanjut setelah ini.
• Gambar yang sudah disiapkan melalui proses pre-processing disegmentasi dengan menggunakan metode morphological watershed. Kemudian dihitung lama waktu yang dibutuhkan mulai dari pre-processing hingga selesainya segmentasi dan jumlah objek yang dihasilkan.
• Proses dapat berhenti di sini atau dapat juga dilakukan proses lain pada objek yang dihasilkan oleh segmentasi. Proses tersebut adalah yang biasa dikenal sebagai copy atau cut dan kemudian objek tersebut dapat di-paste baik pada
software ini maupun pada software lainnya yang berbasis sistem operasi yang sama.
26
3.2.2
Pre-processing pertama Pre-processing merupakan kumpulan dari proses yang digunakan untuk
dapat menghasilkan segmentasi yang terbaik. Ada banyak sekali proses yang dapat digunakan. Pada software ini akan digunakan 2 macam pre-processing yang berbeda. Pre-processing yang pertama menggunakan grayscaling, histogram
equalization, thresholding, invert, erosion, dan dilation.
Gambar 3.2 Diagram Alir Pre-Processing Pertama Gambar 3.2 menunjukkan pre-processing dapat menggunakan histogram
equalization dan invert secara opsional. Histogram equalization membuat histogram dari suatu gambar menjadi histogram yang ter-equalize. Beberapa objek malah terkesan menghilang atau bergabung dengan objek lainnya, sehingga
27
susah untuk disegmentasi nantinya. Kemudian untuk invert, apabila gambar tersebut lebih didominasi oleh warna gelap maka sebaiknya tidak perlu di-invert agar gambar tersebut dapat disegmentasi menjadi objek yang diinginkan. Proses grayscaling adalah proses untuk mengubah gambar yang memiliki warna menjadi gambar yang memiliki tingkat warna abu-abu (gray-level). Pada Gambar 3.3 dijelaskan bagaimana cara kerja proses ini dalam bentuk diagram alir.
Gambar 3.3 Diagram Alir Proses Grayscaling Gambar yang akan di-grayscaling nilai tiap titik akan disamakan nilai
Red, Green, dan Blue-nya sehingga untuk tiap titik hanya memiliki 1 nilai saja yang disebut nilai gray-level-nya. Pada Gambar 3.3 proses grayscaling yang digunakan mengambil persentasi tertentu dari masing-masing warna kemudian dijumlahkan untuk mendapatkan nilai yang baru. Cara lainnya yaitu langsung membagi sama rata ketiga nilai warna tersebut untuk mendapatkan nilai yang baru (dicari rata-rata dari ketiga nilai warna Red, Green, dan Blue). Proses histogram equalization seperti yang telah dijelaskan sebelumnya, digunakan untuk mengubah intensitas suatu gambar menjadi sebuah gambar dengan nilai histogram yang relatif sama di setiap levelnya. Pada Gambar 3.4
28
dijelaskan bagaimana cara kerja dari algoritma histogram equalization, mulai dari pengambilan nilai untuk histogram, kemudian perhitungan histogram menjadi
histogram yang ter-equalize, hingga pengubahan pada tiap pixel pada gambar agar histogram dari gambar tersebut menjadi histogram yang ter-equalize.
Gambar 3.4 Diagram Alir Proses Histogram Equalization Proses thresholding adalah proses untuk mengubah gambar yang memiliki tingkat warna abu-abu menjadi gambar biner berdasarkan suatu nilai tertentu yang menjadi tolok ukurnya. Pada Gambar 3.5 dijelaskan bagaimana cara kerja algoritma ini dalam bentuk diagram alir. Nilai n pada gambar tersebut menunjukkan batas yang menjadi tolok ukur pengubahan nilai tiap pixel, apakah menjadi 0 (hitam) atau 255 (putih).
29
Gambar 3.5 Diagram Alir Proses Thresholding Gambar hasil proses invert ini lebih dikenal dengan istilah gambar negatif. Pada Gambar 3.6 dijelaskan cara kerja dari algoritma proses invert. Proses ini merupakan proses untuk mengubah nilai tiap pixel menjadi sebaliknya. Pixel yang memiliki nilai rendah diubah menjadi pixel yang memiliki nilai yang tinggi, begitu pula sebaliknya.
Gambar 3.6 Diagram Alir Proses Invert
30
Proses erosion dan dilation adalah proses morphological yang digunakan untuk menghaluskan gambar sehingga lebih mudah untuk disegmentasi. Gambar 3.7 menjelaskan bagaimana cara kerja algoritma dari erosion dan Gambar 3.8 menjelaskan bagaimana cara kerja algoritma dari dilation. Kedua proses ini memerlukan nilai yang terdapat pada histogram.
Gambar 3.7 Diagram Alir Proses Erosion
Gambar 3.8 Diagram Alir Proses Dilation 3.2.3
Pre-processing kedua Pre-processing yang kedua terdiri dari grayscaling, morphological
gradient, dan minima removal. Pre-processing yang kedua menggunakan lebih
31
sedikit proses dan diharapkan lebih cepat dan lebih baik dari pre-processing yang pertama. Proses grayscaling dapat dilihat pada Gambar 3.3 dan tidak dibahas di sini. Proses morphological gradient adalah proses di mana gambar baru yang dihasilkan merupakan hasil selisih dari proses dilation dari gambar asli dengan proses erosion dari gambar asli. Proses ini memerlukan hasil dari proses erosion dan dilation. Proses erosion dan dilation dapat dilihat pada Gambar 3.7 dan Gambar 3.8. Gambar 3.9 menjelaskan bagaimana cara kerja algoritma
morphological gradient.
Gambar 3.9 Diagram Alir Proses Morphological Gradient Proses minima removal dapat dikatakan proses perataan dasar dari daerah minimum sehingga daerah minimum memiliki nilai yang uniform. Gambar 3.10 menjelaskan bagaimana cara kerja algoritma ini.
32
Gambar 3.10 Diagram Alir Proses Minima Removal 3.2.4
Proses Segmentasi Proses segmentasi dengan menggunakan Morphological Watershed
dijelaskan lengkap pada Gambar 3.11. Min dan max di sini adalah nilai minimum dan maksimum dari pixel-pixel pada gambar. Ini digunakan untuk mempersingkat waktu, sehingga tidak diperlukan untuk memulai dari 0 hingga 255. Penentuan daerah dan garis dicek mulai dari pixel dengan nilai minimum hingga maksimum.
33
Seperti yang dijelaskan pada gambar jika pixel tersebut merupakan daerah minimum atau tidak memiliki irisan dengan kumpulan pixel yang terhubung pada
n-1 maka pixel tersebut membentuk daerah baru. Jika irisan dengan kumpulan pixel yang terhubung pada n-1 hanya 1 komponen atau daerah maka pixel menjadi milik komponen atau daerah tersebut. Jika lebih dari 1 maka menjadi dam atau
watershed lines.
Gambar 3.11 Diagram Proses Segmentasi / Watershed 3.2.5
Perencanaan User Interface
User Interface dirancang sedemikian rupa dengan pengaksesan semua tombol terletak pada menubar seperti yang tampak pada Gambar 3.12. Layar dibuat maximize agar mempermudah dalam meng-edit dan memilih objek yang ada pada gambar. Selain memilih dari menu, user juga dapat menekan tombol
34
yang merupakan icon dari menu yang ada pada toolbar untuk mempercepat penggunaan tanpa perlu membuka menu satu per satu.
Gambar 3.12 Perencanaan User Interface Tombol-tombol yang ada: 1. Pada menu File: a. New: untuk membuat gambar baru. Gambar yang akan dibuat di sini hanya berupa gambar yang merupakan gabungan objek-objek hasil segmentasi dari gambar lain. b. Open: untuk me-load gambar. c. Save: untuk meng-save gambar. d. Close: untuk menutup gambar yang sedang aktif e. Close All: untuk menutup seluruh gambar yang sedang dibuka f. Exit: untuk keluar dari software 2. Pada menu Edit: a. Copy: untuk meng-copy objek hasil segmentasi dan menyimpannya pada
Clipboard b. Cut: untuk meng-cut objek hasil segmentasi dan menyimpannya pada
Clipboard c. Paste: untuk mem-paste objek hasil segmentasi yang ada pada Clipboard d. Undo: untuk kembali 1 langkah sebelumnya. 3. Pada menu View: a. Toolbar: untuk menampilkan form toolbar yang berisi posisi pointer
mouse dan nilai pixel di mana pointer tersebut berada bila pointer mouse
35
berada di atas gambar yang aktif. Form ini juga berisi histogram dari gambar yang sedang aktif. b. Tile, Cascade: untuk menata agar gambar yang dibuka menjadi teratur c. Arrange Icons: untuk menata gambar yang sedang di-minimize agar tidak bertumpukan satu dengan yang lain 4. Pada menu Tools: a. Grayscaling: mengubah gambar dengan format warna menjadi gambar dengan format gray-level b. Histogram Equalization: meng-equalize-kan histogram dari sebuah gambar c. Thresholding: untuk mengubah gambar gray-level menjadi gambar biner d. Invert: membalik nilai dari titik-titik pada gambar e. Morphological
Processing:
terdiri
dari
Erosion
(menjalankan
morphological processing erosion), Dilation (menjalankan morphological processing dilation), Opening (menjalankan morphological processing erosion kemudian dilation), Closing processing
dilation
kemudian
(menjalankan
erosion),
morphological
Morphological
Gradient
(menjalankan morphological processing morphological gradient) dan Minima Removal (meratakan daerah minimum pada gambar) f. Watershed Segmentation: menjalankan segmentasi gambar. 5. Pada menu Segmentation: a. Watershed Segmentation Using Threshold: menjalankan segmentasi dengan menggunakan pre-processing pertama secara lengkap. b. Watershed Segmentation Using Threshold (without invert): menjalankan segmentasi dengan menggunakan pre-processing pertama secara lengkap tetapi proses invert tidak dipakai. c. Watershed Segmentation Using Morphological Gradient: menjalankan segmentasi dengan menggunakan pre-processing kedua secara lengkap. 3.2.6
Proses Pengenalan Objek Proses pengenalan objek menggunakan metode Signature dan Slope
Histogram. Signature yang digunakan adalah mencari jarak titik tengah dengan
36
pixel yang merupakan batasan berdasarkan sudut mulai dari 0 hingga 359 derajat. Gambar 3.13 menjelaskan bagaimana proses Signature dilakukan.
Gambar 3.13 Diagram Alir Proses Signature
Slope Histogram adalah histogram yang mencatat gradien atau kemiringan dari tiap pixel berwarna hitam dalam sebuah gambar. Gambar 3.14 menjelaskan bagaimana Slope Histogram dibentuk.
37
Gambar 3.14 Diagram Alir Pembuatan Slope Histogram
BAB 4. HASIL PENELITIAN DAN PEMBAHASAN
4.1 Implementasi Software
Software yang digunakan di sini adalah Borland Delphi 7 dan komponen TGifImage Component. Alasan penggunaan Borland Delphi 7 adalah karena Delphi mendukung proses imaging, bersifat user friendly, dan mempunyai interface yang dapat ditata dengan baik. Selain itu Delphi 7 mempunyai performa yang baik untuk melakukan perhitungan yang banyak dan mempunyai kuantitas yang cukup untuk menyimpannya dalam memory komputer.
TGifImage Component adalah komponen dari Delphi yang digunakan untuk membuka format gambar Gif. Pada umumnya, TImage yang digunakan untuk menampilkan gambar, hanya mampu untuk membuka beberapa format gambar saja, antara lain : bitmap, icons, metafile, dan enhanced metafile. Dengan menggunakan TGif Component menambah format yang umum digunakan dalam menyimpan gambar yaitu Gif. Delphi sudah menyediakan untuk JPEG dengan menambah unit Jpeg, tetapi untuk Gif tidak tersedia. Penggunaan TGifImage
Component seperti penggunaan unit Jpeg, cukup dengan menambahkan unit GifImage pada penulisan unit. Setelah unit ditambahkan otomatis TGifImage dan Jpeg akan langsung terintegrasi ke dalam TImage.
4.2 Pengujian Software Pengujian segmentasi software dilakukan terhadap beberapa gambar. Hasil pengujian termasuk jumlah segmentasi dan waktu yang dibutuhkan mulai dari pre-processing hingga selesainya segmentasi. Pengujian dilakukan dengan menggunakan komputer dengan spesifikasi sebagai berikut:
•
Processor Intel Pentium IV – 1,8a GHz
•
Memory 256 MB DDR RAM
•
VGA Card ATI Radeon 9200 128 MB
•
Sistem operasi Microsoft Windows XP Service Pack 2 Perbandingan juga dilakukan terhadap besarnya ukuran gambar yang
digunakan dan waktu yang dibutuhkan untuk gambar yang serupa tetapi berbeda ukuran gambar, juga apakah objek yang dihasilkan sama baik jumlah maupun 38
39
bentuknya. Pengujian dilakukan terhadap gambar jeruk dengan ukuran gambar awal 192 x 128 pixel dan dapat dilihat pada Gambar 4.1.
Gambar asli
Gambar hasil Grayscale
Gambar hasil Histogram Equalization
Gambar hasil Threshold
Gambar hasil invert
Gambar hasil erosion
Gambar hasil dilation
Gambar hasil segmentasi
Gambar Hasil Segmentasi terhadap Gambar hasil potongan gambar asli. Gambar 4.1 Gambar Hasil Pengujian Terhadap Pre-processing 1
40
Gambar asli
Gambar hasil grayscale
Gambar hasil morphological
Gambar hasil segmentasi
processing
Gambar Hasil Segmentasi terhadap
Gambar Hasil Potongan
gambar asli. Gambar 4.2 Gambar Hasil Pengujian Terhadap Pre-processing 2 Gambar 4.2 menunjukkan proses segmentasi dengan menggunakan pre-
processing 1 membutuhkan waktu 6 detik menghasilkan 11 segmen. Sedangkan proses segmentasi dengan menggunakan pre-processing 2 membutuhkan waktu 8 detik menghasilkan 219 segmen. Pengujian dilanjutkan dengan pengujian pengaruh ukuran gambar terhadap hasil segmentasi dan waktu yang dibutuhkan untuk melakukan proses segmentasi seperti yang tampak pada Gambar 4.3.
41
Gambar
Ukuran
Pre-processing
Waktu
Jumlah
gambar 150 101
x 1
dengan 4 detik
10
histogram equalization
150 101
x 1
tanpa 5 detik
5
histogram equalization (threshold=115)
150
x 1 tanpa invert
4 detik
18
x 1 tanpa invert 4 detik
17
101
150 101
dan
histogram
equalization (threshold=115) 150
x 2
5 detik
263
101
300 202
x 1
dengan 14
histogram
detik
equalization
Gambar 4.3 Hasil Pengujian Terhadap Gambar Bunga
16
42
300 202
x 1
tanpa 14
7
detik
histogram equalization (threshold=115)
300
x 1 tanpa invert
202
300 202
18
34
detik
x 1 tanpa invert 14 dan
17
histogram detik
equalization (threshold=115) 300
x 2
15
202
500 337
859
detik
x 1
dengan 46
35
detik
histogram equalization
500 337
x 1
tanpa 38
histogram
detik
equalization (threshold=115) Gambar 4.3. Hasil Pengujian Terhadap Gambar Bunga (lanjutan)
25
43
500
x 1 tanpa invert
337
500 337
35
56
detik
x 1 tanpa invert 34 dan
34
histogram detik
equalization (threshold=115) 500
x 2
45
337
800 539
2111
detik
x 1
dengan 2 menit 84 3 detik
histogram equalization
800 539
x 1
tanpa 1 menit 73
histogram
40
equalization
detik
(threshold=115) 800 539
x 1 tanpa invert
1 menit 72 39detik
Gambar 4.3. Hasil Pengujian Terhadap Gambar Bunga (lanjutan)
44
800
x 1 tanpa invert 1 menit 68 dan
539
histogram 31detik
equalization (threshold=115) 800
1 menit 5213
x 2
539
57 detik
Gambar 4.3. Hasil Pengujian Terhadap Gambar Bunga (lanjutan) Gambar
Ukuran
Pre-processing
Waktu
Jumlah
gambar 200 150
x 1
dengan 7 detik
34
histogram equalization
200 150
x 1
tanpa 8 detik
26
histogram equalization (threshold=184)
200
x 1 tanpa invert
8 detik
150
Gambar 4.4 Hasil Pengujian Terhadap Gambar Sanrio
33
45
200 150
x 1 tanpa invert 7 detik dan
58
histogram
equalization (threshold=184)
200
x 2
11
150
400 300
397
detik
x 1
dengan 29
50
detik
histogram equalization
400 300
x 1
tanpa 28
histogram
51
detik
equalization (threshold=180)
400 300
x 1 tanpa invert
27 detik
Gambar 4.4. Hasil Pengujian Terhadap Gambar Sanrio (lanjutan)
21
46
400 300
x 1 tanpa invert 27 dan
28
histogram detik
equalization (threshold=180)
400
x 2
35
300
800 600
800 600
776
detik
x 1
dengan 1 menit 53
histogram
55
equalization
detik
x 1
tanpa 1 menit 53
histogram
53
equalization
detik
(threshold=179)
800 600
x 1 tanpa invert
1 menit 21 45detik
Gambar 4.4. Hasil Pengujian Terhadap Gambar Sanrio (lanjutan)
47
800
x 1 tanpa invert 1 menit 26
600
dan
histogram 42
equalization
detik
(threshold=179)
800
2 menit 5730
x 2
600
28 detik
Gambar 4.4. Hasil Pengujian Terhadap Gambar Sanrio (lanjutan) Gambar
Ukuran
Pre-processing
Waktu
Jumlah
gambar 200 x 150
1
dengan 8 detik
0
histogram equalization
200 x 150
1
tanpa 8 detik
histogram equalization (threshold=179)
Gambar 4.5 Hasil Pengujian Terhadap Gambar Sederhana
8
48
200 x
1 tanpa invert
7 detik
11
150
200 x 150
1 tanpa invert 8 detik dan
6
histogram
equalization
200 x
2
7 detik
130
150
500 375
x 1
dengan 44
0
detik
histogram equalization
500 375
x 1
tanpa 41
histogram
7
detik
equalization (threshold=175)
Gambar 4.5. Hasil Pengujian Terhadap Gambar Sederhana (lanjutan)
49
500
x 1 tanpa invert
375
500 375
41
12
detik
x 1 tanpa invert 42 dan
17
histogram detik
equalization (threshold=175)
500
x 2
47
375
800 600
245
detik
x 1
dengan 1
histogram
menit
equalization
53
0
detik
800 600
x 1
tanpa 1
histogram
menit
equalization
43
7
(threshold=173) detik
Gambar 4.5. Hasil Pengujian Terhadap Gambar Sederhana (lanjutan)
50
800
x 1 tanpa invert
600
1
12
menit 47detik
800 600
x 1 tanpa invert 1 dan
17
histogram menit
equalization
43
(threshold=173) detik
800 600
x 2
2
80
menit 18 detik
Gambar 4.5. Hasil Pengujian Terhadap Gambar Sederhana (lanjutan) Pengujian juga dilakukan dengan menggunakan hardware lama berspesifikasi sebagai berikut:
•
Processor Pentium I – 133 MHz
•
Memory 32 MB RAM
•
VGA 1 MB
•
Sistem operasi Windows 98 SE Pengujian dilakukan dengan menggunakan pre-processing kedua
terhadap gambar jeruk seperti yang terdapat pada Gambar 4.2 menghasilkan jumlah objek yang sama dengan waktu 1 menit, berbeda dengan menggunakan
Pentium IV yang hanya membutuhkan waktu 6 detik untuk menyelesaikan proses. Pengujian yang sama dilakukan terhadap gambar bunga seperti pada Gambar 4.3
51
dengan ukuran gambar 150x101, diselesaikan dengan waktu 36 detik, Pentium IV hanya 5 detik. Pengujian dilanjutkan dengan melakukan pengenalan terhadap objek hasil segmentasi yang berupa objek–objek sederhana seperti yang tampak pada Gambar 4.6. Data sumber objek sederhana diinputkan terlebih dahulu. Nama
Gambar Objek
Slope Histogram
Objek Elips
Kotak
( 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 72 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 92 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 103 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 46 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ) ( 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 72 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 92 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 54 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 103 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 63 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 46 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ) Gambar 4.6 Data Sumber Objek Sederhana
52
Lingkaran
Segitiga
Persegipanjang
( 222 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 51 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 47 212 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2015 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 211 46 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 81 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ) ( 89 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 46 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 49 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 90 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 79 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 86 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 53 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 45 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ) ( 69 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 46 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 45 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 110 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 113 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 104 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 48 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 46 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ) Gambar 4.6. Data sumber objek sederhana (lanjutan)
Pengujian dilakukan terhadap Gambar 4.7 dengan dilakukan segmentasi dengan pre-processing 2 terlebih dahulu.
53
Gambar 4.7 Gambar yang akan Diuji Pengenalan Objek Berdasarkan pengujian yang telah dilakukan, dapat diketahui bahwa:
•
Objek yang dihasilkan tiap pre-processing berbeda.
•
Bila ingin mendapatkan hasil yang baik, nilai threshold pada pre-processing pertama dapat diubah sesuai gambarnya karena perhitungan nilai threshold hanya diharapkan memberikan yang terbaik tetapi belum tentu hasil perhitungan merupakan yang terbaik.
•
Ukuran gambar sangat tergantung dalam proses segmentasi ini. Hasil yang didapat dan waktu yang digunakan tidak sama.
•
Proses segmentasi tetap dapat dilakukan pada hardware dengan spesifikasi rendah, tetapi waktu yang dibutuhkan untuk menyelesaikan proses bertambah.
•
Objek dapat dikenali apabila memiliki bentuk yang serupa dengan objek sumber, jika mengalami perubahan bentuk (bukan merupakan perbesaran, pengecilan atau perputaran) maka objek sulit untuk dikenali.
•
Jika dilakukan perubahan bentuk (perbesaran, pengecilan, dan atau perputaran) maka objek masih dapat dikenali.
54
Objek
Hasil Pengenalan Kotak : 47.72 % Elips : 87.62 % Lingkaran : 5.90 % Segitiga : 90.26 % Persegi Panjang : 85.19 % Kotak : 58.94 % Elips : 83.81 % Lingkaran : 7.45 % Segitiga : 87.33 % Persegi Panjang : 88.13 %
Kotak : 91.76 % Elips : 46.58 % Lingkaran : 17.59 % Segitiga : 50.74 % Persegi Panjang : 62.45 % Kotak : 10.60 % Elips : 2.37 % Lingkaran : 88.71 % Segitiga : 3.30 % Persegi Panjang : 4.47 %
Kotak : 57.06 % Elips : 63.07 % Lingkaran : 9.19 % Segitiga : 78.85 % Persegi Panjang : 80.28 % Kotak : 41.00 % Elips : 96.47 % Lingkaran : 3.55 % Segitiga : 95.23 % Persegi Panjang : 86.64 % Gambar 4.8 Hasil Pengenalan Dari Objek Hasil Segmentasi Dari Gambar 4.7
BAB 5. KESIMPULAN DAN SARAN 5.1 Kesimpulan Dari keseluruhan sistem yang telah dibuat dan pengujian yang telah dilakukan dapat disimpulkan beberapa hal dibawah ini: 1. Metode morphological watershed memiliki kelebihan dan kelemahan. Kelebihan:
•
Tidak perlu menentukan posisi awal dari daerah yang akan disegmen, karena proses segmen telah dilakukan pada setiap bagian dari gambar.
•
Noise yang ada pada gambar tidak mempengaruhi proses segmentasi sebuah objek pada gambar.
Kelemahan:
•
Seringnya timbul over segmentation, yaitu munculnya daerah yang lebih besar dari objek yang seharusnya.
•
Waktu yang dibutuhkan untuk melakukan proses mulai dari awal hingga akhir cukup lama, karena banyak proses yang dilakukan secara berulang.
•
Pemilihan pre-processing yang kurang tepat dapat mengakibatkan pembentukan objek yang kurang tepat pula. Berdasarkan pengujian yang dilakukan, pre-processing yang dapat menghasilkan objek yang lebih baik adalah pre-processing kedua. Pre-processing pertama hanya cocok digunakan untuk gambar tertentu saja dimana gambar tersebut memiliki kontras yang tinggi dan penuh dengan objek.
2. Pada proses yang dilakukan oleh software, bila gambar yang digunakan memiliki warna yang dominan cenderung mengakibatkan bertambahnya waktu proses. Setiap gambar meskipun beresolusi sama belum tentu waktu prosesnya sama. 3. Semakin besar resolusi yang digunakan, semakin besar waktu yang dibutuhkan untuk proses dan semakin banyak over segmentation yang timbul.
55
56
5.2 Saran Beberapa saran untuk pengembangan software adalah 1. Proses segmentasi yang lebih cepat lagi, misalnya dengan proses rekursi agar gambar tidak perlu di-scan berulang-ulang, terutama
untuk proses
segmentasinya. 2. Mencoba banyak pre-processing lainnya, sehingga dapat mengetahui apakah ada pre-processing yang lebih baik lagi. 3. Menambah fungsi save dan load, sehingga hasil segmentasi juga disimpan dalam bentuk file dan jika ingin menggunakannya lagi tidak perlu melakukan proses segmentasi lagi.
DAFTAR PUSTAKA
[1] Ballerini, L. Digital Image Processing: Segmentation. http://www.cb.uu.se/~lucia/dbb/l8.pdf [2] Ding, M. (2004, Januari 27). Advanced Image Processing & Analysis Morphological Watershed. [3] Gonzalez, R.C., Woods, R.E. (2002). Digital Image Processing Second Edition, Prentice Hall, New Jersey. [4] IDL (1999). Watershed (online) [5] Parker, J.R. (1993). Practical Computer Vision Using C, John Wiley & Sons Inc., New York. [6] Wei-Cheng, Lin. (2000). Mathematical Morphology and Its Application on Image Segmentation, Dept. of Computer Science and Information Engineering, National Taiwan University.
57