一种基于视觉和CNN的小车自动驾驶方法技术

技术编号:34800946 阅读:52 留言:0更新日期:2022-09-03 20:07
本发明专利技术旨在提供一种基于视觉和CNN的小车自动驾驶方法,包括以下步骤:A、构建虚拟跑道和小车模型,得到多个自动驾驶参数组;B、构建神经网格结构;C、向神经网络中输入两个跑道场景的图片归一化浮点数以及自动驾驶数据集的各个数据,对神经网络进行训练,得到训练好的神经网络;D、获取需要自动行驶的黑白跑道图片,进行二值化处理,得到归一化浮点数和初始自动驾驶参数组,将其输入神经网络,获得自动驾驶参数组的最优解;将最优解输入小车实物的树莓派主控板模块,由树莓派主控板模块控制小车在跑道自动驾驶,其中车道检测修正过程使得小车能够平稳的在跑道上进行自动驾驶;该方法能够实现小车自动驾驶的功能。能够实现小车自动驾驶的功能。

【技术实现步骤摘要】
一种基于视觉和CNN的小车自动驾驶方法


[0001]本专利技术涉及小车自动驾驶领域,具体涉及一种基于视觉和CNN的小车自动驾驶方法。

技术介绍

[0002]随着人工智能机器人的发展,许多人工智能机器人在现实生活中的应用取得了很不错的成果,特别是在医学,工业,物流,军事领域中人工智能都取得了巨大的成功,这无疑推动了未来智能化的发展。人工智能小车作为移动工具,也可以称之为轮式移动机器人,主要依靠车内以计算机系统为主的智能驾驶仪来实现自动驾驶。
[0003]现代自动驾驶小车以汽车工业为基础,建立汽车产业创新体系,积极发展智能网汽车,也充分说明了我国对于智能小车的重视,因此,基于视觉和CNN的小车自动驾驶可以作为该领域的发展方向。

技术实现思路

[0004]本专利技术旨在提供一种基于视觉和CNN的小车自动驾驶方法,该方法克服现有自动驾驶偏离跑道、障碍物避开效果不好的问题,具有小车自动驾驶平稳性高、障碍物避开效果好的特点。
[0005]本专利技术的技术方案如下:
[0006]所述的一种基于视觉和CNN的小车自动驾驶方法,包括以下步骤:
[0007]A、在Unity Hub中模拟构建虚拟跑道和小车模型,对虚拟跑道模拟构建白天和黑夜两个跑道场景,在Unity Hub中进行多次小车模型自动驾驶仿真,得到多个自动驾驶参数组,基于这些自动驾驶参数组构建自动驾驶数据集;
[0008]B、构建神经网格结构,神经网络结构包括依次连接的输入层、多个卷积层、展平层、全连接层、输出层;所述的输入层输入的为跑道场景的图片归一化浮点数和自动驾驶数据,输出的是修正后的自动驾驶数据;
[0009]C、向神经网络中输入白天和黑夜两个跑道场景的图片归一化浮点数、以及自动驾驶数据集的各个数据,对神经网络进行训练,得到训练好的神经网络;
[0010]D、获取需要自动行驶的黑白跑道图片,进行二值化处理,然后转换为归一化浮点数后,输入Pandas和python的os数据获取包中获得初始自动驾驶参数组,将跑道图片的归一化浮点数和初始自动驾驶参数组输入神经网络,获得自动驾驶参数组的最优解;将最优解输入小车实物的树莓派主控板模块,由树莓派主控板模块控制小车在跑道自动驾驶。
[0011]所述的小车实物上设有包括树莓派主控板模块、电机驱动模块、摄像头模块、超声波传感器、电源模块、四组直流减速电机;所述的电源模块负责各个模块供电;所述的四组直流减速电机分别设有小车的前后轮处,驱动各个轮子转动;
[0012]所述的电机驱动模块、摄像头模块和超声波传感器均与树莓派主控板模块连接;所述的电机驱动模块与直流减速电机模块连接;
[0013]所述的摄像头模块用于将拍摄到视频画面和图片发送至树莓派主控板模块;
[0014]所述的超声波传感器用于将检测到小车与障碍物之间的距离信息发送至树莓派主控板模块,树莓派主控板模块根据检测结果,控制电机驱动模块使得小车对遇到障碍物进行避障;
[0015]所述的树莓派主控板模块根据接收的检测数据及视频画面和图片,计算出自动驾驶数据组,控制电机驱动模块工作,实现小车的自动驾驶。
[0016]所述的自动驾驶数据组包括小车行驶过程中的加速度、速度、转向速度、摄像头模块拍摄的每一帧图片小车的偏转角度,其中偏转角度的浮点数需要乘以设置好的偏置参数。
[0017]所述的步骤B中构建的神经网络的卷积层设有5层,其中:
[0018]第一个卷积层对输入的图片进行步长为2*2和3*3的卷积和relu激活函数;
[0019]第二个卷积层对输入的图片进行步长为2*2和3*3的卷积和relu激活函数;
[0020]第三个卷积层对输入的图片进行步长为2*2和3*3的卷积和relu激活函数;
[0021]第四个卷积层对输入的图片进行5*5的卷积和relu激活函数;
[0022]第五个卷积层对输入的图片进行3*3的卷积和relu激活函数。
[0023]还包括行驶过程中车道线检测修正过程,保证小车沿跑道中线行驶,包括以下步骤:
[0024]取步骤D中准备自动行驶的跑道图片,经过HSV色泽转换空间把跑道分为了黑白图片,其中跑道中心区域为白色,其它两边为黑色,通过5X5的高斯滤波消除跑道黑白图片的噪音点,通过OPENCV的函数进行黑色车道轮廓的提取,得到跑道中心点的位置;
[0025]在行驶过程中对小车偏离跑道中心点的实际误差通过PID控制算法计算进行控制,以防止小车在快速运动的过程中冲出跑道;为了预防PID没办法完全消除的稳态误差,预防PID不能完全消除小车冲出跑道而不能及时回正的可能性,将跑道图片分割成三份,分别是跑道中心设为白色区域和跑道内中心左右两侧设为黑色区域、跑道外两侧设为白色区域,设定小车摄像头模块拍摄视野ROI区域两侧边界为跑道内中心左右两侧黑色区域,若小车冲出跑道,ROI区域任一侧边界出现白色,则代表小车冲出跑道,树莓派主控板模块控制电机驱动模块调节小车方向回正。
[0026]所述的PID控制算法计算小车偏离中心点的误差的公式为:
[0027][0028]其中,Kp代表比例系数,e(t)代表目标值和当前值的差值,T1代表误差采样周期,t表示微分时间常数,T
D
为微分时间系数;
[0029]所述的OPENCV的函数表达式为:
[0030]max(|x1

X2|,|y2

y1|)==1
[0031]ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2);
[0032]其中,x1

