CN111091062A - 一种基于3d视觉聚类和匹配的机器人乱序目标分拣方法 - Google Patents

一种基于3d视觉聚类和匹配的机器人乱序目标分拣方法 Download PDF

Info

Publication number
CN111091062A
CN111091062A CN201911146390.2A CN201911146390A CN111091062A CN 111091062 A CN111091062 A CN 111091062A CN 201911146390 A CN201911146390 A CN 201911146390A CN 111091062 A CN111091062 A CN 111091062A
Authority
CN
China
Prior art keywords
point cloud
point
sorting
scene
matching
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.)
Granted
Application number
CN201911146390.2A
Other languages
English (en)
Other versions
CN111091062B (zh
Inventor
周波
徐云辉
甘亚辉
钱堃
房芳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Southeast University
Original Assignee
Southeast University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Southeast University filed Critical Southeast University
Priority to CN201911146390.2A priority Critical patent/CN111091062B/zh
Publication of CN111091062A publication Critical patent/CN111091062A/zh
Application granted granted Critical
Publication of CN111091062B publication Critical patent/CN111091062B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2135Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/181Segmentation; Edge detection involving edge growing; involving edge linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/752Contour matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/07Target detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法,包括:对采集的分拣场景点云滤除分拣场景点云平面,并对堆叠分拣场景进行分割点云平面,得到多个种类的分拣场景点云簇;查询三维点邻域得到各分拣场景点云簇的堆叠状态;估计分拣场景点云中各点的法线,并提取各分拣场景点云簇和目标模型的边缘;生成不同的边缘候选匹配集合,利用Super4PCS粗匹配获取初始位姿,再通过ICP精匹配进行排序识别和位姿估计。本发明通过对物体的三维感知,实现了对具有堆叠、遮挡、乱序等特点的多目标物体的识别、分类和匹配定位,有利于实现工业机器人的自主识别和抓取动作的规划,从而提高搬运、分拣作业的抓取效率和准确程度。

Description

一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法
技术领域
本发明涉及机器人乱序目标分拣识别方法,特别是涉及一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法。
背景技术
随着工业机器人在智能分拣、装配制造等领域的广泛应用,企业生产模式逐渐由传统的以人力为主导转向以机器人为主导。传统的分拣方法针对多品种小批量工件主要依靠工人操作,这种方法需要较高的雇佣成本,随持续时间和工作强度的增长,分拣准确率也会受到大幅影响,且由于劳动时限,作业效率不高。随着生产制造业向自动化、智能化和信息化的转型,机器视觉使用成本的逐步降低,搭载视觉装置的机器人分拣系统受到了重点关注。
机械臂分拣系统作为工业机器人技术和计算机视觉技术相结合的智能化设备,能够依靠高度的稳定性和先进的识别算法在复杂的生产环境进行作业。目标分拣识别的方法多基于RGB二维图像,使用Canny和Sobel算子等提取工件轮廓进行模板匹配,或者提取SIFT、SURF等特征点进行匹配、筛选、滤除等,能够获得较好的识别效果。另一方面,为了更好地适应光照条件变化、应对某些工件纹理不凸显、充分利用几何形状特征等,基于3D视觉的识别算法,逐渐成为了国内外制造企业和研究机构的关注热点。
然而,由于3D点云的有效特征描述子如FPFH、SHOT、VFH等的识别范围和准确性均有一定的限制,无法很好适应场景多变化和工件多品种、多位姿的生产环境,通用性、普适性的缺失,制约了3D视觉在实际中的广泛应用。3D点云识别主要存在以下问题:①视觉装置通常只获取单一视角的有限数据,且存在工件堆叠、环境约束、传感器性能等引起的点云残缺现象;②某些规则工件的法线一致性较高,多数以法线为基础的点云描述子效用甚微;③形状结构相似的工件特征相近,难以准确识别。
发明内容
发明目的:为了克服上述现有的技术缺陷,提供了一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法。该方法提供了针对分拣过程中多种类、多姿态工件的目标识别和位姿估计算法,具有较强的适应性,能够针对形状结构接近的工件和堆叠无序的摆放场景进行识别估计,满足作业任务的需要,提高机械臂分拣系统的准确性和稳定性。
技术方案:为实现上述发明目的,本发明提供以下技术方案:
一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法,包括以下步骤:
(1)对采集的分拣场景点云通过RANSAC算法滤除分拣场景点云平面,并采用超体聚类和LCCP算法对堆叠分拣场景进行分割点云平面,得到多个种类的分拣场景点云簇;
(2)通过PCA计算主轴向量,将分拣场景点云沿主轴方向投影到三维平面,并查询三维点邻域得到各分拣场景点云簇的堆叠状态;
(3)通过拟合一个最小二乘意义下的微切平面,估计分拣场景点云中各点的法线,并利用角度判据提取各分拣场景点云簇和目标模型的边缘;
(4)结合各分拣场景点云簇的堆叠状态和边缘点云生成不同的边缘候选匹配集合,利用Super4PCS粗匹配获取初始位姿,再通过ICP精匹配进行排序识别和位姿估计。
进一步的,步骤(1)中对于采集的分拣场景点云,首先采用基于随机采样一致性RANSAC算法对分拣场景背景进行删除,滤除分拣场景点云平面,具体为:
(101)随机从分拣场景点云中抽取子点云样本;
(102)用最小方差计算子点云样本对应的平面方程ax+by+cz=d的平面模型参数a,b,c,d,其中,x,y,z表示三维点空间坐标变量;
(103)用该模型参数验证剩余点云,计算剩余点云中某一点pi至该平面的距离di=|axi+byi+czi-d|,其中,xi,yi,zi表示点pi的三维坐标分量;
(104)选取误差范围t,若di≤t则点pi被认为在给定的误差范围内;
(105)如果较多的点在给定误差范围t之内,则该随机选取的样本最优,否则回到步骤(101),循环进行;
(106)最后根据平面模型参数,滤除场景点云中在误差范围之内的点云子集。
进一步的,步骤(1)中超体聚类具体为:
(111)对输入的分拣场景点云布置规律的区域生长晶核,晶核在空间中均匀分布;
(112)指定晶核半径Rseed和晶粒距离,以及最小晶粒的结核范围,控制结晶过程;
(113)然后使所有晶核在点云体素的八叉树中进行搜索,根据体素差异同时吸纳相似晶粒,区域生长从而形成数量较多的超体素块;体素差异公式为:
Figure BDA0002282324150000031
其中,Dc、Dn、Ds分别表示点云体素的颜色差异、法线差异、距离差异,wc,wn,ws分别表示对应的权重,体素差异小于D的吸纳入晶核。
进一步的,步骤(1)中采用LCCP算法对堆叠分拣场景进行分割点云平面,具体为:
(121)通过CC和SC判据计算超体聚类得到的超体素块之间的凹凸关系;CC判据利用相邻两面中心连线向量与法向量夹角、相邻两面相交关系进行判断,公式为:
Figure BDA0002282324150000032
Figure BDA0002282324150000033
Figure BDA0002282324150000034
其中,
Figure BDA0002282324150000035
为相邻超体素块质心的法线向量,
Figure BDA0002282324150000036
为相邻超体素块质心位置向量,
Figure BDA0002282324150000037
表示两个相邻超体素块的连接关系,
Figure BDA0002282324150000038
可表示某超体素块的相关属性,其中
Figure BDA0002282324150000039
Ni分别为超体素块i的法线向量、与相邻超体素块的边集合,
Figure BDA00022823241500000310
表示基础凸性判据所得的凸性连接判断,
Figure BDA00022823241500000311
表示通过基础凸性判据得到凸性连接判断的推论,β表示相邻超体素块的法线夹角,βThresh为判断相邻超体素块是否为凸性连接的阈值;
SC判据作为补充,判断相邻两面是否真正连通和单独面是否存在,解决CC判据无法区分的情况;将
Figure BDA00022823241500000312
作为相邻两平面法向量
Figure BDA00022823241500000313
的叉乘,公式为:
Figure BDA00022823241500000314
Figure BDA00022823241500000315
Figure BDA00022823241500000316
其中,
Figure BDA0002282324150000041
表示两个相邻超体素块i和j的质心连线向量和法线叉乘向量之间的最小角度,β表示相邻超体素块的法线夹角,
Figure BDA00022823241500000410
表示判断相邻超体素块是否为凸性连接的角度阈值,
Figure BDA0002282324150000042
βoff表示实验得出的角度常值,分别取60°、25°,a表示常系数,取为0.25。
Figure BDA0002282324150000043
表示法线向量
Figure BDA0002282324150000044
Figure BDA0002282324150000045
的夹角,
Figure BDA0002282324150000046
表示补充判据(SC)所得的超体素块间凸性连接判断;
最终两相邻面的凹凸性判据为:
Figure BDA0002282324150000047
其中,
Figure BDA0002282324150000048
表示组合CCb判据和CCe判据得到的扩展凸性判据(CC),对相邻超体素块进行凸性连接判断;
(122)在标记完各个超体素块的凹凸关系之后,采用区域增长算法将超体素块聚类成较大的不同物体的点云簇Pm,0<m≤c,m∈N,完成点云场景的分割。
进一步的,步骤(2)中首先对分拣场景点云中所有三维坐标点进行中心化处理,利用PCA算法计算投影主轴方向,将分拣场景点云投影到三维平面中;具体为:
(201)对于分拣场景点云P={pi,0≤i≤n,pi∈R3},对所有三维坐标点pi进行中心化处理,公式为
Figure BDA0002282324150000049
(202)计算中心化处理后的分拣场景点云P'的协方差矩阵XXT
(203)对协方差矩阵XXT做特征值分解;
(204)取最小特征值对应的特征向量wmin={apca,bpca,cpca}作为投影主轴方向;
(205)任意取参数dpca,构造平面apcax+bpcay+cpcaz+dpca=0作为投影面,得到投影后的平面点云集Q={qi,0≤i≤n,qi∈R3}。
进一步的,步骤(2)中查询三维点邻域得到各分拣场景点云簇的堆叠状态的方法为:
投影后的点云以最大分散程度分布在三维平面中,然后遍历平面点云集,对于其中的每一点构造球邻域,当邻域中存在与球心点所属点云簇不同的点时,则判断这两个点云簇堆叠,最后记录所有点云簇的堆叠状态;具体步骤如下:
(211)遍历投影后的平面点云集Q,对于其中每一点qi,构造球邻域Ui(qi,δ)={x|qi-δ<x<qi+δ};
(212)然后在邻域中进行搜索,当
Figure BDA0002282324150000051
使得
Figure BDA0002282324150000052
Figure BDA0002282324150000053
则判定
Figure BDA0002282324150000054
Figure BDA0002282324150000055
存在堆叠,其中,
Figure BDA0002282324150000056
为平面点云集Q中不同簇的点云,0<m1≤c,0<m2≤c,m1∈N,m2∈N,m1≠m2
进一步的,步骤(3)中通过拟合一个最小二乘意义下的微切平面,估计分拣场景点云中各点的法线,具体为:
(301)在点云簇Pm,0<m≤c,m∈N,中某点pi处,通过它的k个近邻点pij(j=1,2,…,k)拟合一个最小二乘意义下的微切平面T(pi),微切平面T(pi)的平面方程表达式为:
aix+biy+ciz+di=0;
其中,x,y,z表示三维空间坐标变量,ai,bi,ci,di为微切平面T(pi)的参数;
则看出微切平面T(pi)的拟合属于线性最小二乘问题,对应的目标函数为:
Figure BDA0002282324150000057
(302)通过目标函数公式求得微切平面T(pi)参数ai,bi,ci,di,在求解平面法向量时需要对矢量进行单位化处理,即为:
Figure BDA0002282324150000058
所以,pi点处的单位法矢量为:
Figure BDA0002282324150000059
进一步的,步骤(3)中利用角度判据提取各分拣场景点云簇和待分拣目标模型的边缘,具体为:
(311)对于分拣场景点云簇的每一场景点pi估计单位法线向量
Figure BDA00022823241500000510
(312)选取正交于法线的任意单位向量
Figure BDA00022823241500000511
叉乘运算得
Figure BDA00022823241500000512
从而在场景点pi处建立坐标系
Figure BDA0002282324150000061
(313)将pi与近邻域的其它点pj(j=1,2,…k,j≠i)分别做差,得方向向量:
Figure BDA0002282324150000062
然后计算方向向量在微切平面坐标系
Figure BDA0002282324150000063
下的角度:
Figure BDA0002282324150000064
(314)对于集合A={angleij}(j=1,2,…,k,j≠i),按照大小顺序排序,再按照如下方式取最大值:
Figure BDA0002282324150000065
如果difi>anglethreshold,则认为场景点pi∈边缘点集B,遍历分拣场景点云中的所有场景点pi(i=1,2,…n)进行判断,即获取点云边缘B。
进一步的,步骤(4)中结合各分拣场景点云簇的堆叠状态和边缘点云生成不同的边缘候选匹配集合,具体为:
(401)获取分拣场景中各点云的堆叠状态;
(402)如果分拣场景点云不存在堆叠,则定义候选匹配集合L={B1,B2,…,Bc},其中Bm(m=1,2,…,c)为场景分割后的各点云簇边缘;
(403)如果某点云Pi(1≤i≤c)存在堆叠,则将其对应的边缘Bi均匀采样固定的点数,设这个值为num,将Bi中采样的每一个点分别作为球心,然后构造球邻域查询最近邻K个点,公式为:
K=frac·S(0.5<frac<1);
其中,frac为选取的固定比例,S为Bi的总三维点数;
将搜索到的K个近邻点形成点集Bij(1≤j≤num),添加到候选匹配集合中,候选匹配集合为L={B1,B2,…,Bij,…Bc}。
进一步的,步骤(4)中利用Super4PCS粗匹配获取初始配准位姿,具体为:
(411)选取四点集对:在候选匹配集合L中依次选取边缘Bi,作为源点云,选取模型库中待分拣目标模型的边缘Bmodel,作为目标点云,首先从Bi中选择三个不同的点,然后以共面不共线原则确定第四个点,组成基e={pa,pb,pc,pd},其中线段pa pb和pc pd相交于o点,夹角为θ;可得相应比例r1,r2,点距d1,d2如下:
Figure BDA0002282324150000071
Figure BDA0002282324150000072
d1=||pa-pb||;
d2=||pc-pd||;
在Bmodel中确定集合S1,S2
S1={(qi,qj)|qi,qj∈Bmodel,||qi-qj||∈[d1-ε,d1+ε]};
S2={(qi,qj)|qi,qj∈Bmodel,||qi-qj||∈[d2-ε,d2+ε]};
S1,S2中的点对分别满足点距近似为d1,d2的条件,基于仿射不变性的原理,对于S1中的每一对点(qi,qj),计算由比例r1确定的交点o1,即o1ij=qi+r1(qj-qi),同理,对于S2中的每一对点(qi,qj),计算由比例r2确定的交点o2,即o2ij=qi+r2(qj-qi);在S1与S2中搜索满足e1ij与e2ij近似相等的点对,同时满足连线夹角也为θ,这样由(d1,d2,r1,r2,θ)从Bmodel中提取出唯一的与基对应的四点集{qa,qb,qc,qd};
(412)计算位姿变换矩阵:由对应点集{pa,pb,pc,pd}与{qa,qb,qc,qd}计算刚体变换矩阵T,使用T对源点云Bi进行变换,统计变换后的点云与目标点云Bmodel中最近点距离小于某个阈值δ的点的数目用以表征T的质量,迭代进行上述步骤,直至找到最优的T使得两点云足够接近,此时的变换矩阵记为T0i,作为源点云Bi的初始配准位姿,T0i为:
Figure BDA0002282324150000073
其中,R0i为旋转矩阵,t0i为平移向量;
再通过ICP精匹配进行排序识别和位姿估计,具体为:
(413)将Bi按照初始匹配位姿矩阵T0i变换,公式如下:
Bi'=R0iBi+t0i
(414)对于Bi’中的每一个点pi’,寻找Bmodel中最近邻点qi,定义误差函数E(R,t)为:
Figure BDA0002282324150000081
pi'=Rpi+t;
(415)如果误差函数E(R,t)小于给定阈值,或者迭代次数达到设定值,停止迭代计算;否则更新旋转矩阵R和平移向量t继续进行刚体变换,重新计算Bi’和E(R,t),并存储使误差E较小的变换矩阵R、t,直到目标函数Emin满足误差要求;
(416)对于候选匹配集合L中的每一边缘Bi,在足够的迭代次数之后,得到最终的ICP误差集合为{Emini}(i=1,2,…,s),其中的最小值为:
Emin'=min{Emin1,Emin2,…,Emins};
识别的结果定义为Emin'对应边缘Bi的类别,识别目标的位姿依据使误差函数为Emin'的变换矩阵估计。
有益效果:与现有技术相比,本发明方法可有效解决机械臂目标分拣作业中的工件目标识别和位姿估计问题,通过对物体的三维感知实现了对具有堆叠、遮挡、乱序等特点的多目标物体的识别、分类和匹配定位,有利于实现工业机器人的自主识别和抓取动作的规划,从而提高搬运、分拣作业的抓取效率和准确程度。
附图说明
图1为本发明方法总体流程图;
图2为场景点云分割聚类流程图;
图3为超体聚类的模型示意图;
图4为点云簇堆叠状态判断流程图;
图5为边缘点集的提取流程图;
图6为边缘判断的计算示意图;
图7为匹配识别定位流程图。
具体实施方式
下面结合附图和具体实施方式对本发明的技术方案做进一步说明。
图1为本专利所提出的基于3D视觉聚类和匹配的机器人乱序目标分拣方法的总体流程图。算法的具体步骤如下:
1、对采集的分拣场景点云通过随机采样一致性RANSAC算法滤除分拣场景点云平面,并采用超体聚类和局部凸连接(Locally Convex Connected Patches,LCCP)算法对堆叠分拣场景进行分割点云平面,得到多个种类的分拣场景点云簇;
如图2所示,本步骤分为三个层次执行:对于采集的3D分拣场景点云,首先采用基于随机采样一致性RANSAC算法滤除平面;然后对分拣场景点云中布置规律的区域生长晶核,根据定义的体素差异公式在点云体素的八叉树中搜索,进行超体聚类;接下来结合扩展凸性判据(Extended Convexity Criterion,CC)和补充判据(Sanity Criterion,SC)判断区域的凹凸性,最后用区域增长算法将超体素块聚类成较大的点云簇,并通过局部凸连接算法完成场景点云的分割。
(1)基于随机采样一致性RANSAC算法滤除平面
本发明采用RANSAC算法对背景进行删除,该算法的具体步骤如下:
a)随机从分拣场景点云中抽取子点云样本;
b)用最小方差计算子点云样本对应的平面方程ax+by+cz=d的平面模型参数a,b,c,d,其中,x,y,z表示三维点空间坐标变量;
c)用该模型参数验证剩余点云,计算剩余点云中某一点pi至该平面的距离di=|axi+byi+czi-d|,其中,xi,yi,zi表示点pi的三维坐标分量;
d)选取误差范围t,若di≤t则点pi被认为在给定的误差范围内;
e)如果较多的点在给定误差范围t之内,则该随机选取的样本最优,保留平面模型参数,否则回到a)步骤,循环进行;
f)最后根据平面模型参数,滤除场景点云中在误差范围之内的点云子集。
(2)场景点云的超体聚类
超体聚类是一种点云预处理的方法,该算法的具体步骤如下:
a)对输入的分拣场景点云布置规律的区域生长晶核,其在空间中均匀分布;
b)如图3所示,指定晶核半径Rseed和晶粒距离,以及最小晶粒的结核范围,控制结晶过程;
c)然后使所有晶核在点云体素的八叉树中进行搜索,根据体素差异同时吸纳相似粒子,区域生长从而形成数量较多的超体素块。体素差异公式为:
Figure BDA0002282324150000101
其中,Dc、Dn、Ds分别表示点云体素的颜色差异、法线差异、距离差异,wc,wn,ws表示对应的权重,体素差异小于D的可吸纳入晶核。
(3)局部凸连接聚类
在获取超体素块的基础上,为了得到种类不同的子点云簇,需要利用局部区域的凹凸性关系进行聚类。具体步骤如下:
a)通过扩展凸性判据(CC)和补充判据(SC)计算超体素块之间的凹凸关系。扩展凸性判据(CC)利用相邻两面中心连线向量与法向量夹角、相邻两面相交关系进行判断,公式为:
Figure BDA0002282324150000102
Figure BDA0002282324150000103
Figure BDA0002282324150000104
其中,
Figure BDA0002282324150000105
为相邻超体素块质心的法线向量,
Figure BDA0002282324150000106
为相邻超体素块质心位置向量,
Figure BDA0002282324150000107
表示两个相邻超体素块的连接关系,
Figure BDA0002282324150000108
可表示某超体素块的相关属性,其中
Figure BDA0002282324150000109
Ni分别为超体素块i的法线向量、与相邻超体素块的边集合,
Figure BDA00022823241500001010
表示基础凸性判据所得的凸性连接判断,
Figure BDA00022823241500001011
表示通过基础凸性判据得到凸性连接判断的推论,β表示相邻超体素块的法线夹角,βThresh为判断相邻超体素块是否为凸性连接的阈值。
SC判据作为补充,判断相邻两面是否真正连通和单独面是否存在,解决CC判据无法区分的情况。将
Figure BDA00022823241500001012
作为相邻两平面法向量
Figure BDA00022823241500001013
的叉乘,公式为:
Figure BDA00022823241500001014
Figure BDA00022823241500001015
Figure BDA0002282324150000111
其中,
Figure BDA0002282324150000112
表示两个相邻超体素块i和j的质心连线向量和法线叉乘向量之间的最小角度,β表示相邻超体素块的法线夹角,
Figure BDA00022823241500001110
表示判断相邻超体素块是否为凸性连接的角度阈值,
Figure BDA0002282324150000113
βoff表示实验得出的角度常值,分别取60°、25°,a表示常系数,取为0.25。
Figure BDA0002282324150000114
表示法线向量
Figure BDA0002282324150000115
Figure BDA0002282324150000116
的夹角,
Figure BDA0002282324150000117
表示补充判据(SC)所得的超体素块间凸性连接判断。
最终两相邻面的凹凸性判据为:
Figure BDA0002282324150000118
其中,
Figure BDA0002282324150000119
表示组合CCb判据和CCe判据得到的扩展凸性判据(CC),对相邻超体素块进行凸性连接判断。
b)在标记完各个超体素块的凹凸关系之后,采用区域增长算法将超体素块聚类成较大的物体点云簇Pm(0<m≤c,m∈N),完成点云场景的分割。
2、通过PCA主成分分析计算主轴向量,将分拣场景点云沿主轴方向投影到三维平面,并查询三维点邻域得到各分拣场景点云簇的堆叠状态
在对分拣场景点云分割得到不同种类点云簇后,由于堆叠的点云会互相遮挡,引起点云的缺失,进而影响目标识别的准确性,为了适应分拣中多变的工件摆放位姿,需要对堆叠状态判断,进行针对性处理。如图4所示,首先对场景点云中所有三维坐标点进行中心化处理,利用主成分分析算法计算投影主轴方向,将场景点云投影到三维平面中。接下来遍历平面点云集,对于其中的每一点构造较小的球邻域,当邻域中存在与球心点所属点云簇不同的点时,可判断这两个点云簇堆叠,最后记录所有簇的堆叠状态。具体步骤如下:
(1)点云PCA投影
首先对分拣场景点云中所有三维坐标点进行中心化处理,利用PCA算法计算投影主轴方向,将场景点云投影到三维平面中。具体步骤如下:
a)对于分拣场景点云P={pi,0≤i≤n,pi∈R3},对所有三维坐标点pi进行中心化处理,公式为
Figure BDA0002282324150000121
b)计算中心化处理后的分拣场景点云P'的协方差矩阵XXT
c)对协方差矩阵XXT做特征值分解;
d)取最小特征值对应的特征向量wmin={apca,bpca,cpca}作为投影主轴方向;
e)任意取参数dpca,构造平面apcax+bpcay+cpcaz+dpca=0作为投影面,得到投影后的平面点云集Q={qi,0≤i≤n,qi∈R3}。
(2)判断分拣场景各点云的堆叠状态
投影后的点云以最大分散程度分布在三维平面中,接下来遍历平面点云集,对于其中的每一点构造较小的球邻域,当邻域中存在与球心点所属点云簇不同的点时,可判断这两个点云簇堆叠,最后记录所有簇的堆叠状态。具体步骤如下:
a)遍历投影后的平面点云集Q,对于其中每一点qi,构造球邻域Ui(qi,δ)={x|qi-δ<x<qi+δ};
b)然后在邻域中进行搜索,当
Figure BDA0002282324150000122
使得
Figure BDA0002282324150000123
Figure BDA0002282324150000124
则判定
Figure BDA0002282324150000125
Figure BDA0002282324150000126
存在堆叠。其中,
Figure BDA0002282324150000127
为平面点云集Q中不同簇的点云,0<m1≤c,0<m2≤c,m1∈N,m2∈N,m1≠m2
3、通过拟合一个最小二乘意义下的微切平面,估计分拣场景点云中各点的法线,并利用角度判据提取各分拣场景点云簇和待分拣目标模型的边缘;
使用全部点云进行识别会存在误匹配的情况,而且过多的三维点数目会降低识别效率、影响实时性,需要先提取出点云簇的边缘。首先对于点云簇中的每一点,进行法线估计。接下来选取正交于每点法线的单位向量,并进行叉乘运算,建立局部点的坐标系,随后利用角度判据判断此点是否属于边缘点集,最后对点云簇中的所有点按照相同方式进行判断,从而提取边缘。该算法的具体步骤如下:
(1)法线估计
对于离散点云表面的法线估计,需要拟合对应点的切平面方程,利用区域总体数据来估计某点的法线特征,具体步骤如下:
a)在点云簇Pm(0<m≤c,m∈N)中某点pi处,通过它的k个近邻点pij(j=1,2,…,k)拟合一个最小二乘意义下的微切平面T(pi),微切平面T(pi)的平面方程表达式为:
aix+biy+ciz+di=0 (9);
其中,x,y,z表示三维空间坐标变量,ai,bi,ci,di为微切平面T(pi)的参数。
可以看出微切平面T(pi)的拟合属于线性最小二乘问题,对应的目标函数为:
Figure BDA0002282324150000131
b)通过式(10)求得微切平面T(pi)参数ai,bi,ci,di,在求解平面法向量时需要对矢量进行单位化处理,即为:
Figure BDA0002282324150000132
所以,pi点处的单位法矢量为:
Figure BDA0002282324150000133
(2)边缘提取
如图5所示,点云边缘的提取可以转化为判断各点云簇Pm(0<m≤c,m∈N)中所有三维点pi是否属于边缘点集Bm,判别的具体步骤如下:
a)对于分拣场景点云簇的每一点pi估计单位法线向量
Figure BDA0002282324150000134
b)选取正交于法线的任意单位向量
Figure BDA0002282324150000135
叉乘运算得
Figure BDA0002282324150000136
从而在点pi处建立坐标系
Figure BDA0002282324150000137
如图6所示;
c)将pi与近邻域的其它点pj(j=1,2,…k,j≠i)分别做差,得方向向量:
Figure BDA0002282324150000138
然后计算方向向量在微切平面坐标系
Figure BDA0002282324150000139
下的角度:
Figure BDA00022823241500001310
d)对于集合A={angleij}(j=1,2,…,k,j≠i),按照大小顺序排序,再按照如下方式取最大值:
Figure BDA0002282324150000141
如果difi>anglethreshold,则认为点pi∈边缘点集B,遍历点云中的所有点pi(i=1,2,…n)进行判断,即可获取点云边缘B。
4、结合各分拣场景点云簇的堆叠状态和边缘点云生成不同的边缘候选匹配集合,利用快速四点一致性配准算法(Super 4-Points Congruent Sets,Super4PCS)粗匹配获取目标边缘点云的初始配准位姿,再通过迭代最近点(Iterative Closest Point,ICP)精匹配进行排序识别和位姿估计。
对于场景中的所有点云簇,首先根据堆叠状态生成不同的候选匹配集合,接下来在候选匹配集合中依次选取边缘作为源点云,提取模型库中待分拣目标模型边缘作为目标点云,使用快速四点一致性配准算法(Super4PCS)进行粗匹配,将得到的变换矩阵作为初始配准位姿,遍历候选匹配集合,依次和目标模型边缘进行迭代最近点(ICP)精匹配,并基于平均最近邻距离度量进行最优误差排序,获取识别结果和位姿估计矩阵。算法的流程图如图7所示,具体步骤如下:
(1)生成候选匹配集合
对于点云簇之间的堆叠与无堆叠关系,需要针对性生成候选匹配集合,以保证识别算法的普适性和稳定性,具体步骤如下:
a)获取分拣场景中各点云的堆叠状态;
b)如果分拣场景点云不存在堆叠,则定义候选匹配集合L={B1,B2,…,Bc},其中Bm(m=1,2,…,c)为场景分割后的各点云簇边缘;
c)如果某点云Pi(1≤i≤c)存在堆叠,则将其对应的边缘Bi均匀采样固定的点数,设这个值为num,将Bi中采样的每一个点分别作为球心,然后构造球邻域查询最近邻K个点,公式为:
K=frac·S(0.5<frac<1) (15);
其中,frac为选取的固定比例,S为Bi的总三维点数。
将搜索到的K个近邻点形成点集Bij(1≤j≤num),添加到候选匹配集合中。候选匹配集合为L={B1,B2,…,Bij,…Bc}。
(2)Super4PCS粗匹配
单独的ICP匹配算法具有较高的精确性,但存在一定的缺陷:①匹配耗时较长;②容易陷入局优。所以需要使用基于形状特征的Super4PCS匹配算法获取初始位姿矩阵,其原理为利用仿射不变性和共面不共线四点集的刚体变换进行匹配,获取质量表征最高的变换矩阵。具体步骤如下:
a)选取四点集对:在候选匹配集合L中依次选取边缘Bi,作为源点云,选取模型库中待分拣目标模型的边缘Bmodel,作为目标点云。首先从Bi中选择三个不同的点,然后以共面不共线原则确定第四个点,组成基e={pa,pb,pc,pd},其中线段pa pb和pc pd相交于o点,夹角为θ。可得相应比例r1,r2,点距d1,d2如下:
Figure BDA0002282324150000151
Figure BDA0002282324150000152
d1=||pa-pb|| (18);
d2=||pc-pd|| (19);
在Bmodel中确定集合S1,S2
S1={(qi,qj)|qi,qj∈Bmodel,||qi-qj||∈[d1-ε,d1+ε]} (20);
S2={(qi,qj)|qi,qj∈Bmodel,||qi-qj||∈[d2-ε,d2+ε]} (21);
S1,S2中的点对分别满足点距近似为d1,d2的条件,基于仿射不变性的原理,对于S1中的每一对点(qi,qj),计算由比例r1确定的交点o1,即o1ij=qi+r1(qj-qi),同理,对于S2中的每一对点(qi,qj),计算由比例r2确定的交点o2,即o2ij=qi+r2(qj-qi)。在S1与S2中搜索满足e1ij与e2ij近似相等的点对,同时满足连线夹角也为θ,这样由(d1,d2,r1,r2,θ)可以从Bmodel中提取出唯一的与基对应的四点集{qa,qb,qc,qd}。
b)计算位姿变换矩阵:由对应点集{pa,pb,pc,pd}与{qa,qb,qc,qd}计算刚体变换矩阵T,使用T对源点云Bi进行变换,统计变换后的点云与目标点云Bmodel中最近点距离小于某个阈值δ的点的数目用以表征T的质量,迭代进行上述步骤,直至找到最优的T使得两点云足够接近,此时的变换矩阵记为T0i,作为源点云Bi的初始配准位姿,T0i为:
Figure BDA0002282324150000161
其中,R0i为旋转矩阵,t0i为平移向量。
(3)ICP精匹配
通过迭代最近点(ICP)算法的平均最近邻最优误差排序,可以对目标点云进行识别;通过模型点云边缘和目标点云簇边缘的刚体变换,可以估计出位姿矩阵。同时,ICP较高的匹配精度保证了算法的可用性。具体步骤如下:
a)在候选匹配集合L中依次选取边缘Bi,作为源点云,选取模型库中待分拣模型的边缘Bmodel,作为目标点云,并以Super4PCS粗匹配得到的T0i作为源点云Bi的初始配准位姿;
b)将Bi按照初始矩阵T0i变换,公式如下:
Bi'=R0iBi+t0i (23);
c)对于Bi’中的每一个点pi’,寻找Bmodel中最近邻点qi,定义误差函数E(R,t)为:
Figure BDA0002282324150000162
pi'=Rpi+t (25);
d)如果误差函数E(R,t)小于给定阈值,或者迭代次数达到设定值,停止迭代计算;否则更新旋转矩阵R和平移向量t继续进行刚体变换,重新计算Bi’和E(R,t),并存储使误差E较小的变换矩阵R、t,直到目标函数Emin满足误差要求。
e)对于候选匹配集合L中的每一边缘Bi,在足够的迭代次数之后,得到最终的ICP误差集合为{Emini}(i=1,2,…,s),其中的最小值为:
Emin'=min{Emin1,Emin2,…,Emins} (26);
识别的结果定义为Emin'对应边缘Bi的类别,识别目标的位姿可依据使误差函数为Emin'的变换矩阵估计。
应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。

