APP下载

基于单点云信息的未知物体抓取方法

2017-12-14叶仙胡洁邵全全戚进方懿

数码设计 2017年6期
关键词:手爪投影坐标系

叶仙*,胡洁,邵全全,戚进,方懿

(上海交通大学 机械与动力工程学院,上海,200240)

基于单点云信息的未知物体抓取方法

叶仙*,胡洁,邵全全,戚进,方懿

(上海交通大学 机械与动力工程学院,上海,200240)

随着日常生活中物品的爆发式增长,对未知物体的自主操作能力,越来越成为智能机器人尤其是智能服务机器人的必备的技能。本文研究了仅利用单视角点云信息快速构建未知物体抓取点的方法,该方法无需待抓取物体的任何先验知识,操作便捷,同时具有适应范围广、无需多视角拍照等特点。主要处理步骤如下:首先对RGB-D传感器获得的点云进行滤波、分割、坐标变换、投影、主成分分析等处理,构建目标物体坐标系;然后根据获取点云的视角、物体位姿以及点云沿 y轴投影后的边界信息确定待抓取物体合适的抓取点;最后利用ROS试验仿真平台验证了该方法的可行性和有效性。

点云信息;主成分分析;未知物体;抓取点选择

引言

近几十年来,机器人被广泛地应用于工厂环境中,以完成复杂的操作任务。在生产中,机器人发挥着重要的作用,自主操作型机器人在空间操作、救灾、探测以及家庭服务中有着广泛的应用前景,然而在非结构环境下的自主操作技术依然停留在研究阶段。机器人自主操作技术是一项高难度、复杂多领域的研究点,涉及环境感知、传感器技术、机器视觉、物体识别、轨迹规划、运动控制以及机器学习等多个领域的相关知识[1]。抓取是机器人获取、移动、运输目标物体的前提,因此研究者需要对机器人自主抓取技术给予更多的关注。研究表明,人类主要通过视觉引导和预测来调节接近动作,同时配合碰撞触觉感知完成接触与抓取[2]。基于视觉的识别抓取是机器人环境感知的重要渠道[3],由于计算机视觉精度远远优于人类本身的视觉精度,因此研究人员对基于视觉的机器人抓取技术进行广泛地研究与深入地探讨[4-6]。Geidenstam等人[4]研究了如何利用点云立方体边界框信息实现抓取操作。SRINVASA等人[5]研究了配有灵巧手的移动机械臂,基于模型库的识别与抓取方法,物体识别后再进行设定的抓取策略选择。Miller等人[5]研究了如何利用圆柱、圆锥等基本形状近似地实现对物体的抓取。这些方法往往具有以下缺点:计算量大,过于依赖先验知识,并且由于缺失第三维信息而增加了抓取的不确定性。

随着Kinect、Xtion等廉价深度传感器的普及,大量研究者开始利用这类传感器获得目标物体的点云信息,实现抓取操作。Herzog等人[7]利用“PR2”机器人平台,研究了基于模板匹配的方式实现抓取策略选择,该方法主要利用深度传感器获得点云信息,提取目标物体凸边界以及法线向量信息,通过物体类型库、抓取库进行抓取位姿的选择。Stückler等人[8]利用“Cosero”移动操作家庭服务机器人,研究了基于部分点云信息的未知物体抓取,该移动机器人以Kinect传感器作为机器人视觉,对俯视状态下散放的中心对称物体进行抓取。Lei等人[9-10]根据抓取时力平衡的思想建立了一套基于部分点云的快速抓取策略生成方法,最多通过两次深度相机获得的点云即可实现对多数未知物体的抓取操作,文中对利用UR5机器人平台,对该方法上进行了验证。近几年由于人工智能的兴起,深度学习在物体识别与决策中表现出很大的优势,已有一些研究者将物体深度信息与卷积神经网络等学习方法相结合,探索具备智能化、适应性更强的抓取方法[11-12]。

本文研究了基于目标物体单个点云信息,快速生成抓取点,实现适用性更强的未知物体抓取方法。该方法具有如下创新性:(1)相较于其他多视角拍照、点云融合等方式,该方法仅通过一个视角获取点云,,缩短了视觉信息处理时间,进而提升了机器人的响应速度;(2)利用点云投影边界信息选择抓取点,避免了较长的计算时间;(3)利用2D投影信息及从采样投影点云提取物体坐标系,确定物体位姿,实现了仅利用单视角点云,即可实现对非正视物体的抓取。本文在ROS环境下,综合GAZEBO仿真平台,进行了多组仿真实验,验证了该方法的可行性和有效性。

