我在图像中搜索半径和圆的中心坐标。已经尝试过2D Hough变换。但我的圆半径也是一个未知数。我仍然是计算机视觉的初学者,因此需要行会线并帮助实现三维霍夫空间。
答案 0 :(得分:3)
您实现它就像2D Hough空间一样,但有一个额外的参数。伪代码看起来像这样:
for each (x,y) in image
for each test_radius in [min_radius .. max_radius]
for each point (tx,ty) in the circle with radius test_radius around (x,y)
HoughSpace(tx,ty,test_radius) += image(x,y)
答案 1 :(得分:2)
Thiton为您提供了正确解决问题的正确方法。但是,你将遇到霍夫变换固有的其他问题:
如何可视化参数空间?您可以使用像VTK这样的库实现某些功能,但数据的3D可视化始终是一个难题。可视化对于调试检测算法很重要,并且是2D hough变换的好处之一
局部最大检测非常重要。新维度将意味着您的参数空间将更稀疏。您将在此区域进行更多调整
如果您正在寻找圆检测算法,您可能有比霍夫变换更好的选项(谷歌“快速圆检测使用渐变对向量”对我来说很好)