当前位置:文档之家› (详细)基于黑白摄像头的智能小车路径识别系统设计

(详细)基于黑白摄像头的智能小车路径识别系统设计


doi: 10. 3969 / j . issn. 1672 - 9528. 2009. 02. 015
摘 要 路径识别是汽车智能化发展的必然趋势 。在基于飞思卡尔单片机的智能车路径识别系统的设计中 , 首 先采用基于黑白摄像头的图像采样模块获取路径图像信息 ; 然后分别说明图像采集 , 图像预处理 , 黑线 提取 ,路径判断部分的软件设计 。其中 ,在图像预处理中使用了二值化和中值滤波算法 , 并且在黑线提 取中提出了改进插值算法 。实验表明 ,整个系统硬件设计简单 ,软件算法快速有效 。 关键词 路径识别 中值滤波 寻线算法
计算机技术及应用
信息技术与信息化
基于黑白摄像头的智能小车路径识别系统设计
The D esign of Intelligent V ehicle Path Recognition Based on Monochrome Camera
吴吟箫 3 张 虹 王新生பைடு நூலகம்
WU Y in - x iao ZHAN G Hong WAN G X in - sheng
g ( x, y ) =
为了说明此方案的适用性 ,随机在图像数组中加入噪声点 , 如图 5。为了使接下来的验证过程更为方便 , 设计中将实际图像 用 matlab进行二值化 ,导出一个二维数组 , 在验证算法时不同的 道路状况只需修改数组中的值即可 。图 6 中 a、 b分别为 1x3 模板 和 3x3 模板中值滤波后的效果图 。从图中可以看出虽然 3x3 模板 的去噪效果要稍好 ,但是 1x3 模板显然已经能去除绝大部分噪声 点 。并且在实际赛道中噪声点的数量要比这里引入的噪声点少 , 即使有极少部分噪声点没有滤除 ,通过接下来提取黑线算法同样
计算机技术及应用
板中值滤波更具有优势 。
信息技术与信息化
后两点的平均值 。
可以消除影响 。因而从去噪效果和计算量两方面来考虑 , 1x3 模
5 路径判断
5. 1 弯直道的判断
4 黑线中心提取
提取黑线中心部分是小车路径识别系统中最为重要的一个 环节 ,关系到智能小车运行质量的好坏 。 这里黑线中心提取方法为 : 先判断每行的第一个点是否为白 点 ,如是白点则依次对白点进行计数 (设计数为 a) , 当遇到连续 黑点时则计数黑点个数 (设计数为 b ) ,再次遇到白点时则退出该 行计数 ,此时黑线中心所在列为 a + b /2; 如果第一个为黑点 ,且不 是噪声点 (即为连续的黑点 ) , 则直接对黑点计数 (设计数为 b ) , 当遇到连续白点后则退出计数 ,这种情况下得到的黑线中心位于 第 b /2 列 。最后将从一幅图像上得到的所有中心位置按行存入 一个一维数组中 。 但是不得不考虑两种比较特殊的情况 , 起始线和十字交叉 线 。通过观察发现这两种情况下每行出现黑点的数量远远大于 黑线的黑点数 (黑线一般能采集到 2 - 3 个黑点 ) , 所以当采集到 的黑点数超过正常值时 , 便判定这一行为特殊行 , 并赋予特殊标 志位 (这里将特殊行中心点标志为 50,因为经过图像处理后图像 变成 38 3 20 数组 ,标志为 50 能将特殊点和正常点很明显的区分 开 ,也方便了下面的改进差值算法 ) 。由于规则要求小车能识别 起始线 ,因而还需对特殊行进行分析 。图 7 为采到起始线的情 况 ,可以看出起始线所在行具有多个跳变 , 考虑到车体偏离等情 况 ,可以用白点跳变为黑点的次数 (方案中选 2 或 3 ) 来判定是否 为起始线 ,如果符合情况则标志出这一行 。则其他的特殊行均为 十字交叉情况 。
Abstract Intelligentize of vehicle is a trend of cars’development in the future. Path recognition is one of
the app lication directions . This path recognition system of intelligent car uses im age - sensor module based on camera to obtain lane i m age information. The whole system is divided into four parts: im age acquisition, im age p re - p rocessing, abstracting the black line, and road detection. The i m age p re - p rocessing part uses the binary2 zation and the median filtering to imp rove the im age information. Then by using the i mp roved algorithm , the result of abstracting the black line becomes more p recise. The ultim ate aim of the whole system is to accurately abstract the black guidelines from the white raceway, follow ing the road parameters and conditions in front, making the car move p roperly . Keywords Road detection M edian filtering L ine - tracking
3 图像预处理
图像预处理的目的是改善图像质量 , 在本系统中的目的是为 单片机识别路径提供一幅更为清晰 ,更易判断的赛道图像 。
3. 1 二值化处理
将图像导入 matlab进行分析 ,发现原始图像像素值均在 0 255 内 ,而白色区域像素值一般在 160 以上 , 黑色区域一般在 70
以下 。为了提取出黑线 , 检测像素值的跳变是最直观的方案 , 但 是实际中一般黑白线边沿的像素值不是突然跳变的 , 而有一个过 渡过程 。所以 ,将原始图像进行二值化处理不但有清晰边沿线的 功能 ,还能方便后续路径识别部分算法的设计与处理 。 二值化处理就是对于输入图像的各个像素 ,先确定某个亮度 值 ,当像素的亮度超过该阈值时 , 则将对应输出图像的像素值设 为 1,否则为 0,原理公式如下 [ 4 ] :
视频图 像的采集 是 基 于 MC9S12DG128 单 片 机 来 实现 的 。
MC9S12DG128B 是 Freescale 开发的以 CPU12 内核为核心的单片
图 1 智能小车的跑道环境 要能有效地采样摄像头视频信号 ,首先要提取出摄像头信号 中的行同步脉冲 , 消隐脉冲和场同步脉冲 。LM1881 视频同步信 号分离芯片可从摄像头信号中提取信号的时序信息 , 如行同步脉 冲、 场同步脉冲和奇 、 偶场信息等 ,并将它们转换成 TTL 电平直接 输给单片机的 I/O 口作控制信号之用 ,如图 2。 这部分的硬件设计为 : 摄像头视频信号接入 LM1881 的视频 信号输入端 , 同时接入单片机其中一个 A /D 口 (这里选择 PAD8 口 ) ; LM1881 的行同步信号和奇偶场同步信号分别接入单片机的 带中断的 I/O 口 PT0、 PT1。设置 PT1 口为输入捕捉下降沿 ,即采