1 算法框架

本文考虑的硬件配置情况为相机随机械臂移动,以二指型手爪作为执行构件。具体流程如下:首先对从Kinect传感器获得的点云进行背景滤波、平面识别与分割、提取目标物体点云。再将目标点云从传感器坐标系转换至机器人操作空间坐标系,为减弱可见部分的点云权重,采取投影后重采样,然后主成分分析识别长短边,根据物体的长短边构建目标物体局部坐标系,根据深度相机视角、目标物体位姿信息以及目标点云沿短轴投影后的边界信息综合确定合适的手爪姿态及抓取点。最后进行机械臂运动规划,完成抓取放置等具体任务动作(如图1所示)。下文将具体展开。

图1 抓取算法流程图Fig. 1 Flow chart of grasp algorithm

1.1 获取目标物体点云

深度相机获得的原始点云不仅含有目标物体信息,还包括桌面、地面上远处物体等背景信息。为了聚焦待抓取的物体,提高算法运行效率,首先在传感器坐标系中滤除远处的点云(本文滤除1.5m以外的点)。然后采用随机采样一致算法(RANSAC)拟合平面,滤除桌面及桌面以下的点。本文重点研究基于单点云信息的未知物体抓取,故仅考虑单个物体情况,对于多物体情况,通过增加点云分割聚类等步骤处理即可。经过上述一系列点云处理后,可以获得目标物体的点云信息,通过坐标系转换,将点云由传感器坐标系转换至机器人操作坐标系,即世界坐标系。图2以汽水瓶为例,展示了原始点云的处理过程。

图2 获取目标点云处理过程Fig. 2 The process to get object point cloud

1.2 建立目标物体坐标系

考虑到多数物体都是放置在水平桌面上,故将物体坐标系的Z轴设置为垂直向上。目标点云信息沿Z轴投影,为了减弱物体可见部分的权重,对投影后的2D点云重采样,再进行主成分分析(PCA)确定2D点云的长短轴及中心点,选取投影点云的短轴(方向与视角轴投影成锐角)作为物体坐标系的 Y轴,此处相机视角投影定义为在世界坐标系下,相机坐标系原点到物体坐标系连线在XY平面的投影,X轴通过下式(1)计算可得:

取2D点云中心点的坐标作为物体坐标系的原点X,Y坐标,计算目标点云Z坐标的最大值、最小值、中点及Z向宽度,取中点作为物体坐标系的原点Z坐标。图3(a)展示了点云投影后的状态及对其PCA分析后建立的X,Y轴情况,其中红色表示物体坐标系X轴,绿色表示其Y轴。同时,该图表明投影后2D点云的中心并不是物体中心(仅考虑X,Y方向),这是由于仅利用单视角点云,目标物体部分区域不可见造成的。图3(b)描述了最终建立的物体坐标系情况。

1.3 确定点云矩形边界框

将点云由世界坐标系转换至物体坐标系,由上述步骤已经获得Z方向的边界框。现分别计算点云X,Y方向的坐标最大值、最小值,进而获得物体在X,Y方向的边界框。通过边界框与手爪宽度的比较可以初步确定物体是否可以抓取。

图3 建立物体坐标系Fig. 3 Building the object coordinate

1.4 沿短轴投影确定边界轮廓

在物体坐标系下点云沿y轴投影,获得待抓取物体宽面的投影信息,进一步运用凹壳算法(Concave Hull)提取该投影的边界信息。在Z方向间隔∆z迭代计算,分别保留最大、最小点及其邻域点云,可以获得X轴的左右边界点云并分别存储。图4(a)展示了点云沿Y轴投影后的2D点云信息,图4(b)为投影后点云经凹壳算法提取边界后的示意图,图4(c)表示经迭代计算获得的待抓物体的左右边界信息。

图4 边界轮廓提取示意Fig. 4 Expression of boundary contour extraction

1.5 计算抓取点

