二维图形中目标三维关键点提取模型构建及姿态识别方法

文档序号:1673722 发布日期:2019-12-31 浏览:15次 >En<

阅读说明:本技术 二维图形中目标三维关键点提取模型构建及姿态识别方法 (Method for constructing target three-dimensional key point extraction model and recognizing posture in two-dimensional graph ) 是由 彭进业 张少博 赵万青 祝轩 李斌 张薇 乐明楠 李展 罗迒哉 王珺 于 2019-08-12 设计创作,主要内容包括:本发明公开了一种二维图形中目标三维关键点提取模型构建及姿态识别方法,通过设计了三维关键点提取模型的网络结构,能够准确、直接输出目标三维关键点的坐标;通过设计的关键点损失函数,使网络利用无监督的方式自主学习提取具有语义一致性和几何一致性的关键点,提高了三维关键点提取的准确率。(The invention discloses a method for constructing a target three-dimensional key point extraction model and identifying a posture in a two-dimensional graph, which can accurately and directly output the coordinates of a target three-dimensional key point by designing a network structure of the three-dimensional key point extraction model; by means of the designed key point loss function, the network can independently learn and extract key points with semantic consistency and geometric consistency in an unsupervised mode, and the accuracy of extracting the three-dimensional key points is improved.)

二维图形中目标三维关键点提取模型构建及姿态识别方法

技术领域

本发明涉及目标三维姿态识别方法,具体涉及一种二维图形中目 标三维关键点提取模型构建及姿态识别方法。

背景技术

目标三维姿态识别是指识别目标物体的三维位置和方向,是诸多 计算机视觉应用如增强现实、机器人控制以及无人驾驶任务中的关键 模块。但是目标三维姿态识别的基础是需要对目标物体的三维关键点 进行提取,在图像上找到物体的二维位置并且在物体上提取一些关键 点比如物体3D边框在图像上的投影,这些方法通过利用大量的监督 信息所以十分有效,但是在图像上标注三维信息的工作量巨大,并且 要求极高的专业知识及复杂的准备工作,而且这类方法无法处理带有 遮挡和复杂背景图像。

另外即使获得了目标的三维关键点后也无法准确地识别到目标 的三维姿态,因此现有技术中对二维图像中目标物体的三维姿态的获 取方法存在姿态获取准确率不高,工作量大,导致的实时性不高且鲁 棒性不高的问题。

发明内容

本发明的目的在于提供一种二维图形中目标三维关键点提取模 型构建及姿态识别方法,用以解决现有技术中对二维图像中目标物体 的三维关键点识别方法准确率不高,导致姿态识别准确率不高等问 题。

为了实现上述任务,本发明采用以下技术方案:

一种二维图形中目标三维关键点提取模型构建方法,按照以下步 骤执行:

步骤1、获取多个包含待识别目标的二维图像组,所述的二维图 像组中包括的两幅二维图像的区别在于图像采集角度不同;

获得训练图像集;

步骤2、将所述的训练图像集输入至神经网络中训练;

所述的神经网络包括特征提取子网络,所述的特征提取子网络分 别与关键点提取子网络以及目标检测子网络连接;

所述的特征提取子网络包括依次设置的特征图提取模块以及感兴 趣区域提取模块;

所述的目标检测子网络包括相互并联的目标分类模块以及包围盒 检测模块;

所述的关键点提取子网络包括串联的关键点概率获得模块以及关 键点输出模块;

所述的关键点概率获得模块用于获得每一个像素点是三维关键点 的概率;

所述的关键点输出模块利用式I获得每一个三维关键点的坐标:

其中[xi,yi]表示第i个三维关键点的坐标,i=1,2,…,I,I为正整数, Pi(u,v)表示关键点概率计算子网络输出的二维图像中第(u,v)个像素 点是第i个三维关键点的概率,(u,v)为二维图像的坐标,u与v均为 正整数;

获得三维关键点提取模型。

进一步地,所述的特征图提取模块包括依次设置的特征金字塔网 络以及残差网络;所述的感兴趣区域提取模块包括区域生成网络。

