书签 分享 收藏 举报 版权申诉 / 19

多模式场景中的三维对象的识别和姿势确定.pdf

  • 上传人:111****11
  • 文档编号:6213293
  • 上传时间:2019-05-21
  • 格式:PDF
  • 页数:19
  • 大小:1.39MB
  • 摘要
    申请专利号:

    CN201310418597.7

    申请日:

    2013.09.13

    公开号:

    CN103729643A

    公开日:

    2014.04.16

    当前法律状态:

    授权

    有效性:

    有权

    法律详情:

    授权|||实质审查的生效IPC(主分类):G06K 9/62申请日:20130913|||公开

    IPC分类号:

    G06K9/62; G06T7/00

    主分类号:

    G06K9/62

    申请人:

    MV科技软件有限责任公司

    发明人:

    伯特伦·德罗斯特; 马库斯·乌尔里希

    地址:

    德国慕尼黑

    优先权:

    2012.10.12 EP 12188290.6

    专利代理机构:

    北京同达信恒知识产权代理有限公司 11291

    代理人:

    黄志华

    PDF完整版下载: PDF下载
    内容摘要

    本发明提供了一种用于利用3D场景数据和场景强度数据识别3D对象的实体和确定所述实体的3D姿势的方法,所述方法包括以下步骤:(a)提供3D对象数据并获得对象强度数据;(b)提供3D场景数据和场景强度数据;(c)从所述强度数据中提取场景特征点;(d)从所述3D场景数据中选择至少一个参考点;(e)在假设所述参考点为所述3D对象的一部分时,针对每个所选的参考点,通过最大化所提取的场景特征点的数量而为所述3D对象计算候选姿势,在给定的候选姿势下,所述所提取的场景特征点与所述3D对象一致;(f)从所述候选姿势中计算一组过滤姿势。

    权利要求书

    权利要求书
    1.  一种用于利用3D场景数据和场景强度数据识别3D对象的实体和确定所述实体的3D姿势的方法,所述方法包括以下步骤:
    a)提供3D对象数据并获得对象强度数据;
    b)提供3D场景数据和场景强度数据;
    c)从所述强度数据中提取场景特征点;
    d)从所述3D场景数据中选择至少一个参考点;
    e)在假设所述参考点为所述3D对象的一部分的情况下,针对每个所选的参考点,通过最大化所提取的场景特征点的数量而为所述3D对象计算候选姿势,在给定的候选姿势下,所述所提取的场景特征点与所述3D对象一致;
    f)从所述候选姿势中计算一组过滤姿势。

    2.  如权利要求1所述的方法,其中,在步骤a)中,通过从所述3D对象数据合成地创建强度数据来获得所述对象强度数据。

    3.  如权利要求1所述的方法,其中,在步骤a)中,提供所述对象强度数据。

    4.  如权利要求1所述的方法,其中,步骤a)包括从所述3D对象数据和对象强度数据计算模型。

    5.  如权利要求4所述的方法,其中,步骤a)包括:
    a1)从所述3D对象数据中选择至少一个样本点;
    a2)从所述对象强度数据中提取对象特征点;
    a3)针对每对所选的样本点和所提取的对象特征点,计算描述这两个点及这两个点的关系的点对描述符;
    a4)创建存储利用所述点对描述符来索引的点对的模型。

    6.  如权利要求5所述的方法,其中,步骤a4)包括:
    a4a)采样所述点对描述符;
    a4b)创建全局模型描述,所述全局模型描述将每个采样的点对描述符映 射到点对的一列表,其中,每列表包含具有类似的采样的点对描述符的所有对所选的样本点和所提取的对象特征点。

    7.  如权利要求1至6中任一项所述的方法,其中,在步骤d)中,从所述3D场景数据中随机地选择所述参考点,或者通过均匀地采样所述3D场景数据来选择所述参考点。

    8.  如权利要求1至7中任一项所述的方法,其中,在步骤e)中,为每个候选姿势计算分数值。

    9.  如权利要求8所述的方法,其中,使用决策方案计算所述候选姿势。

    10.  如权利要求9所述的方法,其中,所述决策方案包括以下步骤:
    e1)采样可能的对象姿势的空间;
    e2)针对每个姿势空间样本,创建计数器;
    e3)从所述所提取的场景特征点中选择至少一个场景特征点;
    e4)针对每个所选的场景特征点,计算匹配姿势,使得所述参考点位于所述3D对象的表面上且所述场景特征点与所述3D对象一致;
    e5)针对在步骤e4)中所计算的每个匹配姿势,增大相应的姿势空间样本的计数器;
    e6)检测采样的姿势空间中的达到峰值的计数器值,并选择相应的姿势空间样本作为候选姿势。

    11.  如权利要求10所述的方法,其中,在步骤e1)中,利用两个参数表示可能的对象姿势的空间,其中,第一个参数为所述3D对象上的点,第二个参数为角度。

    12.  如权利要求11所述的方法,其中,将所述3D对象上的点表示成到从所述3D对象数据中所选的一组点的索引,通过将一组角度分成等大小的间隔来采样所述角度。

    13.  如权利要求10所述的方法,其中,在步骤a)中,从所述对象强度数据中提取对象特征点。

    14.  如权利要求13所述的方法,其中,在步骤e4)中,使用数据结构计算 所述匹配姿势,所述数据结构允许搜索类似于所述参考点与所述所选的场景特征点的对的3D对象点与对象特征点的对。

    15.  如权利要求14所述的方法,其中,搜索类似的点对的步骤包括以下步骤:
    e4a)计算描述所述参考点、所述所选的场景特征点及所述参考点和所述所选的场景特征点的关系的点对描述符;
    e4b)将所述点对描述符用作到所述数据结构的索引。

    16.  如权利要求15所述的方法,其中,步骤e4b)包括:
    e4c)采样所述点对描述符;
    e4d)使用数据结构,所述数据结构将采样的点对描述符映射到3D对象点与对象特征点的对的列表。

    17.  如权利要求16所述的方法,其中,在步骤e4d)中,将哈希表用作为数据结构。

    18.  如权利要求9至17中任一项所述的方法,其中,步骤f)中的计算包括:
    f1)定义所述候选姿势之间的相邻关系;
    f2)按照相邻的候选姿势的分数的加权和计算每个姿势的分数;
    f3)通过按照在f2)中所计算的分数把所述姿势分等级而选择所述一组过滤姿势。

    19.  如权利要求18所述的方法,其中,通过取所述姿势的平移和所述姿势的旋转的差值的阈值或者通过取所述3D对象上的点在两种姿势下能够具有的最大距离的阈值来定义所述相邻关系。

    20.  如权利要求18所述的方法,还包括以下步骤:按照所述相邻姿势上的平均姿势再计算f3)中所选的姿势。

    21.  如权利要求1至20中任一项所述的方法,还包括以下步骤:通过优化基于所述姿势下的所述3D场景与所述3D对象之间的距离的误差函数而细化所述一组过滤姿势中的每个姿势。

    22.  如权利要求1至20中任一项所述的方法,还包括以下步骤:通过优化基于所述姿势下的所述场景强度数据与所述模型强度数据的一致性的误差函数而细化所述一组过滤姿势中的每个姿势。

    23.  如权利要求1至20中任一项所述的方法,还包括以下步骤:通过优化基于所述姿势下的所述3D场景与所述3D对象之间的距离和所述场景强度数据与所述模型强度数据的一致性的误差函数而细化所述一组过滤姿势中的每个姿势。

    24.  如权利要求1至23中任一项所述的方法,其中,在步骤c)中,将边缘点用作场景特征点。

    25.  如权利要求24所述的方法,还包括步骤c1):使用所述3D场景数据进一步过滤所述边缘点。

    说明书

    说明书多模式场景中的三维对象的识别和姿势确定
    技术领域
    本发明总体涉及机器视觉系统,尤其涉及利用成像和三维(3D)传感器所观测的场景中的3D对象的识别和定位。
    背景技术
    对象识别和定位是许多机器视觉应用的一部分。知道场景中所关注的对象的精确位置对任何后续操作和检查任务来说是至关重要的。开发了许多不同的技术以查找场景的强度图像或3D扫描图中的对象,该任务通常被称为匹配。本申请描述一种同时使用场景的强度图像和3D扫描图的匹配方法,以通过采用3D数据和强度数据优化模型与场景的一致性来查找对象。
    基于描述符或特征的技术建立在通过使用描述符来查找场景中的点与模型上的点之间的对应关系的基础上。这种描述符使用低维表示来表示在给定的场景点周围的3D表面或强度。通常,对于模型的点的全部或者选定的一组脱机计算这种描述符,并将其存储在数据库中。为了识别场景中的对象,对于场景中的点计算描述符,并使用预先计算的数据库搜索相应的模型点。一旦发现足够的对应,则可以还原对象的姿势。Campbell和Flynn(A Survey Of Free-Form Object Representation and Recognition Techniques,2001,Computer Vision and Image Understanding,第81卷,第2期,第166-210页)、Mamic和Bennamoun(Representation and recognition of3D free-form objects,2002,Digital Signal Processing,第12卷,第1期,第47-76页)以及Mian等(Automatic Correspondence for3D Modeling:An Extensive Review,2005,International Journal of Shape Modeling,第11卷,第2期,第253页)给出了不同的3D表面描述符的广泛概述。强度数据中常用的特征描述符包括边缘,如Canny(A Computational Approach To Edge Detection,IEEE Transactions on Pattern Analysis and Machine Intelligence, 8(6):679-698,1986)所描述的,SIFT关键点描述符,如Lowe(Object recognition from local scale-invariant features,Proceedings of the International Conference on Computer Vision.2.第1150-1157页;也可参见专利号为6,711,293的美国专利)所描述的,以及SURF关键描述符,如Bay等(SURF:Speeded Up Robust Features,Computer Vision and Image Understanding(CVIU),2008,第110卷,第3号,第346-359页;也可参见专利号为8,165,401的美国专利)所描述的。在文献中提出了许多其它特征点描述符。如果所关注的对象具有小的独特形状或强度信息,则依赖于特征描述符的方法经常不起作用,这是因为那样的话描述符是难以区别的。
    一些方法使用所谓的几何图元来检测场景中的对象。几何图元为简单的几何对象,例如平面、柱面或球体。相比于自由形态的对象,几何图元由于其内在对称性而在场景中更易于被检测到。存在检测场景中的由几何图元组成的图元或对象的多种方法。在EP-A-2 047 403中,将3D对象划分成几何图元。然后在3D场景中搜索这些几何图元,并且通过确定场景中的与对象中的图元相似的图元而识别对象。其它方法使用广义霍夫变换的变型来检测场景中的几何图元,例如Katsoulas(Robust extraction of vertices in range images by constraining the hough transform,2003,Lecture Notes in Computer Science,第2652卷,第360-369页)、Rabbani和Heuvel(Efficient hough transform for automatic detection of cylinders in point clouds,2005,Proceedings of the11th Annual Conference of the Advanced School for Computing and Imaging(ASCI'05),第60-65页)、以及Zaharia和Preteux(Hough transform-based3D mesh retrieval,2001,Proceedings of the SPIE Conf.4476on Vision Geometry X,第175-185页)。依赖于几何图元的所有方法都具有的缺点是这些方法对一般的自由形态的对象不起作用。
    开发了用于识别距离图像中的3D对象的多种方法,例如在EP-A-l 986 153中。这些方法对单距离图像起作用,如各种传感器系统所返回的。然而,所有的基于距离图像的系统都限于从单距离图像所获得的3D信息,且不能处理来自其它3D传感器的通用3D信息或来自不同的距离图像的组合的通用3D信息。 此外,对于实时系统来说,这些方法并不足够快速,因为这些方法通常需要在参数空间中进行强力搜索。
    已知用于细化已知的对象的3D姿势的多种方法。这些方法需要将场景中的对象的近似的3D姿势作为输入,并且提高该姿势的精确度。开发仅使用3D数据优化姿势的这几种方法,例如迭代最近点(例如参见Zhang(Iterative point matching for registration of free-form curves,1994,International Journal of Computer Vision,第7卷,第3期,第119-152页)、EP-A-2 026 279以及Fitzgibbon(Robust registration of2D and3D point sets,2003,Image and Vision Computing,第21卷,第13-14期,第1145-1153页)。其它用于细化对象的姿势的方法仅使用强度数据,例如Wiedemann等(Recognition and Tracking of3D Objects,IEEE International Conference on Robotics and Automation2009,1191-1198)。姿势细化的主要缺点是输入姿势需要足够接近正确姿势,否则这些方法将无法会聚。然而,对于在实际应用中经常包含杂波、闭塞、噪声和多个对象实例的3D场景来说,难以获得正确姿势的良好近似。
    出于以上原因,需要一种允许在场景中高效识别任意的自由形态的3D对象且还原其3D姿势的方法,利用一个或多个强度图像和一个或多个3D传感器捕获场景。为了本文件的目的,利用强度图像和3D传感器所捕获的场景也将被称为多模式场景。
    发明内容
    本发明提供用于发现多模式场景中的刚性3D对象和利用场景坐标确定对象的3D姿势的系统和方法。在典型应用中,例如使用具有两个或更多个相机的立体声系统、飞行时间、聚焦深度测量、光度立体法或结构光来获得多模式场景。然后,使用所提出的方法得到对象的3D姿势。例如,形成的3D姿势用于利用机器人操纵对象,检测对象表面上的错误,或者计算对象的表面特性。
    本方法比之前的方法具有如下几个优势:允许识别具有任何类型的表面几何形状的自由形态的对象,因此不限于特定类型或形状的对象。此外,该方法 对于噪声、丢失的对象部分、杂波和小的变形是稳健的。高精度地确定3D对象的姿势。3D对象的发现及其3D姿势的还原需要很少的计算时间,适合于实时环境。
    本方法包括两个阶段。在脱机阶段中,计算模型描述,模型描述后续可以用于发现对象。用户需要提供待发现的对象的3D表示,例如3D的CAD模型或一组3D点,以及可选地,来自各种视点的对象的图像。如果未提供图像,则从对象的3D表示人为地渲染图像。因此,本方法仅需要对象的几何形状。不需要颜色、纹理或表面反射率信息,从而使本发明适合于大范围的对象类型。然而,可以提供额外的局部信息,例如颜色和纹理,以使用其它强度特征,因此,进一步提高本方法的稳健性。通过以一定速率采样对象的表面、从不同视点的对象的强度图像中计算特征点和特征点描述符、可选地使用3D表示过滤特征点、将每个采样的3D点与每个特征点组成一对、计算描述每个这样的对的描述符、以及将这些点对存储在利用所述点对描述符来索引的数据库中而构建模型描述。
    在联机阶段中,用户提供包括一组强度图像和一组3D场景的多模式场景和在脱机阶段中所计算的模型描述。图像和场景必须相对彼此校准,即必须提前知道内在传感器参数及其相对位置。针对每个强度图像,提取特征点,计算特征点描述符,可选地使用所提供的3D数据过滤特征点描述符。通常,将边缘用作特征点,将边缘的方向作为特征描述符。3D数据用于去除纹理边缘,因此仅获得几何边缘。然后以一定速率采样3D场景,将那些点的子集用作参考点。针对每个参考点,相对于该参考点参数化对象的3D姿势。将采样的3D点与所提取的特征点组成一对,并且为每个这样的对计算描述符。在脱机阶段中所计算的数据库用于从模型中发现与场景中的点对相似的点对。将匹配体分组,使用具有最多匹配体的3D姿势。这同时优化了3D表面重叠和强度特征的一致性。作为可选的后处理步骤,可以进一步细化所还原的姿势。
    根据第一方面,本发明提供一种利用3D场景数据和场景强度数据识别3D对象的实体和确定所述实体的3D姿势的方法,所述方法包括以下步骤:(a)提 供3D对象数据并获得对象强度数据;(b)提供3D场景数据和场景强度数据;(c)从所述强度数据中提取场景特征点;(d)从所述3D场景数据中选择至少一个参考点;(e)在假设所述参考点为所述3D对象的一部分的情况下,针对每个所选的参考点,通过最大化所提取的场景特征点的数量而为所述3D对象计算候选姿势,在给定的候选姿势下,所提取的场景特征点与所述3D对象一致;(f)从所述候选姿势中计算一组过滤的姿势。优选地,步骤(a)中的3D对象数据和步骤(b)中的3D场景数据被提供为一组3D点或为3D计算机辅助设计模型。优选地,步骤(a)和步骤(b)中的强度数据被提供为灰度图像或彩色图像。可替选地,可通过人工地渲染3D场景数据或3D对象数据来创建强度数据。
    优选地,在步骤(a)之后,从3D对象计算3D模型,包括以下步骤:(a1)从所述3D对象数据中选择至少一个样本点;(a2)从所述对象强度数据中提取对象特征点;(a3)针对每对所选的样本点和所提取的对象特征点,计算描述这两个点及其关系的点对描述符;(a4)创建存储利用所述点对描述符来索引的点对的模型。优选地,步骤(a4)包括:(a4a)采样所述点对描述符;(a4b)创建全局模型描述,所述全局模型描述将每个采样的点对描述符映射到点对的列表,其中,每个列表包含具有类似的采样的点对描述符的所有对所选的样本点和所提取的对象特征点。优选地,从3D数据中随机地选择步骤(a1)中的样本点,或者通过均匀地采样3D数据来选择步骤(a1)中的样本点。优选地,在步骤(a2)中所提取的对象特征点为利用边缘检测器所计算的边缘点,且优选地,使用3D对象数据过滤这些对象特征点以仅获得对象的轮廓边缘。优选地,步骤(a4b)中所创建的全局模型使用哈希表,利用点对描述符的采样形式索引哈希表。
    优选地,在进行处理之前,过滤3D对象数据、3D场景数据、对象强度数据和场景强度数据,所述处理包括以下步骤中的至少一个:检测和去除异常值;减少噪声;以及针对3D数据,计算表面法线。
    优选地,点对描述符描述按照对象特征点的距离而缩放的特征向量,特征向量描述样本点与所提取的对象特征点在强度数据的图像平面内的距离,以及点对描述符描述边缘的相对取向、表面点法线和两点间的差向量。根据另一优 选实施方式,点对描述符额外地包含以下可选的特征:为特征点计算的特征点描述符;每点处的颜色值或灰度值;每点处的纹理信息;每点处的表面描述符;每点处的曲率;每点处的其它几何表面信息。
    根据另一优选实施方式,在步骤(d)中,从所述3D场景数据中随机地选择所述参考点,或者通过均匀地采样所述3D场景数据来选择所述参考点。优选地,相对于3D对象的尺寸计算用于均匀采样3D场景数据的采样距离。
    更优选地,在步骤(e)中,为每个候选姿势计算分数值。优选地,使用决策方案计算所述候选姿势。优选地,所述决策方案包括以下步骤:(e1)采样可能的对象姿势的空间;(e2)针对每个姿势空间样本,创建计数器;(e3)从所提取的场景特征点中选择至少一个场景特征点;(e4)针对每个所选的场景特征点,计算匹配姿势,使得所述参考点位于所述3D对象的表面上且所述场景特征点与所述3D对象一致;(e5)针对在步骤(e4)中所计算的每个匹配姿势,增大相应的姿势空间样本的计数器;以及(e6)检测采样的姿势空间中的达到峰值的计数器值,并选择相应的姿势空间样本作为候选姿势。优选地,在步骤(e6)中,达到峰值的计数器值的检测限于超过阈值的计数器值。优选地,在步骤(e1)中,利用两个参数表示可能的对象姿势的空间,其中,第一个参数为所述3D对象上的点,第二个参数为描述围绕表面法线的旋转的角度。优选地,将所述3D对象上的点表示成到从所述3D对象数据中所选的一组点的索引,通过将一组角度分成等大小的间隔来采样旋转角度。优选地,通过均匀地或随机地采样3D对象的表面而从3D对象数据中选择该一组点。
    更优选地,在步骤(a)中,从所述对象强度数据中提取对象特征点。优选地,特征点为边缘点,优选地,使用3D对象数据过滤边缘点以仅获得在深度不连续面上或对象的轮廓上的边缘点。
    更优选地,在步骤(e4)中,使用数据结构计算姿势,所述数据结构允许搜索类似于所述参考点与所选的场景特征点的对的3D对象点与对象特征点的对。优选地,搜索点对的步骤包括以下步骤:(e4a)计算描述所述参考点、所选的场景特征点及其关系的点对描述符;和(e4b)将所述点对描述符用作到所述数据 结构的索引。
    优选地,点对描述符描述按照对象特征点的距离而缩放的特征向量,特征向量描述样本点与所提取的对象特征点在强度数据的图像平面内的距离,以及点对描述符描述边缘的相对取向、表面点法线和两点间的差向量。参照另一优选实施方式,点对描述符额外地包含以下可选特征:为特征点计算的特征点描述符;每点处的颜色值或灰度值;每点处的纹理信息;每点处的表面描述符;每点处的曲率;每点处的其它几何表面信息。
    根据优选实施方式,步骤(e4b)包括:(e4c)采样所述点对描述符;(e4d)使用数据结构,所述数据结构将采样的点对描述符映射到点对的一列表。优选地,在步骤(e4d)中,将哈希表用作数据结构。
    根据优选实施方式,步骤(f)中的计算包括:(f1)定义所述候选姿势之间的相邻关系;(f2)按照相邻的候选姿势的分数的加权和计算每个姿势的分数;(f3)通过按照在(f2)中所计算的分数把所述姿势分等级而选择一组过滤姿势。优选地,通过取所述姿势的平移和所述姿势的旋转的差值的阈值或者通过取所述3D对象上的点在两种姿势下可具有的最大距离的阈值来定义所述相邻关系。该方法还可以包括以下步骤:按照所述相邻姿势上的平均姿势再计算(f3)中所选的姿势。优选地,加权取决于候选姿势和当前相邻姿势。
    优选地,本发明的方法还包括以下步骤:通过优化误差函数而细化所述一组过滤姿势中的每个姿势,该误差函数基于以下中的一种或两种:所述姿势下所述3D场景与所述3D对象之间的距离;所述姿势下的所述场景强度数据与所述模型强度数据的一致性。
    优选地,本发明的方法还包括以下步骤:针对该组过滤姿势中的每个姿势计算分数,其中,该分数描述所述姿势下3D场景与3D对象之间的一致性。
    优选地,本发明的方法还包括以下步骤:针对最终姿势中的每个姿势计算分数。优选地,所计算的分数为3D场景中的在所计算的姿势下位于3D对象的表面上的点的数量。
    附图说明
    结合附图,从以下详细描述中将更全面地理解本发明,附图中:
    图1示出如何通过均匀采样使3D数据正则化;
    图2示出可以如何描述3D点与图像点之间的关系;
    图3示出对象坐标系、局部坐标系和使用局部坐标的场景坐标系之间的变换。
    具体实施方式
    符号和定义
    以下所有数据被认为是可以以电子形式使用,优选地为数字的。所描述的方法和算法被认为是以电子形式的且可用计算机实现的。
    在以下符号中,3D点为3D空间中具有三个坐标值的点。每个3D点指的是坐标系,最值得注意的坐标系为限定3D场景数据的场景坐标系和限定所关注的3D对象的对象坐标系。3D向量为3D空间中具有三个坐标值的向量。在表面上一点处的3D法向量为3D空间中具有1欧几里德长度且在给定点处垂直于该表面的向量。3D点云为一组3D点。定向的3D点云为其中的3D法向量与每个点都相关联的3D点云。3D刚性变换为保持点距离的3D点到3D点的映射,在形式上为映射f,使得对于任意点P、Q,等式|P–Q|=|f(P)-f(Q)|成立。每个3D刚性变换可分解成旋转和平移,其中,首先对变元点应用旋转,然后对结果应用平移。形式上,可将每个3D刚性变换分解成3D旋转R和3D向量T,从而使f(P)=R(P)+T。
    3D数据正则化为一种将3D中的表面变换为一组3D点的方法,该组3D点均匀地分布在所述表面上,如图1所示。在优选实施方式中,3D数据正则化为这样一种方法:将(a)描述3D中的2D表面的3D数据101和(b)采样距离d作为输入;输出一组3D点102,该组3D点102具有如下性质:(a)其仅包括也在输入的3D数据的表面上的点,(b)在形成的点云中的所有对点具有至少为d的距离,以及(c)在输入的3D数据中的每个点都具有在输出组中的点,该点 具有至多为d的距离。在本发明的优选实施方式中,对于3D点组,只是当输出云中已没有点比采样距离更接近新点的时候,才通过迭代该组输入点并将每个点都添加到输出组中来产生具有预期性质的正则化的点组。通过将每个面采样成一组点并如前所述处理形成的点组来变换3D的CAD模型。在替选实施方式中,通过从表面上随机地选择点来使3D数据正则化。在另一替选实施方式中,法线方向用于正则化,其中,子采样点组在高曲率的区域中是更密集的。在优选实施方式中,计算从3D数据的表面所选择的点的曲面法线103。
    对输入的点云进行正则化通常产生具有较少量点的云,该云仍能很好地表示原始云。本发明在脱机阶段和联机阶段中都使用正则化,用以有效地减少点的数量,从而产生更快速的性能。这对于局部参数空间的采样也是重要的,如下所述。在优选实施方式中,明确地相对于对象的直径而参数化采样距离d,其中,该直径为3D对象上的两点之间的最大距离。令Dobj为对象的直径,则利用τd使采样距离d参数化成d=τd Dobj。在替选实施方式中,用户给出采样因子。在另一替选实施方式中,根据先验信息(例如3D数据的噪声级)设置采样因子。
    场景的强度数据或对象的强度数据为从一个或多个给定视点和观察方向上,通过测量从场景或对象所发出的光的量而获得的所述场景或对象的外观。通常以强度图像的形式来表示强度数据。对于真实场景或对象,通常使用成像设备(例如相机)来捕获强度数据。此外,可以通过将3D数据渲染成虚拟视图而从所述3D数据合成地创建强度数据。这种渲染成的视图的可能质量取决于所提供的3D数据的类型和质量。可以利用附加的纹理信息增补3D数据,纹理信息可以用在渲染过程中,以创建3D数据的更逼真的图像。强度数据可以包括一个或多个数据通道,每个通道代表场景或对象的外观的过滤后的形式。通常,多通道代表光的不同波长,且例如允许彩色形式的场景或对象。通常,使用像素的2D网格来表示强度数据。在下文中,该2D网格内的位置也被称为强度数据中的点、图像内的位置或图像内的坐标。
    特征点为强度数据中的点。特征点可以在整个强度数据中密集地或均匀地分布,或者可以在强度数据内的突出位置处定位。从文献得知许多不同类型的 特征点。通常在存在噪声、杂波、闭塞和其它干扰时,将特征点设计成具有稳定的且可重复的位置。在优选实施方式中,将边缘点用作为特征点。在优选实施方式中,使用Canny边缘提取器(Canny,J.,A Computational Approach To Edge Detection,IEEE Transactions on Pattern Analysis and Machine Intelligence,8(6):679-698,1986)。在替选实施方式中,可以使用任何其它类型的特征点。
    特征描述符为在特征点周围的区域中的强度数据的压缩描述符。通常,特征描述符用于通过从强度数据的一部分中提取最有表现力的信息而利用压缩感描述所述部分。特征描述符通常用于识别在其它位置或视图中的强度数据的类似部分,或者用于识别在不同强度图像中的相同的空间部分。在优选实施方式中,将在特征点的位置处的强度数据的梯度方向用作特征描述符。在替选实施方式中,可将在特征点的位置处的强度值用作特征描述符。在其它替选实施方式中,可使用任何其它种类的特征描述符。可将多个不同的特征描述符组合成单个特征描述符。
    点对描述符为描述一对点的值的列表,其中,该对点中的一点为3D点,另一点为特征点。在优选实施方式中,首先获得3D点在强度数据内的位置。于是,该点对描述符包括强度数据的图像平面内的两点之间的距离、边缘方向与两点间的差向量之间的角度、3D点的法向量与差向量之间的角度、以及法向量与朝向强度数据的投影中心(通常为相机中心)的方向之间的角度。在另一优选实施方式中,特征点的附加特征描述符和3D点的附加特征描述符包括在点对描述符中。在替选实施方式中,局部特性(例如在两点处的表面的颜色、在两点处的曲率和其它几何特性)、以及在背景技术部分中所提及的局部点描述符可以包括在点对描述符中。在替选实施方式中,可以使用其它测量值来描述这两个点及其关系,而不脱离本发明的范围。向点对描述符添加更多信息将增大其区别不同对点的能力,但也增大了其复杂度,从而增大了计算、储存或处理描述符的复杂度。
    在优选实施方式中,如图2所示,具有法线nr且位于强度图像内的r处且从方向νr上可见的3D点P和具有边缘法线e1的边缘点e的点对描述符F的形 式定义为
    (1)  F(P,e,nr,ed)=(|r-e|/Pz,∠(ed,r-e),∠(nr,P2-P1),∠(νr,nr))
    其中,∠(a,b)表示两个向量之间的角度。
    采样的点对描述符为点对描述符的采样形式。在优选实施方式中,以相同大小的间隔对点对描述符的四个项目进行采样以产生采样的点对描述符。采样的点对描述符的形式定义如下:令na为用于角度值的间隔的数量且da=360°/na。令d为如上所述的距离采样因子,且令为小于x的最大整数值,则点对特征F(P,e,nr,ed)=(F1,F2,F3,F4)的采样形式FS(P,e,nr,ed)被定义为

    全局模型描述为一种数据结构,该数据结构允许有效地搜索对象上与来自场景的给定点对类似的全部点对。因此,数据结构或方法将来自场景的点对作为输入,并且输出对象上与输入点对类似的点对的列表。在优选实施方式中,将从采样的点对描述符到点对组的映射用作点对描述符。通过为给定点对计算采样的点对描述符且使用哈希图检索所有具有相等的采样的点对描述符的点对来进行查找。哈希表允许有效地访问类似的点对,其中,定时独立于储存在模型描述中的点对的数量。在替选实施方式中,可使用最近邻访问方法来检索所有具有与给定点对的点对描述符类似的点对描述符的点对。在另一替选实施方式中,可将任意索引方案用作数据结构,例如搜索树。
    在假设给定的参考点位于对象的表面上的情况下,可将场景中的对象的局部姿势定义为场景中的对象相对于给定的3D场景点(称为参考点)的3D姿势。该假设限制可能的姿势。因此,局部姿势具有比全3D姿势更小的自由度。在优选实施方式中,使用局部坐标参数化局部姿势,如下:令sr为场景中的假设位于对象表面上的参考点,则(a)mr为模型表面上对应于sr的点,以及(b)α为对齐sr、mr及其法线之后围绕sr的法线旋转的角度(图3)。将相对于sr的局部坐标写成(mr,α),且该局部坐标一共具有三个自由度,两个自由度用于mr在模型的表面上的位置,一个自由度用于旋转角α。在替选实施方式中,可使用 对象表面的不同的参数化,例如u-v坐标或纹理坐标。
    对于场景的参考点sr,令TS→L为刚性3D变换,该变换将sr平移到原点,并将sr的法线旋转到x轴上且指向正方向。对于模型点mr,令TM→L为刚性变换,该变换将mr平移到原点,并将mr的法线旋转到x轴上且指向正方向。令Rx(α)为刚性3D变换,该变换围绕x轴旋转角度α。于是,给定相对于参考点sr的局部坐标(mr,α),可将从模型空间中的点mi到其在场景空间中的对应点si的映射写成:
    (3),si=Ts→L-1Rx(α)TM→Lmi]]>
    如果已知si,mi,TS→L和TM→L,则可用以上方程式求解出α。
    3D模型创建
    在本方法的脱机阶段中,建立模型,该模型以适于后续在场景中识别所关注的对象的方式描述该所关注的对象。用于创建模型的方法包括以下步骤:(a)可选地准备3D对象数据;(b)选择对象样本点;(c)创建全局模型描述;(d)可选地,为姿势细化做准备。在优选实施方式中,创建的模型将包括所选的样本点和全局模型描述。在替选实施方式中,可以包括以下信息:原始的3D对象数据;为姿势细化而计算的数据;本方法的用户所需的附加信息。
    准备3D对象数据的目的为除去不想要的特性和增加想要的特性。在优选实施方式中,包括以下步骤:(a1)可选地抑制来自数据的不想要的特性,例如3D传感器所产生的噪声和异常值,其中,所用的具体方法也取决于用于获取数据的传感器;(a2)计算表面法线,如果表面法线已是可用的,则该步骤是可选的。准备对象强度数据的目的为除去不想要的特性和增加想要的特性。在优选实施方式中,使用高斯滤波器使对象强度数据变平滑。
    在优选实施方式中,以一组3D点给出3D对象数据,或者以计算机辅助设计模型(CAD-model)的形式给出3D对象数据。在替选实施方式中,可使用代数曲面。在另一替选实施方式中,可使用3D表面的任何其它表示。在优选实施方式中,以一张或多张强度图像的形式给出对象强度数据,使用一个或多个数 码相机获得该一张或多张强度图像,每张强度图像包含一个或多个通道。在另一优选实施方式中,通过在虚拟相机中渲染给定的3D对象数据而人为地创建对象强度数据。在其它实施方式中,可以使用其它成像技术来获得对象强度数据。
    对于模型的创建,需要从3D对象数据中选择一组对象样本点。在优选实施方式中,使用上述3D数据正则化方法对3D对象数据作二次采样,以创建一组稀疏的样本点。在替选实施方式中,用户可以提供将要用作样本点的一组点。在另一替选实施方式中,可将来自3D对象数据的所有点都用作对象样本点。在又一替选实施方式中,可将来自对象的点的随机子集用作样本点。在其它替选实施方式中,可以使用其它对象样本点选择策略,而不脱离本发明的范围。
    对于创建全局模型描述,需要从对象强度数据中提取一组特征点。在优选实施方式中,使用稳健的边缘提取器从强度数据中提取边缘点。在其它替选实施方式中,可以提取其它特征点,而不脱离本发明的范围。
    用于创建全局模型描述的方法取决于为该全局模型描述所选择的特定数据结构。在优选实施方式中,全局模型描述的创建包括:(c1)为每对对象样本点和对象特征点计算点对描述符;(c2)通过将计算的点对描述符用作索引而将这样的每对点都存储在全局模型描述中。在替选实施方式中,可将点存储在数据结构中,使得高效查找类似的点对不需要点对描述符。
    如果在匹配过程中应使用可选的姿势细化且如果所选的用于姿势细化的方法需要可从3D对象预先计算的某种数据,则也可在脱机阶段中计算数据,并将该数据和模型一起存储。在优选实施方式中,计算允许快速搜索对象上最接近给定的搜索点的点的数据结构。该数据结构随后用于姿势细化的迭代最近点(ICP)方法。在替选实施方式中,可使用任何其它姿势细化方法的数据结构,例如期望最大化(EM)(Granger和Pennec(Multi-scale EM-ICP:A fast and robust approach for surface registration,2002,European Conference on Computer Vision(ECCV2002),第418-432页))。
    对象识别和姿势确定
    本方法的联机阶段利用3D场景数据和场景强度数据识别3D对象的实体, 并计算场景中的所述实体的3D姿势。将3D场景数据、场景强度数据以及如在脱机阶段中所计算的3D模型作为输入,输出场景中的对象的一组3D姿势,可选地输出将这些姿势分等的一组分数。联机阶段包括以下步骤:(a)准备3D场景数据,(b)准备场景强度数据,(c)提取场景特征点,(d)选择参考点,(e)为每个参考点计算一组局部坐标,假设参考点在所关注的对象上,则这会导致对象和场景的高度一致性,(d)过滤形成的姿势,以形成最终姿势,(e)可选的姿势细化,以及(f)可选地为最终姿势评分。
    准备3D场景数据的步骤是用于通过除去不想要的特性和增加想要的特性来准备输入的3D数据的步骤。在优选实施方式中,准备输入的3D数据包括以下步骤:(a1)可选地抑制来自数据的不想要的特性,例如3D传感器所产生的噪声和异常值,其中,所用的具体方法还取决于用于获取数据的传感器;(a2)计算表面法线,如果表面法线已是可用的,则这步骤是可选的;(a3)将点均匀地分布在场景点云中,以避免偏向场景的更密集地采样的部分,例如在基于投影的范围扫描仪的情况下更接近该扫描仪的部分。在优选实施方式中,将用于步骤(a3)的采样距离设置成等于或大于用于在脱机阶段中正则化模型点云的采样距离,且等于或大于用于创建采样的点对描述符的采样距离。改变采样距离导致正则化的点云具有不同数量的点,这随后会影响所公开的方法的执行时间和准确性,因此这是平衡二者的重要参数。在替选实施方式中,用户可以给出采样距离。在另一替选实施方式中,可以从先验信息(例如3D数据的噪声级)计算采样距离。准备场景强度数据的目的为除去不想要的特性和增加想要的特性。
    在优选实施方式中,以一组3D点给出3D场景数据,或者以计算机辅助设计模型(CAD-model)的形式给出3D场景数据。在替选实施方式中,可使用代数曲面。在另一替选实施方式中,可使用3D表面的任何其它表示。在优选实施方式中,以一张或多张强度图像的形式给出场景强度数据,使用一个或多个数码相机获得该一张或多张强度图像,每张强度图像包含一个或多个通道。在另一实施方式中,通过在虚拟相机中渲染给定的3D场景数据而人为地创建场景强 度数据。在其它实施方式中,可以使用其它成像技术来获得场景强度数据。
    大量的参考点选自于3D场景数据且用在后续步骤中。为了使本方法起作用,选择至少一个位于所关注的对象的表面上的参考点是很重要的,这是因为只有在至少一个参考点满足该条件时后续步骤才查找对象姿势。在优选实施方式中,通过从场景点云中获取点的随机子集而选择参考点,其中,相对于场景点云的尺寸参数化子集中点的数量。在替选实施方式中,可将来自均匀分布的场景点组或来自原始的3D场景数据的所有点用作参考点。在另一替选实施方式中,可使用用户提供的关于对象的可能位置的信息、关于模型的表面特性的信息、场景点云的正则化或其它方法来引导参考点的选择。以上内容可以很容易地用在本发明中,而不脱离本发明的范围。所选的参考点的数量直接影响所公开的方法的执行时间。因此,参考点选择方法需要在选择过多参考点与过少参考点之间进行平衡,选择过多参考点会导致较差的性能,选择过少参考点会增大错过所关注的对象的可能性。
    针对在先前步骤中所选择的每个参考点,计算一组局部坐标,该组局部坐标对应于在假设参考点位于所关注的对象的表面上的情况下所关注的对象最可能具有的3D姿势。在优选实施方式中,采用类似于广义霍夫变换的决策方案来计算最好地解释观测到的数据的局部坐标。在替选实施方式中,可以使用几种其它的优化局部坐标的方式,包括但不限于穷举搜索和能量函数的数值最小化。
    在优选实施方式中,使用类似于广义霍夫变换的用于计算所关注的对象的局部坐标的决策方案。该方案包括以下步骤:(e1)将参数空间,这里为局部坐标的空间,划分成一组样本;(e2)将计数器附到每个样本上,且初始设置为0;(e3)从提取的场景特征点中选择一组场景特征点;(e4)针对从场景强度数据提取的每个特征点,确定所有的那些局部坐标,这导致利用模型解释特征点,当使用那些局部坐标来变换对象时,意味着当前参考点位于对象的表面上且当前特征点与对象一致;(e5)对于解释特征点的每个局部坐标,增大相应的包含局部坐标的参数空间样本的计数器;(e6)在通过步骤(e4)和步骤(e5)处理过所有场景点之后,用于局部坐标空间的每个样本的计数器将对应于解释参数 空间的那部分的场景点的数量。其计数器具有最大值的样本对应于那些以最佳的方式解释场景点的局部坐标。在最后的步骤中,选择具有最大计数器值的样本或其计数器超过阈值的一组样本。可以使用决策方案的几个替选实施方式,包括但不限于:在步骤(e4)中,不使用所有的场景特征点,而仅使用场景特征点的子集;在步骤(e5)中,将计数器增大某一值,该值取决于当前特征点的权重;在步骤(e6)中,使用直方图分析或其它方法分析决策空间的峰值。
    在优选实施方式中,以上步骤(e1)中参数空间的划分可如下进行:通过从3D对象数据所选择的样本点之一来描述局部坐标的第一分量,即描述模型表面上的位置的分量,从而暗含地将该第一分量划分成离散值。类似于以上采样的点对描述符的角度值的采样,通过将可能的旋转角度的区间[0°;360°]分成相同大小的区间na来划分第二分量,即描述围绕参考点的法线旋转的角度的分量。在替选实施方式中,可通过用u-v坐标或纹理坐标表示第一分量并采样那些坐标来进行第一分量的划分。
    步骤(c2)中解释当前场景点的局部坐标的计算按如下过程进行:(c2.1)如上文所描述的,计算和采样参考点与当前特征点之间的点对描述符;(c2.2)使用采样的点对描述符来访问在脱机阶段中所计算的全局模型描述,这将返回类似于场景点对的模型点对的列表;(c2.3)对于每个这样的模型点对,使用场景点对和模型点对,使用方程式(3),计算对齐场景点对和模型点对的局部坐标。在替选实施方式中,全局模型描述可以基于最近邻体,比如允许搜索类似的点对而不需采样点对描述符的数据结构。在另一替选实施方式中,可使用允许直接搜索类似的点对而无需点对描述符的数据结构。
    在处理过所有的场景点之后,步骤(c4)选择参数空间的样本,其中,相应的计数器具有最大值。在优选实施方式中,选择具有最大值(即全局最大值)的计数器。在替选实施方式中,可以使用具有超过一定阈值的计数器值的所有样本,其中,该阈值可以是固定的或可以取决于所有计数器的最大值。在另一替选实施方式中,可使用一种用于检测计数器空间中的局部峰值来代替全局阈值的方法。
    从每个所选的样本中获取一个局部坐标,将局部坐标变换为完整的3D姿势,利用相应的局部坐标样本的计数器值返回每个3D姿势。计数器值为所述3D姿势的分数。
    姿势过滤为这样一种方法:将来自一个或多个参考点的候选姿势作为输入,可选地利用分数值增补候选姿势,且输出一组按照姿势正确的可能性排列的仅包含所关注的对象的最可能的姿势的过滤姿势。通常,一组姿势可以包含零个、一个或多个姿势。姿势过滤服务于不同的目的:
    (1)异常值去除:假设参考点位于所关注的对象的表面上,计算针对参考点的候选姿势。如果该假设是不正确的,例如在场景中的杂波点不属于所关注的对象的情况下,或者如果参考点的法线是不正确的,则针对该参考点而形成的候选姿势将包含错误姿势,错误姿势不对应于对象的正确姿势。姿势过滤应该去除这类不正确的姿势。
    (2)增大精确度和稳定性:如果几个参考点在对象的表面上,则针对每个参考点的候选姿势将包含对应于对象的正确姿势的姿势。然而,由于计算中的数值错误、数据中的噪声,且由于在以上方案中所涉及的采样步骤,因此这些姿势将稍微不同于正确姿势。姿势过滤把针对不同参考点而找到的所有的正确姿势组成一组,并计算平均姿势,因此增大了最终结果的精确度和稳定性。
    在优选实施方式中,姿势过滤包括以下步骤:(d1)定义姿势间的相邻关系,其中,如果姿势的旋转部分之差小于固定阈值,且如果其平移向量之差具有小于固定阈值的长度,则将这些姿势定义为邻体;(d2)分配新的分数给每个姿势,该新的分数为相邻(如(d1)中所定义)姿势的所有分数的总和;(d3)按照新的分数排序姿势;(d4)选择具有最佳分数的姿势;(d5)可选地,通过对相邻姿势进行平均而再计算所选择的姿势。在替选实施方式中,通过取来自模型的点在两个姿势下可具有的最大差值的阈值而定义步骤(d1)中的姿势的相邻关系,例如在步骤(d2)的替选实施方式中,按照相邻姿势的分数的加权和计算分数,其中,加权函数取决于这两个姿势。在(d1)的另一替 选实施方式中,所有的姿势都是考虑的邻体,且使用加权函数,如上所述。此外,在步骤(d1)中,没有姿势可以是考虑的邻体,从而有效地从决策方案中选择具有最高单分数的姿势。在替选实施方式中,可使用聚类方法,例如K-均值偏移,来选择最终姿势组。在步骤(d5)的优选实施方式中,通过计算姿势的平移向量的均值来求平移的平均值,且通过计算姿势的旋转的平均Rodriguez向量来求旋转的平均值。在步骤(d5)的替选实施方式中,可以在计算平均旋转之前,利用所选择的姿势的旋转的反旋转来构成旋转。这增大了平均旋转的稳定性。在步骤(d5)的另一替选实施方式中,通过优化取决于姿势和平均姿势的分数函数来计算平均旋转。在替选实施方式中,多种其它方法可用于获得上述目的中的一个或多个,而不脱离本发明的范围。
    姿势细化描述了这样一类方法:将一组对象数据和场景数据、连同场景中的模型的近似姿势作为输入,且输出细化的、更精确的模型姿势。姿势细化方法通常通过最小化误差函数来优化场景与对象之间的对应。姿势细化的缺点在于,初始近似姿势需要是已知的且对于用于收敛的方法是足够好的。如上所述的本发明计算对象的近似姿势,该近似姿势是足够好到使用姿势细化来进行细化。姿势细化的使用是可选的且取决于本发明的用户所需的精度。本方法所形成的姿势对于对象操作(例如抓握)来说通常是足够精确的。然而,使用本发明来进行表面检查的应用,例如检测不正确地产生的部分,可能需要姿势细化步骤。姿势细化可以使用3D数据、强度数据或二者。在优选实施方式中,迭代最近点(ICP)用于姿势细化。对于ICP,场景中的3D点与对象表面之间的距离的总和是最小的。在替选实施方式中,期望最大化可以用于姿势细化。在另一替选实施方式中,可以使用任何最小化场景点与对象之间的距离的方法。在其它替选实施方式中,可以使用多种其它用于细化近似姿势的方法,而不脱离本发明的范围。
    评分是这样一种方法:将如利用算法所计算的最终姿势以及3D场景数据和3D对象数据作为输入,且输出描述所计算的姿势的品质或在所述姿势下场景与对象之间的一致性的一个或多个值。此外,最终姿势的品质和精确度取决于场 景中所关注的对象的存在和可见性,以及取决于场景数据和模型数据的品质。评分是必要的,以给本方法的用户一种评估形成的姿势的方式,这是后续决定的基础。
    可以使用用于为最终姿势评分的多种替选实施方式,包括但不限于:(a)返回如在决策方案中所计算的姿势的分数;(b)返回如在姿势过滤步骤中所计算的累计分数;(c)考虑到形成的姿势,计数位于模型表面上的场景点的数量;(d)针对接近在形成的姿势下的模型的场景点,计算场景点与模型表面之间的距离的协方差;(e)将模型投影到距离传感器的图像中,该距离传感器用于获得场景数据,并且计算图像域中的模型与场景点之间的距离;(f)(e)的方法,但是具有从多于一个的观察点验证投影的模型点的可见性的附加步骤,如在立体声方法的情况下所需的;(g)计算模型表面点与相应的场景表面点的法线间的点积的总和;(h)考虑到形成的姿势,计算可视的模型表面与总模型表面的比,或者可视的模型表面与在传感器相机中可视的模型表面之间的比;(i)计算场景特征与对象特征之间的相似度;(j)使用从(a)到(i)的方法中的两种或多种,并组合形成的值。取决于用户的需要和传感器特性,可以使用计算分数的其它方式,而不脱离本发明的范围。
    在优选实施方式中,如果不使用姿势细化,则返回在姿势过滤步骤中所计算的分数,如用方法(b)所计算的分数;如果使用姿势细化,则返回方法(c)、(d)、(e)或(f)的分数。
    尽管已经在附图和以上描述中详细地示出和描述了本发明,但是这些示出和描述被认为是说明性的或示例性的,而非限制性的。应当理解,在所附权利要求书的范围内,普通技术人员可以进行修改和变型。具体地,本发明涵盖具有来自以上和以下所描述的不同实施方式的特征的任何组合的其它实施方式。
    此外,在权利要求书中,词语“包括”不排除其它元件或步骤,不定冠词“一”不排除复数。单个单元可以满足权利要求书中所列的多个特征的功能。特别地,与属性或值相连的术语“基本上”、“大约”、“近似地”等也分别精确地定义属性或值。权利要求书中的任何附图标记不应当被视为限制范围。

    关 键  词:
    模式 场景 中的 三维 对象 识别 姿势 确定
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:多模式场景中的三维对象的识别和姿势确定.pdf
    链接地址:https://www.zhuanlichaxun.net/p-6213293.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1