convert xy coordinates into binary matrix
显示 更早的评论
I have XY coordinates of shape boundary. the points are double and I show an example on the figure. How can I represent these points in a binary matrix?
Thanks already

回答(1 个)
Walter Roberson
2018-9-7
编辑:Walter Roberson
2018-9-28
0 个投票
5 个评论
AA
2018-9-7
Walter Roberson
2018-9-7
poly2mask creates the binary matrix which is all you asked for in "How can I represent these points in a binary matrix?". If you want to display the binary matrix you can do so with
image(TheBinaryMatrix); colormap(gray(2))
or with
imshow(TheBinaryMatrix);
Or are you trying to create and display a binary matrix and also draw the original plot on top of it? Or is the problem that the displayed binary matrix is not blue line with a white background?
image(TheBinaryMatrix);
colormap([1 1 1; 0 0 1]);
Daniel Devaprakash
2018-9-28
编辑:Walter Roberson
2018-9-28
Hi Walter,
I have x (ranging from 3-4), y (0-1) coordinates of a contour (92 values); convert it into shape using alpha shape function, and then use the poly2mask function to obtain the binary image. The binary image matrix has 1 in only one element of the matrix and the rest are 0's.
For the binary image to represent the actual shape, I multiplied the co-ordinate values by 100, and then the binary image resembled the actual shape.
Code snippet:
x = x.*100; y = y.*100;
shape = alphaShape(x,y);
shape.Alpha = 1;
bw =poly2mask(shape.Points(:,1)',shape.Points(:,2)',256,256);
imshow(bw); colormap([1 1 1; 0 0 1]);
Could you please let me know if this is the correct approach to solve this problem Thank you for your time and help.
Cheers,
Danny Devaprakash
Walter Roberson
2018-9-28
You are retrieving the original points, not any information about the alpha shape implied by the points.
Daniel Devaprakash
2018-9-28
Hi Walter,
Thank you for your help.
Cheers, Danny Devaprakash
类别
在 帮助中心 和 File Exchange 中查找有关 Surface and Mesh Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!