进一步地,所述的关键点概率获得模块包括依次串联的多个卷积 块、上采样层以及softmax层;

所述的卷积块包括依次连接的卷积层和ReLU激活层。

进一步地,所述的三维关键点提取模型的损失函数L为:

Figure BDA0002162963720000031

其中,

Figure BDA0002162963720000032

表示所有负样本的分类损失函数之和,

Figure BDA0002162963720000033

表示所有正样本的目标分类损失函数Lclass、 包围盒检测损失函数Lbox以及关键点检测损失函数Lkeypoints之和,β、γ 均大于0;

所述的负样本为感兴趣区域提取模块提取出的感兴趣区域不包含 目标的二维图像;所述的正样本为感兴趣区域提取模块提取出的感兴 趣区域包含目标的二维图像;

其中关键点检测损失函数

Figure BDA0002162963720000034

其中Ldis为显著性损失函 数,Ldep为深度预测损失函数,Lcon为三维一致性损失函数,Lsep为分离损失函数,Lpose为相对姿态估计损失函数,τ、ε、μ、

Figure BDA0002162963720000035

均大于0。

进一步地,所述的β,γ,τ,ε,μ,

Figure BDA0002162963720000036

均为1,δ为0.08。

一种二维图形中目标三维关键点提取方法,按照以下步骤执行:

步骤A、采集包含待识别目标的二维图像,获得待识别图像;

步骤B、将所述的待识别图像输入至二维图形中目标三维关键点 提取模型构建方法构建出的三维关键点提取模型中,获得待识别目标 的三维关键点集,所述的三维关键点集中包括Q个三维关键点,Q为 正整数。

一种二维图形中目标三维姿态识别方法,用于获得二维图像中目 标的三维姿态矩阵,按照以下步骤执行:

步骤I、获取包含待识别目标的二维图像,获得待识别图像;

步骤II、采用权利要求6所述的二维图形中目标三维关键点提取 方法获得待识别图像中待识别目标的三维关键点集;

步骤III、计算待识别图像中待识别目标的三维关键点集与参考 图像库中每个图像的三维关键点集之间的距离;

所述的参考图像库包括多幅参考图像以及每幅参考图像的信息, 每幅参考图像的信息包括对每幅参考图像采用权利要求6所述的二 维图形中目标三维关键点提取方法获得每幅参考图像的三维关键点 集以及每幅参考图像中目标的三维姿态矩阵;

将距离最小的三维关键点集对应的图像作为对比图像,获得对比 图像的三维关键点集以及对比图像中目标的三维姿态矩阵;

步骤IV、将待识别目标的三维关键点集中每个三维关键点坐标减 去待识别目标的三维关键点集质心的坐标后,获得新的待识别目标的 三维关键点集;

将对比图像的三维关键点集中每个三维关键点坐标减去对比图像 的三维关键点集质心的坐标后,获得新的对比图像的三维关键点集;

步骤V、利用奇异值分解法对

Figure BDA0002162963720000051

进行分解,获得旋转矩阵R;

其中,X'n为新的待识别目标的三维关键点集中第n个点的坐标, P′n为新的对比图像的三维关键点集中第n个点的坐标,NP为新的待 识别目标的三维关键点集或新的对比图像的三维关键点集中三维关 键点的总数;

步骤VI、获得姿态矩阵T=[R|t],其中t=μX-RμP,μX为新的 待识别目标的三维关键点集的平均坐标,μP新的对比图像的三维关 键点集的平均坐标;

步骤VII、采用式III获得待识别图像中待识别目标的三维姿态 矩阵Tinput

Tinput=T·Tref 式III 其中Tref为对比图像中目标的三维姿态矩阵。

本发明与现有技术相比具有以下技术效果:

1、本发明提供的一种二维图形中目标三维关键点提取模型构建 及提取方法,通过设计了三维关键点提取模型的网络结构,能够准确、 直接输出目标三维关键点的坐标;通过设计的关键点损失函数,使网 络利用无监督的方式自主学习提取具有语义一致性和几何一致性的 关键点,提高了三维关键点提取的准确率;

