本发明涉及机器人目标识别定位领域,尤其涉及一种基于深度视觉的协作机器人拆装目标精准定位方法。
背景技术:
1、在复杂的工作环境中,由于物体遮挡,光线变化和特征点小等问题导致协作机器人对拆装目标的拆装点定位精度低。现有单深度相机在检测小目标时,往往存在效率低、定位精度差的问题。尽管多角度双目相机能够提供较高的精度,但由于其在协作机器人上的灵活部署难度大,且在复杂场景中,双目相机的配准过程复杂且耗时。因此,现有技术无法满足协作机器人在复杂场景中针对小目标实现快速有效的精准定位的需求。
2、随着工业自动化和智能制造的快速发展,协作机器人在工业生产中的应用逐渐增多。与传统工业机器人不同,协作机器人能够与人类工人共享工作空间,具有高灵活性、安全性和易操作性,尤其适用于复杂的装配和拆卸任务。
3、协作机器人通常用于需要高精度、高灵活性和安全性的场景,如设备检修、精密制造和汽车制造等领域的目标拆装操作。在这些场景中,机器人需要与工人共同完成复杂的零部件拆卸和装配任务,而拆装任务不仅需要识别和定位大型结构件,还包括对细小零件如螺钉、插针进行精确的定位和操作。
4、现有的协作机器人视觉系统大多使用rgb相机或激光雷达进行环境扫描和目标识别。然而,这些传感器在定位大目标时效率较高,但对小零件的识别精度不足,特别在复杂的工作环境下,容易受到环境光线、反射和遮挡的影响,导致识别与定位的精度下降。
5、因此,为了解决上述问题,亟需一种能够在协作机器人系统中结合多种传感器优势、实现大目标快速定位与小目标精确识别的多级定位技术,以提高协作机器人在目标拆装任务中的效率与精度。
技术实现思路
1、发明目的:为了改善协作机器人在复杂场景下无法快速有效精准定位小目标物体的问题,本发明提出一种基于深度视觉的协作机器人拆装目标精准定位方法,通过快速的得到处于复杂环境中待拆装物体和拆装点的精确位置信息,有利于协作机器人的灵活部署进行拆装工作,实现了在复杂环境中对待拆装物体和拆装点的高效精准定位。
2、技术方案:本发明基于深度视觉的协作机器人拆装目标精准定位方法包括以下步骤:
3、(1)通过深度相机对待拆装物体进行目标识别与定位,过程为:
4、(1.1)通过深度相机采集彩色图像数据流和深度图像数据流,其中,彩色图像用于目标物体的视觉特征识别,深度图像用于空间定位;
5、(1.2)通过相机标定获取深度相机彩色摄像头的内参矩阵和深度相机深度摄像头的内参矩阵其中fx是焦距横向值,fy是焦距纵向值,cx是主点坐标,cy是xx主点坐标。深度摄像头到彩色摄像头的旋转矩阵rcd和平移向量tcd。
6、结合标定得到的参数对采集到的彩色图像与深度图像进行去畸变处理,先将图像像素点进行归一化处理,得到图像坐标:
7、
8、其中,fx,fy是焦距;cx,cy是主点坐标;u代表图像像素点的横向坐标,v代表图像像素点的纵向坐标,x代表图像上点在水平方向坐标,y代表图像上点在竖直方向坐标。
9、接着进行畸变修正:
10、r2=x2+y2(2)
11、
12、其中,k1代表一级径向畸变系数,k2代表二级径向畸变系数,k3代表三级径向畸变系数,p1代表一级切向畸变系数,p2代表二级切向畸变系数,x′代表畸变修正后的图像上点在水平方向坐标,y′代表畸变修正后的图像上点在竖直方向坐标。
13、在代入彩色摄像头和深度摄像头的标定参数后,计算彩色图像的去畸变后像素点坐标(uc′,vc′),以及深度图像的去畸变后像素点坐标(ud′,vd′):
14、u′=x′fx+cx,v′=y′fy+cy(4)
15、对彩色图像和深度图像去畸变后再进行视场(fov)补偿。
16、通过去畸变和视场(fov)补偿后,确保彩色摄像头与深度摄像头采集到的图像画面是一致的。结合像素坐标系与相机坐标系的关系,以及彩色摄像头与深度摄像头之间的相对位置关系,建立彩色图像与深度图像像素间的映射关系数学模型,过程如下:
17、设定世界中某点在彩色摄像头坐标系中的位置为pc(xc,yc,zc),在深度摄像头坐标系中的位置为pd(xd,yd,zd),在彩色图像像素坐标系中的位置为pc=(uc′,vc′),在深度图像像素坐标系中的位置为pd=(ud′,vd′),相对关系如下:
18、zcpc=kcpc,zdpd=kdpd (7)
19、再结合深度摄像头到彩色摄像头的旋转矩阵rcd和平移向量t,将深度摄像头与彩色摄像头相联系,相对关系如下:
20、pc=rcdpd+tcd (8)
21、结合式(6)和式(7),建立彩色图像与深度图像像素间的映射关系数学模型,如下:
22、zcpc=kcrcdkd-1zdpd+kctcd (9)
23、其中,zc为深度相机彩色摄像头相机坐标系下的深度值,pc为彩色图像的像素坐标,kc为深度相机彩色摄像头的内参。zd为深度相机深度摄像头相机坐标系下的深度值,pd为深度图像的像素坐标,kd为深度相机深度摄像头的内参。rcd为彩色摄像头与深度摄像头间的旋转矩阵,tcd为彩色摄像头与深度摄像头间的平移矩阵。
24、在映射数学模型应用于配准后,将彩色图像与深度图像数据融合,为每个彩色图像像素都附着对应的深度值,生成包含二维图像坐标,颜色信息,深度信息的配准图像数据流。
25、(1.3)通过包含待拆装物体和拆装点的图片以及对图片中待拆装物体和拆装点的标注文件制成待拆装物体图像数据集和拆装点图像数据集。将拆装物体图像数据集输入深度学习算法进行训练,采用训练结果中的ap50和map作为模型评价结果,获取最优的待拆装物体目标检测模型。其中ap50为交并比大于0.5时的平均精度,map为交并比在0.5到0.95之间,以0.05为步距的10个ap的平均值。确保映射关系数学模型识别不同角度、光照及复杂背景下的待拆装物体。
26、在检测过程中,目标检测模型逐帧对彩色图像数据流进行物体识别和分类。模型通过特征提取、区域建议网络(rpn)生成多个候选区域,并结合非极大值抑制(nms)筛选出最优的目标检测框,最终在彩色图像上生成初步的目标检测框。
27、(1.4)将初步生成的目标检测框内的彩色图像转换成灰度图像,使用canny边缘检测算法对灰度图像进行高斯模糊减少噪声,接着计算图像的梯度强度,通过双阈值抑制和边缘跟踪生成符合待拆装物体边缘特征的明确边缘线。如轮廓的直线或者曲线以及表面的边界线。
28、将待拆装物体的边缘线拟合成符合待拆装物体边缘特征的特定目标框并同步到配准图像中且给出特定目标框的中心点坐标pc(uc′,vc′)。特定目标框用于锁定物体的实际区域,以便后续深度数据处理。
29、(1.5)基于配准图像,对特定目标框内的深度数据进行基于局部均值的深度数据补齐,即为特定目标框内存在的无效或者缺失的深度值周围先选择一个预定大小的邻域窗口,计算邻域内有效深度值的局部均值,将无效或者缺失的深度值设置为其邻域均值。
30、接着进行双边滤波处理,即基于像素间的空间邻近性和像素深度值相似性对深度数据进行去噪处理,确保目标区域的深度数据完整且连续。
31、(1.6)对框内深度数据进行加权平均处理,获取加权深度值zp,将zp设定为彩色摄像头相机坐标系下的深度值。设定权重其中计算加权深度值zp,公式如下:
32、
33、其中,d(xi,yi)是特定目标框内第i个像素的深度值,n是特定目标框内有效像素的数量。
34、(1.7)经由坐标转换,获取待拆装物体在世界坐标系下的位置坐标pw(xw,yw,zw)。
35、(2)判断待拆装物体是否处于机械臂工作空间内,如果不处于工作空间内,则基于目标与深度相机的距离,调整机器人位置,使待拆装物体进入机械臂工作空间。
36、(3)当待拆装物体处于机械臂工作空间时,基于待拆装物体的位置,控制机械臂移动末端执行器至待拆装物体附近,并通过末端执行器上的双目相机模组对拆装点进行识别定位,获取拆装点精确位置,过程为:
37、(3.1)基于待拆装物体的世界位置坐标pw,机械臂通过运动规划算法规划出机械臂的移动轨迹,随后控制机械臂沿着轨迹移动末端执行器至待拆装物体前方。
38、(3.2)启动末端执行器上的双目相机采集待拆装物体图像数据。
39、(3.3)利用采集到的左右图像,通过经过训练的深度学习立体匹配算法生成基于左视图的视差图。在视差图中,每个像素值表示左右图像间的视差,用于进一步计算深度信息。
40、(3.4)通过结合轻量级骨干网络moblienetv4改进yolov8中的c2f模块,依次通过初始深度卷积、扩展层(1x1卷积)、中间深度卷积和投影层(1x1卷积),提取和表达特征。在主干网络sppf模块前添加注意力机制模块dat,通过偏移卷积动态调整采样区域,进行特征聚焦。结合afpn网络优化检测头,通过对主干网络生成的多尺度特征图进行逐层特征融合,避免小目标特征的丢失,进而通过检测头生成每个待拆装点的目标框,包括目标框的位置和类别。
41、(3.5)通过提取待拆装点的目标框内像素的视差值dp,计算区域内目标深度值。结合相机的基线长度b和焦距f计算待拆装点的深度zs,公式如下:
42、
43、其中,zs是待拆装点的深度值,f为双目相机焦距。b为双目相机基线长度,dp为视差值。
44、(3.6)经由坐标转换,获取待拆装点在世界坐标系下的位置坐标psw(xsw,ysw,zsw),转换公式如下:
45、zspl=kspsc(17)
46、其中,zs为待拆装点的深度;pl为待拆装点在左图像中的像素坐标;ks为双目相机左摄像头内参;psc(xsc,ysc,zs)为待拆装点在双目相机左摄像头坐标系下的坐标;
47、psw=rswpsc+tsw(18)
48、其中,rsw和tsw为双目相机左摄像头的外参;psw(xsw,ysw,zsw)为待拆装点在世界坐标系下的坐标;psc(xsc,ysc,zs)为待拆装点在双目相机左摄像头坐标系下的坐标。
49、步骤(4),基于拆装点定位坐标,协作机器人根据规划的路径得出机械臂拆装路径,控制机械臂进行目标拆装工作。
50、其中,步骤(1)中,假设彩色摄像头的水平视场角为垂直视场角为深度摄像头水平视场角为垂直视场角为根据视角差计算图像的裁切范围。过程如下:
51、计算水平视角差和垂直视角差:
52、
53、其中rh是水平视角差,rv是垂直视角差,是彩色摄像头的水平视场角,是彩色摄像头的垂直视场角;是深度摄像头的水平视场角,是深度摄像头的垂直视场角。
54、然后结合画面分辨率计算裁切范围:
55、cuth=w(1-rh),cutv=h(1-rv) (6)
56、其中,cuth是水平方向裁切范围,cutv是垂直方向裁切范围,w是需要裁切的画面宽度,h是需要裁切的画面高度。
57、步骤(1.5)中,计算局部均值公式如下:
58、
59、其中,dm为局部均值,di为邻域窗口内第i个有效深度值,n为邻域窗口内有效深度值的数量。
60、步骤(1.7)中,坐标转换的公式如下:
61、pw=rcwpc+tcw(12)
62、其中,rcw和tcw为彩色摄像头的外参;pw(xw,yw,zw)为待拆装物体在世界坐标系下的坐标;pc(xc,yc,zp)为待拆装物体在相机坐标系下的坐标。
63、步骤(2)的过程为:
64、(2.1)基于待拆装物体的世界位置坐标pw(xw,yw,zw),将其转换为极坐标(rw,θw,zw),并结合机械臂的工作范围(rmin,rmax,θmin,θmax,zmin,zmax)进行比较,判断其是否处于协作机器人拆装机械臂的工作范围内。转换公式如下所示:
65、
66、其中,rw是待拆装物体到机械臂基座的水平距离,θw是待拆装物体在xy平面上的方位角,xw,yw,zw是待拆装物体的世界坐标。
67、(2.2)若待拆装物体不处于机械臂工作范围内,则基于物体位置与工作范围之间的距离差δr和角度差δθ,控制协作机器人缓慢移动直至待拆装物体进入机械臂工作空间。δr和δθ公式如下:
68、
69、其中,rw是待拆装物体到机械臂基座的水平距离,rmin,rmax为机械臂工作范围的最小值和最大值。δr>0则机器人向前移动,δr<0则机器人向后移动。
70、
71、其中,θw是待拆装物体在xy平面上的方位角,θmin为机械臂旋转的最小值,θmax为机械臂旋转的最大值。δθ>0则机器人顺时针旋转,δθ<0则机器人逆时针旋转。
72、步骤(4)的过程为:
73、(4.1)基于拆装点精确定位坐标psw(xsw,ysw,zsw),协作机器人通过路径规划算法进行拆装路径规划,并结合关节空间插值算法优化机械臂的拆装运动轨迹,最终得到一条机械臂拆装路径。
74、(4.2)根据规划出的路径,协作机器人通过关键点的位置控制和速度控制,控制机械臂移动末端执行器上的多功能拆装机械手到达拆装点并进行拆装工作。
75、工作原理:本发明基于深度视觉的协作机器人拆装目标精准定位方法,过程为:利用深度相机模组对待拆装物体进行目标识别与定位;基于目标与深度相机的距离,调整机器人位置,使待拆装物体进入机械臂工作空间;当待拆装物体处于机械臂工作空间时,基于待拆装物体的坐标,控制机械臂移动末端执行器至相应位置,并利用末端执行器上的双目相机模组对拆装点进行目标识别定位,确定拆装点精确位置;控制协作机器人进行目标拆装工作。本发明能快速的得到处于复杂环境中待拆装物体和拆装点的精确位置信息,有利于协作机器人的灵活部署进行拆装工作。
76、有益效果:与现有技术相比,本发明具有以下优点:本发明以实现协作机器人对复杂环境中小目标的快速精准定位为目标,以深度相机和双目相机作为数据采集装置,利用目标检测模型和图像处理技术,实现在复杂环境中对待拆装物体和拆装点的高效精准定位,便于协作机器人对拆装工作进行灵活部署。