本文以二指型手爪为例,将手爪抓取范围简化为长方体,其他多指型手爪简单的抓取动作也与二指型手爪类似。手爪模型主要参数包含:手爪位姿(即手爪坐标系的位置及方向),手爪开口宽度、厚度及开口深度。如图5所示,建立相应的手爪坐标系,其中Xgr,Ygr,Zgr分别代表手爪坐标系的X,Y,Z轴。Zgr轴垂直于手爪平面,Xgr轴与手爪平行指向远离手爪方向,Ygr轴为指尖的连线,坐标原点位于两指尖连线的中点位置。

抓取过程中,手爪开口宽度及手爪厚度是已知的,抓取点的选择主要根据目标物体位姿及大小,确定满足手爪开口宽度及厚度的手爪坐标系具体位置。本文的抓取规划中首先考虑待抓物体高度较低的情况(取小于0.05m),由于物体高度较低不适合手爪水平方向抓取,此类物体直接判断,若 Y轴方向边框宽度小于手爪开口宽度即可抓取,否则不可抓取。

图5 建立手爪坐标系Fig. 5 Building the coordinate of the gripper

其余情况考虑水平方向X轴或者Y轴的抓取。相机获得的物体形状信息主要来源于面向相机的一侧,规划中根据相机视角投影与 Y轴的夹角不同,判断待抓物体面向相机的面为宽面还是窄面,进而选择不同的优先抓取方向。判别式如下:

θ1>0取+Y抓取方向,θ1<0,θ2>0取+X为抓取方向,θ1<0,θ2<0取-X为抓取方向。示意图如图6所示,其中图6(c)为X轴与视角轴投影成钝角的情况,针对图6(a)、图6(b)所示的情况,下文考虑在XZ平面与在YZ平面搜索抓取点两种不同的情况。

图6 物体不同位姿示意图Fig. 6 Expression of different pose of the object

1.5.1 XZ平面搜索抓取点

当视角轴投影与Y轴夹角小于等于45°时,相机可以获得更多关于待抓取物体宽面的信息,优先考虑在宽面搜索抓取点。抓取点搜索时主要考虑手爪开口宽度及手爪厚度,可以用矩形表示,长度代表手爪开口宽度,宽度代表手爪的厚度,如图7所示。垂直放置在桌面上的物体下半部分抗扰动的能力强于上半部分,即待抓物体上半部分受侧向力更容易侧翻,所以该算法从桌面以上0.02m处逐渐向上偏移∆z,进行迭代检索。首先判断矩形框区域内点云宽度小于矩形框长度(图7(a)),进而对框内左右轮廓分别按下式进行拟合:

然后根据公式(4)判定是否停止搜索。其中 是与待抓取物体与手爪静摩擦系数与结构有关的正数, 越小对应停止搜索时的夹角 越小(如图7(b)所示)。

此时对应的矩形框区域即为检索到的抓取点,Zgr轴可取物体坐标系的Z轴或者取两直线方向向量的中线方向。同时也存在XZ平面无合适抓取点的情况(如图7(c)所示),此时按1.5.2所述方法判断是否可以从YZ平面进行抓取。

图7 XZ平面搜索抓取点Fig. 7 Searching the grasp point in XZ plane

1.5.2 YZ平面搜索抓取点

本节分为两种情况,一是视角轴投影与 Y轴夹角小于等于45°,但经1.5.1方法检测到XZ平面无合适的抓取点;二是视角轴投影与Y轴夹角大于45°,相机获得较多物体的窄面信息,优先选取X轴作为抓取方向。根据X轴与视角轴投影夹角是否为钝角选择X轴正方向还是X轴负方向作为手爪的接近方向(即手爪坐标系中的Xgr轴),并确定选取投影边界的左半部分还是右半部分(如图(8)所示)作为搜索抓取点的边界信息。下文讨论 X轴与视角轴投影成锐角的情形,成钝角情形完全类似。首先确定 Y轴方向边界框小于手爪开口宽度,否则无法抓取。当Y轴方向边界框小于手爪开口宽度时,选X轴正方向为手爪接近方向,选取左边界从桌面以上0.02m逐渐向上用矩形框向上迭代搜索,根据公式(5)对框内边界拟合,根据公式(6)判定是否中止搜索。其中0φ为判定阈值常数,物理意义为矩形框内边界与竖直方向的夹角。

