edit modul 4pcd.docx
TRANSCRIPT
7/27/2019 EDIT MODUL 4PCD.docx
http://slidepdf.com/reader/full/edit-modul-4pcddocx 1/7
MODUL 4
MORFOLOGI DAN SEGMENTASI CITRA
I.
MORFOLOGI CITRAMorfologi adalah cabang dari pengolahan citra digital yang berguna untuk menganalisa bentuk dari citra.Operasi matematika yang mendukung morfologi citra adalah translasi dan refleksi.
a. TranslasiDiasumsikan A adalah himpunan pixel pada citra biner dan w = ( x, y) adalah koordinat suatu titik.Kemudian Aw adalah himpunan A ditranslasi / digeser pada arah ( x, y), seperti pada persamaan
berikut:
Contoh:
Himpunan A digeser pada arah x dan y sesuai dengan nilai w yang diberikan. b. Refleksi
Jika A adalah himpunan pixel kemudian dilakukan refleksi / pencerminan dengan notasi maka
persamaan matematikanya sebagai berikut:
Contoh:
reflection
origin
Operasi morfologi citra terdiri dari:1. Dilasi
Diasumsikan A dan B adalah himpunan pixel kemudian dilasi A oleh B dinotasikan
yang didefinisikan sebagai:
we translate by those cooordinates, then take the union of all these translations.
setiap titik , kemudian melakukan translasi A maka diambil operasi union/ gabungan darisemua translasi ini. Berikut ini persamaan matematika dari operasi dilasi:
Untuk dilasi, A adalah citra yang diproses dan B adalah himpunan kecil dari pixel atau disebut
sebagai structuring element atau kernel. Pada matlab dideklarasikan sebagai berikut:
imdilate(image,kernel)
Contoh:
Aba y xba Aw ,:,,
Aˆ
A y x y x A ),(:,ˆ
B A
B x
x A B A
A B B A
B x
Bvu A y xvu y x B A ),(,),(:),(),(
7/27/2019 EDIT MODUL 4PCD.docx
http://slidepdf.com/reader/full/edit-modul-4pcddocx 2/7
2. Erosi
Given sets A and, the erosion of by written , is defined as :Diberikan himpunan A dan B, erosi A oleh B, ditulis A-B didefinisikan sebagai:
;
For erosion, we generally assume that A is the image being processed and B is a small set of pixels. In this case B is referred to as a structuring element or as kernel Untuk erosi, diasumsikan A adalah citra yang diproses dan B adalah himpunan kecil dari pixelatau disebut sebagai structuring element atau kernel. Pada matlab dideklarasikan sebagai
berikut:
imerode(image,kernel)
Contoh:
HUBUNGAN ANTARA EROSI DAN DILASI. Dari penjelasan-penjelasansebelumnya, dapat dilihat bahwa erosi merupakan invers dari dilasi begitu juga
sebaliknya. Lebih tepatnya lagi bahwa, complement dari sebuah erosi sama
dengan dilasi dari complementnya :dan
}:{ A Bw B A w Bb
b A B A
B A B A ˆ B A B A ˆ
7/27/2019 EDIT MODUL 4PCD.docx
http://slidepdf.com/reader/full/edit-modul-4pcddocx 3/7
3. OpeningOperasi ini merupakan operasi tingkat kedua yang dibangun berdasarkan operasi dasar dilasi dan
erosi. Misalkan terdapat himpunan A dan sebuah kernel B, operasi opening A oleh B dinotasikandengan A o B yang didefinisikan sebagai berikut :
Operasi Opening terdiri dari erosi yang diikuti dengan dilasi. Definisi yang sama dari operasiopening adalah:
Operasi opening A oleh B adalah union dari semua translasi B yang tepat berada pada A.
Perbedaan dengan erosi adalah: erosi terdiri semua titik pusat B yang translasinya tepat berada pada A.
4. ClosingSama halnya dengan operasi opening, operasi closing merupakan operasi dilasi yang diikuti
dengan erosi dan dilambangkan dengan A • B dan didefinisikan sebagai berikut:
Contoh Aplikasi:Penghilangan Noise
Contoh dari citra ini dapat dilihat pada gambar dibawah ini. Proses erosi (A-B) dapat menghapus
pixel-pixel berwarna hitam, tetapi proses ini dapat memperbesar lubang. Kita dapat mengisi
lubang-lubang ini dengan melakukan operasi dilasi dua kali:
Dilasi pertama akan mengembalikan lubang ke ukuran asli; sedangkan dilasi yang kedua akan
menghapus lubang-lubang tersebut. Hal ini dapat memperbesar objek pada citra dan kita dapat
mengurangi ukuran object ini dengan operasi erosi yang terakhir.
Jika kita perhatikan dua operasi pertama merupakan operasi opening sedangkan dua operasi
berikutnya adalah operasi closing. Maka dapat dikatakan bahwa jika kita ingin menghilangkan
noise yang terdapat pada citra maka kita dapat melakukan operasi opening yang kemudiandiikuti dengan operasi closing :
Operasi ini disebut dengan morphological filtering
7/27/2019 EDIT MODUL 4PCD.docx
http://slidepdf.com/reader/full/edit-modul-4pcddocx 4/7
Gambar citra yang didalamnya terdapat noise dan citra hasil operasi opening yang diikuti dengan
operasi closing dapat dilihat pada gambar dibawah ini:
Gambar x. Proses morphological filtering dengan kernel yang berbeda pada citra yang
didalamnya terdapat noise. (a) citra noise ; (b) hasil filtering dengan kernel square ; (c) hasil
filtering dengan kernel cross
II. SEGMENTASI CITRASegmentasi citra (image segmentation) mempunyai arti membagi suatu citra menjadi wilayah wilayahyang homogen berdasarkan kriteria keserupaan yang tertentu antara tingkat keabuan suatu piksel dengan
tingkat keabuan piksel – piksel tetangganya, kemudian hasil dari proses segmentasi ini akan digunakanuntuk proses tingkat tinggi lebih lanjut yang dapat dilakukan terhadap suatu citra, misalnya prosesklasifikasi citra dan proses identifikasi objek
Terdapat dua pendekatan utama dalam segmentasi citra yaitu didasarkan pada tepi (edge-based) dandidasarkan pada wilayah (region-based). Segmentasi didasarkan pada tepi membagi citra berdasarkan
diskontinuitas di antara sub-wilayah (sub-region), sedangkan segmentasi yang didasarkan pada wilayah
bekerjanya berdasarkan keseragaman yang ada pada sub-wilayah tersebut. Dalam computer vision,segmentasi mengacu pada proses pembagian citra digital ke dalam multiple region (himpunan pixel).Tujuan akhir dari segmentasi adalah menyederhanakan dan atau merubah representasi suatu citra kedalam gambaran yang lebih mempunyai arti dan lebih mudah untuk di analisa. Segmentasi citra secara
khusus digunakan untuk melokalisasi objek atau batas ( bisa berupa garis, kurva, dll) dalam citra. Hasildari segmentasi citra adalah sekumpulan wilayah yang melingkupi citra tersebut, atau sekumpulan kontur
yang diekstrak dari citra (pada deteksi tepi). Contoh segmentasi dapat dilihat dalam gambar berikut :Tiap piksel dalam suatu wilayah mempunyai kesamaan karakteristik atau propeti yang dapat dihitung
(computed property), seperti : warna (color), intensitas (intensity),dan tekstur (texture).
Gambar 1.1 Contoh Segmentasi
7/27/2019 EDIT MODUL 4PCD.docx
http://slidepdf.com/reader/full/edit-modul-4pcddocx 5/7
Segmentasi wilayah merupakan pendekatan lanjutan dari deteksi tepi. Dalam deteksi tepi segmentasi citradilakukan melalui identifikasi batas-batas objek (boundaries of object). Batas merupakan lokasi dimana
terjadi perubahan intensitas. Dalam pendekatan didasarkan pada wilayah, maka identifikasi dilakukanmelalui wilayah yang terdapat dalam objek tersebut. Adapun beberapa teknik atau algoritma yang
termasuk dalam segmentasi citra yaitu :
1. Metode pengelompokkan (Clustering Methods).2. Histogram-Based Methods.
3. Edge Detection Methods.4. Region Growing Methods.5. Level Set Methods
6. Graph Partitioning Methods7. Watershed Transformation
8. Model based segmentation9. Multi-scale segmentation10. Semi-automatic segmentation
Metodologi berbasis region dibagi menjadi :
1. Metodologi berbasis transformasi regionMetodologi berbasis transformasi region (wilayah) dibagi menjadi :
Region Growing
Region Splitting
Region Merging
Segmentasi berbasis Region Growing
Contoh segmentasi region growing yaitu transformasi watershed.
2. Metodologi berbasis histogram
Berikut adalah CODE MATLAB UNTUK REGION GROWING
function regrow(x)
f1=imread(x);
f=double(f1);s=255;
t=65;if numel(s)==1
si=f==s;s1=s;
else
si=bwmorph(s,'shrink',Inf);j=find(si);
s1=f(j);endti=false(size(f));
for k=1:length(s1)sv=s1(k);
s=abs(f-sv)<=t;ti=ti|s;
end
[g nr]=bwlabel(imreconstruct(si,ti));
7/27/2019 EDIT MODUL 4PCD.docx
http://slidepdf.com/reader/full/edit-modul-4pcddocx 6/7
figure,imshow(f1),title(Citra asal);
figure,imshow(g),title('Citra hasil segmentasi Region Growing');
display('No: of regions');nr
end
Dengan fungsi diatas lakukan proses segmentasi citra pada citra cameramen.tif
Berikut code fungsi watershed yang sudah disediakan di Matlab :%Segmentasi Watershed img=imread('cameraman.tif'); img_wat=watershed(img); figure, imshow (img); figure, imshow (img_wat);
%Menampilkan hasil segmentasi watershed dengan pewarnaan agar terlihat %bentuk segmen per objek Lrgb = label2rgb(img_wat, 'spring', 'c', 'shuffle');
figure, imshow(Lrgb) title('Colored watershed label matrix (Lrgb)')
Dibawah ini adalah code fungsi watershed yang menggunakan distance transform :
img=imread('cameraman.tif');bw = im2bw(img);
D = bwdist(bw);DL = watershed(D);bgm = DL == 0;
figure, imshow (img); figure, imshow (bw); figure, imshow(bgm), title('Watershed ridge lines (bgm)')
7/27/2019 EDIT MODUL 4PCD.docx
http://slidepdf.com/reader/full/edit-modul-4pcddocx 7/7
Tugas
1. Cobalah semua program diatas (sub bab morfologi maupun sub bab segmentasi), lakukan
percobaan sesuai dengan perintah diatas. Kemudian gantilah dengan citra yang lain,
masing-masing bandingkan dengan citra lain. Berikan analisa anda !!!