Segment nodes in an image

1 Ansicht (letzte 30 Tage)
hu
hu am 19 Okt. 2013
Kommentiert: Image Analyst am 22 Okt. 2013
Hi,
I am new in image processing and I am trying to learn it by myself using Matlab.
I have a question based on an image I found and attached:
-How can I segment the left image that each node (I am not sure I use the correct terminology) will get different color and number (right image), is it also possible get other information like area in pixels?
Thanks a lot

Antworten (2)

Image Analyst
Image Analyst am 19 Okt. 2013
You can skeletonize the image
bwSkel = bwmorph(binaryImage, 'skel', inf);
then find the branchpoints:
bp = bwmorph(bwSkel, 'branchpoints');
then remove them
binaryImage = bwSkel & ~bp;
then label
labeledImage = bwlabel(binaryImage);
That's just off the top of my head - I have not tested it.
  2 Kommentare
hu
hu am 22 Okt. 2013
Unfortunately it does not work
Image Analyst
Image Analyst am 22 Okt. 2013
OK, well, keep working at it because the algorithm should work but might need a tweak or two.

Melden Sie sich an, um zu kommentieren.


Yannick
Yannick am 19 Okt. 2013
See if this example helps: Measuring Angle of Intersection
Basically, it takes an image in which we want to measure the angle between two straight objects, identifies these objects, then finds the intersection point and the angle between them. Maybe you can use these ideas to find the intersection points / nodes and detect the branches in your image.
And this may help to find areas in pixels: BWAREA.

Community Treasure Hunt

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

Start Hunting!

Translated by