Image Segmentation using K-Means

Setelah sekian lama ngeblog dengan isi yang ngga jelas alias geje. isinya pun cuhatan kegalauan saya sehari2 selama di Korea. hiks.. hikss… sekarang mau kembali ke jalan yang benar. Pada awalnya blog ini berisi dokumentasi tips dan trik programming, dengan harapan ketika saya lupa dan tiba2 teringat kalau saya ternyata sudah pernah mengerjakan hal ini sebelumnya, maka saya tinggal membuka dokumentasi yang ada di blog. Namun seiring berjalannya waktu blog ini selain untuk dokumentasi ternyata juga menampung curhatan saya yang galau. heuuheuheu…

Kali ini gw mau ngebahas terntang algoritma K-means. Algoritma K-means merupakan algoritma untuk pengklasifikasian data-data yang sifatnya sejenis. algoritma ini sering di gunakan dalam bidang ilmu pattern recognition, machine learning dan bisa di aplikasikan ke data mining maupun image processing. Fokus saya kali ini adalah implementasi K-Means ke bidang image processing untuk segmentasi gambar.

Segmentasi gambar merupakan salah satu teknik yang di gunakan di image processing. Gunanya adalah untuk memisahkan warna dalam suatu gambar ke dalam beberapa cluster atau kelompok. Dalam hal ini bisa juga di gunakan untuk memisahkan bagian foreground dan background suatu gambar. contohnya adalah gambar dibawah ini.

Original Image

Original Image

dibawah ini hasil segmentasi gambar dengan nilai K =2

K = 2

Nilai K = 2

dibawah ini hasil segmentasi gambar dengan nilai K =3

K=3

K=3

Seperti yang terlihat diatas algoritma K-means bisa mengelompokan warna gambar menjadi K bagian.

Berikut saya jelaskan algoritma K-means.
1. Tentukan nilai K (k=jumlah kelompok)
2. Tentukan nilai random yang menjadi pusat dari kelompok
3. Hitung distance metric dengan menggunakan euclidean distance
4. Pindahkan pusat dari kelompok
5. Kembali ke langkah 3 sampai sampai tidak ada perubahan

While Converged
For each point
	Assign label
End
For each cluster
	Compute mean
End
End

Metode ini merupakan metode yang sangat populer dan mendasar pada clustering namun demikian ada kekurangannya yaitu. kita harus menentukan nilai K. nilai K yang terbaik dilakukan dengan mencoba berbagai variasi nilai K. kekurangan lainnya adalah tingkat akurasi dari segmentasi gambar dengan K-means tidak selalu akurat. Sebagai penutup maka saya akan memberikan contoh program dalam bahasa Matlab disini Tutorial Matlab bisa di lihat http://www.mathworks.com/products/image/examples.html?file=/products/demos/shipping/images/ipexhistology.html

One thought on “Image Segmentation using K-Means

Leave a Reply

Your email address will not be published. Required fields are marked *

*
*
Website