Claims (10)

1.一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法,其特征在于,包括以下步骤:
(1)对采集的分拣场景点云通过RANSAC算法滤除分拣场景点云平面,并采用超体聚类和LCCP算法对堆叠分拣场景进行分割点云平面,得到多个种类的分拣场景点云簇;
(2)通过PCA计算主轴向量,将分拣场景点云沿主轴方向投影到三维平面,并查询三维点邻域得到各分拣场景点云簇的堆叠状态;
(3)通过拟合一个最小二乘意义下的微切平面,估计分拣场景点云中各点的法线,并利用角度判据提取各分拣场景点云簇和目标模型的边缘;
(4)结合各分拣场景点云簇的堆叠状态和边缘点云生成不同的边缘候选匹配集合,利用Super4PCS粗匹配获取初始位姿,再通过ICP精匹配进行排序识别和位姿估计。
2.根据权利要求1所述的一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法,其特征在于,步骤(1)中对于采集的分拣场景点云,首先采用基于随机采样一致性RANSAC算法对分拣场景背景进行删除,滤除分拣场景点云平面,具体为:
(101)随机从分拣场景点云中抽取子点云样本;
(102)用最小方差计算子点云样本对应的平面方程ax+by+cz=d的平面模型参数a,b,c,d,其中,x,y,z表示三维点空间坐标变量;
(103)用该模型参数验证剩余点云,计算剩余点云中某一点pi至该平面的距离di=|axi+byi+czi-d|,其中,xi,yi,zi表示点pi的三维坐标分量;
(104)选取误差范围t,若di≤t则点pi被认为在给定的误差范围内;
(105)如果较多的点在给定误差范围t之内,则该随机选取的样本最优,否则回到步骤(101),循环进行;
(106)最后根据平面模型参数,滤除场景点云中在误差范围之内的点云子集。
3.根据权利要求1所述的一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法,其特征在于,步骤(1)中超体聚类具体为:
(111)对输入的分拣场景点云布置规律的区域生长晶核,晶核在空间中均匀分布;
(112)指定晶核半径Rseed和晶粒距离,以及最小晶粒的结核范围,控制结晶过程;
(113)然后使所有晶核在点云体素的八叉树中进行搜索,根据体素差异同时吸纳相似晶粒,区域生长从而形成数量较多的超体素块;体素差异公式为:
Figure FDA0002282324140000021
其中,Dc、Dn、Ds分别表示点云体素的颜色差异、法线差异、距离差异,wc,wn,ws分别表示对应的权重,体素差异小于D的吸纳入晶核。
4.根据权利要求1所述的一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法,其特征在于,步骤(1)中采用LCCP算法对堆叠分拣场景进行分割点云平面,具体为:
(121)通过CC和SC判据计算超体聚类得到的超体素块之间的凹凸关系;CC判据利用相邻两面中心连线向量与法向量夹角、相邻两面相交关系进行判断,公式为:
Figure FDA0002282324140000022
Figure FDA0002282324140000023
Figure FDA0002282324140000024
其中,
Figure FDA0002282324140000025
为相邻超体素块质心的法线向量,
Figure FDA0002282324140000026
为相邻超体素块质心位置向量,
Figure FDA0002282324140000027
表示两个相邻超体素块的连接关系,
Figure FDA0002282324140000028
可表示某超体素块的相关属性,其中
Figure FDA0002282324140000029
Ni分别为超体素块i的法线向量与相邻超体素块的边集合,
Figure FDA00022823241400000210
表示基础凸性判据所得的凸性连接判断,
Figure FDA00022823241400000211
表示通过基础凸性判据得到凸性连接判断的推论,β表示相邻超体素块的法线夹角,βThresh为判断相邻超体素块是否为凸性连接的阈值;
SC判据作为补充,判断相邻两面是否真正连通和单独面是否存在,解决CC判据无法区分的情况;将
Figure FDA00022823241400000212
作为相邻两平面法向量
Figure FDA00022823241400000213
的叉乘,公式为:
Figure FDA00022823241400000214
Figure FDA00022823241400000215
Figure FDA00022823241400000216
其中,
Figure FDA0002282324140000031
表示两个相邻超体素块i和j的质心连线向量和法线叉乘向量之间的最小角度,β表示相邻超体素块的法线夹角,
Figure FDA00022823241400000310
表示判断相邻超体素块是否为凸性连接的角度阈值,
Figure FDA0002282324140000032
βoff表示实验得出的角度常值,
Figure FDA0002282324140000033
表示法线向量
Figure FDA0002282324140000034
Figure FDA0002282324140000035
的夹角,
Figure FDA0002282324140000036
表示补充判据(SC)所得的超体素块间凸性连接判断;
最终两相邻面的凹凸性判据为:
Figure FDA0002282324140000037
其中,
Figure FDA0002282324140000038
表示组合CCb判据和CCe判据得到的扩展凸性判据,对相邻超体素块进行凸性连接判断;
(122)在标记完各个超体素块的凹凸关系之后,采用区域增长算法将超体素块聚类成较大的不同物体的点云簇Pm,0<m≤c,m∈N,完成点云场景的分割。
5.根据权利要求1所述的一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法,其特征在于,步骤(2)中首先对分拣场景点云中所有三维坐标点进行中心化处理,利用PCA算法计算投影主轴方向,将分拣场景点云投影到三维平面中;具体为:
(201)对于分拣场景点云P={pi,0≤i≤n,pi∈R3},对所有三维坐标点pi进行中心化处理,公式为
Figure FDA0002282324140000039
(202)计算中心化处理后的分拣场景点云P'的协方差矩阵XXT
(203)对协方差矩阵XXT做特征值分解;
(204)取最小特征值对应的特征向量wmin={apca,bpca,cpca}作为投影主轴方向;
(205)任意取参数dpca,构造平面apcax+bpcay+cpcaz+dpca=0作为投影面,得到投影后的平面点云集Q={qi,0≤i≤n,qi∈R3}。
6.根据权利要求1所述的一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法,其特征在于,步骤(2)中查询三维点邻域得到各分拣场景点云簇的堆叠状态的方法为:
投影后的点云以最大分散程度分布在三维平面中,然后遍历平面点云集,对于其中的每一点构造球邻域,当邻域中存在与球心点所属点云簇不同的点时,则判断这两个点云簇堆叠,最后记录所有点云簇的堆叠状态;具体步骤如下:
(211)遍历投影后的平面点云集Q,对于其中每一点qi,构造球邻域Ui(qi,δ)={x|qi-δ<x<qi+δ};
(212)然后在邻域中进行搜索,当
Figure FDA0002282324140000041
使得
Figure FDA0002282324140000042
Figure FDA0002282324140000043
则判定
Figure FDA0002282324140000044
Figure FDA0002282324140000045
存在堆叠,其中,
Figure FDA0002282324140000046
为平面点云集Q中不同簇的点云,0<m1≤c,0<m2≤c,m1∈N,m2∈N,m1≠m2
7.根据权利要求1所述的一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法,其特征在于,步骤(3)中通过拟合一个最小二乘意义下的微切平面,估计分拣场景点云中各点的法线,具体为:
(301)在点云簇Pm,0<m≤c,m∈N,中某点pi处,通过它的k个近邻点pij(j=1,2,…,k)拟合一个最小二乘意义下的微切平面T(pi),微切平面T(pi)的平面方程表达式为:
aix+biy+ciz+di=0;
其中,x,y,z表示三维空间坐标变量,ai,bi,ci,di为微切平面T(pi)的参数;
则看出微切平面T(pi)的拟合属于线性最小二乘问题,对应的目标函数为:
Figure FDA0002282324140000047
(302)通过目标函数公式求得微切平面T(pi)参数ai,bi,ci,di,在求解平面法向量时需要对矢量进行单位化处理,即为:
Figure FDA0002282324140000048
所以,pi点处的单位法矢量为:
Figure FDA0002282324140000049
8.根据权利要求1所述的一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法,其特征在于,步骤(3)中利用角度判据提取各分拣场景点云簇和待分拣目标模型的边缘,具体为:
(311)对于分拣场景点云簇的每一场景点pi估计单位法线向量
Figure FDA0002282324140000051
(312)选取正交于法线的任意单位向量
Figure FDA0002282324140000052
叉乘运算得
Figure FDA0002282324140000053
从而在场景点pi处建立坐标系
Figure FDA0002282324140000054
(313)将pi与近邻域的其它点pj(j=1,2,…k,j≠i)分别做差,得方向向量:
Figure FDA0002282324140000055
然后计算方向向量在微切平面坐标系
Figure FDA0002282324140000056
下的角度:
Figure FDA0002282324140000057
(314)对于集合A={angleij}(j=1,2,…,k,j≠i),按照大小顺序排序,再按照如下方式取最大值:
Figure FDA0002282324140000058
如果difi>anglethreshold,则认为场景点pi∈边缘点集B,遍历分拣场景点云中的所有场景点pi(i=1,2,…n)进行判断,即获取点云边缘B。
9.根据权利要求1所述的一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法,其特征在于,步骤(4)中结合各分拣场景点云簇的堆叠状态和边缘点云生成不同的边缘候选匹配集合,具体为:
(401)获取分拣场景中各点云的堆叠状态;
(402)如果分拣场景点云不存在堆叠,则定义候选匹配集合L={B1,B2,…,Bc},其中Bm(m=1,2,…,c)为场景分割后的各点云簇边缘;
(403)如果某点云Pi(1≤i≤c)存在堆叠,则将其对应的边缘Bi均匀采样固定的点数,设这个值为num,将Bi中采样的每一个点分别作为球心,然后构造球邻域查询最近邻K个点,公式为:
K=frac·S(0.5<frac<1);
其中,frac为选取的固定比例,S为Bi的总三维点数;
将搜索到的K个近邻点形成点集Bij(1≤j≤num),添加到候选匹配集合中,候选匹配集合为L={B1,B2,…,Bij,…Bc}。
10.根据权利要求1所述的一种基于3D视觉聚类和匹配的机器人乱序目标分拣方法,其特征在于,步骤(4)中利用Super4PCS粗匹配获取初始配准位姿,具体为:
(411)选取四点集对:在候选匹配集合L中依次选取边缘Bi,作为源点云,选取模型库中待分拣目标模型的边缘Bmodel,作为目标点云,首先从Bi中选择三个不同的点,然后以共面不共线原则确定第四个点,组成基e={pa,pb,pc,pd},其中线段pa pb和pc pd相交于o点,夹角为θ;可得相应比例r1,r2,点距d1,d2如下:
Figure FDA0002282324140000061
Figure FDA0002282324140000062
d1=||pa-pb||;
d2=||pc-pd||;
在Bmodel中确定集合S1,S2
S1={(qi,qj)|qi,qj∈Bmodel,||qi-qj||∈[d1-ε,d1+ε]};
S2={(qi,qj)|qi,qj∈Bmodel,||qi-qj||∈[d2-ε,d2+ε]};
S1,S2中的点对分别满足点距近似为d1,d2的条件,基于仿射不变性的原理,对于S1中的每一对点(qi,qj),计算由比例r1确定的交点o1,即o1ij=qi+r1(qj-qi),同理,对于S2中的每一对点(qi,qj),计算由比例r2确定的交点o2,即o2ij=qi+r2(qj-qi);在S1与S2中搜索满足e1ij与e2ij近似相等的点对,同时满足连线夹角也为θ,这样由(d1,d2,r1,r2,θ)从Bmodel中提取出唯一的与基对应的四点集{qa,qb,qc,qd};
(412)计算位姿变换矩阵:由对应点集{pa,pb,pc,pd}与{qa,qb,qc,qd}计算刚体变换矩阵T,使用T对源点云Bi进行变换,统计变换后的点云与目标点云Bmodel中最近点距离小于某个阈值δ的点的数目用以表征T的质量,迭代进行上述步骤,直至找到最优的T使得两点云足够接近,此时的变换矩阵记为T0i,作为源点云Bi的初始配准位姿,T0i为:
Figure FDA0002282324140000071
其中,R0i为旋转矩阵,t0i为平移向量;
再通过ICP精匹配进行排序识别和位姿估计,具体为:
(413)将Bi按照初始匹配位姿矩阵T0i变换,公式如下:
Bi'=R0iBi+t0i
(414)对于Bi’中的每一个点pi’,寻找Bmodel中最近邻点qi,定义误差函数E(R,t)为:
Figure FDA0002282324140000072
pi'=Rpi+t;
(415)如果误差函数E(R,t)小于给定阈值,或者迭代次数达到设定值,停止迭代计算;否则更新旋转矩阵R和平移向量t继续进行刚体变换,重新计算Bi’和E(R,t),并存储使误差E较小的变换矩阵R、t,直到目标函数Emin满足误差要求;
(416)对于候选匹配集合L中的每一边缘Bi,在足够的迭代次数之后,得到最终的ICP误差集合为{Emini}(i=1,2,…,s),其中的最小值为:
Emin'=min{Emin1,Emin2,…,Emins};
识别的结果定义为Emin'对应边缘Bi的类别,识别目标的位姿依据使误差函数为Emin'的变换矩阵估计。
CN201911146390.2A 2019-11-21 2019-11-21 一种基于3d视觉聚类和匹配的机器人乱序目标分拣方法 Active CN111091062B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911146390.2A CN111091062B (zh) 2019-11-21 2019-11-21 一种基于3d视觉聚类和匹配的机器人乱序目标分拣方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911146390.2A CN111091062B (zh) 2019-11-21 2019-11-21 一种基于3d视觉聚类和匹配的机器人乱序目标分拣方法

