HELMY HASNIAWATI
NRP. 7403 040 015
Dosen Pembimbing :
Ali Ridho Barakbah, S.Kom
NIP. 132 297 799
HELMY HASNIAWATI
NRP. 7403 040 015
Dosen Pembimbing :
Ali Ridho Barakbah, S.Kom
NIP. 132 297 799
iii
ABSTRACT
iv
KATA PENGANTAR
Assalamu’alaikum Wr. Wb.
Penulis
v
UCAPAN TERIMA KASIH
1. Aba dan ibu, adikku dan keluarga besar bani yusuf yang telah
memberikan dukungan doa, motivasi, materiil, kasih sayang dan
segala-galanya yang tidak akan pernah bisa terukur nilainya.
2. Bapak Dr. Ir. Titon Dutono, M.Eng selaku Direktur Politeknik
Elektronika Negeri Surabaya.
3. Bapak Iwan Syarief, M.Kom selaku Ketua Jurusan Teknik
Informatika.
4. Bapak Ali Ridho Barakbah, S.Kom dan ibu Nana Ramadijanti,
S.Kom, M. Kom selaku dosen pembimbing yang telah dengan sabar
dan arif memberikan ilmu, pengarahan, bimbingan, dan masukan-
masukan kepada penulis selama mengerjakan Tugas Akhir ini.
5. Para dosen penguji proyek akhir yang turut menyempurnakan tugas
proyek akhir ini.
6. Mas Perumdos M2 for supporting me no matter what, yang selalu
ngingetin dan marahin aku, serta semua doa, bantuan dan
pengertiannya, viel dank, sehr verliebt für immer und ewig.
7. Seluruh Bapak Ibu dosen PENS-ITS yang telah membagikan
ilmunya, mohon maaf penulis tidak dapat menyebutkan satu-
persatu.
8. Komunitas D4-IT 2003 (Cangkrukan Community), ical, yeye, isna,
nia, c.phan, andri, sixta, c.wan, c.rud, ary, jonathan, coy, noor, desi,
uul, danang, vie, wuwu, fian, khakha, ukin, bagus, ruby, we are so
a happy family even more, zu vergessen nicht. Luv u all
9. TMB 95 Community, yanti, pasth, cebee, oks + ryo, novi, bwat
keceriaan, kegilaan, tangis, dan tawa. Suwun bantuane.
10. Revi, Wulan, especially for sending a time to help me, viel dank.
11. De Ayhiel material ’05, da direpotin mulu ma mbaknya, viel dank
12. Semua pihak yang telah membantu dalam penyelesaian tugas akhir
ini yang tidak dapat penulis sebutkan satu-persatu.
vi
DAFTAR ISI
HALAMAN JUDUL........................................................................ i
LEMBAR PENGESAHAN ............................................................ ii
ABSTRAK.................................................................. . .................... iii
ABSTRACT................................................................ ..................... iv
KATA PENGANTAR..................................................................... v
UCAPAN TERIMA KASIH........................................................... vi
DAFTAR ISI.................................................................................... vii
DAFTAR GAMBAR....................................................................... ix
DAFTAR TABEL............................................................................ xi
BAB I PENDAHULUAN
1.1 Latar Belakang ................................................................. 1
1.2 Tujuan ............................................................................. 1
1.3 Rumusan Masalah ........................................................... 2
1.4 Batasan Masalah....................................................... ....... 2
1.5 Sistematika Penulisan...................................................... 2
vii
4.1.3 Pengambilan Grand Centroid Pear............................. 28
4.1.4 Pengambilan Grand Centroid Anggur........................ 29
4.1.5 Pengambilan Grand Centroid mangga....................... 29
4.2 Analisa Keseluruhan Data Training.................................... 30
4.3 Pengujian Sistem Identifikasi Buah.................................... 30
BAB V PENUTUP
5.1 Kesimpulan ...................................................................... . 59
5.2 Saran-saran....................................................................... . 60
viii
DAFTAR GAMBAR
ix
Gambar 4.15 Grafik Nilai Beda Tinggi gambar 5 ....................... 37
Gambar 4.16 Pengujian terhadap gambar 6................................. 38
Gambar 4.17 Grafik Nilai Beda Tinggi gambar 6 ....................... 39
Gambar 4.18 Pengujian terhadap gambar 7................................. 40
Gambar 4.19 Grafik Nilai Beda Tinggi gambar 7 ....................... 40
Gambar 4.20 Pengujian terhadap gambar 8................................. 41
Gambar 4.21 Grafik Nilai Beda Tinggi gambar 8. ...................... 42
Gambar 4.22 Pengujian terhadap gambar 9................................. 43
Gambar 4.23 Grafik Nilai Beda Tinggi gambar 9 ....................... 43
Gambar 4.24 Pengujian terhadap gambar 10............................... 45
Gambar 4.25 Grafik Nilai Beda Tinggi gambar 10 ..................... 45
Gambar 4.26 Pengujian terhadap gambar 11............................... 46
Gambar 4.27 Grafik Nilai Beda Tinggi gambar 11 ..................... 47
Gambar 4.28 Pengujian terhadap gambar 12............................... 48
Gambar 4.29 Grafik Nilai Beda Tinggi gambar 12 ..................... 48
Gambar 4.30 Pengujian terhadap gambar 13............................... 49
Gambar 4.31 Grafik Nilai Beda Tinggi gambar 13. .................... 49
Gambar 4.32 Pengujian terhadap gambar 14............................... 50
Gambar 4.33 Grafik Nilai Beda Tinggi gambar 14 ..................... 50
Gambar 4.34 Pengujian terhadap gambar 15............................... 51
Gambar 4.35 Grafik Nilai Beda Tinggi gambar 15 ..................... 51
Gambar 4.36 Pengujian terhadap gambar 16............................... 52
Gambar 4.37 Grafik Nilai Beda Tinggi gambar 16 ..................... 52
Gambar 4.38 Pengujian terhadap gambar 17............................... 53
Gambar 4.39 Grafik Nilai Beda Tinggi gambar 17 ..................... 53
Gambar 4.40 Pengujian terhadap gambar 18............................... 54
Gambar 4.41 Grafik Nilai Beda Tinggi gambar 18. .................... 54
Gambar 4.42 Pengujian terhadap gambar 19............................... 55
Gambar 4.43 Grafik Nilai Beda Tinggi gambar 19 ..................... 55
Gambar 4.44 Pengujian terhadap gambar 20............................... 56
Gambar 4.45 Grafik Nilai Beda Tinggi gambar 20 ..................... 56
x
DAFTAR TABEL
xi
xii
BAB I
PENDAHULUAN
1.2 TUJUAN
1
2
BAB 1: PENDAHULUAN
Dalam bab ini dijelaskan tentang latar belakang, tujuan,
rumusan masalah, batasan masalah, metodologi dan sistematika
penulisan.
3
BAB 5: PENUTUP
Bab ini berisi tentang kesimpulan dari keseluruhan pengerjaan
proyek akhir dan saran-saran untuk memperbaiki kelemahan sistem
yang telah dibuat demi pengembangan dan penyempurnaan di waktu
mendatang.
4
5
6
Karakteristik K-Means :
• K-means sangat cepat dalam proses clustering
• K-means sangat sensitif pada pembangkitan centroids awal
secara random
• Memungkinkan suatu cluster tidak mempunyai anggota
• Hasil clustering dengan K-means bersifat tidak unik ( selalu
berubah-ubah) - terkadang baik, terkadang jelek.
• K-means sangat sulit untuk mencapai global optimum
2. Hierarchical Clustering
Dengan metode ini, data tidak langsung dikelompokkan kedalam
beberapa cluster dalam 1 tahap, tetapi dimulai dari 1 cluster yang
mempunyai kesamaan, dan berjalan seterusnya selama beberapa
iterasi, hingga terbentuk beberapa cluster tertentu [2].
Arah hierarchical clustering dibagi 2, yaitu :
a) Divisive
- Dari 1 cluster ke k cluster
- Pembagian dari atas ke bawah (top to down division)
b) Agglomerative
- Dari N cluster ke k cluster
- Penggabungan dari bawah ke atas (down to top merge).
Algoritma Hierarchical clustering :
1. Menentukan k sebagai jumlah cluster yang ingin dibentuk
2. Setiap data dianggap sebagai cluster. Kalau N = jumlah data dan
c=jumlah cluster, berarti ada c=N.
3. Menghitung jarak antar cluster
4. Cari 2 cluster yang mempunyai jarak antar cluster yang paling
minimal dan gabungkan (berarti c=c-1).
5. Jika c>k, kembali ke langkah 3.
4 5 4 5 4 5
3 3 3
1 2 1 2 1 2
1 2 3 4 5 1 2 3 4 5 1 2 3 4 5
d (x,y) = n
(2.1)
∑
2
x i − y i
i = 1
7
Cluster 2
6 6
5 5
4
Jarak cluster 1
4
ke cluster 2
3 =
Jarak data 3 ke
2 3
data 4
1 1 2 Cluster 1
1 2 3 4 5 6 7
1 2 3 4 5 6 7
1 1 2 Cluster 1
1 2 3 4 5 6 7
7
Cluster 2 Jarak cluster 1 ke
6 6
a
cluster 2
5 5 =
∑ Jarak antar data
4 4 nxm
3
Dimana :
2 3 n=jumlah data cluster 1
Cluster 1 m=jumlah data cluster 2
1 1 2
1 2 3 4 5 6 7
1 n
( ) (2.2)
∑ yi − y c
2
Vc 2 =
nc − 1 i =1
Dimana,
Vc2 = varian pada cluster c
c = 1..k, dimana k = jumlah cluster
nc = jumlah data pada cluster c
yi = data ke-i pada suatu cluste
yi = rata-rata dari data pada suatu cluster
Selanjutnya dari nilai varian diatas, kita bisa menghitung nilai variance
within cluster (Vw) dengan rumus :
1 c (2.3)
Vw = ∑ (ni − 1) ⋅ Vi 2
N − c i =1
Dimana,
N = Jumlah semua data
ni = Jumlah data cluster i
Vi= Varian pada cluster i
1
( ) (2.4)
c
∑
2
Vb = ni y i − y
c −1 i =1
Dimana,
y = rata-rata dari y i
Salah satu metode yang digunakan untuk menentukan cluster yang ideal
adalah batasan variance [7], yaitu dengan menghitung kepadatan
13
1. Hill-climbing
Pada Hill-climbing didefinisikan bahwa kemungkinan mencapai
global optimum terletak pada tahap ke-i, jika memenuhi persamaan
berikut :
vi +1 > α .vi (2.6)
Dimana, α adalah nilai tinggi.
Nilai tinggi digunakan untuk menentukan seberapa mungkin metode
ini mencapai global optimum. Nilai α yang biasa digunakan adalah
2,3, dan 4.
Persamaan diatas, diperoleh berdasar analisa pergerakan varian pola
Hill-climbing berikut:
2. Valley-tracing
Pada Valley-tracing didefinisikan bahwa kemungkinan mencapai
global optimum terletak pada tahap ke-i, jika memenuhi persamaan
berikut :
( v i −1 ≥ v i ) ∩ ( v > vi ) (2.7)
i +1
∂
( )
= v i +1 − v i + ( v i −1 − v i ) (2.8)
= (v i + 1 + v i − 1 ) − (2 × v i )
φ = max (∂ ) (2.10)
nilaiterde katke max (∂ )
Dimana nilaiterde katke max (∂ ) adalah nilai kandidat max(∂)
sebelumnya. Nilai φ yang lebih besar dari 2, menunjukkan cluster yang
terbentuk merupakan cluster yang well-separated (terpisah dengan
baik).
(255, 0, 0)
(255, 255, 0)
(0, 255, 0)
(0, 0, 255)
(128,128,128)
(255, 0, 255)
(0, 0, 0)
Identifikasi centroid
hasil dengan centroid
17
18
kemudian satu persatu centroid buah disimpan dalam database, dan diberi
label sesuai dengan nama buah yang bersangkutan. Image input atau
gambar input, dalam hal ini merupakan gambar sekumpulan buah yang
akan diidentifikasi, selanjutnya diproses dengan metode Single Linkage
Hierarchical method (SLHM) yang dioptimasi dengan metode valley-
tracing sehingga mampu melakukan clustering secara otomatis sebanyak
jumlah jenis buah yang ada pada gambar input. Setelah dilakukan proses
clustering otomatis, maka akan didapat nilai centroid dari masing-masing
hasil cluster. Nilai centroid hasil ini kemudian dicari kedekatannya dengan
nilai centoid data training yang sebelumnya telah disimpan pada database
dengan Euclidean distance. Dari proses tersebut akan diketahui jumlah
jenis buah yang ada pada gambar dan namanya yang diperoleh dari label
pada database dan kemudian di-outputkan.
3.2.1 CAPTURE
Proses capture adalah proses pengambilan gambar melalui
kamera. Teknik pengambilan gambar yang digunakan adalah meletakkan
buah yang akan dikenali pada tempat yang disediakan di depan kamera.
Kamera yang digunakan adalah kamera digital. Gambar yang akan kita
pakai dibagi menjadi dua kategori, yaitu gambar test/input dan gambar
training. Dilakukan cara yang berbeda pula terhadap cara capture kedua
kategori tersebut.
Pada gambar training, masing-masing jenis buah yang dipakai
sebagai gambar training, dilakukan 5 kali capture dengan posisi buah
diubah-ubah. Sedangkan gambar input tidak ada aturan, kecuali bahwa
gambar input merupakan capture kumpulan buah, bukan capture buah
tunggal seperti pada training.
Dalam mengcapture gambar dari kamera , ada beberapa hal yang
harus diperhatikan , yaitu :
• Spesifikasi Kamera
Kamera yang digunakan untuk mengambil gambar adalah kamera
digital. Jarak kamera dengan buah saat identifikasi adalah tetap .
• Seting Kamera
Seting kamera untuk gambar training dan gambar input untuk
identifikasi harus sama, agar buah dapat dikenali.
• Seting Tempat
Seting tempat meletakkan obyek tetap, yaitu background warna putih
19
Gambar input/test
Gambar input berupa 10 buah gambar kumpulan buah.
img1.getRGB(0,0,width,height,pixel,0,width);
for (int y=0;y<width;y++){
for (int x=0;x<height;x++){
c = pixel[x+height*y];
r = (c & 0x00ff0000) >> 16;
g = (c & 0x0000ff00) >> 8;
b = c & 0x000000ff;
data[m][0]= r;
data[m][1]= g;
data[m][2]= b;
K-Means
Clustering
tersebut, akan diperoleh 3 buah nilai centroid, yaitu nilai centroid buah itu
sendiri, nilai centroid background dan nilai centroid bayang-bayang.
Karena yang kita ingin dapatkan hanya nilai centroid dari buah, maka
dilakukan proses menghilangkan background dan bayang-bayang.
Algoritmanya sebagai berikut :
1. Dari 3 centroid yang didapat, masing-masing hitung nilai member/
anggotanya
2. Bandingkan ketiganya, yang paling kecil anggotanya (minimum)
diabaikan atau dibuang, karena centroid dengan jumlah anggota kecil
merepresentasikan nilai noise.
3. Pada 2 sisa centroid yang ada, dilakukan pengukur jarak masing-
masing nilai R,G,B-nya terhadap nilai 255,255,255 (representasi nilai
putih/background) dengan euqlidean distance.
4. Bandingkan keduanya, nilai jarak terkecil (minimum) diabaikan
karena dekat dengan nilai putih (255,255,255), diasumsikan sebagai
background. Centroid yang tersisa itulah centroid buah yang dicari.
/* ----- eliminasi noise ----- */
min3=minvar[0];
for (int j=1;j<3;j++){
if (minvar[j]< min3)
min3=minvar[j];
}
/*----- Eliminasi background putih ----- */
tempcentro = new int[3][3];
double[] sum = new double[3];
for (int y=0;y<cluster;y++){
if ( minvar[y]!= min3 ){
sum[y]=0 ;
for (int i=0;i<3;i++){
tempcentro[y][i] = 255;
sum[y] = sum[y]+ Math.pow((
tempcentro[y][i]- centAwal[y][i]),2);
}
sum[y]=Math.round((float)Math.sqrt(sum[y]));
}
else
sum[y]=0 ;
}
max1 = (int) sum[0];max2 = 0 ;
for (int y=0;y<cluster;y++){
if (sum[y] > max1){
max1 = (int) sum[y];
max2 = y;
}
}
23
R G B Buah
80 28 30 Apel
115 68 37 Jeruk
132 31 34 Anggur
...... ..... ......... ..............
Single linkage
Hierarchical
Method
Pada gambar desain GUI gambar 3.11 terdapat 11 bagian yang merupakan
informasi dalam menjalankan proses training dan identifikasi buah.
1. Untuk menampilkan gambar training yang akan diproses
2. Keseluruhan proses clustering dengan K-Means, dengan hasil nilai
centroid buah training.
3. Menampilkan nilai grand centroid, setelah penekanan tombol save
4. Nama buah yang akan dipakai sebagai label atas hasil grand centroid
yang diperoleh dari suatu gambar training.
5. Untuk menyimpan nilai grand centroid dan label pada database, juga
menampilkan nilai grand centroid dari gambar training.
6. Untuk menghapus data dari database, dengan cara select data dari list
yang digunakan menampilkan database.
25
1 8
2 9
3
10
4
12
5 6
11
7
13
27
28
Pengujian 1 :
500
400
Nilai Beda Tinggi
300
200
100
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 2 :
Dari gambar 4.8 diperoleh 4 buah cluster. Nilai tersebut didapat dari
nilai ∂ yang pada program diepresentasikan dengan theta. Cluster yang
dianggap optimal merupakan tahap pembentukan cluster yang
mempunyai nilai ∂max. Berikut grafik nilai ∂.
800
700
Nilai Beda Tinggi
600
500
400
300
200
100
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p Pe m be ntuka n Cluste r
Pengujian 3 :
5000
4000
Nilai Beda Tinggi
3000
2000
1000
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 4 :
Dari gambar 4.12 diperoleh 3 buah cluster. Nilai tersebut didapat dari
nilai ∂ yang pada program diepresentasikan dengan theta. Cluster yang
dianggap optimal merupakan tahap pembentukan cluster yang
mempunyai nilai ∂max, dimana nilai ∂max terdapat pada tahap
pembentukan cluster sebanyak 3. Berikut grafik nilai ∂.
N ilai B ed a T ing gi
6000
5000
Nilai Beda Tinggi
4000
3000
2000
1000
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 5 :
3000
2500
Nilai Beda Tinggi
2000
1500
1000
500
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Tahap Pembentukan Cluster
Pengujian 6 :
Dari gambar 4.16 diperoleh 4 buah cluster. Nilai tersebut didapat dari
nilai ∂ yang pada program diepresentasikan dengan theta. Cluster yang
dianggap optimal merupakan tahap pembentukan cluster yang
mempunyai nilai ∂max, dimana nilai ∂max terdapat pada tahap
pembentukan cluster sebanyak 4. Berikut grafik nilai ∂.
N ilai B eda Tinggi
800
700
Nilai Beda Tinggi
600
500
400
300
200
100
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 7 :
800
700
Nilai Beda Tinggi
600
500
400
300
200
100
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 8 :
Dari gambar 4.20 diperoleh 3 buah cluster. Nilai tersebut didapat dari
Gambar
nilai ∂ yang pada Pengujian terhadap
4.20diepresentasikan
program gambar
dengan 8 Cluster yang
theta.
42
3500
3000
Nilai Beda Tinggi
2500
2000
1500
1000
500
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 9 :
2500
2000
Nilai Beda Tinggi
1500
1000
500
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 10 :
45
N ilai B ed a T in gg i
3000
2500
Nilai Beda Tinggi
2000
1500
1000
500
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 11 :
Dari gambar 4.24 diperoleh 3 buah cluster. Nilai tersebut didapat dari
nilai ∂ yang pada program diepresentasikan dengan theta. Cluster yang
dianggap optimal merupakan tahap pembentukan cluster yang
mempunyai nilai ∂max, dimana nilai ∂max terdapat pada tahap
pembentukan cluster sebanyak 3. Berikut grafik nilai ∂.
N ilai B eda Ting gi
300
250
Nilai Beda Tinggi
200
150
100
50
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 12 :
160
140
Nilai Beda Tinggi
120
100
80
60
40
20
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 13 :
2500
2000
Nilai Beda Tinggi
1500
1000
500
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p Pe m be ntuka n Cluste r
Pengujian 14 :
1400
1200
Nilai Beda Tinggi
1000
800
600
400
200
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 15 :
800
700
Nilai Beda Tinggi
600
500
400
300
200
100
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 16 :
160
140
Nilai Beda Tinggi
120
100
80
60
40
20
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3
Ta ha p P e m be ntuka n Cluste r
Pengujian 17 :
3500
3000
Nilai Beda Tinggi
2500
2000
1500
1000
500
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 18 :
2500
2000
Nilai Beda Tinggi
1500
1000
500
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 19 :
1600
1400
Nilai Beda Tinggi
1200
1000
800
600
400
200
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
Pengujian 20 :
1600
1400
Nilai Beda Tinggi
1200
1000
800
600
400
200
0
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
Ta ha p P e m be ntuka n Cluste r
5.1 KESIMPULAN
59
60
61
62
PROFIL PENULIS