x2代表函数轮廓多边形的质心之差,其中x=m10/m00,y=m01/m00;
[0033]所述的5X5高斯滤波表达式为:
[0034][0035]其中,G代表权重矩阵归一化的值,σ为卷积核像素的方差,x和y看作像素点和中心点的距离。
[0036]所述的电机驱动模块的型号为L298N两路电机驱动模块。
[0037]所述的超声波传感器采用HC

SR04超声波测距模块,超声波传感器的测距精度在3mm

3.1mm。
[0038]还包括移动终端或固定终端,所述的移动终端或固定终端通过无线网络与树莓派主控板模块连接;
[0039]所述的树莓派主控板模块将接收到视频画面传输至移动终端或固定终端,移动终端或固定终端根据接收的视频画面和图片发送控制命令至树莓派主控板模块,再经树莓派主控板模块传输至相应的模块上。
[0040]本专利技术方法采用轻量级的CNN结构将跑道场景信息以及自动驾驶数据集的各个数据进行训练,通过对黑白跑道图片的进行处理,得到跑道图片的归一化浮点数和初始自动驾驶参数组,将其输入神经网络,获得自动驾驶数据组的最优解使得小车沿跑道进行自动驾驶;进一步地通过车道检测修正过程使得小车能够平稳的在跑道上进行自动驾驶。
[0041]本专利技术方本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于视觉和CNN的小车自动驾驶方法,其特征在于,包括以下步骤:A、在Unity Hub中模拟构建虚拟跑道和小车模型,对虚拟跑道模拟构建白天和黑夜两个跑道场景,在Unity Hub中进行多次小车模型自动驾驶仿真,得到多个自动驾驶参数组,基于这些自动驾驶参数组构建自动驾驶数据集;B、构建神经网格结构,神经网络结构包括依次连接的输入层、多个卷积层、展平层、全连接层、输出层;所述的输入层输入的为跑道场景的图片归一化浮点数和自动驾驶数据,输出的是修正后的自动驾驶数据;C、向神经网络中输入白天和黑夜两个跑道场景的图片归一化浮点数、以及自动驾驶数据集的各个数据,对神经网络进行训练,得到训练好的神经网络;D、获取需要自动行驶的黑白跑道图片,进行二值化处理,然后转换为归一化浮点数后,输入Pandas和python的os数据获取包中获得初始自动驾驶参数组,将跑道图片的归一化浮点数和初始自动驾驶参数组输入神经网络,获得自动驾驶参数组的最优解;将最优解输入小车实物的树莓派主控板模块,由树莓派主控板模块控制小车在跑道自动驾驶。2.如权利要求1所述的基于视觉和CNN的小车自动驾驶方法,其特征在于:所述的小车实物上设有包括树莓派主控板模块、电机驱动模块、摄像头模块、超声波传感器、电源模块、四组直流减速电机;所述的电源模块负责各个模块供电;所述的四组直流减速电机分别设有小车的前后轮处,驱动各个轮子转动;所述的电机驱动模块、摄像头模块和超声波传感器均与树莓派主控板模块连接;所述的电机驱动模块与直流减速电机模块连接;所述的摄像头模块用于将拍摄到视频画面和图片发送至树莓派主控板模块;所述的超声波传感器用于将检测到小车与障碍物之间的距离信息发送至树莓派主控板模块,树莓派主控板模块根据检测结果,控制电机驱动模块使得小车对遇到障碍物进行避障;所述的树莓派主控板模块根据接收的检测数据及视频画面和图片,计算出自动驾驶数据组,控制电机驱动模块工作,实现小车的自动驾驶。3.如权利要求2所述的基于视觉和CNN的小车自动驾驶方法,其特征在于:所述的自动驾驶数据组包括小车行驶过程中的加速度、速度、转向速度、摄像头模块拍摄的每一帧图片小车的偏转角度,其中偏转角度的浮点数需要乘以设置好的偏置参数。4.如权利要求1所述的基于视觉和CNN的小车自动驾驶方法,其特征在于:所述的步骤B中构建的神经网络的卷积层设有5层,其中:第一个卷积层对输入的图片进行步长为2*2和3*3的卷积和relu激活函数;第二个卷积层对输入的图片进行步长为2*2和3*3的卷积和relu激活函数;第三个卷积层对输入的图片进行步长为2*2和3*3的卷积和relu激活函数;第四个卷积层对输入的图片进行5*5的卷积和relu激活函数;第五个卷积层对输入的图片进行3*...

【专利技术属性】
技术研发人员:陈华金张广全谢良樊香所李如雪梁程华孙子君郑红霞吕小龙
申请(专利权)人:广西科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1