LANDASAN TEORI
II- 3 4. Pemodelan, simulasi dan prototype
1. Metode Prewitt
Pengembangan dari gradient operator dengan menggunakan 2 mask (horisontal dan vertikal) ukuran 3x3. Pada operator ini kekuatan gradient ditinjau dari sudut pandang horisontal dan vertikal (memperhatikan titik disekitar pada posisi horisontal dan vertikal). Selain itu metode Prewitt merupakan pengembangan metode Robert dengan menggunakan filter HPF yang diberi satu angka nol penyangga. Metode ini mengambil prinsip dari fungsi laplacian yang dikenal sebagai fungsi untuk membangkitkan HPF. Kernel fillter yang digunakan dalam metode Prewitt ini adalah:
commit to user
II-9
Gambar 2.3 Contoh gambar metode prewitt (kernel) 2. Metode Canny
Salah satu algoritma deteksi tepi modern adalah deteksi tepi dengan menggunakan metode Canny. Deteksi tepi Canny ditemukan oleh Marr dan Hildreth yang meneliti pemodelan persepsi visual manusia. Ada beberapa kriteria pendeteksi tepian paling optimum yang dapat dipenuhi oleh algoritma Canny:
a. Mendeteksi dengan baik (kriteria deteksi)
Kemampuan untuk meletakkan dan menandai semua tepi yang ada sesuai dengan pemilihan parameter-parameter konvolusi yang dilakukan. Sekaligus juga memberikan fleksibilitas yang sangat tinggi dalam hal menentukan tingkat deteksi ketebalan tepi sesuai yang diinginkan.
b. Melokalisasi dengan baik (kriteria lokalisasi)
Dengan Canny dimungkinkan dihasilkan jarak yang minimum antara tepi yang dideteksi dengan tepi yang asli.
c. Respon yang jelas (kriteria respon)
Hanya ada satu respon untuk tiap tepi. Sehingga mudah dideteksi dan tidak menimbulkan kerancuan pada pengolahan citra selanjutnya. Pemilihan parameter deteksi tepi Canny sangat mempengaruhi hasil dari tepian yang dihasilkan. Beberapa parameter tersebut antara lain :
• Nilai Standar Deviasi Gaussian
commit to user
II-10 2.7 SKELETONISASI
Skeletonisasi adalah proses merubah bentuk dari citra hasil restorasi yang berbentuk citra biner menjadi citra yang menampilkan batas-batas objek yang hanya setebal satu piksel. Untuk melakukan proses skeletonisasi dipergunakan algoritma thinning. Algoritma ini secara iteratif menghapus piksel-piksel pada citra biner, dimana transisi dari 0 ke 1 (atau dari 1 ke 0 pada konvensi lain) terjadi sampai dengan terpenuhi suatu keadaan dimana satu himpunan dari lebar perunit (satu piksel) terhubung menjadi suatu garis (Marvin, 2007). Tujuan thinning pada proses skeletonisasi adalah untuk menghilangkan piksel-piksel yang berada di dalam obyek depan (foreground object) pada citra biner. Thinning dalam skeletonisasi berfungsi untuk merapikan atau menyempurnakan hasil output proses edge detection dengan cara mengurangi lebar sisi ataupun batas. Dan sebagai tambahan untuk melakukan proses skeletonisasi maka hindari citra yang memiliki tingkat erosi yang tinggi karena akan sedikit sulit melakukan proses skeleton sebab erosi berfungsi untuk mengurangi nilai piksel dan merubah hingga menjadi beberapa garis-garis. Sehingga dikhawatirkan akan menimbulkan kekancuan pada tahap skeletonisasi.
2.8 ALGORITMA THINNING
Thinning adalah operasi morfologis yang digunakan untuk menghilangkan piksel yang dipilih dari gambar biner. Metode ini digunakan untuk mendetetksi kerangka dari suatu gambar (image). Thinning biasanya diterapkan pada gambar biner dan menghasilkan gambar biner lain sebagai output. Thinning digunakan untuk proses skeletonisasi, yaitu transformasi gambar di mana pada hasil akhir akan didapat kerangka skeletonisasi dari gambar sumber.
Skeletonisasi akan mengurangi wilayah foreground dari gambar biner (binary image) menjadi bentuk kerangka yang secara garis besar akan menampilkan perluasan dan konektivitas dari wilayah asli sambil membuang hampir keseluruhan dari piksel foreground asli. Sebagai contoh dapat dilihat Gambar 2.4 :
commit to user
II-11
Gambar 2.4 Contoh hasil Skeletonisasi
Dalam skeletonisasi dilakukan pengurangan terhadap semua garis sehingga diperoleh ketebalan sebanyak hanya satu piksel. Adapun thinning yang dilakukan secara berulang-ulang akan menghasilkan gambar seperti tersebut di atas. Lebih lanjut, penggunaan thinning dapat dilihat pada beberapa aplikasi nyata seperti pengenalan karakter optis, pengenalan sidik jari, pemrosesan dokumen, pengenalan struktur sel biologis dan sebagainya. Aplikasi dari thinning biasanya menyangkut obyek di mana ketebalan bentuk tidak berpengaruh terhadap proses pengenalan. Obyek tersebut cukup dapat dideskripsikan dengan struktur yang disusun dari garis-garis yang terhubung. Algoritma ini akan menghilangkan titik sisi (edge point) palsu atau yang tidak diinginkan dan menambahkan titik sisi di suatu tempat yang seharusnya ada tetapi kenyataannya belum ada. Aturan ini diperluas menjadi :
1. Menghilangkan titik sisi palsu atau yang tidak diinginkan. 2. Menambahkan titik sisi baru.
3. Menggeser titik sisi ke posisi baru.
Aturan ini diberlakukan dengan menerapkan prinsip piksel. Adapun thinning yang dilakukan secara berulang-ulang akan menghasilkan gambar seperti tersebut di atas. Lebih lanjut, penggunaan thinning dapat dilihat pada beberapa aplikasi nyata seperti pengenalan karakter optis, pengenalan sidik jari, pemrosesan dokumen, pengenalan struktur sel biologis dan sebagainya. Aplikasi dari thinning biasanya menyangkut obyek di mana ketebalan bentuk tidak berpengaruh
commit to user
II-12
terhadap proses pengenalan. Obyek tersebut cukup dapat dideskripsikan dengan struktur yang disusun dari garis-garis yang terhubung.
2.9 PRUNING
Bisa dianggap salah satu aplikasi thinning. Ditujukan untuk menghilangkan spur akibat ketidakteraturan pada daerah batas dari gambar asli. Pruning diterapkan pada sejumlah terbatas iterasi (tidak sampai konvergen) untuk menghindari terbuangnya semua piksel. Contoh kernel untuk pruning adalah
Gambar 2.5 Contoh proses pruning (kernel)
1. Untuk menemukan batas (4-tetangga) pada obyek biner, misal: menghapus titik foreground yang tidak memiliki tetangga pada backgroundnya.
2. Untuk penerapan dengan batas 8-tetangga. 3a&3b. untuk pruning (tiap iterasi harus melibatkan 4 rotasi 90° dari elemen).
Dari seluruh uraian di atas, diperoleh sebuah algoritma yang secara sederhana dapat dituliskan sebagai berikut:
1. Pertimbangkan semua piksel batas dari wilayah foreground .misalnya, titik foreground yang memiliki minimal satu tetangga background (background neighbour).
2. Hapus setiap titik yang memiliki lebih dari satu tetangga foreground (foreground neighbour) sepanjang dengan melakukan hal tersebut tidak mengakibatkan terpisahnya dua wilayah yang mengandung piksel tersebut secara lokal.
3. Ulangi hingga garis konvergen.
Prosedur ini mengikis sebanyak mungkin batas (boundaries) dari obyek foreground tetapi tidak mempengaruhi piksel pada ujung garis.