帮助中心
帮助中心主页
激光雷达
外部传感器
其他传感器
总线型编码器
电池及充电
喇叭及氛围灯
功能授权
基于平面特征的 3D 抓取识别

一、引言


复合机器人
上图展示的复合机器人身上可以看到硬件中,相机负责采集视野内的3D信息,机械臂负责将物体夹起。硬件具备之后,要想机器人拿起面前物料时机械臂就面临去哪抓和怎么抓的问题。这里涉及的去哪抓和怎么抓就是3D物体识别需要提供的物体的位置和姿态。
位置是指物料在机器人坐标系下的空间坐标,欧式空间下就是X、Y、Z三个值。空间中物料可能是立着的,也有可能是躺着的。仅提供位置信息机器人还是无法准确的将物料夹起,因此还需要物料的姿态信息。用欧拉角的形式表示就是:Rx、Ry和Rz,关于欧拉角如何表示姿态可以参考维基百科。

二、识别原理

3D相机可以获取真实世界尺度下的三维结构信息,3D物体识别就是从相机视野内准确定位目标物体的位置和姿态。跟人眼一样,3D相机只能看到某一个视角下的物体形状,无法获取物体背对相机一面的数据。因此在物体识别时,也是从目标物体身上选择某一个具有代表性的特征作为该物体的标识,算法通过识别该特征来确定目标物体在相机视野内的位置与姿态。

(1)原始点云图 (2)识别物料位置
3D物料识别示意图
目标识别中常用的特征有:角点特征、线特征和平面特征,我们这里采用的是平面特征。基于平面特征同时就约束了我们的识别算法主要适用于平面信息比较丰富的物体,例如工业场景中的料盒、机台等。但对于生活场景中鼠标、茶杯等曲面结构的物体暂时不支持识别。上图中,我们用正方形积木的一个侧面作为平面特征,只要积木的这个侧面在相机视野内,我们就可以实现对积木的定位识别。算法识别主要包括场景分割、平面提取和模板匹配三个模块。

2.1 场景分割


(1)原始点云 (2)分割后点云
场景分割示意图
场景分割是一种对复杂场景降维处理的过程。现实存在的复杂结构物体往往都是有一系列如,平面、圆柱面、锥面和圆台等简单结构组成。想要直接从扫描场景中识别出物体的位姿,物体自身的复杂结构、杂乱的背景噪声和相机成像缺少都增加了这项工作的复杂性。
场景分割依据简单结构的表面变化是平滑的,根据扫描场景中各个物体表面变化梯度,将相邻且梯度变化较小的表面结构聚为一类,相邻但梯度变化较大的分割为另一类。如上图所示,相机采集的原始点云中包含了背景平面和各种形状的积木,场景分割将一个完整的扫描点云分割为六个相互独立的子点云。从各个子点云中识别不同形状的积木,要比直接从原始点云中寻找更加高效、精确。
场景分割中可通过配置分割面最少点个数 minPtNum、相邻分割面之间的最小距离 minDistDiff和相邻不同分割面之间最小法向角度差异 minAngleDiff,实现分割面大小和各个分割面内法向变化幅度的调节。

参数名称单位默认值最小值最大值支持版本
minPtNum100310000-
分割后的每个子点云包含的最少点个数,少于该数量的聚集点认为不构成面结构
minDistDiff米(m)0.0030.0011-
两个不同聚类最近欧式距离,小于该距离被认为属于相同聚类
minAngleDiff度(°)15390-
两个不同表面法向之间角度变化,法向差异大于该角度的会被认为属于两个不同聚类

2.2 平面提取


平面提取示意图
平面提取是在分割的简单面结构中提取平面结构,相当于对场景分割后的结果做了一次有目的的筛选,提取出平面特征。从三维点中提取平面特征通常采用RANSAC算法。RANSAC是“RANdom SAmple Consensus(随机抽样一致)”的缩写,RANSAC算法最早在1981年提出,是一种从观测数据中鲁邦的提取数学模型参数的方法,能够适应噪声占比在30%左右的观测数据。以RANSAC为基础的模型拟合应用在数据分析和模式识别领域一直有比较广泛的应用。

(1)包含很多噪点的采样点 (2)RANSAC找到的直线模型
它可以从一组包含噪声的点云中,通过迭代方式估计平面模型的参数。它是一种不确定的算法,有一定的概率得出一个合理的结果,为了提高概率必须提高迭代次数。算法中根据噪声占比可以通过概率分析算出一定可以得到一个合理结果的迭代次数。场景分割的每个简单面结构会包含曲面或圆柱面等,对于分割的曲面点利用RANSAC方法提取到的平面模型中局外点相对全部点云占比较大。依据这个特征可以有效的筛选出平面模型。

2.3 模板匹配


(1)模板图像 (2)匹配结果
模板匹配示意图
模板匹配是一种最原始、最基本的模式识别方法,研究某一特定对象物的图案位于图像的什么地方,进而识别对象,这就是一个匹配问题。模板匹配的思路在数字图像处理领域有着极其广泛的应用,例如瑕疵检测、和目标定位。早期的字符识别与人脸检测领域的研究也能看到不少模版匹配的身影。
同样是利用模板匹配的思路,基于平面特征的3D物体识别通过对比检测的平面模型与模板平面的相识度实现对目标物体的识别。针对算法的特性,平面模板在选择过程中需要考虑平面特征的长宽尺寸、外形轮廓和内部孔洞等特征具备一定程度的区分性。使用过程中需要保证识别视野范围内不能出现两个完全不同的物体具备相同或者相似度较高的平面特征,否则会出现识别结果不可靠的问题。
模板匹配时针场景中识别物体可能存在最大旋转角度的变化,可通过配置参数maxRotateAngle调节。

参数名称单位默认值最小值最大值支持版本
maxRotateAngle度(°)300180-
识别物体在场景内最大角度变化

2.4 优缺点

相较于2D视觉识别方案,3D抓取识别能够直接识别目标物所在的位置与姿态,不需要依赖其他的媒介。相应的,3D视觉方案的缺点是相机价格高、重量和尺寸大等缺点。复合机器人机械臂末端需要加装视觉和夹爪等装置,视觉重量和尺寸增加会压缩夹爪和夹取物的使用空间。

三、参考文献

[1] Fischler M A , Bolles R C . Random sample consensus: a paradigm for model fitting with applications to image analysis and automated cartography[J]. Communications of the ACM, 1981, 24(6):619-638.
[2] Hashemi N S , Aghdam R B , Ghiasi A , et al. Template Matching Advances and Applications in Image Analysis[J]. 2016.

最近更新 2022/11/28
文章内容

一、引言

二、识别原理

2.1 场景分割

2.2 平面提取

2.3 模板匹配

2.4 优缺点

三、参考文献