我想检测可以3D旋转的环/盘的轮廓。我使用了陶鹏的Detect circles with various radii in grayscale image via Hough Transform。结果非常接近我的要求。除了两点:
使用陶鹏的代码,我可以得到一条整齐的蓝线,表示检测到的轮廓。我想访问这些坐标(子像素)以进行进一步处理。我无法弄清楚这些检测到的轮廓的坐标存储在何处。如果您有任何想法,请告诉我。
是否有任何此类代码可以检测椭圆而不仅仅是圆圈?这是因为在3D中旋转时的环不一定是圆形(在这种情况下,陶鹏的代码失败了。但这是我迄今为止遇到的最好的。我不想将二进制化二进制化图像,因为我将失去很多信息)。如果有任何问题,请告诉我。
除了这个代码之外,如果还有其他任何一个做同样工作的人(即使它像陶鹏的代码,对于圈子,加上给我的坐标值),请告诉我。
我更喜欢MATLAB,但C也会这样做。
这是我想要检测的轮廓的示例图像,具有高精度。 (银盘的轮廓)
问候。
编辑:
以下是使用陶鹏代码输出的示例。