2、本发明提供的一种二维图形中目标三维关键点提取模型构建 及提取方法,在网络训练阶段,不需要任何物体的三维模型或者在图 像上进行三维标注,与现有方法相比可以极大地减少标注的工作量, 提高了提取方法的效率;

3、本发明提供的一种二维图形中目标三维姿态识别方法,该方 法通过设置对比图像来建立三维空间坐标系,提升了识别的精度。

附图说明

图1为本发明提供的三维关键点提取模型内部结构图;

图2为本发明的一个实施例中提供的关键点概率获得模块内部 结构图;

图3为本发明的一个实施例中提供的待识别图像;

图4为本发明的一个实施例中提供的对图3所示的待识别图像进 行三维关键点提取获得的三维关键点集的图像表示。

具体实施方式

下面结合附图和实施例对本发明进行详细说明。以便本领域的技 术人员更好的理解本发明。需要特别提醒注意的是,在以下的描述中, 当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些 描述在这里将被忽略。

以下对本发明涉及的定义或概念内涵做以说明:

三维关键点:位于物体较为显著的结构上,代表物体表面局部特 征,相对于物体具有旋转不变性。

包围盒:用来标注出物体在图像中的位置。

显著性损失函数:利用明暗特征使关键点落在物体显著性位置。

深度预测损失函数:利用对极几何原理来训练网络使其可以准确 预测关键点的深度。

三维一致性损失函数:用于保证在不同视角下可以稳定地跟踪同 一区域。

分离损失函数:使每个关键点之间有一定的距离,避免关键点的 重合。

相对姿态估计损失函数:是角度的惩罚项,即输入图像对之间相 机相对位姿的角度真值与由所检测关键点估计得到的相对角度的差 值,该项损失有助于生成有意义且自然的3D关键点集合。

旋转矩阵:旋转矩阵用来描述物体绕x,y,z轴的旋转,是一个行 列式为1的3x3正交矩阵。

姿态矩阵:包括[R|T],R为旋转矩阵,T为平移矩阵,描述了物 体在三维空间的旋转信息和平移信息。

实施例一

在本实施例中公开了一种二维图形中目标三维关键点提取模型构 建方法。在本实施例中三维关键点提取模型用于提取图像中目标物体 上的具有几何一致性和语义一致性的三维关键点,在本实施例中利用 自主设计的CNN网络直接预测物体上的三维关键点。

按照以下步骤执行:

步骤1、获取多个包含待识别目标的二维图像组,二维图像组中 包括的两幅二维图像的区别在于图像采集角度不同;

获得训练图像集;

在本实施例中,由于利用两张不同的角度可以利用对极几何计算 出两张图像中对应关键点深度信息,训练时利用了两张不同视点拍摄 同一物体的图片以及视点间的相对姿态变化来训练一个多任务的损 失函数来使网络能够预测物体上具有几何一致性和语义一致性的关 键点。

步骤2、将训练图像集输入至神经网络中训练;

神经网络包括特征提取子网络,特征提取子网络分别与关键点提 取子网络以及目标检测子网络连接;

特征提取子网络包括依次设置的特征图提取模块以及感兴趣区域 提取模块;

目标检测子网络包括相互并联的目标分类模块以及包围盒检测模 块;

关键点提取子网络包括串联的关键点概率获得模块以及关键点输 出模块;

关键点概率获得模块用于获得每一个像素点是三维关键点的概 率;

关键点输出模块利用式I获得每一个三维关键点的坐标:

Figure BDA0002162963720000081

其中[xi,yi]表示第i个三维关键点的坐标,i=1,2,…,I,I为正整数, Pi(u,v)表示关键点概率计算子网络输出的二维图像中第(u,v)个像素 点是第i个三维关键点的概率,(u,v)为二维图像的坐标,u与v均为 正整数;

获得三维关键点提取模型。

在本实施例中,如图1所示,图像首先输入至特征提取子网络中, 输出图像的感兴趣区域子图像,将感兴趣区域子图像分别输入至关键 点提取子网络以及目标检测子网络中,由关键点检测子网络输出感兴 趣区域子图像中目标的关键点坐标,由目标检测子网络输出感兴趣区 域子图像中目标的分类以及包围盒坐标,其中包围盒的目的是二维图 像中将目标框选出来。

