基于飞思卡尔和摄像头的智能小车寻迹系统设计
滤波方法有很多,如中值滤波对单片机开销较大,因此本系统采用对整幅图像进行较为简单的插值处理。这样不仅占用cpu时间少,而且也实现了对实时控制的要求。摄像头提取到的近处黑线信息出错的概率非常小,因此利用近处黑线的中心偏差,对前方的黑线中心偏差进行插值滤波。其滤波流程图如图4所示。插值滤波时,同时要注意小车在过急弯时的情况,因此要对插值后的黑线中心进行限幅处理。
本文引用地址:https://www.eepw.com.cn/article/246773.htm
图4 插值算法流程图
4 引导线提取
由于黑线和白赛道的灰度值不确定,如果以设定的值作为黑线的灰度值,必然适应新环境的能力不强。但是黑色和白色灰度值之差变化不大,因此可以用灰度值之差作为黑线与白道的标准。根据实验,灰度值之差一般在15-30之间。本系统就是以此范围作为灰度值范围。
在查找黑线的点顺序也有一定方法。如果采用常用的从左到右依次查找黑点,这样不仅容易把周围的颜色误认为黑线,同时在一定程度上比较耗时。本系统采用从图像中央开始向侧查找,当找到黑线就停止该行查找,这样不仅可尽量减少查找到周围的颜色的机会,同时也能减少查找耗时。同时注意,在查找黑点时,应该查找到两个或两个以上的黑点才能作为黑线的位置,这样可以避免因随机产生的干扰的影响。
5 路径判断
5.1 弯直道判断
根据图像采集特点,直道时黑点偏离中心线位置较小,弯道时偏离中心线的位置大,用一个数学公式表征这一特点[3]即
式中:xi为采集到的黑点实际坐标
x为图像中心线的坐标位置
n为采样到黑点的总行数
通过多次实际赛道实验,直道时的curve一般在2以下,小弯道在3-10的范围内,10以上则能判定为大弯道,这就以数值判断赛道的情况,从而实现对舵机的有效控制。在实际的舵机控制中,需要根据赛道的实际情况做适当校正。
5.2 大s弯和小s弯的判断
跑道分为大s弯和小s弯。通过实际实验,小车的舵机在改变角度的时候,小车会减速,因此小车的舵机改变角度的大小和次数都会影响最后的比赛成绩。在小s弯时,小车摄像头可以照到全部,取平均值后相当于是直道,小车舵机可不改变方向而直线行驶从而提高速度。在大s弯时,由于大弯不能在完整的的一个视野范围内,小车将取平均值后偏离直道,小车舵机将改变方向行驶。
5.3 十字交叉路线的判断和起跑线的识别
两个黑色引导线垂直相交,经ad采样后,横向灰度值特点为黑色灰度值都在同一行,经查找由黑到亮变化的灰度值是没有的,因而此处黑点坐标几乎接近中心位置,不会对引导线的位置产生影响,这就实现了小车不发生错误通过十字交叉路线。
小车起点如图5所示,特点是先由黑变亮,再由亮变黑。所以可根据这样的特点进行起点识别。当采样的灰度值由黑变亮再由亮变黑可判断为起跑线。但是这样判断可能会把十字交叉路线或窄道的三角形标记误判为起点。为了准确判断需要进行3次以上具有起点特点时才可判断。
图5 起点线
6 结束语
本系统采用基于coms摄像头的路径识别方法,通过摄像头采集的道路信息送入单片机处理,通过算法提取出赛道黑线中心,识别弯道、窄道、坡道、起跑线等信息。通过大量试验及参加大赛结果表明,本智能小车寻迹系统能够准确识别道路情况,结果较为理想。该系统满足实时、安全、温定快速的要求,具有广阔的应用前景,是当前智能车辆导引技术研究的主流方向和发展趋势。
作者简介
冯 震(1982-) 男 工学硕士/讲师,网络与智能控制方向。
参考文献
[1] 邵贝贝.单片机嵌入式应用的在线开发方法[m]。北京:清华大学出版社,2007。
[2] 张海山,李伟.视频采集与处理方法[j].河北理工学院学报,2007.2
[3] 贾秀江,李颢.摄像头黑线识别算法和赛车行驶控制策略[j].电子产品世界,2007(5)
[4] 卓晴,黄开胜,邵贝贝等.学做智能车----挑战“ 飞思卡尔”杯[m]。北京:北京航空航天出版社,2007。
色差仪相关文章:色差仪原理 摄像头相关文章:摄像头原理
评论