OpenCV平行线剔除

时间:2013-04-20 21:38:38

标签: opencv image-processing detection image-recognition object-detection

我有一个算法,只需经过多个角落就可以找到平行的算法。我的问题是,如下所示,我有时会得到假阳性结果。

为了消除这种情况,我将检查这两个点是否落在一个单一的线上,但这将是计算密集型的,我想知道是否有人有任何更简单的想法。

感谢。

False Positive Parallel Line

1 个答案:

答案 0 :(得分:2)

根据评论,这应该是可修复的。当您检测到一对平行线时,使用您用于构造它的两个角来获取线的等式。此行的格式可以是y = mx + c。然后,对于两个点之间的每个y坐标,计算x坐标。这为您提供了一组线段覆盖的所有像素。仔细检查这些像素,检查每个像素的强度是否接近黑色而不是白色。如果集合中的大多数像素是黑色,那么它就是一条线。如果没有,它可能是非线路。

相关问题