Matrix Dimensions Must Agree
1 次查看(过去 30 天)
显示 更早的评论
I have the following code and am trying to apply the Gaussian filter: I do not know how the fix the matrix dimensions mismatch problem in this case and in general. Can I request some help. I wasnt able to fix this on my own.
CODE:
clc;
I = imread('C:\Documents and Settings\122244\Desktop\CT.JPG');
figure, imshow(I,[]);
J = fftshift(fft2(I));
L = log(1+abs(J));
figure, imshow(mat2gray(L),[]);
[j,k] = size(J);
gs=zeros(j,k);
sig=20;
for m=1:j;
for n=1:k;
gs(m,n)=exp(-((m-366)^2+(n-366)^2)/(2*sig^2));
end
end
gs = fftshift(fft2(gs));
M = log(1+abs(gs));
figure, imshow(M,[]);
FLT = gs.*J;% Error line where I get matrix dimension error.
FI = abs((ifft2(FLT)));
figure,imshow(FI,[]);
I couldnt find any help online as well.
Regards, ---Ish
0 个评论
采纳的回答
Sean de Wolski
2012-3-6
dbstop if error
then run your file
what is?
size(gs)
size(J)
It should be obvious at this point.
5 个评论
Sean de Wolski
2012-3-6
So it's being read in as rgb with all three slices (r,g,b) being the same? If this is the case:
gs = gs(:,:,1); % keep only first slice.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Processing Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!