一种条形物体拆垛方法、拆垛装置及计算机可读存储介质制造方法及图纸

技术编号:28297666 阅读:20 留言:0更新日期:2021-04-30 16:23
本发明专利技术提供一种条形物体拆垛方法、拆垛装置及计算机可读存储介质,属于三维机器视觉识别技术领域。本申请实施例所述方法通过提取最高层的垛面点云,并估计出长条目标的主方向和姿态,根据估计的姿态估计出目标的初步位置,然后对条状物体进行分割,对分割后的第n条物体的初始位置分量进行纠偏,输出第n条物体的目标位置和姿态,机器人根据所述目标位置和姿态进行抓取操作。本发明专利技术对目标进行整体的预测估计,采用加权估计策略快速精准估计物体的姿态和位置,对长条物体的位置进行合理纠偏,从而能在复杂工业场景中使用,能有效提供高性能和稳定的拆垛识别解决方案。

【技术实现步骤摘要】
一种条形物体拆垛方法、拆垛装置及计算机可读存储介质
本专利技术涉及三维机器视觉识别
,尤其涉及一种条形物体拆垛方法、拆垛装置及计算机可读存储介质。
技术介绍
长条形物体定位定姿问题在拆码垛中广泛存在,如钢结构生产行业、铝制品行业、食品原料加工行业和汽车装配行业等。其特点是物体形状长条状、特征简单、定位抓取要求高。由于物体长条状,特征简单,所以容易导致识别的位置和姿态容易偏置,从而导致抓取不稳定,甚至导致抓取干涉。基于视觉定位拆垛的方法,通常采用以下方法。第一种方法为二维定位定姿态,该种方法需要单目相机和辅助外加激光测距仪,该方案的缺点是无法提供精确的深度信息,对于复杂场景定位不准确,使用示教标定极其繁琐。第二种方法为激光线扫定位定姿,该方法需要使用激光线扫仪器,对场景进行3D扫描,获取点云,根据点云对目标进行定位定姿,该方法缺点是没有2D图像信息,容易导致识别位置偏移和姿态偏置较大。第三种方法为立体相机三维定位定姿,该方法需要使用3D相机对场景进行三维建模,获取深度图和配准后的灰度/彩色图像,然后利用三维识别技术对目标进行定位定姿态。具体地,3D相机的识别技术一般来说处理分两步:模型制作阶段,具体步骤为:制作目标的3D模型,如STL/STEP;根据3D模型制作识别的模型;识别目标的位置姿态,步骤一般包括:获取深度图和对齐后的图像;根据输入的深度图和图像,利用识别模型对场景中的目标进行识别。基于模型的识别技术,通常采用了数模的特征进行建立识别模型,这类方法对于特征简单,物体长条状的问题,通常识别的位置和姿态偏差较大。导致的原因是数模提供的特征在实际环境中不能有效提取,且对于非数模的特征并不能有效的区分,例如砧板上长条木板或者网格化的轮廓,这些和长条状被抓取物体的特征及其相似,但是其表面的特征并没能很好的表达,导致两者容易误识别。因此,现有视觉定位拆垛的方法均存在对物体识别性能不高和识别不稳定等问题。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种条形物体拆垛方法、拆垛装置及计算机可读存储介质,旨在能解决长条状物体识别中的位置偏移和姿态偏置较大的问题,从而提供高性能和稳定的拆垛识别解决方案。本专利技术解决上述技术问题所采用的技术方案如下:本专利技术的第一方面提供一种条形物体拆垛方法,包括如下步骤:提取最高层的垛面点云;估计目标长条主方向和姿态;分割目标,估计目标的初步位置;对第n条物体的初始位置分量进行纠偏;输出第n条物体的目标位置和姿态;控制机器人根据所述物体的目标位置和姿态进行抓取。在一些实施例中,所述提取最高层的垛面点云步骤包括:将所有点云投影到z轴上,并统计出点云的投影分布直方图;切割出垛面最高的一层点云集合S_top。在一些实施例中,所述切割出垛面最高的一层点云集合S_top步骤包括:根据投影分布直方图z_hist,估计顶层点云对应z值的上界top_z_min和下界top_z_max;其中上界top_z_min和下界top_z_max的取值范围为10000-800000;筛选每个点云,对于z值大于top_z_min且小于top_z_max的点云,记入垛面最高的一层点云数据集S_top中;对顶层点云集合噪点进行过滤。在一些实施例中,所述估计目标的初步位置步骤包括:将点云集S_top投影到图像上,并计算最小外接矩形框BBox;在灰度图像上的感兴趣区域BBox内,估计长条物体所形成的直线集合,并根据直线集合,利用SVD估算主要像素级方向,过滤噪声方向;计算主方向的末端点坐标:E_center=[ue,ve],其中ue=us+du,ve=vs+dv;根据相机参数,将像素坐标S_center映射到3D相机坐标S_cam_center=[xsyszs]T,将像素坐标E_center映射到3D相机坐标E_cam_center=[xeyeze]T;计算目标长条主方向X_direct=[xe-xs,ye-ys,ze-zs]T;目标姿态的Y轴方向,由Z_direct叉乘X_direct得到,即Y_direct=Z_direct×X_direct;目标姿态的Z轴方向,Z_direct=[xzyzzz]T;目标姿态可记为R_rot=[X_directY_directZ_direct]。在一些实施例中,估计目标的初步位置步骤包括:点云集S_top投影到XY平面上,得到平面点集P_top,并将平面点集P_top所有点投影到Y_direct轴上,在Y_direct轴上查找左右两端梯度大于阈值YDegThr的两个端点;分割长条块,获取目标的初始位置。在一些实施例中,分割长条块,获取目标的初始位置步骤包括:假设该层包含N条长条物体,那么第n条物体的初始中心位置[cxcycz]T坐标值为:cx_n=lx+(rx-lx)*(2n+1)/(2N)cy_n=ly+(ry-ly)*(2n+1)/(2N)cz_n=lz+(rz-lz)*(2n+1)/(2N);n取值为大于1大于N的正整数。在一些实施例中,所述对第n条物体的初始位置分量进行纠偏步骤包括:计算第n条物体的外接矩形框nBox,并提取nBox内的点云,记为N_top;将N_top所有点投影到X_direct轴上,在X_direct轴上查找左右两端梯度大于阈值XDegThr的两个端点,记为nY_left=[nlxnlynlz]T,nY_right=[nrxnrynrz]T;其中阈值XDegThr取值范围为10-100;纠偏初始位置分量[cxcycz]T为:cx_n=(nrx+nlx)/2;cy_n=cy_n+(nrx+nlx)/2-cx_ncz_n=cz_n+(nrx+nlx)/2-cx_n。本专利技术的第二方面还提供一种条物体拆垛装置,所述装置执行上述所述条物体拆垛方法,所述装置包括云提取模块、方向姿态估计模块、目标位置估计模块、位置纠偏模块、位置姿态输出模块以及目标抓取模块;其中,所述点云提取模块,用于提取最高层的垛面点云;方向姿态估计模块,用于估计目标长条主方向和姿态;目标位置估计模块,用于估计目标的初步位置;位置纠偏模块,用于对第n条物体的初始位置分量进行纠偏;位置姿态输出模块,用于输出第n条物体的目标位置和姿态;以及目标抓取模块;控制机器人根据所述条形目标的位置和姿态信息进行抓取。在一些实施例中,所述点云提取模块包括点云投影单元以及切割垛面点云单元;所述点云投影单元,用于将所有点云投影到z轴上,并统计出点云的投影分布直方图;所述切割垛面点云单元,用于切割出垛面最高的一层点云集合S_top。在一些实施例中,所述方向姿态估计模块包括心点像素计本文档来自技高网
...

