有关gabor变换的问题
close all;clear all;clc;
I=double(imread('C:\1.bmp'));%图像100×100
w=sqrt(2)*pi/2;
theta=0;
d=(pi/w)^2;
G=zeros(100,100);
for x = 1:100
for y = 1:100
x_theta=x*cos(theta)+y*sin(theta);
y_theta=y*cos(theta)-x*sin(theta);
G(x,y)=(1/(2*pi*d))*exp((-1*((x_theta)^2+(y_theta)^2))/(2*d))*(exp(w*x_theta)-exp(-1*w*w*d/2));
end
end
result=abs(ifft2(fft2(I).*fft2(fftshift(G))));
figure;
imshow(result);
------------------------------------------------------------------------------
简单来说就是对原图像进行如程序所示形式的gabor滤波器进行变换,不知道是G(x,y)表达式有问题还是之前的窗口x,y大小设置问题,显示的重构图像总是白板,和预计出入很大,求指教,拜谢!