一种基于状态空间的智能车控制方法技术

技术编号:27060844 阅读:23 留言:0更新日期:2021-01-15 14:41
本发明专利技术提出一种基于状态空间的智能车控制方法,该方法是基于状态空间和机器学习的控制方法实现给定的状态评价函数求算最优解。首先摄像头获取后图像进行坐标变换再进行HARRIS边沿检测提取出引导线的位置,并利用陀螺仪角度标定世界坐标系建图提取垂直偏差,偏航角和沿线速度组成状态向量,经过大量实验和机器学习算法得到状态控制矩阵,由此通过分段线性拟合和模糊非线性拟合得到状态转移方程,在此基础上构建状态评价函数,综合考虑卡尔曼递推状态转移方差,最后借由多梯度下降方法求得最优控制疏忽。本发明专利技术构建了车身相对引导线的动态地图,增强了系统的观测结果的可靠性和精度,使用梯度下降的计算方式使得控制效果有很大的提高。

【技术实现步骤摘要】
一种基于状态空间的智能车控制方法
本专利技术涉及智能车控制方法
,特别是一种基于状态空间的智能车控制方法。
技术介绍
随着技术发展,高性能的处理器越来廉价,处理速度越来越快,更多的智能车比赛选择使用摄像头,而非传统的电磁导引,工业中也对AGV提出了更高的要求。目前智能车控制大多采用ARM的m系列单片机,少有针对ARM的a系列的高主频处理器方法,同时对于智能车视觉处理的位姿解算算法对于弯道效果较差。现有的智能车控制主要使用经典的PID控制,应用在使用电磁和灰度的场景下较多,而随着处理器的处理速度的加快更多的开始使用视觉的方法来获取信息,单纯的使用PID控制会丢失非常多的信息,是一种极大的浪费,同时计算速度的提高也意味着可以使用更复杂,更有效的方法来代替之前简单的方法。
技术实现思路
本专利技术的目的在于提供一种利用状态空间和机器学习的控制方法实现给定的状态评价函数最优解求算。实现本专利技术的技术解决方案为:一种基于状态空间的智能车控制方法,步骤如下:步骤1:获取图像,确定图像的外参矩阵,将相对于摄像头光心的坐标变换到相对于车身的坐标,用于获得车身相对地面引导线的实际距离和姿态;步骤2:对图像进行Harris边沿检测,提取地面引导线;步骤3、判断引导线是否为曲线,对于直线引导线不进行帧拼接,对于弯道引导线则结合陀螺仪测量得到的角度变化信息进行帧拼接来确定车身对于引导线的位姿;步骤4、利用实验测试数据并通过梯度下降的方法进行学习,求得状态预测方程,并利用车身位姿信息,使用卡尔曼滤波器来递推推算预测的方差,求得最优控制输出,并反馈至车身电机,作为下一时刻的输入。本专利技术与现有技术相比,其显著优点为:1)本专利采用图像传感器,使用针孔模型和边沿检测方法充分利用了图像信息;2)构建了车身相对引导线的动态地图,增强了系统的观测结果的可靠性和精度,同时还对前方的引导线变化有观测,为后续的算法提供了充足的信息;3)使用梯度下降计算不同于经典控制获得的是一个相对好的输出,可以获得一个最优的输出,这使得控制效果有很大的提高。下面结合附图对本专利技术作进一步详细介绍。附图说明:图1是本专利技术的方法流程图。图2是本专利技术的相机投影模型示意图。图3是本专利技术的相机采集到的一帧图像。图4是本专利技术相机采集到的图像经过坐标变换后的图像。具体实施方式:一种基于状态空间的智能车控制方法,该方法包括以下步骤:步骤1:获取图像,确定图像的外参矩阵,将相对于摄像头光心的坐标变换到相对于车身的坐标,用于获得车身相对地面引导线的实际距离和姿态,具体包括如下步骤:步骤1.1:采集图像,获得图像中每个像素点在光心坐标系下的坐标(X,Y):其中,u,v为图像像素坐标,K为相机的内参矩阵;步骤1.2:将光心坐标投影至地面坐标得到地面坐标系下的坐标[Xe,Ye]:Xe=XYe=Ycosβ其中,光心坐标轴的Z轴与地面在yoz平面的夹角为β,从而完成从像素平面到地面平面的变换。步骤2:步骤2:对图像进行Harris边沿检测,提取地面引导线,具体包括如下子步骤:步骤2.1:获取图像,并且对图像进行HARRIS边沿检测,即卷积计算,计算公式如下:δ=kMn*m其中δ为卷积核,k为待定系数,M表示矩阵,n为卷积核的行数,m为卷积核的列数,Fu,v表示(u,v)像素卷积变换后的值,fi,j表示以(u,v)为中心的n*m矩阵的像素值组成的矩阵中的坐标(i,j);步骤2.2:计算最优阈值d,并统计引导线的上升沿与下降沿;对卷积得到的图像求灰度直方图,即统计其各个灰度下像素点的个数,设定阈值d,其取值范围在0至255之间,求其类间方差g:g=ω0*ω1*(μ0-μ1)2其中大于阈值d的像素点数占整幅图像的比例为ω0,其平均灰度μ0,小于阈值d的像素点数占整幅图像的比例为ω1,其平均灰度μ1,求g值最大时的阈值d为最优阈值d;对于l*l的图像矩阵,对第l-1行进行卷积运算得到卷积后的l-2个卷积结果的序列,取p为间隔做差得到p间隔下的差分序列,求其中大于最优阈值d和小于最优阈值d的即为第l-1行中引导线的上升沿与下降沿;步骤2.3:为将上升沿和下降沿信息转换为引导线位置信息,具体采用以下方法:首先将上升沿记为1,下降沿记为0,排成序列a,同时将每个变化边沿的地面坐标系下Xe排成序列b,然后在序列a头部添加1在序列尾部添加0,在序列b的头部添加0在序列尾部添加l-1时的Xe值,最后序列a中每连续出现一个1和0则可以认为其可能为一条引导线,若其对应的序列b中地面坐标系下Xe的值接近地面引导线的实际宽度的则可以认为为引导线,否则不认为为引导线,最后得到引导线中心在地面坐标系上的坐标(Xen,Yen);在提取引导线后再对列进行处理,获得第2到l-1行的引导线实际位置Xe组成l-2个元素的序列c,对c等间隔求差。步骤3、判断引导线是否为曲线,对于直线引导线不进行帧拼接,对于弯道引导线则结合陀螺仪测量得到的角度变化信息进行帧拼接来确定车身对于引导线的位姿,具体包括如下子步骤:步骤3.1:通过对c等间隔求差,根据差的变化可以判断引导线为直线还是曲线:若差不变,则引导线为直线;若差递增或递减,则引导线为弯道;步骤3.2::当引导线为弯道时,根据陀螺仪测量得到的角度得如下矩阵:初始检测到前方有弯道时,记录下陀螺仪的角度并补正车身和引导线的夹角得到初始入弯时刻引导线在陀螺仪系下的绝对角度初始时刻的为车身和引导线的夹角,之后每一时刻的其中为陀螺仪检测到的车身角度,为初始入弯时引导线在陀螺仪系下的绝对角度;步骤3.3:将引导线中心的地面坐标(Xen,Yen)等间隔m个坐标点做差,可以将引导线曲线划分为诸多线段的近似获得序列L:L1=(Xen-m,Yen-m)-(Xen,Yen)L2=(Xen-2m,Yen-2m)-(Xen-m,Yen-m)……Lk=(Xen-km,Yen-km)-(Xen-(k-1)m,Yen-(k-1)m)将序列L中每个元素左乘矩阵R得到初始入弯直线为0度的旋转坐标系下的序列L1;步骤3.4:首先取本帧的序列L1中的连续3段分别与上一帧序列中的L1所有连续3段叉乘,找出其中绝对值最小的三段称为待匹配的三段;再将本帧的序列L1中任意连续3段拼成一整段L2,并逐像素的将L2中所有间隔为m的段与找到的待匹配的三段叉乘,找出其中绝对值最小的,则找到了对应匹配的三段;根据配对的三段将其余的段依次配对并拼接两帧;步骤3.5:帧拼接完毕后,求解得到小车相对于地面引导线的位姿信息,具体包括以下步骤:步骤3.5.1将原点设置于车身中心,以水平面内垂直车身正前方为x轴,以车正前方为y轴,设置一个车身坐标系,将上一帧帧拼接之后的引导线中心坐标左乘当本文档来自技高网...

