Apa itu Konvolusi pada citra ?

 

 Konvolusi  adalah  operator  matematika  yang  penting  untuk  banyak  operator  dalam  image
processing.  Konvolusi  menyediakan  cara  untuk  menggabungkan  dua  array,  biasanya  untuk  ukuran  
array yang berbeda, tetapi untuk dimensi array yang sama, menghasilkan array ketiga yang
mempunyai dimensi yang sama. Konvolusi dapat digunakan dalam image processing untuk
menerapkan operator yang mempunyai nilai output dari piksel yang berasal dari kombinasi linear nilai
input piksel tertentu.
 
 Konvolusi citra digital  adalah tehnik untuk menghaluskan suatu citra atau memperjelas citra
dengan  menggantikan  nilai  piksel  dengan  sejumlah  nilai  piksel  yang  sesuai  atau  berdekatan  dengan  piksel aslinya. Tetapi dengan adanya konvolusi, ukuran dari citra tetap sama, tidak berubah.

 Sumber: Penerapan konvolusi pada pengolahan citra digital

 Konvolusi memiliki dua buah fungsi f(x) dan g(x) yang didefinisikan sebagai berikut:

h(x)=f(x)*g(x)=

yang dalam hal ini, tanda (*) menyatakan operator konvolusi dan peubah (variable)  adalah peubah bantu.


Untuk pengolahan citra, operasi yang dilakukan adalah diskrit karena nilai koordinat piksel merupakan nilai yang diskrit. Selanjutnya filter atau mask yang digunakan pada pengolahan citra biasanya berukuran terbatas, dalam artian bobot atau pengaruh dari titik-titik yang cukup jauh sudah tidak signifikan, sehingga dapat diabaikan (dianggap nol).


Bentuk diskrit dari operasi konvolusi satu dimensi pada pengolahan citra adalah:

h(x)=f(x)*g(x)=

Untuk fungsi dengan dua dimensi, operasi konvolusi didefinisikan sebagai berikut:

Untuk fungsi integral:

h(x,y) = f(x,y)*g(x,y) =


Untuk fungsi diskrit:

h(x,y) = f(x,y)*g(x,y) =

Fungsi penapis g(x,y) disebut juga konvolusi filter, konvolusi mask, konvolusi kernel, atau template. Dalam bentuk diskrit konvolusi kernel dinyatakan dalam bentuk matriks (umumnya matriks 3x3). Ukuran matriks ini biasanya lebih kecil dari ukuran citra. Setiap elemen matriks disebut koefisien konvolusi.  

Sumber : Konvolusi pada citra
 

Konvolusi dan Transformasi Fourier - Rikson Gultom

 

Metode Filltering menggunakan teknik konvolusi pada citra

  1.  Adaptive Local Filtering
  • Konsep
Filter adaptif dilakukan pada citra terdegradasi yang mengandung citra asli dan noise. Mean dan varians adalah dua ukuran statistik yang bergantung pada filter adaptif lokal dengan region Window mxn yang ditentukan.
Rumus Adaptif Filtering
 
https://dutormasi.com/wp-content/uploads/2021/01/p1.png 

Langkah pengerjaan
1.  Tentukan nilai dari ukuran Window mxn
2.  Hitung nilai matrix B dengan Gaussian Noise 

Konvolusi Pada Citra Pengolahan Citra Digital Lengkap 
 

3.  Berikan nilai 0 pada seluruh sisi matrix B 

Konvolusi Pada Citra Pengolahan Citra Digital Lengkap

4.  Hitung nilai local dan selisih lokal dengan menggeser Window 3×3 

Konvolusi Pada Citra Pengolahan Citra Digital Lengkap

nilai lokal = nilai(Window) = 0.4373

selisih lokal = nilai(Window²) – nilai(Window²) = 0.2394

5.  Berikan nilai lokal ke matrix B

Konvolusi Pada Citra Pengolahan Citra Digital Lengkap

6.  Berikan selisih lokal ke matrix B

Konvolusi Pada Citra Pengolahan Citra Digital Lengkap

7.  Selisih dari semua noise adalah rata-rata dari selisih lokal, oleh karena itu selisih noise =     0.1709

