CN111079565A - 视图二维姿态模板的构建方法及识别方法、定位抓取系统 - Google Patents

视图二维姿态模板的构建方法及识别方法、定位抓取系统 Download PDF

Info

Publication number
CN111079565A
CN111079565A CN201911185440.8A CN201911185440A CN111079565A CN 111079565 A CN111079565 A CN 111079565A CN 201911185440 A CN201911185440 A CN 201911185440A CN 111079565 A CN111079565 A CN 111079565A
Authority
CN
China
Prior art keywords
dimensional
view
target object
level
template
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
CN201911185440.8A
Other languages
English (en)
Other versions
CN111079565B (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.)
Shenzhen Huahan Weiye Technology Co ltd
Original Assignee
Shenzhen Huahan Weiye Technology Co ltd
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 Shenzhen Huahan Weiye Technology Co ltd filed Critical Shenzhen Huahan Weiye Technology Co ltd
Priority to CN201911185440.8A priority Critical patent/CN111079565B/zh
Publication of CN111079565A publication Critical patent/CN111079565A/zh
Application granted granted Critical
Publication of CN111079565B publication Critical patent/CN111079565B/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/60Type of objects
    • G06V20/64Three-dimensional objects
    • G06V20/647Three-dimensional objects by matching two-dimensional images to three-dimensional objects
    • G06T3/067
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

一种视图二维姿态模板的构建方法及识别方法、定位抓取系统,其中识别方法包括:获取目标物体的二维图像,将二维图像与由构建方法所得到的视图二维姿态模板进行匹配,从视图二维姿态模板中搜索得到匹配度最高的二维姿态数据,根据匹配度最高的二维姿态数据确定目标物体的三维位姿。由于视图二维姿态模板中相邻层级内分布的二维模型通过所对应视图模型的父子视图关系进行互为关联,使得利用视图二维姿态模板对二维图像进行匹配时,便于从金字塔的高层级逐一地向低层级进行匹配,在快速地搜索得到匹配度最高的二维姿态数据的同时,也利于提高二维图像匹配的效率。

Description