【技术保护点】
1.一种条形物体拆垛方法,其特征在于,包括如下步骤:/n提取最高层的垛面点云;/n估计目标长条主方向和姿态;/n分割目标,估计目标的初步位置;/n对第n条物体的初始位置分量进行纠偏;/n输出第n条物体的目标位置和姿态;/n控制机器人根据所述物体的目标位置和姿态进行抓取。/n

【技术特征摘要】
1.一种条形物体拆垛方法,其特征在于,包括如下步骤:
提取最高层的垛面点云;
估计目标长条主方向和姿态;
分割目标,估计目标的初步位置;
对第n条物体的初始位置分量进行纠偏;
输出第n条物体的目标位置和姿态;
控制机器人根据所述物体的目标位置和姿态进行抓取。


2.根据权利要求1所述的条形物体拆垛方法,其特征在于,所述提取最高层的垛面点云步骤包括:
将所有点云投影到z轴上,并统计出点云的投影分布直方图;
切割出垛面最高的一层点云集合S_top。


3.根据权利要求2所述的条形物体拆垛方法,其特征在于,所述切割出垛面最高的一层点云集合S_top步骤包括:
根据投影分布直方图z_hist,估计顶层点云对应z值的上界top_z_min和下界top_z_max;其中上界top_z_min和下界top_z_max的取值范围为10000-800000;
筛选每个点云,对于z值大于top_z_min且小于top_z_max的点云,记入垛面最高的一层点云数据集S_top中;
对顶层点云集合噪点进行过滤。


4.根据权利要求1所述的条形物体拆垛方法,其特征在于,所述估计目标的初步位置步骤包括:
将点云集S_top投影到图像上,并计算最小外接矩形框BBox;
在灰度图像上的感兴趣区域BBox内,估计长条物体所形成的直线集合,并根据直线集合,利用SVD估算主要像素级方向,过滤噪声方向;
计算主方向的末端点坐标:E_center=[ue,ve],其中ue=us+du,ve=vs+dv;
根据相机参数,将像素坐标S_center映射到3D相机坐标S_cam_center=[xsyszs]T,将像素坐标E_center映射到3D相机坐标E_cam_center=[xeyeze]T;
计算目标长条主方向X_direct=[xe-xs,ye-ys,ze-zs]T;目标姿态的Y轴方向,由Z_direct叉乘X_direct得到,即Y_direct=Z_direct×X_direct;目标姿态的Z轴方向,Z_direct=[xzyzzz]T;
目标姿态可记为R_rot=[X_directY_directZ_direct]。


5.根据权利要求1所述的条形物体拆垛方法,其特征在于,所述估计目标的初步位置步骤包括:
点云集S_top投影到XY平面上,得到平面点集P_top,并将平面点集P_top所有点投影到Y_direct轴上,在Y_direct轴上查找左右两端梯度大于阈值YDegThr的两个端点;
分割长条块,获取目标的初始位置。


6.根据权利要求5所述的条形物体拆垛方法,其特征在于,所述分割长条块,获取目标的初始位置步骤包括:
假设该层包含N条长条物体,那么第n条物体的初始中心位置[cxcycz]T坐标值为:
cx_n=lx+(rx-lx)*(2n+1)/(2N)
cy_n=ly+(ry-ly)*(2n+1)/(2N)
cz_n=lz+(rz-lz)*(2n+1)/(2N);
n取值为大于1大于N的正整数。


7.根据权利要求1所...

【专利技术属性】
技术研发人员:陈先开李攀邓亮冯良炳
申请(专利权)人:深圳辰视智能科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1