Anda di halaman 1dari 60

Materi 02(b)

Pengolahan Citra Digital


Perbaikan Citra pada Domain Spasial
(2)

Tujuan
Memberikan pemahaman kepada mahasiswa
mengenai berbagai teknik perbaikan citra pada
domain spasial, antara lain :
Operasi Aritmetik/Logik (and, or, pengurangan, ratarata)
Penskalaan intensitas citra
Filtering pada domain spasial :
Filter Penghalusan (averaging)
Filter Penajaman (laplacian, high boost)
Filter statistik (median, max)
2

Perbaikan Menggunakan
Operasi Arithmetik/Logik
Operasi arithmetik/logik dilakukan dengan basis
operasi piksel dengan piksel dari dua buah citra
atau lebih (kecuali untuk operasi NOT, yang
hanya melibatkan satu buah citra).
Operator logik NOT memberikan hasil yang
sama seperti transformasi negatif.
Operasi AND dan OR digunakan untuk masking;
yaitu memilih subcitra yang ada dalam sebuah
citra.
3

Perbaikan Menggunakan
Operasi Arithmetik/Logik

Pengurangan Citra
Selisih dua citra f(x,y) dan h(x,y),
dinyatakan dengan :
g(x,y) = f(x,y) h(x,y)
Pengurangan dilakukan untuk setiap
pasangan piksel pada lokasi yang
bersesuaian dari dua buah citra f dan h.

Pengurangan Citra
XXXX XXXX
XXXX 0000

0000 XXXX

Penskalaan Intensitas Citra

Kebanyakan citra ditampilkan dalam 8 bits [0255].


Jika hasil dari suatu operasi menghasilkan citra dengan
intensitas di luar range [0255], maka citra tersebut perlu
diskalakan.
Ada dua pendekatan untuk menskalakan intensitas citra:
1. Tambahkan 255 ke setiap piksel dan selanjutnya dibagi 2.
y=(x+255)/2;
2. Tambahkan negatif dari intensitas minimum ke semua
piksel. Selanjutnya, semua piksel dalam citra diskalakan
pada interval [0,255] dengan mengalikan 255/Max ke
setiap piksel. Max adalah nilai piksel maksimum pada citra
yang sudah dimodifikasi.
y=(x-min)*(255/max);
7

Image Averaging
Misalkan citra bernoise g(x,y) dibentuk dengan
menambahkan noise (x,y) ke citra asal f(x,y),
dengan rumus berikut:
g(x,y)=f(x,y)+ (x,y)
Diasumsikan bahwa pada setiap pasangan
koordinat (x,y), noise tidak berkorelasi dan
memiliki nilai rata-rata 0.
Tujuan dari image averaging adalah
mengurangi noise dengan cara merata-rata
sekumpulan citra bernoise, {gi(x,y)}.
8

Image Averaging
Jika noise memenuhi batasan seperti yang disebutkan
sebelumnya, bisa ditunjukkan bahwa jika suatu citra
gg(x,y) dibentuk dengan merata-rata K buah citra
bernoise,
gg(x,y)=1/K gi(x,y)
dan bahwa :
E{gg(x,y)} = f(x,y)
serta 2gg(x,y) = 1/K 2(x,y)
dengan E{gg(x,y)} adalah nilai gg yang diharapkan, 2gg(x,y)
dan 2(x,y) adalah variance dari gg dan , pada semua
koordinat (x,y). Deviasi standard pada sembarang titik
dalam citra hasil rata-rata adalah:
gg(x,y) = 1/ K (x,y)
9

Image Averaging
Ketika K bertambah, variasi noise pada
nilai-nilai piksel di setiap lokasi (x,y)
menurun.
Karena E{gg(x,y)} = f(x,y), maka gg(x,y)
akan mendekati f(x,y) ketika jumlah citra
bernoise yang dirata-rata bertambah.

10

Image Averaging
a. Citra Galaksi
b. Citra diberi noise
Gaussian aditif
dengan mean 0 dan
deviasi standard 64.
c-f Hasil rata-rata dari
K=8,16, 64 and 128
citra bernoise.

