《Point Feature Extraction on 3D Range Scans Taking into Account Object Boundaries》——译文

 

    本文是对 边界提取、NARF 论文的翻译,非正式翻译,仅供个人学习理解,文中很多逻辑思想部分还不甚明晰,或是部分术语翻译不够准确,还望与更多的人一起探讨;

 

 

翻译文档来源:https://www.researchgate.net/publication/221069159_Point_feature_extraction_on_3D_range_scans_taking_into_account_object_boundaries

 

注:

    1、本文中将 “range”译为“深度”;

    2、“【】”内的内容为个人理解补充或原文;

    3、“range value patch”指的是深度图像中的一小块,如下图所示:

    

 

作者:

     Bastian Steder   

     Radu Bogdan Rusu 

     Kurt Konolige 

     Wolfram Burgard

 

Abstract——

    本文研究了三维点云数据中目标识别和姿态识别的特征提取问题。提出了一种基于从任意3D点云所创建的深度图像的新的兴趣点提取方法,该方法显式地考虑通过前景到背景的转换而被标识出来的对象的边界。此外,我们还提供了一个考虑相同信息的特征描述符。我们已经实现了我们的方法,并进行了严格的实验,我们分析了各个组件的重复性和匹配能力,并评估了基于点特征的目标检测方法的有效性。

 

 

I. INTRODUCTION

    在物体识别或物体映射应用中,与应用的表现效果密切相关的一个问题就是从不同设备【对同一物体】所抓取的数据中找到相似部分的能力。  一种流行的方法是估计“特征”,“特征”可以很好地以编码后的表示信息来描述数据块,也可以有效地执行不同数据区域之间的比较。  在二维或三维感知中,这类特征通常是围绕一个点的局部特征,即对于场景中的给定点,用它的附近区域的数据来确定相应的特征。  整个任务通常细分为两个子任务,即识别适当的点(通常称为兴趣点或关键点),以及通过某种方式将该点附近的信息编码为描述符或描述向量。

    兴趣点的重要优点是,它们大大减少了查找两个场景之间的对应所需的搜索空间和计算时间,而且它们进一步将计算重点放在更可能与匹配过程相关的区域。  令人惊讶的是,在过去的一段时间内,与视觉相比,对原始3D数据兴趣点提取方面的研究很少,而这是一个很好的研究领域。  大多数关于3D特性的论文只针对描述符来进行的。

    本文主要研究三维激光测距仪或立体摄像机获取的单一深度扫描【single range scans】,在单一深度扫描中,数据不完整且依赖于视点【viewpoint】。  我们选择深度图像【range image】作为代表数据的方式,因为它们反映了这种情况,并使我们能够从视觉领域借鉴一些思路。

    我们提出了一种新的兴趣点提取方法——法线对齐径向特征【Normal Aligned Radial Feature,NARF】,并给出了三维深度数据中点的特征描述符。  在设计兴趣点提取方法时考虑到两个具体目标:(i)所选点应位于曲面稳定的位置(以保证对法线的估计鲁棒性),且在邻近区域有足够的变化;(ii)由于我们关注局部视图,所以我们想要利用对象边界,即从某个角度看到的对象的外部形状。  外部形式通常非常独特,因此在兴趣点提取和描述符计算中显式地使用它们可以使整个过程更加健壮。  为此,我们还提供了一种提取这些边界的方法。  据我们所知,目前还没有一种提取特征的方法可以解决所有这些问题。