Publications (2)

Publication Number Publication Date
CN111091062A true CN111091062A (zh) 2020-05-01
CN111091062B CN111091062B (zh) 2023-07-04

Family

ID=70394212

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911146390.2A Active CN111091062B (zh) 2019-11-21 2019-11-21 一种基于3d视觉聚类和匹配的机器人乱序目标分拣方法

Country Status (1)

Country Link
CN (1) CN111091062B (zh)

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111815706A (zh) * 2020-06-23 2020-10-23 熵智科技(深圳)有限公司 面向单品类拆垛的视觉识别方法、装置、设备及介质
CN111986258A (zh) * 2020-08-24 2020-11-24 华中科技大学 基于点云法矢方向聚类伺服的机器人定位控制方法及系统
CN111986223A (zh) * 2020-07-15 2020-11-24 西安理工大学 一种基于能量函数的室外点云场景中树木提取方法
CN112295933A (zh) * 2020-09-17 2021-02-02 东南大学 一种机器人快速分拣货物的方法
CN112356019A (zh) * 2020-08-06 2021-02-12 武汉科技大学 一种用于灵巧手抓取的目标物体形体分析方法及装置
CN112419464A (zh) * 2020-12-02 2021-02-26 中北大学 一种基于点云局部凹凸性的三维碎块拼接方法
CN112464410A (zh) * 2020-12-02 2021-03-09 熵智科技(深圳)有限公司 一种工件抓取顺序的确定方法、装置、计算机设备及介质
CN112508912A (zh) * 2020-12-07 2021-03-16 中联重科股份有限公司 地面点云数据滤除方法及装置、臂架防碰撞方法及系统
CN112509063A (zh) * 2020-12-21 2021-03-16 中国矿业大学 一种基于边缘特征匹配的机械臂抓取系统及方法
CN112541428A (zh) * 2020-12-11 2021-03-23 深圳市优必选科技股份有限公司 足球识别方法、装置及机器人
CN112581519A (zh) * 2020-12-21 2021-03-30 中广核工程有限公司 一种放射性废物包识别定位方法与装置
CN112598744A (zh) * 2021-03-02 2021-04-02 聚时科技(江苏)有限公司 一种发动机气门抓取点定位方法
CN112669385A (zh) * 2020-12-31 2021-04-16 华南理工大学 基于三维点云特征的工业机器人工件识别与位姿估计方法
CN112819135A (zh) * 2020-12-21 2021-05-18 中国矿业大学 基于ConvPoint模型引导机械臂抓取不同位姿物料的分拣方法
CN112837371A (zh) * 2021-02-26 2021-05-25 梅卡曼德(北京)机器人科技有限公司 基于3d匹配的物体抓取方法、装置及计算设备
CN112847375A (zh) * 2021-01-22 2021-05-28 熵智科技(深圳)有限公司 一种工件抓取方法、装置、计算机设备及存储介质
CN112907735A (zh) * 2021-03-10 2021-06-04 南京理工大学 一种基于点云的柔性电缆识别与三维重建方法
CN113012161A (zh) * 2021-03-05 2021-06-22 华南理工大学 一种基于凸性区域生长的堆叠散乱目标点云分割方法
CN113298833A (zh) * 2021-05-20 2021-08-24 山东大学 目标物点云特征线面提取方法及系统
CN113313803A (zh) * 2021-06-11 2021-08-27 梅卡曼德(北京)机器人科技有限公司 垛型分析方法、装置、计算设备及计算机存储介质
CN113344112A (zh) * 2021-06-27 2021-09-03 东南大学 一种基于聚类算法的动态物体识别方法
CN113674425A (zh) * 2021-10-25 2021-11-19 深圳市信润富联数字科技有限公司 点云采样方法、装置、设备及计算机可读存储介质
CN113894050A (zh) * 2021-09-14 2022-01-07 深圳玩智商科技有限公司 物流件分拣方法、分拣设备及存储介质
CN114536399A (zh) * 2022-01-07 2022-05-27 中国人民解放军海军军医大学第一附属医院 基于多个位姿标识的误差检测方法及机器人系统
WO2022156749A1 (zh) * 2021-01-22 2022-07-28 熵智科技(深圳)有限公司 一种工件抓取方法、装置、计算机设备及存储介质
CN114800533A (zh) * 2022-06-28 2022-07-29 诺伯特智能装备(山东)有限公司 一种用于工业机器人的分拣控制方法及系统
CN115147491A (zh) * 2022-09-02 2022-10-04 山东西曼克技术有限公司 用于agv小车的搬运目标位姿信息估计方法
CN115641583A (zh) * 2022-12-26 2023-01-24 苏州赫芯科技有限公司 一种基于自监督和主动学习的点云检测方法、系统及介质
WO2023092519A1 (zh) * 2021-11-28 2023-06-01 梅卡曼德(北京)机器人科技有限公司 抓取控制方法、装置、电子设备和存储介质
CN116416305A (zh) * 2022-09-17 2023-07-11 上海交通大学 一种基于优化采样五维点对特征的多实例位姿估计方法
CN116740156A (zh) * 2023-08-10 2023-09-12 西南交通大学 基于高斯球和主平面分布的任意位姿施工元件的配准方法
CN117197410A (zh) * 2023-11-06 2023-12-08 中铁大桥局集团有限公司 钢结构的虚拟拼装方法、装置、设备及存储介质
CN117576172A (zh) * 2024-01-12 2024-02-20 法奥意威(苏州)机器人系统有限公司 基于改进关键点的配准方法和装置
CN117994272A (zh) * 2024-04-07 2024-05-07 武汉科技大学 一种应用于工业无序摆放软包堆的点云分割方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108830902A (zh) * 2018-04-19 2018-11-16 江南大学 一种基于点云处理的散乱工件识别与定位方法
CN109359680A (zh) * 2018-10-11 2019-02-19 大昌建设集团有限公司 爆破岩块自动识别和块度特征提取方法及装置
CN110246127A (zh) * 2019-06-17 2019-09-17 南京工程学院 基于深度相机的工件识别与定位方法和系统、分拣系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108830902A (zh) * 2018-04-19 2018-11-16 江南大学 一种基于点云处理的散乱工件识别与定位方法
CN109359680A (zh) * 2018-10-11 2019-02-19 大昌建设集团有限公司 爆破岩块自动识别和块度特征提取方法及装置
CN110246127A (zh) * 2019-06-17 2019-09-17 南京工程学院 基于深度相机的工件识别与定位方法和系统、分拣系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
邱垚: "基于3D目标识别的工业机器人无序分拣技术研究", 《中国优秀硕士学位论文》, pages 1 - 4 *
鲁铁定等: "结合尺度不变特征的super4pcs点云配准方法", 《遥感信息》, pages 1 - 4 *