视图二维姿态模板的构建方法及识别方法、定位抓取系统
技术领域
本发明涉及图像处理技术领域,具体涉及视图二维姿态模板的构建方法及识别方法、定位抓取系统。
背景技术
本发明主要解决的是图像处理中三维目标的视觉识别以及三维位姿确定的问题。目标识别是视觉引导类问题中需要首先解决的问题,在很多场中,假设目标是平面的并且图像中的目标在一定程度上受限,例如仿射变换或者相似变换等情形。然而,因为目标在固定相机前面在三维空间中移动、摄像机绕固定目标移动或者目标和摄像机同时移动,具有6个自由度(3个旋转和3个平移),所以在许多应用中被识别的目标不是平面的,而是具有三维外形并且在未知姿态成像。因为摄像机和目标物体之间的相对移动会带来不同的透视变换,这些透视变换不能通过二维的空间变换来表达,极大地增加了目标识别任务的复杂度。此外,不仅需要确定物体的二维变换还需要确定相对于摄像机的三维姿态,由于存在六个自由度需要确定,所以必须描述摄像机坐标系和目标物体的变换关系。
目前,技术人员往往会采用三维目标识别技术来解决相关的问题,可以分为采用基于特征的技术和基于视图的技术。为完成三维姿态的计算,需要通过三维重建技术获取物体表面的三维信息,这种实施方式的硬件成本高、计算速度慢。
基于特征的技术,是基于对三维目标的不同特征和它们在二维搜索图像中的投影之间的一一对应关系确定。如果已知对应特征的三维坐标和对应图像/图形特征,则目标的三维姿态可以直接根据最小二乘法求解出来。其中特征可以是人工标记或者物体本身特有属性,例如三维目标物体的角点、法向量等。根据模板特征匹配,还存在一些缺点:摄像机和物体目标的相对关系变化难以在图像中确定地找到特征,导致特征被遮挡以及特征发生透视失真,而模板匹配方法不能解决这种透视失真。因此,该方法通常要求摄像机和物体目标在有限的平面空间内变化。此外,基于人工标记的方法对于变化的目标缺乏适应性,很多场景难以或不适合增加人工标志。
基于视图的技术,是基于二维搜索图像与不同视点观察的目标物体的二维投影比较。该方法基于物体的三维物体信息,从不同视点,获取三维目标的训练模板,随之产生与二维搜索图像相似的二维投影,将二维搜索图像与每个训练模板比较,将与二维搜索图像匹配分数最高的姿态返回作为目标姿态。该方法使用训练图像并将其与二维搜索图像进行相似性比较,该计算过程的计算成本比较高,并且需要很多训练图像以覆盖一定范围的视点变换范围。
为了克服二维图像和三维物体匹配中存在的一些匹配困难的问题,利用物体的一组投影图来表示三维物体的研究方法受到了人们极大地关注。在研究方法中,视点空间被划分为有限个区域,在同一区域中的视点,其投影图在拓扑上是同构的;对每个区域中的视点,可以产生一个有代表性的投影图,这样三维物体的识别就简化为和一组二维投影图进行匹配。为产生一组有代表性的投影图,有两种划分视图空间的方法,第一种是和物体无关的固定划分方法,它事先确定了视图空间划分的区域数目及形状,视空间一般限定在一个单位球或者立方体的面上,该方法较为简单,缺点是很难产生合适的区域数目及划分的区域形状。另一种方法是根据投影图的某种定性结构的定性划分方法,在不同的场景可以有不同的定义。
在利用视图对三维物体进行识别时,通过不同视点投影三维目标的模型,会存在这样一个问题:需要很多二维投影以覆盖目标物体的视点变化范围。为应对这一问题,姿态聚类技术已经被应用,尽管这样,必须同二维图像进行比较的二维投影的数量依然非常大,因此这些基于视图的识别无法满足实时性的要求。经常通过减少产生的视图数量,来进行加速计算,但是摄像机总是指向三维目标的中心,这就容易导致产生透视失真,从而使得不在图像中心的目标物体无法被找到,基于视图识别技术,另一个未解决的问题是二维投影适用于二维模板匹配,以便产生二维模板。
发明内容
本发明主要解决的技术问题是如何利用单幅的二维图像对三维目标进行三维位姿的识别。为解决上述技术问题,本申请提供一种视图二维姿态模板的构建方法及识别方法、定位抓取系统。
根据第一方面,一种实施例中提供一种视图二维姿态模板的构建方法,包括:获取目标物体对应的三维模型的模板信息;根据所述模板信息生成所述目标物体在不同姿态下分别对应的视图;根据生成的各个视图建立视图树,形成视图金字塔,所述视图金字塔包括高低分布的多个层级,相邻层级内形成有父子视图关系的多对视图模型;利用所述视图金字塔中每一个层级内的每个所述视图模型产生对应的二维模型,构建得到视图二维姿态模板;所述二维模型包括所述目标物体在相应姿态下的二维位姿数据,所述视图二维姿态模板用于对所述目标物体进行三维位姿的识别。
所述根据所述模板信息生成所述目标物体在不同姿态下分别对应的视图,包括:将所述模板信息转换到参考坐标系,在预设的三维姿态变化范围内对坐标转换后的所述模板信息进行离散化采样,得到所述目标物体的透视投影视图;所述参考坐标系与目标摄像装置所在的摄像机坐标系的方向相同,且参考坐标系的原点位于摄像机坐标系的一个坐标轴上;根据所述透视投影视图将所述模板信息投影到三通道的视图平面中,得到三通道的彩色图像,所述彩色图像中的每个像素位置填充所述目标物体上对应位置的法向量,根据所述彩色图像形成所述目标物体在不同姿态下分别对应的视图。
在将所述模板信息转换到参考坐标系之前,还包括:在一球坐标系中计算所述模板信息中各个数据点的映射坐标,所述映射坐标被用于转换到所述参考坐标系,使得所述模板信息被转换到所述参考坐标系;在形成所述目标物体在不同姿态下分别对应的视图之后,还包括:获取目标摄像装置的内参,根据所述内参对所述各个视图进行畸变校正,计算畸变反变换映射图,利用所述畸变反变换映射图消除所述目标摄像装置对各个视图的畸变影响。
所述根据生成的各个视图建立视图树,形成视图金字塔,包括:利用生成的各个视图形成视图树的第一级,对于第一级内的所有视图,计算相邻视图之间的相似性,将相似性超过第一级对应的特定临界值的视图作为子视图且进行位姿合并,合并后的视图设于第一级内;将第一级内合并后的视图和未被合并的视图映射形成视图树的第二级,对于第二级内的所有视图,计算相邻视图之间的相似性,将相似性超过第二级对应的特定临界值的视图进行位姿合并,合并后的视图和未被合并的视图均作为父视图且在第一级内对应的视图作为该父视图所关联的子视图,从而得到第二级和第一级之间的父子视图关系;依次类推,分别得到视图树中高低相邻两级之间的父子视图关系,直至最高一级上的视图不能再进行位姿合并为止,由此建立具有多级的视图树,所述视图树的每一级内的父视图和设于低一级内对应的子视图之间通过参考位置互为关联;根据所述视图树的每一级内分布的每个视图生成对应的视图模型,构建视图金字塔的一个层级,结合各个层级形成视图金字塔。
所述利用所述视图金字塔中每一个层级内的每个所述视图模型产生对应的二维模型,构建得到视图二维姿态模板,包括:对于所述视图金字塔的每一个层级内的任意视图模型,根据预设的二维姿态变化范围对该视图模型进行二维投影以得到投影模型,根据所述投影模型映射得到对应的映射图像;选择所述映射图像中超出预设的梯度阈值和角度阈值的边缘点,根据预设的旋转缩放范围对选择的各个边缘点进行旋转缩放处理,生成该视图模型对应的二维模型;将所述视图金字塔的每一个层级内的各个视图模型分别对应的二维模型设于该层级内,重新构建所述视图金字塔的层级,组合各个层级形成视图二维姿态模板,所述视图二维姿态模板中相邻层级内分布的二维模型通过所对应视图模型的父子视图关系进行互为关联。
在根据预设的旋转缩放范围对选择的各个边缘点进行旋转缩放处理之前,还包括:利用匹配位姿对选择的边缘点进行增强处理,用于通过非极大值抑制和边缘细化的运算得到增强处理后的边缘点,以根据预设的旋转缩放范围对增强处理后的各个边缘点进行旋转缩放处理。
根据第二方面,一种实施例中提供一种目标物体三维位姿的识别方法,包括:获取目标物体的二维图像;将所述二维图像与由上述第一方面中所述的构建方法所得到的视图二维姿态模板进行匹配,从所述视图二维姿态模板中搜索得到匹配度最高的二维姿态数据;根据匹配度最高的二维姿态数据确定所述目标物体的三维位姿,包括:利用匹配度最高的二维姿态数据判断所述二维图像的旋转角度、缩放和位置,根据所述二维图像的旋转角度、缩放和位置确定所述目标物体的三维位姿,以及利用最小二乘法优化所述三维位姿,得到优化后的三维位姿。
所述获取目标物体的二维图像,包括:利用一摄像装置采集所述目标物体的数字图像;获取所述摄像装置的内参,根据所述内参对所述数字图像进行畸变校正,以消除所述摄像装置对所述数字图像的畸变影响;对畸变校正后的数字图像进行球面投影以消除透视失真,利用球面投影后的数字图像得到所述目标物体的二维图像。
所述从所述视图二维姿态模板中搜索得到匹配度最高的二维姿态数据,包括:从所述视图二维姿态模板的最高层级开始搜索,在同一个层级上得到一个或多个与所述二维图像相匹配的二维模型;根据已匹配的二维模型所对应视图模型的父子视图关系,在低层级上对互为关联的二维模型继续进行搜索,直至在搜索的二维模型中得到匹配度最高的二维姿态数据。
所述根据已匹配的二维模型所对应视图模型的父子视图关系,在低层级上对互为关联的二维模型继续进行搜索,直至在搜索的二维模型中得到匹配度最高的二维姿态数据,包括:将已匹配的二维模型中匹配形成的二维姿态数据存入候选匹配列表;在次低层级上搜索与已匹配的二维模型互为关联的二维模型,若此层级上有与所述二维图像相匹配的二维模型,则利用此层级上已匹配的二维模型中匹配形成的二维姿态数据对所述候选匹配列表进行修正,直至遍历所述视图二维姿态模板的各个层级;遍历完成后将所述候选列表中保留的二维姿态数据确定为匹配度最高的二维姿态数据。
根据第三方面,一种实施例中提供一种目标物体的定位抓取系统,包括:摄像装置,用于采集目标物体的数字图像;处理器,与所述摄像装置连接,用于根据所述数字图像获取所述目标物体的二维图像,以及用于通过上述第二方面中所述的识别方法得到所述目标物体的三维位姿;控制器,与所述摄像装置和所述处理器连接,用于控制所述摄像装置采集所述目标物体的数字图像,以及用于根据所述处理器输出的三维位姿控制一运动机构抓取所述目标物体。
所述处理器包括模板构建单元、识别与定位单元;所述模板构建单元用于构建所述目标物体的视图二维姿态模板;所述模板构建单元包括信息获取模块、视图生成模块、金字塔建立模块和模板构建模块,其中信息获取模块用于获取目标物体对应的三维模型的模板信息,视图生成模块用于根据所述模板信息生成所述目标物体在不同姿态下分别对应的视图,金字塔建立模块用于根据生成的各个视图建立视图树且形成视图金字塔,模板构建模块用于利用所述视图金字塔中每一个层级内的每个视图模型产生对应的二维模型且构建得到视图二维姿态模板;所述视图金字塔包括高低分布的多个层级,相邻层级内形成有父子视图关系的多对视图模型,所述二维模型包括所述目标物体在相应姿态下的二维位姿数据;所述识别与定位单元和所述模板构建单元连接,用于利用所述视图二维姿态模板以及所述目标物体的二维图像对所述目标物体进行三维位姿识别,得到所述目标物体的三维位姿;所述识别与定位单元包括图像获取模块、二维匹配模块和三维识别模块,其中所述图像获取模块用于获取目标物体的二维图像,所述二维匹配模块用于将所述二维图像与所述视图姿态二维模板进行匹配并且从所述视图二维姿态模板中搜索得到匹配度最高的二维姿态数据,所述三维识别模块用于根据匹配度最高的二维姿态数据确定所述目标物体的三维位姿。
根据第四方面,一种实施例中提供一种计算机可读存储介质,包括程序,所述程序能够被处理器执行以实现上述第一方面或第二方面中所述的方法。
本申请的有益效果是:
依据上述实施例的一种视图二维姿态模板构建方法、识别方法及系统。其中目标物体三维位姿的识别方法包括:获取目标物体的二维图像;将二维图像与由构建方法所得到的视图二维姿态模板进行匹配,从视图二维姿态模板中搜索得到匹配度最高的二维姿态数据;根据匹配度最高的二维姿态数据确定目标物体的三维位姿。第一方面,在构建视图二维姿态模板时,将目标物体在不同姿态下分别对应的视图与金字塔思想相结合,从而得到具有高低分布的多个层级且相邻层级内形成有父子视图关系的多对视图模型,利于借助视图金字塔进一步地构建视图二维姿态模板,进而方便地利用视图二维姿态模板实现目标物体三维位姿的识别功能;第二方面,由于在视图二维姿态模板的各个层级上形成了每个视图模型对应的二维模型,使得视图二维姿态模板的每个层级包含目标物体在不同姿态下的二维姿态数据,为二维图像的匹配提供了可能性;第三方面,在利用每个视图金字塔层级内的视图模型产生对应的二维模型时,通过对视图模型进行二维投影得到的投影模型来映射获得对应的映射图像,使得二维模型的投影变换思想应用于视图二维姿态模板的构建过程中,如此可以提高后续模板匹配时的鲁棒性;第四方面,在产生每个视图模型对应的二维模型时,结合梯度阈值和角度阈值来选择映射图像中的边缘点,如此可以获取合适的边缘信息和梯度信息,利于提高后续图像匹配时的稳定性和执行速度;第五方面,由于视图二维姿态模板中相邻层级内分布的二维模型通过所对应视图模型的父子视图关系进行互为关联,使得利用视图二维姿态模板对二维图像进行匹配时,便于从金字塔的高层级逐一地向低层级进行匹配,在快速地搜索得到匹配度最高的二维姿态数据的同时,也利于提高二维图像匹配的效率;第六方面,在获取目标物体的二维图像时,由于对畸变校正后的数字图像进行球面投影,从而利用球面投影后的数字图像得到目标物体的二维图像,如此可以消除数字图像的透视失真,利于避免二维图像受到透视失真的不利影响;第七方面,由于利用最小二乘法优化已经确定的三维位姿,使得优化后的三维位姿更加符合目标物体相对于摄像装置的位置姿态,利于提高三维位姿识别的准确度;第八方面,本申请技术方案可以仅仅利用一个摄像装置采集到的数字图像即可实现对目标物体的三维位姿识别,如此可以大大地降低定位抓取系统的硬件成本,具有较高的应用价值。
附图说明
图1为本申请中视图二维姿态模板的构建方法的流程图;
图2为生成目标物体在不同姿态下分别对应视图的流程图;
图3为建立视图树且形成视图金字塔的流程图;
图4为产生二维模型且构建视图二维姿态模板的流程图;
图5为目标物体的结构示意图;
图6为在目标物体的中心建立球坐标系的原理示意图;
图7为在参考坐标系中进行坐标转换计算的原理示意图;
图8为摄像装置成像模型的原理示意图;
图9为建立视图树的原理示意图;
图10为视图树中形成父子视图关系的示意图;
图11为视图金字塔的结构示意图;
图12为本申请中目标物体三维位姿识别方法的流程图;
图13为获取目标物体的二维图像的流程图;
图14为从视图二维姿态模板中搜索得到匹配度最高的二维姿态数据的流程图;
图15为本申请中目标物体的定位抓取系统的结构示意图;
图16为处理器和控制器的结构示意图。
具体实施方式
下面通过具体实施方式结合附图对本发明作进一步详细说明。其中不同实施方式中类似元件采用了相关联的类似的元件标号。在以下的实施方式中,很多细节描述是为了使得本申请能被更好的理解。然而,本领域技术人员可以毫不费力的认识到,其中部分特征在不同情况下是可以省略的,或者可以由其他元件、材料、方法所替代。在某些情况下,本申请相关的一些操作并没有在说明书中显示或者描述,这是为了避免本申请的核心部分被过多的描述所淹没,而对于本领域技术人员而言,详细描述这些相关操作并不是必要的,他们根据说明书中的描述以及本领域的一般技术知识即可完整了解相关操作。
另外,说明书中所描述的特点、操作或者特征可以以任意适当的方式结合形成各种实施方式。同时,方法描述中的各步骤或者动作也可以按照本领域技术人员所能显而易见的方式进行顺序调换或调整。因此,说明书和附图中的各种顺序只是为了清楚描述某一个实施例,并不意味着是必须的顺序,除非另有说明其中某个顺序是必须遵循的。
本文中为部件所编序号本身,例如“第一”、“第二”等,仅用于区分所描述的对象,不具有任何顺序或技术含义。而本申请所说“连接”、“联接”,如无特别说明,均包括直接和间接连接(联接)。
实施例一、
请参考图1,本申请公开一种视图二维姿态模板的构建方法,其包括步骤S110-S140,下面分别说明。
步骤S110,获取目标物体对应的三维模型的模板信息。
需要说明的是,这里的目标物体可以是工业流水线上的产品、物件箱内的机械零件、操作台上的工具等,例如图5中所示的不规则形状的机械零件。那么,可以通过诸如三维绘图工具,接触式或非接触式的扫描设备来获取该些目标物体的三维的图形信息,该图形信息可以是目标物体表面的一部分外观形状数据。
例如,目标物体对应的三维模型可以通过CAD模型或类似三维描述来表达,比如通过几种可获得CAD软件工具中的一种进行生成即可,由于多数CAD软件工具可以输出STL或者OBJ文件格式的三维数据表示,优选地选择支持三维目标的STL文件,从而从STL文件中获得模板信息。
步骤S120,根据模板信息生成目标物体在不同姿态下分别对应的视图。
需要说明的是,模板信息包含有目标物体在不同旋转姿态下的外观形状数据,利用虚拟的摄像装置环绕于目标物体,在以目标摄像装置(比如虚拟摄像机)的视角观察目标物体时就可以得到目标物体在不同姿态下分别对应的视图。
步骤S130,根据生成的各个视图建立视图树,形成视图金字塔,该视图金字塔包括高低分布的多个层级,相邻层级内形成有父子视图关系的多对视图模型。
步骤S140,利用视图金字塔中每一个层级内的每个视图模型产生对应的二维模型,从而构建得到视图二维姿态模板。本实施例中的二维模型包括目标物体在相应姿态下的二维位姿数据,视图二维姿态模板用于对目标物体进行三维位姿的识别。
在本实施例中,参见图2,上述的步骤S120可以包括步骤S121-S124,分别说明如下。
步骤S121,在一球坐标系中计算模板信息中各个数据点的映射坐标。这里的映射坐标被用于转换到参考坐标系,使得模板信息被转换到参考坐标系。
需要说明的是,可以假定一个虚拟摄像机围绕于目标物体的周围放置,目标物体的三维模型位于一球坐标系的中心处,将目标物体在不同姿态下对应的视图限定在围绕坐标系中心的特定球面四边形中来确定位姿范围,例如图6中所示的球坐标系。这里使用球坐标系的经度为α、纬度为β、半径为d,因为映射过程中虚拟摄像机总是指向球坐标系的中心,所以虚拟摄像机绕XY平面旋转的滚转角ω是必须确定的自由度保持角,因此,虚拟摄像机的姿态由四个参数α、β、d和ω确定。在选择球坐标系时,使赤道平面与直角坐标系的XZ平面对应,Y轴指向南极,Z轴指向零初位置的子午线的方向,从而使得摄像具有与参考坐标系的方向相同的坐标系,且仅在Z轴负向平移t,且满足α=0,β=0,d=t且ω=0。在建立球坐标系之后,便可以计算模板信息中的各个数据点在球坐标系中的映射坐标。
本领域的技术人员可以理解,在另一个具体实施例中,可以忽略步骤S121,从而在没有球坐标系参考的情况下,直接根据步骤S122将模板信息中的各个数据点转换到参考坐标系。
步骤S122,将模板信息转换到参考坐标系,在预设的三维姿态变化范围内对坐标转换后的模板信息进行离散化采样,得到目标物体的透视投影视图。本实施例中的参考坐标系与目标摄像装置(比如上文中提及的虚拟摄像机)所在的摄像机坐标系的方向相同,且参考坐标系的原点位于摄像机坐标系的一个坐标轴上。
需要说明的是,对模板信息进行坐标转换的目的是将模板信息转化为三角面平面集合,其中平面集合可以通过临近的三角形进行邻接,从而形成目标物体的三角网格曲面。在三角网格曲面上,每个三角形可以通过构成平面的法向量的三个元素进行表示,即(nx,ny,nz),分别代表了三角形的重心与坐标系原点连接构成的向量的x、y、z分量。
在一具体实施例中,根据步骤S121中的方式选择目标物体的重心作为原点,目标物体的三维模型的X轴、Y轴和Z轴作为坐标轴方向,从而建立球坐标系,以及在球坐标系中得到模板信息中各个数据点的映射坐标。接下来,可以利用图6中建立的球坐标系得到图7中示意的坐标转换过程,从而实现球坐标中模板信息转换到直角的参考坐标系内。对于球坐标系中的数据点为(px,py,pz),在平面上变换为极坐标为
Figure BDA0002292289490000091
对半径进行球坐标变换可得
Figure BDA0002292289490000092
变换为直角坐标为
x=r sinφ,y=r cosφ,z=pz
经过图7示意的坐标转换即可将球坐标系中的各个数据点坐标转换到参考坐标系中,实现数据点坐标的平面转换。
需要说明的是,在预设的三维姿态变化范围内对坐标转换后的模板信息进行离散化采样的目的在于无需确定用于采样的参数值,并且能够选取取样步长提高目标物体在后续识别时的鲁棒性和速度最大化,减小后续目标物体的三维位姿在线匹配和姿态识别的时间,加快识别速度。
需要说明的是,三维姿态变化范围可以由用户进行指定,通过球坐标系的参数和目标摄像装置(比如虚拟摄像机)的滚转角范围来确定。例如,球坐标系的经度范围由区间[αlh]设定,纬度区间由[βlh]设定,半径范围由[dl,dh]设定;目标摄像装置的滚转角由[ωlh]设定。选择的区间越大,那么后续三维位姿在线匹配及识别的时间就越长,在大多数工业应用中,摄像装置和目标物体间的相对姿态不会变化太大。
需要说明的是,在离散化采样过程中,可以仅依据目标摄像装置的位姿进行采样,不需要依据目标摄像装置的滚转角进行采样离散化。因为变化的摄像装置的滚转角不会改变视图,因此透视投影图仅仅表达图像平面中的二维转动。用户指定的三维姿态变化范围平均分布在三维空间中,基于摄像装置的内部参数和相似性度量的容差,可以确定出离散化步长。若在三维姿态变化范围中,经度范围由区间[αlh]设定,纬度区间由[βlh]设定,半径范围由[dl,dh]设定,离散化采样过程为设计或自适应出来经度、纬度以及半径的步长为δα、δβ和δd,那么对范围内数据进行计算
Figure BDA0002292289490000101
其中,
Figure BDA0002292289490000102
表示向上取整运算。由此可以获得离散化步长为
Figure BDA0002292289490000103
根据离散化步长计算相应的经度、纬度和半径,分别表示为
αi=αl+iδ′αj=βl+jδ′β,dk=dl+kδ′d
其中,i,j,k为相应的索引,根据αij,dk计算出外参矩阵,按照模型生成流程,即可完成离散化采样过程,得到目标物体的透视投影视图。
可以理解,目标物体的透视投影视图是在用户设定的三维姿态变化范围内生成的,还需要确定目标物体在球坐标系的球心处,此时目标摄像装置的位置才能够通过球坐标的经度、纬度和半径所确定的区间来表达,使得目标摄像装置总是指向目标物体的中心。
步骤S123,根据透视投影视图将模板信息投影到三通道的视图平面中,得到三通道的彩色图像,彩色图像中的每个像素位置填充目标物体上对应位置的法向量,根据彩色图像形成目标物体在不同姿态下分别对应的视图。
需要说明的是,透视投影视图是目标物体在参考坐标系中的三维表达,根据平面视图表达的摄像装置的姿态表达需要,要在透视投影视图的基础上将模板信息进一步地投影到视图平面中,并用三个颜色通道进行表示,即采用RGB产生三通道的彩色图像,彩色图像中每个像素位置填充目标物体上对应网格三角的法向量的三个元素。该投影方式得到三通道彩色图像的优点是:可以将彩色图像中边缘幅度与三维空间中两个相邻平面的法向量之间的夹角相结合。
在一个具体实施例中,假设两个模板信息中相邻表面的法向量分别为n=(x,y,z)T和n′=(x′,y′,z′)T,则可以得到协方差矩阵,且表示为
Figure BDA0002292289490000111
其中,对于三通道的彩色图像,矩阵参数为
Figure BDA0002292289490000112
Figure BDA0002292289490000113
Figure BDA0002292289490000114
可以理解,两个单位法向量构成一个等腰三角形,最后两个法向量的夹角δ=2arcsin(A/2)。
步骤S124,获取目标摄像装置(比如提及的虚拟摄像机)的内参,根据内参对各个视图进行畸变校正,计算畸变反变换映射图,利用畸变反变换映射图消除摄像装置对各个视图的畸变影响。
需要说明的是,利用目标摄像装置的内参对各个视图进行畸变校正的目的是保证获取高精度的三维目标姿态,即使在假定目标摄像装置的镜头存在严重畸变,仍能够进行目标识别。
例如,图8显示了一个针孔摄像装置的透视投影关系,世界坐标系中点Pw通过镜头投影中心投影到成像平面上的点p,f表示摄像装置的主距。首先应该注意点Pw是在世界坐标系(WCS)中的坐标点,为了将其投影到成像平面上,需要将其转换到摄像机坐标系(CCS)中。摄像机坐标系的x轴和y轴分别平行于图像的c轴和r轴,z轴垂直于成像平面并且z轴的方向设置将使摄像机前的所有点的坐标为正数。在投影到成像平面后,镜头的畸变将导致坐标(u,v)T发生了变化,这个变化可以单独在成像平面上建立模型,也就是说这里不需要三维信息。对于大多数镜头而言,它们的畸变都可以充分地近似为径向畸变,可以表达为
Figure BDA0002292289490000121
其中,参数κ表示了径向畸变量级。如果κ为负值,即变为桶形畸变,如果κ为正值,即变为枕形畸变。可以通过下式进行畸变校正:
Figure BDA0002292289490000122
最后,将点(u,v)T从成像平面坐标系转换到图像坐标系(ICS)中,可以表示为
Figure BDA0002292289490000123
其中,sx和sy是缩放比例关系。对于针孔摄像机模型来讲,它们表示图像摄像装置上水平和垂直方向上相邻像素之间的距离。
在本实施例中,参见图3,上述的步骤S130可以包括步骤S131-S134,分别说明如下。
步骤S131,利用生成的各个视图形成视图树的第一级,对于第一级内的所有视图,计算相邻视图之间的相似性,将相似性超过第一级对应的特定临界值的视图作为子视图且进行位姿合并,合并后的视图设于第一级内。
可以参见图9,生成的各个视图分别用一个个三角形进行表示,每个三角形是可以通过球坐标(αij,dk)来表示,由此形成视图树的第一级。那么,可以在第一级内进行相邻视图之间的相似性计算,如果两幅视图之间的相似性大于给定的阈值(即第一级对应的特定临界值),则两幅视图之间可以进行位姿合并,合并后的视图仍然为三角形进行表示且设置于第一级内。
相似性指的是两幅视图的相似程度,可以用公式表示为
Figure BDA0002292289490000124
其中,mt、mf分别用公式表示为
Figure BDA0002292289490000125
Figure BDA0002292289490000126
需要说明的是,特定临界值指的是判断两幅视图进行位姿合并的下限标准,范围可以设定在[0,1]之间,通常为两幅视图之间相似程度的度量标准。
步骤S132,将第一级内合并后的视图和未被合并的视图映射形成视图树的第二级,对于第二级内的所有视图,计算相邻视图之间的相似性,将相似性超过第二级对应的特定临界值的视图进行位姿合并,合并后的视图和未被合并的视图均作为父视图且在第一级内对应的视图作为该父视图所关联的子视图,从而得到第二级和第一级之间的父子视图关系。
需要说明的是,对映射到每一级上的视图进行位姿合并,可以减少每一级上视图的数量,由此利于降低视图在内存中的占用空间,同时利于提高后续匹配操作的处理速度。
步骤S133,依次类推,分别得到视图树中高低相邻两级之间的父子视图关系,直至最高一级上的视图不能再进行位姿合并为止,由此建立具有多级的视图树,该视图树的每一级内的父视图和设于低一级内对应的子视图之间通过参考位置互为关联。
参见图9,高一级内的视图数目相对于低一级内的视图数目呈减少的状态,这是由于低一级内的视图映射到高一级内且在高一级内进行位姿合并而产生导致的结果,只要有一些视图在某个高一级内进行了位姿合并,那么该高一级和相邻的第一级之间就存在父子视图关系。
例如,图9中箭头所指示的三角形之间存在的父子视图关系可以通过图10进行展示,第一级内的四个视图(用四个三角形表示,每个三角形表示的本级内合并后的视图或者未被合并的视图)映射到第二级内时位姿合并后形成了第二级内的一个视图;第二级内的三个视图映射到第三级内时进行位姿合并后形成了第三级内的一个视图。那么,第二级和第一级之间就形成了父子视图关系,第二级内中间的视图就是第一级内四个视图的父视图,第一级内的四个视图就是第二级内中间的视图的子视图;此外,第三级和第二级之间也形成了父子视图关系,第三级内的视图就是第二级内三个视图的父视图,第二级内的三个视图就是第三级内的视图的子视图。
需要说明的是,父视图和子视图是相对存在的,最高级上的视图没有父视图,最低级上的视图没有子视图,父视图和子视图之间通过参考位置进行相关关联,如此可以方便地寻找到任意一个父视图所对应的各个子视图。参考位置存储在视图树所表示的树形结构中,可以理解为父视图和子视图之间的连接节点,每个父节点连接到一个或多个子节点,而相对应的每个子节点连都接到一个父节点上。
可以理解,通过计算全部相邻视图之间的相似性,选择具有最高相似性的视图对,将两个视图合并为一个视图并且重新计算新视图和它的相邻视图之间的相似性来进行视图合并。那么,重复这个过程就可以直到最高的相似性低于当前级的特定临界值。
步骤S134,根据视图树的每一级内分布的每个视图生成对应的视图模型,构建视图金字塔的一个层级,结合各个层级形成视图金字塔。
在视图树中,假定对产生的各个视图进行本级合并和向上一级的映射之后,在第五级上的视图不能再进行位姿合并,则可以建立具有五级的视图树。对于任意级内分布的每个视图,利用视图的像素位置填充值生成对应的视图模型,从而得到图11所示意的视图金字塔,这里的视图金字塔包括五个由低到高的层级,分别表示是为层级1、层级2、层级3、层级4和层级5。
需要说明的是,在视图金字塔上,高层级内各个视图模型所表示的目标物体的图像分辨率较小,而低层级上各个视图模型所表示的目标物体的图像分辨率较大,相邻层级之间具有分辨率对半减小的特性。
在本实施例中,参见图4,上述的步骤S140可以包括步骤S141-S144,分别说明如下。
步骤S141,对于视图金字塔的每一个层级内的任意视图模型,根据预设的二维姿态变化范围对该视图模型进行二维投影以得到投影模型,根据投影模型映射得到对应的映射图像。
需要说明的是,二维姿态变化范围可以由用户进行预先设定,可以通过球坐标系的参数来确定,这里不再进行具体说明。此外,视图金字塔的每一个层级内的各个视图模型还不能准确表达目标物体在不同位姿下的二维姿态,需要对视图模型进行二维投影,从而实现二维姿态的转化。
需要说明的是,目标物体的三维表达使用由当前视图模型表达的目标摄像装置的姿态被投影到图像平面中,因此获得了映射图像,这里映射图像包括目标物体上相应位置的法向量的三个元素,此映射图像中边缘幅度与目标物体的两个相邻面之间的角度直接相关,那么这里的投影模型可以表达的信息包括边缘位置和每个边缘的方向。
步骤S142,选择映射图像中超出预设的梯度阈值和角度阈值的边缘点,利用匹配位姿对选择的边缘点进行增强处理,用于通过非极大值抑制和边缘细化的运算得到增强处理后的边缘点。
其中,对于非极大值抑制和边缘细化的运算目的在于删除细化后的边缘区域曲率超过预设值的像素点。曲率变化较大的像素点通常是噪点,因此需要将其滤除,增加映射图像的信噪比,使后续模板匹配操作更稳定。图像曲率的计算比较耗时,故本实施例采用腐蚀操作来等价曲率计算,具体采用下面四种核进行腐蚀操作
Figure BDA0002292289490000151
Figure BDA0002292289490000152
采用上述四种核对细化后的边缘进行腐蚀操作,可以删除曲率超过预设值的像素点,从而达到对映射图像的边缘点进行增强处理的要求。这里的预设值可根据具体需求或者实际模板而定,不做具体限制。
需要说明的是,由于采用非极大值抑制和边缘细化的运算进行增强处理的过程还可以采用现有技术中具体操作方法,这里不再进行列举和具体说明。
步骤S143,根据预设的旋转缩放范围对增强处理后的各个边缘点进行旋转缩放处理,生成该视图模型对应的二维模型。可以理解,对于视图金字塔的每个层级和每个层级上的每个视图模型均产生对应的二维模型。
假设K是目标摄像装置的内参矩阵,目标摄像装置相对于世界坐标系的姿态为旋转矩阵R,因此三维世界坐标系的点X到二维图像点x的投影变换可以表示为x=KRX。如果摄像机绕它的光学中心旋转R,则相同的世界坐标系中的点被映射到旋转后摄像机的图像中的新点x′=KRX。因此可得
x′=KTK-1x=Hx
如果需要根据投影模型的位置pcur=(c,r,1)T转换到二维模型点,就必须知道K和R。这里的参数c指的是图像的列坐标,r指的是图像的行坐标。
内参矩阵K可以根据目标摄像装置的内参(比如主距f、主点(cx,cy)、缩放比例因子Sx和Sy、畸变系数κ)获得,目标摄像装置的旋转矩阵可以根据图像中投影模型的位置计算出来,首先引入摄像装置不绕z轴旋转的约束,以对问题明确定义。随后,从pcur中得到绕目标摄像装置x轴和y轴的旋转,首先pcur通过P=(Px,Py,Pz)T=K-1pcur转换到世界坐标系中,绕摄像机x轴和y轴的旋转角度可以分别表示为
Figure BDA0002292289490000153
因此,旋转矩阵R可以根据R=Ryy)Rxx)得到,其中
Figure BDA0002292289490000161
需要说明的是,所得到的二维模型是通过假设目标摄像装置指向目标物体的中心产生的,所以二维模型和投影模型能够通过二维投影变换联系起来,当在后续三维位姿的匹配过程中考虑全部8个自由度(3个旋转、3个平移和2个缩放)时,会使得匹配操作变得十分缓慢,从而无法满足实时性的要求。此外,若是目标摄像装置在后续的三维位姿识别过程中没有指向目标物体的中心,那么针对二维位姿的匹配操作也会发生失败。
需要说明的是,在每个视图模型生成之后,对于视图金字塔的每个层级上的视图模型既可以生成对应的二维模型,该二维模型由多个具有相应梯度向量的边缘点构成。
需要说明的是,产生视图模型的作用是计算出来目标物体在不同位姿视图上的坐标,生成二维模型的作用是在产生的视图模型的对应位置填充相应的灰度值。
步骤S144,将视图金字塔的每一个层级内的各个视图模型分别对应的二维模型设于该层级内,重新构建视图金字塔的层级,组合各个层级形成视图二维姿态模板,该视图二维姿态模板中相邻层级内分布的二维模型通过所对应视图模型的父子视图关系进行互为关联。
需要说明的是,视图二维姿态模板是在视图金字塔的基础上构建的,其也有类似于图11所示的金字塔结构。那么,对于视图二维姿态模板上的每一个层级,该层级由多个二维模型组成,每个二维模型储存有目标物体在相应姿态下的二维姿态数据,利用该二维姿态数据的形成过程可以反向推导出目标物体的三维姿态。此外,在相邻的层级上的二维模型也可以通过已经形成的父子视图关系以树形结构方式进行互为关联。
本领域的技术人员可以理解,实施例一中公开的构建方法在构建视图二维姿态模板时,存在以下的技术优势:(1)在构建视图二维姿态模板时,将目标物体在不同姿态下分别对应的视图与金字塔思想相结合,从而得到具有高低分布的多个层级且相邻层级内形成有父子视图关系的多对视图模型,利于借助视图金字塔进一步地构建视图二维姿态模板,进而方便地利用视图二维姿态模板实现三维位姿识别的功能;(2)在视图二维姿态模板的各个层级上形成了每个视图模型对应的二维模型,使得视图二维姿态模板的每个层级包含目标物体在不同姿态下的二维姿态数据,为二维图像的匹配提供了可能性;(3)在利用每个视图金字塔层级内的视图模型产生对应的二维模型时,通过对视图模型进行二维投影得到的投影模型来映射获得对应的映射图像,使得二维模型的投影变换思想应用于视图二维姿态模板的构建过程中,如此可以提高后续模板匹配时的鲁棒性;(4)在产生每个视图模型对应的二维模型时,结合梯度阈值和角度阈值来选择映射图像中的边缘点,如此可以获取合适的边缘信息和梯度信息,利于提高二维图像与视图二维姿态模板进行匹配时的稳定性和执行速度。
实施例二、
请参考图12,在实施例一种公开的视图二维姿态模板的构建方法的基础上,本实施例公开一种目标物体三维位姿的识别方法,其包括步骤S210-S230,下面分别说明。
步骤S210,获取目标物体的二维图像。
需要说明的是,这里的目标物体可以是工业流水线上的产品、物件箱内的机械零件、操作台上的工具等,例如图5中所示的不规则形状的机械零件。那么,可以通过设置在目标物体周围的摄像装置来采集目标物体的数字图像,进而根据数字图像得到目标物体的二维图像。
步骤S220,将二维图像与步骤S140中构建得到的视图二维姿态模板进行匹配,从视图二维姿态模板中搜索得到匹配度最高的二维姿态数据。
步骤S230,根据匹配度最高的二维姿态数据确定目标物体的三维位姿,包括:利用匹配度最高的二维姿态数据判断二维图像的旋转角度、缩放和位置,根据二维图像的旋转角度、缩放和位置确定目标物体的三维位姿,以及利用最小二乘法优化三维位姿,得到优化后的三维位姿。
在本实施例中,参见图13,上述的步骤S210可以包括步骤S211-S213,分别说明如下。
步骤S211,利用一摄像装置采集目标物体的数字图像。这里的摄像装置可以采用数字摄像机或数字相机,具有数字图像的实时采集功能。可以理解,摄像装置可以是实施例一中所提及目标摄像装置或者虚拟摄像机的具体应用,所以同样需要保证摄像装置指向目标物体的中心位置,也就是说参考坐标系与该摄像装置所在的摄像机坐标系的方向相同,且参考坐标系的原点位于摄像机坐标系的一个坐标轴上。
步骤S212,获取摄像装置的内参,根据内参对数字图像进行畸变校正,以消除摄像装置对数字图像的畸变影响。
在一个具体实施例中,输入摄像装置的内参,主要包括:主距f、主点(cx,cy)、缩放比例因子Sx和Sy、畸变系数κ。若考虑到摄像装置的径向畸变和切向畸变,可以设由世界坐标系变换到相机坐标系
Figure BDA0002292289490000181
其中,R和t为世界坐标系到相机坐标系的旋转和平移变换矩阵,也是摄像装置的外参部分,可得
x′=x/z,y′=y/z
根据主心(cx,cy)和主距f可得像素坐标
Figure BDA0002292289490000182
畸变后坐标为
Figure BDA0002292289490000183
Figure BDA0002292289490000184
其中,r2=x′2+y′2。因此,可得畸后图像坐标为
Figure BDA0002292289490000185
此时,可以利用实施例一中步骤S124中公开的畸变校正方法对数字图像进行畸变校正。这里仅具体说明数字图像可能发生的径向畸变的校正情况,可以表达为
Figure BDA0002292289490000186
其中,参数κ在这里具体表示径向的畸变系数。可以通过下式进行畸变校正
Figure BDA0002292289490000187
最后,将点(u,v)T从成像平面坐标系转换到图像坐标系(ICS)中,可以表示为
Figure BDA0002292289490000188
其中,sx和sy是缩放比例关系,c表示图像的列坐标,r表示图像的行坐标。
步骤S213,对畸变校正后的数字图像进行球面投影以消除透视失真,利用球面投影后的数字图像得到目标物体的二维图像。
需要说明的是,在对视图二维姿态模板的最高层级进行搜索时,需要找到相匹配的二维模型,此时只能在最高层级采用穷举匹配的方式,也就是在所有的图像位置进行匹配,而一旦存在透视失真,就可能导致接下来低层级上的匹配全部失败,虽然多数情况下可以忽略透视失真,但是在某些特殊场景下必须考虑透视失真。
为解决数字图像存在透视失真的问题,可以将二维模型旋转到赤道球面上进行解决,因为摄像装置绕它的光学中心转动时投影不会发生改变。对于步骤S143中转换到二维模型点所需的投影模型的位置pcur=(c,r,1)T,首先将pcur通过P=(Px,Py,Pz)T=K-1pcur转换到世界坐标系中,映射可得
Figure BDA0002292289490000191
作为匹配的结果,可获得图像中二维匹配的姿态(位置、旋转角度和缩放)。那么,二维姿态可以根据ps=(rs,cs,1)T、旋转角度γ和缩放s计算出来。因此,二维姿态矩阵可以表示为
Figure BDA0002292289490000192
进一步地,三维位姿变换矩阵可以表示为
Figure BDA0002292289490000193
因此,利用球面投影后的数字图像得到目标物体的二维图像可以表示为Hs=H2H1
在本实施例中,参见图14,上述的步骤S220可以包括步骤S221-S224,分别说明如下。
步骤S221,从视图二维姿态模板的最高层级开始搜索,在同一个层级上得到一个或多个与二维图像相匹配的二维模型。
需要说明的是,从视图二维姿态模板的最高层开始搜索的目的在于,顶层的数据量少,计算速度快,在顶层进行匹配之后继续按照树形结构进行低层级的匹配计算,利于最大程度的减少运算时间。
在一个具体实施例中,在相同层级上,将二维图像分别与每个二维模型进行相似性计算,根据计算结果来判断是否匹配。若假设一个二维模型的梯度信息为di=(ti,ui),对应坐标为(r,c);二维模型中二维图像对应位置的坐标为(r+r′i,c+c′i),法向量为
Figure BDA0002292289490000201
那么,之间的相似性(余弦相似度)表示为
Figure BDA0002292289490000202
在相似性s大于或等于设定的阈值时,认为两者相匹配,反之则认为两者不相匹配;这里的阈值可以由用户根据需要而进行设定,不做具体限制。
需要说明的是,在最高层级上得到一个或多个与二维图像相匹配的二维模型之后,可以根据已匹配的二维模型所对应视图模型的父子视图关系,在低层级上对互为关联的二维模型继续进行搜索,直至在搜索的二维模型中得到匹配度最高的二维姿态数据。下面将通过步骤S222-S224对低层级上的搜索过程进行具体说明。
步骤S222,将已匹配的二维模型中匹配形成的二维姿态数据存入候选匹配列表。
需要说明的是,将二维图像输入至视图二维姿态模板中,识别开始于视图二维姿态模板的最高层级,在这里可以获得至少一个有效的二维模型。对于二维图像与一个二维模型的匹配过程,在必要范围内可以旋转并缩放该二维模型,并且在二维图像中的每个位置处与旋转和缩放的二维模板之间计算相似性,大满足匹配的二维姿态数据(包括位置、旋转角度和缩放)会被存储在候选匹配列表中。
步骤S223,在次低层级上搜索与已匹配的二维模型互为关联的二维模型,若此层级上有与二维图像相匹配的二维模型,则利用此层级上已匹配的二维模型中匹配形成的二维姿态数据对所述候选匹配列表进行修正,直至遍历视图二维姿态模板的各个层级。
例如,在视图二维姿态模板的层级4(最高层级)上匹配得到了一个二维模型,然后在层级3上继续进行搜索,确定层级3上与该二维模型存在参考位置关联的多个二维模型,利用步骤S221中的计算方法对确定的多个二维模型分别进行相似性计算,在多个二维模型中有二维模型通过匹配时,用通过匹配的二维模型中匹配形成的二维姿态数据对候选匹配列表进行刷新,覆盖已经存储的二维姿态数据。重复此过程,逐一地对层级2、层级1、层级0上关联的二维模型进行匹配,如此追踪到视图二维姿态模板的最低层级。
需要说明的是,这种根据父视图和子视图之间位置关联关系的匹配方式,是在有限的参数范围内计算相似性,意味着计算相似性的范围限定在上一层级内已匹配二维模型所限定匹配位姿的位置、旋转角度和缩放的变化范围内,利于减小每个层级的搜索速度,缩短匹配用时。
步骤S224,遍历完成后将候选列表中保留的二维姿态数据确定为匹配度最高的二维姿态数据。
本领域的技术人员可以理解,从视图二维位姿模板中得到匹配度最高的二维姿态数据之后,该二维姿态数据中包含有对应二维模型的位置、旋转角度和缩放等相关的信息,那么容易借助二维图像和该二维模型之间的相对关系,判断判断二维图像的旋转角度、缩放和位置,从而可以根据二维图像的旋转角度、缩放和位置确定目标物体的三维位姿。为获得更佳的目标物体三维位姿的识别效果,还可以利用最小二乘法优化三维位姿,得到优化后的三维位姿。
本领域的技术人员可以理解,利用实施例二中公开的识别方法来对目标物体进行三维位姿的识别时,存在以下技术优势:(1)视图二维姿态模板中相邻层级内分布的二维模型通过所对应视图模型的父子视图关系进行互为关联,使得利用视图二维姿态模板对二维图像进行匹配时,便于从金字塔的高层级逐一地向低层级进行匹配,在快速地搜索得到匹配度最高的二维姿态模型的同时,也利于提高二维图像匹配的效率;(2)在获取目标物体的二维图像时,由于对畸变校正后的数字图像进行球面投影,从而利用球面投影后的数字图像得到目标物体的二维图像,如此可以消除数字图像的透视失真,利于避免二维图像受到透视失真的不利影响;(3)由于利用最小二乘法优化已经确定的三维位姿,使得优化后的三维位姿更加符合目标物体相对于摄像装置的位置姿态,利于提高三维位姿识别的准确度。
实施例三、
请参考图15,在实施例二中公开的目标物体三维位姿识别方法的基础上,本实施例公开一种目标物体的定位抓取系统,其主要包括摄像装置31、处理器32、控制器33和运动机构34,下面分别说明。
摄像装置31设于目标物体的周围,用于采集目标物体的数字图像,这里的目标物体可以是工业流水线上的产品、物件箱内的机械零件、操作台上的工具等,例如图5中所示的不规则形状的机械零件。那么,摄像装置31可以采用数字摄像机或数字相机,具有数字图像的实时采集功能。可以理解,摄像装置31可以是实施例一中所提及目标摄像装置或者虚拟摄像机的具体应用,所以同样需要保证摄像装置31指向目标物体的中心位置,也就是说参考坐标系与该摄像装置所在的摄像机坐标系的方向相同,且参考坐标系的原点位于摄像机坐标系的一个坐标轴上。
处理器32与摄像装置31连接,用于根据摄像装置31采集到的数字图像获取目标物体的二维图像,以及用于通过实施例二中公开的识别方法得到目标物体的三维位姿。关于处理器32根据采集到的数字图像获取目标物体的二维图像的过程可以具体参考实施例二中的步骤S212-S213,这里不再进行赘述。关于处理器32得到目标物体的三维位姿的过程可以具体参考实施例二中的步骤S221-S224和步骤S230,这里不再进行赘述。
控制器33与摄像装置31、处理器32连接,用于控制摄像装置31采集目标物体的数字图像,比如设置摄像装置31的图像采集时间、采集间隔、采集位置、曝光度、分别率等参数。此外,控制器33还用于根据处理器32输出的三维位姿产生运动指令,从而控制一运动机构34抓取目标物体。
运动机构34可以是机械手臂、机器人等执行机构,其可以接收控制器33输出的运动指令,产生相应的抓取动作来抓取目标物体,例如,从目标物体箱35中抓取一个目标物体。
在本实施例中,参见图16,处理器32可以包括模板构建单元321、识别与定位单元322,分别说明如下。
模板构建单元321用于构建目标物体的视图二维姿态模板。在一个具体实施例中,模板构建单元321包括信息获取模块、视图生成模块、金字塔建立模块和模板构建模块(该些功能模块在处理器32中实现,未在附图中进行示意)。其中,信息获取模块用于获取目标物体对应的三维模型的模板信息,具体可以参考实施例一中的步骤S110;视图生成模块用于根据模板信息生成目标物体在不同姿态下分别对应的视图;具体可以参考实施例一中的步骤S120;金字塔建立模块用于根据生成的各个视图建立视图树且形成视图金字塔,具体可以参考实施例一中的步骤S130;模板构建模块用于利用视图金字塔中每一个层级内的每个视图模型产生对应的二维模型且构建得到视图二维姿态模板,具体可以参考实施例一中的步骤S140。需要说明的是,金字塔建立模块中形成的视图金字塔包括高低分布的多个层级,相邻层级内形成有父子视图关系的多对视图模型,这里的二维模型包括目标物体在相应姿态下的二维位姿数据。
识别与定位单元322和模板构建单元321连接,用于利用视图二维姿态模板以及目标物体的二维图像对目标物体进行三维位姿识别,得到目标物体的三维位姿。在一个具体实施例中,识别与定位单元322包括图像获取模块、二维匹配模块和三维识别模块(该些功能模块也在处理器32中实现,未在附图中进行示意),其中,图像获取模块用于获取目标物体的二维图像,具体可以参考实施例二中的步骤S210;二维匹配模块用于将二维图像与视图姿态二维模板进行匹配并且从视图二维姿态模板中搜索得到匹配度最高的二维姿态数据,具体可以参考实施例二中的步骤S220;三维识别模块用于根据匹配度最高的二维姿态数据确定目标物体的三维位姿,具体可以参考实施例二中的步骤S230。
在本实施例中,控制器33可以包括优化模块331和控制模块332。其中,优化模块331和处理器32中的识别与定位模块322连接,用于根据目标物体相对于摄像装置31的三维位姿规划运动机构34的运动路线和抓取位置;控制模块332与优化模块331连接,用于输出控制指令,一方面控制运动机构34按照规划的运动路线和抓取位置对目标物体进行抓取,另一方面控制模块332还输出控制指令来控制摄像装置31采集目标物体的数字图像。
本领域的技术人员可以理解,本申请技术方案可以仅仅利用一个摄像装置采集到的数字图像即可实现对目标物体的三维位姿识别,如此可以大大地降低定位抓取系统的硬件成本,具有较高的应用价值。
本领域技术人员可以理解,上述实施方式中各种方法的全部或部分功能可以通过硬件的方式实现,也可以通过计算机程序的方式实现。当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器、随机存储器、磁盘、光盘、硬盘等,通过计算机执行该程序以实现上述功能。例如,将程序存储在设备的存储器中,当通过处理器执行存储器中程序,即可实现上述全部或部分功能。另外,当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序也可以存储在服务器、另一计算机、磁盘、光盘、闪存盘或移动硬盘等存储介质中,通过下载或复制保存到本地设备的存储器中,或对本地设备的系统进行版本更新,当通过处理器执行存储器中的程序时,即可实现上述实施方式中全部或部分功能。
以上应用了具体个例对本发明进行阐述,只是用于帮助理解本发明,并不用以限制本发明。对于本发明所属技术领域的技术人员,依据本发明的思想,还可以做出若干简单推演、变形或替换。

