具体实施方式
结合以下应用场景对本发明作进一步描述。
参见图1,一种用于数据中心物理设备上下架的智能机器人,包括机器人主体1和机械搬运装置2;
所述机器人主体1包括激光雷达11、中央处理器12、运动控制装置13、运动装置14和里程计15;
所述激光雷达11用于扫描并采集机器人主体1在工作环境中的环境信息;
所述中央处理器12用于根据从所述激光雷达11获取的环境信息构建栅格地图,获取机器人自身位姿信息,并根据数据中心中设备和机柜的位置进行路径规划并向所述运动控制装置13发出相应的移动指令;
所述运动控制装置13用于根据所述中央处理器12下发的移动指令控制所述运动装置14;
所述运动装置14装有车轮,用于控制所述机器人主体1移动;
所述里程计15用于测量所述机器人主体1的行程信息;
所述机械搬运装置2设置在所述机器人主体1上,用于进行设备的搬运和上下架操作。
优选地,所述中央处理器12包括存储模块120、地图构建与定位模块122、路径规划模块124和指令发送模块126;
所述地图构建与定位模块122用于根据从所述激光雷达11采集的环境信息构建栅格地图并获取机器人自身位姿信息;
所述存储模块120用于储存所述栅格地图信息;
所述路径规划模块124用于根据所述栅格地图信息、机器人自身位姿信息和目的地信息进行路径规划,获取路径规划信息;
所述指令发送模块126用于根据所述栅格地图信息、机器人自身位姿信息和路径规划信息生成相应的移动指令并发送至所述运动控制装置13;
其中,所述目的地信息表示所述设备或机柜的位置信息,可以通过人为设定或输入;
其中,所述地图构建与定位模块中采用SLAM(simultaneous localization andmapping)技术对栅格地图进行更新并获取自身的当前位置信息。
本发明上述实施例,通过设置激光雷达获取智能机器人周围的环境信息,通过设置地图构建与定位模块对采集到的环境信息进行处理,构建出智能机器人所在工作环境的栅格地图,并且根据从激光雷达进一步获取的信息获取智能机器人自身的准确定位,并采用路径规划模块根据数据中心中设备和机柜的位置进行准确的路径规划,运动控制装置根据规划的路径控制机器人到达指定的地方位置进行上下架操作,智能型高,环境适应能力强,可以有效地减少人力成本。
优选地,所述机械搬运装置2包括射频识别模块21、双目摄像头22、图像处理模块23、机械控制模块24和机械手结构25;
所述射频识别模块21用于扫描并识别设备或机柜上的标签信息,确认目标对象,所述目标对象为目标设备或目标机柜;
所述双目摄像头22用于采集机械搬运装置2工作区域内的目标对象图像,其中所述双目摄像头22分为左摄像头和右摄像头分别同时获取工作区域的图像信息;
所述图像处理模块23用于对获取的目标对象图像进行处理,获取所述目标对象的位置信息;
所述机械控制模块24用于根据获取的目标对象的位置信息向所述机械手结构25发出相应的控制指令;
所述机械手结构25用于根据接收到的控制指令抓取目标设备并完成目标设备的上下架操作。
本发明上述实施例,通过设置双目摄像头获取机械搬运装置的工作区域的图像信息,并且通过设置射频识别模块,识别设备或机柜上的标签信息,能够准确地判断出在机械搬运装置工作区域中的设备或机柜是否为需完成上下架操作的对象;通过设置图像处理模块进一步获取目标对象的位置信息,通过机械控制模块控制机械手结构完成相应的上下架操作,整个机械搬运装置适应性强,而且准确性高,为智能机器人完成设备上下架提供了保证。
优选地,所述图像处理模块23包括摄像头标定单元230、图像预处理单元232、图像分割单元234和目标定位单元236;
所述摄像头标定单元230用于对所述双目摄像头22进行标定,获取摄像头的内部参数和外部参数,确定图像二维坐标系和世界三维坐标系的映射关系;
所述图像预处理单元232用于对获取的目标对象图像进行对比度增强、平滑和图像增强的预处理,获取预处理后的目标对象图像;
所述图像分割单元234用于将目标对象从预处理后的目标图像分割出来;
所述目标定位单元236用于根据目标对象在图像中的坐标位置,结合从所述摄像头标定单元230获取的摄像机标定结果及双目视觉视差原理,将二维坐标转换到真实三维空间坐标,获取目标对象的三维位置信息。
优选地,所述图像分割单元234用于将目标对象从预处理后的目标图像分割出来,具体包括:
(1)将从双目摄像头22采集的两幅目标对象图像分别标记为目标对象图像R1和目标对象图像R2,并将目标对象图像R1和目标对象图像R2经图像预处理单元232处理后获取的预处理后的目标对象图像分别标记为R’1和R’2;
(2)采用图像分割算法对预处理后的目标对象图像R’1进行目标对象分割,其中预处理后的目标对象图像R’1中每个像素点可以表示为其中i=1,2,…,I,I表示像素点的总数,表示该像素点为表示目标对象的前景,表示该像素点为背景;
(3)采用轮廓抽取算法提取出目标对象的轮廓集合为C={C1,C2,…,CZ},其中每个轮廓Cz表示一条封闭曲线,z=1,2,…,Z,Z表示轮廓集合中轮廓的总数,该向量记录了目标对象边界上的像素点位置Cz={p1,p2,…,pLz},其中Lz表示轮廓Cz中像素点的总数;
(4)将预处理后的目标对象图像R’1中轮廓集合C中的每一个轮廓Cz映射到预处理后的目标对象图像R’2中,获取目标对象在图像R’2的边界轮廓,具体为:
(41)构建状态迁移矩阵M,其中状态迁移矩阵M的尺寸为Lz×D,D表示视差的取值范围,D∈[dmin,dmax],dmin和dmax分别表示视差取值的最小值和最大值,状态迁移矩阵M中每个元素M(i,j)的取值为Est(i,j),Est(i,j)表示R’1中像素点pi与R’2中视差为dj的对应像素点的状态能量;
(42)采用自定义状态能量公式获取状态迁移矩阵M中每个元素M(i,j)的状态能量Est(i,j):
其中,
式中,Est(i,j)表示R’1中像素点pi与R’2中视差为dj的对应像素点的状态能量,qj表示在R’2中与R’1中像素点pi视差为dj的对应像素点,qj=pi-dj,E(pi,qj)表示像素点pi与像素点qj的目标能量函数,Cs(pi,qj)表示像素点pi与像素点qj的视觉匹配代价,其中 Φ(pi)表示以像素点pi为中心的一个局部窗口,其大小为w×w,K(px)=1表示像素点px属于前景,qy=px-dj,ch(px)和ch(qy)分别表示像素点px和qy的R/G/B色度值,ω0表示对象边界权重,ω1表示对象平滑权重,CO(pi,qj)表示对象边界匹配代价,其中Pr(O|py)表示像素点qy属于前景的后验概率,N(pi-pi-1)表示像素点pi和pi-1的平滑度代价,其中 βd表示设定的视差不连续阈值;
(43)对状态迁移矩阵M采用回溯算法,获取最优能量路径,将最优能量路径上的每个M(i,j)对应的像素点pi映射到R’2中得到唯一对应轮廓点pi-dj,得到预处理后的目标对象图像R’1中轮廓Cz映射到预处理后的目标对象图像R’2后的最佳匹配轮廓C’z;
(44)在预处理后的目标对象图像R’2中获取目标对象所有轮廓边界的最佳匹配轮廓,并根据映射的最佳匹配轮廓分割出目标对象。
本优选实施例,采用上述方法对从双目摄像头中获取的图像进行目标对象的分割,能够克服从双目摄像头中不同摄像头获取的两幅图像会存在视差的问题,能够准确,效率地对在两幅图像中的目标对象进行轮廓匹配,从而分别准确地获取目标对象在两幅图像中的轮廓并进一步进行分割,使得从两幅图像中的分割对象匹配性强,为后续模块中获取目标对象的准确三维位置奠定了基础。
优选地,所述采用图像分割算法对预处理后的目标对象图像R’1进行目标对象分割,具体包括:
(1)对图像进行阈值分割,获取目标对象的外接矩形作为初始图像轮廓,并在外接矩形上每隔4个像素点设置一个控制点v,作为初始轮廓控制点S=(v1,v2,…,vn),并将外接矩形的中心设定为动态轮廓中心τ=(Xτ,Yτ);
(2)采用自定义能量方程获取每个轮廓控制点到其邻域位置的能量值:
Ei,j=α(i)Eih1(i,j)+β(i)Eih2(i,j)+γ(i)Eedge(i,j)+ε(i)Er(i,j)
式中,Ei,j表示轮廓控制点vi到其邻域位置的能量值,i表示第i个轮廓控制点,j=1,2,3,4,分别表示与轮廓控制点vi四周相邻的4个邻域像素点vi,j,Eih1(i,j)表示一阶连续性强制力,其中 表示各轮廓控制点之间的平均距离,|vi,j-vi-1|表示邻域像素点vi,j和轮廓控制点vi-1之间的距离,α(i)表示设定的离散一阶系数,Eih2(i)表示二阶连续性强制力,其中Eih2(i,j)=(|vi-1-vi,j|+|vi,j-vi+1|)2,|vi-vi+1|表示邻域像素点vi,j和轮廓控制点vi+1之间的距离,β(i)表示设定的离散二阶系数,Eedge(i,j)表示边缘能量,其中L(vi,j,vi-1)表示邻域像素点vi,j和轮廓控制点vi-1之间轮廓线,I(x,y)表示像素点(x,y)的梯度值,表示邻域像素点vi,j和轮廓控制点vi-1之间轮廓线上所有像素点的平均梯度值,n表示邻域像素点vi,j和轮廓控制点vi-1之间轮廓线上像素点的总数,μ表示设定的边缘能量因子,γ(i)表示边缘能量系数,Er(i,j)表示外加控制力,其中Er(i,j)=|H(vi,j)-H(vi)|2,H(vi,j)和H(vi)分别表示邻域像素点vi,j和轮廓控制点vi的灰度值,ε(i)表示外加控制力系数,其中 表示轮廓控制点vi的邻域灰度平均值,和σ2分别表示整个图像的灰度平均值和方差,和表示设定的灰度判定因子,其中
(3)若存在轮廓控制点vi到其邻域位置的能量值Ei,j小于设定的能量阈值EiY,则使轮廓控制点vi移动到对应的邻域像素点vi,j所在的位置,并且设定能量阈值EiY=Ei,j;
(4)统计所有发生移动的轮廓控制点的数目P;
(5)若P小于设定的阈值,或者达到设定最大迭代次数,则依次连接当前所有轮廓控制点,作为目标对象的轮廓并进行分割处理;否则,重复(2)-(5)。
本优选实施例,采用上述的方法首先对从双目摄像头中获取的其中一幅图像进行目标对象分割,采用迭代的方法对从阈值分割获取的外接矩形轮廓进行一步一步的收缩,最终获取目标对象的轮廓,能够很好地适应不同目标对象的轮廓形状,适应性强,准确性高,为模块中后续对从双目摄像头获取的另外一幅图像进行轮廓匹配和目标对象准确的三维定位奠定了基础。
优选地,所述图像预处理单元232用于对获取的目标对象图像进行对比度增强处理,具体包括:
(1)将目标对象图像中每个像素点(i,j)的RGB灰度值转换到HSV颜色空间;
(2)对目标对象图像中每个像素点(i,j),选择以像素点(i,j)为中心的一个8×8邻域图像块,对这个邻域图像块进行小波变换,获取像素点(i,j)的局部噪声水平Ln(i,j):
式中,Median{·}表示中值函数,表示邻域图像块进行小波变换获取的第一层HH子带系数绝对值集合;
(3)获取像素点(i,j)的背景值B(i,j)和梯度值G(i,j
式中,B(i,j)表示像素点(i,j)的背景值,V(i+a,j+b)表示HSV颜色空间中像素点(i+a,j+b)的亮度值,G(i,j)表示像素点(i,j)的梯度值,Gx(i,j)表示像素点(i,j)的水平方向梯度,Gy(i,j)示像素点(i,j)的竖直方向梯度;
如果则利用经验函数获取增强后的背景值B′(i,j)和梯度值G′(i,j):
式中,μ表示设定的增强阈值,η表示设定的增强效果调整因子,Ln(i,j)表示像素点(i,j)的局部噪声水平,B′(i,j)表示像素点(i,j)增强后的背景值,G′(i,j)表示像素点(i,j)增强后的梯度值,Cab表示设定的经验标量系数,其中Cab表示2×1的系数向量,则Cab中总共包括20个经验标量系数;
否则,则设定B′(i,j)=B(i,j),G′(i,j)=G(i,j);
优选地,μ=1,η=3;
(4)获取对比度增强模型参数σ(i,j)和ζ(i,j)
其中,
式中,ω(i,j,i′,j′)表示权重系数,Ω(i,j)表示像素点(i,j)的局部邻域集合,其中选则以(i,j)为中心的3×3矩阵作为像素点(i,j)的局部邻域,G(i′,j′)和G′(i′,j′)分别表示像素点(i′,j′)增强前后的梯度值,B(i′,j′)和B′(i′,j′)分别表示像素点(i′,j′)增强前后的背景值,C(i,j)表示归一化系数,和分别表示空间域和值域的模糊程度控制因子;
(5)利用下列对比度增强模型对目标对象图像进行对比度增强:
V′(i,j)=σ(i,j)·V(i,j)+ζ(i,j)
式中,V′(i,j)表示对比度增强后像素点(i,j)在HSV颜色空间中的亮度值,V(i,j)表示对比度增强前像素点(i,j)在HSV颜色空间中的亮度值,σ(i,j)和ζ(i,j)分别表示对比度增强模型参数;
(6)将增强后的每个像素点从HSV颜色空间变换到RGB颜色空间,得到增强后的目标对象图像。
本优选实施例,采用上述的方法对目标对象图像进行对比度增强处理,根据图像中每个像素点的亮度,采用对比度增强模型自适应地对图像进行对比度增强处理,能够增强图像中的非噪声细节,突显目标对象图像中目标对象的细节部分,增强效果好,适应性强,为***后续对目标对象图像做进一步处理奠定了基础。
最后应当说明的是,以上实施例仅用以说明本发明的技术方案,而非对本发明保护范围的限制,尽管参照较佳实施例对本发明作了详细地说明,本领域的普通技术人员应当分析,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的实质和范围。