11

Image Averaging

12

Filtering pada Domain Spasial


Operasi filtering pada domain spasial dikerjakan
dengan mempertimbangkan intensitas piksel
dalam neighborhood dan koefisien filter (atau
mask, atau kernel) yang berdimensi sama
dengan neighborhood.
Untuk mask berukuran m x n, diasumsikan
bahwa m=2a+1 dan n=2b+1, dengan a dan b
adalah integer non-negatif.

13

Filtering pada Domain Spasial


Secara umum, filtering linear pada domain
spasial dari sebuah citra f berukuran M x N
dengan filter berukuran m x n dihitung dengan:

g x, y

w s, t f x s, y t

s at b

Untuk mendapatkan citra hasil filtering yang


lengkap, persamaan di atas harus dihitung untuk
x=0,1,,M-1 dan y=0,1,,N-1.

14

Filtering pada Domain Spasial

15

Low Pass Filter 3 x 3


(Smoothing, blurring)

16

Mask Processing
W1

W2

W3

W4

W5

W6

W7

W8

W9

G11 G12 G13 G14


G21

G22 G23 G24

G31 G32 G33 G34


G41 G42 G43 G44

Contoh sebuah mask berukuran


3x3.
Filter ini akan diterapkan /
dikonvolusikan pada setiap
jendela ketetanggaan 3x3 pada
citra (anggap filter sudah dalam
terbalik)
Gbentuk
15
G22 = w1 G11 + w2 G12 + w3
G25 G +
13
w4 G21 + w5 G22 + w6 G23
G35
+
w7 G31 + w8 G32 + w9 G33
G45

G51 G52 G53 G54 G55


17

Filtering pada Domain Spasial

Proses filtering linear pada domain spasial mirip dengan


proses konvolusi pada domain frekuensi.
Pada proses filtering, apa yang harus dilakukan jika
pusat filter mendekati tepi citra, sehingga neighborhood
menjadi tingkat lengkap? Ada beberapa pendekatan,
yaitu:
1. Perhitungan hanya dilakukan pada semua piksel yang berjarak
tidak kurang dari (n-1)/2 piksel dari tepi citra.
2. Perhitungan dilakukan pada semua piksel, dengan mengambil
piksel-piksel yang tersedia saja. Sehingga untuk piksel yang
mendekati tepi citra, jumlah neighborhood yang dilibatkan
dalam perhitungan tidak harus lengkap.
3. Menambahkan baris dan kolom berisi 0 atau konstanta tertentu
pada citra. Bisa juga, mereplikasi baris dan kolom.
18

Filter Penghalusan
Filter penghalusan digunakan untuk
mengaburkan citra dan untuk mereduksi noise.
Pengkaburan biasa digunakan sebagai langkah
pra pemrosesan, seperti untuk menghilangkan
detail kecil dari suatu citra sebelum dilakukan
ekstraksi objek, dan untuk menghubungkan
celah kecil yang memisahkan garis atau kurva.
Reduksi noise bisa diselesaikan dengan
pengkaburan baik dengan menggunakan filter
linier maupun filter non-linier.
19

Filter Penghalusan
Output dari filter penghalusan biasanya berupa
rata-rata dari piksel yang terdapat pada
neighborhood. Filter seperti ini biasa juga
disebut dengan averaging filters dan juga
lowpass filters.
Dengan mengganti intensitas setiap piksel
dalam citra dengan rata-rata intensitas pada
neighborhood, maka proses ini akan
menghasilkan citra dengan transisi tajam yang
sudah berkurang.
20

Filter Penghalusan
Noise random biasanya memiliki transisi
intensitas yang tajam, sehingga aplikasi nyata
dari penghalusan adalah reduksi noise.
Efek samping yang tidak diinginkan dari proses
penghalusan adalah pengkaburan edge.
Padahal edge seringkali menjadi fitur penting
dalam citra yang tidak ingin dihilangkan.
Kegunaan utama dari filter averaging adalah
untuk mereduksi detail yang tidak relevant dalam
suatu citra.
21

