Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

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.

Asked by shantanu shukla on 14 Nov 2013
Latest activity Answered by Image Analyst on 25 Nov 2013
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

shantanu shukla on 18 Nov 2013

Here is the image file and there is a little bit change in code. plz rply me asp thank u

Walter Roberson on 18 Nov 2013

Which object(s) are you trying to extract?

shantanu shukla on 25 Nov 2013

Mr. Walter i want to extract tree ,river ,houses and roads. so plz help me regarding this

shantanu shukla

1 Answer

Answer by 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

Image Analyst

Contact us