job 7 andy

32
LAPORAN PRAKTIKUM PENGOLAHAN CITRA DIGITAL NO JOB 7 Nama : Andy Hafiandy Nim : 3201016062 Kelas : 5 B TEKNIK INFORMATIKA TEKNIK ELEKTRO

Transcript of job 7 andy

Page 1: job 7 andy

LAPORAN PRAKTIKUM

PENGOLAHAN CITRA DIGITAL

NO JOB 7

Nama : Andy Hafiandy

Nim : 3201016062

Kelas : 5 B

TEKNIK INFORMATIKA

TEKNIK ELEKTRO

POLITEKNIK NEGERI PONTIANAK

2012

Page 2: job 7 andy

Tujuan

1. Membangkitkan noise pada citra.

2. Mereduksi noise pada citra.

Page 3: job 7 andy

Teori Dasar

Noise gaussian merupakan model noise yang mengikuti distribusi normal standard

dengan rata-rata nol dan standard deviasi 1. Efek dari gaussian noise ini, pada gambar muncul

titik-titik berwarna yang jumlahnya sama dengan prosentase noise. Noise speckle merupakan

model noise yang memberikan warna hitam pada titik yang terkena noise. Sedangkan noise salt

& pepper seperti halnya taburan garam, akan memberikan warna putih pada titik yang terkena

noise.

Pada beberapa pengolahan citra, terkadang untuk menguji suatu algoritma untuk dapat

mereduksi noise, maka noise dihasilkan dari proses pembangkitan noise. Untuk

membangkitkan noise digunakan suatu bilangan acak sebagai pengganti noise yang dihasilkan.

Noise pada citra dibedakan menjadi beberapa macam yaitu :

1. GaussianNoiseGaussian dapat dibangkitkan dengan cara membangkitkan bilangan acak [0,1] dengan

distribusi gaussian. Kemudian untuk titik-titik yang terkena noise, nilai fungsi citra

ditambahkan dengan nilai noise yang ada, atau dirumuskan dengan:

y (i , j )=x ( i , j )+ p .a

Ket :

a : nilai bilangan acak berdistribusi uniform dari noise.

p : presentase noise.

y(i,j) : nilai citra terkena noise.

x(i,j) : nilai citra sebelum kena noise.

Untuk membangkitkan bilangan acak berdistribusi gaussian, tidak dapat langsung

menggunakan fungsi rnd, tetapi diperlukan suatu metode yang digunakan untuk mengubah

distribusi bilangan acak ke dalam fungsi f tertentu. Dalam buku ini digunakan metode

rejection untuk memudahkan dalam alur pembuatan programnya. Metode rejection

dikembangkan dengan cara membangkitkan dua bilangan acak (x,y) dan ditolak bila y >

f(x).

Page 4: job 7 andy

2. Noise UniformNoise Uniform seperti halnya noise gausssian dapat dibangkitkan dengan cara

membangkitkan bilangan acak [0,1] dengan distribusi uniform. Kemudian untuk titik-titik

yang terkena noise, nilai fungsi citra ditambahkan dengan nilai noise yang ada, atau

dirumuskan dengan :

y (i , j )=x ( i , j )+ p .a

Ket :

a : nilai bilangan acak berdistribusi uniform dari noise.

p : presentase noise.

y(i,j) : nilai citra terkena noise.

x(i,j) : nilai citra sebelum kena noise.

Noise uniform ini merupakan noise sintesis yang sebenarnya dalam penerapannya

jarang digunakan, tetapi secara pemrograman pembangkitan noise uniform ini merupakan

jenis pembangkitan noise yang paling mudah.

3. Reduksi noise menggunakan Filter Rata-RataAda berbagai macam teknik untuk mengurangi (reduksi) noise, salah satunya

menggunakan filter rata-rata. Dalam pengertian noise sebagai suatu nilai yang berbeda

