一种基于深度学习的人体三维测量方法及系统与流程

文档序号:24131971发布日期:2021-03-02 18:31阅读:175来源:国知局
一种基于深度学习的人体三维测量方法及系统与流程

[0001]
本发明属于人体测量领域,具体涉及一种基于深度学习的人体三维测量方法及系统。


背景技术:

[0002]
人体三维测量系统广泛应用于服装,动画,人机工程以及医学等领域。随着计算机三维重建技术的日益成熟,很多传统行业如健身行业、服装行业都期望可以更加智能、快速的获得人体的三维模型数据。目前,绝大多数利用传统的点云建模方式。公开号为cn 111612887 a的中国专利“一种人体测量方法和装置”根据初步人体三维模型的系数和所述点云数据,获取刚性变换矩阵及初步人体三维模型,获取精确人体三维模型并进行测量。这种方法建立的人体三维模型效果很难有大的提升。
[0003]
同时,深度学习技术近年来在数字图像处理领域得到广泛的应用并取得了显著的成绩,无论是在科研方面还是项目落地等方面都具有优异的表现。近年来,出现了基于深度学习的人体三维尺寸测量方法。公开号为cn 111264951 a的中国专利“基于深度学习的非接触式旗袍定制人体三维尺寸测量方法”是通过语义分割网络deeplabv3+在coco数据集上训练得到能够将人体与复杂背景分离的网络模型,使用opencv的图像处理技术提取出以人体对象为中心的二值图,通过背、侧面图像计算人体维度。这种方法通过二维图片来计算人体三维尺寸,并没有建立人体三维模型,所以得到的人体三维尺寸并不准确。


技术实现要素:

[0004]
本发明的技术问题是现有的采用神经网络的人体三维测量方法复杂度高,计算量大,生成的人体三维模型效果不好,导致人体尺寸测量的结果不精确。
[0005]
本发明的目的是解决上述问题,提供一种基于深度学习的人体三维测量方法,通过利用预先训练好的几何描述符来去除噪声,匹配局部几何特征,提高人体三维模型效果。再利用基于人体关键点的对人体三维数据进行分析,从数据中提取全局特征,实现数据驱动的分割,用于人体维度计算,提高精确度。具体包括如下步骤:
[0006]
步骤1,获取多帧不同视角的人体彩色图像;
[0007]
步骤2,根据人体部位结构从彩色图像上提取关键点;
[0008]
步骤3,结合与彩色图像对应的深度图像,利用深度相机内参矩阵将关键点转换为点云数据;
[0009]
步骤4,对同一视角下的关键点点云数据进行匹配,删除重叠点云;
[0010]
步骤5,将经过步骤4中处理后的关键点点云周围l
×
l
×
l的体素栅格作为3d卷积神经网络输入,得到几何描述符;
[0011]
步骤6,结合不同视角下的关键点几何描述符,进行人体关键点匹配,得到人体三维模型;
[0012]
步骤7,利用基于人体关键点的分割方法将人体三维模型分割成不同部位,以各部
分截面周长作为该各部位的围度,从而获得人体尺寸数据。
[0013]
进一步的,步骤1中利用深度相机从4个不同视角对人体拍摄图像,其中4个不同视角为人体左前、左后、右后、右前。
[0014]
进一步的,步骤2中提取关键点的具体实现方式如下;
[0015]
构建关键点提取网络模型,所述关键点提取网络模型为包含四个阶段且有4个并行子网络的网络模型;第一阶段仅一个网络,设为网络1-1,包含一个瓶颈模块,一个残差模块以及一个与残差模块并行的下采样,其输出作为第二阶段的输入;
[0016]
第二阶段包含2个并行的网络,设为网络2-1、2-2,其中网络2-1和网络2-2都包含三个残差模块和一个采样,且采样都与第二阶段第二个残差模块并行,其中网络2-1采样为下采样,其输出结果叠加到网络2-2第二阶段第二个残差模块的输出;而网络2-2采样为上采样,其输出结果叠加到网络2-1第二阶段第二个残差模块的输出,另外,网络2-2还包含一个与网络2-2第二阶段第三个残差模块并行的下采样,其输出作为第三阶段的输入;
[0017]
第三阶段包含3个并行的网络,设为网络3-1、3-2、3-3,其中网络3-1、网络3-2和网络3-3都包含三个残差模块和两个采样,且采样都与第三阶段第二个残差模块并行,其中网络3-1采样都为下采样,一个输出结果叠加到网络3-2第三阶段第二个残差模块的输出,另一个输出结果叠加到网络3-3第三阶段第二个残差模块的输出;网络3-2采样分别为上采样和下采样,上采样输出结果叠加到网络3-1第三阶段第二个残差模块的输出,下采样输出结果叠加到网络3-3第三阶段第二个残差模块的输出;网络3-3采样都为上采样,一个输出结果叠加到网络3-1第三阶段第二个残差模块的输出,另一个输出结果叠加到网络3-2第三阶段第二个残差模块的输出,另外,网络3-3还包含一个与网络3-3第三阶段第三个残差模块并行的下采样,其输出作为第四阶段的输入;
[0018]
第四阶段包含4个并行的网络,网络4-1、4-2、4-3、4-4,其中网络4-1、网络4-2、网络4-3和网络4-4都包含两个残差模块和三个采样,且采样都与第四阶段第二个残差模块并行,其中网络4-1采样都为下采样,其输出结果分别叠加到网络4-2、网络4-3、网络4-4第四阶段第二个残差模块的输出;网络2采样包括一个上采样和两个下采样,采样结果分别叠加到网络4-1、网络4-3、网络4-4第四阶段第二个残差模块的输出;网络3采样包括两个上采样一个下采样,采样结果分别叠加到网络4-1、网络4-2、网络4-4第四阶段第二个残差模块的输出;网络4-4采样都为上采样,其输出结果分别叠加到网络4-1、网络4-2、网络4-3第四阶段第二个残差模块的输出;另外网络4-1还包含一个残差模块,输出最后结果;
[0019]
其中,所述瓶颈模块,将输入的特征图信息先通过一次1
×
1卷积核尺寸的ghostmodule模块降低特征图通道维度,再通过一次3
×
3卷积操作进行特征提取,最后再通过一次1
×
1卷积核尺寸的ghostmodule模块提高特征图维度,然后将输出得到的结果f(x)与输入的特征图信息x进行一个相加运算f(x)=f(x)+x,使得网络通过学习残差公式f(x)=f(x)-x来习得通过卷积操作习得的特征信息。
[0020]
其中,所述残差模块,将输入的特征图信息经过两次3
×
3卷积核尺寸的ghostmodule模块提高特征图维度,然后将输出得到的结果f(x)与输入的特征图信息x进行一个相加运算f(x)=f(x)+x,使得网络通过学习残差公式f(x)=f(x)-x来习得通过卷积操作习得的特征信息。
[0021]
进一步的,步骤3的具体实现方式如下;
[0022]
设深度相机内参矩阵c,由f
x
,f
y
,c
x
,c
y
这四个参数定义,其中f
x
,f
y
指相机在下x,y两个轴上的焦距,c
x
,c
y
指相机的光圈中心,根据内参矩阵构建点云,设一个空间点[x,y,z]和它在图像中的像素坐标[u,v,d],d指深度数据,可用以下矩阵模型描述:
[0023][0024]
其中r和t是相机的姿态,r代表旋转矩阵,t代表位移矢量,s为深度图里给的数据与实际距离的比例。
[0025]
进一步的,所述3d卷积神经网络模型,包括8个具有校正非线性单位激活函数的3d卷积层和一个池化层,用来计算一个512维的特征表示。
[0026]
进一步的,利用提取的人体关键点对人体三维模型做分割,具体方法为:
[0027]
步骤1,调用深度相机的库函数功能,计算最终的三维人体模型中骨架位置信息;
[0028]
步骤2,以之前提取的人体关键点做骨架垂线,在骨架上定位相应的点,以相应的骨架方向为法线法向生成过该关键点的平面,计算该平面与人体三维模型的相交线,并以相交线的长度作为该部位的围度。
[0029]
本发明还提供一种基于深度学习的人体三维测量系统,包括以下模块:
[0030]
采集模块,用于获取多帧不同视角的人体彩色图像;
[0031]
关键点提取模块,用于根据人体部位结构从彩色图像上提取关键点;
[0032]
点云获取模块,用于结合与彩色图像对应的深度图像,利用深度相机内参矩阵将关键点转换为点云数据;
[0033]
点云匹配模块,用于对同一视角下的关键点点云数据进行匹配,删除重叠点云;
[0034]
几何描述符获取模块,用于将处理后的关键点点云周围l
×
l
×
l的体素栅格作为3d卷积神经网络输入,得到几何描述符;
[0035]
人体三维模型获取模块,用于结合不同视角下的关键点几何描述符,进行人体关键点匹配,得到人体三维模型;
[0036]
人体尺寸数据获取模块,用于利用基于人体关键点的分割方法将人体三维模型分割成不同部位,以各部分截面周长作为该各部位的围度,从而获得人体尺寸数据。
[0037]
相比现有技术,本发明的优点和有益效果:
[0038]
本发明的提取关键点网络模型,提高了关键点提取的准确度;本发明的几何描述符,提高了在三维扫描数据中建立局部表面之间相关性和鲁棒性,增强了人体三维重建效果;本发明利用提取关键点网络模型提取的人体关键点与人体骨架信息,提高了测量部位位置的准确度,提高了人体测量尺寸精确度。
附图说明
[0039]
下面结合附图和实施例对本发明作进一步说明。
[0040]
图1为本发明方法流程图。
[0041]
图2为关键点提取网络模型的网络结果。
具体实施方式
[0042]
如图1所示,是本发明提供的一种基于深度学习的人体三维测量方法的流程图,包括以下步骤:
[0043]
步骤1,获取多帧不同视角的人体彩色图像;
[0044]
本实施例中,步骤1中利用深度相机从4个不同视角对人体拍摄图像,其中4个不同视角为人体左前、左后、右后、右前。
[0045]
步骤2,根据人体部位结构从彩色图像上提取关键点;
[0046]
本实施例中,步骤2中提取关键点的具体实现方式如下;
[0047]
构建关键点提取网络模型,所述关键点提取网络模型为包含四个阶段且有4个并行子网络的网络模型;第一阶段仅一个网络,设为网络1-1,包含一个瓶颈模块,一个残差模块以及一个与残差模块并行的下采样,其输出作为第二阶段的输入;
[0048]
第二阶段包含2个并行的网络,设为网络2-1、2-2,其中网络2-1和网络2-2都包含三个残差模块和一个采样,且采样都与第二阶段第二个残差模块并行,其中网络2-1采样为下采样,其输出结果叠加到网络2-2第二阶段第二个残差模块的输出;而网络2-2采样为上采样,其输出结果叠加到网络2-1第二阶段第二个残差模块的输出,另外,网络2-2还包含一个与网络2-2第二阶段第三个残差模块并行的下采样,其输出作为第三阶段的输入;
[0049]
第三阶段包含3个并行的网络,设为网络3-1、3-2、3-3,其中网络3-1、网络3-2和网络3-3都包含三个残差模块和两个采样,且采样都与第三阶段第二个残差模块并行,其中网络3-1采样都为下采样,一个输出结果叠加到网络3-2第三阶段第二个残差模块的输出,另一个输出结果叠加到网络3-3第三阶段第二个残差模块的输出;网络3-2采样分别为上采样和下采样,上采样输出结果叠加到网络3-1第三阶段第二个残差模块的输出,下采样输出结果叠加到网络3-3第三阶段第二个残差模块的输出;网络3-3采样都为上采样,一个输出结果叠加到网络3-1第三阶段第二个残差模块的输出,另一个输出结果叠加到网络3-2第三阶段第二个残差模块的输出,另外,网络3-3还包含一个与网络3-3第三阶段第三个残差模块并行的下采样,其输出作为第四阶段的输入;
[0050]
第四阶段包含4个并行的网络,网络4-1、4-2、4-3、4-4,其中网络4-1、网络4-2、网络4-3和网络4-4都包含两个残差模块和三个采样,且采样都与第四阶段第二个残差模块并行,其中网络4-1采样都为下采样,其输出结果分别叠加到网络4-2、网络4-3、网络4-4第四阶段第二个残差模块的输出;网络2采样包括一个上采样和两个下采样,采样结果分别叠加到网络4-1、网络4-3、网络4-4第四阶段第二个残差模块的输出;网络3采样包括两个上采样一个下采样,采样结果分别叠加到网络4-1、网络4-2、网络4-4第四阶段第二个残差模块的输出;网络4-4采样都为上采样,其输出结果分别叠加到网络4-1、网络4-2、网络4-3第四阶段第二个残差模块的输出;另外网络4-1还包含一个残差模块,输出最后结果;
[0051]
其中,所述瓶颈模块,将输入的特征图信息先通过一次1
×
1卷积核尺寸的ghostmodule模块降低特征图通道维度,再通过一次3
×
3卷积操作进行特征提取,最后再通过一次1
×
1卷积核尺寸的ghostmodule模块提高特征图维度,然后将输出得到的结果f(x)与输入的特征图信息x进行一个相加运算f(x)=f(x)+x,使得网络通过学习残差公式f(x)=f(x)-x来习得通过卷积操作习得的特征信息。
[0052]
其中,所述残差模块,将输入的特征图信息经过两次3
×
3卷积核尺寸的
ghostmodule模块提高特征图维度,然后将输出得到的结果f(x)与输入的特征图信息x进行一个相加运算f(x)=f(x)+x,使得网络通过学习残差公式f(x)=f(x)-x来习得通过卷积操作习得的特征信息。
[0053]
步骤3,结合与彩色图像对应的深度图像,利用深度相机内参矩阵将关键点转换为点云数据;
[0054]
本实施例中,步骤3的具体实现方式如下;
[0055]
设深度相机内参矩阵c,由f
x
,f
y
,c
x
,c
y
这四个参数定义,其中f
x
,f
y
指相机在下x,y两个轴上的焦距,c
x
,c
y
指相机的光圈中心,根据内参矩阵构建点云,设一个空间点[x,y,z]和它在图像中的像素坐标[u,v,d],d指深度数据,可用以下矩阵模型描述:
[0056][0057]
其中r和t是相机的姿态,r代表旋转矩阵,t代表位移矢量,s为深度图里给的数据与实际距离的比例,通常为1000mm。
[0058]
步骤4,对同一视角下的关键点点云数据进行匹配,删除重叠点云;
[0059]
步骤5,将经过步骤4中处理后的关键点点云周围l
×
l
×
l(30
×
30
×
30)的体素栅格作为3d卷积神经网络输入,得到几何描述符;
[0060]
本实施例中,所述3d卷积神经网络模型,包括8个具有校正非线性单位激活函数的3d卷积层和一个池化层,用来计算一个512维的特征表示。其中卷积层和全连接层都包含具有校正非线性单位激活函数,且用一个池化层是为了避免大量信息丢失。
[0061]
步骤6,结合不同视角下的关键点几何描述符,进行人体关键点匹配,得到人体三维模型;
[0062]
步骤7,利用基于人体关键点的分割方法将人体三维模型分割成不同部位,以各部分截面周长作为该各部位的围度,从而获得人体尺寸数据。
[0063]
本实施例中,利用提取的人体关键点对人体三维模型做分割,得到人体各个部位,如头部、颈部、胸部、腰部、臀部、大腿、小腿、脚以及臂膀等部位以及各部位的围度,具体方法为:
[0064]
步骤1,调用深度相机的库函数功能,计算最终的三维人体模型中骨架位置信息;
[0065]
步骤2,以之前提取的人体关键点做骨架垂线,在骨架上定位相应的点,以相应的骨架方向为法线法向生成过该关键点的平面,计算该平面与人体三维模型的相交线,并以相交线的长度作为该部位的围度。
[0066]
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1