当前位置:首页 > 基于图像处理的车道线识别算法研究
长春理工大学本科毕业论文
1、对图像进行合适的预处理,尽力排除噪声点的干扰;
2、对图像进行边缘提取、区域分割等,提取出有用的信息,再根据统计学的一些原理来应用Hough变换,减少Hough变换的运算量
3、对于Hough变换以上缺陷中的第二点,可以设计特殊的数据结构记录Hough变换过程中的数据,从而解决探测直线等起止点的问题。
3.2 Hough变换圆检测
3.2.1 Hough变换圆检测的基本原理
Hough变换直线检测中是将图像空间中的一条直线映射为参数空间中的一个点,对圆的检测同样如此,这也是Hough变换的核心思想所在。但是直线检测需要两个参数,而圆检测需要三个参数(x,y,r)((x,y)为圆心坐标,r为圆的半径)。
在平面直角坐标系中,圆用方程来表示,将圆上的一点(x0,y0)映射到参数空
x?x)?(y?y)?r间,对应的方程为(由于圆的半径r不确定,所以参数空间是00222一个三维空间,每一点在参数空间映射为一个圆锥,如图(3-3)所示:
因此,Hough变换圆检测的计算量会是相当大的,这是传统Hough变换最大的
17
图3-3 圆上一点在参数空间的映射 长春理工大学本科毕业论文
缺陷之一。
3.2.2 对hough变换圆检测算法的改进
由于传统的Hough变换圆检测算法计算量太大,所以需要对其进行改进以增强其实时性。
对于圆,有如下性质:圆上一点的法线必过圆心。根据这一性质,随机选取圆上若干各点,求得其法线,法线的交点便是圆心,进而也可以很容易地计算出圆的半径。
那么如何求一个点的法线呢?对于图像中的一个点,其法线方向便是其梯度变换最大的方向,且法线与切线呈垂直关系,那么我们可以先求一点的切线,进而得到这一点的法线。
3.2.3 最小二乘法求曲线上一点的切线
最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳匹配函数。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合等初中应用领域。
假设图像中存在处于一条直线附近的几个点,那么设这条直线的方程为:
Yj?kxi?b
k为直线斜率,b为截距。
为求得k和b,根据最小二乘法原理,将实测值Yi与Yj的离差(Yi?Yj)的平方
?YY和?i?j?最小作为最优判据。
2令
???YY?i?j?
2
(3-1)
当?最小时,分别对k和b求偏导,令这两个偏导数等于0:
2?(Y?kX?b)??ii??2X(b?kX?Y) ?iii?k?k (3-2)
?18
长春理工大学本科毕业论文
2?(Y?kX?b)??ii??2(b?kX?Y)?ii?b?b
?
(3-3)
两个偏导数等于0,即得:
nXYXY??ii?iik?22nX(X)??i?i b?Y?kX??ii
(3-4)
(3-5)
n
将和的结果代入原直线方程,即得拟合所得的直线方程为:
Y ? 2 2 ? n X ( X ) ? i ? i n Yi Yi ? X ? X i ? i Y k X ? ? ? X ? iin 同样,在图像中圆上某一点的切线方程也可用同样的方法求得。
虽然最小二乘法能比较方便的得出圆上一点的切线,但要知道其正确性与点的样本大小有很大关系,如果样本太小,则计算误差变大,很可能得不到正确的结果,若样本太大,则计算量也将随之增大,所以样本大小的选取是一个不可忽视的问题。
图(3-4)展示了根据最小二乘法原理得到的曲线上一点的切线:
图3-4 最小二乘法得到曲线上一点的切线
3.3 Hough变换椭圆检测
根据前面的分析,道路车道线经过图像采集设备采集后,其原本的圆将会变化
19
长春理工大学本科毕业论文
为椭圆,所以我们更应该关注椭圆的检测。
根据Hough变换圆检测的算法,进一步讨论椭圆的检测,由于椭圆上一点的法线并不过椭圆的中心,所以上面的圆检测算法不能直接用于椭圆的检测,需要进一步的改进。根据椭圆的性质:椭圆上两点法线的交点与这两点中点所确定的直线过椭圆中心。我们自然而然便能对圆检测算法加以改进以适应椭圆的检测。
椭圆检测的过程描述为:
第一步:在目标图形上选取随机的三个点分别记为P1、P2和P3,并求得他们各自的切线,分别记为T1、T2、T3和他们两两间的中点,分别记为C1?2、C1?3和C2?3(C1?2即为P1和P2的中点);
第二步:找到这三条切线两两相交的交点,分别记为J1?2、J1?3和J2?3(J1?2即为T1和T2的交点,以此类推);
第三步:将对应的交点与中点连接,即C1?2与J1?2、C1?3与J1?3、C2?3与J2?3,将得到的直线分别记为L1?2、L1?3和L2?3;
第四步:求得这三条连线两两相交的交点,根据一定的距离准则,判断这三点是否足够接近,如果足够接近,说明此时的形状可能是一个椭圆,否则则说明不是;
第五步:在目标图形上另选一点,求其切线,并将其与其他三点中的一点重新配对,得到两切线交点与中点的直线方程;
第六步:根据同样的距离准则,判断新得到的直线与其他直线的交点是否足够接近,如果是,那么目标图形是一个椭圆,如果不是,则说明目标图形不是椭圆。
图(3-5)为根据此方法对椭圆进行检测的结果:
20
共分享92篇相关文档