MK3383 Teknik Pengolahan Citra
Image Segmentation
Disadur dari: Departement Teknik Informatika, IT Telkom, Bandung
Segmentasi Citra • Proses untuk memisahkan citra menjadi bagianbagian pembentuknya (region) – Merupakan fase penting dalam analisis citra otomatis pengenalan objek
• Segmentasi juga biasa dilakukan sebagai langkah awal untuk melaksanakan klasifikasi objek.
Contoh Aplikasi Segmentasi Objek
Citra
Kegunaan Segmentasi
Acuan yang Digunakan
Mobil
Mobil, jalan, dan
Pelacakan mobil
latarbelakang Struktur
Foto satelit
warna Pengklasifikasian area Tekstur dan
permukaan bumi Wajah orang
warna Kerumunan orang
Pengenalan wajah
di pasar
Apel
Gerakan dan
Warna, bentuk, dan tekstur
Kumpulan apel
Pemilahan buah apel
Bentuk, warna,
pada ban berjalan
berdasarkan ukuran
ukuran
Pendekatan algoritma segmentasi • Pendekatan algoritma segmentasi: – Berdasar discontinuity perubahan warna mendadak deteksi titik, garis, dan tepi – Berdasar similarity (kesamaan)
• Pengelompokan berdasar distribusi properti pixel (warna), contoh: thresholding • Mencari region secara langsung berdasar ‘persamaan’ karakteristik suatu area, contoh: region growing, split & merge
DISCONTINUITY PADA SEGMENTASI CITRA
DETEKSI TEPI (EDGE DETECTION)
• Tepi (edge) adalah perubahan nilai intensitas derajat keabuan yang mendadak (besar) dalam jarak yang singkat • Himpunan piksel yang terhubung dan terletak pada batas antara dua daerah yang berbeda pada suatu citra. • Tepi mencirikan batas-batas objek dan karena itu tepi berguna untuk proses segmentasi dan identifikasi objek di dalam citra.
• Tujuan operasi pendeteksian tepi adalah untuk meningkatkan penampakan garis batas suatu daerah atau objek di dalam citra.
Jenis Tepi • Tepi curam: Tepi dengan perubahan intensitas yang tajam. Arah tepi berkisar 90°. • Tepi landai: tepi dengan sudut arah yang kecil. terdiri dari sejumlah tepi-tepi lokal yang lokasinya berdekatan. • Tepi yang mengandung derau (noise) Umumnya tepi yang terdapat pada aplikasi computer vision mengandung derau. Operasi peningkatan kualitas citra (image enhancement) dapat dilakukan terlebih dahulu sebelum pendeteksian tepi.
Teknik Mendeteksi Tepi • Operator gradien pertama (differential gradient): operator gradient, sobel, prewitt, robert, center-difference • Operator turunan kedua (Laplacian) • Operator kompas (compass operator)
Pendeteksian Tepi dengan Operator Gradien Pertama • Kekuatan tepi merupakan magnitudo dari gradien dapat dihitung dengan:
• Hasil pendeteksian tepi adalah citra tepi g(x,y) yang nilai setiap pixelnnya menyatakan kekuatan tepi : g(x,y) = G[f(x,y)] • Keputusan apakah suatu pixel merupakan tepi atau bukan tepi dinyatakan dengan operasi pengambangan sebagai berikut:
Titik-titik yang Dilibatkan pada Perhitungan Gradien
Pendeteksian Tepi dengan Operator Gradien Pertama Perubahan intensitas yang besar dalam jarak yang singkat dipandang sebagai fungsi yang memiliki kemiringan yang besar. Kemiringan dilakukan dengan menghitung turunan pertama (gradient).
Contoh Pendeteksian Tepi dengan Operator Gradien Pertama Misalkan terdapat sebuah 5 x 5 citra dengan dua derajat keabuan sebagai berikut
Contoh Pendeteksian Tepi dengan Operator Gradien Pertama
Dengan aturan (ii), G[f(x,y)] adalah:
Jika T = 1, maka hasil citra g(x,y) adalah:
Operator Gradien Pertama yang Lain
Latihan Soal Robert Operator
SIMILARITY
Thresholding • Asumsi: – antar objek yang akan dipisahkan memiliki intensitas warna yang berlainan – masing-masing objek memiliki warna yang hampir seragam • Operasi: menempatkan satu atau lebih threshold pada sumbu datar histogram untuk memisahkan kelompok warna pixel yang diduga sebagai penyusun objek
Contoh thresholding dgn g(x,y)=konstanta
T1
T
1 g ( x, y ) 0
if f ( x, y ) T if f ( x, y ) T
0.0 g ( x, y ) 0.5 1.0
T2
f ( x, y ) T1 T1 f ( x, y ) T2 T2 f ( x, y )
Contoh thresholding dgn g(x,y)=rata-rata warna per cluster
Jenis threshold T T [ x, y, p( x, y), f ( x, y)] f(x,y): gray level pada titik (x,y) p(x,y): properti lokal dari titik (x,y); misal: gray level rata-rata dari area ketetanggaan yang berpusat di (x,y)
• Global T hanya tergantung dari f(x,y) • Local T dipengaruhi oleh f(x,y) dan p(x,y) • Dynamic T tergantung dari koordinat spasial titik (x,y)
Kelemahan thresholding • Penentuan nilai threshold yang tepat?
• Bermasalah jika kemunculan tiap warna dalam citra cenderung sama tidak bisa diprediksi batas antar objek
PENDEKATAN LAIN DALAM PROSES SEGMENTASI
REGION GROWING
Pendekatan lain dalam proses segmentasi • Segmentasi berorientasi daerah (region) • Jika R adalah daerah keseluruhan citra segmentasi membagi R menjadi R1, R2, …, Rn sedemikian sehingga tercapai syarat segmentasi: n
(a)
R
i
R
i 1
(b) Ri region yang terhubung , i 1,2,..., n (c) Ri R j untuk semua i dan j, i j (d) P( Ri ) TRUE, i 1,2,..., n (e) P( Ri R j ) FALSE, i j
Region Growing • Prosedur yang mengelompokkan pixel atau sub-region menjadi region yang lebih besar • Pendekatan paling sederhana: pixel aggregation – Mulai dengan sekumpulan titik ‘benih’ (seed) – Dari titik-titik tsb region diperluas dengan menambahkan titiktitik tetangganya yang memiliki properti yang sama (misal: gray level, tekstur, warna) – Jika tidak ada lagi titik tetangga yang dapat ditambahkan lagi, maka proses untuk region tersebut dihentikan
Aturan Ketetanggaan
Ilustrasi Seed
0
0
5
6
7
a
a
b
b
b
a
a
a
a
a
1
1
5
6
7
a
a
b
b
b
a
a
a
a
a
0
1
6
7
7
a
a
b
b
b
a
a
a
a
a
2
0
7
6
6
a
a
b
b
b
a
a
a
a
a
0
1
5
6
5
a
a
b
b
b
a
a
a
a
a
Citra asli
Hasil segmentasi; perbedaan warna absolut dg seed < 3
Hasil segmentasi; perbedaan warna absolut dg seed < 8
Contoh pada Citra Biner
Menggunakan 4-tetangga
Hasil Region Growing (1)
Gambar diambil dari http://astro.temple.edu/~siddu
Hasil Region Growing
Gambar diambil dari http://astro.temple.edu/~siddu
Hasil Region Growing
Masalah dg region growing • Penentuan lokasi seeds yang tepat – Tergantung aplikasi – Misal: warna yang sering muncul, warna terang dll
• Penentuan properti yang tepat untuk mengelompokkan titik menjadi region – Tergantung masalah dan data citra yang tersedia – Misal: intensitas, tekstur, data multispektral dll
• Kondisi penghenti – Dasar: jika tidak ada lagi titik tetangga yang memenuhi syarat – Tambahan: ukuran region, bentuk dll
SPLIT AND MERGE
Split & Merge • Membagi citra menjadi sekumpulan region acak yang disjoin kemudian menggabungkan atau kembali membaginya hingga terpenuhi syarat segmentasi (a) – (e) • Algoritma bersifat rekursif • Memanfaatkan quadtree
Ilustrasi R R1
R2 R1 R41
R42
R43
R44
R2
R3
R4
R3
Citra terpartisi
R41
R42
Representasi Quadtree
R43
R44
Algoritma rekursif 1. Bagi (split) setiap region Ri menjadi 4 quadran disjoin jika P(Ri)=FALSE 2. Gabung (merge) setiap region Rj dg Rk jika P(Rj Rk)=TRUE 3. Berhenti jika tidak ada split maupun merge yang bisa dilakukan
Contoh • Objek tunggal dg intensitas warna konstan • Intensitas latar belakang konstan • P(Ri)=TRUE jika semua pixel dalam Ri memiliki intensitas warna yang sama
Operasi: split
Operasi: split
Operasi: split & merge
Operasi: merge
Aplikasi segmentasi: magic wand
Referensi • Abdul Kadir dan Adhi Susanto, Teori dan Aplikasi Pengolahan Citra, Yogyakarta: Andi • Departement Teknik Informatika, IT Telkom • http://angeljohnsy.blogspot.com/2011/12/sob el-edge-detection.html