我正在搜索图像中圆的半径和中心坐标。已经尝试过 2D Hough 变换。但我的圆半径也是未知数。我仍然是计算机视觉的初学者,所以需要指导线和帮助来实现三维霍夫空间。
问问题
1336 次
2 回答
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)
于 2011-11-09T12:52:44.770 回答
2
Thiton 为您提供了解决问题的正确方法。但是,您将遇到霍夫变换固有的其他问题:
你如何可视化参数空间?您可以使用 VTK 之类的库来实现某些东西,但数据的 3D 可视化始终是一个困难的话题。可视化对于调试检测算法很重要,并且是 2D 霍夫变换的优点之一
局部最大值检测并非易事。新维度意味着您的参数空间将更加稀疏。您将在此区域进行更多调整
如果您正在寻找圆形检测算法,您可能有比霍夫变换更好的选择(谷歌“使用梯度对向量的快速圆形检测”对我来说看起来不错)
于 2011-11-09T13:08:41.397 回答