Teknik Imgae Recontruction, Filtering dan Konvolusi kelompok 3 Mata Kuliah : Pengolahan Citra Digital


Teknik Imgae Recontruction, Filtering dan Konvolusi
kelompok 3
Mata Kuliah : Pengolahan Citra Digital
Dosen MK : Nawassyarif. S.Kom, M.Pd


 




  
Disusun oleh:
Fikri Nuryansah - 17.01.071.037
Habib Shibgatallah - 17.01.071.040
Ghozi Syahiddin Ridho - 17.01.071.039


Universitas Teknologi Sumbawa (UTS) www.uts.ac.id 
Fakultas Teknik
Teknik Informatika
2019



Rekonstruksi citra (image reconstruction) Jenis operasi ini bertujuan untuk membentuk ulang objek dari beberapa citra hasil proyeksi.

Pengolahan citra dikembangkan dengan tujuan untuk :
1.      Image Enhancement : memperbaiki atau meningkatkan kualitas tampilan citra
2.      Image Compression : mereduksi atau mengurangi ukuran file citra namun tetap mempertahankan citra.
3.      Image Restoration : memulihkan atau memperbaiki citra ke kondisi semula.
4.      Feature Extraction : mengekstraksi ciri atau fitur tertentu dari citra untuk dianalisis.
Selain itu, pengolahan citra juga dapat dikembangkan dan dimanfaatkan untuk kehidupan, contohnya :
1.      Bidang militer : pengolahan citra dapat dikembangkan untuk pelacakan target penembakan dengan menggunakan image recognition dan computer vision.
2.      Bidang Kedokteran atau Medis : dapat digunakan untuk analisis hasil scan anggota tubuh dengan menggunakan image recognition dan classification.
3.      Fotografi : dapat digunakan untuk mengolah foto. Software seperti Adobe Photoshop dan Adobe Lightroom memanfaatkan operas-operasi pengolahan citra seperti histogram, convolution, sharpening, dan masih banyak lagi untuk mengolah foto.


Konvolusi (convolution) adalah sebuah proses dimana citra dimanipulasi dengan menggunakaneksternal mask / subwindows untuk menghasilkan citra yang baru. Sedangkan Filtering
tanpa menggunakan ekternal mask tetapi hanya menggunakan pixel tetangga untuk mendapatkan pixel yang baru.

Konvolusi sangat banyak dipergunakan dalam pengolahan citra untuk memperhalus (smoothing), menajamkan (crispening), mendeteksi tepi (edge detection), serta efek lainnya.

1. Embossing
Embossing yaitu membuat citra seolah diukir pada permukaaan selembar nikel. Koefisien jendela konvolusi memiliki bobot tengah bernilai 0 & jumlah seluruh bobot = 0.

2. Blurring
Blurring (Pengaburan) yaitu filter spasial low-pass yang melenyapkan detil halus dari suatu citra. Pengaburan dicapai melalui konvolusi dari seluruh koefisien mask bernilai sama. Blurring ini perataan nilai pixel-pixel tetangga, makin besar ukuran mask maka makin besar efek pengaburan

3. Sharpening
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.

4. Edge Detection
Deteksi tepi yaitu proses menentukan lokasi titik-titik yang merupakan tepi objek.


Konvolusi berguna pada proses pengolahan citra seperti :
·                     Perbaikan kualitas citra (image enhancment)
·                     penghilang derau (noise)
·                     mengorangi erotan (mencong/serong)
·                     penghalusan / pembulatan citra
·                     dll


Teknik filtering adaptive noise removal merupakan merupakan salah satu teknik yang dapat digunakan untuk melakukan proses untuk mengurangi noise,dengan mengganti nilai piksel dengan nilai baru yang didapat dari hasil proses tetangga yang mempengaruhi perubahannya.


Teknik Konvolusi & Transformasi Fourier (FT) ... Kernel g(x) merupakan suatu jendela yang dioperasikan secara bergeser pada sinyal masukan f(x), yang dalam hal ini, jumlah perkalian kedua fungsi pada setiap titik merupakan hasil konvolusi yang dinyatakan dengan keluaran h(x).

Konvolusi sangat banyak dipergunakan dalam pengolahan citra untuk memperhalus (smoothing), menajamkan (crispening), mendeteksi tepi (edge detection), serta efek lainnya.

1. Embossing
Embossing yaitu membuat citra seolah diukir pada permukaaan selembar nikel. Koefisien jendela konvolusi memiliki bobot tengah bernilai 0 & jumlah seluruh bobot = 0.

2. Blurring
Blurring (Pengaburan) yaitu filter spasial low-pass yang melenyapkan detil halus dari suatu citra. Pengaburan dicapai melalui konvolusi dari seluruh koefisien mask bernilai sama. Blurring ini perataan nilai pixel-pixel tetangga, makin besar ukuran mask maka makin besar efek pengaburan

3. Sharpening
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.

4. Edge Detection
Deteksi tepi yaitu proses menentukan lokasi titik-titik yang merupakan tepi objek.