Filter Penghalusan

Dua buah filter penghalusan (smoothing, averaging)


berukuran 3x3. Konstanta pengali di depan setiap filter
sama dengan jumlah koefisien di dalam filter (itulah
sebabnya disebut averaging).
22

Filter Penghalusan
Proses filtering suatu citra berukuran MxN
dengan filter averaging berukuran mxn (m
dan n ganjil) dirumuskan sebagai berikut:
a

g x, y

w s, t f x s, y t

s at b

w s, t

s at b

23

Filter Penghalusan
a. Citra asal
berukuran 500 x
500 piksel.
b-f. Hasil
penghalusan
dengan filter
averaging square
berukuran n = 3,
5, 9, 15, dan 35.

24

Filter Penghalusan

a.
b.
c.

Citra dari Teleskop Hubble Spac.


Citra diproses dengan filter averaging 15 x 15
Hasil thresholding dengan nilai threshold sama dengan 25%
intensitas tertinggi dalam citra (b)
25

Order-Statistics Filters
Order-statistics filters adalah filter spasial
nonlinear yang responnya didasarkan pada
pengurutan (ranking) dari intensitas piksel-piksel
yang dilingkup oleh filter. Selanjutnya, intensitas
piksel pada pusat filter diganti dengan intensitas
hasil pengurutan.
Order-statistics filter yang banyak digunakan
adalah filter median, yang mengganti intensitas
piksel pada pusat filter dengan median dari
intensitas neighborhood.
26

Order-Statistics Filters
Filter median cukup efektif untuk menghilangkan impulse
noise, atau disebut juga salt-and-pepper noise karena
kemunculan noise yang seperti titik putih dan hitam
dalam citra.
Median, , dari sekumpulan nilai adalah suatu nilai yang
dipilih sedemikian rupa sehingga separuh dari kumpulan
nilai kurang dari atau sama dengan , dan separuhnya
lagi lebih besar atau sama dengan .
Pertama kali, intensitas piksel dalam neighborhood
diurutkan, menentukan nilai median, dan selanjutnya
mengganti intensitas piksel pada pusat neighborhood
dengan median. Jika ukuran neighborhood adalah 3 x 3,
maka median adalah nilai terbesar ke 5.
27

Order-Statistics Filters
Klaster piksel terang atau gelap yang terisolasi
di tengah tetangganya, dan memiliki luas kurang
dari n2/2, dapat dihilangkan dengan filter median
n x n.
Order-statistics filters lain yang bisa digunakan
adalah max filter (memilih nilai terbesar), yang
berguna untuk memilih intensitas paling terang
dalam citra. Selain itu, bisa juga digunakan min
filter dan mean filter.
28

Order-Statistics Filters

29

Filter Median
Mengganti harga piksel dengan median dari
piksel dan tetangganya. Reduksi random noise
dengan hasil kurang kabur dibandingkan filter
penghalus (smoothing).
Eliminasi piksel2 terisolasi
ooooo

oooooooo
oooooooo
oooooooo
oooooooo
oooooooo
oooooooo
oooooooo
oooooooo

ooo
ooo
ooo
oooooooo
oooooooo
oooooooo
oooooooo
oooooooo
oooooooo
oooooooo
oooooooo

ooooo
ooooo
ooooo
ooo
oooooooo
oooooooo
oooooooo
oooooooo
oooooooo
oooooooo
oooooooo
oooooooo

30

Contoh Filter Median

31

Filter Penajaman
Tujuan utama penajaman adalah untuk
menonjolkan detail dalam citra atau untuk
mempertajam detail yang kabur karena
kesalahan pada saat mendapatkan data citra.
Pengkaburan citra bisa dilakukan dengan
merata-rata piksel dalam neighborhood. Karena
rata-rata analog dengan integrasi, maka
merupakan hal yang logis untuk menyimpulkan
bahwa penajaman bisa dilakukan dengan
derivatif (penurunan).
32

