Anda di halaman 1dari 40

Pengolahan dalam Domain Spasial

dan Restorasi Citra


Pengolahan Citra Digital
Materi 4
Eko Prasetyo
Teknik Informatika
Universitas Muhamamdiyah Gresik
2011
Konsep Domain Spasial
Domain Spasial Operasi
pemfilteran secara linear.
Mengalikan setiap piksel
dalam tetangga dengan
koefisien yang terhubung
kepadanya dan
menjumlahkan hasilnya
untuk mendapatkan jawaban
pada setiap titik (x,y).
Jika ukuran tetangga adalah
m x n, koefisien mn
dibutuhkan. Koefisien
dibentuk menjadi matriks
yang disebut dengan filter,
mask, filter mask, kernel,
template, atau window.

2
Konsep Domain Spasial
Ada 2 konsep ketika melakukan filter
spasial linier, yaitu correlation (korelasi)
dan convolution (konvolusi).
Korelasi adalah proses passing mask
terhadap citra array f seperti yang
digambarkan pada gambar sebelumnya.
Mekanisme konvolusi sama dengan
korelasi, hanya saja w diputar 180
o

terlebih dahulu baru kemudian
disampaikan pada citra f
3
Korelasi dan Konvolusi 1 dimensi
4
Korelasi dan Konvolusi 2 dimensi
5
korelasi filter w(x,y)
sebuah citra f(x,y)
berukuran m x n
dituliskan dengan w(x,y)
f(x,y)

