Now, I have implemented the Gabor filter as : In my_gabor_filter.m, I have the following code :
function psi = my_gabor_filter(x,y,mu,nu,sigma)
phi = pi*mu/8; f = sqrt(2); k_max = pi/2; k_nu = k_max/(f^nu); k_vec = [k_nu*cos(phi),k_nu*sin(phi)]'; z_vec = [x,y]'; k_vec_norm = norm(k_vec); z_vec_norm = norm(z_vec); exp1 = (k_vec_norm/(sigma^2)); exp2 = (exp(-((k_vec_norm^2)*(z_vec_norm^2)/(2*sigma^2)))); exp3 = (exp(complex(0,k_vec'*z_vec))-exp(-(sigma^2/2))); psi = exp1*exp2*exp3;endand, in plot_gabor_filter.m I did the following :
function plot_gabor_filter()
mu = 0; nu = 0; sigma = 1; [X,Y] = meshgrid(0:1:39,0:1:39); Z = my_gabor_filter(X, Y, mu, nu, sigma); mesh(X,Y,Z,'EdgeColor','black')
end and when I run plot_gabor_filter.m, I get the following output :
>> plot_gabor_filterError using * Inner matrix dimensions must agree.Error in my_gabor_filter (line 17)exp3 = (exp(complex(0,k_vec'*z_vec))-exp(-(sigma^2/2)));Error in plot_gabor_filter (line 16)Z = my_gabor_filter(X.^1 ,Y.^1,mu,nu,sigma);
So I have come this far. Kindly help me.
Best Answer