PRAKTIKUM PENGOLAHAN CITRA KONVOLUSI
TUJUAN : Mengetahui apakah konvolusi itu Mengetahui
pengaplikasian konvolusi pada pengolahan citra
TEORI DASAR : Konvolusi merupakan operator sentral pengolah
citra dan telah digunakan secara luas pada berbagai piranti lunak
pengolah citra. Proses konvolusi dapat dijelaskan sebagai berikut.
Kernel (sliding window) diletakkan pada tiap pixel dari citra input
dan menghasilkan pixel baru. Nilai pixel baru dihitung dengan
mengalikan setiap nilai pixel tetangga dengan bobot yang
berhubungan pada kernel dan kemudian menjumlahkan hasil perkalian
tersebut. Contoh citra input dan kernel ditunjukkan pada gambar.1
di bawah ini.U1,1 U2,1 U3,1 U4,1 U5,1 U1,2 U2,2 U3,2 U4,2 U5,2 U1,3
U2,3 U3,3 U4,3 U5,3 U1,4 U2,4 U3,4 U4,4 U5,4 U1,5 U2,5 U3,5 U4,5
U5,5
(a)K1,1 K2,1 K1,2 K2,2 K1,3 K2,3
(b) Gambar.1 (a)Citra Input (b)Kernel 2x3 Berdasar gambar.1 di
atas maka nilai pixel adalah sebgai berikut:
1
Konvolusi 2 buah fungsi f(x) dan g(x) didefinisikan sebagai
:
Notasi sebagai :
merupakan operator fungsi konvolusi. Untuk fungsi diskrit
konvolusi didefinisikan
Dimana g(x) merupakan kernel konvolusi atau kernel filter. Untuk
fungsi 2 dimensi, operator konvolusi fungsi kontinyu didefinisikan
sebagai :
dan untuk fungsi diskrit, didefinisikan sebagai :
Fungsi filter g(x,y) disebut juga filter konvolusi, mask
konvolusi,kernel konvolusi, atau template.
Perhatikan kasus berikut, citra Dikonvolusi menggunakan
template
1 1 2 1
1 1 1 1
3 4 3 1
3 4 3 4
4 3 3 4
akan menghasilkan citra baru dengan nilai-nilai
=
2
Template-template yang sering muncul penggunaaanya dalam
pengolahan citra (meminimalisir noise pada citra, edge detection,
filtering dan lain-lain) adalah template klasikal 3x3. Template
yang diaplikasikan sebagai low pass filter adalah :
Pengaplikasian untuk high pass filter digunakan template
Template lain yang uga sering digunakan untuk melakukan
smoothing citra adalah
Tabel.1 di bawah memperlihatkan operasi high-pass filter dan
low-pass filter pada suatu citra yang memiliki nilai ntensitas
pixel sebagai berikut : 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 1 1 1 1 6
1 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0
Tabel.1 Citra Sesudah High-Pass2 1 1 1 -4 2 1 0 0 -5 20 -4 2 1 1
1 -4 2
Sebelum Low-Pass2 1 1 1 -4 2 1 0 0 -5 20 -4 2 1 1 1 -4 2
a
a
a
a
a
a
Kasus yang lain perhatikan tabel.2
3
Tabel.2 Sesudah Citra Konvolusi dg Sesudah Konvolusi dg
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 3 3 3
0 0 0 0 3 3 3
0 0 0 0 3 3 3
0 0 0 0 3 3 3
0 0 0 0 0 0 0
0 0 3 0 0 0 0
0 0 6 0 0 0 0
0 0 6 0 0 0 0
0 0 6 0 0 0 0
0 0 0 0 0 0 0
0 0 6 6 6 6 6
0 0 6 0 0 0 0
0 0 6 0 0 0 0
0 0 6 0 0 0 0
0 0 0 0 0 0 0
0 0 6 6 6 6 6
0 0 6 0 0 0 0
0 0 6 0 0 0 0
0 0 6 0 0 0 0
4
PERANCANGAN PROGRAM Untuk perancangan program konvolusi
menggunakan Delphi dapat kita lakukan langkahlangkah berikut : 1.
Jalankan Delphi 2. Tambahkan icon: Panel1, Panel2, Image1, Image2,
MainMenu1, dan
OpenPictureDialog pada form :
Untuk Panel1 & Panel2, nilai-nilai property pada object
inspector adalah : BevellInner BevelOuter bvLowered bvLowered
Untuk Image1, Icon Image1 letakkan di atas Panel1 pada Form1.
Sedangkan Image1, Icon Image2 letakkan di atas Panel2 pada Form1
Nilai-nilai property pada object inspector Image1 & Image2
adalah : Strecth True
Untuk MainMenu1, klik 2x pada menu icon MainMenu1, sehingga
muncul tampilan :
5
Atur Sedemikian hingga, agar tampilan menjadi
3. Klik 2x pada MainMenu1 listing berikut :
File
Open, setelah muncul halaman editor, tuliskan
6
4. Kembali ke form1, klik 2x pada MainMenu1 Image Processing
Konvolusi, setelah muncul halaman editor tuliskan listing berikut
:
5. Eksekusi program (F9)
7
FLOWCHART
8
START
A
Konvolusi : Array [0..1,0..2,0..2] Row : Array [0..8] Col
x,y,I,j,k,p,image,sum,jum
i:=-1 to 1
B
P:= -120 Image := Tbitmap.Create Image.assign(gambar)
j:=-1 to 1
y:= 1 to gambar.height-2
ju m:=jum+ (ko n vo lu[0,i+1,j+1]*r ow si [i+1,x+j*3]) su m s u
m m)p :=( +ju
i:=-1 to 1
Sum 55 >2
Sum =3*g a m b a r id h-4 .w t
B
j:=-1 to 1
Sum:=sum+(konvolusi [0,i+1,j+1]*row[i+1,x+j*30]) jum:=0
Im a g2.p ictu re itm a:=g a m b a r e .B p G a m b a r ve T o
F(K o n vo lu.b m p .sa ile si ) Im a g .e e e fr
A
EN D
9
HASIL PROGRAM Matriks Konvolusi (((1,1,1),(1,1,1),(1,1,1)),
((0,0,0),(0,0,0),(0,0,0)));
Matriks Konvolusi (((1,0,1),(1,0,1),(1,0,1)),
((0,0,0),(0,0,0),(0,0,0)));
10
Matriks Konvolusi (((0,-1,0),(-1,4,-1),(0,-1,0)),
((0,0,0),(0,0,0),(0,0,0)));
Matriks Konvolusi (((0,0,0),(0,0,0),(0,0,0)),
((1,1,1),(1,1,1),(1,1,1)));
11
12