Konvolusi berguna pada proses pengolahan citra seperti :
  • Perbaikan kualitas citra (image enhancment)
  • penghilang derau (noise)
  • mengorangi erotan (mencong/serong)
  • penghalusan / pembulatan citra
  • dll

Secara matematis, konvolusi adalah integral yang mencerminkan jumlah lingkaran dari sebuah sudut fungsi F yang digeser atas fungsi g sehingga menghasilkan fungsi h. Konvolusi dilambangkan dengan arsterik (*). Sehingga, F*g=h berarti fungsi F dikonvolusikan dengan fungsi g menghasilkan fungsi h.

konvolusi dua buah fungsi F(x) dan g(x) di definiskan sebagai berikut :
integral dari -tak hingga sampai tak terhingga. Untuk fungsi diskrit, konvolusi di definisikan sebagai :


g(x) disebut dengan kernel konvolusi (filter). Kernel g(x) merupakan jendela yang dioperasikan secara bergeser pada sinyal masukan F(x). Hasil konvolusi dinyatakan dengan keluaran h(x).

Ilustrasi Konvolusi : F(i,j)

F(i,j) = AP1+BP2+CP3+DP4+EP5+FP6+GP7+HP8+IP9

Contoh, misal citra F(x,y) yang berukuran 5x5 sebuah kernel dengan 3x3 matriks sebagai berikut :
Tahapan menghitung hasil konvolusi :


  1. Menempatkan kernel pada sudut kiri atas, kemudian hitung nilai pixel pada posisi (0,0) dan kernel hasil = (3)
  2. Geser kernel satu pixel ke kanan, kemudian hitung nilai pixel pada posisi (0,0) dan kernel hasil = (0)
  3. Selanjutnya dengan cara yang sama geser ke kanan dan seterusnya
  4. Geser kernel satu pixel ke bawah, lakukan perhitungan seperti di atas
  5. Nilai pixel citra tepi tidak berubah
  6. Sehingga di dapatkan hasil sebagai berikut


Hasil Print Screen dari aplikasi Konvolusi dengan Matlab (GUI)

Berikut adalah langkah-langkah yang diperlukan :

1. Buat layout GUI yang terdiri dari 2 axes, 2text, 2button seperti gambar dibawah ini.


2. Klik kanan pada button 'Buka Gambar', klik View Callbacks > Callback

3. Isikan source code untuk tombol "Buka Gambar" seperti dibawah ini:

4. Klik kanan pada button 'Histeq', klik View Callbacks > Callback. Lalu isikan kode berikut :



GIm = handles.data1;
numofpixels=size(GIm,1)*size(GIm,2);
imshow(GIm);
HIm=uint8(zeros(size(GIm,1),size(GIm,2)));
freq=zeros(256,1);
probf=zeros(256,1);
probc=zeros(256,1);
cum=zeros(256,1);
output=zeros(256,1);   

%freq counts the occurrence of each pixel value.
%The probability of each occurrence is calculated by probf.
for  i=1:size(GIm,1)
     for  j=1:size(GIm,2)   
        value=GIm(i,j);
        freq(value+1)=freq(value+1)+1;
        probf(value+1)=freq(value+1)/numofpixels;
     end
end

sum=0;
no_bins=255;

%The cumulative distribution probability is calculated. 
for  i=1:size(probf)
   sum=sum+freq(i);
   cum(i)=sum;
   probc(i)=cum(i)/numofpixels;
   output(i)=round(probc(i)*no_bins);   
end

for  i=1:size(GIm,1)
     for  j=1:size(GIm,2)
             HIm(i,j)=output(GIm(i,j)+1);  
     end   
end

axes(handles.axes2);
imshow(HIm);
handles.data2 = HIm;
guidata(hObject,handles);


figure( 'Position' ,get(0, 'screensize' ));
dat=cell(256,6);
for  i=1:256   
dat(i,:)={i,freq(i),probf(i),cum(i),probc(i),output(i)};      
end

columnname =   { 'Bin' ,  'Histogram' ,  'Probability' ,  'Cumulative histogram' , 'CDF' , 'Output' };
columnformat = { 'numeric' ,  'numeric' ,  'numeric' ,  'numeric' ,  'numeric' , 'numeric' };
columneditable =  [false false false false false false];
t = uitable( 'Units' , 'normalized' , 'Position' , ...
            [0.1 0.1 0.4 0.9],  'Data' , dat, ...
             'ColumnName' , columnname, ...
             'ColumnFormat' , columnformat, ...
             'ColumnEditable' , columneditable, ...
             'RowName' ,[]); 
    subplot(2,2,2); bar(GIm);
    title( 'Sebelum Histogram equalization' );
    subplot(2,2,4); bar(HIm);
    title( 'Sesudah Histogram equalization' );




5. Simpan project. Lalu coba jalankan aplikasi. Hasilnya akan seperti berikut

Coba masukan gambar, dengan menekan tombol Buka Gambar,


Kemudian lakukan histogram equalization dengan menekan tombol histeq, hasilnya akan seperti dibawah ini :





Terimakasih


foto saat melakukan diskusi


Komentar