如图(8)所示,抓取位置在红色椭圆区域内,取中止收缩时矩形框内的点云 X坐标的最小值,并增加一个抓取深度作为最终的抓取点。

图8 YZ平面搜索抓取点Fig. 8 Searching the grasp point in YZ plane

2 仿真实验

为了有效地验证本文提出的基于单点云信息的物体抓取方法,在ROS环境下综合Gazebo仿真平台以及Moveit!运动规划插件进行多组仿真实验。仿真实验硬件设置为:将UR5机器人固定在地面,Kinect相机固定在机械臂末端,采用“眼在手上”(eye-in-hand)配置方式,该方式可以便捷地实现对目标物体搜索以及对不同视角下的物体点云信息的采集。在机器人一侧的0.5m 附近放置一桌子,用来放置不同的待抓取物体,具体如图(9)所示。机器人末端安装有二指型手爪,其具体参数为:手爪开口宽度hand_width=0.1m,手爪厚度hand_hight=0.02m,手爪开口深度 hand_depth=0.1m。由于单点云信息只能获得目标物体面向相机部分的形状信息,同时相机、视觉算法以及机械臂执行中都会引入新的误差,因此仿真中手爪开口宽度设置为0.8*hand_width。在ROS平台下,Kinect相机先从GAZEBO仿真环境中获得原始点云信息,随后通过上述算法的点云处理节点,经处理后输出抓取点的位姿信息,再根据该位姿信息利用moveit!运动规划插件驱动UR5模拟机械臂运动至预抓取位置,预抓取位置设为抓取点位姿沿抓取方向反方向平移0.15m,通过降低手爪速度,以直线运动方式至抓取点,闭合手爪实现抓取操作。下文通过两个仿真对比试验验证算法的有效性。

2.1 建立目标物体坐标系密比实验

本文首先研究了在目标物体坐标系构建过程中,通过引入重采样处理和对采样后的二维点云进行主成分分析,对目标物体坐标系构建的改善情况。传统方法在构建目标物体局部坐标系时,直接对XY平面投影后的2D点云进行主成分分析[13]。研究发现由于目标物体的自遮挡情况,面向相机的一面获得更多的点云信息,对于非完全对称物体的局部坐标系构建,在投影后直接对二维点云进行主成分分析,往往存在较大的误差。本文引入重采样技术,可以部分改善目标物体局部坐标系的构建精度。下文以日常生活物品洗发露瓶为检测目标,将物品旋转一周,对上述两种方法构建X,Y轴坐标系的效果与理想物体坐标系偏差情况进行了对比(实验环境如图9所示),结果见表1,图10。实验表明,通过重采样技术可以部分消除可见区域与自遮挡问题对局部坐标系的构建误差。

表1 局部坐标系偏差密比表(单位:度(°))Tab. 1 Contrast table of errors of two local coordinates(Unit: °)

图10 局部坐标系偏差密比图Fig. 10 Contrast diagram of errors of two local coordinates

2.2 旋转目标物体抓取密比实验

将本文算法与Lei等人[9]的方法进行了对比,验证了该方法通过一次拍照可以有效地处理目标物体相对位姿倾斜的问题。Lei等人[9]的方法以视角投影方向为抓取方向,当非旋转体类物体与视角投影方向存在一定偏转角时(如图10(a)所示),即判别为不可抓,需要根据物体方向移动至与之平行的位置进行二次拍照。现实场景中物体与相机视角投影方向存在一定偏差的现象是普遍存在的,移动相机,进行二次拍照的方式效率较低,同时还存在目标视角点超出机械臂工作空间的情况。本文通过对局部坐标系的更高精度的构建,可以成功的实现对倾斜物体的抓取。

图11 有一定偏转角度物体抓取密比Fig. 11 Contrast grasping tests in a deflection angle

2.3 不同物体抓取实验

本文最后通过仿真的形式对多类物体的多种放置位姿情况下的抓取进行实验。图(12)展示了不同物体以及不同姿态下,对未知物体的抓取情况。实验表明该算法可以有效地选择各类物体合适的抓取点,成功地实现对各类物体的抓取操作。对于同一物体的不同的放置姿态,该算法还可以根据物体与相机的相对位姿信息,调整抓取的方向以及抓取点,以提高抓取操作的有效性和成功率,充分验证该算法的有效性。

