How can I fill regions?

Hi, I used imfill to fill régions. In some cases imfill fill all the regions as a single region. How can I correct this?
I=imread('image.jpg');
edg = edge(I,'log',0);
I2=imfill(edg,'holes');
thanks

Answers (1)

Image Analyst
Image Analyst on 3 Nov 2012

0 votes

Your edge filter probably had some kind of edge artifact that made a line all the way around the edge of your image. You have to find out why that is and either prevent it or break that line.

4 Comments

I used these lines but i have always the same results
edg = bwmorph(edg,'spur');
edg = bwmorph(edg,'hbreak');
Of course. So, where did you upload your image?
It's not clear what a region is, but I can tell that using an edge detector will not get them. You may have to do it manually with imfreehand().

Sign in to comment.

Tags

Asked:

on 2 Nov 2012

Community Treasure Hunt

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

Start Hunting!