8
Nama: Rizki Anhar R Putra Nrp: 2210100134 Tugas 6 Machine Vision: Gabor filter Filter gabor disebut juga dengan filter pendeteksi tepi, dan dinamai oleh Dennis Gabor. Dengan kata lain filter gabor digunakan untuk memisahkan bagian tertentu dari sebuah gambar dimana bagian ini adalah seuah informasi yang kita inginkan. Filter gabor dan gabor wavelet mempunyai keterkaitan dimana mereka dapat dirancang untuk sejumlah dilations dan rotasi. Namun, secara umum, ekspansi tidak diterapkan untuk Gabor wavelet, karena ini perhitungan Membutuhkan bi-ortogonal wavelet, yang mungkin sangat memakan waktu. Oleh karena itu, biasanya, sebuah bank penyaring yang terdiri dari Gabor filter dengan berbagai skala dan rotasi dibuat. Penyaring convolved dengan sinyal, sehingga disebut ruang Gabor. Tujuan utama dari Gabor wavelet adalah untuk memunculkan ciri ciri khusus dari gambar yang telah dikonvolusikan terhadap kernel. Proses yang berlangsung dalam bidang frekuensi mempengaruhi kecepatan proses yang terjadi, baik dalam proses gambar maupun saat proses konvolusi.

Gabor Filter Machine Vision

Embed Size (px)

DESCRIPTION

Gabor Filter Machine Vision

Citation preview

Page 1: Gabor Filter Machine Vision

Nama: Rizki Anhar R Putra

Nrp: 2210100134

Tugas 6 Machine Vision:

Gabor filter

Filter gabor disebut juga dengan filter pendeteksi tepi, dan dinamai oleh Dennis Gabor. Dengan kata lain filter gabor digunakan untuk memisahkan bagian tertentu dari sebuah gambar dimana bagian ini adalah seuah informasi yang kita inginkan. Filter gabor dan gabor wavelet mempunyai keterkaitan dimana mereka dapat dirancang untuk sejumlah dilations dan rotasi. Namun, secara umum, ekspansi tidak diterapkan untuk Gabor wavelet, karena ini perhitungan Membutuhkan bi-ortogonal wavelet, yang mungkin sangat memakan waktu. Oleh karena itu, biasanya, sebuah bank penyaring yang terdiri dari Gabor filter dengan berbagai skala dan rotasi dibuat. Penyaring convolved dengan sinyal, sehingga disebut ruang Gabor.

Tujuan utama dari Gabor wavelet adalah untuk memunculkan ciri ciri khusus dari gambar yang telah dikonvolusikan terhadap kernel. Proses yang berlangsung dalam bidang frekuensi mempengaruhi kecepatan proses yang terjadi, baik dalam proses gambar maupun saat proses konvolusi.

Gambar diatas adalah salah satu contoh dari gabor filter dimana sidik jari seseorang dapat kita ambil bagian-bagian yang ingin kita gali informasinya atau dengan kata lain kita dapat mengetahui karakteristik bentuk sidik jari manusia.

Gabor wavelet memiliki kemampuan untuk memberikan kekuatan untuk melawan besaran indeks brightness atau kecerahan yang berbeda beda pada gambar. Lokasi yang terbatas dalam space dan frekuensi menghasilkan sejumlah kekuatan tertentu untuk melawan translasi, distorsi, rotasi, dan scalling. Hanya fase yang berubah secara drastis dengan translasi. Kekurangan dari titik-titik yang besar adalah kesensitivitasan terhadap variasi background. Hal ini ditunjukan, tetapi jika garis objek diketahui, pengaruh pada background dapat ditekan.

Page 2: Gabor Filter Machine Vision

Nama: Rizki Anhar R Putra

Nrp: 2210100134

Jika dimodelkan dalam sebuah persamaan maka proses gabor dapat dinyatakan dalam hubungan matematis sebagai berikut:

dimana

Algoritma menggunakan metode gabor filter sebagai berikut:

1. Mengakuisisi data gambar baik yang berupa video atau gambar statis yang diambil dari

devais atau media penyimpanan komputer

2. Mengubah jumlah kanal dari gambar tersebut sembari mengkuantisasi nilainya terhadap

level 8 bit(default) yakni menggunakan metode grayscale

3. Memulai menghimpun parameter-parameter dari gabor filter yang terdiri dari sigma,

panjang gelombang, orientasi atau teta, aspect ratio, dan phase offset

4. Menentukan besar kernel dari filter gabor

5. Parameter-parameter tersebut kemudian diolah berdasarkan rumus hubungan yang ada.

6. Melakukan proses konvolusi antara gambar dengan kernel yang telah diolah berdasarkan

parameter-parameter yang ada

7. Memfilter gambar hasil operasi filter gabor menggunakan filter 2D.

Page 3: Gabor Filter Machine Vision

Nama: Rizki Anhar R Putra

Nrp: 2210100134

Berikut ini adalah listing program menggunakan filter gabor:

#include <cv.h>#include <highgui.h>#include <math.h>int kernel_size=21;int pos_sigma= 5;int pos_lm = 90;int pos_th = 90;int pos_psi = 120;void main(){

IplImage*src=0;IplImage*gray=0;IplImage*output=0;src=cvLoadImage("gabor.jpg",1);cvNamedWindow("Gray",1);cvNamedWindow("Output",1);gray = cvCreateImage(cvGetSize(src),8,1);cvCvtColor(src,gray,CV_RGB2GRAY);output = cvCreateImage(cvGetSize(src),8,1);if(!kernel_size%2)

kernel_size+=1;double sig = pos_sigma;double lm = 0.5+pos_lm/100.0;double th = pos_th;double ps = pos_psi;

int hks = (kernel_size-1)/2; double theta = th*CV_PI/180; double psi = ps*CV_PI/180; double del = 2.0/(kernel_size-1); double lmbd = lm; double sigma = sig/kernel_size; double x_theta; double y_theta; CvMat*kernel=cvCreateMat(kernel_size,kernel_size,CV_32F); for (int y=-hks; y<=hks; y++) for (int x=-hks; x<=hks; x++) { x_theta = x*del*cos(theta)+y*del*sin(theta); y_theta = -x*del*sin(theta)+y*del*cos(theta); CV_MAT_ELEM(*kernel,float,hks+y,hks+x) = (float)exp(

0.5*(pow(x_theta,2)+pow(y_theta,2))/pow(sigma,2))* cos(2*CV_PI*x_theta/lmbd+ psi);

}cvFilter2D(gray,output,kernel);cvShowImage("Output",output);if(cvWaitKey(0)>=0){

cvReleaseImage(&src);cvReleaseImage(&output);cvReleaseImage(&gray);cvDestroyWindow("Gray");cvDestroyWindow("Output");

}}

Page 4: Gabor Filter Machine Vision

Nama: Rizki Anhar R Putra

Nrp: 2210100134

Dengan Gambar asli:

Denagn mengatur:

kernel size =21sigma = 5lamda = 90orientasi = 90phase offset = 120

Maka didapat:

Page 5: Gabor Filter Machine Vision

Nama: Rizki Anhar R Putra

Nrp: 2210100134

Denagn mengatur:

kernel size =21sigma = 5lamda = 90orientasi = 0phase offset = 120

Maka didapat:

Page 6: Gabor Filter Machine Vision

Nama: Rizki Anhar R Putra

Nrp: 2210100134

Page 7: Gabor Filter Machine Vision

Nama: Rizki Anhar R Putra

Nrp: 2210100134