Prosiding Seminar Nasional Manajemen Teknologi VII Program Studi MMT-ITS, Surabaya 2 Pebruari 2008
PEMANFATAAN GRAPH DALAM PENYELESAIAN PERMASALAHAN SEGMENTASI CITRA Victor Hariadi Jurusan Teknik Informatika, Fakultas Teknologi Informasi - ITS Gedung Teknik Informatika, Kampus ITS, Jl. Raya ITS, Sukolilo, Surabaya - 60111 email :
[email protected] ABSTRAK Makalah ini mengagas sebuah skema penyelesaian permasalahan segmentasi citra melalui pemanfataan region. Kami membuat predikat-predikat untuk mengidentifikasi batas antara 2 region yang bersinggungan pada sebuah citra dengan menggunakan representasi berbasis graph. Kemudian kami mengembangkan sebuah algoritma segmentasi yang efisien berbasiskan predikat tersebut (yang walaupun dalam aplikasinya algoritma ini seringkali berlaku greedy, namun secara umum tetap dapat memenuhi kebutuhan penyelesaian permasalahan). Kami mengaplikasikan algoritma berbasis graph terhadap permasalahan segmentasi citra ini dengan menggunakan 2 model ketetanggaan yang berbeda untuk membangun graph. Salah satu karakteristik penting dalam penelitian ini adalah kemampuan algoritma ini dalam mengenali detail dalam citra yang berkategori low-variability regions, dan sebaliknya dapat mengabaikan detail gambar (yang tidak perlu) dalam citra yang berkategori high-variability regions Kata kunci: segmentasi citra, pengklasteran, pengorganisasian persepsi, algoritma berbasis graph. PENDAHULUAN Segmentasi citra (image segmentation) merupakan langkah awal pada proses analisa citra yang bertujuan untuk mengambil informasi yang terdapat di dalam suatu citra. Segmentasi citra membagi suatu citra ke dalam bagian-bagian atau objek-objek. Sampai sejauh mana pembagian tersebut dilakukan tergantung pada masalah yang dihadapi. Idealnya, langkah segmentasi tersebut dihentikan pada saat objek yang diinginkan sudah berhasil dipisahkan. 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. Dalam sudut pandang yang berbeda, segmentasi citra (image segmentation) bisa dikatakan sebagai suatu metode dalam membagi suatu citra menjadi wilayah-wilayah yang homogen berdasarkan kriteria keserupaan yang tertentu antara tingkat keabuan suatu piksel dengan tingkat keabuan piksel – piksel tetangganya, kemudian hasil dari proses segmentasi ini akan digunakan untuk proses tingkat tinggi lebih lanjut yang dapat dilakukan terhadap suatu citra, misalnya proses klasifikasi citra dan proses identifikasi objek. Dalam melakukan segmentasi citra menjadi beberapa region, hal itu merupakan problem tersendiri. Dan ada begitu banyak pula metode yang bisa diterapkan untuk mengatasi hal tersebut. Salah satunya adalah dengan menggunakan metode Efficient Graph Based Image Segmentation. Metode ini mendefinisikan sebuah predikat untuk menentukan evidence dari sebuah batas antara dua region menggunakan sebuah representasi berbasis graph dari citra. Kita selanjutnya dapat mengembangkan sebuah
Prosiding Seminar Nasional Manajemen Teknologi VII Program Studi MMT-ITS, Surabaya 2 Pebruari 2008
algoritma segmentasi yang efisien berdasarkan predikat ini, dan menunjukkan bahwa meskipun algoritma ini membuat keputusan yang rakus, algoritma ini bisa menghasilkan segmentasi yang memenuhi ciri-ciri globalnya. Algoritma ini berjalan sangat cepat, hampir linier dengan jumlah dari graph edge. Karakteristik penting dari metode ini adalah kemampuannya untuk menyimpan detail region citra pada low-variability ketika mengabaikan detail dari region citra pada high-variability. Teori Lain yang Berhubungan dengan Teori Graph Based Ada banyak sekali literatur yang membahas segmentasi dan clustering, lebih dari 30 tahun, dengan berbagai aplikasi pada berbagai area selain computer vision. Pada bagian ini kami secara singkat akan mempertimbangkan beberapa pekerjaan sebelumnya yang relevan dengan pendekatan kami, antara lain : minimum spanning tree, metode graph-based, algoritma greedy, dan format citra PPM. Minimum Spanning Tree (MST) adalah algoritma yang dimulai dari suatu subgraph, yaitu sebuah koneksi, undirected graph, sebuah spanning tree dari suatu graph yang mana berbentuk tree dan mengoneksikan/menghubungkan seluruh verteks menjadi satu. Sebuah graph dapat memiliki banyak spanning tree. Kita juga dapat mengassign/menambahkan weight kepada setiap edge. Sebuah minimum spanning tree atau minimum weight spanning tree adalah sebuah spanning tree dengan weight yang kurang atau sama dengan weight dari spanning tree yang lain. Lebih umumnya, undirected graph(tidak harus terhubung) memiliki minimum spanning forest, yang mana merupakan suatu kesatuan dari spanning tree untuk komponen dirinya yang terhubung. Sedangkan Greedy Algorithm adalah algoritma yang mengikuti cara pemecahan masalah metaheuristic dari membuat pilihan lokal optimum di setiap stage dengan harapan dapat menemukan global optimum. Sebagai contoh, menerapkan greedy strategy ke dalam TSP (Travelling Salesman Problem) menghasilkan algoritma seperti di samping ini, “Pada setiap stage, kunjungi kota yang belum didatangi yang paling dekat dengan kota tempat anda berada sekarang” Untuk format citra yang digunakan dalam pengujian ini adalah PPM. Image format PPM ini merupakan bagian dari Netpbm format. PPM format adalah sebutan untuk format citra berwarna yang tidak umum. Perlu diketahui bahwa format ini terkenal ketidakefisienannya. Terlalu berlebih-lebihan dalam memiliki informasi warna yang mata manusia tidak dapat lihat. Lebih jauh lagi, format ini hanya memberikan sedikit informasi mengenai image tersebut selain warna dasar yang dimiliki, yang mana hal itu berarti bahwa kita harus memasangkan file format ini dengan informasi independen lainnya untuk mendapatkan hasil yang layak. Akan tetapi, program untuk menganalisa proses ini sangat gampang ditulis dan dianalisa, selain itu juga dia support full color dan gampang diambil nilainya karena headernya sudah jelas. dan inilah kelebihannya. Algoritma Graph Based Segmentation Ada beberapa sub-bagian yang perlu dipertimbangkan dalam menyusun suatu graph-based : 1. Bagaimana caranya membangun suatu graph? 2. Bagaimana caranya memilih titik awal dan titik akhir pembuatan graph? 3. Bagaimana caranya menemukan minimum cost-path?
ISBN : 978-979-99735-4-2 C-20-2
Prosiding Seminar Nasional Manajemen Teknologi VII Program Studi MMT-ITS, Surabaya 2 Pebruari 2008
Kita mulai membahas dari sub-bagian yang pertama, yaitu Graph Formulation. G = (V,E) sebuah undirected graph dengan vertex vi E V (himpunan elemen yang akan disegmentasikan) dan edge (vi,vj) E E. Setiap edge memiliki weight w(vi,vj), bukan negatif. Pada kasus segmentasi elemen pada v adalah pixels dan weight dari edgenya adalah nilai dissimilarity antara dua pixel yang terhubung oleh edge tersebut. Dalam pendekatan graph, sebuah segmentation S adalah sebuah partition dari V ke dalam komponen sedemikian hingga tiap komponen (region) C E S bersesuaian dengan sebuah komponen yang terhubung dalam sebuah graph G'=(V,E') dimana E'C'E. Atau dengan kata lain, segmentasi yang dilakukan diinduksi oleh sebuah subset dari edge dalam E. Algoritma Graph Based Segmentation ini secara garis besar dapat digambarkan dengan definisi di bawah ini. Definisi 1: Sebuah segmentasi S bisa dikatakan baik (fine) jika ada beberapa pasang region C1,C2 E S dimana tidak ada evidence untuk sebuah boundary antara keduanya. Definisi 2: Sebuah segmentasi S dikatakan terlalu kasar ketika ada sebuah proper refinement S yang tidak fine Properti 1: Untuk tiap (finite) graph G = (V,E) ada beberapa segmentasi S yang baik itu terlalu kasar maupun terlalu halus Algoritma 1:Inputnya adalah sebuah graph G = (V,E) dengan n vertex dan m edge. Outputnya adalah segmentasi dari V kedalam komponen S = (C1,...,Cr) 1. Sort E kedalam phi=(01,...,0m) dengan non-decreasing edge weight 2. Mulai dengan sebuah segmentasi S0, dimana setiap vertex vi ada dalam komponennya 3. Ulangi langkah 3 untuk q = 1,...,m 4. Bangun Sq given Sq-1 5. Return S = Sm Teorema 1: Segmentasi S yang dihasilkan oleh algoritma 1 itu not too fine dengan definisi 1, using the region comparison predicate D defined in (3) Teorema 2: Segmentasi S yang dihasilkan oleh algoritma 1 itu not too coarse dengan definisi 2, using the region comparison predicate D defined in (3) Teorema 3: Segmentasi yang dihasilkan oleh algoritma 1 tidak bergantung pada nondecreasing weight order dari weight yang digunakan. HASIL UJI COBA Dalam pengujian kali ini kami melalukan banyak pengujian terhadap citra sampel, terutama pada perubahan parameter-parameter yang dibutuhkan untuk menghasilkan boundary. Citra sampel yang digunakan adalah citra seperti Gambar1..
ISBN : 978-979-99735-4-2 C-20-3
Prosiding Seminar Nasional Manajemen Teknologi VII Program Studi MMT-ITS, Surabaya 2 Pebruari 2008
Gambar 1 Sample Citra Uji Coba
Pengujian pertama menggunakan nilai parameter uji coba (sigma=0.1, threshold=500, component=20) akan memberikan hasil citra sebagai Gambar 2.
Gambar 2 Hasil Citra Uji Coba
Pengujian kedua menggunakan nilai parameter uji coba (sigma=0.7, threshold=500, component=20) akan memberikan hasil citra sebagaimana Gambar 3.
Gambar 3 Hasil Citra Uji Coba
Pengujian ketiga menggunakan nilai parameter uji coba (sigma=2, threshold=500, component=20) akan memberikan hasil citra sebagai Gambar 4.:
ISBN : 978-979-99735-4-2 C-20-4
Prosiding Seminar Nasional Manajemen Teknologi VII Program Studi MMT-ITS, Surabaya 2 Pebruari 2008
Gambar 4 Hasil Citra Uji Coba
Pengujian keempat menggunakan nilai parameter uji coba (sigma=2, threshold=300, component=20) akan memberikan hasil citra sebagai Gambar 5.
Gambar 5 Hasil Citra Uji Coba
Pengujian kelima menggunakan nilai parameter uji coba (sigma=2, threshold=700, component=20) akan memberikan hasil citra sebagai Gambar 6.
Gambar 6 Hasil Citra Uji Coba
Pengujian keenam menggunakan nilai parameter uji coba (sigma=2, threshold=2000, component=20) akan memberikan hasil citra sebagai Gambar 7.
ISBN : 978-979-99735-4-2 C-20-5
Prosiding Seminar Nasional Manajemen Teknologi VII Program Studi MMT-ITS, Surabaya 2 Pebruari 2008
Gambar 7 Hasil Citra Uji Coba
Pengujian ketujuh menggunakan nilai parameter uji coba (sigma=2, threshold=500, component=80) akan memberikan hasil citra sebagai Gambar 8.
Gambar 8 Hasil Citra Uji Coba
Pengujian kedelapan menggunakan nilai parameter uji coba (sigma=2, threshold=500, component=200) akan memberikan hasil citra sebagai Gambar 9.
Gambar 9 Hasil Citra Uji Coba
Pengujian kesembilan menggunakan nilai parameter uji coba (sigma=2, threshold=500, component=500) akan memberikan hasil citra sebagai Gambar 10.
ISBN : 978-979-99735-4-2 C-20-6
Prosiding Seminar Nasional Manajemen Teknologi VII Program Studi MMT-ITS, Surabaya 2 Pebruari 2008
Gambar 10 Hasil Citra Uji Coba
KESIMPULAN menggunakan metode Graph Based ini, maka bisa dihasilkan nilai batasan untuk mengoptimalkan kinerja algoritma ini yakni, dengan memberikan nilai parameter yang sesuai. Dimana nilai parameter tersebut meliputi: nilai sigma, nilai threshold citra, dan nilai component. Diharapkan, Nilai batasan yang telah didapatkan tersebut akan mampu melakukan deteksi obyek pada citra dengan tingkat akurasi yang cukup signifikan. Hasil pada beberapa pengujian yang telah dilakukan diatas dapat memberikan pandangan, bahwa semakin tinggi nilai sigma untuk proses smoothing citra, maka akan semakin rendah nilai component yang dihasilkan, sehingga makin kurang realistis terhadap pengenalan obyek yang ada pada citra. Sedangkan untuk nilai threshold citra, semakin tinggi nilai threshold yang ditentukan, maka akan semakin rendah pula nilai component yang dihasilkan. Hal ini dikarenakan threshold digunakan untuk mengontrol derajat perbedaan antar komponen dimana perbedaan itu harus lebih besar daripada perbedaan yang terdapat dalam komponen yang sedang dibandingkan. Adapun untuk proses nilai component akan berpengaruh pada beberapa bagian component yang tidak memenuhi batas nilai minimum component, sehingga semakin tinggi nilai component yang diinginkan, maka akan semakin rendah pula obyek yang terdeteksi pada citra. DAFTAR PUSTAKA Pedro F. Felzenszwalb, Daniel P. Huttenlocher, “Efficient Graph-Based Image Segmentation,” Artificial Intelligence Lab - Massachusetts Institute of Technology, Computer Science Department, Cornell University, IEEE, 2004; Bob Fisher, “Graph Methods”, Department of Artificial Intelligence - University of Edinburgh, 2003; Tapas Kanungo, David M. Mount, Nathan S. Netanyahu, Christine D. Piatko, Ruth Silverman , Angela Y. Wu “An Efficient k-Means Clustering Algorithm: Analysis and Implementation”, Department of Computer Science, University of Toronto, Canada, 2002;
ISBN : 978-979-99735-4-2 C-20-7
Prosiding Seminar Nasional Manajemen Teknologi VII Program Studi MMT-ITS, Surabaya 2 Pebruari 2008
Matei Mancas, Bernard Gosellin, Benoit Macq, “Segmentation Using a Region Growing Thresholding,” Faculté Polytechnique de Mons, Circuit Theory and Signal Processing Laboratory Bâtiment MULTITEL/TCTS - Initialis, 1, avenue Copernic, B-7000, Mons, Belgium, 2005; Baris Sumengen, B. S. Manjunath, and David J. Kriegman., “Graph Partitioning Active Contours (GPAC) forImage Segmentation”, Department of Electrical and Computer Engineering University of California, Santa Barbara, CA,2004; Netpbm, “PPM Image Format Specification”, Online Posting, 3 October 2003, http://netpbm.sourceforge.net/doc/ppm.html#description; Wikipedia, “Segmentation – Image Processing”, Online Posting, 2 Januari 2008, http://en.wikipedia.org/wiki/Segmentation_(image_processing).
ISBN : 978-979-99735-4-2 C-20-8