Python和OpenCV - 为车道检测提供更好结果的算法

时间:2016-05-12 01:03:09

标签: python algorithm opencv

我正在尝试从检测到的图像/视频边缘检测泳道,并对其应用Hough变换。现在,我试图比较霍夫变换和概率霍夫变换的结果。

所以,这是我的结果。 (红线是概率霍夫变换的结果,而绿线来自正常的霍夫变换)。 enter image description here

首先,我确定了感兴趣区域(ROI),并在其上完成了许多过程以获得结果。 enter image description here

我已经做了一些数学计算,因此概率霍夫变换和霍夫变换只检测到某些线条(比如定义所需线条的角度)。

霍夫变换:

如您所见,我需要降低霍夫变换的阈值,以便也可以检测到较短的道路(右侧)。但这导致许多不需要的线被检测到,特别是在道路的左侧。

解决这个问题的一种方法是,我想只允许在一定角度范围内检测到一条线(对于道路的左右车道)。

例如,对于从0到90度的角度范围,只检测具有最高投票的线(对于左侧车道),以及从90度到180度,也只检测具有最高投票的线(对于正确的车道)。但我不知道这是否是最好的选择以及可能发生的不可预测的后果(特别是如果我在视频上使用这种方法。)

概率Hough变换:

另一方面,我真的参与了概率霍夫变换,因为我认为它更强大。问题是,它有点不可预测(至少对我来说),我需要一种方法来从概率Hough变换输出的许多行中得到更好的一行。我能想到的一种方法是计算它的梯度,然后用它做出一些东西。

所以,我需要知道是否有任何人可以尝试实施任何好的想法/算法。提前谢谢。

0 个答案:

没有答案