I want to extract object from an image using the following threshold value program how can i use a filter to get the good result.
1 view (last 30 days)
Show older comments
a=imread('a6.jpg');
m=ones(600,800,3);
c=255.*m;
e=ones(600,800,3)
for i=1:600;
for j=1:800;
if a(i,j,1)<100
if a(i,j,1)>55
c(i,j,1)=a(i,j,1);
if a(i,j,2)<104
if a(i,j,2)>75
c(i,j,2)=a(i,j,2);
if a(i,j,3)<90
if a(i,j,3)>56
c(i,j,3)=a(i,j,3);
end
end
end
end
end
end
end
end
e=c./255;
colormap(jet);
image(e);
...
5 Comments
Answers (1)
Image Analyst
on 25 Nov 2013
You cannot get it from thresholding or even combined with texture classification. There is just too much higher level knowledge required. Maybe try this: http://www.mathworks.com/matlabcentral/fileexchange/37197-dem-diffused-expectation-maximisation-for-image-segmentation or similar. But even that won't be perfect. I suggest you use ginput or roipoly to manually locate them (unless you have thousands of images).
0 Comments
See Also
Categories
Find more on Image Segmentation and Analysis in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!