Claims (13)

1.一种视图二维姿态模板的构建方法,其特征在于,包括:
获取目标物体对应的三维模型的模板信息;
根据所述模板信息生成所述目标物体在不同姿态下分别对应的视图;
根据生成的各个视图建立视图树,形成视图金字塔,所述视图金字塔包括高低分布的多个层级,相邻层级内形成有父子视图关系的多对视图模型;
利用所述视图金字塔中每一个层级内的每个所述视图模型产生对应的二维模型,构建得到视图二维姿态模板;所述二维模型包括所述目标物体在相应姿态下的二维位姿数据,所述视图二维姿态模板用于对所述目标物体进行三维位姿的识别。
2.如权利要求1所述的构建方法,其特征在于,所述根据所述模板信息生成所述目标物体在不同姿态下分别对应的视图,包括:
将所述模板信息转换到参考坐标系,在预设的三维姿态变化范围内对坐标转换后的所述模板信息进行离散化采样,得到所述目标物体的透视投影视图;所述参考坐标系与目标摄像装置所在的摄像机坐标系的方向相同,且参考坐标系的原点位于摄像机坐标系的一个坐标轴上;
根据所述透视投影视图将所述模板信息投影到三通道的视图平面中,得到三通道的彩色图像,所述彩色图像中的每个像素位置填充所述目标物体上对应位置的法向量,根据所述彩色图像形成所述目标物体在不同姿态下分别对应的视图。
3.如权利要求2所述的构建方法,其特征在于,在将所述模板信息转换到参考坐标系之前,还包括:在一球坐标系中计算所述模板信息中各个数据点的映射坐标,所述映射坐标被用于转换到所述参考坐标系,使得所述模板信息被转换到所述参考坐标系;
在形成所述目标物体在不同姿态下分别对应的视图之后,还包括:获取目标摄像装置的内参,根据所述内参对所述各个视图进行畸变校正,计算畸变反变换映射图,利用所述畸变反变换映射图消除所述目标摄像装置对各个视图的畸变影响。
4.如权利要求1所述的构建方法,其特征在于,所述根据生成的各个视图建立视图树,形成视图金字塔,包括:
利用生成的各个视图形成视图树的第一级,对于第一级内的所有视图,计算相邻视图之间的相似性,将相似性超过第一级对应的特定临界值的视图作为子视图且进行位姿合并,合并后的视图设于第一级内;
将第一级内合并后的视图和未被合并的视图映射形成视图树的第二级,对于第二级内的所有视图,计算相邻视图之间的相似性,将相似性超过第二级对应的特定临界值的视图进行位姿合并,合并后的视图和未被合并的视图均作为父视图且在第一级内对应的视图作为该父视图所关联的子视图,从而得到第二级和第一级之间的父子视图关系;
依次类推,分别得到视图树中高低相邻两级之间的父子视图关系,直至最高一级上的视图不能再进行位姿合并为止,由此建立具有多级的视图树,所述视图树的每一级内的父视图和设于低一级内对应的子视图之间通过参考位置互为关联;
根据所述视图树的每一级内分布的每个视图生成对应的视图模型,构建视图金字塔的一个层级,结合各个层级形成视图金字塔。
5.如权利要求4所述的构建方法,其特征在于,所述利用所述视图金字塔中每一个层级内的每个所述视图模型产生对应的二维模型,构建得到视图二维姿态模板,包括:
对于所述视图金字塔的每一个层级内的任意视图模型,根据预设的二维姿态变化范围对该视图模型进行二维投影以得到投影模型,根据所述投影模型映射得到对应的映射图像;选择所述映射图像中超出预设的梯度阈值和角度阈值的边缘点,根据预设的旋转缩放范围对选择的各个边缘点进行旋转缩放处理,生成该视图模型对应的二维模型;
将所述视图金字塔的每一个层级内的各个视图模型分别对应的二维模型设于该层级内,重新构建所述视图金字塔的层级,组合各个层级形成视图二维姿态模板,所述视图二维姿态模板中相邻层级内分布的二维模型通过所对应视图模型的父子视图关系进行互为关联。
6.如权利要求5所述的构建方法,其特征在于,在根据预设的旋转缩放范围对选择的各个边缘点进行旋转缩放处理之前,还包括:
利用匹配位姿对选择的边缘点进行增强处理,用于通过非极大值抑制和边缘细化的运算得到增强处理后的边缘点,以根据预设的旋转缩放范围对增强处理后的各个边缘点进行旋转缩放处理。
7.一种目标物体三维位姿的识别方法,其特征在于,包括:
获取目标物体的二维图像;
将所述二维图像与由如权利要求1-6中任一项所述的构建方法所得到的视图二维姿态模板进行匹配,从所述视图二维姿态模板中搜索得到匹配度最高的二维姿态数据;
根据匹配度最高的二维姿态数据确定所述目标物体的三维位姿,包括:利用匹配度最高的二维姿态数据判断所述二维图像的旋转角度、缩放和位置,根据所述二维图像的旋转角度、缩放和位置确定所述目标物体的三维位姿,以及利用最小二乘法优化所述三维位姿,得到优化后的三维位姿。
8.如权利要求7所述的识别方法,其特征在于,所述获取目标物体的二维图像,包括:
利用一摄像装置采集所述目标物体的数字图像;
获取所述摄像装置的内参,根据所述内参对所述数字图像进行畸变校正,以消除所述摄像装置对所述数字图像的畸变影响;
对畸变校正后的数字图像进行球面投影以消除透视失真,利用球面投影后的数字图像得到所述目标物体的二维图像。
9.如权利要求7所述的识别方法,其特征在于,所述从所述视图二维姿态模板中搜索得到匹配度最高的二维姿态数据,包括:
从所述视图二维姿态模板的最高层级开始搜索,在同一个层级上得到一个或多个与所述二维图像相匹配的二维模型;
根据已匹配的二维模型所对应视图模型的父子视图关系,在低层级上对互为关联的二维模型继续进行搜索,直至在搜索的二维模型中得到匹配度最高的二维姿态数据。
10.如权利要求9所述的识别方法,其特征在于,所述根据已匹配的二维模型所对应视图模型的父子视图关系,在低层级上对互为关联的二维模型继续进行搜索,直至在搜索的二维模型中得到匹配度最高的二维姿态数据,包括:
将已匹配的二维模型中匹配形成的二维姿态数据存入候选匹配列表;
在次低层级上搜索与已匹配的二维模型互为关联的二维模型,若此层级上有与所述二维图像相匹配的二维模型,则利用此层级上已匹配的二维模型中匹配形成的二维姿态数据对所述候选匹配列表进行修正,直至遍历所述视图二维姿态模板的各个层级;
遍历完成后将所述候选列表中保留的二维姿态数据确定为匹配度最高的二维姿态数据。
11.一种目标物体的定位抓取系统,其特征在于,包括:
摄像装置,用于采集目标物体的数字图像;
处理器,与所述摄像装置连接,用于根据所述数字图像获取所述目标物体的二维图像,以及用于通过权利要求7-10中任一项所述的识别方法得到所述目标物体的三维位姿;
控制器,与所述摄像装置和所述处理器连接,用于控制所述摄像装置采集所述目标物体的数字图像,以及用于根据所述处理器输出的三维位姿控制一运动机构抓取所述目标物体。
12.如权利要求11所述的定位抓取系统,其特征在于,所述处理器包括模板构建单元、识别与定位单元;
所述模板构建单元用于构建所述目标物体的视图二维姿态模板;所述模板构建单元包括信息获取模块、视图生成模块、金字塔建立模块和模板构建模块,其中信息获取模块用于获取目标物体对应的三维模型的模板信息,视图生成模块用于根据所述模板信息生成所述目标物体在不同姿态下分别对应的视图,金字塔建立模块用于根据生成的各个视图建立视图树且形成视图金字塔,模板构建模块用于利用所述视图金字塔中每一个层级内的每个视图模型产生对应的二维模型且构建得到视图二维姿态模板;所述视图金字塔包括高低分布的多个层级,相邻层级内形成有父子视图关系的多对视图模型,所述二维模型包括所述目标物体在相应姿态下的二维位姿数据;
所述识别与定位单元和所述模板构建单元连接,用于利用所述视图二维姿态模板以及所述目标物体的二维图像对所述目标物体进行三维位姿识别,得到所述目标物体的三维位姿;所述识别与定位单元包括图像获取模块、二维匹配模块和三维识别模块,其中所述图像获取模块用于获取目标物体的二维图像,所述二维匹配模块用于将所述二维图像与所述视图姿态二维模板进行匹配并且从所述视图二维姿态模板中搜索得到匹配度最高的二维姿态数据,所述三维识别模块用于根据匹配度最高的二维姿态数据确定所述目标物体的三维位姿。
13.一种计算机可读存储介质,其特征在于,包括程序,所述程序能够被处理器执行以实现如权利要求1-10中任一项所述的方法。
CN201911185440.8A 2019-11-27 2019-11-27 视图二维姿态模板的构建方法及识别方法、定位抓取系统 Active CN111079565B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911185440.8A CN111079565B (zh) 2019-11-27 2019-11-27 视图二维姿态模板的构建方法及识别方法、定位抓取系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911185440.8A CN111079565B (zh) 2019-11-27 2019-11-27 视图二维姿态模板的构建方法及识别方法、定位抓取系统

