CN115816471B - 多视角3d视觉引导机器人的无序抓取方法、设备及介质 - Google Patents
多视角3d视觉引导机器人的无序抓取方法、设备及介质 Download PDFInfo
- Publication number
- CN115816471B CN115816471B CN202310155001.2A CN202310155001A CN115816471B CN 115816471 B CN115816471 B CN 115816471B CN 202310155001 A CN202310155001 A CN 202310155001A CN 115816471 B CN115816471 B CN 115816471B
- Authority
- CN
- China
- Prior art keywords
- map
- robot
- point cloud
- detection device
- coordinate system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种多视角3D视觉引导机器人的无序抓取方法、设备及介质,是采用眼看手机器人视觉系统,根据被测物体表面光学反射率自适应调整投影仪条纹亮度,多个相机从不同视角采集变形条纹图片,由条纹投影轮廓术结合神经网络模型获得被测物体3D点云数据;由计算机对3D点云数据进行解算得到目标工件位姿信息;通过手眼标定数据将位姿信息转换至机器人坐标系,操纵机器人抓取工件。本发明通过自适应调整投影条纹强度,多视角采集变形条纹,条纹投影轮廓术结合神经网络模型实现复杂场景下高速、高精度三维重建;以解算3D点云实现目标工件位姿识别,视觉引导机器人实现准确无序抓取。
Description
技术领域
本发明涉及机器视觉和机器人应用领域,具体涉及一种多视角3D视觉引导机器人的无序抓取方法、设备及介质。
背景技术
传统的自动化装配都是通过振动盘上料保证零件姿态和位置的一致性,然后通过离线编程的方式使机器人从固定的位置夹取零件至固定的安装位置,之后重复固定的轨迹、执行固定的任务。
随着机器视觉技术的发展,将机器视觉引入自动装配中可以根据视觉识别结果来调整抓取点坐标及姿态,实现抓取功能,然后将夹起的零件进行相应的平移、旋转操作达到标准的安装位置和姿态。
由于复杂场景和视觉检测装置的局限性,存在无法准确估计待抓取工件位姿信息的情况,一般的机器人无序抓取技术难以满足快速、准确无序抓取。
发明内容
本发明为克服现有技术的不足之处,提供一种多视角3D视觉引导机器人的无序抓取方法、设备及介质,以期能够准确获取复杂场景下待抓取工件位姿信息,并由3D视觉引导的方式实现机器人快速、准确无序抓取,从而能减少检测耗时,提高抓取速度,并有效避免抓取工件时对工件造成的损伤。
本发明为达到上述发明目的,采用如下技术方案:
本发明一种多视角3D视觉引导机器人的无序抓取方法,是应用于由视觉检测装置、机器人以及被测物体所组成的抓取场景中,所述视觉检测装置是在支架的中心处设置有工业投影仪,并在所述支架的四周布置有若干个相机,且正对所述支架下方的工件,所述被测物体是在料框中设置有工件;其特征在于,所述无序抓取方法是按如下步骤进行:
步骤1、对视觉检测装置进行标定,得到视觉检测装置的标定参数,包括:相机内参、工业投影仪内参和视觉检测装置的外参;再对视觉检测装置和机器人所组成的眼看手机器人视觉系统进行标定,获得机器人和视觉检测装置的空间位姿关系TB,C;
步骤2、以UNet网络为基础,使用深度可分离卷积替换UNet网络中所有的标准卷积层积,并在最后一层添加通道注意力模块,从而构建相位神经网络;
利用视觉检测装置获取所述被测物体的若干个变形条纹图片并构成图像数据集,并利用倍频相移法对所述图像数据集进行处理,得到包裹相位;
以包裹相位作为相位神经网络校验的真值,并将所述图像数据集中的部分图片输入所述相位神经网络中进行训练,从而得到训练后的相位神经网络;
步骤3、自适应改变所述工业投影仪的投影图案的亮度,并保持相机的曝光时间不变,从而根据所述被测物体表面光学反射率的变化,获得调整的投影图案Pres;
步骤4、利用所述投影图案Pres生成正弦条纹图片PF;所述工业投影仪投射所述正弦条纹图片PF,并利用若干个相机从不同视角采集在PF下被测物体的变形条纹图片后,输入所述训练后的相位神经网络中进行处理,得到多频包裹相位;基于倍频法对所述多频包裹相位进行展开后得到绝对相位;
将投影仪坐标系设置为视觉检测装置坐标系,根据所述视觉检测装置的标定参数和所述绝对相位计算得到所述视觉检测装置坐标系下被测物体的3D点云数据,所述3D点云数据是由被测物体表面上各点在视觉检测装置坐标系中的坐标所组成的数据;
步骤5、解算所述3D点云数据获得所述工件的位姿;
步骤5.1、对所述3D点云数据进行滤波和降采样,获得预处理后的点云cloud_P;
步骤5.2、利用自适应阈值的欧式距离聚类分割算法并结合3D点云数据的点云边缘信息对预处理后的点云cloud_P进行聚类分割,获得单个目标工件的场景点云cloud_S;
步骤5.3、初步位姿信息获取;
由视觉检测装置对单个模板工件进行检测,获得模板点云cloud_T,由模板点云cloud_T计算得到模板工件在视觉检测装置坐标系中的位姿信息为Tr;
通过均匀采样算法提取模板点云cloud_T的特征点集和场景点云cloud_S的特征点集,使用SHOT特征描述符对模板点云cloud_T的特征点集和场景点云cloud_S的特征点集分别进行点云局部描述,然后在模板点云cloud_T和场景点云cloud_S的点云局部描述结果中利用kd树搜索算法搜索所有对应点对,从而求解所有对应点对并得到初步转换矩阵T1;
步骤5.4、利用初步转换矩阵T1对场景点云cloud_S进行转换,得到转换后的场景点云cloud_S’;基于最近点迭代算法对转换后的场景点云cloud_S’和模板点云cloud_T进行处理,获得准确转换矩阵T2,从而利用式(6.1)得到单个目标工件在视觉检测装置坐标系中的位姿信息TC:
TC = Tr×T2×T1 (6.1)
步骤6、利用示教器控制机器人到达所述模板工件的位置并执行抓取动作,计算抓取所述模板工件时机器人坐标系相对于机器人抓手工具坐标系的转换数据TS,BR,从而利用式(7)得到模板工件的抓取位姿TS,O:
TS,O = TS,BR×TB,C ×Tr (7)
利用式(8)计算机器人对单个目标工件的抓取位姿TS,BC,使得所述机器人按照设定的路径到达单个目标工件的位置并执行抓取单个目标工件的动作,以完成3D视觉引导机器人无序抓取;
TS,BC = TS,O×(TB,C ×TC)-1 (8)。
本发明所述的多视角3D视觉引导机器人的无序抓取方法的特点也在于,所述步骤1中的眼看手机器人视觉系统的标定过程为:
将校正板固定在机器人的抓手末端,由视觉检测装置获取所述校正板的特征点3D坐标,利用所述校正板的特征点3D坐标并结合单轴旋转法获得机器人抓手工具坐标系的原点在视觉检测装置坐标系中的3D坐标PC,并从示教器中获取所述机器人抓手工具坐标系的原点在机器人坐标系中的3D坐标PR,从而由PC和PR组成一个对应点对,利用示教器操纵机器人带动所述校正板运动,从而得到多个对应点对,对多个对应点对进行计算后得到机器人和视觉检测装置的空间位姿关系TB,C。
所述步骤3包括如下步骤:
步骤3.1、建立相机图像坐标系与投影仪像素坐标系的映射关系;
所述工业投影仪投射横纵双向多频相移条纹图片于所述被测物体表面,并利用若干个相机获取被测物体表面条纹图片集合,将相机图像坐标系下的任意一个像素点记为(xu,yu),由物体表面条纹图片集合并结合相移法和倍频法计算物体表面条纹图片集合的相位图,并将所述相位图在x轴方向相位记为θu,在y轴方向相位记为θv,从而利用式(1.1)至式(1.4)计算像素点(xu,yu)在投影仪像素坐标系下对应的四个投影仪像素坐标[Map(xu,yu,1),Map(xu,yu,2)]、[Map(xu,yu,1),Map(xu,yu,4)]、[Map(xu,yu,3),Map(xu,yu,2)]、[Map(xu,yu,3),Map(xu,yu,4)]:
Map(xu,yu,1) = floor(θu×Wp/2πf) (1.1)
Map(xu,yu,2) = floor(θv×Hp/2πf) (1.2)
Map(xu,yu,3) = ceil(θu×Wp/2πf) (1.3)
Map(xu,yu,4) = ceil(θv×Hp/2πf) (1.4)
式(1.1)-式(1.4)中,Wp和Hp分别表示工业投影仪投影图案的宽和高,f表示投影条纹的最高频率,floor()表示向下取整,ceil()表示向上取整;
步骤3.2、设置条纹调制度的阈值为dA,将所述相位图中调制度小于dA的像素点作为无效像素点后剔除,保留调制度大于dA的像素点,从而在相位图中提取出感兴趣区域;
步骤3.3、定义当前递归次数为i,并初始化i=0;
所述工业投影仪投射第i次的投影图案Pi,初始化第i次递归下的参考掩膜fRM,i和调整掩膜fAM,i,且均为相机采集图片尺寸的单位矩阵,初始化第i次递归下的投影掩膜fPM,i为工业投影仪投射图片尺寸的单位矩阵;由相机采集在第i次的投影图案Pi下的被测物体图片;
步骤3.4、计算第i次的投影图案Pi下的被测物体图片中感兴趣区域的像素点(xc,yc)的灰度值I(xc,yc),从而利用式(2.1)和式(2.2)计算像素点(xc,yc)的参考掩膜fRM,i(xc,yc),进而计算被测物体图片中感兴趣区域所有像素点的参考掩膜,并得到参考掩膜fRM,i;
fRM,i(xc,yc) = R1,i>0 and I(xc,yc)>Imax (2.1)
fRM,i(xc,yc) = R2,i>0 and I(xc,yc)<Imin (2.2)
式(2.1)和式(2.2)中,Imax和Imin分别表示图片灰度的最大阈值和最小阈值;R1和R2表示两个标记符号;
步骤3.5、利用式(3.1)至式(3.5)计算像素点(xc,yc)的调整掩膜fAM,i(xc,yc),从而计算被测物体图片中感兴趣区域所有像素点的调整掩膜,并得到调整掩膜fAM,i;
fAM,i(xc,yc) = 1,i=0 (3.1)
fAM,i(xc,yc) = fAM,i-1(xc,yc)/2,I(xc,yc)>250 and (i=1 or fRM,i-1(xc,yc)=R1)(3.2)
fAM,i(xc,yc) = fAM,i-1(xc,yc)×(1-21-i),I(xc,yc)>250 and fRM,i-1(xc,yc)=R2(3.3)
fAM,i(xc,yc) = 2,I(xc,yc)<100 and (i=1 or fRM,i-1(xc,yc)=R2) (3.4)
fAM,i(xc,yc) = fAM,i-1(xc,yc)×(1+21-i),I(xc,yc)<100 and fRM,i-1(xc,yc)=R1(3.5)
步骤3.6、利用式(4.1)和式(4.4)分别计算第i次的投影图案Pi下投影仪像素坐标[Map(xc,yc,1),Map(xc,yc,2)]的投影掩膜fPM,i[Map(xc,yc,1),Map(xc,yc,2)]、[Map(xc,yc,1),Map(xc,yc,4)]的投影掩膜fPM,i [Map(xc,yc,1),Map(xc,yc,4)]、[Map(xc,yc,3),Map(xc,yc,2)]的投影掩膜fPM,i[Map(xc,yc,3),Map(xc,yc,2)])、[Map(xc,yc,3),Map(xc,yc,4)]的投影掩膜fPM,i[Map(xc,yc,3),Map(xc,yc,4)],从而计算被测物体图片中感兴趣区域所有像素点的投影掩膜,并得到投影掩膜fPM,i;
fPM,i[Map(xc,yc,1),Map(xc,yc,2)] = fAM,i(xc,yc) (4.1)
fPM,i[Map(xc,yc,1),Map(xc,yc,4)] = fAM,i(xc,yc) (4.2)
fPM,i[Map(xc,yc,3),Map(xc,yc,2)] = fAM,i(xc,yc) (4.3)
fPM,i[Map(xc,yc,3),Map(xc,yc,4)] = fAM,i(xc,yc) (4.4)
步骤3.7、利用式(5.1)对第i次的投影图案Pi进行调整,从而得到第i+1次的投影图案Pi+1:
Pi+1 = Pi×fPM,i (5.1)
步骤3.8、所述工业投影仪投射第i+1次的投影图案Pi+1,由相机采集在第i+1次的投影图案Pi+1下的被测物体图片,将投影图案Pi+1下的被测物体图片中感兴趣区域像素点总数记为nall,将投影图案Pi+1下的被测物体图片中感兴趣区域像素点灰度值大于Imax或者小于Imin的像素点总数记为nd,计算比值Ra=nd/nall,若比值Ra小于比值阈值da,则将第i+1次的投影图案Pi+1记为调整投影图案Pres,否则,将i+1赋值给i后,返回步骤3.4顺序执行。
本发明一种电子设备,包括存储器以及处理器,其特征在于,所述存储器用于存储支持处理器执行任一所述无序抓取方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。
本发明一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行任一所述无序抓取方法的步骤。
与已有技术相比,本发明的有益效果体现在:
1、本发明根据被测物体光学反射率变化自动调整工业投影仪投射条纹亮度,通过增强强度较低区域的投影亮度来提高信噪比,减小了亮度饱和区域的投影亮度来获得高质量变形条纹图片,本发明仅需少量的递归,就能纠正投影亮度不合理的像素点,在改善高动态范围表面的三维显示效果的同时提高了其三维形貌的测量精度。
2、本发明通过普通相移法结合改进的神经网络模型,仅需小参数量和小计算量,就可以获得高精度的包裹相位,之后基于倍频法对相位展开,通过条纹投影轮廓术获得准确被测物体三维点云数据,从而缩短了视觉检测所需的时间,提高了抓取速度。
3、本发明通过多个工业相机与单个投影仪结合,组成多相机-单投影仪视觉测量系统,图像采集单元可从多个视角采集被测物体图片,将多视角图片计算得到的3D点云数据融合,可以克服单相机或者双相机被测物遮挡成像问题,避免了被测物体表面3D点云存在凹洞的情况、减小了点云数据误差。
4、本发明通过识别3D点云数据特征点结合机器人单轴旋转法构建多个视觉检测装置坐标系与机器人坐标系对应点对,计算对应点对坐标系映射关系获得手眼坐标系转换数据,可以实现高精度手眼标定,从而减小了机器人实际抓取动作与理想抓取动作偏差,提高了抓取成功率,有效避免了抓取时对工件造成的损伤。
附图说明
图1是本发明机器人眼看手无序抓取系统的结构示意图;
图2为3D视觉引导机器人无序抓取方法;
图3为深度学习获取准确包裹相位的过程;
图4为自适应调整投影图案亮度流程图;
图中标号:1相机;2工业投影仪;3支架;4机器人;5料框;6工件。
具体实施方式
本实施例中,一种多视角3D视觉引导机器人无序抓取方法的实现过程如图2所示,是应用于视觉引导机器人实现复杂场景堆放工件无序抓取,从而完成全自动装配、上料等工作。
视觉引导机器人无序抓取系统是由3D视觉检测装置、机器人和计算机构成,3D视觉检测装置是由一个工业投影仪2和多个相机1组成,首先通过棋盘格标定各个相机内参、投影仪内参和相机-投影仪系统参数,之后检测过程为:工业投影仪2根据被测物体光学反射率变化自适应调整投射条纹图案亮度后,投射多频相移条纹于被测物体表面,多个相机1从不同视角采集变形条纹,由相移法结合改进的神经网络模型获得高精度包裹相位,根据倍频法求取绝对相位后,由条纹投影轮廓术根据相位信息和标定数据获取被测物体高精度3D点云。
由计算机对被测物体3D点云数据进行预处理,去除噪声点和背景点,基于自适应阈值的欧式距离结合点云边缘信息实现点云分割,之后基于法矢计算的SHOT点云局部描述符建立场景点云和模板点云的初始对应点对获得初始位姿信息,由最近点迭代算法获得待抓取工件准确位姿信息;通过检测校正板点云数据特征点3D坐标结合机器人单轴旋转法构建视觉检测装置坐标系与机器人坐标系对应点对,由坐标系映射关系求解手眼坐标系转换数据,通过手眼标定数据将目标工件位姿信息转换至机器人坐标系,由模板工件抓取位姿调整机器人抓取动作,最后操纵机器人抓取无序状态工件。
本实施例中,一种多视角3D视觉引导机器人无序抓取方法,是应用于由视觉检测装置、机器人4以及被测物体所组成的抓取场景中,视觉检测装置是在支架3的中心处设置有工业投影仪2,并在支架3的四周布置有若干个相机1,且正对支架3下方的工件6,被测物体是在料框5中设置有工件6,各部件布局如图1所示;该无序抓取方法按如下步骤进行:
步骤1、对视觉检测装置进行标定,得到视觉检测装置的标定参数,包括:相机1内参、工业投影仪2内参和视觉检测装置的外参;再对视觉检测装置和机器人4所组成的眼看手机器人视觉系统进行标定,该眼看手机器人视觉系统标定过程为:
将校正板固定在机器人4的抓手末端,由视觉检测装置获取校正板的特征点3D坐标,利用校正板的特征点3D坐标并结合单轴旋转法获得机器人抓手工具坐标系的原点在视觉检测装置坐标系中的3D坐标PC,并从示教器中获取机器人抓手工具坐标系的原点在机器人坐标系中的3D坐标PR,从而由PC和PR组成一个对应点对,利用示教器操纵机器人4带动校正板运动,从而得到多个对应点对,对多个对应点对进行计算后得到机器人和视觉检测装置的空间位姿关系TB,C。
步骤2、以UNet网络为基础,其中,UNet网络构建方法可参见文献《U-Net:Convolutional Networks for Biomedical Image Segmentation》,使用深度可分离卷积替换UNet网络中所有的标准卷积层积,并在最后一层添加通道注意力模块,从而构建相位神经网络;
利用视觉检测装置获取被测物体的若干个变形条纹图片并构成图像数据集,并利用倍频相移法对图像数据集进行处理,得到包裹相位;
以包裹相位作为相位神经网络校验的真值,并将图像数据集中的部分图片输入相位神经网络中进行训练,从而得到训练后的相位神经网络;
步骤3、自适应改变工业投影仪2的投影图案的亮度,并保持相机1的曝光时间不变,从而根据被测物体表面光学反射率的变化,获得调整投影图案Pres,具体包括如下步骤,如图4所示:
步骤3.1、建立相机图像坐标系与投影仪像素坐标系的映射关系;
工业投影仪2投射横纵双向多频相移条纹图片于被测物体表面,并利用若干个相机1获取被测物体表面条纹图片集合,将相机图像坐标系下的任意一个像素点记为(xu,yu),由物体表面条纹图片集合并结合相移法和倍频法计算物体表面条纹图片集合的相位图,并将相位图在x轴方向相位记为θu,在y轴方向相位记为θv,从而利用式(1.1)至式(1.4)计算像素点(xu,yu)在投影仪像素坐标系下对应的四个投影仪像素坐标[Map(xu,yu,1),Map(xu,yu,2)]、[Map(xu,yu,1),Map(xu,yu,4)]、[Map(xu,yu,3),Map(xu,yu,2)]、[Map(xu,yu,3),Map(xu,yu,4)]:
Map(xu,yu,1) = floor(θu×Wp/2πf) (1.1)
Map(xu,yu,2) = floor(θv×Hp/2πf) (1.2)
Map(xu,yu,3) = ceil(θu×Wp/2πf) (1.3)
Map(xu,yu,4) = ceil(θv×Hp/2πf) (1.4)
式(1.1)-式(1.4)中,Wp和Hp分别表示工业投影仪2投影图案的宽和高,f表示投影条纹的最高频率,floor()表示向下取整,ceil()表示向上取整;
步骤3.2、设置条纹调制度的阈值为dA,将相位图中调制度小于dA的像素点作为无效像素点后剔除,保留调制度大于dA的像素点,从而在相位图中提取出感兴趣区域;
步骤3.3、定义当前递归次数为i,并初始化i=0;
工业投影仪2投射第i次的投影图案Pi,初始化第i次递归下的参考掩膜fRM,i和调整掩膜fAM,i,且均为相机1采集图片尺寸的单位矩阵,初始化第i次递归下的投影掩膜fPM,i为工业投影仪2投射图片尺寸的单位矩阵;由相机1采集在第i次的投影图案Pi下的被测物体图片;
步骤3.4、计算第i次的投影图案Pi下的被测物体图片中感兴趣区域的像素点(xc,yc)的灰度值I(xc,yc),从而利用式(2.1)和式(2.2)计算像素点(xc,yc)的参考掩膜fRM,i(xc,yc),进而计算被测物体图片中感兴趣区域所有像素点的参考掩膜,并得到参考掩膜fRM,i;
fRM,i(xc,yc) = R1,i>0 and I(xc,yc)>Imax (2.1)
fRM,i(xc,yc) = R2,i>0 and I(xc,yc)<Imin (2.2)
式(2.1)和式(2.2)中,Imax和Imin分别表示图片灰度的最大阈值和最小阈值,Imax和Imin按照实际应用场景设置;R1和R2表示两个标记符号;
步骤3.5、利用式(3.1)至式(3.5)计算像素点(xc,yc)的调整掩膜fAM,i(xc,yc),从而计算被测物体图片中感兴趣区域所有像素点的调整掩膜,并得到调整掩膜fAM,i;
fAM,i(xc,yc) = 1,i=0 (3.1)
fAM,i(xc,yc) = fAM,i-1(xc,yc)/2,I(xc,yc)>250 and (i=1 or fRM,i-1(xc,yc)=R1)(3.2)
fAM,i(xc,yc) = fAM,i-1(xc,yc)×(1-21-i),I(xc,yc)>250 and fRM,i-1(xc,yc)=R2(3.3)
fAM,i(xc,yc) = 2,I(xc,yc)<100 and (i=1 or fRM,i-1(xc,yc)=R2) (3.4)
fAM,i(xc,yc) = fAM,i-1(xc,yc)×(1+21-i),I(xc,yc)<100 and fRM,i-1(xc,yc)=R1(3.5)
步骤3.6、利用式(4.1)和式(4.4)分别计算第i次的投影图案Pi下投影仪像素坐标[Map(xc,yc,1),Map(xc,yc,2)]的投影掩膜fPM,i[Map(xc,yc,1),Map(xc,yc,2)]、[Map(xc,yc,1),Map(xc,yc,4)]的投影掩膜fPM,i [Map(xc,yc,1),Map(xc,yc,4)]、[Map(xc,yc,3),Map(xc,yc,2)]的投影掩膜fPM,i[Map(xc,yc,3),Map(xc,yc,2)])、[Map(xc,yc,3),Map(xc,yc,4)]的投影掩膜fPM,i[Map(xc,yc,3),Map(xc,yc,4)],从而计算被测物体图片中感兴趣区域所有像素点的投影掩膜,并得到投影掩膜fPM,i;
fPM,i[Map(xc,yc,1),Map(xc,yc,2)] = fAM,i(xc,yc) (4.1)
fPM,i[Map(xc,yc,1),Map(xc,yc,4)] = fAM,i(xc,yc) (4.2)
fPM,i[Map(xc,yc,3),Map(xc,yc,2)] = fAM,i(xc,yc) (4.3)
fPM,i[Map(xc,yc,3),Map(xc,yc,4)] = fAM,i(xc,yc) (4.4)
步骤3.7、利用式(5.1)对第i次的投影图案Pi进行调整,从而得到第i+1次的投影图案Pi+1:
Pi+1 = Pi×fPM,i (5.1)
步骤3.8、工业投影仪2投射第i+1次的投影图案Pi+1,由相机1采集在第i+1次的投影图案Pi+1下的被测物体图片,将投影图案Pi+1下的被测物体图片中感兴趣区域像素点总数记为nall,将投影图案Pi+1下的被测物体图片中感兴趣区域像素点灰度值大于Imax或者小于Imin的像素点总数记为nd,计算比值Ra=nd/nall,若比值Ra小于比值阈值da,则将第i+1次的投影图案Pi+1记为调整投影图案Pres,否则,将i+1赋值给i后,返回步骤3.4顺序执行,其中,da按照实际应用场景设置。
步骤4、利用投影图案Pres生成正弦条纹图片PF;工业投影仪2投射正弦条纹图片PF,并利用若干个相机1从不同视角采集在PF下被测物体的变形条纹图片后,输入训练后的相位神经网络中进行处理,得到多频包裹相位,该包裹相位的过程如图3所示;基于倍频法对多频包裹相位进行展开后得到绝对相位;
将投影仪坐标系设置为视觉检测装置坐标系,根据视觉检测装置的标定参数和绝对相位计算得到视觉检测装置坐标系下被测物体的3D点云数据,3D点云数据是由被测物体表面上各点在视觉检测装置坐标系中的坐标所组成的数据;
步骤5、解算3D点云数据获得工件6位姿;
步骤5.1、基于随机采样一致性算法的平面检测算法寻找料框5点云,去除属于料框5的3D点,之后采用体素网络滤波降采样算法减少3D点云数据点云数量,并通过半径离群值滤波器去除噪声点,从而获得预处理后的点云cloud_P;
步骤5.2、利用自适应阈值的欧式距离聚类分割算法并结合3D点云数据的点云边缘信息对预处理后的点云cloud_P进行聚类分割,获得单个目标工件的场景点云cloud_S;
步骤5.3、初步位姿信息获取;
由视觉检测装置对单个模板工件进行检测,获得模板点云cloud_T,由模板点云cloud_T计算得到模板工件在视觉检测装置坐标系中的位姿信息为Tr;
通过均匀采样算法提取模板点云cloud_T的特征点集和场景点云cloud_S的特征点集,使用SHOT特征描述符对模板点云cloud_T的特征点集和场景点云cloud_S的特征点集分别进行点云局部描述,关于SHOT特征描述符获取方法可以参见文献《SHOT: UniqueSignatures of Histograms for Surface and Texture Description》,然后在模板点云cloud_T和场景点云cloud_S的点云局部描述结果中利用kd树搜索算法搜索所有对应点对,从而求解所有对应点对并得到初步转换矩阵T1;
步骤5.4、利用初步转换矩阵T1对场景点云cloud_S进行转换,得到转换后的场景点云cloud_S’;基于最近点迭代算法对转换后的场景点云cloud_S’和模板点云cloud_T进行处理,获得准确转换矩阵T2,从而利用式(6.1)得到单个目标工件在视觉检测装置坐标系中的位姿信息TC:
TC = Tr×T2×T1 (6.1)
步骤6、利用示教器控制机器人4到达模板工件的位置并执行抓取动作,计算抓取模板工件时机器人坐标系相对于机器人抓手工具坐标系的转换数据TS,BR,从而利用式(7)得到模板工件的抓取位姿TS,O:
TS,O = TS,BR×TB,C ×Tr (7)
利用式(8)计算机器人4对单个目标工件的抓取位姿TS,BC,使得机器人4按照设定的路径到达单个目标工件的位置并执行抓取单个目标工件的动作,以完成3D视觉引导机器人无序抓取;
TS,BC = TS,O×(TB,C ×TC)-1 (8)。
本实施例中,一种电子设备,包括存储器以及处理器,该存储器用于存储支持处理器执行上述序抓取方法方法的程序,该处理器被配置为用于执行该存储器中存储的程序。
本实施例中,一种计算机可读存储介质,是在计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述序抓取方法方法的步骤。
Claims (5)
1.一种多视角3D视觉引导机器人的无序抓取方法,是应用于由视觉检测装置、机器人(4)以及被测物体所组成的抓取场景中,所述视觉检测装置是在支架(3)的中心处设置有工业投影仪(2),并在所述支架(3)的四周布置有若干个相机(1),且正对所述支架(3)下方的工件(6),所述被测物体是在料框(5)中设置有工件(6);其特征在于,所述无序抓取方法是按如下步骤进行:
步骤1、对视觉检测装置进行标定,得到视觉检测装置的标定参数,包括:相机(1)内参、工业投影仪(2)内参和视觉检测装置的外参;再对视觉检测装置和机器人(4)所组成的眼看手机器人视觉系统进行标定,获得机器人(4)和视觉检测装置的空间位姿关系TB,C;
步骤2、以UNet网络为基础,使用深度可分离卷积替换UNet网络中所有的标准卷积层积,并在最后一层添加通道注意力模块,从而构建相位神经网络;
工业投影仪(2)根据被测物体光学反射率变化自适应调整投射条纹图案亮度后,投射多频相移条纹于被测物体表面,利用视觉检测装置获取所述被测物体的若干个变形条纹图片并构成图像数据集,并利用倍频相移法对所述图像数据集进行处理,得到包裹相位;
以包裹相位作为相位神经网络校验的真值,并将所述图像数据集中的部分图片输入所述相位神经网络中进行训练,从而得到训练后的相位神经网络;
步骤3、自适应改变所述工业投影仪(2)的投影图案的亮度,并保持相机(1)的曝光时间不变,从而根据所述被测物体表面光学反射率的变化,获得调整的投影图案Pres;
步骤4、利用所述投影图案Pres生成正弦条纹图片PF;所述工业投影仪(2)投射所述正弦条纹图片PF,并利用若干个相机(1)从不同视角采集在PF下被测物体的变形条纹图片后,输入所述训练后的相位神经网络中进行处理,得到多频包裹相位;基于倍频法对所述多频包裹相位进行展开后得到绝对相位;
将投影仪坐标系设置为视觉检测装置坐标系,根据所述视觉检测装置的标定参数和所述绝对相位计算得到所述视觉检测装置坐标系下被测物体的3D点云数据,所述3D点云数据是由被测物体表面上各点在视觉检测装置坐标系中的坐标所组成的数据;
步骤5、解算所述3D点云数据获得所述工件(6)的位姿;
步骤5.1、对所述3D点云数据进行滤波和降采样,获得预处理后的点云cloud_P;
步骤5.2、利用自适应阈值的欧式距离聚类分割算法并结合3D点云数据的点云边缘信息对预处理后的点云cloud_P进行聚类分割,获得单个目标工件的场景点云cloud_S;
步骤5.3、初步位姿信息获取;
由视觉检测装置对单个模板工件进行检测,获得模板点云cloud_T,由模板点云cloud_T计算得到模板工件在视觉检测装置坐标系中的位姿信息为Tr;
通过均匀采样算法提取模板点云cloud_T的特征点集和场景点云cloud_S的特征点集,使用SHOT特征描述符对模板点云cloud_T的特征点集和场景点云cloud_S的特征点集分别进行点云局部描述,然后在模板点云cloud_T和场景点云cloud_S的点云局部描述结果中利用kd树搜索算法搜索所有对应点对,从而求解所有对应点对并得到初步转换矩阵T1;
步骤5.4、利用初步转换矩阵T1对场景点云cloud_S进行转换,得到转换后的场景点云cloud_S’;基于最近点迭代算法对转换后的场景点云cloud_S’和模板点云cloud_T进行处理,获得准确转换矩阵T2,从而利用式(6.1)得到单个目标工件在视觉检测装置坐标系中的位姿信息TC:
TC = Tr×T2×T1 (6.1)
步骤6、利用示教器控制机器人(4)到达所述模板工件的位置并执行抓取动作,计算抓取所述模板工件时机器人坐标系相对于机器人抓手工具坐标系的转换数据TS,BR,从而利用式(7)得到模板工件的抓取位姿TS,O:
TS,O = TS,BR×TB,C ×Tr (7)
利用式(8)计算机器人(4)对单个目标工件的抓取位姿TS,BC,使得所述机器人(4)按照设定的路径到达单个目标工件的位置并执行抓取单个目标工件的动作,以完成3D视觉引导机器人无序抓取;
TS,BC = TS,O×(TB,C ×TC)-1 (8)。
2.根据权利要求1所述的多视角3D视觉引导机器人的无序抓取方法,其特征在于,所述步骤1中的眼看手机器人视觉系统的标定过程为:
将校正板固定在机器人(4)的抓手末端,由视觉检测装置获取所述校正板的特征点3D坐标,利用所述校正板的特征点3D坐标并结合单轴旋转法获得机器人抓手工具坐标系的原点在视觉检测装置坐标系中的3D坐标PC,并从示教器中获取所述机器人抓手工具坐标系的原点在机器人坐标系中的3D坐标PR,从而由PC和PR组成一个对应点对,利用示教器操纵机器人(4)带动所述校正板运动,从而得到多个对应点对,对多个对应点对进行计算后得到机器人和视觉检测装置的空间位姿关系TB,C。
3.根据权利要求1所述的多视角3D视觉引导机器人的无序抓取方法,其特征在于,所述步骤3包括如下步骤:
步骤3.1、建立相机图像坐标系与投影仪像素坐标系的映射关系;
所述工业投影仪(2)投射横纵双向多频相移条纹图片于所述被测物体表面,并利用若干个相机(1)获取被测物体表面条纹图片集合,将相机图像坐标系下的任意一个像素点记为(xu,yu),由物体表面条纹图片集合并结合相移法和倍频法计算物体表面条纹图片集合的相位图,并将所述相位图在x轴方向相位记为θu,在y轴方向相位记为θv,从而利用式(1.1)至式(1.4)计算像素点(xu,yu)在投影仪像素坐标系下对应的四个投影仪像素坐标[Map(xu,yu,1),Map(xu,yu,2)]、[Map(xu,yu,1),Map(xu,yu,4)]、[Map(xu,yu,3),Map(xu,yu,2)]、[Map(xu,yu,3),Map(xu,yu,4)]:
Map(xu,yu,1) = floor(θu×Wp/2πf) (1.1)
Map(xu,yu,2) = floor(θv×Hp/2πf) (1.2)
Map(xu,yu,3) = ceil(θu×Wp/2πf) (1.3)
Map(xu,yu,4) = ceil(θv×Hp/2πf) (1.4)
式(1.1)-式(1.4)中,Wp和Hp分别表示工业投影仪(2)投影图案的宽和高,f表示投影条纹的最高频率,floor()表示向下取整,ceil()表示向上取整;
步骤3.2、设置条纹调制度的阈值为dA,将所述相位图中调制度小于dA的像素点作为无效像素点后剔除,保留调制度大于dA的像素点,从而在相位图中提取出感兴趣区域;
步骤3.3、定义当前递归次数为i,并初始化i=0;
所述工业投影仪(2)投射第i次的投影图案Pi,初始化第i次递归下的参考掩膜fRM,i和调整掩膜fAM,i,且均为相机(1)采集图片尺寸的单位矩阵,初始化第i次递归下的投影掩膜fPM,i为工业投影仪(2)投射图片尺寸的单位矩阵;由相机(1)采集在第i次的投影图案Pi下的被测物体图片;
步骤3.4、计算第i次的投影图案Pi下的被测物体图片中感兴趣区域的像素点(xc,yc)的灰度值I(xc,yc),从而利用式(2.1)和式(2.2)计算像素点(xc,yc)的参考掩膜fRM,i(xc,yc),进而计算被测物体图片中感兴趣区域所有像素点的参考掩膜,并得到参考掩膜fRM,i;
fRM,i(xc,yc) = R1,i>0 and I(xc,yc)>Imax (2.1)
fRM,i(xc,yc) = R2,i>0 and I(xc,yc)<Imin (2.2)
式(2.1)和式(2.2)中,Imax和Imin分别表示图片灰度的最大阈值和最小阈值;R1和R2表示两个标记符号;
步骤3.5、利用式(3.1)至式(3.5)计算像素点(xc,yc)的调整掩膜fAM,i(xc,yc),从而计算被测物体图片中感兴趣区域所有像素点的调整掩膜,并得到调整掩膜fAM,i;
fAM,i(xc,yc) = 1,i=0 (3.1)
fAM,i(xc,yc) = fAM,i-1(xc,yc)/2,I(xc,yc)>250 and (i=1 or fRM,i-1(xc,yc)=R1)(3.2)
fAM,i(xc,yc) = fAM,i-1(xc,yc)×(1-21-i),I(xc,yc)>250 and fRM,i-1(xc,yc)=R2(3.3)
fAM,i(xc,yc) = 2,I(xc,yc)<100 and (i=1 or fRM,i-1(xc,yc)=R2)(3.4)
fAM,i(xc,yc) = fAM,i-1(xc,yc)×(1+21-i),I(xc,yc)<100 and fRM,i-1(xc,yc)=R1(3.5)
步骤3.6、利用式(4.1)和式(4.4)分别计算第i次的投影图案Pi下投影仪像素坐标[Map(xc,yc,1),Map(xc,yc,2)]的投影掩膜fPM,i[Map(xc,yc,1),Map(xc,yc,2)]、[Map(xc,yc,1),Map(xc,yc,4)]的投影掩膜fPM,i [Map(xc,yc,1),Map(xc,yc,4)]、[Map(xc,yc,3),Map(xc,yc,2)]的投影掩膜fPM,i[Map(xc,yc,3),Map(xc,yc,2)])、[Map(xc,yc,3),Map(xc,yc,4)]的投影掩膜fPM,i[Map(xc,yc,3),Map(xc,yc,4)],从而计算被测物体图片中感兴趣区域所有像素点的投影掩膜,并得到投影掩膜fPM,i;
fPM,i[Map(xc,yc,1),Map(xc,yc,2)] = fAM,i(xc,yc) (4.1)
fPM,i[Map(xc,yc,1),Map(xc,yc,4)] = fAM,i(xc,yc) (4.2)
fPM,i[Map(xc,yc,3),Map(xc,yc,2)] = fAM,i(xc,yc) (4.3)
fPM,i[Map(xc,yc,3),Map(xc,yc,4)] = fAM,i(xc,yc) (4.4)
步骤3.7、利用式(5.1)对第i次的投影图案Pi进行调整,从而得到第i+1次的投影图案Pi+1:
Pi+1 = Pi×fPM,i (5.1)
步骤3.8、所述工业投影仪(2)投射第i+1次的投影图案Pi+1,由相机(1)采集在第i+1次的投影图案Pi+1下的被测物体图片,将投影图案Pi+1下的被测物体图片中感兴趣区域像素点总数记为nall,将投影图案Pi+1下的被测物体图片中感兴趣区域像素点灰度值大于Imax或者小于Imin的像素点总数记为nd,计算比值Ra=nd/nall,若比值Ra小于比值阈值da,则将第i+1次的投影图案Pi+1记为调整投影图案Pres,否则,将i+1赋值给i后,返回步骤3.4顺序执行。
4.一种电子设备,包括存储器以及处理器,其特征在于,所述存储器用于存储支持处理器执行权利要求1-3中任一所述无序抓取方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。
5.一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行权利要求1-3中任一所述无序抓取方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310155001.2A CN115816471B (zh) | 2023-02-23 | 2023-02-23 | 多视角3d视觉引导机器人的无序抓取方法、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310155001.2A CN115816471B (zh) | 2023-02-23 | 2023-02-23 | 多视角3d视觉引导机器人的无序抓取方法、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115816471A CN115816471A (zh) | 2023-03-21 |
CN115816471B true CN115816471B (zh) | 2023-05-26 |
Family
ID=85522161
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310155001.2A Active CN115816471B (zh) | 2023-02-23 | 2023-02-23 | 多视角3d视觉引导机器人的无序抓取方法、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115816471B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116494253B (zh) * | 2023-06-27 | 2023-09-19 | 北京迁移科技有限公司 | 目标物体抓取位姿获取方法及机器人抓取系统 |
CN116772746A (zh) * | 2023-08-17 | 2023-09-19 | 湖南视比特机器人有限公司 | 利用射灯图案检测进行平面度轮廓度测量方法及存储介质 |
CN117475170B (zh) * | 2023-12-22 | 2024-03-22 | 南京理工大学 | 基于fpp的由局部到全局结构引导的高精度点云配准方法 |
CN118003339B (zh) * | 2024-04-08 | 2024-06-07 | 广州三拓智能装备有限公司 | 一种基于人工智能的机器人分拣控制算法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110514143B (zh) * | 2019-08-09 | 2021-05-07 | 南京理工大学 | 一种基于反射镜的条纹投影系统标定方法 |
CN110672039B (zh) * | 2019-09-18 | 2021-03-26 | 南京理工大学 | 一种基于平面反射镜的物体全方位三维测量方法 |
CN110487216B (zh) * | 2019-09-20 | 2021-05-25 | 西安知象光电科技有限公司 | 一种基于卷积神经网络的条纹投影三维扫描方法 |
US20210398338A1 (en) * | 2020-06-22 | 2021-12-23 | Nvidia Corporation | Image generation using one or more neural networks |
CN111775152B (zh) * | 2020-06-29 | 2021-11-05 | 深圳大学 | 基于三维测量引导机械臂抓取散乱堆叠工件的方法及系统 |
CN112070818B (zh) * | 2020-11-10 | 2021-02-05 | 纳博特南京科技有限公司 | 基于机器视觉的机器人无序抓取方法和系统及存储介质 |
CN113063371B (zh) * | 2021-03-23 | 2021-09-21 | 广东工业大学 | 面向正弦条纹的非线性自矫正结构光三维测量方法及系统 |
CN115205360A (zh) * | 2022-08-04 | 2022-10-18 | 无锡维度机器视觉产业技术研究院有限公司 | 复合条纹投影钢管的三维外轮廓在线测量与缺陷检测方法及应用 |
CN115060198B (zh) * | 2022-08-17 | 2022-11-11 | 无锡维度机器视觉产业技术研究院有限公司 | 光亮表面工件的全方位立体视觉检测方法及应用 |
-
2023
- 2023-02-23 CN CN202310155001.2A patent/CN115816471B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115816471A (zh) | 2023-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115816471B (zh) | 多视角3d视觉引导机器人的无序抓取方法、设备及介质 | |
CN111429532B (zh) | 一种利用多平面标定板提高相机标定精确度的方法 | |
CN106553195B (zh) | 工业机器人抓取过程中的物体6自由度定位方法及系统 | |
DE102015005267B4 (de) | Informationsverarbeitungsvorrichtung, Verfahren dafür und Messvorrichtung | |
CN108898634B (zh) | 基于双目相机视差对绣花机目标针眼进行精确定位的方法 | |
US9436987B2 (en) | Geodesic distance based primitive segmentation and fitting for 3D modeling of non-rigid objects from 2D images | |
CN110555889A (zh) | 一种基于CALTag和点云信息的深度相机手眼标定方法 | |
CN108399639A (zh) | 基于深度学习的快速自动抓取与摆放方法 | |
CN108288294A (zh) | 一种3d相机群的外参标定方法 | |
CN107767456A (zh) | 一种基于rgb‑d相机的物体三维重建方法 | |
US20130127998A1 (en) | Measurement apparatus, information processing apparatus, information processing method, and storage medium | |
CN107588721A (zh) | 一种基于双目视觉的零件多尺寸的测量方法及系统 | |
CN103558850A (zh) | 一种激光视觉引导的焊接机器人全自动运动自标定方法 | |
CN112348890B (zh) | 一种空间定位方法、装置及计算机可读存储介质 | |
CN106996748A (zh) | 一种基于双目视觉的轮径测量方法 | |
CN104469170B (zh) | 双目摄像装置、图像处理方法及装置 | |
CN110926330A (zh) | 图像处理装置和图像处理方法 | |
CN113221953B (zh) | 基于实例分割和双目深度估计的目标姿态识别系统与方法 | |
CN111915485A (zh) | 一种特征点稀疏工件图像的快速拼接方法及系统 | |
CN114331995A (zh) | 一种基于改进2d-icp的多模板匹配实时定位方法 | |
CN110648362A (zh) | 一种双目立体视觉的羽毛球定位识别与姿态计算方法 | |
CN105825501B (zh) | 一种模型引导下的3d打印额面肿瘤治疗导板智能化质量检测方法 | |
CN114820817A (zh) | 基于高精度线激光3d相机的标定方法和三维重建方法 | |
CN116309879A (zh) | 一种机器人辅助的多视角三维扫描测量方法 | |
CN114170284A (zh) | 基于主动标志点投射辅助的多视图点云配准方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |