我有骷髅二进制图像和联结信息。我想以交点为中心绘制圆,并且想要找到圆和二值图像的交点。 我写了下面的代码:
BW = imread('circles.png');
imshow(BW);
BW2 = bwmorph(BW,'remove');
figure, imshow(BW2)
BW3 = bwmorph(BW,'skel',Inf);
figure, imshow(BW3)
BW3t = bwmorph(BW3,'thin');
figure, imshow(BW3t)
[rj, cj, re, ce] = findendsjunctions(BW3t, 1);
hold on
plot(cj(1),rj(1),'ob')
hold on
circle([cj(1),rj(1)],4,50,':r');
findendsjunctions.m和相关的文件show.m可以从这里下载:http://www.csse.uwa.edu.au/~pk/research/matlabfns/LineSegments/findendsjunctions.m分别这里http://www.csse.uwa.edu.au/~pk/research/matlabfns/Misc/show.m。 和circle.m可以从这里下载:http://www.mathworks.co.uk/matlabcentral/fileexchange/2876-draw-a-circle/content/circle.m
我想知道圆是否与它周围的2,3或4条容器相交(标记为图像中的星号)。即使单个船只横向多次旋转但输出应该是每个船只的一个交点。
请建议如何找到圆形和二元船的交集。
感谢
和您的问题?你迄今为止试图做什么?你有其他代码的链接,实现这些代码有什么问题? – bla
@natan上面的代码实现没有问题,但我的下一步是找到圆和二进制图像的交点。我想找到圆圈与二元容器相交处的3个点(标记为图像中的星号)。你可以建议如何? – Dev
请参阅安德烈的网页:https://matlabcorner.wordpress.com/ – bla