Filter Penajaman

Derivatif (turunan) dari suatu fungsi digital


didefinisikan berkaitan dengan differences
(selisih). Ada beberapa cara untuk
mendefinisikan differences. Sembarang
definisi bisa digunakan untuk turunan pertama,
asalkan memenuhi syarat berikut:
1. Harus nol pada segmen yang datar (area dengan
tingkat keabuan konstan).
2. Harus tidak nol pada titik awal dari step atau ramp.
3. Harus tidak nol sepanjang ramp.
33

Filter Penajaman

Sedangkan definisi dari turunan kedua


harus memenuhi syarat berikut:
1. Harus nol pada segmen yang datar (area
dengan tingkat keabuan konstan).
2. Harus tidak nol pada titik awal dari step atau
ramp.
3. Harus nol di sepanjang ramp dengan
kemiringan konstan.
34

Derivasi
Derivasi orde 1
f
f ( x 1) f ( x)
x

Derivasi orde 2
f
f ( x 1) f ( x 1) 2 f ( x)
2
x
2

35

Filter Penajaman
Definisi dasar dari turunan pertama fungsi
satu dimensi f(x) adalah selisih :
f/x = f(x+1) f(x)
Sedangkan definisi dari turunan kedua
adalah selisih :
2f/x2 = f(x+1) + f(x-1) f(x)

36

Filter Penajaman

37

Filter Penajaman

Perbandingan respons antara turunan pertama


(TS) dan turunan kedua (TD) :
1. TS umumnya menghasilkan edge yang lebih tebal.
2. TD memiliki respon yang lebih kuat terhadap detail
gambar, seperti garis tipis dan titik terisolasi.
3. TS umumnya memiliki respon yang lebih kuat pada
step.
4. TD menghasilkan respon ganda pada perubahan
step.

Pada banyak aplikasi, TD lebih cocok


dibanding TS karena kemampuannya untuk
memperbaiki detail dari citra.
38

TD untuk Perbaikan
Laplacian
Operator turunan isotropic (rotation invariant)
yang paling sederhana adalah Laplacian. Untuk
fungsi citra f(x,y) dua variable, didefinisikan :
2f = 2f/x2 + 2f/y2
Definisi untuk turunan partial kedua pada arah x:
2f/x2 = f(x+1,y)+f(x-1,y) - 2f(x,y)
dan pada arah y:
2f/y2 = f(x,y+1)+f(x,y-1) - 2f(x,y)
39

Bentuk Diskrit Laplacian


f
f ( x 1, y ) f ( x 1, y ) 2 f ( x, y )
2
x
2
f
f ( x, y 1) f ( x, y 1) 2 f ( x, y )
2
y
2

Menghasilkan :

f [ f ( x 1, y ) f ( x 1, y )
2

f ( x, y 1) f ( x, y 1) 4 f ( x, y )]
40

TD untuk Perbaikan
Laplacian
Implementasi digital dari Laplacian 2D
adalah :
2f = [f(x+1,y)+f(x-1,y)+
f(x,y+1)+f(x,y-1)] 4f(x,y)
Fitur background bisa dikembalikan
dengan tetap mempertahankan efek dari
operasi Laplacian. Caranya adalah
dengan menambahkan/mengurangkan
citra asal dengan citra hasil Laplacian.
41

High Pass Filter (Sharpening)


Gradient operator (vector)

f ( x, y ) f ( x, y ) f ( x, y )
f

xy
x
y
Laplacian
operator

2
2

f
(
x
,
y
)

f ( x, y )
2
f

2
2
x
y
42

TD untuk Perbaikan
Laplacian

43

TD untuk Perbaikan
Laplacian

Penggunaan Laplacian untuk perbaikan citra


sebagai berikut:
1. g(x,y)=f(x,y)- 2f(x,y), jika koefisien pada pusat
filter Laplacian bernilai negatif.
2. g(x,y)=f(x,y) + 2f(x,y), jika koefisien pada
pusat filter Laplacian bernilai positif.

44

TD untuk Perbaikan
Laplacian