+ +
= =
a
a s
b
b t
t y s x f t s w ) , ( ) , (
w(x,y) f(x,y) =
konvolusi w(x,y) dan
f(x,y) dituliskan w(x,y)
f(x,y)
w(x,y) f(x,y) =


= =
a
a s
b
b t
t y s x f t s w ) , ( ) , (
R = w
1
z
1
+ w
2
z
2
+ + w
mn
z
mn

= w
k
z
k


= w
T
z

=
mn
k 1
Mask 3 x 3
6
R = w
1
z
1
+ w
2
z
2
+ + w
9
z
9

= w
k
z
k


= w
T
z

=
9
1 k
w
1
w
2
w
3

w
4
w
5
w
6

w
7
w
8
w
9

w dan z adalah vektor 9 elemen
yang dibentuk dari koefisien mask
dan intensitas citra
Toolbox untuk melakukan filter linear spasial adalah fungsi imfilter
dengan formula:
g = imfilter(f, w, filtering_mode, boundary_option,
size_option);
Pilihan Penjelasan
Mode Filter
corr Filter dilakukan menggunakan korelasi. Nilai
default
conv Filter dilakukan menggunakan konvolusi
Pilihan Boundary
P Boundary cira input diperluas dengan lapisan
sebuah nilai, P (ditulis tanpa tanda petik). Ini
merupakan nilai default dengan nilai 0.
replicate Ukuran citra diperluas dengan replikasi nilai
dalam border luarnya.
symmetric Ukuran citra diperluas dengan refleksinya
terhadap border.
circular Ukuran citra diperluas dengan menganggap
citra sebagai satu periode fungsi periodik 2-D.
Pilihan Ukuran
full Outputnya adalah ukuran yang sama dengan
citra yang diperluas.
same Outputnya adalah ukuran yang sama dengan
input. Ini adalah nilai default.
Pemfilteran dengan korelasi
7
citra asli dengan opsi
default
dengan opsi
replicate
dengan opsi
symmetric
dengan opsi
circular
dengan opsi
replicate dan
tipe uint8
>> f=imread('bw.png');
>> f=rgb2gray(i);
>> f=im2double(i);
>> w=ones(31);
>> g = imfilter(f,w);
>> figure, imshow(g, [ ]);
>> grep = imfilter(f,w,'replicate');
>> figure, imshow(grep, [ ]);
>> gsym = imfilter(f,w,'symmetric');
>> figure, imshow(gsym, [ ]);
>> gcir = imfilter(f,w,'circular');
>> figure, imshow(gcir, [ ]);
>> f8 = im2uint8(f);
>> gf8 = imfilter(f8, w, 'replicate');
>> figure, imshow(gf8, [ ]);
Filter Penghalusan (Smoothing)
Digunakan untuk: mengaburkan
(blurring) dan untuk mengurangi noise
pada citra.
Blurring ini biasanya menjadi
preprocessing task dalam pengolahan
citra, seperti membuang detail kecil
citra untuk mengekstraksi obyek yang
besar dan penghubung gap kecil
dalam garis atau kurva.
Pengurangan noise dapat dilakukan
oleh blurring dengan filter linear
maupun filter non-linear.
Filter Linear
Output dari smoothing dengan filter
linear adalah rata-rata nilai piksel dalam
tetangga dari rentang mask filter.
Disebut dengan averaging filter, disebut
juga lowpass filter.

8

=
=
9
0
9
1
i
i
z R
rata-rata level intensitas piksel dalam
tetangga 3 x 3 yang didefinisikan
oleh mask dengan w=1/9
Filter Penghalusan (Smoothing)
(2)
9
0 3 3 2
4 2 4 6
3 7 3 5
2 7 2 4
Input: 4x4 image
Gray scale = [0,7]


+ +
=
= =
= =
a
a s
b
b t
a
a s
b
b t
t s w
t y s x f t s w
y x g
) , (
) , ( ) , (
) , (
1 2 3 2
2 3 4 2
3 4 4 3
2 3 3 2
Output: 4x4 image
(smoothed)
Gray scale = [0,7]
Filter rata-rata berukuran 3x3 (bentuk seperti dibawah)
Opsi Boundary: default (0 disemua pad)
Filter Penghalusan (Smoothing)
(3)
10
Hasil filter rata-rata dengan ukuran mask 3, 5, 9, 21,35
>> w3=ones(3)/9;
>> w5=ones(5)/25;
>> w9=ones(9)/81;
>> w21=ones(21)/441;
>> w35=ones(35)/1225;
>> g3=imfilter(f,w3);
>> figure, imshow(g3, [ ]);
>> g5=imfilter(f,w5);
>> figure, imshow(g5, [ ]);
>> g9=imfilter(f,w9);
>> figure, imshow(g9, [ ]);
>> g21=imfilter(f,w21);
>> figure, imshow(g21, [ ]);
>> g35=imfilter(f,w35);
>> figure, imshow(g35, [ ]);
Filter Penghalusan (Smoothing)
(4)
11
0 3 3 2
4 2 4 6
3 7 3 5
2 7 2 4
Input: 4x4 image
Gray scale = [0,7]
Output: 4x4 image
(smoothed)
Gray scale = [0,7]
Filter rata-rata berukuran 3x3 (bentuk seperti dibawah)
Opsi Boundary: default (0 disemua pad)
1 2 2 2
2 3 4 3
3 4 4 3
2 4 3 2
Penghalusan dengan Filter non-
Linear (Order-Statistic)
Order-statistic adalah filter spasial non-linear yang hasilnya
didasarkan pada urutan (rangking) piksel yang mengisi area
citra yang diapit filter dan kemudian mengganti nilai dari
pusat piksel dengan nilai yang ditentukan oleh hasil
perangkingan.
Filter yang paling dikenal: median filter.
Filter median mengganti nilai piksel dengan median dari nilai
intensitas dalam tetangga dari piksel tersebut (nilai asli dari piksel
tersebut termasuk dalam perhitungan median)
Baik untuk menghilangkan salt-and-pepper noise karena sifat
median yang menjauhi hitam dan putih.

12
0 3 3 2
4 2 4 6
3 7 3 5
2 7 2 4
Citra asli
0 2 2 0
2 3 3 3
2 3 4 3
0 2 3 0
median filter
Filter
median
3x3
1 1 1
1 1 1
1 1 1
Toolbox fungsi ordfilt2
menghasilkan order-statistic
filters.
g = ordfilt2(f, order,
domain)
order adalah nilai ke-x hasil
pengurutan tetangga yang
ditentukan oleh bukan nol dalam
domain.
Penghalusan dengan Filter non-
Linear (Order-Statistic) (2)
Filter lain yang diberikan oleh statistik dasar. Jika
menggunakan nilai terbesar urutan maka akan menjadi max
filter:
Berguna untuk mencari titik-titik yang paling terang dalam citra.
Hasil dari filter max 3 x 3 diberikan oleh R = max{z
k
|k = 1, 2, ,
9}.
Filter order-statistic dengan mengambil nilai terkecil disebut
min filter :
Digunakan untuk tujuan mencari titik-titik yang paling gelap
Hasil dari filter min 3 x 3 diberikan oleh R = min{z
k
|k = 1, 2, ,
9}.

13
0 3 3 2
4 2 4 6
3 7 3 5
2 7 2 4
4 4 6 6
7 7 7 6
7 7 7 6
7 7 7 5
max filter Citra asli
Penghalusan dengan Filter non-
Linear (Order-Statistic) (3)
Toolbox filter spasial non-linear adalah fungsi ordfilt2 yang
menghasilkan order-statistic filters.
g = ordfilt2(f, order, domain)
order adalah nilai ke-x hasil pengurutan tetangga yang ditentukan
oleh bukan nol dalam domain.
Untuk filter median:
g = ordfilt2(f, median(1:m*n), ones(m, n))
g = medfilt2(f, [m n], padopt)
[m n] mendefinisikan tetangga ukuran m x n di mana median dihitung,
padopt menetapkan satu dari tiga pilihan border-padding: zeros (default),
symmetric di mana f diperluas secara simetris dengan mirror-reflecting
pada bordernya, dan indexed di mana f dilapisi dengan satu jika
menggunakan class double dan 0 jika yang lain
Untuk filter max:
g = ordfilt2(f, m*n, ones(m, n))
Untuk filter min:
g = ordfilt2(f, 1, ones(m, n))
14
Penghalusan dengan Filter non-
Linear (Order-Statistic) (4)
15
>> f = imread('anak.tif');
>> fb = imnoise(f,'salt & pepper', 0.2);
>> gm = medfilt2(fb);
>> gm2 = medfilt2(fb,[5 5]);
>> gm3 = medfilt2(fb,[7 7]);
Citra asli Salt and Pepper noise
Hasil median 3x3 Hasil median 5x5 Hasil median 7x7
Filter Penajaman (Sharpening)
Penajaman (sharpening) adalah untuk memperterang (highlight) dalam
intensitas citra.
Turunan dari fungsi digital didefinisikan dengan istilah differences.
Definisi yang digunakan dalam turunan pertama adalah:
1. Harus menjadi nol pada daerah intensitas yang konstan.
2. Harus menjadi tidak nol pada titik datangnya intensitas step (naik) dan ramp (turun).
3. Harus menjadi tidak nol pada daerah sepanjang ramp.
Definisi yang digunakan dalam turunan kedua adalah:
1. Harus menjadi nol pada daerah intensitas yang konstan.
2. Harus menjadi tidak nol pada titik datangnya intensitas step (naik) dan ramp (turun).
3. Harus menjadi nol pada daerah sepanjang ramp.

16
turunan pertama fungsi
f(x,y) satu dimensi
) ( ) 1 ( x f x f
x
f
+ =
c
c
turunan kedua f(x)
sebagai diferensial
) ( 2 ) 1 ( ) 1 (
2
2
x f x f x f
x
f
+ + =
c
c
Filter Penajaman: Laplacian
Filter Laplacian sebuah citra f(x,y) dinyatakan oleh V
2
f(x,y) yang
didefinisikan dengan:


Umumnya menggunakan perkiraan digital turunan kedua:


dan :


Jika digabung dalam V
2
f(x,y) menjadi:

Pernyataan ini diimplementasikan pada semua titik (x,y) dalam citra
dengan mengisikan konstanta suku sebagai nilai filter mask sesuai
dengan letak yang ditunjukkan oleh sukunya
17
2
2
2
2
2
) , ( ) , (
) , (
y
y x f
x
y x f
y x f
c
c
+
c
c
= V
) , ( 2 ) , 1 ( ) , 1 (
2
2
y x f y x f y x f
x
f
+ + =
c
c
) , ( 2 ) 1 , ( ) 1 , (
2
2
y x f y x f y x f
y
f
+ + =
c
c
) , ( 4 ) 1 , ( ) 1 , ( ) , 1 ( ) , 1 (
2
y x f y x f y x f y x f y x f f + + + + + = c
Filter khusus dalam matlab:
fspecial()
w = fspecial(type, parameter)
di mana type adalah jenis filter yang digunakan,
sedangkan parameter mendefinisikan filter
tetapannya
18
>> w=fspecial('laplacian',0)
w =
0 1 0
1 -4 1
0 1 0
>> w=[0 1 0; 1 -4 1; 0 1 0];
>> g=imfilter(f,w);
0 3 3 2
4 2 4 6
3 7 3 5
2 7 2 4
7 -7 -3 1
-11 10 -2 -13
1 -13 6 -7
2 -17 6 -9
19
Type Syntax dan Parameter
average fspecial(average, [r c]). Filter rata-rata persegi panjang dari ukuran r x c, default-nya 3x 3, satu
angka menunjukkan [r c] menetapkan filter bujur sangkar
disk fspecial (disk, r). Filter rata-rata circual (dengan bujur sangkar ukuran 2r+1) dengan radius r,
default radius adalah 5.
gaussian fspecial (gaussian, [r c], sig). Filter lowpass Gaussian dengan ukuran r x c dan standard deviasi sig
positif. Defaultnya 3 x 3 dan 0.5, satu angka dari [r c] menunjukkan filter bujur sangkar.
laplacian fspecial (laplacian, alpha). Filter Laplacian 3 x 3 yang bentuknya ditentukan alpha, angka pada
range [0, 1], nilai default alpha adalah 0.5
log fspecial (log, [r c]). Laplacian dari filter Gaussian (LoG) berukuran r x c dan standard deviasi sig
positif. Nilai default 5 x 5 dan 0.5, satu angka menunjukkan [r c] menetapkan filter bujur sangkar.
motion fspecial (motion, len, theta). Output sebuah filter, ketika digunakan dengan sebuah citra,
memperkirakan motion linear len piksel. Arah motion adalah theta, diukur dengan sudut horizontal.
Defaultnya 9 dan 0 yang merepresentasikan motion 9 piksel dengan arah horizontal.
prewitt fspecial (prewitt). Output mask Prewitt 3 x 3, wv, yang memperkirakan sebuah gradien vertikal.
Mask untuk gradien horizontal didapatkan dengan mentranspose hasil wh = wv
sobel fspecial (sobel). Output mask Sobel 3 x 3, sv, yang memperkirakan sebuah gradien vertikal. Mask
untuk gradien horizontal didapatkan dengan mentranspose hasil sh = sv
unsharp fspecial (unsharp, alpha). Output filter unsharp 3 x 3. Parameter alpha mengontrol bentuk; nilainya
harus lebih besar dari 0 dan lebih kecil atau sama dengan 1.0, defaultnya 0.2
Filter spasial yang didukung oleh fspecial
Filter Penajaman: Laplacian (2)
20
>> w1 = [0 1 0; 1 -4 1; 0 1 0];
>> w2 = [1 1 1; 1 -8 1; 1 1 1];
>> f = imread('srikaya.tif');
>> f2 = im2double(f);
>> g4 = imfilter(f2,w1,'replicate');
>> g4 = f2 - g4;
>> g8 = imfilter(f2,w2,'replicate');
>> g8 = f2 - g8;
Citra asli
Hasil penajaman
Filter Gradien
Turunan pertama pengolahan citra digital
diimplementasikan jarak (panjang) gradien.
Untuk fungsi f(x,y), gradien f pada koordinat
(x,y) didefiniskan sebagai vektor kolom 2-
dimensi:


Panjang vektor ini diberikan oleh:


Model lain:
M(x,y) ~ |g
x
| + |f
y
|


21
(
(
(

c
c
c
c
=
(

= = V
y
f
x
f
g
g
f grad f
y
x
) (
2 / 1
2 2
) ( ) ( ) , (
y x
g g f mag y x M + = V =
Filter Gradien: Robert dan Sobel
Dua definisi lain yang diusulkan oleh Robert[1965]:
g
x
= (z
9
z
5
) dan g
y
= (z
8
z
6
)
Jika menggunakan formula M(x,y), g
x
dan g
y
, maka untuk
menghitung citra gradien dengan:
M(x,y) = [(z
9
z
5
)
2
+ (z
8
z
6
)
2
]
1/2

Formula yang lain:
M(x,y) ~ |z
9
z
5
| + |z
8
z
6
|
Perkiraan nilai g
x
dan g
y
menggunakan tetangga 3 x 3 yang terpusat
di z
5
sbb:

Dan

Sehingga:
M(x,y) = |(z
7
+ 2z
8
+ z
9
) (z
1
+ 2z
2
+ z
3
| + |(z
3
+ 2z
6
+ z
9
) (z
1
+ 2z
4
+ z
7
)|

22
) 2 ( ) 2 (
3 2 1 9 8 7
z z z z z z
dx
df
g
x
+ + + + = =
) 2 ( ) 2 (
7 4 1 9 6 3
z z z z z z
dy
df
g
y
+ + + + = =
Filter Gradien: Sobel
23
0 3 3 2
4 2 4 6
3 7 3 5
2 7 2 4
10 12 16 16
10 11 7 6
1 6 -1 -6
-13 -20 -18 -13
0 3 3 2
4 2 4 6
3 7 3 5
2 7 2 4
8 6 2 -10
14 3 5 -14
23 0 -3 -12
21 0 -8 -7
gx
gy
18 18 18 6
24 14 12 -8
24 6 -4 -18
8 -20 -26 -20
g = gx + gy
Filter Gradien: Sobel (2)
24
Citra asli
Gradien gx Gradien gy
Gradien gx dan gy
>> f = imread('lensa_kontak.png');
>> wh = [-1 -2 -1; 0 0 0; 1 2 1];
>> wv = [-1 0 1; -2 0 2; -1 0 1];
>> gx = imfilter(f,wh);
>> figure, imshow(gx, [ ]);
>> gy = imfilter(f,wv);
>> figure, imshow(gy, [ ]);
>> g = gx + gy;
>> figure, imshow(g, [ ]);
Degradasi dan Restorasi Citra
Proses degradasi dimodelkan sebagai sebuah fungsi degradasi
yang digabungkan dengan syarat additive noise
Mengoperasikan citra input f(x,y) untuk menghasilkan citra terdegradasi g(x,y).
Jika ada g(x,y), fungsi degradasi H dan syarat additive noise q(x,y),
obyektif dari restorasi adalah untuk mendapatkan perkiraan f(x,y)
dari citra original.
Diinginkan memperkirakan kemungkinan yang semirip mungkin
terhadap citra input original.
Citra terdegradasi dalam domain spasial:
g(x,y) = h(x,y) f(x,y) + q(x,y)
di mana h(x,y) adalah representasi spasial dari fungsi degradasi, simbol
adalah konvolusi.
Dalam domain spasial, konvolusi dianalogikan dengan perkalian
dalam domain frekuensi, sehingga formula di atas dapat dituliskan
dalam domain frekuensi dengan bentuk:
G(u,v) = H(u,v)F(u,v) + N(u,v)

25
Fungsi
degradasi
H
+ f(x,y)
g(x,y)
f(x,y)
Noise
q(x,y)
DEGRADASI RESTORASI
Filter
restorasi (s)
Model Noise
Sumber noise pada citra digital bisa terjadi sejak pengambilan dan
atau transmisi citra.
Kinerja dari sensor citra dipengaruhi oleh banyak faktor seperti
kondisi lingkungan selama pengambilan citra dan oleh kualitas
sensitivitas elemen itu sendiri.
Contoh, dalam pengambilan citra dengan kamera CCD, level pencahayaan
dan suhu sensor adalah faktor utama yang memengaruhi tingkat noise pada
citra yang dihasil-kan.
Citra yang terkorupsi selama transmisi secara prinsip disebabkan
interferensi channel yang digunakan untuk transmisi.
Misalnya, citra yang ditransmisikan menggunakan jaringan wireless dapat
terkorupsi sebagai hasil dari pencahayaan atau pengaruh atmosfer yang lain
Gaussian Noise
PDF (probability density function) variabel random Gaussian z


di mana z merepresentasikan intensitas, adalah nilai rata-rata z dan o adalah
standar deviasi
26
2 2
2 / ) (
2
1
) (
o
to
z z
e z p

=
Model Noise (2)
Rayleigh Noise
PDF noise Rayleigh diberikan oleh:


Rata-rata dan varian diberikan oleh formula:

Dan

Erlang (gamma) noise
PDF noise Erlang diberikan oleh:


di mana parameter a > 0, b integer positif dan ! mengindikasikan
faktorial. Rata-rata dan varian dari kepadatan ini diberikan oleh:

Dan

27

<
>
=

a z 0
a z ) (
2
) (
/ ) (
2
untuk
untuk e a z
b
z p
b a z
4 / b a z t + =
4
) 4 (
2
t
o

=
b
a
b
z =

<
>

0 z 0
0 z
)! 1 (
) (
1
untuk
untuk e
b
z a
z p
az
b b
2
2
a
b
= o
Model Noise (3)
Exponential Noise
PDF exponential noise diberikan oleh:

di mana a > 0. Rata-rata dan varian dari kepadatan ini adalah:

dan
Uniform Noise
PDF uniform noise diberikan oleh:

Rata-rata dan varian dari kepadatan ini adalah:

Dan

Impuls (Salt-and-Pepper Noise)
28

<
>
=

0 z untuk 0
0 z
) (
untuk ae
z p
az
a
z
1
=
2
2
1
a
= o

s s

=
lainnya
jika
a b
z p
0
b z a
1
) (
2
b a
z
+
=
12
) (
2
2
a b
= o

=
=
=
lainnya 0
b z untuk
a z untuk
) (
b
a
P
P
z p
Model Noise (4)
29
Ilustrasi noise
30
0 50 100 150 200 250
0
1
2
3
4
x 10
4
Teknik Restorasi Citra dalam
Domain Spasial: Mean Filter
Arithmetic Mean Filter
S
xy
adalah window mask
Menghitung nilai rata-rata citra terkorupsi g(x,y) pada daerah
yang didefinisikan oleh S
xy

Geometric mean filter
Perkalian piksel dalam window sub-image, yang dipangkatkan
dengan 1/mn.
Menghasilkan citra yang lebih halus dibanding arithmetic mean
filter tetapi tetap menghilangkan sedikit detail citra dalam
prosesnya

Harmonic Mean Filter
Bekerja dengan baik pada salt noise, tetapi tidak untuk pepper
noise.
Bekerja dengan baik pada jenis noise seperti noise Gaussian

31

=
e
xy
S t s
t s g
mn
y x f
) , (
) , (
1
) , (

mn
S t s
xy
t s g y x f
1
) , (
) , ( ) , (
(

[
=
e

=
e
xy
S t s
t s g
mn
y x f
) , (
) , (
1
) , (

Teknik Restorasi Citra dalam


Domain Spasial: Mean Filter (2)
Contraharmonic Mean Filter

Q disebut dengan order filter.
Sangat cocok untuk mengurangi pengaruh noise
salt-and-pepper.
Untuk nilai Q positif, filter mengeleminasi pepper
noise.
Untuk Q negatif, filter ini menghilangkan salt
noise.
Kedua hal tersebut tidak bisa bekerja bersama-
sama.
Contra-harmonic mean filter akan mirip
arithmetic mean filter jika Q = 0, dan mirip
harmonic mean filter jika Q = -1
32

=
e
e
+
xy
xy
S t s
Q
S t s
Q
t s g
t s g
y x f
) , (
) , (
1
) , (
) , (
) , (

Restorasi dengan aritmetik dan


geometrik mean filter
33
>> g =
imnoise(f,'gaussian');
>> figure, imshow(g);

>> fave = spfilt(g,'amean', 3, 3);
>> figure, imshow(fave);
>> fgeo = spfilt(g,'gmean', 3, 3);
>> figure, imshow(fgeo);
Citra dikorupsi oleh noise Gaussian Citra asli
difilter dengan
arithmetic mean filter
dengan ukuran 3x3
difilter dengan
geometric mean filter
dengan ukuran 3x3
Restorasi dengan filter:
contraharmonic, max dan min
34
Pndegradasian citra
dengan noise
>> [M, N] = size(f);
>> R = imnoise2('salt &
pepper', M, N, 0.1, 0);
>> c = find(R == 0);
>> gpep = f;
>> gpep(c) = 0;
>> R = imnoise2('salt &
pepper', M, N, 0, 0.1);
>> c = find(R == 1);
>> gsal = f;
>> gsal(c) = 255;
>> figure, imshow(gpep);
>> figure, imshow(gsal);
Citra terkorupsi dengan
pepper noise
Citra terkorupsi dengan
salt noise
Contraharmonic dan max
35
Hasil filter contraharmonic
ukuran 3x3 dengan order 1.5
Hasil filter max ukuran 3x3 Citra terkorupsi dengan
pepper noise
>> fconp = spfilt(gpep,'chmean', 3, 3, 1.5);
>> figure, imshow(fconp);
>> fpep = spfilt(gpep,'max', 3, 3);
>> figure, imshow(fpep);
Contraharmonic dan min
36
Hasil filter contraharmonic
ukuran 3x3 dengan order -1.5
Hasil filter min ukuran 3x3 Citra terkorupsi dengan
salt noise
>> fconn = spfilt(gsal,'chmean', 3, 3, -1.5);
>> figure, imshow(fconn);
>> fsal = spfilt(gsal,'min', 3, 3);
>> figure, imshow(fsal);
Teknik Restorasi Citra dalam
Domain Spasial: Order-statistik
Filter spasial yang hasilnya didasarkan dari pengurutan
(perangkingan) nilai piksel yang merupakan isi daerah
citra yang diterapkan oleh filter.
Hasil rangking menentukan hasil filter.
Filter median

Mengganti nilai piksel dengan median dari level intensitas
dalam tetangga piksel yang telah dilakukan perangkingan
(piksel pusat juga ikut dirangking)
Untuk jenis random noise tertentu memberikan
kemampuan pengurangan noise yang sangat baik, dengan
memperhatikan pengurangan blurring filter smoothing linier
pada ukuran yang sama
Filter max
37
)} , ( { ) , (
) , (
t s g median y x f
xy
S t s e
=

Teknik Restorasi Citra dalam Domain


Spasial: Order-statistik (2)
Filter max
Sangat berguna untuk mencari titik-titik yang paling
terang dalam citra.
Pepper noise dapat dikurangi oleh filter ini sebagai
hasil proses pemilihan max dalam sub-image S
xy
.

Filter min
Sangat berguna untuk mencari titik-titik paling gelap
dalam citra, dan mengurangi salt noise sebagai hasil
operasi min

Filter midpoint
Menghitung titik tengah antara nilai maksimum dan
minimum dalam daerah yang diliputi oleh filter
38
)} , ( { max ) , (
) , (
t s g y x f
xy
S t s e
=

)} , ( { min ) , (
) , (
t s g y x f
xy
S t s e
=

| | )} , ( { min )} , ( { max
2
1
) , (
) , ( ) , (
t s g t s g y x f
xy xy
S t s S t s e e
+ =

Teknik Restorasi Citra dalam Domain


Spasial: Order-statistik (3)
Andaikan bahwa akan menghapus d/2 nilai intensitas terendah dan
d/2 nilai intensitas tertinggi dari g(x,y) dalam tetangga S
xy
. Jika g
r
(s,t)
mereprsentasikan sisa mn d piksel, Filter dibentuk oleh rata-rata
sisa piksel ini yang disebut alpha-trimmed mean filter.

Di mana nilai d dalam range [0, mn 1].
Ketika d=0, alpha-trimmed mendekati arithmetic mean filter. Jika d
=mn-1, filter ini menjadi filter median.
Untuk nilai d yang lain, filter ini sangat berguna dalam situasi yang
menyertakan beberapa jenis noise, seperti kombinasi noise salt-and-
pepper dengan Gausian
39

=
e
xy
S t s
r
t s g
d mn
y x f
) , (
) , (
1
) , (

>> g = imnoise(f,'gaussian');
>> fgau = spfilt(g,'midpoint',
3, 3);
>> figure, imshow(fgau);
>> fatr = spfilt(g,'atrimmed',
3, 3, 2);
>> figure, imshow(fatr);
Hasil filter midpoint ukuran
3x3 pada citra dengan
pepper noise
Hasil filter alpha-trimmed
ukuran 3x3, d=2 pada citra
dengan pepper noise
Citra terkorupsi dengan
pepper noise
ANY QUESTION ?
To Be Continued Materi 5 Pengolahan Citra
dalam Domain Frekuensi dan Restorasi Citra
40