在本实施例中特征提取子网络采用现有的CNN网络进行拼接,具 体地,特征图提取模块包括依次设置的特征金字塔网络以及残差网 络;感兴趣区域提取模块包括区域生成网络。

在本实施例中,目标检测子网络中实现目标分类检测以及包围盒 坐标输出的功能采用现有技术中的CNN网络即可实现。

在本实施例中,与现有技术不同的是关键点提取子网络首先获得 了每一个像素点的三维关键点的概率,通过这个概率累加获得每一个 三维关键点的坐标。

可选地,关键点概率获得模块包括依次串联的多个卷积块、上采 样层以及softmax层;

卷积块包括依次连接的卷积层和ReLU激活层。

在本实施例中,如图2所示,关键点概率获得模块包括依次串联 的4个卷积块、上采样层以及softmax层。

其中卷积块中卷积核大小为3x3。

可选地,三维关键点提取模型的损失函数L为:

Figure BDA0002162963720000101

其中,

Figure BDA0002162963720000102

表示所有负样本的分类损失函数之和,

Figure BDA0002162963720000103

表示所有正样本的目标分类损失函数Lclass、 包围盒检测损失函数Lbox以及关键点检测损失函数Lkeypoints之和,β、γ 均大于0;

负样本为感兴趣区域提取模块提取出的感兴趣区域图像不包含目 标的二维图像;正样本为感兴趣区域提取模块提取出的感兴趣区域图 像包含目标的二维图像;

其中关键点检测损失函数

Figure BDA0002162963720000106

其中Ldis为显著性损失函数,Ldep为深度预测损失函数,Lcon为三维一 致性损失函数,Lsep为分离损失函数,Lpose为相对姿态估计损失函数, τ、ε、μ、

Figure BDA0002162963720000107

均大于0。

可选地,β,γ,τ,ε,μ,

Figure BDA0002162963720000108

为1,δ为0.08。

在本步骤中,显著性损失函数来确保三维关键点落在物体的显著 性区域,

Figure BDA0002162963720000104

其中l(xi,yi)表示第i个三维关键 点的显著性区域x,y轴坐标,Pi(xi,yi)表示第i个三维关键点的x,y 轴坐标,i=1,2,……,N,N为三维关键点的总数,N为正整数,在 本实施例中N=10,其中l(xi,yi)=l(u,v)采用以下步骤获得:

步骤①、对图像进行高斯滤波后并得到每一个像素的海森矩阵,

Figure BDA0002162963720000105

计算每一个海森矩阵的行列式。

利用非极大抑制算法找出在3*3范围内行列式值最大的点,作为 显著性区域上的点。

利用生成显著性区域的分布图:

Figure BDA0002162963720000111

在本步骤中,深度预测损失函数来减少预测深度与通过对极几何 计算出的深度的误差,

Figure BDA0002162963720000112

其中zi为二维 图像组中其中一幅二维图像中第i个三维关键点的Z轴坐标,zi'为 二维图像组中另一幅二维图像中第i个三维关键点的Z轴坐标,di为 二维图像组中其中一幅二维图像中第i个三维关键点的深度,di'为 二维图像组中另外一幅二维图像中第i个三维关键点的深度。

其中,利用公式d'e^Re'+e^t=0使用最小二乘法计算d’,利用公式 d'e^Re'+e^t=0计算另一个点的深度d,其中e和e'为训练时图像组中 两幅图像上已经匹配好的关键点。

其中三维一致性损失函数使三维关键点的位置相对物体保持不 变,

Figure BDA0002162963720000113

mi为三维关键点在二维图像组中 其中一幅图像的坐标,

Figure BDA0002162963720000114

为三维关键点在二维图像组中另一幅图像 中的坐标。

其中分离损失函数保证三维关键点之间保持一定的距离不会落 在同一点上,

Figure BDA0002162963720000115

(xi,yi,zi)为第i个 关键的坐标,(xj,yj,zj)为第j个关键的坐标,i≠j,δ为设定的关键 点之间的距离。

