save line segments as binary mask
Afficher commentaires plus anciens
I have a skeleton stored as a set of line segments in the vector ln[x0,y0,x1,y1;...]. I can draw the skeleton on the image of size(r,c) by
im=zeros(r,c);
imshow(im)
line(ln(:,[1,3])',ln(:,[2,4])','color','w','LineWidth',1);
How can I save the skeleton displayed on the image as a binary mask, with pixels on lines being 1 and everything else being 0?

Réponses (1)
Guillaume
le 15 Nov 2014
0 votes
If you have the Computer vision toolbox, you can use insertshape to draw the lines straight into your image.
If not, you can use getframe to capture the content of the figure. Unfiortunately, my experience with getframe is that it doesn't work too well and doesn't return an image the same size as you started with.
Your final option is to write your own line drawing algorithm. Bresenham's algorithm is a simple and efficient one.
Catégories
En savoir plus sur Feature Detection and Extraction dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!