8.  Jika (selisih noise > nilai lokal (x,y)) maka nilai lokal (x,y) = selisih noise.
Berikut representasi posisi pixel (x,y) dalam 2 dimensi

Konvolusi Pada Citra Pengolahan Citra Digital Lengkap

9.  Final Image = B – (selisih noise/selisih nilai lokal)(B-nilai lokal) 

Konvolusi Pada Citra Pengolahan Citra Digital Lengkap
  •  Tujuan
    Tujuan dari Adaptive Local Filtering adalah untuk memperbaiki gambar dengan menjadikan noise yang ada pada gambar memudar
  • Penjelasan Input-Proses-Output
A = imread(‘peppers.png’);
B = rgb2gray(A);
sz = size(B,1)*size(B,2);
%Add gaussian noise with mean 0 and variance 0.005
B = imnoise(B,’gaussian’,0,0.005);
figure,imshow(B); title(‘Image with gaussian noise’);
B = double(B);
%Define the window size mxn
M = 5;
N = 5;
%Pad the matrix with zeros on all sides
C = padarray(B,[floor(M/2),floor(N/2)]);
lvar = zeros([size(B,1) size(B,2)]);
lmean = zeros([size(B,1) size(B,2)]);
temp = zeros([size(B,1) size(B,2)]);
NewImg = zeros([size(B,1) size(B,2)]);
for i = 1:size(C,1)-(M-1)
 
for j = 1:size(C,2)-(N-1)  

    temp = C(i:i+(M-1),j:j+(N-1));

    tmp =  temp(:);

         %Find the local mean and local variance for the local region       

    lmean(i,j) = mean(tmp);

    lvar(i,j) = mean(tmp.^2)-mean(tmp).^2;      

end
end
%Noise variance and average of the local variance
nvar = sum(lvar(:))/sz;
%If noise_variance > local_variance then local_variance=noise_variance
lvar = max(lvar,nvar);
%Final_Image = B- (noise variance/local variance)*(B-local_mean);
NewImg = nvar./lvar;
NewImg = NewImg.*(B-lmean);
NewImg = B-NewImg;
%Convert the image to uint8 format.\
NewImg = uint8(NewImg);
figure,imshow(NewImg);title(‘Restored Image using Adaptive Local filter’); 
 
 
 
  •  Algoritma dan Flowchart

    Algoritma sederhana dari Filter ini adalah setelah pengguna menjalankan source code filter maka selanjutnya pengguna diminta untuk memilih salah satu gambar untuk diolah. Setelah itu gambar tersebut akan diolah sesuai dengan source code filter ini. Hasilnya akan ditampilkan 2 gambar, citra sebelum di olah dan citra setelah diolah dengan filter ini. 

    Konvolusi Pada Citra Pengolahan Citra Digital Lengkap
  2.  Sharpen
  • Konsep
Sharpening (Penajaman) yaitu memperjelas detil suatu citra(menambah kontras) dengan penjumlahan atas citra tepi dengan citra aslinya maka bagian tepi objek akan terlihat berbeda dengan latarnya, sehingga citra terkesan lebih tajam 
  • Tujuan 
Proses penajaman berhubungan dengan deteksi tepi - perubahan warna yang dilemahkan untuk menciptakan efek tepi tajam. Menggunakan fspecial yang akan membuat filter untuk menajamkan (sharpening) gambar. Filter khususnya bernama 'unsharp'. 
  •  Penjelasan Input-Proses-Output

Sistem image sharpening pada citra dibangun menggunakan Matlab berbasis GUI yang dapat dijalankan langsung pada GUI Matlab. Sistem ini terdiri dari interface dan fungsi-fungsi filter yang dipanggil pada saat memilih filter.Output yang ditampilkan citra asli beserta histogramnya, citra blur berserta nilai PSNR, MSE, dan histogramnya dan citra yang telah diperbaiki atau di sharpening beserta nilai PSNR, MSE dan histogramnya.

Pengamatan kualitatif dilakukan dengan membandingkan citra secara berjajar sehingga dapat dilihat seberapa baik kualitas output filter yang dihasilkan. Sedangkan pengamatan kuantitatif dilakukan dengan menganalisa nilai MSE dalam suatu grafik.

