Remove noise from the image

1 view (last 30 days)
shubham kumar gupta
shubham kumar gupta on 23 May 2022
Edited: shubham kumar gupta on 23 May 2022
I have a image of a coin I wanted to make a circular mask to remove noise [Attached mat]
I tried using imfindcircle but it is not working properly

Answers (1)

Bjorn Gustavsson
Bjorn Gustavsson on 23 May 2022
First start by trying standard filtering-methods. Compare what you get with 2-D median-filter (medfilt2), and Lee's sigma-filter (wiener2) and see how they perform. After doing that you can check different more advanced image-filters on the file-exchange, for example: bilateral filters, Nonlinear Diffusion filters, total variation filtering and on and on. But first use the basic tools then understand their use and the noise-characteristics in your image. Check the help and documentation to medfilt2 and wiener2.
HTH
  3 Comments
Bjorn Gustavsson
Bjorn Gustavsson on 23 May 2022
Yes they do, you might have to take further steps after that. Clearly your image have very peculiar non-uniform illumination that you'll also have to correct for.
shubham kumar gupta
shubham kumar gupta on 23 May 2022
Edited: shubham kumar gupta on 23 May 2022
Its a tilted coin of 180 radius centers not properly known
I tried this first
r=180x_c=180+17;y_c=180+5;
%generate a coordinate grid
[y,x]=ndgrid(0:401,0:401);
%perform calculation
paper= (x-x_c).^2+(y-y_c).^2 <= r^2;
%show result
figure,imshow(paper); %show masked image
for i=1:401
for j=1:401
if paper(i,j)<1
d(i,j)=paper(i,j)*d(i,j);
end
end
end
figure,mesh(d)
rest i'm trying to remove

Sign in to comment.

Products


Release

R2022a

Community Treasure Hunt

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

Start Hunting!