Anda di halaman 1dari 33

Pengolahan Citra

(TIF05)
Deteksi Tepi / Edge Detection
Segmentasi
Metode untuk mengubah citra input ke dalam
citra output berdasarkan atribut yang diambil
dari citra
Tujuan: Membagi wilayah-wilayah yang
homogen
Membagi citra ke dalam daerah intensitasnya
masing-masing, agar dapat membedakan
antara objek dengan background


Jenis Algoritma Segmentasi Citra
Diskontinuitas
Pembagian citra berdasarkan perbedaan dalam
intensitasnya
Contoh: deteksi titik, deteksi garis, deteksi tepi
Similaritas
Pembagian citra berdasarkan kesamaan kriteria
yang dimiliki
Contoh: thresholding, mean clustering, region
growing, region splitting, region merging
Deteksi Titik
Mengisolasi suatu titik yang secara signifikan
berbeda dengan titik-titik di sekitarnya.
Persamaan:
|R| > T
T tresshold positif; R nilai persamaan
Kernel yang dipergunakan:

=
=
9
1 i
i i
Z W R
(
(
(




1 1 1
1 8 1
1 1 1
Contoh Deteksi Titik
Deteksi Garis
Mencocokkan dengan kernel dan
menunjukkan bagian tertentu yang berbeda
secara garis lurus vertikal, horisontal, diagonal
kanan maupun diagonal kiri.
Persamaan :
|R
i
| > |R
j
| dimana i = j
Filter-Filter untuk deteksi Garis
Horisontal
-1 -1 -1
2 2 2
-1 -1 -1
vertikal
-1 2 -1
-1 2 -1
-1 2 -1
Diagonal kiri
2 -1 -1
-1 2 -1
-1 -1 2
Diagonal Kanan
-1 -1 2
-1 2 -1
2 -1 -1
Deteksi Tepi
Tepi Objek pertemuan antara bagian objek
dan bagian latar belakang
Indikasi : titik yang nilai keabuannya memiliki
perbedaan cukup besar dengan titik yang ada
disebelahnya.
Deteksi tepi : menemukan titik yang
perbedaan intensitasnya besar
Deteksi Tepi Berbasis Gradient
Menghitung selisih dua buah titik yang
bertetangga sehingga didapat gradient citra
Gradient adalah turunan pertama dari
persamaan dua dimensi yang didefinisikan
dengan vektor sbb:
| |
(
(
(
(

c
c
c
c
=
(

=
y
f
x
f
G
G
) y , x ( f G
y
x
Sifat Gradient
Besar Gradient sama dengan penambahan
laju maksimum dari fungsi f(x,y) per satuan
jarak dalam arah G

Vektor G[f(x,y)] menunjukkan arah
penambahan laju maksimum dari fungsi f(x,y)

2 2
y x
G G )] y , x ( f [ G + =
Sifat Gradient (cont.)
Untuk kebutuhan pengolahan citra, besar
gradient dapat dicari dengan persamaan
G[f(x,y)] = |G
x
|+|G
y
|
atau
G*f(x,y)+ maks(|G
x
|,|G
y
|)
Orientasi arah dapat dihitung dengan
(x,y)=tan
-1
(G
y
/G
x
)
atau
(x,y)=arctan(G
y
/G
x
)
Sifat Gradient (cont.)
Untuk orientasi sudut 0 diartikan bahwa arah
dari kontras maksimum dari hitam ke putih
berjalan dari kiri ke kanan pada gambar,
Untuk nilai orientasi sudut lain dihitung
berlawanan arah jarum jam dari orietasi ini
Beberapat Operator deteksi tepi
berbasis gradient turunan pertama
Operator Robert
Operator Sobel
Operator Prewitt
Operator Robert
Operator berbasis gradient
Menggunakan kernel ukuran 2 X 2
Mengambil arah diagonal untuk penentuan arah dalam
perhitungan nilai gradient, sehingga dapat ditulis
dengan persamaan
G=|f(x,y)-f(x+1,y+1)|+|f(x+1,y)-f(x+y+1)|
dimana
G
x
=|f(x,y)-f(x+1,y+1)|
G
y
=|f(x+1,y)-f(x+y+1)|
Bila ditulis dalam komponen gradient:
G=|G
x
|+|G
y
|
Operator Robert (cont.)
Kernel Gx dan Gy masing-masing sbb:



Kedua kernel dikonvolusi pada f(x,y)
(

=
1 0
0 1
x
G
(


=
0 1
1 0
y
G
Operator Sobel
Menghindari perhitungan gradient di titik
interpolasi.
Berdasarkan besaran gradient laplace, besaran
gradient dapat ditulis dengan

M adalah besar gradient di titik tengah kernel
S
x
= (a
3
+ca
4
+a
5
)-(a
1
+ca
8
+a
7
)
S
y
= (a
1
+ca
2
+a
3
)-(a
7
+ca
6
+a
5
)

2 2
y x
S S M + =
Operator Sobel (cont.)
c adalah konstanta yang bernilai 2.
Berdasarkan persamaan tersebut, Sx dan Sy
dapat diaplikasikan dengan kernel sbb:

(
(
(

=
1 0 1
2 0 2
1 0 1
x
S
(
(
(


=
1 2 1
0 0 0
1 2 1
y
S
Operator Prewitt
Jika Konstanta c pada Operator Sobel diubah
menjadi 1, maka Operator Sobel akan menjadi
operator Prewitt
Perbedaan Operator Prewitt dengan Sobel
adalah, Op. Sobel menggunakan pembobotan
pada piksel-piksel yang lebih dekat dengan
titik pusat kernel, sedangkan Op. Prewitt tidak
menekankan pembobotan pada titik tengah
Operator Prewitt (cont.)
Kernel dari operator Prewitt:
(
(
(

=
1 0 1
1 0 1
1 0 1
x
S
(
(
(


=
1 1 1
0 0 0
1 1 1
y
S
Operator Isotropic
Menggunakan kernel 3 X 3



Operator ini berfungsi untuk mendeteksi tepi
yang curam


(
(
(

=
1 0 1
2 0 2
1 0 1
x
I
(
(
(


=
1 2 1
0 0 0
1 2 1
y
I
Operator-operator Kompas
Operator Compass
Operator Kirsch
masing-masing kernel di konvolusi dan diambil
nilai terbesar dan dijadikan sebagai nilai baru
dari suatu titik.
|G| = max(|G
i
|:i=1 to n)

Operator Compass
Menggunakan pola empat mata angin
C
N
Utara
C
S
Selatan
C
E
Timur
C
W
Barat
(
(
(


=
1 1 1
1 2 1
1 1 1
N
C
(
(
(


=
1 1 1
1 2 1
1 1 1
s
C
(
(
(

=
1 1 1
1 2 1
1 1 1
E
C
(
(
(



=
1 1 1
1 2 1
1 1 1
w
C
Operator Kirsch
Menggunakan delapan arah mata angin
(
(
(


=
5 3 3
5 0 3
5 3 3
1
K
(
(
(

=
3 3 3
5 0 3
5 5 3
2
K
(
(
(


=
3 3 3
3 0 3
5 5 5
3
K
(
(
(

=
3 3 3
3 0 5
3 5 5
4
K
(
(
(




=
3 3 5
3 0 5
3 3 5
5
K
(
(
(


=
3 5 5
3 0 5
3 3 3
6
K
(
(
(



=
5 5 5
3 0 3
3 3 3
7
K
(
(
(


=
5 5 3
5 0 3
3 3 3
8
K
Deteksi Tepi Berbasis Turunan Kedua
Bila suatu nilai batas dikenakan pada fungsi turunan
pertama, maka piksel dengan intensitas di atas nilai
batas akan digolongkan menjadi piksel-piksel tepi.
Tinggi rendahnya nilai batas yang digunakan
menentukan tebal tipisnya garis tepi yang didapat.
Pada turunan kedua, titik puncak pada turunan
pertama akan bersesuaian dengan titik perpotongan
fungsi dengan sumbu x.
perpotongan antara fungsi dengan sumbu x satu titik
saja, maka ketebalan garis tepi yang didapatkan
hanya satu titik ideal
Operator laplacian
Titik-titik tepi dilacak dengan cara
menemukan titik perpotongan dengan sumbu
x oleh turunan kedua sehingga sering di
sebut sebagai zero crossing operator
Sangat sensitif terhadap noise yang terletak
pada titik-titik tepi. dapat diatasi dengan
Laplacian of Gaussian yang merupakan
kombinasi dari operator laplacian dengan
operator gaussian
Persamaan Laplacian
Persamaan Laplacian


dimana
2
2
2
2
2
y
f
x
f
) y , x ( f
c
c
+
c
c
= V
) y , x ( f ) y , x ( f ) y , x ( f
x
G
x
f
+ + + =
c
c
+ =
c
c
1 2 2
2
2
2
) y , x ( f ) y , x ( f ) y , x ( f
y
G
y
f
+ + + =
c
c
+ =
c
c
1 2 2
2
2
2
Ilustrasi Zero Crossing
Sumber: http://euclid.ii.metu.edu.tr/~ion528/demo/lectures/6/3/
Persamaan laplacian
Persamaan pada masing-masing sumbu tsb
menyebabkan titik pusat bergeser di (x+1,y)
dan (x,y+1) karena itu agar tetap di titik (x,y)
pada masing-masing persamaan tersebut x
diganti dengan x-1 dan y di ganti dengan y-1
) y , x ( f ) y , x ( f ) y , x ( f
x
G
x
f
1 2 1
2
2
2
+ + =
c
c
+ =
c
c
) y , x ( f ) y , x ( f ) y , x ( f
y
G
y
f
1 2
2
2
2
+ + =
c
c
+ =
c
c
Persamaan laplacian
Dengan demikian diperoleh


Terlepas dari tandanya yang negatif atau
positif, bila diimplementasikan dalam bentuk
kernel:
|
|
.
|

\
|
c
c
+
c
c
= V
2
2
2
2
2
y
f
x
f
) y , x ( f
)] y , x ( f ) y , x ( f ) y , x ( f ) y , x ( f [ ) y , x ( f ) y , x ( f 1 1 1 1 4
2
+ + + + + = V
(
(
(

0 1 0
1 4 1
0 1 0
(
(
(



0 1 0
1 4 1
0 1 0
Kernel Laplacian lain
Dengan memberikan bobot yang lebih besar
pada titik pusat, didapatkan beberapa kernel
lainnya
(
(
(




1 1 1
1 8 1
1 1 1
(
(
(



2 1 2
1 4 1
2 1 2
(
(
(

1 4 1
4 20 4
1 4 1
Kernel Laplacian of Gaussian
Dapat dilakukan dengan cara:
Sebuah citra di konvolusi dengan operator
gaussian, kemudian hasilnya di konvolusi
dengan operator laplacian
Di konvolusi langsung dengan menggunakan
operator Laplacian of Gaussian
Operator Laplacian of Gaussian
Operator Laplacian of Gaussian diperoleh dari
konvolusi sbb:


Dimana:
)] y , x ( f * ) y , x ( g [ ) y , x ( h
2
V =
) y , x ( f * )] y , x ( g [ ) y , x ( h
2
V =
2
2 2
2
4
2 2 2
2
e
2
o
o
o
y x
y x
)] y , x ( g [
+
|
|
.
|

\
|
+
= V
Ilustrasi Operator Laplacian of Gaussian
Ref: http://euclid.ii.metu.edu.tr/~ion528/demo/lectures/6/3/index.html

Anda mungkin juga menyukai