其中相对姿态估计损失函数使得到的三维关键点更适用于姿态 估计任务,

Figure BDA0002162963720000121

R’为利用关键点计算得 出的两张图像中物体的姿态变化,R为Ground-Truth。

实施例二

一种二维图形中目标三维关键点提取方法,按照以下步骤执行:

步骤A、采集包含待识别目标的二维图像,获得待识别图像;

步骤B、将待识别图像输入至实施例一二维图形中目标三维关键 点提取模型构建方法构建出的三维关键点提取模型中,获得待识别目 标的三维关键点集。

在本实施例中,对如图3所示的待识别图像进行三维关键点的提 取,获得如图4所示的三维关键点集的图像表示。

实施例三

一种二维图形中目标三维姿态识别方法,用于获得二维图像中目 标的三维姿态矩阵,按照以下步骤执行:

步骤I、获取包含待识别目标的二维图像,获得待识别图像;

步骤II、采用实施例二方法获得待识别图像中待识别目标的三维 关键点集;

步骤III、计算待识别图像中待识别目标的三维关键点集与参考 图像库中每个图像的三维关键点集之间的距离;

参考图像库包括多幅参考图像以及每幅参考图像的信息,每幅参 考图像的信息包括每幅参考图像采用实施例二的方法获得每幅参考 图像的三维关键点集以及每幅参考图像中目标的三维姿态矩阵;

将距离最小的三维关键点集对应的图像作为对比图像,获得对比 图像的三维关键点集以及对比图像中目标的三维姿态矩阵;

步骤IV、将待识别目标的三维关键点集中每个三维关键点坐标减 去待识别目标的三维关键点集质心的坐标后,获得新的待识别目标的 三维关键点集;

将对比图像的三维关键点集中每个三维关键点坐标减去对比图像 的三维关键点集质心的坐标后,获得新的对比图像的三维关键点集;

步骤V、利用奇异值分解法对

Figure BDA0002162963720000131

进行分解,获得旋转矩阵R;

其中,X'n为新的待识别目标的三维关键点集中第n个点的坐标, P′n为新的对比图像的三维关键点集中第n个点的坐标,NP为新的待 识别目标的三维关键点集或新的对比图像的三维关键点集中三维关 键点的总数;

步骤VI、获得姿态矩阵T=[R|t],其中t=μx-Rμp,μx为新的 待识别目标的三维关键点集的平均坐标,μp新的对比图像的三维关 键点集的平均坐标;

步骤VII、采用式III获得待识别图像中待识别目标的三维姿态 矩阵Tinput

Tinput=T·Tref 式III

其中Tref为对比图像中目标的三维姿态矩阵。

在本实施例中,经过步骤III获得一个待识别图像中待识别目标 的三维关键点集X,另外一个对比图像的三维关键点集P,在本实施 例中NP=10。

Figure BDA0002162963720000141

Figure BDA0002162963720000142

经过步骤IV获得待识别目标的三维关键点集质心的坐标获得对比图像的三维 关键点集的质心的坐标

Figure RE-GDA0002262716110000144

将待识别目标的三维关键点集X中每一个三维关键点的坐标减 去待识别目标的三维关键点集质心的坐标

Figure BDA0002162963720000151

获得了新的待识别目标 的三维关键点集X';

同样获得新的对比图像的三维关键点集P'。

经过步骤V对新的待识别目标的三维关键点集X'和新的对比图像 的三维关键点集P'中每对三维关键点进行处理,获得一个总矩阵W,

Figure BDA0002162963720000152

再对该总矩阵W进行奇异值分解,获得旋转矩阵R:

经过步骤VI获得姿态矩阵:

T=[R|t]=[-0.05903081 -0.02168849 -0.01671735]

其中|表示矩阵整除。

之后采用式III获得待识别图像中待识别目标的三维姿态矩阵 Tinput

Tinput=[-0.05903081 -0.02168849 -0.01671735]·Tref

其中·表示矩阵的相乘。

14页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于点云数据的工件位姿快速高精度估算方法及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!