基于图像的车道线检测与跟踪-精品内容摘要:
日本学者大津展之于 1979 年提出,又称大津算法 (OTSU)。 大津算法 (OTSU)是一种全局阈值选取法,它在判别式分析最小二乘原理的基础上推导得出,因其算法简单,所以是被广泛使用的图像分割算法。 在图像中,方差是灰度分布是否均匀的度量之一。 方差越大,说明图像中的背景和目标的差别就越大。 当一些背景区域错误划分为目标或者一些目标区域错误划成背景时,背景和 目标的差别就会变小。 因此采用类间方差最大的图像分割,其错分的概率就最小 [8]。 假设图像的目标和背景的分割阈值为 T,且前景像素点数占图像的比例为 1 ,其平均灰度为 1 ;背景像素点占图像的比例为 2 ,平均灰度为 2 ;图像的平均灰度记为 ,类间方差记为 g。 MN 大小的图像中像素的灰度值小于阈值 T 的像素个数记作 1N ,像素灰度大于阈值 T 的像素个数记作 2N ,则有: 11 NMN (23) 22 NMN (24) 12N N M N (25) 121 (26) 1 1 2 2 (27) 221 1 2 2( ) ( )g (28) 将式 (27)代入式 (28),得到等价公式: 21 2 1 2()g 8 当方差 g 最大的时候,就是目标和背景的差异最大的时候,此时得到的灰度值就是最佳阈值。 可以得到大津算法 (OTSU)计算最佳阈值 T 的公式: m i n 200a r g m a x ( )m a Xg t g B gT d ist u t u t w t w t 在min maxg t g中穷举每一个 t 值,使得 dist 取得最大值的 t 即为要求的阈值。 大津算法 (OTSU)二值化的图像如图 22 所示: 图 22: 大津算法 (OTSU)二值化的图像 连通域标记 二值化的图 像有许多信息是我们不需要的,为了突出车道线信息,可以对二值化的图像进行连通域 标记,将白色像素点数量太多和太少的白色区域去除掉,以提取我们感兴趣 的车道线区域。 连通域标记就是把连续区域作同一个标记,常见的算法有四邻域标记算法和八邻域标记算法 [9]。 下面分别介绍一下这两种方法。 四邻域标记算法: 1. 判断此点四邻域中的最左,最上有没有点,如果都没有点,则表示一个新的区域的开始。 9 2. 如果此点四邻域中的最左有点,最上没有点,则标记此点为最左点的值;如果此点四邻域中的最左没有点,最上有点,则标记此点为最上点的值。 3. 如果此点四邻域中的最左有点,最上都有点,则标记此点为这两个中的最小的标记点,并修改大标记为小标记。 八邻域标记算法: 1. 判断此点八邻域中的最左,左上,最上,上右点的情况。 如果都没有点,则表示一个新的区域的开始。 2. 如果此点八邻域中的最左有点,上右都有点,则标记此点为这两个中的最小的标记点,并修改大标记为小标记。 3. 如果此点八邻域中的左上有点,上右都有点,则标记此点为这两个中的最小的标记点,并修改大标记为小标记。 4. 否则按照最左,左上,最上,上右的顺序,标记此点为四个中的一个。 连通域标记处理后的 二值 图像如 23 所示: 图 23: 连通域标记处理后的二值图像 10 图像的边缘提取 图像的边缘是图像的基本特征,常存在于目标与背景之间。 边缘点附近的 像素 灰度通常存在阶跃变换或屋顶状变换。 边缘提取方法分为两类:一类是基于图像边缘拟合算子的提取方法;另一类是基于微分算子求得图像边缘,滤波器模板在这类算法中大量使用。 边缘提取是图像处理中基础而重要的步骤,是图像识别的基础。 道路图像中的车道线边缘是车道线和路面之间像素灰度有屋顶变化或阶跃变化的像素集合,是车道线的基本特征之一。 常用的边缘 提取算子有 Roberts 算子、 Sobel 算子、 Laplace 算子、Krisch 算子、 Prewitt 算子和 Canny 算子。 Canny 算子 是高斯函数的一阶微分 , 能在噪声抑制和边缘检测之间取得较好的平衡。 Canny 算子提取的图像边缘如图 24 所示: 图 24: 边缘提取后的图像 11 第 3 章 基于 Hough 变换的车行道检测 在智能交通系统 (ITS)中,车道线检测主要是为了以后估计车辆在道路中的行驶位置和其行驶方向,以便控制车辆的正常行驶。 同时,车道线检测确定了障碍物检测的搜索范围,为后续的目 标检测提供了较大的方便。 图像经过预处理后,车道线的检测便成为我们要解决的主要问题。 基于 Hough 变换的车道线检测是目前应用最为广泛的车道识别方法之一, 它完成 从图像中识别 特定的 几何形状。 利用 Hough 变换可以获得车道线所在直线的参数值,准确定位车道线的位置。 Hough 变换最大的缺点就是计算量复杂 [10,11]。 Hough 变换基本原理 霍夫变换于 1468 年由 Paul Hough提出,是一种依据图像全局统计特性的目标检测方法,霍夫变换利用两个不同坐标系之间的变换来检测图像中的直线和曲线。 它将 图像空间中的直线映射到参数空间的一个点,然后对该点进行累计投票,这样便可得到参数空间中的峰值。 经过霍夫变换后,直线的检测问题便转换成了参数空间峰值的统计问题,提取出的峰值经过反变换拟合出所需的直线方程。 一般的直线用斜率 k和截距 b来表示,即以方程 y=kx+b表示。 如果检测直线的 N个边缘表示为: 00(x , y) 、 11(x , y) 、 … 1 1(x , y )nn 假设直线的方程表达式为 y=kx+b,于是可以得 到 n个方程式: 00=+y kx b 、 11=+y kx b 、 … 1 1=+nny kx b 用计数器 num[k][b]记录每一可能直线的值, num中的最大值对应的直线 y=kx+b即为待求直线的最佳解。 鉴于上述方法很难确定斜率 (k)的取值范围,如果斜率 k取值太细,计算量大,反过来 k取值太粗的话,又会造成所求直线的准确率不够。 图像空间中的任一直线均可用极坐标表示,如式 31所示: 12 cos si nxy (31) 其中 为直线 l相对于坐标原点的距离, 为直线 l与 x轴的夹角。 图 31: Hough变换图 如图 31所示,直角坐标空间上的一点转换到极坐标空间上,则是一条正弦曲线,直角坐标空间上的同一条直线上的各点在极坐标空间对应的曲线均相交于一点。 改进的 Hough 变换 图像经过滤波、二值化、感兴趣区域提取和边缘提取等预处理后, 便可以通过Hough 变换就得车道线,但是传统的 Hough 变换计算量大,难以满足实时要求。 本文采用改进的 Hough 变换,改进后的变换计算量大大减少,检测效果也很好。 极角约束区域的建立 一般车道线分布在道路图像的左右两侧, 经过大量实验测试得出: 左 车道线 1 的值在 2070 度之间, 右车道线 2 的值在 120170 度之间 ,我们称这一区域为极角约束区域。 所以在对图像进行处理和 Hough 变换时,只用考虑极角 约束区域。 如图 32所示图像的极角约束区域。 13 图 32: 极角约束区域 极角约束区域的建立,可以大大减少噪声直线的信号,增加车道线检测的准确率。 传统的 Hough 变换对图像空间中的边缘点在 (0180)度内进行变换,然后在参数空间对应的直线投票累加,参数空间累加的峰值点即为车道线的直线方程。 要提高 Hough 变换的计算速度,可以减小边缘点个数、减小 变换范围。 极角约束区域的限制正好减小了 变换范围,所 以加快了变换的运算速度。 动态感兴趣区域 ROI 的建立 车道线信息一般在图像的下半部分,或者摄像头视角区域的下半部分。 感兴趣区域 (ROI)的建立是在空间直角坐标系下确定车道线可能存在的区域范围,这样会缩短车道线检测的时间,提高了检测速率和实时性。 对图像建立 直角坐标系,坐标原点在图像中心,则距离坐标原点 X 宽度的左右两侧分别有一个宽度为 W 的矩形区域。 这两个矩形区域就是我们建立的 ROI,如图 33所示: R O I R O I 图 33: 图像中 ROI 区域 14 动态感兴 趣区域的位置不是固定不变的,需要实时调整和更新上面的 X 和 W 值。 根据低通滤波原理,我们根据公式 32 和 33 调整这两个参数: ( t + 1) = ( t ) + ( 1 ) X ( t )Xp (32) ( t + 1) = ( t ) + ( 1 ) W ( t )Wq (33) 其中 p(t) 和 (t)q 为上一帧图像中车道线的位置, 为参数更新常数。 15 第 4 章 车道线的高斯混合模型建立 对道路图像经过预处理和 Hough 变换后,便可检测出车道线,为了提高整个系统的鲁棒性和稳定性,本文采用了高斯混合模型来预测和跟踪车道线信息。 高斯混合模型对道路图像中车道线进行实时检测保持,可以有效的解决车道大范围的变向、路面不平引起的抖动等因素的影响。 由于车辆行驶速度有限,同一车道线目标在前后两帧图像中的位置变化缓慢,即当前帧中检测的车道线位置应在已经检测出来的车道线在序列图像中的历史位置附近。 根据这一结论,当前车道线位置的存在范围是可以估计的。 所以本文提出对检测出来的车道线位置进行校正,校正方法是当相邻两次检测得到的车道线位置变化不大时,认为检测出来的车道线无误;当相邻两次检测得到的车道线位置变化很大时,舍弃当前检测结果,取历史车道线结果,历史车道线通过高斯混合模型建模 [16]。 单高斯背景建模 单高斯模型是图像处理中背景提取常用的处理方法,适用于背景单一不变的场合。 本文利用它为左右两条车道线分别建立了单高斯分布表示的模型,车道线的斜率理论上符合均值为 和标准差为 的高斯分布,且每一条车道线的分布是独立的。 设道路图像中每个车道线符合的单高斯模型如公式 41: 22( x )21p ( x ) = 2i e (41) 其中, xi 表示第 i 条车道线的斜率。 p(x)i 表示该车道线斜率为真实值的概率。 当概率 p(x)i T(T 为设定的阈值 )时,则判断该车道线为就得的真实车道线,否则认为该车道线检测错误。 对单高斯模型的更新,只需更新高斯分布的相应参数。 在车道线检测之后,依照一定的更新规则更新车道线的斜率,而不匹配的车道线仍保留原值,模型更新的快慢由更新率 来表示。 对均值 和标准差 更新的公式如下: 16 1=( 1 ) + xi i i (42) 2 2 21= ( 1 ) + ( x )i i i i (43) 的大小体现了模型更新的快慢,其取值范围在 [0, 1]之间。 当 取值较小时,模型更新速度慢,需要很长时间才能适应环境的变化;当 取值较大时,模型更新速度快,但是容易引入噪声 [12,13]。 混合高斯背景建模 如果行车速度较慢,环境变化较缓,对于一条车道线,单高斯背景模型足够估计出背景模型。 但实际情况下,环境变化较快,背景并不是静止的,常用多个高斯模型来描述。 因为自然界环境复杂,车道线斜率的变化并不是从一个单峰平稳过渡到另一单峰,而往往会有多个高峰的出现,并在多个单高斯模型中切换,其中每个单高斯模型出现的概率大小相似。 对于这样一个复杂的背景模型,用单一的模型来描述可能误差较大,也不能很好地反应车道线斜率的变化。 借助单高斯建模的思想,对车道线斜率的变化可以建立多个单高斯模型来分别描述各种不同的 变化情况。 混合高斯模型是单高斯模型的扩展,该方法分为三个阶段:背景模型的建立、背景模型的判定和背景模型的更新 [14,15]。 背景模型的建立 背景模型的建立主要是确定均值 、方差 和权重 这三个参数。 均值和方差可以取前 N 帧图像中车道线斜率的均值和方差,如式 44 和 45 所示: 10 =01= Nii KN ( 44) 2100=01= ( )Nii KN ( 45) 其中 iK 为第 i 帧图像中的车道线斜率。 这样求取均值和方差的方法需要统计前 N 17 帧图像中车道线的斜率,。基于图像的车道线检测与跟踪-精品
相关推荐
pha_eraser, float aspect_ratio, float angle, float lock_alpha, float colorize )。 get_color的功能为获取当前笔触在画布区域中颜色的均值,它也被定义为函数指针,函数原型如下:void mypaint_surface_get_color(MyPaintSurface *self, float x, float
登 录 界 面 设 置 界 面 会 话 界 面 个人设置界面 系统设置界面 文字会话 视频会话 音频会话 5 用例图 图 总用例图 用例分析 系统有两种不同的用户,即系统管理员和公司职员。 系统管理员负责对该系统进行管理,主要功能 是 对公司现有职员信息进行更新和对系统数据进行维护。 系统管理员可以修改公司职员的部分信息,新增和删除职员。 公司职员能够登陆到系统与公司同事进行即时通信(文字会话
0 年 6 月 ① 召开农业工程类本科专业 建设研讨会,调研国内 58 个农业工程类本科专业的建设现状。 ② 了解国内外农业工程教育发展趋势,分析和研究当前国际农业工程教育专业认证标准,及其变化和发展趋势,分析国际互相承认的条件和标准。 ③ 分析现代农业对农业工程技术人才的需求状况和具体要求。 2020 年 7 月 —— 2020 年 12 月 ① 建立农业工程类专业认证指标体系,明确指标内容。
桃和杏的压伤情 况。 刘有压伤和没有压协的表面进行光谱反刺特性实验 ,井选择合适的波。 然后 ,:采集 住前加以这些渡艮为中心波滤光片的光谱幽像。 结聚表明 :检测水果表面址仂最 采集到的剀像的比率幽像 ,检洲的准确率约为 %。 有效的方法是在两个波 】年 ,.【叫等人实时采集了挂在移动吊钩上的小鸡的光谱图像。 的健 康小 鸡图像的平均强度比不健康的要高 ,而用的傅立叶光谱像素强度时 ,健康小
void density_dis_buff() { unsigned char i。 for(i=0。 i=3。 i++) { dis_buff[i]=density%10。 density/=10。 } } pragma interrupt_handler adc_isr:iv_ADC void adc_isr(void) { //conversion plete, read value
发出的超声波 (假设传播介质为气体 ),经气体介 质的传播到接收器的时间即往返时间。 往返时间与气体介质中的声速相乘,就是声波传输的距离。 而所测距离是声波传输距离的一半,即公式 ( 11) , L= vt/2 (11) 在上式中, L 为待测距离, v 为超声波的声速, t 为往返时间。 若要求测距误差小于 ,已知声速 v=344m/s(20℃ 时 )。 显然,直接用秒表测时间是不现实的。