图12 不同物体初始状态及结果Fig. 12 Result of different object in different initial states

3 结束语

本文提出了一套基于单点云信息的未知物体快速抓取策略生成算法。利用ROS试验仿真平台验证了该方法的可行性和有效性,该算法仅需拍照一次即可地实现对多数物体的有效抓取,操作更为便捷。与多视角条件下的抓取操作相比,该算法不需要将机械臂移动至不同的拍照点,同时不需要进行多点云的融合,即可以实现机器人操作的快速性实时性,增强了机器人等自主操作系统对未知物体的处理能力。

[1]Righetti L,Kalakrishnan M,Pastor P,et al. An autonomous manipulation system based on force control and optimization[J].Autonomous Robots,2014,36(1-2): 11-30.

[2]张书涛,张震,钱晋武. 基于 Tau 理论的机器人抓取运动仿生轨迹规划[J]. 机械工程学报,2014,50(13): 42-51.

[3]杨扬. 基于机器视觉的服务机器人智能抓取研究[D]. 上海交通大学,2014.

[4]Geidenstam S,Huebner K,Banksell D,et al. Learning of 2D grasping strategies from box-based 3D object approximations[C]//Robotics:Science and Systems. 2009,2008.

[5]Srinivasa S,Ferguson D I,Vande Weghe M,et al. The robotic busboy:Steps towards developing a mobile robotic home assistant[J]. 2008.

[6]Miller A T,Knoop S,Christensen H I,et al. Automatic grasp planning using shape primitives[C]//Robotics and Automation,2003. Proceedings.ICRA'03. IEEE International

Single-view Point Cloud Information Based Fast Grasping Approach of Unknown Objects

YE Xian*,HU Jie,SHAO Quanquan,QI Jin,FANG Yi
(School of Mechanical Engineering,Shanghai Jiaotong University,Shanghai,200240,China)

With the explosive growth of objects in daily life,the autonomous operation of unknown objects is becoming one of the most essential skills of intelligent robots,especially the intelligent service robots. In this article,we studied the method of fast generation of grasp point with only single-view point cloud information. This approach does not need any prior-knowledge of the objects to be captured,and has the characteristics of wide adaptability and no need of multi-point perception. Above all,the point cloud obtained by RGB-D sensor was processed with filtering,segmentation,coordinate transformation,point cloud projection and principal component analysis (PCA) to obtain a local object-centric coordinate system. Subsequently,we could acquire the suitable grasp point according to the view angle of sensor,pose of the object and boundary information of projected points of object along the y-axis. Eventually,the simulation experiments were conducted on the simulate platform ROS to verify the feasibility and availability of this process.

point cloud information; principal component analysis; unknown objects; selection of grasp point

TP242;TP391.41

A

1672-9129(2017)06-0015-05

10.19551/j.cnki.issn1672-9129.2017.06.005

叶仙,胡洁,邵全全,等. 基于单点云信息的未知物体抓取方法[J]. 数码设计,2017,6(6): 15-19.

Cite:YE Xian,HU Jie,SHAO Quanquan,et al. Single-view Point Cloud Information Based Fast Grasping Approach of Unknown Objects[J].Peak Data Science,2017,6(6): 15-19.

2017-02-15;

2017-03-18。

国家自然科学基金项目(51675329,51675342),机械系统与振动国家重点实验室课题(GZ2016KF001,GKZD020018),上海宝山区科委项目(16-C-3)上海交通大学“医工交叉研究基金”(YG2014MS12),特种车辆及其传动系统智能制造国家重点实验室开放课题(GZ2016KF001)

叶仙(1991.10-),女,安徽桐城,硕士研究生,主要从事机器视觉、图像处理,上海交通大学机械与动力工程学院。

Email:913718428@qq.com

猜你喜欢

手爪投影坐标系
解变分不等式的一种二次投影算法
基于最大相关熵的簇稀疏仿射投影算法
一种气动软体手爪熔模铸造工艺研究
找投影
找投影
针对旋转手爪的结构设计与分析
解密坐标系中的平移变换
坐标系背后的故事
中科大机器人柔性手爪在机器人世界盃上获奖
基于重心坐标系的平面几何证明的探讨