누군가가 나를 MATLAB에서 가보 필터를 보여줄 수있는 방법을 보여줄 수 있지만 그것을 보여줄 수는 있지만 내가 원하는 것은 아닙니다. 이건 내 코드입니다 :matlab에 40 gabor 필터를 표시하는 방법
[Gf,gabout] = gaborfilter1(B,sx,sy,f,theta(j));
G{m,n,i,j} = Gf;
이것은 가보 필터 클래스입니다 :
imshow(G{m,n,i,j},[]);
결과 :
이 코드로 imshow, 그리고
function [Gf,gabout] = gaborfilter(I,Sx,Sy,f,theta);
if isa(I,'double')~=1
I = double(I);
end
for x = -fix(Sx):fix(Sx)
for y = -fix(Sy):fix(Sy)
xPrime = x * cos(theta) + y * sin(theta);
yPrime = y * cos(theta) - x * sin(theta);
Gf(fix(Sx)+x+1,fix(Sy)+y+1) = exp(-.5*((xPrime/Sx)^2+(yPrime/Sy)^2))*cos(2*pi*f*xPrime);
end
end
Imgabout = conv2(I,double(imag(Gf)),'same');
Regabout = conv2(I,double(real(Gf)),'same');
gabout = sqrt(Imgabout.*Imgabout + Regabout.*Regabout);
하지만이 결과를 원한다면, 누군가 이걸 어떻게 슬 루잉시키는 걸 도와 줄 수 있니?
Google에서 도움을 드리기 위해 더 많은 코드를 게시해야한다고 생각합니다. 예를 들어'gaborfilter' 함수는 보여 주지만'gaborfilter1' 함수는 보여주지 않습니다. 그들은 같은가요? 루프 내에서'gaborfilter1'을 실행한다고 가정합니다. 코드를 게시 할 수 있습니까? 또한 Gabor 필터 공식이 잘못되었다고 생각합니다. 시그마는 어디 있습니까? 'f' 할 일은 무엇입니까? – Tokkot