please any one correct the code attached below

%(Image Enhancement)
image=imread('thumb.jpg');
function [final]=fftenhance(image,f)
I = 255-double(image);
[w,h] = size(I);
%out = I;
w1=floor(w/32)*32;
h1=floor(h/32)*32;
inner = zeros(w1,h1);
for i=1:32:w1
for j=1:32:h1
a=i+31;
b=j+31;
F=fft2( I(i:a,j:b) );
factor=abs(F).^f;
block = abs(ifft2(F.*factor));
larv=max(block(:));
if larv==0
larv=1;
end;
block= block./larv;
inner(i:a,j:b) = block;
end;
end;
final=inner*255;
final=histeq(uint8(final));

4 个评论

What's the issue or error that you are facing? Can you attach the image thumb.jpg with the paperclip icon?
function [final]=fftenhance(image,f)
I = 255-double(image);
error:
Error in enh (line 3)
I = 255-double(inputimage);
indrani, post the complete error message.
dear sir,
attached the code here with error message
%(Image Enhancement)
function [final] = fftenhance (image,f)
I = 255-double (image);
[w,h] = size(I);
%out = I;
w1=floor(w/32)*32;
h1=floor(h/32)*32;
inner = zeros(w1,h1);
for i=1:32:w1
for j=1:32:h1
a=i+31;
b=j+31;
F=fft2( I(i:a,j:b) );
factor=abs(F).^f;
block = abs(ifft2(F.*factor));
larv=max(block(:));
if larv==0
larv=1;
end;
block= block./larv;
inner(i:a,j:b) = block;
end;
end;
final=inner*255;
final=histeq(uint8(final));
end
error:
>> fftenhance
Not enough input arguments.
Error in fftenhance (line 3)
I = 255-double (image);

请先登录,再进行评论。

回答(1 个)

You need to call the function fftenhance with an input image. For example
image = imread('pears.png'); % name of an image file
fftenhance(image, 2)
Save your function in a file named fftenhance.m, and then run the above two lines in command window.

5 个评论

dear sir,
where am i put this line.actually i am a beginer.
Indrani, create a file name fftenhance.m and save the following code in it.
%(Image Enhancement)
function [final] = fftenhance (image,f)
I = 255-double (image);
[w,h] = size(I);
%out = I;
w1=floor(w/32)*32;
h1=floor(h/32)*32;
inner = zeros(w1,h1);
for i=1:32:w1
for j=1:32:h1
a=i+31;
b=j+31;
F=fft2( I(i:a,j:b) );
factor=abs(F).^f;
block = abs(ifft2(F.*factor));
larv=max(block(:));
if larv==0
larv=1;
end;
block= block./larv;
inner(i:a,j:b) = block;
end;
end;
final=inner*255;
final=histeq(uint8(final));
end
Then close that file and run these lines in command window
image = imread('pears.png'); % name of an image file
fftenhance(image, 2)
If you do not know this basic interaction with Matlab you will greatly benefit from doing a tutorial. The Matlab OnRamp course provided for free is usually a good start.
dear sir,
when run these lines in command window this message is shown
image = imread('pears.png'); % name of an image file
fftenhance(image, 2)
Undefined function or variable 'fftenhance'.
You need to make sure your function is on the Matlab path or in your current folder.
What does this line return as output?
clc,disp(pwd),which fftenhance -all
And what exact folder did you save the fftenhance.m file?

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Image Filtering and Enhancement 的更多信息

评论:

Rik
2020-4-22

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by