1.一种基于单目视觉的仓储机器人室内定位方法,其特征在于,包括以下步骤:S1、对单目相机进行内外参数标定,确定图像坐标系uOv与世界坐标系XwOYw间的映射关系,及描述不同相机坐标点间映射关系的单应矩阵m;
S2、利用多个单目相机对地面上多个带有光信标的移动机器人进行连续拍摄;进行连通域分析,提取并标记检测目标,同时输出连通域相关参数;
S3、对不同相机所采集的图像中目标物的参数进行对比,实现对跨视场同名目标进行检测分析与处理;
S4、根据步骤S2获得的连通域的相关参数,结合移动机器人的八类位姿状态模型进行机器人的位姿计算,得到机器人的静态位姿;
S5、建立移动机器人动态误差补偿模型,根据机器人当前周期与前一周期的位姿数据,估计机器人的实际位姿。
2.根据权利要求1所述的基于单目视觉的仓储机器人室内定位方法,其特征在于,步骤S1具体为:采用张正友棋盘标定法,通过Matlab对相机进行内外参数的标定,去除镜头畸变,同时得到图像坐标系uOv与世界坐标系XwOYw间的映射关系,且得到描述不同相机坐标点间映射关系的单应矩阵m。
3.根据权利要求1所述的基于单目视觉的仓储机器人室内定位方法,其特征在于,步骤S2中,利用OpenCV将采集的图像进行二值化处理,对处理后的图像进行连通域分析,连通域相关参数包括连通域的宽w、高h、质心坐标(Xc,Yc)以及连通域左上角点坐标(x0,y0)。
4.根据权利要求1所述的基于单目视觉的仓储机器人室内定位方法,其特征在于,步骤S3具体为:S301、读入已经去畸变处理的左、右两幅图像,同时读入将右相机坐标点映射到左相机所用的单应矩阵m;
S302、对左、右两幅图像进行二值化处理,并计算左相机图像连通域,得到其长wl、宽hl、质心坐标(xcl,ycl)、外接矩形左上角点坐标(x0l,y0l),通过计算x0l+wl的值是否小于图像长度W来判断该连通域是否属于有效目标,去除与图像边缘相接的连通域;
S303、计算右相机图像连通域,得到其长wr、宽hr、质心坐标(xcr,ycr)、外接矩形左上角点坐标(x0r,y0r);
S304、根据步骤S1所得的单应矩阵m将右图像中所有连通域质心点映射到左相机,确定连通域有效目标。
5.根据权利要求4所述的基于单目视觉的仓储机器人室内定位方法,其特征在于,步骤S304中,分别判断映射点与原始左图中连通域质心坐标点间的距离大小是否在给定的阈值范围T之内,若是,则认为右图中相应的连通域不是新的有效目标;反之,则认为右图中相应的连通域是新的有效目标。
6.根据权利要求1所述的基于单目视觉的仓储机器人室内定位方法,其特征在于,步骤S4中,仓储机器人的位姿包括其质心位置以及其姿态角,通过安装的光信标的位姿信息来反应,具体为:S401、由步骤S2获得图像中光信标的质心坐标(Xc,Yc)、连通域外接矩形左上角点坐标(x,y)以及外接矩形的长h和宽w,确定光信标的质心为其所在移动机器人的质心;
S402、针对连通域的宽度w和长度h的关系,对位姿角进行分析确定。
7.根据权利要求6所述的基于单目视觉的仓储机器人室内定位方法,其特征在于,步骤S402中,当该连通域的宽度w大于长度h时,分别找到由连通域外接矩形左上角点(x,y)向右增加w/4、3w/4个像素单位的两个点,由这两点向下进行遍历至外接矩形的下边界,判断其间点的像素值是否为255,并找到像素值等于255的区间段上所有像素点的中间点(x1,y1)、(x2,y2),中间点(x1,y1)、(x2,y2)的两点连线与x轴的夹角θ1或θ2为光信标的姿态角即移动机器人的姿态角;当该连通域质心横坐标大于上一幅图像对应的连通域质心横坐标时,机器人在x方向上沿x轴的正方向移动,则图像中移动机器人的姿态角为θ1,反之则为θ2;
当该连通域的宽度w小于长度h时,分别找到由连通域外接矩形左上角点(x,y)向下增加h/4、3h/4个像素单位的两个点,由这两点向右进行遍历至外接矩形的右边界,计算得到移动机器人的姿态角θ3或θ4。
8.根据权利要求1所述的基于单目视觉的仓储机器人室内定位方法,其特征在于,步骤S5具体为:S501、建立基于圆弧移动轨迹的误差补偿模型,假定在很短的时间内,某时刻机器人行驶轨迹为由该时刻所采图像与上一时刻所采图像中两前外侧车轮的连线所构成的圆弧,Ti-1为采集第i-1副图至采集第副图所用时间,上Ti为采集第i副图至采集第i+1副图所用时间;θi-1为经过Ti-1时间机器人所走角度;(Xefi,Yefi)为机器人左前轮中心横纵坐标估计值;
αei为机器人位姿角估计值;θei为经过Ti时间机器人所走角度估计值;θoi为x轴与转向中心至机器人左前轮中心连线的夹角;(Xeci,Yeci)为机器人质心坐标估计值;
S502、通过处理第Ti及第Ti-1时刻的图像,获得相邻两时刻两幅图像中三对连通域的质心坐标,确定机器人的质心坐标(Xci-1,Yci-1)、(Xci,Yci);结合机器人质心与前轮中心的几何关系,计算得到相应的外侧车轮中心坐标;
S503、过质心坐标(Xci-1,Yci-1)、(Xci,Yci)且垂直于车身方向的两直线方程式为:Y-Yfli-1=ki-1(X-Xfli-1)
Y-Yfli=ki(X-Xfl)
其交点(Xoi,Yoi)为机器人的转向中心,具体为:
S504、确定此时机器人的转弯半径为:
S505、经过Ti-1时间机器人所走角度为前后两位姿角的差值,即θi-1=αi-1-αi,则第i时刻机器人的角速度:S506、经过Ti时间机器人所走角度为:
θei=ωi×Ti
S507、坐标角θoi为机器人前外侧车轮和转向中心的连线与过(Xoi,Yoi)且沿X轴正方向的直线所成的夹角,确定机器人位姿状态下机器人位姿角αi与坐标角θoi的关系如下:θoi=αi+90°
S508、求得坐标角θoi后,结合转弯半径Ri计算机器人前外车轮中心横纵坐标估计值如下:Xefi=Xoi+Ri×cos(θoi)
Yefi=Yoi-Ri×sin(θoi)
S509、根据机器人的转向中心反解出Xeci和Yeci,得到移动机器人的质心坐标以及姿态角,具体为:Xeci=Xefi-cos(αei+λ)
Yeci=Yefi+cos(αei+λ)。
9.根据权利要求8所述的基于单目视觉的仓储机器人室内定位方法,其特征在于,步骤S502中,相应的外侧车轮中心坐标:Xfli-1=Xci-1+cos(αi-1+λ)
Yfli-1=Yci-1-sin(αi-1+λ)
Xfli=Xci+cos(αi+λ)
Yfli=Yci-sin(αi+λ)
其中,Xfli-1为前一时刻机器人外侧车轮横坐标,Yfli-1为前一时刻机器人外侧车轮纵坐标,Xfli为当前时刻机器人外侧车轮横坐标,Yfli为当前时刻机器人外侧车轮纵坐标,λ为机器人轴线与质心和前轮中心连线所成的夹角。