【技术保护点】
1.一种基于状态空间的智能车控制方法,其特征在于,包含以下步骤:/n步骤1:获取图像,确定图像的外参矩阵,将相对于摄像头光心的坐标变换到相对于车身的坐标,用于获得车身相对地面引导线的实际距离和姿态;/n步骤2:对图像进行Harris边沿检测,提取地面引导线;/n步骤3、判断引导线是否为曲线,对于直线引导线不进行帧拼接,对于弯道引导线则结合陀螺仪测量得到的角度变化信息进行帧拼接来确定车身对于引导线的位姿;/n步骤4、利用实验测试数据并通过梯度下降的方法进行学习,求得状态预测方程,并利用车身位姿信息,使用卡尔曼滤波器来递推推算预测的方差,求得最优控制输出,并反馈至车身电机,作为下一时刻的输入。/n

【技术特征摘要】
1.一种基于状态空间的智能车控制方法,其特征在于,包含以下步骤:
步骤1:获取图像,确定图像的外参矩阵,将相对于摄像头光心的坐标变换到相对于车身的坐标,用于获得车身相对地面引导线的实际距离和姿态;
步骤2:对图像进行Harris边沿检测,提取地面引导线;
步骤3、判断引导线是否为曲线,对于直线引导线不进行帧拼接,对于弯道引导线则结合陀螺仪测量得到的角度变化信息进行帧拼接来确定车身对于引导线的位姿;
步骤4、利用实验测试数据并通过梯度下降的方法进行学习,求得状态预测方程,并利用车身位姿信息,使用卡尔曼滤波器来递推推算预测的方差,求得最优控制输出,并反馈至车身电机,作为下一时刻的输入。