45

Unsharp masking dan highboost filtering


Proses yang digunakan selama beberapa tahun
dalam industri penerbitan untuk menajamkan
citra adalah mengurangkan versi kabur dari
citra, ke citra asalnya. Proses ini dirumuskan
sebagai berikut:
fs(x,y)=f(x,y)-fb(x,y)
fs(x,y) menyatakan citra yang sudah ditajamkan
dengan unsharp masking, dan fb(x,y)
menyatakan versi kabur dari citra f(x,y).
46

Unsharp masking dan highboost filtering


Generalisasi dari unsharp masking
disebut dengan high-boost filtering.
Citra hasil dari high-boost filtering, fhb,
didefinisikan:
fhb(x,y)=Af(x,y)-fb(x,y)
dengan A>=a dan fb adalah versi kabur
dari citra f.
47

Unsharp masking dan highboost filtering

Persamaan sebelumnya bisa ditulis ulang:


fhb(x,y)=(A-1)f(x,y)+fs(s,y)
Jika kita memilih Laplacian untuk
melakukan penajaman, maka bisa ditulis:
fhb=Af(x,y) - 2f(x,y), jika koefisien pada
pusat filter Laplacian bernilai negatif..
fhb=Af(x,y) + 2f(x,y), jika koefisien pada
pusat filter Laplacian bernilai positif.
48

Unsharp masking dan highboost filtering

High-boost filtering (hbf) bisa diimplementasikan dengan sekali


perhitungan dengan menggunakan salah satu di antara dua filter
(mask) di atas. Jika A=1, hbf menjadi penajaman Laplacian
standard. Ketika nilai A bertambah melebihi 1, kontribusi penajaman
menjadi semakin berkurang. Ketika A cukup besar, citra high-boost
akan mirip dengan citra asal yang dikalikan dengan suatu
konstanta.
49

Unsharp masking dan highboost filtering

50

Laplacian+ image asal


g ( x, y ) f ( x, y ) [ f ( x 1, y ) f ( x 1, y )
f ( x, y 1) f ( x, y 1) 4 f ( x, y )]
5 f ( x, y ) [ f ( x 1, y ) f ( x 1, y )
f ( x, y 1) f ( x, y 1)]
0

-1

-1

-1

-1

0
51

HPF

52

Operator Gradient
f
Gx x
f
f

Gy

Implementasi dengan magnitude dari gradient

f mag (f ) [G G ]
2
x

f 2 f



x
y
2

2
y

Atau dengan pendekatan

f G x G y

53

HPF Gradient
dengan Pendekatan sederhana 2x2
z1

z2

z3

z4

z5

z6

z7

z8

z9

G x ( z8 z 5 )

and

G y ( z 6 z5 )

f [G G ] 2 [( z8 z5 ) ( z6 z5 ) ]
2
x

2
y

f z8 z 5 z 6 z 5
54

Operator 2x2 Roberts cross-gradient


z1

z2

z3

z4

z5

z6

z7

z8

z9

G x ( z9 z5 )

and

G y ( z8 z 6 )

f [G G ] 2 [( z9 z5 ) ( z8 z6 ) ]
2
x

2
y

f z 9 z 5 z8 z 6
55

Operator Sobel 3x3

Gx ( z7 2 z8 z9 ) ( z1 2 z2 z3 )
G y ( z3 2 z6 z9 ) ( z1 2 z4 z7 )
z1

z2

z3

z4

z5

z6

z7

z8

z9

f G x G y

56

Contoh Gradient Sobel

57

Contoh Laplacian dan Sobel

58

Contoh Matlab LPF


>>im=imread(filename);
>>imshow(im)
>>h=fspecial(average,9);
>>im2=uint8(round(filter2(h,im)));
>>imshow(im2)

im

im2

59

Referensi
Bab 3, Image Enhancement in the Spatial
Domain, Digital Image Processing, edisi
2, Rafael C. Gonzales dan Richard E.
Woods, Prentice Hall, 2002

60

Anda mungkin juga menyukai