MATLAB Answers


Repeat snake processing (loop) on the same image in order to detect several features

Asked by Rdmato33 on 13 Jul 2015
Latest activity Commented on by Ashish Uthama on 15 Jul 2015


I have tested the snake (active contour) algorithm from Chenyang Xu and Jerry L. Prince (<>) in order to extract feature border. It works very well.

However, I did it only on a single sample extracted from a bigger image which contains hundred features (as you can see below).

How can I repeat this process automatically to the whole image and thus, obtain the contour of every feature? For information, I already have the center coordinates for all features.

Thanks, Rémi


Sign in to comment.

1 Answer

Answer by Ashish Uthama on 13 Jul 2015

If you have a newer version, give the imageSegmenter app a go (it uses active contours).
I used part of your image with some simple preprocessing
imcomplement(rgb2gray(cropped image))
To get:


Thank you Ashish Uthama for your reply and the picture.
Actually, your results are not accurate enough for me even if the method seems to be efficient. My goal is to obtain morphometry characteristics of each feature. So they have to be separated (as you can see on your picture, linear features obstruct point features. I want to avoid it by using snake method from local coordinates).
But I don't know how to repeat this process automatically.
Do note - I just used some defaults. I was not certain I understood what features you were looking to isolate, the point was just to show you that this app might help you get started in the right direction.
I can imagine doing some simple morphological post-processing to isolate the roundish structures.

Sign in to comment.