( x - m [ row ]2 ) row _m ax , (x =
row = 0
∑ m [ row ]
row _m ax
2
) x 为平均
值 , m [ row ]2 为每行黑线中心值 。通过对 20 行数据进行试验 ,直 道时的方差一般在 2 以下 ,小弯道一般在 3 - 10 的范围内 , 10 以 上则能判定为大弯道 。
3. 2 基于二值图像的中值滤波
计算机技术及应用
二值化后的赛道状况已经非常明了 ,但是仍有干扰存在 ,这样对 赛道的识别及接下来的算法设计会造成一定的困难。因而 ,选择对 图像进行中值滤波。该方法是一种局部平均的平滑技术 , 对脉冲干 扰和椒盐噪声的抑制效果好 ,能有效保护图像的边缘 [5 ] 。
在直道时 , 每行黑线中心位置相对集中 , 因而每行的黑线中 心与其平均值的偏差之和较小 ; 在弯道时 ,黑线中心相对分散 ,随 着弯度的增大则偏差之和相应的变大 。这里 ,每行的黑线中心与 其平均值的偏差之和可以用方差来表示 :
row _m ax- 1 row _max- 1
σ =
2
row = 0
的灰度信息就能识别出黑线信息 ,因而从减少成本和减轻单片机 采样的负担两方面考虑 ,图像采集部分选用黑白摄像头 。 摄像头输出的是 PAL 制式的复合全电视信号 , 每秒输出 25 帧 (每帧分为偶场和奇场 ) 。黑白视频图像信号通常由图像信号 、 消隐信号以及同步信号共同组成 [ 3 ] 。
2 视频图像采集
机 ,采用 5V 供电 ,总线速度 25MHz, 8KBRAM , 128KBFLASH ,具有 丰富的 I/O 模块和工业控制专用的通信模块 [ 2 ] 。 由于采用摄像头寻迹能大幅度提升赛车的前瞻距离 ,有利于 赛车提高车速 。同时 , 赛道上只有黑白两色 , 只需提取探测画面
3 哈尔滨工业大学 (威海 )信息科学与工程学院 264209 基金项目 : 山东省自然科学基金 ( Y2007G20 )
1 0
f ( x, y ) Ε t f ( x, y) < t
其中 , f ( x, y ) , g ( x, y ) 分别为处理前 、 处理后的图像中处于
( x, y ) 位置上的某个像素的浓度值 , t为阈值 。图 4 为二值化后的
效果 , 0 为黑点 , 1 为白点 。
2009 年第 2 期 43
图 4 二值化后的图像 1x3 窗口中值滤波是非常简单的一种去噪方法 ,是将某个像 素点和相邻两个像素点的像素值按大小顺序排列 ,取出中间值作 为该点的像素值 。这种方法能够有效的抑制随机噪声 , 并且计算 量相比去噪常用的 3x3 模板要小得多 。减小计算量能够有效的 提高单片机识别道路的速度 ,这一点对时间要求较高的实时处理 是非常重要的 。
相关主题