Sistem Keseluruhan sesuai dengan flowchart pada gambar 4.2 rancangan alur program utama adalah sebagai berikut :

1. Inputkan citra yang akan diuji.

2. Tampilkan citra asli dan histogramnya

3. Citra asli diblur4. Tampilkan citra asli yg telah di blur beserta   PSNR, MSE, dan histogramnya

5. Pilih proses sharpening yang akan digunakan yang terdiri dari mask 3x3 yang nilainya berbeda-beda. 

6. Tampil citra hasilsharpening beserta nilai PSNR, MSE dan histogramnya.

Contoh Tipe-tipe Operasi Pengolahan Citra Digital – M IQbaL Hanafri  

3.  Gaussian Blur atau Gaussian Filter

      • Konsep
Pengertian Filter Gaussian Menurut Usman (2005:70), filter Gaussian sangat baik untuk menghilangkan noise yang bersifat sebaran nomal, yang banyak di jumpai pada sebaran citra hasil proses digitasi menggunakan kamera karena merupakan fenomena alamiah akibat sifat pantulan cahaya dan kepekaan sensor cahaya pada kamera itu sendiri. Gaussian Blur adalah Filter blur yang menempatkan warna transisi yang signifikan dalam sebuah image, kemudian membuat warna-warna pertengahan untuk menciptakan efek lembut pada sisi-sisi sebuah image. Gaussian blur adalah salah satu filter blur yang menggunakan rumus matematika untuk menciptakan efek autofocus untuk mengurangi detail dan menciptakan efek berkabut. 
 
  • Tujuan

Gaussian Filter merupakan metode yang menggunakan tranformasi linear. Maksudnya Gaussian Filter menggunakan kombinasi linier dari nilai pixel yang berada dalam lingkup lokal.Dalam metode ini setiap pixel memiliki berat sendiri-sendiri. Nilai berat dari tiap pixel ditentukan dengan menggunakan Gaussian Distribution.Gaussian Distribution adalah cara agar kita dapat menentukan nilai mana yang paling berpengaruh (memiliki berat paling besar) dalam kumpulan data. Kumpulan data yang dimaksud dalam makalah ini adalah nilai dari pixel. 

  • Penjelasan Input-Proses-Output metode Gaussian Filter

for x := M to w-1-M do

for y := N to h-1-N do

begin

jumlah := 0;

for u := -M to M do

for v := -N to N do

jumlah := jumlah+Mask[u,v]*Ki[x-u,y-v];

Ko[x,y] := Round(jumlah);

end;

Dengan menentukan maks yang digunakan yaitu konstanta M dan N, operasi filter Gaussian dilakukan dengan perhitungan sum of producst.
 
Metode Gaussian Filtering dengan OpenCv Python - ivanjul.com 
  •  Algoritma dan Flowchart

Pada proses ini dilakukan konvolusi antara matriks input dengan koefisien filter Gaussian. Proses konvolusi yang dilakukan adalah konvolusi 1 dimensi. Proses konvolusi ini akan dilakukan pada setiap kolom dari matriks citra 2D. Proses konvolusi merupakan salah satu proses yang penting karena proses ini juga merupakan proses yang mendasari perhitungan koefisien filter yang menjadi kunci utama dalam perbaikan citra ber-noise. Data yang dihasilkan dari proses konvolusi ini adalah matriks 1 dimensi (1 kolom, n baris). Urutan prosesnya dapat didefinisikan sebagai berikut :

1.Deklarasikan matrik masukan 1 dimensi dari proses sebelumnya.

2.Tentukan konstanta M dan N untuk menentukan batas konvolusi

3.Tentukan deviasi standar dengan menggunakan persamaan

4.Simpan matrik input pada memori sementara

5.Lakukan proses konvolusi matrik masukan

6.Simpan matrik hasil pada memori bitmap citra hasil 

7.Dihasilkan matrik hasil filter Gaussian.

 

 

Perbedaaan masing-masing metode

1. Adaptive local filtering

     Memperbaiki citra dengan memburamkan noise

2. Sharpener

    Memperbaiki citra dengan mempertajam gambar

3. Gaussian Filtering  

     Memperbaiki citra dengan menburamkan gambar

 

 

 
 



Comments

Popular posts from this blog

About me