dengan semua tetangganya maka dapat dikatakan noise merupakan nilai-nilai yang berada

pada frekwensi tinggi, untuk mengurangi noise digunakan Low Pass Filter (LPF). Salah satu

dari bentuk LPF adalah filter rata-rata.

Filter rata-rata merupakan filter H dalam bentuk matrik yang berukuran mxn, dan

nilainya adalah sama untuk setiap elemen, dan karena bersifat LPF maka jumlah seluruh

elemen adalah satu, dan dituliskan dengan :

H ( i , j )= 1m .n

,1≤i ≤m ,1≤ j ≤n

Filter rata-rata berukuran 3x3 yaitu :

H=[19

19

19

19

19

19

19

19

19] atau ditulis H=[1 1 1

1 1 11 1 1] /9

Filter rata-rata berukuran 5x5 yaitu :

Page 5: job 7 andy

H=[125

125

125

125

125

125

125

125

125125

125

125

125

125

125

125

125

125

125125

125

125

125

125

125

]Peningkatan ukuran filter memang akan semakain banyak mengurangi filter tetapi

terjadi proses blur yang tidak dapat dihindari, hall ini menyebabkan nilai SNR juga akan

semakin rendah.

4. Reduksi Noise menggunakan Filter GaussianFilter lain yang banyak digunakan dalam mereduksi noise selain filter rata-rata adalah

filter gaussian. Filter gaussian ini sebenarnya hampir sama dengan filter rata-rata hanya

ada nilai bobot yang tidak rata seperti pada filter rata-rata, tetapi mengikuti fungsi gaussian

sebagai berikut :

G ( x , y )= 1s√π

e−((x−mx )2+( y−m y)

2) /2 s

Ket :

s : sebaran dari fungsi Gaussian

(mx, my) : titik tengah dari fungsi Gaussian

Berdasarkan rumus dari fungsi gaussian di atas untuk ukuran 3x3 akan diperoleh

matrik kernel filter gaussian :

H=[1 1 11 4 11 1 1]/13 atau H=[0.077 0.077 0.077

0.077 0.308 0.0770.077 0.077 0.077]

Kernel filter gaussian untuk ukuran 5x5 adalah :

H=[0.0030 0.0133 0.02190.0133 0.0596 0.0983

0.0133 0.00300.0596 0.0133

0.0219 0.0983 0.1621 0.0983 0.02190.0133 0.0596 0.09830.0030 0.0133 0.0219

0.0596 0.01330.0133 0.0030

]

Page 6: job 7 andy

Kernel filter gaussian untuk ukuran 7x7 adalah :

H=[0.0013 0.0041 0.00790.0041 0.0124 0.02410.0079 0.0241 0.0470

0.0099 0.00790.0301 0.02410.0587 0.0470

0.0041 0.00130.0124 0.00410.0241 0.0079

0.0099 0.0301 0.05870.0079 0.0241 0.0470

0.0733 0.05870.0587 0.0470

0.0301 0.00990.0241 0.0079

0.0041 0.0124 0.02410.0013 0.0041 0.0079

0.0301 0.02410.0099 0.0079

0.0124 0.00410.0041 0.0013

]Berikut ini hasil dari program filter gaussian di atas dengan ukuran kernel yang

diubah-ubah, yaitu 3x3, 5x5 dan 7x7. Hall ini dapat dilakukan dengan mengubah nilai

Nfilter yang ada pada even form_load dengan nilai 3, 5 atau 7 secara manual, dan kemudian

jalankan programnya. Perhatikan bagaimana hasil dari masing-masing ukuran filter

gaussian dan bandingkan dengan dengan hasil dari filter rata-rata.

Page 7: job 7 andy

Prosedur Percobaan

I. Membangkitkan Noise dengan algoritma rata-rata

1. Buatlah project baru dan tambahkan komponen pada form sehingga tampak seperti

gambar berikut ini :

2. Tulislah kode program untuk form1, DivListBox1, DirListBox1, dan FileListBox1 dengan