2.根据权利要求1所述的一种基于状态空间的智能车控制方法,其特征在于,步骤1中的获取图像,并对图像进行坐标变换包括如下子步骤:
步骤1.1:采集图像,获得图像中每个像素点在光心坐标系下的坐标(X,Y):



其中,u,v为图像像素坐标,K为相机的内参矩阵;
步骤1.2:将光心坐标投影至地面坐标得到地面坐标系下的坐标[Xe,Ye]:
Xe=X
Ye=Ycosβ
其中,光心坐标轴的Z轴与地面在yoz平面的夹角为β,从而完成从像素平面到地面平面的变换。


3.根据权利要求1所述的一种基于状态空间的智能车控制方法,其特征在于,步骤2中的对图像进行HARRIS边沿检测,提取地面引导线,具体包括如下步骤:
步骤2.1:获取图像,并且对图像进行HARRIS边沿检测,即卷积计算,计算公式如下:
δ=kMn*m



其中δ为卷积核,k为待定系数,M表示矩阵,n为卷积核的行数,m为卷积核的列数,Fu,v表示(u,v)像素卷积变换后的值,fi,j表示以(u,v)为中心的n*m矩阵的像素值组成的矩阵中的坐标(i,j);
步骤2.2:计算最优阈值d,并统计引导线的上升沿与下降沿;对卷积得到的图像求灰度直方图,即统计其各个灰度下像素点的个数,设定阈值d,其取值范围在0至255之间,求其类间方差g:
g=ω0*ω1*(μ0-μ1)2
其中大于阈值d的像素点数占整幅图像的比例为ω0,其平均灰度μ0,小于阈值d的像素点数占整幅图像的比例为ω1,其平均灰度μ1,求g值最大时的阈值d为最优阈值d;
对于l*l的图像矩阵,对第l-1行进行卷积运算得到卷积后的l-2个卷积结果的序列,取p为间隔做差得到p间隔下的差分序列,求其中大于最优阈值d和小于最优阈值d的即为第l-1行中引导线的上升沿与下降沿;
步骤2.3:为将上升沿和下降沿信息转换为引导线位置信息,具体采用以下方法:首先将上升沿记为1,下降沿记为0,排成序列a,同时将每个变化边沿的地面坐标系下Xe排成序列b,然后在序列a头部添加1在序列尾部添加0,在序列b的头部添加0在序列尾部添加l-1时的Xe值,最后序列a中每连续出现一个1和0则可以认为其可能为一条引导线,若其对应的序列b中地面坐标系下Xe的值接近地面引导线的实际宽度的则可以认为为引导线,否则不认为为引导线,最后得到引导线中心在地面坐标系上的坐标(Xen,Yen)。
在提取引导线后再对列进行处理,获得第2到l-1行的引导线实际位置Xe组成l-2个元素的序列c,对c等间隔求差。


4.根据权利要求3所述的一种基于状态空间的智能车控制方法,其特征在于,步骤3中的判断引导线是否为曲线,对于弯道引导线则结合陀螺仪测量得到的角度变化信息进行帧拼接来确定车身对于引导线的位姿:
步骤3.1:通过对c等间隔求差,根据差的变化可以判断引导线为直线还是曲线:若差不变,则引导线为直线;若差递增或递减,则引导线为弯道;
步骤3.2::当引导线为弯道时,根据陀螺仪的角度以及陀螺仪检测到的车身角度得如下矩阵:



初始检测到前方有弯道时,记录下陀螺仪的角度并补正车身和引导线的夹角得到初始入弯时刻引导线在陀螺仪系下的绝对角度初始时刻的为车身和引导线的夹角,之后每一时刻的其中为陀螺仪检测到的车身角度,为初始入弯时引导线在陀螺仪系下的绝对角度;
步骤3.3:将引导线中心的地面坐标(Xen,Yen)等间隔m个坐标点做差,可以将引导线曲线划分为诸多线段的近似获得序列L:

【专利技术属性】
技术研发人员:陈力成彭一凡屈艺何新黎文卓
申请(专利权)人:南京理工大学
类型:发明
国别省市:江苏;32

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

1