Publications (2)

Publication Number Publication Date
CN111079565A true CN111079565A (zh) 2020-04-28
CN111079565B CN111079565B (zh) 2023-07-07

Family

ID=70311916

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911185440.8A Active CN111079565B (zh) 2019-11-27 2019-11-27 视图二维姿态模板的构建方法及识别方法、定位抓取系统

Country Status (1)

Country Link
CN (1) CN111079565B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112560613A (zh) * 2020-12-02 2021-03-26 北京理工大学 零件识别方法、装置和计算机设备
CN112802101A (zh) * 2021-02-01 2021-05-14 上海交通大学 一种基于多维金字塔的分层模板匹配方法
CN113221974A (zh) * 2021-04-26 2021-08-06 中山大学 一种交叉图匹配不完整多视图聚类方法及装置
CN113313766A (zh) * 2021-03-09 2021-08-27 常州龙源智能机器人科技有限公司 机器人及其位姿计算方法、位姿计算装置
CN115497087A (zh) * 2022-11-18 2022-12-20 广州煌牌自动设备有限公司 一种餐具姿态的识别系统及其方法
CN116433673A (zh) * 2023-06-15 2023-07-14 安徽容知日新科技股份有限公司 紧固件松动检测方法、装置、电子设备和可读存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101408931A (zh) * 2007-10-11 2009-04-15 Mv科技软件有限责任公司 用于三维目标识别的系统和方法
CN104166977A (zh) * 2013-05-17 2014-11-26 中国航空工业集团公司洛阳电光设备研究所 一种图像匹配相似性测度方法及其图像匹配方法
CN105488491A (zh) * 2015-12-23 2016-04-13 西安电子科技大学 基于金字塔匹配直方图交叉核的人体睡眠姿态检测方法
CN106251353A (zh) * 2016-08-01 2016-12-21 上海交通大学 弱纹理工件及其三维位姿的识别检测方法及系统
CN108555908A (zh) * 2018-04-12 2018-09-21 同济大学 一种基于rgbd相机的堆叠工件姿态识别及拾取方法
CN109033989A (zh) * 2018-07-02 2018-12-18 深圳辰视智能科技有限公司 基于三维点云的目标识别方法、装置及存储介质
CN109636854A (zh) * 2018-12-18 2019-04-16 重庆邮电大学 一种基于line-mod模板匹配的增强现实三维跟踪注册方法
CN110176012A (zh) * 2019-05-28 2019-08-27 腾讯科技(深圳)有限公司 图像中的目标分割方法、池化方法、装置及存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101408931A (zh) * 2007-10-11 2009-04-15 Mv科技软件有限责任公司 用于三维目标识别的系统和方法
CN104166977A (zh) * 2013-05-17 2014-11-26 中国航空工业集团公司洛阳电光设备研究所 一种图像匹配相似性测度方法及其图像匹配方法
CN105488491A (zh) * 2015-12-23 2016-04-13 西安电子科技大学 基于金字塔匹配直方图交叉核的人体睡眠姿态检测方法
CN106251353A (zh) * 2016-08-01 2016-12-21 上海交通大学 弱纹理工件及其三维位姿的识别检测方法及系统
CN108555908A (zh) * 2018-04-12 2018-09-21 同济大学 一种基于rgbd相机的堆叠工件姿态识别及拾取方法
CN109033989A (zh) * 2018-07-02 2018-12-18 深圳辰视智能科技有限公司 基于三维点云的目标识别方法、装置及存储介质
CN109636854A (zh) * 2018-12-18 2019-04-16 重庆邮电大学 一种基于line-mod模板匹配的增强现实三维跟踪注册方法
CN110176012A (zh) * 2019-05-28 2019-08-27 腾讯科技(深圳)有限公司 图像中的目标分割方法、池化方法、装置及存储介质

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112560613A (zh) * 2020-12-02 2021-03-26 北京理工大学 零件识别方法、装置和计算机设备
CN112560613B (zh) * 2020-12-02 2022-08-26 北京理工大学 零件识别方法、装置和计算机设备
CN112802101A (zh) * 2021-02-01 2021-05-14 上海交通大学 一种基于多维金字塔的分层模板匹配方法
CN112802101B (zh) * 2021-02-01 2023-04-07 上海交通大学 一种基于多维金字塔的分层模板匹配方法
CN113313766A (zh) * 2021-03-09 2021-08-27 常州龙源智能机器人科技有限公司 机器人及其位姿计算方法、位姿计算装置
CN113221974A (zh) * 2021-04-26 2021-08-06 中山大学 一种交叉图匹配不完整多视图聚类方法及装置
CN115497087A (zh) * 2022-11-18 2022-12-20 广州煌牌自动设备有限公司 一种餐具姿态的识别系统及其方法
CN115497087B (zh) * 2022-11-18 2024-04-19 广州煌牌自动设备有限公司 一种餐具姿态的识别系统及其方法
CN116433673A (zh) * 2023-06-15 2023-07-14 安徽容知日新科技股份有限公司 紧固件松动检测方法、装置、电子设备和可读存储介质