Cited By (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111815706B (zh) * 2020-06-23 2023-10-27 熵智科技(深圳)有限公司 面向单品类拆垛的视觉识别方法、装置、设备及介质
CN111815706A (zh) * 2020-06-23 2020-10-23 熵智科技(深圳)有限公司 面向单品类拆垛的视觉识别方法、装置、设备及介质
CN111986223A (zh) * 2020-07-15 2020-11-24 西安理工大学 一种基于能量函数的室外点云场景中树木提取方法
CN111986223B (zh) * 2020-07-15 2024-02-06 西安理工大学 一种基于能量函数的室外点云场景中树木提取方法
CN112356019A (zh) * 2020-08-06 2021-02-12 武汉科技大学 一种用于灵巧手抓取的目标物体形体分析方法及装置
CN112356019B (zh) * 2020-08-06 2024-06-14 武汉科技大学 一种用于灵巧手抓取的目标物体形体分析方法及装置
CN111986258B (zh) * 2020-08-24 2022-05-31 华中科技大学 基于点云法矢方向聚类伺服的机器人定位控制方法及系统
CN111986258A (zh) * 2020-08-24 2020-11-24 华中科技大学 基于点云法矢方向聚类伺服的机器人定位控制方法及系统
CN112295933A (zh) * 2020-09-17 2021-02-02 东南大学 一种机器人快速分拣货物的方法
CN112295933B (zh) * 2020-09-17 2022-03-11 东南大学 一种机器人快速分拣货物的方法
CN112419464B (zh) * 2020-12-02 2023-03-24 中北大学 一种基于点云局部凹凸性的三维碎块拼接方法
CN112464410A (zh) * 2020-12-02 2021-03-09 熵智科技(深圳)有限公司 一种工件抓取顺序的确定方法、装置、计算机设备及介质
CN112419464A (zh) * 2020-12-02 2021-02-26 中北大学 一种基于点云局部凹凸性的三维碎块拼接方法
CN112464410B (zh) * 2020-12-02 2021-11-16 熵智科技(深圳)有限公司 一种工件抓取顺序的确定方法、装置、计算机设备及介质
CN112508912A (zh) * 2020-12-07 2021-03-16 中联重科股份有限公司 地面点云数据滤除方法及装置、臂架防碰撞方法及系统
CN112541428B (zh) * 2020-12-11 2024-01-16 深圳市优必选科技股份有限公司 足球识别方法、装置及机器人
CN112541428A (zh) * 2020-12-11 2021-03-23 深圳市优必选科技股份有限公司 足球识别方法、装置及机器人
CN112819135A (zh) * 2020-12-21 2021-05-18 中国矿业大学 基于ConvPoint模型引导机械臂抓取不同位姿物料的分拣方法
CN112581519A (zh) * 2020-12-21 2021-03-30 中广核工程有限公司 一种放射性废物包识别定位方法与装置
CN112581519B (zh) * 2020-12-21 2022-03-22 中广核工程有限公司 一种放射性废物包识别定位方法与装置
CN112509063A (zh) * 2020-12-21 2021-03-16 中国矿业大学 一种基于边缘特征匹配的机械臂抓取系统及方法
CN112669385A (zh) * 2020-12-31 2021-04-16 华南理工大学 基于三维点云特征的工业机器人工件识别与位姿估计方法
CN112669385B (zh) * 2020-12-31 2023-06-13 华南理工大学 基于三维点云特征的工业机器人工件识别与位姿估计方法
CN112847375A (zh) * 2021-01-22 2021-05-28 熵智科技(深圳)有限公司 一种工件抓取方法、装置、计算机设备及存储介质
WO2022156749A1 (zh) * 2021-01-22 2022-07-28 熵智科技(深圳)有限公司 一种工件抓取方法、装置、计算机设备及存储介质
CN112837371B (zh) * 2021-02-26 2024-05-24 梅卡曼德(北京)机器人科技有限公司 基于3d匹配的物体抓取方法、装置及计算设备
WO2022179261A1 (zh) * 2021-02-26 2022-09-01 梅卡曼德(北京)机器人科技有限公司 基于3d匹配的物体抓取方法、装置及计算设备
CN112837371A (zh) * 2021-02-26 2021-05-25 梅卡曼德(北京)机器人科技有限公司 基于3d匹配的物体抓取方法、装置及计算设备
CN112598744A (zh) * 2021-03-02 2021-04-02 聚时科技(江苏)有限公司 一种发动机气门抓取点定位方法
CN112598744B (zh) * 2021-03-02 2021-07-30 聚时科技(江苏)有限公司 一种发动机气门抓取点定位方法
CN113012161A (zh) * 2021-03-05 2021-06-22 华南理工大学 一种基于凸性区域生长的堆叠散乱目标点云分割方法
CN112907735B (zh) * 2021-03-10 2023-07-25 南京理工大学 一种基于点云的柔性电缆识别与三维重建方法
CN112907735A (zh) * 2021-03-10 2021-06-04 南京理工大学 一种基于点云的柔性电缆识别与三维重建方法
CN113298833A (zh) * 2021-05-20 2021-08-24 山东大学 目标物点云特征线面提取方法及系统
CN113313803A (zh) * 2021-06-11 2021-08-27 梅卡曼德(北京)机器人科技有限公司 垛型分析方法、装置、计算设备及计算机存储介质
CN113344112B (zh) * 2021-06-27 2022-11-15 东南大学 一种基于聚类算法的动态物体识别方法
CN113344112A (zh) * 2021-06-27 2021-09-03 东南大学 一种基于聚类算法的动态物体识别方法
CN113894050A (zh) * 2021-09-14 2022-01-07 深圳玩智商科技有限公司 物流件分拣方法、分拣设备及存储介质
CN113674425A (zh) * 2021-10-25 2021-11-19 深圳市信润富联数字科技有限公司 点云采样方法、装置、设备及计算机可读存储介质
WO2023092519A1 (zh) * 2021-11-28 2023-06-01 梅卡曼德(北京)机器人科技有限公司 抓取控制方法、装置、电子设备和存储介质
CN114536399B (zh) * 2022-01-07 2023-04-25 中国人民解放军海军军医大学第一附属医院 基于多个位姿标识的误差检测方法及机器人系统
CN114536399A (zh) * 2022-01-07 2022-05-27 中国人民解放军海军军医大学第一附属医院 基于多个位姿标识的误差检测方法及机器人系统
CN114800533B (zh) * 2022-06-28 2022-09-02 诺伯特智能装备(山东)有限公司 一种用于工业机器人的分拣控制方法及系统
CN114800533A (zh) * 2022-06-28 2022-07-29 诺伯特智能装备(山东)有限公司 一种用于工业机器人的分拣控制方法及系统
CN115147491A (zh) * 2022-09-02 2022-10-04 山东西曼克技术有限公司 用于agv小车的搬运目标位姿信息估计方法
CN116416305A (zh) * 2022-09-17 2023-07-11 上海交通大学 一种基于优化采样五维点对特征的多实例位姿估计方法
CN116416305B (zh) * 2022-09-17 2024-02-13 上海交通大学 一种基于优化采样五维点对特征的多实例位姿估计方法
CN115641583A (zh) * 2022-12-26 2023-01-24 苏州赫芯科技有限公司 一种基于自监督和主动学习的点云检测方法、系统及介质
CN116740156B (zh) * 2023-08-10 2023-11-03 西南交通大学 基于高斯球和主平面分布的任意位姿施工元件的配准方法
CN116740156A (zh) * 2023-08-10 2023-09-12 西南交通大学 基于高斯球和主平面分布的任意位姿施工元件的配准方法
CN117197410A (zh) * 2023-11-06 2023-12-08 中铁大桥局集团有限公司 钢结构的虚拟拼装方法、装置、设备及存储介质
CN117197410B (zh) * 2023-11-06 2024-03-26 中铁大桥局集团有限公司 钢结构的虚拟拼装方法、装置、设备及存储介质
CN117576172A (zh) * 2024-01-12 2024-02-20 法奥意威(苏州)机器人系统有限公司 基于改进关键点的配准方法和装置
CN117576172B (zh) * 2024-01-12 2024-04-30 法奥意威(苏州)机器人系统有限公司 基于改进关键点的配准方法和装置
CN117994272A (zh) * 2024-04-07 2024-05-07 武汉科技大学 一种应用于工业无序摆放软包堆的点云分割方法及系统

Also Published As

Publication number Publication date
CN111091062B (zh) 2023-07-04

Similar Documents

Publication Publication Date Title
CN111091062A (zh) 一种基于3d视觉聚类和匹配的机器人乱序目标分拣方法
CN107369161B (zh) 一种基于改进欧式聚类的散乱工件点云分割方法
CN109801337B (zh) 一种基于实例分割网络和迭代优化的6d位姿估计方法
CN112070818B (zh) 基于机器视觉的机器人无序抓取方法和系统及存储介质
CN111299815B (zh) 一种用于低灰度橡胶垫视觉检测与激光切割轨迹规划方法
CN107292276B (zh) 一种车载点云聚类方法及系统
CN107392929B (zh) 一种基于人眼视觉模型的智能化目标检测及尺寸测量方法
CN113012161B (zh) 一种基于凸性区域生长的堆叠散乱目标点云分割方法
EP1658579A1 (en) Computer-vision system for classification and spatial localization of bounded 3d-objects
CN109034065B (zh) 一种基于点云的室内场景物体提取方法
CN107818598B (zh) 一种基于视觉矫正的三维点云地图融合方法
CN113470090A (zh) 基于sift-shot特征的多固态激光雷达外参标定方法
CN113628263A (zh) 一种基于局部曲率及其近邻特征的点云配准方法
CN114972377A (zh) 基于移动最小二乘法与超体素的3d点云分割方法和装置
CN113034600A (zh) 基于模板匹配的无纹理平面结构工业零件识别和6d位姿估计方法
CN111145129A (zh) 基于超体素的点云去噪方法
CN113538503A (zh) 一种基于红外图像的太阳能板缺陷检测方法
CN111709426B (zh) 一种基于轮廓和纹理的硅藻识别方法
Kallasi et al. Computer vision in underwater environments: A multiscale graph segmentation approach
CN115170950A (zh) 基于多特征约束的室外场景建筑物提取方法
Asif et al. Model-free segmentation and grasp selection of unknown stacked objects
Ali et al. Segmentation and pose estimation of planar metallic objects
CN105825528B (zh) 一种图像对称轴检测方法
Zhang et al. Indoor target detection and pose estimation based on point cloud
Zhao et al. Steel plate surface defect recognition method based on depth information

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