what the right function ?
2 次查看(过去 30 天)
显示 更早的评论
any body can help me?
i'm a newbie with matlab.
why this function error. "function I= checkered(N,s)"
% Prepare image
f = zeros(30,30);
f(5:24,13:17) = 1;
imshow(f,'notruesize')
% Compute Fourier Transform
F = fft2(f,256,256);
F = fftshift(F); % Center FFT
% Measure the minimum and maximum value of the transform amplitude
min(min(abs(F))) % 0
max(max(abs(F))) % 100
imshow(abs(F),[0,100]); colormap(jet); colorbar
imshow(log(1+abs(F)),[0,3]); colormap(jet); colorbar
% * What is the main difference between representing the amplitude and its logarithm?
% Look at the phases
imshow(angle(F),[-pi,pi]); colormap(jet); colorbar
% * Try with other images
f = imread('fotokanker1.jpg');
f = ind2gray(f,gray(256));
% * Or more patterned from Yamitani (at Caltech Univ.) homepage.
% * Checkered images
function I= checkered(N,s)
% This function returns a checkered image of size N
% and with a check size of s
I=zeros(N,N);
for i=1:N,
for j=1:N,
if (mod(floor(i/s)+floor(j/s),2)==0) I(i,j)=1; end;
end;
end;
f=checkered(256,32); imshow(f);
1 个评论
采纳的回答
per isakson
2012-4-29
If checkered is supposed to be a nested function if must be closed with the keyword end.
更多回答(1 个)
Wayne King
2012-4-29
It looks to me like this function is ok. I mean you don't need the semicolons after the ends, but ok fine.
Did you save this checkered.m file somewhere on your path? Then you can call it with:
f=checkered(256,32); imshow(f);
Don't try to execute this whole thing as a script, maybe that is what you are doing wrong. Pull out the function and save that in a separate checkered.m file.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Colormaps 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!