MATLAB Answers

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

2 views (last 30 days)
Rdmato33 on 13 Jul 2015
Commented: 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.

Answers (1)

Ashish Uthama
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:


Rdmato33 on 15 Jul 2015
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.
Ashish Uthama
Ashish Uthama on 15 Jul 2015
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.

Community Treasure Hunt

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

Start Hunting!