边缘检测后得到边缘坐标(Canny)

时间:2011-04-29 06:42:01

标签: opencv coordinates edge-detection

我一直在使用OpenCV很短的时间,并在图像上执行了Canny边缘检测,并在此之后进行了扩张,以进一步将对象(在我的情况下为正方形)与背景分开。

我的问题,现在是使用一种算法来识别2D中的可抓握区域,该算法要求我处理这些边缘中的点的坐标。有什么方法可以使用OpenCV来获得角点的坐标,这样我就能找到形成正方形边缘的线的方程式?我知道广场的大小。我的问题涉及2D坐标几何,因此需要坐标。

如果需要,我可以在边缘检测和扩张后提供图像。帮助将非常感激。

2 个答案:

答案 0 :(得分:3)

只提供第二种方法 - 不能保证有效。

  • 步骤1:提取连通分量及其轮廓。这可以在Canny边缘检测步骤之后应用。
  • 步骤2:如果轮廓非常接近正方形,则可以直接使用它们的边界框。

免责声明的原因是它只适用于非常干净的结果,Canny边缘没有任何破损的边缘或间隙等。如果您需要更强大的方法来查找矩形,Hough transform将是必要的

答案 1 :(得分:1)

您可以使用OpenCV中提供的角点检测器,如Harris或Corner Eigenvalues。 Here's一个例子以及完整的代码。

如果其他功能也出现问题,您可能需要进行连接组件分析。