1.一种基于视觉SLAM的磁导引AGV的自动纠偏控制方法,其特征在于,包括以下步骤,标定Kinect V2相机;
AGV搭载Kinect V2相机,基于改进的ORB‑SLAM2系统构建巡检环境的栅格地图;
获取磁导引AGV的脱磁状态;
基于栅格地图、Kinect V2相机实时获取的信息和AGV的脱磁状态实现磁导引AGV的视觉SLAM导航纠偏;
基于改进的ORB‑SLAM2系统构建环境地图,具体包括:
首先,根据相机坐标平面、像素平面和物理成像平面间的坐标变换关系获取空间点的T世界坐标,假设点P在相机坐标系下的坐标Pc为[X,Y,Z],投影在物理成像平面上的坐标为T[X′,Y′,Z′],则:
像素平面相对于物理成像平面在水平方向上缩放了α倍,竖直方向缩放了β倍,原点平T T移了[cx,cy],把αf记作fx,βf记作fy,推出点P在像素平面下的坐标[u,v]:其中fx、fy、cx、cy为相机内参,RGB‑D相机采集图像的像素坐标值,测量目标的深度d,根据式(2),相机坐标Pc表示为:其中,s为深度比例系数,ORB‑SLAM2算法的相机跟踪模块估计出相机的外参,即相机坐标系变换到世界坐标系的旋转矩阵R和平移向量t,因此推出P点的世界坐标:Pw=RPc+t (4)
获取3D点信息之后,再进行点云拼接即可得到点云地图;
接着,进一步将点云地图转换为能描述空间节点占据信息的八叉树地图,在八叉树地图中用概率对数值y描述每个节点的占用信息,x表示占据概率,则:其反变换为:
其中,x处于0和1之间,初始值为0.5,当观测到节点被占据时,y增加;观测到空白时,y减小,概率x则会随着y的变化在0‑1范围内改变,假设某一节点n在t时刻观测到的距离为zt,则t+1时刻的概率对数值为:y(n|z1:t+1)=y(n|z1:t‑1)+y(n|zt) (7)其中,y(n|z1:t‑1)为开始t‑1时刻的概率对数值,y(n|zt)为t时刻的概率对数值。
2.根据权利要求1所述的基于视觉SLAM的磁导引AGV的自动纠偏控制方法,其特征在于:获取3D点信息之后,再进行点云拼接即可得到点云地图之后,还包括利用点云滤波技术继续优化点云地图,通过直方滤波和统计滤波剔除了地图中离群点和无效点,通过体素滤波优化了地图点的分布。
3.根据权利要求1所述的基于视觉SLAM的磁导引AGV的自动纠偏控制方法,其特征在于:通过张正友标定法获取Kinect V2相机的内参、畸变参数和彩色摄像头与红外摄像头间的旋转矩阵和平移向量,具体为:将棋盘粘贴在平板上,标定过程中通过移动平板使相机获得不同深度和不同角度的照片,标定的步骤如下:(1)采集彩色图像,计算彩色摄像头的内参和畸变系数;
(2)采集深度图像,计算红外摄像头的内参和畸变系数;
(3)同步采集彩色和红外摄像头的图像,计算两个摄像头间的旋转矩阵和平移向量。
4.根据权利要求1所述的基于视觉SLAM的磁导引AGV的自动纠偏控制方法,其特征在于:基于栅格地图、Kinect V2相机实时获取的信息和AGV的脱磁状态实现磁导引AGV的视觉SLAM导航纠偏,具体包括:当磁导航传感器检测到AGV脱离磁条,通过改进的ORB‑SLAM2系统构建了二维栅格地图,读取AGV的当前位姿,并以前方磁条轨道上较近的导航点为目标点,全局路径规划算法选择A*算法,规划出一条最优路径,局部路径规划算法选择TEB算法,根据Kinect V2获取的点云信息躲避障碍物,通过视觉SLAM导航方式自主运行到前方轨道上较近的SLAM导航目标点,调整好位姿之后,磁传感器读取磁条信息,随后继续以磁导航方式运行至目标位置。
5.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至4中任一项所述方法的步骤。