Also Published As

Publication number Publication date
CN111079565B (zh) 2023-07-07

Similar Documents

Publication Publication Date Title
CN111079565B (zh) 视图二维姿态模板的构建方法及识别方法、定位抓取系统
CN110490916B (zh) 三维对象建模方法与设备、图像处理装置及介质
JP4785880B2 (ja) 三次元オブジェクト認識のためのシステムおよび方法
CN110568447B (zh) 视觉定位的方法、装置及计算机可读介质
CN109564690B (zh) 使用多向相机评估封闭空间的尺寸
CN110853075B (zh) 一种基于稠密点云与合成视图的视觉跟踪定位方法
JP4940461B2 (ja) 3次元物体認識装置及び3次元物体認識方法
JP4195096B2 (ja) 3次元表面形状再構築のための装置
CN111862302B (zh) 图像处理和对象建模方法与设备、图像处理装置及介质
JP2011129082A (ja) 3次元物体認識装置及び3次元物体認識方法
Li et al. 3D object recognition and pose estimation for random bin-picking using Partition Viewpoint Feature Histograms
JP2009128191A (ja) 物体認識装置およびロボット装置
KR20180117138A (ko) 텍스쳐가 없는 오브젝트의 포즈를 추정하기 위한 시스템 및 방법
JP2000268179A (ja) 三次元形状情報取得方法及び装置,二次元画像取得方法及び装置並びに記録媒体
CN114898313A (zh) 驾驶场景的鸟瞰图生成方法、装置、设备及存储介质
Jing Coverage planning for robotic vision applications in complex 3d environment
CN111198563B (zh) 一种用于足式机器人动态运动的地形识别方法及系统
JP2832463B2 (ja) 3次元モデルの再構成方法および表示方法
CN115719377A (zh) 一种六自由度位姿估计数据集自动采集系统
CN114187344A (zh) 一种地图构建方法、装置及设备
JP2005063012A (ja) 全方位カメラ運動と3次元情報の復元方法とその装置及びプログラム並びにこれを記録した記録媒体
Liang et al. Model-based 3d pose estimation for pick-and-place application
JP2003123057A (ja) 3次元形状モデルの生成方法および装置
JP2010186219A (ja) テンプレート生成システム、テンプレートマッチングシステムおよびテンプレート生成方法
You et al. Three-Dimensional Digital Modeling and Simulation of Virtual Reality Scene Using CAD Data

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