kode berikut :

Private Sub Dir1_Change()

File1.Path = Dir1.Path

End Sub

Private Sub Drive1_Change()

Dir1.Path = Drive1.Drive

End Sub

Private Sub File1_Click()

Picture1.Picture = LoadPicture(File1.Path + "\" + File1.FileName)

End Sub

Private Sub Form_Load()

File1.Pattern = "*.bmp;*.jpg;*.jpeg;*.gif;*.tif"

End Sub

3. Tambahkan kode berikut pada CommandButton1 dengan kode berikut ini :

Private Sub Command1_Click()

probNoise = Val(Text1)

Page 8: job 7 andy

For i = 1 To Picture1.ScaleWidth Step 15

For j = 1 To Picture1.ScaleHeight Step 15

warna = Picture1.Point(i, j)

r = warna And RGB(255, 0, 0)

g = Int((warna And RGB(0, 255, 0)) / 256)

b = Int(Int((warna And RGB(0, 0, 255)) / 256) / 256)

wx = Int((r + g + b) / 3)

Picture1.PSet (i, j), RGB(wx, wx, wx)

'Pembangkitan Noise

sw = Rnd

wx = Abs(wx + 256 * sw * probNoise)

If wx > 255 Then wx = 255

Picture2.PSet (i, j), RGB(wx, wx, wx)

Next j

Next i

End Sub

4. Eksekusi Program, pilih citra, isi probabilitas noise pada Text1 dengan 0,1 kemudian

click CommandButton1. Amati (print) citra hasil.

5. Ubahlah probabilitas noise menjadi 0,2 , 0,3 , 0,4 , 0,5 , 0,6 , dan 0,7 print hasil citra.

II. Membangkitkan Noise dengan algoritma Gaussian

1. Tulislah kode program untuk membangkitkan noise dengan algoritma Gaussian berikut

ini pada tombol CommandButton2.

Private Sub Command2_Click()

probNoise = Val(Text1)

For i = 1 To Picture1.ScaleWidth Step 15

For j = 1 To Picture1.ScaleHeight Step 15

warna = Picture1.Point(i, j)

r = warna And RGB(255, 0, 0)

g = Int((warna And RGB(0, 255, 0)) / 256)

b = Int(Int((warna And RGB(0, 0, 255)) / 256) / 256)

wx = Int((r + g + b) / 3)

Picture1.PSet (i, j), RGB(wx, wx, wx)

Page 9: job 7 andy

'Pembangkitan Noise Gaussian

'Menggunakan metode Rejection

sw = 0

While sw = 0

x = 2 * Rnd - 1

y = Rnd

If y < Exp(-x ^ 2) Then

sw = x

End If

Wend

wx = Abs(wx + sw * 127 * probNoise)

If wx > 255 Then wx = 255

Picture2.PSet (i, j), RGB(wx, wx, wx)

Next j

Next i

End Sub

2. Eksekusi program dan print hasil citra.

III. Membangkitkan Noise pada citra dengan algoritma Salt and Papper.

1. Tulislah kode program untuk membangkitkan noise dengan algoritma Salt and Papper

berikut ini pada tombol CommandButton3.

Private Sub Command3_Click()

probNoise = Val(Text1)

For i = 1 To Picture1.ScaleWidth Step 15

For j = 1 To Picture1.ScaleHeight Step 15

warna = Picture1.Point(i, j)

r = warna And RGB(255, 0, 0)

g = Int((warna And RGB(0, 255, 0)) / 256)

b = Int(Int((warna And RGB(0, 0, 255)) / 256) / 256)

wx = Int((r + g + b) / 3)

Picture1.PSet (i, j), RGB(wx, wx, wx)

'Pembangkitan Noise

If sw < probNoise Then wx = 255

Picture2.PSet (i, j), RGB(wx, wx, wx)

Page 10: job 7 andy

Next j

Next i

End Sub

2. Eksekusi program dan print hasil citra.

IV. Membangkitkan Noise dengan algoritma Speckle

1. Tulislah kode program untuk membangkitkan noise dengan algoritma Speckle berikut

ini pada tombol CommandButton4.

Private Sub Command4_Click()

probNoise = Val(Text1)

For i = 1 To Picture1.ScaleWidth Step 15

For j = 1 To Picture1.ScaleHeight Step 15

warna = Picture1.Point(i, j)

r = warna And RGB(255, 0, 0)

g = Int((warna And RGB(0, 255, 0)) / 256)

b = Int(Int((warna And RGB(0, 0, 255)) / 256) / 256)

wx = Int((r + g + b) / 3)

Picture1.PSet (i, j), RGB(wx, wx, wx)

'Pembangkitan Noise

sw = Rnd

If sw < probNoise Then wx = 0

Picture2.PSet (i, j), RGB(wx, wx, wx)

Next j

Next i

End Sub

2. Eksekusi program dan cetak hasil eksekusi.

V. Reduksi noise dengan algoritma rata-rata, kernel 3x3

1. Buatlah project baru dengan nama reduksi, tambahkan komponen pada form seperti

yang terlihat pada gambar berikut.

Page 11: job 7 andy

2. Tulislah kode program untuk form1, DivListBox1, DirListBox1, dan FileListBox1 dengan

kode berikut :

Private Sub Dir1_Change()

File1.Path = Dir1.Path

End Sub

Private Sub Drive1_Change()

Dir1.Path = Drive1.Drive

End Sub

Private Sub File1_Click()

Picture1.Picture = LoadPicture(File1.Path + "\" + File1.FileName)

End Sub

Private Sub Form_Load()

File1.Pattern = "*.bmp;*.jpg;*.jpeg;*.gif;*.tif"

End Sub

3. Tambahkan kode program kernel berikut ini pada form1

Randomize Timer

For i = 1 To 3

For j = 1 To 3

h(i, j) = 1 / 9

Next j

Next i

Page 12: job 7 andy

4. Tulis kode berikut ini pada CommandButton1.

Private Sub Command1_Click()

probNoise = Val(Text1)

dx = 0

sx = 0

n1 = 0

For i = 1 To Picture1.ScaleWidth Step 15

n1 = n1 + 1

n2 = 0

For j = 1 To Picture1.ScaleHeight Step 15

warna = Picture1.Point(i, j)

r = warna And RGB(255, 0, 0)

g = Int((warna And RGB(0, 255, 0)) / 256)

b = Int(Int((warna And RGB(0, 0, 255)) / 256) / 256)

wx = Int((r + g + b) / 3)

n2 = n2 + 1

wt(n1, n2) = wx

Picture1.PSet (i, j), RGB(wx, wx, wx)

'Pembangkitan Noise Gaussian

'Menggunakan Metode Rejection

sw = 0

While sw = 0

x = 2 * Rnd - 1

y = Rnd

If y < Exp(-x ^ 2) Then

sw = x

End If

Wend

wx1 = Abs(wx + sw * 255 * probNoise)

If wx1 > 255 Then wx1 = 255

Picture2.PSet (i, j), RGB(wx1, wx1, wx1)

nx = nx + Abs(wx1 - wx)

sx = sx + Abs(wx)

Next j

Next i

Page 13: job 7 andy

snr = 10 * Log(sx / nx) / Log(10)

Label5.Caption = snr

End Sub

5. Untuk menfilter citra tempatkan kode program berikut ini pada CommandButton2.

Private Sub Command2_Click()

Dim xt(400, 400) As Integer

'RGB to Gray

n1 = 0

For i = 1 To Picture1.ScaleWidth Step 15

n1 = n1 + 1

n2 = 0

For j = 1 To Picture1.ScaleHeight Step 15

warna = Picture2.Point(i, j)

r = warna And RGB(255, 0, 0)

g = Int((warna And RGB(0, 255, 0)) / 256)

b = Int(Int((warna And RGB(0, 0, 255)) / 256) / 256)

n2 = n2 + 1

wx = Int((r + g + b) / 3)

xt(n1, n2) = wx

Next j

Next i

'Proses Filtering dengan Konvolusi

nx = 0

sx = 0

For i = 1 To n1

For j = 1 To n2

z = 0

For u1 = -1 To 1

For u2 = -1 To 1

z = z + h(u1 + 2, u2 + 2) * xt(i + u1, j + u2)

Next u2

Next u1

Picture3.PSet ((i - 1) * 15 + 1, (j - 1) * 15 + 1), RGB(z, z, z)

nx = nx + Abs(z - wt(i, j))

Page 14: job 7 andy

sx = sx + Abs(wt(i, j))

Next j

Next i

snr = 10 * Log(sx / nx) / Log(10)

Label3.Caption = snr

End Sub

6. Tambahkan deklarasi variable berikut pada permulaan program.

Dim wt(400, 400) As Integer

Dim h(3, 3) As Single

7. Eksekusi Program dan print hasil eksekusi.

VI. Reduksi noise dengan algoritma rata-rata, kernel 5x5

1. Tulislah kode program untuk membangkitkan noise pada citra pada tombol

CommandButton3.

Private Sub Command3_Click()

probNoise = Val(Text2)

dx = 0

sx = 0

n1 = 0

For i = 1 To Picture1.ScaleWidth Step 15

n1 = n1 + 1

n2 = 0

For j = 1 To Picture1.ScaleHeight Step 15

warna = Picture1.Point(i, j)

r = warna And RGB(255, 0, 0)

g = Int((warna And RGB(0, 255, 0)) / 256)

b = Int(Int((warna And RGB(0, 0, 255)) / 256) / 256)

wx = Int((r + g + b) / 3)

n2 = n2 + 1

wt(n1, n2) = wx

Picture1.PSet (i, j), RGB(wx, wx, wx)

'Pembangkitan Noise Gaussian

'Menggunakan Metode Rejection

sw = 0

Page 15: job 7 andy

While sw = 0

x = 2 * Rnd - 1

y = Rnd

If y < Exp(-x ^ 2) Then

sw = x

End If

Wend

wx1 = Abs(wx + sw * 255 * probNoise)

If wx1 > 255 Then wx1 = 255

Picture2.PSet (i, j), RGB(wx1, wx1, wx1)

nx = nx + Abs(wx1 - wx)

sx = sx + Abs(wx)

Next j

Next i

snr = 10 * Log(sx / nx) / Log(10)

Label2.Caption = snr

End Sub

2. Tambahkan kode program berikut ini pada Form1

Randomize Timer

For i = 1 To Nfilter

For j = 1 To Nfilter

h(i, j) = 1 / (Nfilter ^ 2)

Next j

Next i

3. Definisikan variable global berikut pada awal program

Dim wt(400, 400) As Integer

Dim h(3, 3) As Single

Dim Nfilter As Integer

4. Tulislah program untuk mereduksi noise dengan kernel 5x5 pada CommandButton4.

Private Sub Command4_Click()

Dim xt(400, 400) As Integer

'RGB to Gray

n1 = 0

For i = 1 To Picture1.ScaleWidth Step 15

n1 = n1 + 1

Page 16: job 7 andy

n2 = 0

For j = 1 To Picture1.ScaleHeight Step 15

warna = Picture2.Point(i, j)

r = warna And RGB(255, 0, 0)

g = Int((warna And RGB(0, 255, 0)) / 256)

b = Int(Int((warna And RGB(0, 0, 255)) / 256) / 256)

n2 = n2 + 1

wx = Int((r + g + b) / 3)

xt(n1, n2) = wx

Next j

Next i

'Proses Filtering dengan Konvolusi

nx = 0

sx = 0

For i = 1 To n1

For j = 1 To n2

z = 0

For u1 = -1 To 1

For u2 = -1 To 1

z = z + h(u1 + 2, u2 + 2) * xt(i + u1, j + u2)

Next u2

Next u1

Picture3.PSet ((i - 1) * 15 + 1, (j - 1) * 15 + 1), RGB(z, z, z)

nx = nx + Abs(z - wt(i, j))

sx = sx + Abs(wt(i, j))

Next j

Next i

snr = 10 * Log(sx / nx) / Log(10)

Label3.Caption = snr

End Sub

5. Eksekusi program dan print citra hasil eksekusi.

Page 17: job 7 andy

VII. Reduksi noise dengan algoritma Gaussian

1. Buatlah project baru dan tambahkan komponen pada form seperti yang terlihat pada

gambar berikut.

2. Tulislah kode program untuk form1, DivListBox1, DirListBox1, dan FileListBox1 dengan

kode berikut :

Private Sub Dir1_Change()

File1.Path = Dir1.Path

End Sub

Private Sub Drive1_Change()

Dir1.Path = Drive1.Drive

End Sub

Private Sub File1_Click()

Picture1.Picture = LoadPicture(File1.Path + "\" + File1.FileName)

End Sub

Private Sub Form_Load()

File1.Pattern = "*.bmp;*.jpg;*.jpeg;*.gif;*.tif"

End Sub

3. Tulislah kode berikut ini pada CommandButton1, untuk membangkitkan Noise

Private Sub Command1_Click()

probNoise = Val(Text1)

dx = 0

Page 18: job 7 andy

sx = 0

n1 = 0

For i = 1 To Picture1.ScaleWidth Step 15

n1 = n1 + 1

n2 = 0

For j = 1 To Picture1.ScaleHeight Step 15

warna = Picture1.Point(i, j)

r = warna And RGB(255, 0, 0)

g = Int((warna And RGB(0, 255, 0)) / 256)

b = Int(Int((warna And RGB(0, 0, 255)) / 256) / 256)

wx = Int((r + g + b) / 3)

n2 = n2 + 1

wt(n1, n2) = wx

Picture1.PSet (i, j), RGB(wx, wx, wx)

'Pembangkitan Noise Gaussian

'Menggunakan metode Rejection

sw = 0

While sw = 0

x = 2 * Rnd - 1

y = Rnd

If y < Exp(-x ^ 2) Then

sw = x

End If

Wend

wx1 = Abs(wx + sw * 255 * probNoise)

If wx1 > 255 Then wx1 = 255

Picture2.PSet (i, j), RGB(wx1, wx1, wx1)

nx = nx + Abs(wx1 - wx)

sx = sx + Abs(wx)

Next j

Next i

snr = (10 * Log(sx / nx)) / Log(10)

Label2.Caption = snr

End Sub

4. Tambahkan kode berikut ini pada CommandButton2 untuk reduksi noise.

Page 19: job 7 andy

Private Sub Command2_Click()

Dim xt(400, 400) As Integer

'RGB to Gray

n1 = 0

For i = 1 To Picture1.ScaleWidth Step 15

n1 = n1 + 1

n2 = 0

For j = 1 To Picture1.ScaleHeight Step 15

warna = Picture2.Point(i, j)

r = warna And RGB(255, 0, 0)

g = Int((warna And RGB(0, 255, 0)) / 256)

b = Int(Int((warna And RGB(0, 0, 255)) / 256) / 256)

n2 = n2 + 1

wx = Int((r + g + b) / 3)

xt(n1, n2) = wx

Next j

Next i

'Proses Filter dengan konvolusi

nx = 0

sx = 0

For i = 1 To n1

For j = 1 To n2

z = 0

For u1 = -1 To 1

For u2 = -1 To 1

z = z + h(u1 + 2, u2 + 2) * xt(i + u1, j + u2)

Next u2

Next u1

Picture3.PSet ((i - 1) * 15 + 1, (j - 1) * 15 + 1), RGB(z, z, z)

nx = nx + Abs(z - wt(i, j))

sx = sx + Abs(wt(i, j))

Next j

Next i

snr = 10 * Log(sx / nx) / Log(10)

Page 20: job 7 andy

Label3.Caption = snr

End Sub

5. Ubahlah prosedur form1_Load menjadi seperti kode berikut ini

Private Sub Form_Load()

File1.Pattern = "*.bmp;*.jpg;*.jpeg;*.gif;*.tif"

Randomize Timer

Nfilter = 3

s = 0.5

m = Int(Nfilter / 2) + 1

sh = 0

For i = 1 To Nfilter

t1 = (i - m) / (m - 1)

For j = 1 To Nfilter

t2 = (j - m) / (m - 1)

h(i, j) = Exp(-(t1 ^ 2 + t2 ^ 2) / (2 * s ^ 2)) / (s ^ 2 * 3.14 ^ 0.5)

sh = sh + h(i, j)

Next j

Next i

For i = 1 To Nfilter

For j = 1 To Nfilter

h(i, j) = h(i, j) / sh

Next j

Next i

End Sub

6. Deklarasikan variable global berikut di awal program.

Dim wt(400, 400) As Integer

Dim h(5, 5) As Single

Dim Nfilter As Integer

7. Eksekusi program dan cetak hasil eksekusi.

Page 21: job 7 andy

TUGAS

1. Pada percobaan I – IV bandingkan noise yang dihasilkan. Apa perbedaan masing-masing algoritma?

2. Bandingkan hasil percobaan V dan VI. Jelaskan analisa saudara!3. Pada percobaan VII, ubahlah ukuran kernel 5x5 dan bandingkan hasil eksekusi. Jelaskan

analisa saudara!

Jawab

1. GaussianSemakin besar nilai prosentasenya, maka semakin banyak titik-titik sehingga membuat kabur citra yang dihasilkan.

0.2 0.3 0.4

0.5 0.7

Noise Uniform

0.2 0.3 0.4

0.5 0.7

Page 22: job 7 andy

Salt And Pepper

0.2 0.3 0.4

0.5 0.7Pada gambar dari hasil noise Salt and Pepper terlihat banyak titik-titik putih, karena noise Salt and Pepper akan memberikan warna putih pada titik yang terkena noise. Ini terlihat seperti taburan garam. Semakin besar nilai prosentasenya, maka semakin banyak titik-titik putih yang terdapat pada citra yang akan dihasilkan.

Speckle

0.2 0.3 0.4

0.5 0.7Pada gambar noise Speckel lebih banyak titik-titik hitam, karena noise Speckle memberikan warna hitam pada titik yang terkena noise. Semakin besar nilai prosentasenya, maka semakin banyak titik-titik hitam sehingga membuat gelap pada citra yang akan dihasilkan.

Page 23: job 7 andy

2. Pada gambar di atas bahwa Reduksi Noise menggunakan filter rata-rata terdapat titik-titik yang kemudian dilakukan blur sehingga hasilnya akan menjadi sedikit lebih buram. Bila dilakukan perbandingan antara reduksi noise menggunakan filter rata kernel 3x3 dengan 5x5, maka akan lebih buram. Semakin besar nilai kernelnya, maka semakin besar tingkat blurnya.

Hasil Running Kernel 3x3

Hasil Running Kernel 5x5

Page 24: job 7 andy

3. Pada gambar di atas bahwa metode Reduksi Noise menggunakan Filter Gaussian ini hampir sama dengan Reduksi Noise menggunakan Filter Rata-Rata. Hanya saja metode ini tidak menghasilkan gambar yang di blur. Ini karena metode ini ada nilai bobot yang tidak rata seperti pada filter rata-rata.

Reduksi Noise Gaussian Kernel 5X5