Fig. 1.     兴趣点提取程序。(a)有两张椅子在前方的办公室场景的深度图像,其中椅子在深度图像中已经被提取出的边界点标记过;(b)基于边界和主曲率的曲面变化评分;(c)支持大小为20cm的带标记的兴趣点的兴趣值。注意椅子的角是如何在这个比例中被检测为兴趣点的;(d)支持大小为1m时,带有标记的兴趣点的兴趣值。注意,与(c)相比,椅子靠背的整个表面在这个比例上包含一个兴趣点;

    图1展示了我们的兴趣点提取过程的概要。方法的实现可以在一个开源许可下获得。

    [The complete source code including instructions about running the experiments presented in this paper can be found at http://www.ros.org/wiki/Papers/ICRA2011    _Steder]【已失效,页面不存在】

    论文组织如下。在第2节讨论了相关工作之后,会在第3节介绍边界提取方法。接着,在第4节描述兴趣点的提取,并在第5节介绍NARF描述符。最后会在第6节和第7节展示实验结果。

 

 

II. RELATED WORK

    在二维计算机视觉领域,提取兴趣点和创建稳定描述符的两种最流行的系统是SIFT 【Scale Invariant Feature Transform】[7] 和 SURF (Speeded Up Robust Features) [2]。兴趣点检测和描述符都是基于局部梯度的,提取图像patch的唯一方向,实现旋转不变性。我们的方法是基于三维数据,而不是单目相机图像。与相机相比,3D传感器(如激光传感器)提供深度信息,而且对光照条件不太敏感。此外,还可以直接获得尺度信息。然而,它的一个缺点是,就对象的唯一性而言,单独的几何图形表达能力较差。虽然SIFT和SURF不是直接作用于3D扫描数据,但是许多通用的思想,如梯度的使用和特定方向的提取等,在3D数据中也是有用的。

    最流行的描述3D数据的描述符之一是Johnson[6]提出的自旋图像【 Spin-image】,它为场景中的每一个点计算基于该3D点周围数据所构成曲面的2D表示。在我们之前的工作[14]中,我们发现用深度值patch作为特征在目标识别系统中比自旋图像能显示出更好的可靠性。我们在本文中提出的特征是建立在这些深度值补丁【range value patches】的基础上,并展现了更好的的匹配能力(参见第7节)。自旋图像也没有特意地考虑空白空间(如,超出对象边界的部分)。举例来说,对于一个正方形平面,中心点和角点的自旋图像是相同的,而本文描述的特征能够区分这些点。

    引例[15]中提出了一种基于从深度图像中提取轮廓的物体检测的方法。所提出的特征是基于快速特征css【fast Eigen-CSS】方法和监督学习算法。从某种意义上说,这与我们的工作相似,作者也试图明确地使用边界信息。但是,由于只将系统限制为边界,因此没有考虑到有关对象结构的有价值的信息。此外,基于完整轮廓的描述符提取,会奖励系统对遮挡情况的鲁棒性。

    Huang等人[5]开发了一种破碎三维实体的自动重组系统【automatic reassembly of broken 3D solids】。为此,作者还提取了三维结构的边界,在这种情况下,用于检测人脸集。该方法基于曲面曲率检测边缘的周期。然后对检测到的表面零件进行匹配,找到相应的碎片零件。在我们的应用程序中,边界检测发现从前景到背景的变化,并在兴趣点检测和匹配中使用此外形,而将3D结构划分为然后单独匹配的面。许多方法在每个数据点中详尽地计算描述符或使用简单的采样方法([6],[3],[8]),从而引入不必要的开销。 在[4]中,作者提出了一种使用在数据中某些兴趣点估计的积分体积描述符【Integral Volume Descriptors,IVD】进行全局配准的方法。 在IVD空间中使用自相似性方法提取这些兴趣点,意味着将点的描述符与其邻居的描述符进行比较以确定存在显着变化的区域。 虽然这种用于兴趣点提取的方法明确地考虑了描述符,但是对于更复杂的描述符来说变得不切实际,这些描述符的提取成本更高。 Unnikrishnan [16]提出了一种兴趣点提取方法,在无组织的3D点云中进行自动尺度检测。 但是,这种方法不考虑任何与视点【view-point】相关的信息,也不会尝试将兴趣点放在稳定的位置。在[12]中,我们提出了一种基于兴趣点在生长点邻域的持久性【persistence in growing point neighborhoods】来选择兴趣点的方法。 给定PFH(点特征直方图)空间[11],对于几个不同的半径估计多个描述符,并且仅保留 r_i 和r_(i+1)之间的相似的描述符。 本文中描述的方法在兴趣点的估计上快了几个数量级。

    在我们之前的工作中,我们还使用了二维计算机视觉文献中已知的兴趣点提取方法,例如适用于距离图像[14]、[13]的Harris检测器或高斯差分。虽然这些方法被证明是健壮的,但是它们有几个缺点。例如,估计的关键点往往直接位于对象的边界或在结构上有重大变化的其他位置。虽然这些区域确实是场景中有趣的部分(interesting parts),但是直接将兴趣点放在那里可能会导致描述符中的高度不准确,因为这些通常是不稳定区域,例如关于法线估计。 我们在这里描述的工作的目标是找到在显着变化附近并且同时在表面的稳定部分上的点。

 

 

III. BORDER EXTRACTION

A.  Motivation

    在我们的特征提取过程的过程中,一个重要的需求是显式处理深度数据中的边界。边界通常是在从前景到背景的过程中,以非连续性的隔断出现(Borders typically appear as non-continuous traversals from foreground to background)。在此基础之上,主要有三种点是我们需要识别的:“object borders”,物体本身固有的边缘可见点(可表述物体轮廓的点);“shadow borders”,在背景中,与遮蔽区域相邻接的点(points in the background that adjoin occlusions);“veil points”,物体边界与阴影边界之间的点(interpolated points between the obstacle border and the shadow border)【这里考虑将其译作雾点】。Veil points 是激光雷达获得的三维距离数据中的一个典型现象,正确处理Veil points可以明显提高匹配和分类结果。图2显示了上述中不同类型的(边界)点。

B.  Overview

    有一些不同的指示器可用于检测深度图像中的那些边界,例如突变的角度或法线的变化【acute impact angles or changes of the normals】。在我们的实际实验中,我们发现最重要的指标是相邻点之间距离的变化,它对噪声和分辨率的变化也具有很强的鲁棒性。我们将使用此特征根据以下步骤对边界进行分类。对于每一个图像点,我们观察它的局部邻域

并且:

  • 通过启发式的方法来找到该点与其不越过边界的邻域点的3D距离;

  • 使用此信息来计算该点为边界点的可能性的得分;

  • 【若判定该点为边界点】确定该边界点所属的类别;

  • 执行非最大抑制以找到精确的边界位置【perform non-maximum suppression to find the exact border position】;

C.  The Algorithm in Detail

    请注意,由于我们使用的是深度图像,所以每个点都有一个2D位置(图像中像素的位置)和一个3D位置(在世界坐标系中测量的位置)。点与点之间的距离也是如此【像素距离和真实距离】。当我们提到二维距离时,我们指的是图像中像素之间的距离,而三维距离指的是三维点之间的欧氏距离。

    首先,我们查看每一个图像点,并应用启发式方法来找出某点与它的二维邻域点(属于同一曲面)之间的三维距离。为了检测这一点,我们使用了一个类似于双边滤波的概念[1]。对于深度图像中的每一个点P_i,我们都创建一个以p_i为中心点,边长为 s 像素的方形区域,以此来找到该点的邻域点{n_1,n_2,...  ,n_s^2};然后计算这些邻域点与P_i的 3D距离 {d0,d1,...,d_s^2},并将所有的距离值按照递增序列排序得到{d'_0,d'_2,...,d'_s^2}。假设至少有M个点与P_i在同一个曲面上,然后用 δ = d′_M 来表示p_i与 s 像素方形范围内同曲面邻域点的典型距离值。在本项目中,我们选取 s=5 以及,这是即使在判定直角顶点时,仍然能得到正确判定的最大值。接下来,为图像中的每个点计算四个分值,以此来描述在该点的上、下、左、右方向存在边界的概率;本文中,我们将只解释向右的方向的程序,因为其他三个方向都是相应地执行的。

    用 p(x,y) 表示深度图像坐标为(x,y)处的点,然后用下面的式子来计算该点右侧 部分邻域点 的平均3D距离值:

m_p是用于取平均的点的数量(在本项目中,取值为3)。出于对噪声和Veil points的考虑,【在后续的判定计算中】我们用这个平均值,而不是直接使用 p(x+1,y) 点的值。接着,计算3D距离,然后用基于d_right 和 δ 的公式来计算分值:

由此,可以计算得到一个处于区间 [0, 1) 的分值,其中,高分值表示邻域点的典型距离和到右边点的距离之间的差值很大,意味着很可能是边界。

    接下来,我们对评分值进行平滑操作,以实现连续边界,避免传感器噪声的干扰。

    为了确定当前点p(x,y)是属于前景还是背景,我们需要判断 p(x,y) 的深度值(该点到传感器的距离值)与所计算出的p_right 值的大小。如果p(x,y)<p_right,则表示是该点是物体边界/障碍物边界【obstacle border】;反之,则表示该点是阴影边界【shadow border】。

    对于所有可能的物体边界点p(x,y),要找出其对应的右侧阴影边界点【本文中只对右侧的过程进行描述,其余方向的处理与之相同】,选择在最大2D距离【即上述 m_p,在本项目中,取值为3】内得分【S_shadow】最高的点。根据这个潜在阴影边界的可能性分值 S_shadow ,我们通过以下的式子来稍稍减少 S_right 的值:

通过这种方式,对于小边界值 S_border,我们将得分降低多达10%。

    最后,我们检查 S'_right 是否高于所设阈值(在本项目中,阈值为0.8),以及是否为 p(x-1,y) 和 p(x+1,y)的【边界概率得分 S'_right 】最大值。如果是这种情况,我们将p(x,y)标记为一个障碍物边界/物体边界,上述所找到的对应点标记为阴影边界,而在障碍物边界和阴影边界之间的所有点都标记为Veil points【这里考虑将其译作雾点】。图1(a)展示了这一阶段的输出。在图中,不同类型的边界点用不同的颜色来表示。

【这里再补充一个特写:】

 

 

IV. INTEREST POINT EXTRACTION

A. Motivation

    兴趣点的检测是减少特征提取的搜索空间,将注意力集中在重要结构上的重要步骤。我们对兴趣点提取过程有以下要求:(i)它必须考虑到边界和表面结构的信息;(ii)它必须选择能够被可靠检测到的位置,即使从另一个角度观察对象【同样能够检测到该位置】;(iii)这些点必须位于提供稳定区域以进行法线估计或一般描述符计算的位置。

B. Overview

    稳定的兴趣点需要能检测到局部邻域表面的显著变化,即使是从不同的视角观察,这种显著变化也应该能在同一位置被很好地检测到。这通常意味着该区域中的表面变化存在显著不同的主导方向。为了抓住这一点,我们需要:

  • 观察每一个图像点的局部邻域,并确定这个位置的表面变化的程度和这个变化的主导方向,也包括关于边界的信息;

  • 查看每个图像点周围的主导方向,并计算出一个兴趣值用以表示:(i)这些方向,相互之间有多大的不同,(ii)当前这个点的表面变化了多少(意思是它有多稳定);

  • 对兴趣值作平滑处理;

  • 进行非极大值抑制【non-maximum suppression】处理,以找到最终的兴趣点;

    这一过程中最重要的参数是support size σ,这是包含了兴趣点的空间球体范围的直径【虽然没有明确描述,但是根据文档后边的描述可知,当前正在判定的点为该球体的球心位置】,球体范围内所有数据点的主导方向都会被用来计算兴趣值。这个值稍后将用于确定在计算描述符时要考虑哪些点。σ 值的选择,很大程度上取决于我们要寻找的结构的大小。一般来说,值越高,用于计算特征的点就越多,从而使特征更加稳定。但是在目标识别的情况下,为了对部分遮挡具有一定的鲁棒性,它【由σ所确定的空间球体的大小】应该小于目标物体本身。我们在实验中发现,物体大小【猜测为直径】均值的25%是一个合理的值。对于个体尺寸差异较大的物体,可能需要使用不同的尺度值σ。

C. The Algorithm in Detail

    我们从计算上一步中提取到的物体边界的方向开始。对于每个点,我们都知道在它的顶部、右侧、左侧或底部是否有边界。 因此,每个边界像素已经以45°的步长编码边界的方向。请注意,可以通过对局部邻域中的多个边界像素求平均来改善对该量的估计。请进一步注意,我们使用球面坐标中的距离图像,当在2D中可视化时,它们看起来变形。如果估计将直接在距离图像空间中进行,则该失真将影响图像本身中的2D方向的计算。为了避免这种情况,我们使用局部法线对与像素对应的三维点进行计算。我们在点的局部2D邻域上使用PCA估计法线,其中我们忽略具有高于2δ(参见第3节的C部分)的3D距离的邻域点。

    由于我们还想考虑与边界无关的曲面上的变化,我们计算每个点的主曲率方向,这给出了曲率的主方向和幅度λ(最大特征值)。图像中每一点 P_i 都有一个相关联的主方向 v,这是每一个边界点的边界方向和每一个其他点的主方向。所有的方向都会得到一个权重值w,对于每个边界点w为1,对于每个其他点w为 [1-(1-λ)^3](该表达式向上调整幅度,同时将其保持在[0,1))。图1(b)显示了权重值w。

【这里补充一个特写:】

    到目前为止,所有的计算都是在固定的2D像素半径范围邻域内进行的。现在开始,真正的3D相关的支持范围σ将会被使用。只要在球体内部有足够的直径为σ的点,这将使该方法对分辨率,观察距离和非均匀点分布不变。

    对于每一个深度图像点P,我们观察它所有的邻域点{n_0,...,n_N},这些点都是在支持范围【球形范围】内(3D距离小于σ/2)的点,并且其中并不包括边界点。每一个上述的邻域点 n_i 都有一个主方向 V(n_i) 以及一个权重值 W(n_i)。为了回到2D方向向量,这有助于我们减少来自法向量估计的噪声的影响,我们将主方向投影到垂直于从传感器到p的方向的平面上。这使得我们得到了针对每一个 n_i 邻域点的一维角度 α(n_i)。

    由于两个相反的方向没有定义唯一的位置,并且由于主曲率分析不提供唯一的方向,我们以下列方式变换角度:

进一步利用有界高斯核对所有权值和角进行平滑处理。

    现在,我们根据如下方式来定义点 p 的兴趣值I(p):

    如果p点有高权重(强烈的表面变化)的邻域点,那么 I_1这一项,会将 I 的值向下缩放,从而达到我们只在局部稳定的曲面上放置【选取】兴趣点的目的;如果在附近存在一对具有非常不同且强的主方向的邻居,则 I_2 这一项会增加兴趣值。在每个图像点计算【兴趣值】 I 后,我们对图像上的值执行额外的平滑处理。

    最后,我们选取所有的兴趣值 I 大于所设阈值的点作为兴趣点。如图1(c,d),展示了σ参数的两种不同取值的结果,并标记了相对应 σ 值下的兴趣点。注意,相对于较小的支持范围【support size】时兴趣点在椅子边角处的分布,当该值较高时,它们更多地向中间部分移动。

【这里补充一个特写:】

【 (c)中support size为 20cm,(d)中support size为 1m 】

 

 

V. THE NARF DESCRIPTOR

A. Motivation

    特征描述符以可以有效地比较相似性的方式描述兴趣点周围的区域。我们开发NARF描述符的目标是:(i)它捕获了占用空间和自由空间的存在【the existence of occupied and free space】,从而可以描述表面上的部分以及物体的外形;(ii)在兴趣点位置上具有较强的抗噪声能力;(iii)它使我们能够在该点提取唯一的局部坐标系。  与我们之前使用深度值补丁【range value patches】的工作相比,主要是(ii)和(iii)需要改进。对于后者,可以使用该点的法向量,这样就可以确定法向量绕法线的旋转。

    虽然3D中的许多特征描述符对于围绕法线方向的旋转是不变的 (比如自旋图像【spin images】[6]),甚至是完整的3D方向[10],但是出于多种原因了解这个方向的信息是有帮助的。举例来说,我们可能希望能够不使用唯一的方向,例如,如果我们仅搜索具有固定的patch方向的对应关系【correspondences with a fixed patch orientation】,如在轮式机器人搜索其地图与环境之间的对应关系的情况下。机器人的滚动不变性可能会不必要地增加搜索空间的大小,因为机器人大部分时间都是在滚动角为零的情况下工作【An invariance regarding the robot’s roll might unnecessarily increase the size of the search space, since the robot will operate at roll angle zero most of the time. 】。另一方面,在使用唯一方向的情况下,它能够对特征之间的一致局部坐标系进行额外的过滤。NARF描述符使我们能够提取法线周围的唯一方向。其基本思想类似于SIFT[7]和SURF[2]。 然而,与其2D兄弟姐妹不同,这种是方向与法线一起定义了兴趣点位置处的完整6DOF变换【Yet, unlike its 2D siblings, this orientation together with the normal defines a complete 6DOF transformation at the position of the  interest point.】。

B. Overview

    要计算兴趣点上的NARF描述符,我们要:

  • 计算该点基于法线对齐的深度距离值补丁,这是一个小的深度图像,观察者观察法线上的点【calculate a normal aligned range value patch in the point, which is a small range image with the observer looking at the point along the normal】;

  • 将星型覆盖到此补丁上,其中每个光束对应于最终描述符中的一个值,该值捕获当前光束下像素的变化量【overlay a star pattern onto this patch, where each beam corresponds to a value in the final descriptor, that captures how much the pixels under the beam change 】;

  • 从描述符中提取一个唯一的方向【extract a unique orientation from the descriptor】;

  • 并根据此值移动描述符,使其不随旋转而改变【shift the descriptor according to this value to make it invariant to the rotation】。

上述中,最后两个步骤是可选的。

    请参考图3(a,b)作为流程的可视化示例。

图3. 

  • (a):前景中带扶手椅的示例场景的深度图像。 黑色十字标记了兴趣点的位置。

  • (b):可视化描述符的计算方式。图中的上半部分显示了扶手椅右上角的深度值补丁【range value patch】。实际的描述符显示在底部。描述符的20个单元格中的每个单元格对应于patch中显示的一个光束(绿色),其中两个对应点用箭头标记【顺时针方向】。指向右上角的附加(红色)箭头显示提取的主导方向。

  • (c):描述符到场景中每个其他点的距离(越亮值越高)。注意,主要右上角的矩形角值较低。【Note that mainly top right rectangular corners get low values.】。

C. The Algorithm in Detail

    如前所述,我们构建了之前用作描述符的法线对齐深度值补丁。这些可以通过创建局部坐标系来计算,该局部坐标系在兴趣点位置为零,z轴面向法线方向,y根据世界坐标系中的垂直向量定向【Those can be calculated by creating a local coordinate system with zero in the interest point position, the z-axis facing in the normal direction and y being oriented according to the upright vector in the world coordinate frame.】。然后我们将支持半径为 σ/2(参见第4节B部分) 范围内的所有点都转换到这个坐标系中。得到的x和y坐标定义了一个点所在的描述符的单元格,所有z值上的最小值是单元格的值【The resulting x and y coordinates define the cell of the descriptor in which a point falls, and the minimum over all z values is the value of a cell.】。没有3D点落入其内的单元格将会被赋予最大值 σ/2。对所有被用于计算描述符的点使用PCA【主成分分析】方法来得到法线,这样使得法线的稳定性达到最大化。这个图像块【image patch】的【分辨率】大小应该足够高,以保持足够的描述结构,但又足够低,不能超过典型的扫描分辨率。在本项目中,我们选择10x10像素的大小。为了防止在原始扫描分辨率较低的区域出现问题,可能需要在单元之间插补或使用射线跟踪。下一步,我们对图像块【image patch】进行高斯模糊处理。然后我们投射一个星形图案,其上有n个光束(见图3(b)),其中n将是NARF描述符的大小。本项目中,我们选择 n = 36,即光束之间的角度间隔为10°。对于每个光束b_i,我们选择位于其下的单元格【像素】{c0,...,c_m},其中c0是图像块【image patch】的中间,其余按照到c0的距离排序。第 i 个描述符单元格 D_i的值将是:

其中w(c_j)是一个基于距离的权重因子,它将patch的中间【the middle of the patch】权重赋值为2,然后向着patch的外边缘【the outer edges of the patch】减小到 1。  对 D'_i 的直观理解是:表面变化越接近中心且变化越强,则光束值偏离0的程度越大【the closer to the center a change in the surface is, and the stronger the change is, the more the beam value will deviate from 0】。从 D'_i 到 D_i 的步骤是为了标准化,并将每个单元格的值缩放到 [-0.5,0.5]。请参考图3(a,b) 。最终的描述符以可视化的形式展现在(b)图的底部,箭头标记了相应的光束。位于平面上的光束值较低,而越过边界的光束值较高。

【这里补充一个特写:】

    到目前为止,描述符对于绕法线旋转并不是不变的。现在,我们尝试为描述符找到一个或多个唯一的方向。为此,我们将可能的360°离散化为多个组并创建直方图。对应于角度β的直方图单元格的值是【The value for a histogram cell  corresponding to angle β is】:

其中,γ_i 是描述符中对应的第 i 个单元格的角度。我们选择最大直方图bin作为patch的主导方向【We select the histogram bin with the maximum as the dominant orientation of the patch】。如果有另一个单元格的值超过最大值的80%,我们将使用此方向创建第二个特征。现在我们可以移动描述符来创建旋转不变的版本。

    现在可以使用标准距离函数轻松地比较得到的描述符。我们用曼哈顿距离【Manhattan distance】除以描述符中单元格的数目,以此将距离值归一化到 [0,1] 之间;图3(c)显示了距离图像中所选点的所有描述符距离【Figure 3(c) visualizes all the descriptor distances to the selected point in the range image】。

【这里补充一个特写:】

 

 

 

VI. EXPERIMENT - INTEREST POINT STABILITY

    我们这次实验的目的是分析兴趣点位置相对于尺度变化(到物体的距离)和视角的稳定性。为此,我们选择了七个以完整点云形式存在的对象模型【完整的点云,即无任何角度的遮挡】。这些模型代表了非常不同的对象类型,包括家具大小的对象和桌面对象(模型列表见图4)。

为了能够同时评估不同大小的对象,我们将所有模型缩放到一个直径为1.0 m的边界球大小。作为支撑尺寸【support size】,我们使用0.25 m,这个尺寸足够大,可以覆盖模型的大部分重要结构,但又足够低,可以考虑部分遮挡。对于每一个物体,我们从物体周围不同的角度和距离模拟了50个无噪声视图。然后我们模拟100个不同的视图,在点位置上有额外的噪声(参见图5(c),标记了兴趣点位置的视图)。然后,我们将第一组视图中的兴趣点位置与另一组视图的每个视图进行比较。

图5:

(a)该图展示了物体对象的兴趣点检测在 不同视角以及不同比例情况下的可重复性(对应上图5条实线图)。比例为1:1表示在同一距离观测物体,比例为1:2表示在两倍的距离处观测物体。虚线显示了有多少个样本可以进行平均。这个数字随着角度的增加而下降,因为实际上从两个角度都能看到的点对越来越少。实心黑线是从模型表面随机点到下一个兴趣点的平均距离,给出了可重复性的最小值,低于此值则无意义【The solid black line follows from the average distance of a random point on the models surface to the next interest point, giving a minimum value for the repeatability, below which the value is meaningless. 】。

 

(b)与(a)相同,但是基于每个对象模型。常数值虚线对应(a)中的实黑线。

 

(c)用于创建图(a)的办公椅和杯子的两个模拟的视图。从该视图中提取的兴趣点也被标记在了图像上。

    我们根据[16]中提出的方法计算兴趣点提取的重复性,该方法是计算机视觉文献[9]中常用方法的三维扩展。对于对象的一个视图中的每个兴趣点 i_1,我们在另一个视图中搜索最近的兴趣点 i_2 并计算两个球体之间的交点的比率,其中球体半径r =σ/2:

其中 d 为两个兴趣点之间的三维欧氏距离。为此,我们只考虑未包含的点,这意味着我们检查点本身是否受到当前视图对的自遮挡的影响,如果是这样,则拒绝它【For this purpose, we only take unoccluded points into account, meaning we check if the point itself is influenced by self occlusion regarding the current pair of views, and reject it if this is the case】。

    图5(a)显示了所有对象兴趣点位置的交叉比较结果。显示的得分值取决于角度视点的变化和观察距离的不同(导致深度图像的比例尺不同)。虽然高比例尺【scale】的变化对兴趣点稳定性有明显的负面影响(参见不同比例尺下的图像),但与角度变化相比,这种影响似乎较小,这就是为什么我们将从现在开始忽略比例尺的变化,以节省空间。虚线黑线表示有多少个样本可用来计算平均值。这个值自然会随着角度的增加而减小,因为从两个角度实际可见的点越来越少。接近底部的实心黑线表示对象表面上随机点的可重复性值,因此定义了一个最小值,在此值之下,结果不再有意义。从图中可以看出,兴趣点提取在较宽的视点变化范围内是相对稳定的。当角度变化小于20°的时候,兴趣点在support size 的球体范围下平均有70%的公共部分,在小于60°的时候,大约有55%。

    图5(b) 显示的是对每个单独的模型的相同的分析。与其余物体对象相比,杯子有着不同的表现。这是因为它在很大范围内是旋转对称的,使得兴趣点的位置更加依赖于视点。100°和160°之间的值增加是由于从右边框的另一侧看到的杯子左边缘的兴趣点再次被提取。小车、椅子和先锋机器人【pioneer robot】模型的虚线值更高。这主要表明在这些模型上提取了更多的兴趣点,导致表面上的随机点平均更接近兴趣点位置的情况。

 

 

VII. EXPERIMENT 2 - MATCHING CAPABILITY

    在这个实验中,我们想测试我们的NARF描述符的能力,以匹配从对象模型到包含模型的场景中的特征。为此,我们在典型的杂乱办公环境中使用3D激光测距仪收集了10个场景,并使用桌面场景的立体摄像系统收集了10个场景。然后我们人为地将模型(包括3D点位置上的噪声点)添加到这些场景中——扶手椅、手推车、椅子、机器人和泰迪熊添加到办公室场景中,订书机和杯子添加到桌面场景中,从而创建了70个场景,每个场景中都有一个已知对象。在这个过程中,物体可以出现在任意的偏航和x,y位置,而高度被限制在地板/桌面,并且滚动和俯仰在他们的自然方向【In this process, the objects could appear in an arbitrary yaw and x,y positions, while the hight was restricted to the floor/tabletop and roll and pitch were in their natural orientations. 】。后一步是为了能够在没有旋转不变性的情况下测试我们的描述符。图6显示了创建的场景的一些示例。

图6.  所创建的场景的示例。从左到右依次是:在办公室场景中加入扶手椅、在办公室场景中加入泰迪熊、在桌面场景中加入订书机、在桌面场景中加入杯子。

    为了使物体与场景相匹配,我们从模型中采样的姿势与地面实况之间有0°到50°的不同【To match the objects against the scenes, we sampled poses from our models that differed from the ground truth poses between 0° and 50°】。

    得到的真阳性和假阳性的数量在图7(a)中总结为ROC(相对操作特征)【Relative Operating Characteristic】曲线。请注意对数刻度,它更好地显示了图中有趣的部分,左下角。假阳性【false positive】的绝对值【absolute number】远远高于真阳性【true positive】的绝对值,这使得假阳性比例高的地区用处不大。较厚的图标记区域,其中真阳性与假阳性的数量低于1:10。标记为NARF的所有点的图是针对我们在每个图像点处提取的NARF特征描述符,而不使用兴趣点。标记为NARFs int. points的图显示了NARF特性的性能和兴趣点【The plot marked NARFs int. points shows the performance of the NARF features together with the interest points.】。标记为NARFs(ri) int. points的绘图用于NARF描述符的旋转不变版本【The plot marked NARFs(ri) int. points is for the rotational invariant version of the NARF descriptor】。标记为RVPs int. points的图使用我们在以前的工作[14]、[13]中使用的范围值补丁作为特征描述符【The plot marked RVPs int. points is using the range value patches that we used in our former work [14], [13] as feature descriptors】。从图中可以看出,兴趣点相对于随机点位置有明显的改善。此外,基于NARF的旋转不变版本和旋转变体版本的兴趣点描述符,其表现要优于RVP描述符。

图7:

(a)此图显示了特征匹配的ROC曲线,其中描述符距离的阈值从左下角到右上角增加。请注意,坐标轴是对数的【logarithmic】。图中直线越高,性能越好。打印得更粗的图的部分标记区域,其中真阳性和假阳性之间的比率(绝对数量)优于1:10。

 

(b)【The average number of true/false poses extracted from the feature matches for all objects.】

 

(c)【The average number of true poses extracted from the feature matches per object. To account for the symmetry of the cup, the plot marked cup (wrong rot) gives the number of poses that are correct regarding (x, y, z)-position, but not necessarily regarding orientation.】

    为了评估该系统是否可以用于目标识别,我们使用提取的特征匹配来实际计算目标的姿态。由于每个特征都编码一个局部6DOF【6自由度——Six degrees of freedom】坐标系,因此一个特征匹配就足以计算出目标的位置和方向。我们为每一个描述符距离小于0.05的匹配都计算了其姿态。图7(b)显示了一个对象和一个场景的正确姿势和错误姿势的平均数量。如果物体姿势与真实姿势相比的误差低于平移物体半径的0.3倍且旋转时【误差】低于15°,则物体姿势被归类为正确。对于20°以下的角度差异,通常有2个正确的姿势和10个错误姿势。这将是一个空间验证步骤,以拒绝这些假阳性。

    图7(c)显示了每个使用对象模型的真实姿态。扶手椅表现最好,因为它主要由大的矩形组成,在视角的适度变化下变化不大。杯状模型的性能最差,这是由于模型上的兴趣点数量较少,加上旋转对称结构。然而,不管方向如何,杯子的位置仍然可以找到,正如标记为 cup(wrong rot) 的图所示。

    我们还测试了匹配集中的哪个位置(按描述符距离排序)通常发生第一个正确的对象姿态。表 I 给出了每个对象的概述,取决于视点角度差α(a:扶手椅,ca:小推车,cu:杯子,oc:办公椅,pr:先锋机器人,s:订书机,tb:泰迪熊)。表中的第一个数字表示匹配集中第一个正确对象位置的平均位置(按描述符距离排序),第二个数字表示找到正确位置的速度。【As can be seen, for viewpoint changes below 20◦, the first correct pose can typically be found within 3 trials in the 80% where a correct pose could be found】。


表 I

 

 

VIII. TIMINGS

    深度图像创建,边界检测,兴趣点提取和特征描述符计算的平均时间分别为18.1 / 22.9 / 27.2 / 2.86 ms,适用于大小为115061的点云和深度图像分辨率为0.4°的办公场景,每个场景有104个特征。对于桌面场景,桌面场景的相同数字为26.4 / 5.41 / 6.85 / 0.989 ms,大小为88395的点云,深度图像分辨率为0.2°,每个场景有48个特征。这些值是在Intel I7四核处理器上获得的。

 

 

IX. CONCLUSIONS

    本文中,我们提出了一种新的从深度图像中提取特征的方法——NARF。NARFs是在表面基本稳定,但在邻近区域发生显著变化的点生成的。此外,它还明确使用了边界信息。在实际实验中,我们证明了NARF比我们之前在物体识别方面所使用的特征提供了更好的匹配结果,而这些特征反过来又胜过众所周知的旋转图像【spin images】。所有用于实验的软件和数据集都是开源的。

 

 

X. ACKNOWLEDGEMENTS

    作者非常感谢Willow Garage的每个人的帮助。这项工作部分得到了欧盟委员会的支持,合同号为FP7-231888-EUROPA和FP7-248258-First-MM。

 

 

REFERENCES

[1] A. Ansar, A. Castano, and L. Matthies. Enhanced Real-time Stereo Using Bilateral Filtering. 2nd Int. Symp. on 3D Data Processing, Visualization and Transmission (3DPVT), 2004.

[2] H. Bay, T. Tuytelaars, and L. Van Gool. SURF: Speeded Up Robust Features. In Proc. of the Europ. Conf. on Comp. Vision (ECCV), 2006.

[3] A. Frome, D. Huber, R. Kolluri, T. Bulow, and J. Malik. Recognizing objects in range data using regional point descriptors. In Proc. of the Europ. Conf. on Comp. Vision (ECCV), 2004.

[4] N. Gelfand, N. J. Mitra, L. J. Guibas, and H. Pottmann. Robust global registration. In Proc. of the third Eurographics symposium on Geometry processing, 2005.

[5] Q. Huang, S. Flory, N. Gelfand, M. Hofer, and H. Pottmann. Reassem-bling fractured objects by geometric matching. ACM Transactions on Graphics (TOG), 25(3):569–578, 2006.

[6] A. E. Johnson and M. Hebert. Using spin images for efficient object recognition in cluttered 3d scenes. IEEE Trans. Pattern Anal. Mach. Intell., 21(5):433–449, 1999.

[7] D.G. Lowe. Object recognition from local scale-invariant features. In Proc. of the Int. Conf. on Computer Vision (ICCV), 1999.

[8] B. Matei, Y. Shan, H.S. Sawhney, Y. Tan, R. Kumar, D. Huber, and M. Hebert. Rapid object indexing using locality sensitive hashing and joint 3D-signature space estimation. IEEE Transactions on Pattern Analysis and Machine  Intelligence, 28(1):1111 – 1126, July 2006.

[9] K. Mikolajczyk, T. Tuytelaars, C. Schmid, A. Zisserman, J. Matas, F. Schaffalitzky, T. Kadir, and L. Van Gool. A comparison of affine region detectors. Int. J. Comput. Vision, 65(1-2):43–72, 2005.

[10] R.B. Rusu, N. Blodow, and M. Beetz. Fast Point Feature Histograms (FPFH) for 3D Registration. In Proc. of the IEEE Int. Conf. on Robotics & Automation (ICRA), Kobe, Japan, May 12-17 2009.

[11] R.B. Rusu, Z.C. Marton, N. Blodow, and M. Beetz. Learning Informative Point Classes for the Acquisition of Object Model Maps. In Proc. of the 10th Int. Conf. on Control, Automation, Robotics and Vision (ICARCV), 2008.

[12] R.B. Rusu, Z.C. Marton, N. Blodow, and M. Beetz. Persistent Point Feature Histograms for 3D Point Clouds. In Proc. of the 10th Int. Conf. on Intelligent Autonomous Systems (IAS-10), 2008.

[13] B. Steder, G. Grisetti, and W. Burgard. Robust place recognition for 3D range data based on point features. In Proc. of the IEEE Int. Conf. on Robotics & Automation (ICRA), 2010.

[14] B. Steder, G. Grisetti, M. Van Loock, and W. Burgard. Robust online model-based object detection from range images. In Proc. of the IEEE/RSJ Int. Conf. on Int. Robots and Systems (IROS), 2009.

[15] S. Stiene, K. Lingemann, A. Nuchter, and J. Hertzberg. Contour-based object detection in range images. In Proc. of the Third Int. Symposium on 3D Data Processing, Visualization, and Transmission, 2006.

[16] R. Unnikrishnan. Statistical Approaches to Multi-Scale Point Cloud Processing. PhD thesis, Robotics Institute, Carnegie Mellon University, Pittsburgh, PA, May 2008. Chapter 4.

 

 

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值