首页
会员中心
到顶部
到尾部
电子

基于CMOS摄像头的基于图像识别的智能寻迹控制系统路径识别与方向控制

时间:2020/10/14 13:23:30  作者:  来源:  查看:1  评论:0
内容摘要: 基于CMOS摄像头的基于图像识别的智能寻迹控制系统路径识别与方向控制摘要本文是为第二届飞思卡尔杯全国大学生基于图像识别的智能寻迹控制系统大赛而设计的。用单片机MC9S12DG128和由组委会提供的基于图像识别的智能寻迹控制系统模型,一个用于检查白色底板上的黑线的CMOS图...

基于CMOS摄像头的基于图像识别的智能寻迹控制系统路径识别与方向控制

摘要

本文是为第二届飞思卡尔杯全国大学生基于图像识别的智能寻迹控制系统大赛而设计的。用单片机MC9S12DG128和由组委会提供的基于图像识别的智能寻迹控制系统模型,一个用于检查白色底板上的黑线的CMOS图像传感器,增大了检测范围和前瞻距离。本文,每帧图像数据采集10行进行分析,确定黑线位置,用基于PID算法的PD控制器应用于舵机的方向和角度控制。通过反复测试,基于图像识别的智能寻迹控制系统能以高速稳定的巡线。

关键字:路径识别,方向控制,基于图像识别的智能寻迹控制系统,MC9S12DG128单片机,图像传感器,PID

1、引言

第二届飞思卡尔杯全国大学生基于图像识别的智能寻迹控制系统大赛规则可归纳如下:赛道由多个白色底板并在上面粘上黑色胶带构成;由参赛队员设计的只能车需沿黑线运行;每辆车在赛道上跑两圈,两圈中的最好成绩算作最终得分,显然哪支队伍取得的成绩最好则赢得比赛。根据规则,我们可以确定的是车必须能从白色底板上识别出黑线才能让基于图像识别的智能寻迹控制系统稳定运行。一般有两种方式检测路径:一种是用红外对管作为传感器,另外一种就是用CCD/CMOS图像传感器。本文使用CMOS图像传感器作为路径识别传感器,原因有以下几点:(1)红外对管检测范围远小于CMOS图像传感器,众所周知,要想增大红外对管检测范围只有增加红外对管数量才能达到目标,但是传感器使用的最大数目不得超过16个;(2)CMOS图像传感器的工作电压(3.3V)远小于CCD(12V)或者16个红外对管。很明显,用CMOS图像传感器不仅会减小功耗而且还能增加基于图像识别的智能寻迹控制系统的视野,另外也提高了基于图像识别的智能寻迹控制系统的前瞻性。本文提出了一种基于图像识别的智能寻迹控制系统的路径识别和方向控制的系统性解决方案。

2、CMOS摄像头

市场上有多种CMOS图形传感器。与其他CMOS图像传感器相比,由OmniVision科技有限公司制造的OV6130 CMOS传感器,无论从价格或者是性能、功耗方面都是我们设计基于图像识别的智能寻迹控制系统的最好选择。OV6130是一个黑白图像传感器,内部有1/4英寸的CMOS感光设备,包含了101376个像素点(352×288)。此传感器包含了一个356×292分辨率的图像阵列,一个模拟信号处理器,双8位精度A/D转换器,模拟信号多路复用器,二进制数据格式器,视频输出口,SCCB接口,寄存器和数字控制寄存器,该寄存器包括时钟模块,曝光控制,黑色电平控制和白平衡。

通过连接实验性电路,我们开始测试OV6130输出口的时序(VSYNC, FODD,HERF)。图1表示了实验得到的时序表

基于CMOS摄像头的基于图像识别的智能寻迹控制系统路径识别与方向控制

(a) VSYNC-FODD 时序图

基于CMOS摄像头的基于图像识别的智能寻迹控制系统路径识别与方向控制

(b) FODD-HERF 时序图

图1 OV6130实验所得时序图

基于CMOS摄像头的基于图像识别的智能寻迹控制系统路径识别与方向控制

图2 图像采集和现实系统结构

根据OV6130的数据手册,这些时序图与手册上给出的数据非常吻合,因此,我们开发了基于实验电路的OV6130电路板。为了核实摄像头获得的图像是否有较高清晰度和对比度,以及确认摄像头的可视区域,我们为拍摄到的图像设计了VB上位机程序以方便在计算机屏幕上显示所得数据。此程序基于三个硬件设备:CMOS摄像头,单片机,PC。图2表示了三个设备是如何同时在一起工作的。

图3比较了CMOS摄像头获得的弯道原始图像,之后用VB程序将其显示在计算机上。从它可以看出获得的图像有较高清晰度和对比度,这为以后的路径识别奠定了基础。

基于CMOS摄像头的基于图像识别的智能寻迹控制系统路径识别与方向控制

(a)基于图像识别的智能寻迹控制系统准备扫面赛道

基于CMOS摄像头的基于图像识别的智能寻迹控制系统路径识别与方向控制

(b)由CMOS摄像头拍摄到的图像

图3 原始图像与拍摄到的图像对比

3、路径识别

路径识别的目的是通过从获得的图像中提取一条黑线帮助基于图像识别的智能寻迹控制系统感知前方路径信息。事实上,这种方法用在以下几种赛道上都工作的很好:直到,弯道,S道。通过重复测试,我们觉定每幅图像提取10行来预知基于图像识别的智能寻迹控制系统前方的路况信息。图4说明了我们如何分析一幅图像中的10行数据。

基于CMOS摄像头的基于图像识别的智能寻迹控制系统路径识别与方向控制

图4 路径识别示意图

详细的算法介绍如下:

Step1:计算每行中黑点的坐标准备分析。如同图4所示,每行(L0,L1,…,L8,L9)都要分析。图中的白点(P0,P1,…,P8,P9)表示每行测得的黑点。原点O与P9叠加,意味着字L9没有黑点。假定P(x)和P(y)表示P点的x坐标和y坐标,故此,知P9(x)和P9(y)均等0。

本步的关键在于如何找到各行的黑色像素点。这里,以一行的灰度值为例我们介绍一种新方法:

195 210 207 215 208 228 236 243 238 234 238 235 231 233 230 235 230 222 196 207 204 208 209 129 160 65 17 15 19 18 79 151 172 153 173 150 147 159 141 153 147 154 137 139 156 136 141 9 141 133 138 4 127 110 141 112 104

(1)假定P是此行的黑色像素点,G(i)表示一个像素点,i表示该像素点在此行的位置,V(i)是点G(i)的灰度值,j就是此行从左到右出现的第一个黑色像素点。这里P(x)和P(y)均是从0开始,j也是从0开始。

(2)对于此行从左到右的每个像素点,用阈值B比较他的灰度值,这里B设置值为30,如果V(i)小于B,则G(i)就是一个黑色像素点。在这一行靠前的部分,加粗且带下划线的像素17、15、16、18,就是组成黑线的点。斜体加粗且带下划线的像素点,9、4,是无效点或者干扰点。如果V(i)比B小,则让j等于i。然后各自与B比较V(j+1)和V(j+2),只有两种结果:①如果V(j+1)和V(j+2)均小于B,从G(j+3)开始核对每个像素点的灰度值直到此行的最后一个像素点。如果白色像素点总数,也就是那些灰度值大于B的像素点超过或等于3,则设P等于G(j+1)。否则跳到(3);②如果不是,则从点G(j+3)重复此方法。

(3)如果此行没有黑色像素点,将P(x),P(y)均设为0。

基于CMOS摄像头的基于图像识别的智能寻迹控制系统路径识别与方向控制
Step2:计算10个像素点的平均坐标。参考图4,M就是平均得到的坐标点,M(x)和M(y)被展开如下:

基于CMOS摄像头的基于图像识别的智能寻迹控制系统路径识别与方向控制

图5 计算转角α

Step3:通过图像中M点的位置我们可以确定出基于图像识别的智能寻迹控制系统要往那个方向走(直走,左拐,右拐)。在图4中,很明显的就可以判断基于图像识别的智能寻迹控制系统要往右拐。

Step4:计算基于图像识别的智能寻迹控制系统要转多大的角度。更多的描述可以从图5看出,α是基于图像识别的智能寻迹控制系统应该转向的确切控制量,F是两个前轮的中心点,M是先前提到的平均点(见图4),D和L1表示CMOS摄像头可见区域的宽度和高度,分别的,L2就是可视区域与前轮到的距离,L3是前轮的半径,L2+L3意味着可视区域与前轮轴线的距离。如图5所示,可非常容易的计算出角度α。

4、方向控制

基于图像识别的智能寻迹控制系统方向控制最核心的担忧就是舵机,它的输入信号是PWM(Pulse-Width Modulation),它的输出与角度的大小成正比。本文用MC9S12DG128单片机的的PWM输出脚作为舵机的输入信号。通过输入给定的离散脉冲宽度,我们测得输入和输出之间的关系。下面的算式就是用来表示输入与输出之间的关系:

基于CMOS摄像头的基于图像识别的智能寻迹控制系统路径识别与方向控制
这里X就是输出角度的正切值,Y就是输入脉冲宽度,y0就是输出角度为0时,相应的脉冲宽度,k就是斜率。用这个线性关系,我们可以简单的通过目标角度来操作基于图像识别的智能寻迹控制系统,因此舵机输入的脉冲宽度可被简单的计算出来。这个方法,尽管如此,在下列情况不能工作的很好:弯道和S道。因此我们应用了PID(比例,积分,微分)控制器,此方法在自动控制领域应用相当普遍。PID的核心理论是分别对输入偏差量做比例,积分,微分操作,然后将三个结果联合起来作为最终输出值。实际上,对我们来说根据被控物体的特征及需要来实现PID是非常灵活的。我们可以选取一个或两个或所有的PID模块来应用,例如,我们可以用比例和积分模块组成PI控制器。

基于CMOS摄像头的基于图像识别的智能寻迹控制系统路径识别与方向控制
对于基于图像识别的智能寻迹控制系统,不必考虑我们已走过的路径,所以我们只用比例和微分模块组成PD控制器即可,P调节前面已经描述过(见公式2),下面的公式则是D调节:

这里当角度被计算时enew , eold定义作此刻和前一时刻的差值(这里差值的意思是指舵机应转的角度和实际角度的差值),t是CMOS摄像头的扫描周期,kd就是脉冲宽度由0.5ms到1.5ms的微分系数,D_out是D调节器的输出值。

5、结论

此项工作的挑战性在于找到一个解决路径识别和基于图像识别的智能寻迹控制系统方向控制的一个系统方法。CMOS摄像头就目前来看是优于红外对管的,无论从扫描范围还是功耗方面。高清晰度和对比度对于更超前的识别和控制是非常有用的。通过反复测试,证明PD调节器在基于图像识别的智能寻迹控制系统运行时工作良好。无论是弯道还是S道均能以高速完美过弯,并且基于图像识别的智能寻迹控制系统的稳定性也得到了提高。

  



上一篇:没有了
下一篇:常用光敏电阻参数
相关评论
广告联系QQ:45157718 点击这里给我发消息 电话:13516821613 杭州余杭东港路118号雷恩国际科技创新园  网站技术支持:黄菊华互联网工作室 浙ICP备06056032号