segmentasi citra dengan menggunakan metode mean shift...
TRANSCRIPT
TUGAS AKHIR – CI1599
SEGMENTASI CITRA DENGAN MENGGUNAKAN METODE MEAN SHIFT SPECTRAL CLUSTERING AFWAN BADRU NAIM NRP 5105 100 169
Dosen Pembimbing Rully Soelaiman, S.Kom., M.Kom. JURUSAN TEKNIK INFORMATIKA Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember Surabaya 2009
i
TUGAS AKHIR – CI1599
SEGMENTASI CITRA DENGAN MENGGUNAKAN METODE MEAN SHIFT SPECTRAL CLUSTERING AFWAN BADRU NAIM NRP: 5105 100 169 Dosen Pembimbing Rully Soelaiman, S.Kom., M.Kom.
JURUSAN TEKNIK INFORMATIKA Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember Surabaya 2009
iii
UNDERGRADUATE THESIS
IMAGE SEGMENTATION USING MEAN SHIFT SPECTRAL CLUSTERING AFWAN BADRU NAIM NRP: 5105 100 169
Advisor Rully Soelaiman, S.Kom., M.Kom.
DEPARTMENT OF INFORMATICS Faculty Of Information Technology Sepuluh Nopember Institute of Technology Surabaya 2009
v
LEMBAR PENGESAHAN
SEGMENTASI CITRA DENGAN MENGGUNAKAN
METODE MEAN SHIFT SPECTRAL CLUSTERING
TUGAS AKHIR Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Komputer
pada
Bidang Studi Sistem Bisnis Cerdas
Program Studi S-1 Jurusan Teknik Informatika
Fakultas Teknologi Informasi
Institut Teknologi Sepuluh Nopember
Oleh:
AFWAN BADRU NAIM
NRP: 5105 100 169
Disetujui oleh Tim Penguji Tugas Akhir:
1. Rully Soelaiman, S.Kom., M.Kom……..(Pembimbing I)
SURABAYA
JULI, 2009
vii
SEGMENTASI CITRA DENGAN MENGGUNAKAN METODE
MEAN SHIFT SPECTRAL CLUSTERING
Nama Mahasiswa : AFWAN BADRU NAIM
NRP : 5105 100 169
Jurusan : Teknik Informatika FTIF-ITS
Dosen Pembimbing I : Rully Soelaiman, S. Kom.,
M. Kom.
ABSTRAK
Metode spectral clustering mengelompokkan datapoint dari data
yang diberikan ke dalam sejumlah cluster dengan memanfaatkan
dekomposisi eigen dari matriks kesamaan atau matriks turunannya,
dimana elemen-elemen dari matriks tersebut merepresentasikan nilai
kesamaan dari setiap pasangan datapoint. Kelemahan dari metode ini
terletak pada proses komputasi eigenvektor dari matriks tersebut,
dimana pembentukan matriks sendiri memerlukan perbandingan dari
setiap pasangan datapoint dari data. Dengan demikian, beban
komputasi semakin tinggi seiring dengan semakin besarnya ukuran data
yang diberikan.
Untuk mengurangi beban komputasi tersebut, dilakukan proses
iterasi untuk mendapatkan cluster tahap awal atau partition dari
dataset dengan menggunakan metode Mean Shift clustering yang
merupakan suatu pendekatan clustering yang bersifat nonparametrik
dengan beban komputasi yang lebih ringan. Partition hasil Mean Shift
clustering didapatkan secara natural melalui interpretasi probabilitas
dari nilai kesamaan dengan melakukan clustering berdasarkan Kernel
Density Estimation.
Nilai kesamaan dari setiap pasangan partition kemudian dihitung
untuk membangun matriks kesamaan dari partition. Setelah
mendapatkan matriks kesamaan dari partition dengan ukuran yang
lebih kecil dari matriks kesamaan pada umumnya, clustering kemudian
dilakukan dengan menggunakan metode Spectral Clustering, dengan
menerapkan metode connected component. Metode ini akan
diimplementasikan ke dalam aplikasi segmentasi citra, dan
perbandingan dilakukan terhadap hasil dari metode ini dengan metode
yang telah ada sebelumnya, yaitu Normalized Cut dan Mean Shift
ix
IMAGE SEGMENTATION USING MEAN SIHFT SPECTRAL
CLUSTERING
Student Name : AFWAN BADRU NAIM
Student ID : 5105 100 169
Department : Informatics FoIT-ITS
Advisor I : RULLY SOELAIMAN, S.Kom.,
M.Kom
ABSTRACT
Spectral clustering method clusters datapoint from given dataset
into number of cluster using the eigendecomposition of a similarity
matrix (affinity matrix) or it’s derivative, which each element of an
affinity matrix shows the degree of similarity between pairs of
datapoint. The drawback of this method is on the eigenvectors
computation, which forming the matrix itself requiring to compare all
possible pairs of datapoint to build the affinity matrix. This leads to an
increase of computational burden for a large dataset.
To reduce the computational load, a fixed point iteration is
utiliized to find the first step clustering result, called partitions with
mean shift clustering algorithm which is the nonparametric clustering
approach with smaller computational load than spectral clustering.
Resulting partition from mean shift is naturally obtained from
probabilistic based clustering through kernel density estimation.
After getting partition of probability density function, pairwise
affinties from each partition computed to make a new affinity matrix
which is more small than earlier. Affinity matrix consisting similarities
between partition provide a much smaller eigenvector too, which is
possible to employing spectral clustering method using connected
component algorithm on it. Mean shift spectral clustering will be
implemented on image segmentation application and its result will be
compared with well known method Normalized Cut dan Mean Shift
Keyword : spectral clustering, mean shift, connected component
xi
KATA PENGANTAR
Alhamdulillah, puji syukur bagi Allah SWT, Rabb semesta
alam yang telah senantiasa melimpahkan rahmar, kasih sayang
dan karunia-Nya kepada penulis sehingga penulis dapat
menyelesaikan Tugas Akhir yang berjudul :
SEGMENTASI CITRA DENGAN MENGGUNAKAN
METODE MEAN SHIFT SPECTRAL CLUSTERING
Ucapan terima kasih penulis sampaikan kepada :
1. Orang tua dan keluarga tercinta yang telah memberikan
semangat terbesar : Bapak (Ayah juara satu seluruh dunia),
Ibu (the most beautiful woman alive), Mbak Ani & Mas Udin
serta keluarga besar Abdul Aziz Sumoatmodjo.
2. Bapak Rully Soelaiman, S.Kom., M.Kom, selaku dosen
pembimbing Tugas Akhir.
3. Bapak Yudhi Purwananto, S.Kom., M.Kom. selaku Ketua
Jurusan Teknik Informatika ITS Surabaya.
4. Ibu Bilqis Amaliah, S.Kom., M.Kom. selaku dosen wali.
5. Segenap dosen dan karyawan Teknik Informatika Fakultas
Teknologi Informasi ITS Surabaya.
6. Keluarga besar angkatan 2005 yang sudah menjadi guru dan
sahabat terbaik yang tak tergantikan bagi penulis:
Abid, Adi, Adit, Alfan, Alay, Amalia, Andam & kelompok
belajar bunga matahari, Andi, Arie, Ariana, Arya, Ayu &
Power Ranger, Bayu, Budi, Deden, Dodo, Dommy, Ega, Eko,
Fahrur, Gerson, Hendik, Hendri, Irvan, Parata, Rangga, Ratri,
Robert, Rona, Sari, Sheila & As Shofiyah, Tyo, Wardani,
Wima & Kecebonx, Yudha
7. Rekan-rekan mahasiswa Teknik Informatika ITS Surabaya,
mas-mas, mbak-mbak, adik-adik, pengurus Himpunan &
Kajian Islam, administrator & penghuni Laboratorium LP,
IBS, RPL, AJK, GCL & NCC.
8. Keluarga kecil bahagia ‘kosan Bu Wahid’ untuk kebersamaan
dalam saat-saat yang tak terlupakan:
xii
Mas Edy, Mas Wisnu, Chasib, Denyo, Wahyu, Avandi,
Rifky, Andre, Bayu, Hendra, Teguh Aceh, Ucup & Mas Irin.
9. Teman-teman alumnus SMAN 1 Ponorogo dan rekan-rekan
komunitas ankringan di Jembatan MERR untuk saat-saat
santai melepas penat.
10. Segenap pihak yang telah banyak membantu penulis dalam
pengerjaan Tugas Akhir ini.
11. Save the best for the last, Riana Ekawati untuk support, spirit
dan pengertiannya.
Sebagai manusia biasa, penulis menyadari bahwa Tugas
Akhir ini masih jauh dari kesempurnaan dan memiliki banyak
kekurangan. Sehingga dengan segala kerendahan hati, penulis
mengharapkan saran dan kritik yang membangun dari pembaca.
Semoga Tugas Akhir ini dapat menjadi sebuah referensi yang
bermanfaat.
Surabaya, Juli 2009
Penulis
xiii
DAFTAR ISI
Halaman
HALAMAN JUDUL ............................................................................ i
LEMBAR PENGESAHAN ................................................................. v ABSTRAK ......................................................................................... vii ABSTRACT ....................................................................................... ix KATA PENGANTAR ........................................................................ xi DAFTAR ISI .................................................................................... xiii DAFTAR GAMBAR ......................................................................... xv DAFTAR TABEL ............................................................................ xix BAB 1 PENDAHULUAN .................................................................... 1
1.1. Latar Belakang ...........................................................................1
1.2. Rumusan Masalah ......................................................................2
1.3. Batasan Masalah .........................................................................3
1.4. Tujuan ........................................................................................3
1.5. Metodologi .................................................................................4
1.6. Sistematika Penulisan .................................................................5
BAB 2 DASAR TEORI ....................................................................... 7
2.1. Spectral Clustering .....................................................................7
2.2. Metode Pairwise ....................................................................... 12
2.3. Mean Shift................................................................................ 16
2.3.1. Kernel Density Estimation ................................................. 16 2.3.2. Mode-Finding dan Algoritma Mean Shift ......................... 19
BAB 3 MEAN SHIFT SPECTRAL CLUSTERING ....................... 25
3.1. Mean Shift Clustering ............................................................... 25
3.2. Matriks Kesamaan dari Partition ............................................... 28
3.3. Connected Component dari Partition Graph .............................. 32
3.4. Performa Segmentasi Citra dengan metode Mean Shift Spectral
Clustering ................................................................................. 33
BAB 4 PERANCANGAN DAN IMPLEMENTASI PERANGKAT
LUNAK ............................................................................................. 35
4.1. Perancangan Perangkat Lunak .................................................. 35
4.1.1. Perancangan Data .............................................................. 35
xiv
4.1.2. Perancangan Proses ............................................................ 36 4.1.3. Perancangan Antarmuka ..................................................... 44
4.2 Implementasi Perangkat Lunak ................................................. 45
4.2.1. Lingkungan Perangkat Lunak............................................. 45 4.2.2. Implementasi Proses........................................................... 45
BAB 5 UJI COBA DAN EVALUASI ................................................ 59
5.1 Lingkungan Uji Coba Perangkat Lunak ..................................... 59
5.2 Data Uji Coba ........................................................................... 59
5.3 Pelaksanaan Uji Coba ............................................................... 62
5.3.1 Uji Coba Perubahan Nilai Global Scaling Factor .................. 62 5.3.2 Uji Coba Perbandingan Fixed Size Kernel Density Estimation
dengan Variable Size Kernel Density Estimation ................ 68 5.3.3 Uji Coba Perbandingan Metode Mean Shift Spectral
Clustering dengan Normalized Cut ..................................... 75 5.3.4 Uji Coba Perbandingan Mean Shift Spectral Clustering
dengan Mean Shift ............................................................. 82 BAB 6 KESIMPULAN DAN SARAN .............................................. 91
6.1 Kesimpulan .............................................................................. 91
DAFTAR PUSTAKA ........................................................................ 93 BIODATA PENULIS ........................................................................ 95
xv
DAFTAR GAMBAR
Halaman
Gambar 2-1 Similarity Graph ................................................................ 7 Gambar 2-3 Ilustrasi graph dengan beberapa verteks yang telah
dihilangkan. ........................................................................................ 11 Gambar 2-4 Ilustrasi pengecekan jumlah connected component dari
graph. .................................................................................................. 11 Gambar 2-5 Fitur pengelompokan ....................................................... 12 Gambar 2-6 Analisa perkiraan kerapatan. (a) Nonparametric Density
Estimation; (b) Nonparametric Gradient Density Estimation ............... 17 Gambar 2-7 Ilustrasi dari fixed size KDE ............................................ 18 Gambar 2-8 Ilustrasi dari variable size KDE ....................................... 19 Gambar 2-9 Perpindahan vektor mean-shift ....................................... 23 Gambar 3-1 Transformasi Data Point ke KIFS .................................... 29 Gambar 4-1 Flowchart Perangkat Lunak Segmentasi Citra ................. 37 Gambar 4-2 Flowchart Proses Utama Perangkat Lunak ...................... 38 Gambar 4-3 Flowchart Proses Menyesuaikan Properti Citra ............... 39 Gambar 4-4 Flowchart Proses Membuat Partition dari citra ................ 41 Gambar 4-5 Flowchart Proses Membuat Matriks Kesamaan ............... 42 Gambar 4-6 Flowchart Proses Segmentasi Pada Matriks Kesamaan ... 43 Gambar 4-7 Form utama dari perangkat lunak .................................... 44 Gambar 4-8(a) Kode Program mainFunction.m .................................. 45 Gambar 4-8(b) Kode Program mainFunction.m (Lanjutan) ................ 46 Gambar 4-9 Kode Program validateImage.m ...................................... 47 Gambar 4-10(a) Kode Program meanShift.m ..................................... 48 Gambar 4-10(b) Kode Program meanShift.m (Lanjutan) ..................... 48 Gambar 4-10(c) Kode Program meanShift.m (Lanjutan) ..................... 49 Gambar 4-10(d) Kode Program meanShift.m (Lanjutan) ..................... 50 Gambar 4-10(e) Kode Program meanShift.m (Lanjutan) ..................... 51 Gambar 4-10(f) Kode Program meanShift.m (Lanjutan) ...................... 52 Gambar 4-11 Ilustrasi pembentukan matriks data2cluster .................... 52 Gambar 4-12 Kode Program affinity.m .............................................. 53 Gambar 4-13 Kode Program computeAffinity.m ................................ 54 Gambar 4-14 Kode Program spectral.m.............................................. 55 Gambar 4-15 Kode Program spectral.m (Lanjutan) ............................. 56 Gambar 4-16 Kode Program checkGraph.m ....................................... 57 Gambar 4-17 Kode Program expand .................................................. 58 Gambar 5-1 Data uji coba .................................................................. 60
xvi
Gambar 5-2 Citra ground truth ............................................................ 61 Gambar 5-3(a) Grafik Persentase Error Terhadap Perubahan Nilai
Global Scaling Factor. (a) block.jpg; (b) zimba.jpg; (c) rad.jpg; (d)
shadow.jpg; (e) stone.jpg; (f) rice.jpg .................................................. 66 Gambar 5-3(b) Grafik Persentase Error Terhadap Perubahan Nilai
Global Scaling Factor (Lanjutan). (g) potato.jpg; (h) text.jpg; (i)
fleck.jpg; (j) plane.jpg; (k) baby,jpg..................................................... 67 Gambar 5-4(a) Perbandingan citra hasil fixed size KDE dengan variable
size KDE ............................................................................................. 68 Gambar 5-4(b) Perbandingan citra hasil fixed size KDE dengan variable
size KDE (Lanjutan) ............................................................................ 69 Gambar 5-4(c) Perbandingan citra hasil fixed size KDE dengan variable
size KDE (Lanjutan) ............................................................................ 70 Gambar 5-4(d) Perbandingan citra hasil fixed size KDE dengan variable
size KDE (Lanjutan) ............................................................................ 71 Gambar 5-5 Grafik perbandingan kinerja fixed size KDE dengan
variable size KDE. (a) Perbandingan error yang dihasilkan. (b)
perbandingan running time .................................................................. 74 Gambar 5-6(a) Perbandingan citra hasil segmentasi menggunakan
MSSC dengan Normalized Cut ............................................................ 75 Gambar 5-6(b) Perbandingan citra hasil segmentasi dengan MSSC dan
Normalized Cut (Lanjutan) .................................................................. 76 Gambar 5-6(c) Perbandingan citra hasil segmentasi dengan MSSC dan
Normalized Cut (Lanjutan) .................................................................. 77 Gambar 5-6(d) Perbandingan citra hasil segmentasi dengan MSSC dan
Normalized Cut (Lanjutan) .................................................................. 78 Gambar 5-7(a) Grafik perbandingan error yang dihasilkan MSSC dan
Normalized Cut. .................................................................................. 80 Gambar 5-7(b) Grafik perbandingan running time yang dihasilkan
MSSC dan Normalized Cut. ................................................................ 81 Gambar 5-8 Grafik perbandingan nilai F-Measure MSSC dengan
Normalized Cut. .................................................................................. 82 Gambar 5-9(a) Perbandingan citra hasil segmentasi menggunakan
MSSC dengan Mean Shift ................................................................... 83 Gambar 5-9(b) Perbandingan citra hasil segmentasi menggunakan
MSSC dengan Mean Shift (Lanjutan) .................................................. 84 Gambar 5-9(c) Perbandingan citra hasil segmentasi menggunakan
MSSC dengan Mean Shift (Lanjutan) .................................................. 85
xvii
Gambar 5-9(d) Perbandingan citra hasil segmentasi menggunakan
MSSC dan Mean Shift (Lanjutan) ....................................................... 86 Gambar 5-10 Grafik perbandingan kinerja Mean Shift Spectral
Clustering dengan Mean Shift. (a) Perbandingan error yang dihasilkan.
(b) perbandingan konsumsi waktu ....................................................... 88 Gambar 5-11 Grafik perbandingan nilai F-Measure MSSC dengan Mean
Shift .................................................................................................... 90
xix
DAFTAR TABEL
Halaman Tabel 2.1 Perbandingan Nilai Scaling Factor: ...................................... 15 Tabel 3-1 Lingkungan implementasi perangkat lunak .......................... 45 Tabel 5-1 Lingkungan uji coba perangkat lunak .................................. 59 Tabel 5-2(a) Data Parameter Nilai Global Scaling Factor dan Persentase
Error ................................................................................................... 63 Tabel 5-2(b) Data Parameter Nilai Global Scaling Factor dan Persentase
Error (Lanjutan) .................................................................................. 64 Tabel 5-2(c) Data Parameter Nilai Global Scaling Factor dan Persentase
Error (Lanjutan) .................................................................................. 65 Tabel 5-3 Perbandingan error yang dihasilkan fixed size Kernel Density
Estimation dengan variable size Kernel Density Estimation ................ 72 Tabel 5-4 Perbandingan running time dari fixed size Kernel Density
Estimation dengan variable size Kernel Density Estimation ................ 73 Tabel 5-5 Perbandingan Nilai Error dari MSSC dengan Normalized Cut
........................................................................................................... 78 Tabel 5-6 Perbandingan Running Time dari MSSC dengan Normalized
Cut ...................................................................................................... 79 Tabel 5-7 Perbandingan F-Measure dari MSSC dengan Normalized Cut
........................................................................................................... 81 Tabel 5-8(a) Perbandingan Nilai Error MSSC dengan Mean Shift ....... 86 Tabel 5-8(b) Perbandingan Nilai Error MSSC dengan Mean Shift
(Lanjutan) ........................................................................................... 87 Tabel 5-9 Perbandingan Running Time MSSC dengan Mean Shift ...... 87 Tabel 5-10 Perbandingan F-Measure MSSC dengan Mean Shift ......... 89