首页 / 专利库 / 图形技术 / 三维重建 / 一种用于构建人体三维模型的方法及系统

一种用于构建人体三维模型的方法及系统

阅读:1042发布:2020-08-22

专利汇可以提供一种用于构建人体三维模型的方法及系统专利检索,专利查询,专利分析的服务。并且本 发明 涉及计算机 机器视觉 技术领域,公开了一种用于构建人体三维模型的方法及系统,以快速有效且准确地实现对人体三维模型的构建;本发明的方法包括采用 深度相机 获取待构建人体的 深度图 像 和与深度图像同步的RGB图像,并对深度图像进行预处理,深度图像为点 云 数据;从经过预处理后的深度图像中选取初始点云 块 ,查找与初始点云 块匹配 的点云块,并对匹配成功的点云块与初始点云块进行配准以得到待构建人体的点云数据模型;采用方向距离函数优化待构建人体的点云数据模型,并采用泊松表面重建方法根据点云数据模型重建待构建人体的三维模型。,下面是一种用于构建人体三维模型的方法及系统专利的具体信息内容。

1.一种用于构建人体三维模型的方法,其特征在于,包括以下步骤:
S1:采用深度相机获取待构建人体的深度图像和与所述深度图像同步的RGB图像,并对所述深度图像进行预处理,所述深度图像为点数据;
S2:从经过预处理后的深度图像中选取初始点云,查找与所述初始点云块匹配的点云块,并对匹配成功的点云块与初始点云块进行配准以得到待构建人体的点云数据模型;
S3:采用方向距离函数优化所述待构建人体的点云数据模型,并采用泊松表面重建方法根据所述点云数据模型重建所述待构建人体的三维模型。
2.根据权利要求1所述的用于构建人体三维模型的方法,其特征在于,所述S1中,对所述深度图像进行预处理具体包括:
对多个深度图像的点云数据进行数据融合,缩短深度图像中相邻点的距离并对所述深度图像进行光滑处理。
3.根据权利要求1所述的用于构建人体三维模型的方法,其特征在于,所述S2具体包括以下步骤:
S21:从深度图像的第k中选取至少三个点云块作为初始点云块,并从第k+1帧中选取与所述初始点云块距离最近的对应个数的点云块,计算该相邻两帧中的点云块之间的法相度和距离,如果所述法向角度和距离都小于设定值,则认为匹配点云块成功;反之,则进入S2;
S22:将初始点云块和未匹配成功的点云块分别投影到各自同步的RGB图像上,在第k+1帧RGB图像上选取与第K帧RGB图像中近似的RGB块;
S23:计算两者之间的相似度,如果相似度小于阈值则返回S22重新选取近似的RGB块;
如果大于阈值,则将近似的RGB块投影至深度图像,返回步骤S21重新匹配点云块,直至匹配点云块成功;
S24:采用高斯混合模型进一步对已经匹配成功的点云块进行局部配准,并采用曲线插值的方法对经过局部配准的点云块进行全局配准,得到待构建人体的点云数据模型。
4.根据权利要求1所述的用于构建人体三维模型的方法,其特征在于,所述S3具体包括以下步骤:
S31:获取所述点云数据模型的表面的有向点集,并将所述有向点集转换为模型指示函数的梯度样本点以计算模型指示函数;
S32:采用所述指示函数提取点云数据模型中的等值面,得到三维重建表面;
S33:采用八叉树技术优化所述三维重建表面。
5.一种用于构建人体三维模型的系统,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至4任一所述方法的步骤。

说明书全文

一种用于构建人体三维模型的方法及系统

技术领域

[0001] 本发明涉及计算机机器视觉技术领域,尤其涉及一种用于构建人体三维模型的方法及系统。

背景技术

[0002] 目前,针对于人体的三维模型构建方法种类较多,例如使用内存高效多层GPU数据结构的方法对人体的三位模型进行重建,或者使用可移动体积的KinectFusion方法在室外大场景的情况下进行人体三维模型重建,但是,采用该两种方法会出现部分数据缺失和扫描模型闭合处出现不规则形变的现象。此外,还可以通过低分辨率下的图像轮廓和深度数据结合从SCAPE模型中估计人体形状从而达到人体三维模型重建的目的,但是这种方法的重建精度不高,容易出现脸部、服装等细节不明显的情况;或者还可以通过使用多个深度相机扫描站在转台上的静态人体,然后用一个初始模型对扫描数据进行迭代变形来重建人体,但是这种方法需要一个转台和多个深度相机,成本较大且通常受场地限制。
[0003] 因此,如何快速有效且准确地实现对人体三维模型的构建成为一个急需解决的问题

发明内容

[0004] 本发明目的在于提供一种用于构建人体三维模型的方法及系统,以快速有效且准确地实现对人体三维模型的构建。
[0005] 为实现上述目的,本发明提供了一种用于构建人体三维模型的方法,包括以下步骤:
[0006] S1:采用深度相机获取待构建人体的深度图像和与所述深度图像同步的RGB图像,并对所述深度图像进行预处理,所述深度图像为点数据;
[0007] S2:从经过预处理后的深度图像中选取初始点云,查找与所述初始点云块匹配的点云块,并对匹配成功的点云块与初始点云块进行配准以得到待构建人体的点云数据模型;
[0008] S3:采用方向距离函数优化所述待构建人体的点云数据模型,并采用泊松表面重建方法根据所述点云数据模型重建所述待构建人体的三维模型。
[0009] 优选地,所述S1中,对所述深度图像进行预处理具体包括:
[0010] 对多个深度图像的点云数据进行数据融合,缩短深度图像中相邻点的距离并对所述深度图像进行光滑处理。
[0011] 优选地,所述S2具体包括以下步骤:
[0012] S21:从深度图像的第k中选取至少三个点云块作为初始点云块,并从第k+1帧中选取与所述初始点云块距离最近的对应个数的点云块,计算该相邻两帧中的点云块之间的法相度和距离,如果所述法向角度和距离都小于设定值,则认为匹配点云块成功;反之,则进入S2;
[0013] S22:将初始点云块和未匹配成功的点云块分别投影到各自同步的RGB图像上,在第k+1帧RGB图像上选取与第K帧RGB图像中近似的RGB块;
[0014] S23:计算两者之间的相似度,如果相似度小于阈值则返回S22重新选取近似的RGB块;如果大于阈值,则将近似的RGB块投影至深度图像,返回步骤S21重新匹配点云块,直至匹配点云块成功;
[0015] S24:采用高斯混合模型进一步对已经匹配成功的点云块进行局部配准,并采用曲线插值的方法对经过局部配准的点云块进行全局配准,得到待构建人体的点云数据模型。
[0016] 优选地,所述S3具体包括以下步骤:
[0017] S31:获取所述点云数据模型的表面的有向点集,并将所述有向点集转换为模型指示函数;
[0018] S32:采用所述指示函数提取对应等值面,得到三维重建表面;
[0019] S33:采用八叉树技术优化所述三维表面。
[0020] 作为一个总的技术构思,本发明还提供一种用于构建人体三维模型的系统,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
[0021] 本发明具有以下有益效果:
[0022] 本发明提供一种用于构建人体三维模型的方法及系统,首先采用深度相机获取待构建人体的深度图像和与所述深度图像同步的RGB图像,并对所述深度图像进行预处理,所述深度图像为点云数据;然后从经过预处理后的深度图像中选取初始点云块,查找与所述初始点云块匹配的点云块,并对匹配成功的点云块与初始点云块进行配准以得到待构建人体的点云数据模型;再采用方向距离函数优化所述待构建人体的点云数据模型,并采用泊松表面重建方法根据所述点云数据模型重建所述待构建人体的三维模型;可以快速有效且准确地实现对人体三维模型的构建。
[0023] 下面将参照附图,对本发明作进一步详细的说明。

附图说明

[0024] 构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0025] 图1是本发明优选实施例的用于构建人体三维模型的方法流程图
[0026] 图2是本发明优选实施例的深度图像与RGB图像之间的映射关系图;
[0027] 图3是本发明优选实施例的理想配准情况示意图;
[0028] 图4是本发明优选实施例的不理想配准情况示意图;
[0029] 图5是本发明优选实施例的局部配准结果图;
[0030] 图6是本发明优选实施例的全局配准结果图;
[0031] 图7是采用传统方法构建的人体三维模型图;
[0032] 图8是本发明优选实施例的构建的人体三维模型图。

具体实施方式

[0033] 以下结合附图对本发明的实施例进行详细说明,但是本发明可以由权利要求限定和覆盖的多种不同方式实施。
[0034] 除非另有定义,下文中所使用的所有专业术语与本领域技术人员通常理解的含义相同。本发明专利申请说明书以及权利要求书中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而仅仅是为了便于对相应零部件进行区别。同样,“一个”或者“一”等类似词语不表示数量限制,而是表示存在至少一个。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“两侧”、“外侧”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也相应地改变。
[0035] 实施例1
[0036] 参见图1,本实施例提供一种用于构建人体三维模型的方法,包括:
[0037] S1:采用深度相机获取待构建人体的深度图像和与深度图像同步的RGB图像,并对深度图像进行预处理,其中,深度图像为点云数据;
[0038] S2:从经过预处理后的深度图像中选取初始点云块,查找与初始点云块匹配的点云块,并对匹配成功的点云块与初始点云块进行配准以得到待构建人体的点云数据模型;
[0039] S3:采用方向距离函数优化待构建人体的点云数据模型,并采用泊松表面重建方法根据点云数据模型重建待构建人体的三维模型。
[0040] 上述的用于构建人体三维模型的方法,可以快速有效且准确地实现对人体三维模型的构建,使用方便。
[0041] 作为本实施例优选的实施方式,S1中,对深度图像进行预处理具体包括:
[0042] 对多个深度图像的点云数据进行数据融合,缩短深度图像中相邻点的距离并对深度图像进行光滑处理。其中,对多个深度图像的点云数据进行数据融合可以修复深度图像中的孔洞;缩短深度图像中相邻点的距离可以提高分辨率;对深度图像进行光滑处理可以减少图像的毛刺现象。优选地,对多个深度图像的点云数据进行数据融合采用误差分布模式进行,可以减少或者避免多个深度图像融合引起的噪声积累现象。
[0043] 作为本实施例优选的实施方式,S2具体包括以下步骤:
[0044] S21:从深度图像的第k帧中选取至少三个点云块作为初始点云块,并从第k+1帧中选取与初始点云块距离最近的对应个数的点云块,计算该相邻两帧中的点云块之间的法相角度和距离,如果法向角度和距离都小于设定值,则认为匹配点云块成功;反之,则进入S2;
[0045] S22:将初始点云块和未匹配成功的点云块分别投影到各自同步的RGB图像上,在第k+1帧RGB图像上选取与第K帧RGB图像中近似的RGB块;
[0046] S23:计算两者之间的相似度,如果相似度小于阈值则返回S22重新选取近似的RGB块;如果大于阈值,则将近似的RGB块投影至深度图像,返回步骤S21重新匹配点云块,直至匹配点云块成功;
[0047] S24:采用高斯混合模型进一步对已经匹配成功的点云块进行局部配准,并采用曲线插值的方法对经过局部配准的点云块进行全局配准,得到待构建人体的点云数据模型。
[0048] 具体地,首先设定能量模型E,并通过Gauss-Newton算法求解最小化能量,得到理想深度图X为:
[0049] minx(Efill+Eppi+Esmoth);
[0050] 式中,Efill表示空洞能量模型;Eppi表示分辨率能量模型;Esmoth表示平滑度能量模型;
[0051] 为使相邻点尽可能靠近提高分辨率,可设:
[0052] Eppi=∑k=1∑j∈N(k)||u(k)-u(j)||2;
[0053] u(k),u(j)∈X表示X中相邻点,N(k)表示与k索引对应点的相邻点索引。
[0054] 针对多帧深度图融合时相邻位置深度值可能出现抖动的情况,Esmooth用来对深度图进行光滑处理,减少毛刺现象,可设:
[0055] Esmooth=∑k=1∑j∈N(k)||X(u(k))-X(u(j))||2;
[0056] 式中,X(u(k)),X(u(j))表示X中两个相邻点的深度值,Efill用来多深度图融合并填补空洞,可设:
[0057]
[0058] 式中,n表示点云数据量个数;W表示权重矩阵;Di表示第i帧原始深度图,·*表示相同纬度矩阵点乘。
[0059]
[0060] 上式中,σ
表示标准差,Px表示深度图中像素的面积,fx表示焦距,θ表示相机坐标,z轴方向与物体表面法向量之间的夹角,Wi(u(k))表示第i帧深度图u(k)位置的权重,用来避免和减少深度图融合过程中出现的距离和角度产生的误差。
[0061] 需要说明的是,为保证建模结果的准确性,需要对相邻两帧之间的点云数据进行配准操作,即一帧点云中所有的点在配准过程中的旋转和平移变换都相同,在第三步的方法中得到的匹配快作为这种算法的匹配点,构造高斯混合模型,通过最大期望算法(EM)迭代计算变换矩阵,然后用变换矩阵变换点云的空间位置进行点云对匹配。本实施例中,从第k帧中选取3个点云块,图2中用立方体表示,查找第k+1帧点云中与这3个点云块距离最近的3个点云,然后计算点云块之间的法向角度和距离(用虚线表示)。
[0062] 如果点云块之间的角度和距离都小于阈值则为匹配快,匹配终止,否则将这6个点云块分别投影到各自的RGB图上。进一步在k+1帧RGB图中搜寻3个与第k帧RGB图中近似的RGB块,搜索方向主要是以第1次投影的RGB块为起点,需要说明的是,上述的法向在RGB平面上的投影方向为搜索方向,搜索的步长主要是块的边长(本实施例中为5*5)与法向夹角的余弦值得乘积。
[0063] 进一步计算相似度,本实施例中通过欧式距离确定相似度,如果相似度小于阈值则重新选取近似的RGB块;如果大于阈值,则将近似的RGB块投影至深度图像,返回步骤S21重新匹配点云块,直至匹配点云块成功。其中,深度图像中的点云数据与RGB图像之间的投影关系如图2所示。
[0064] 进一步地,采用高斯混合模型对已经匹配成功的点云块进行局部配准,并采用曲线插值的方法对经过局部配准的点云块进行全局配准,得到待构建人体的点云数据模型。其中,理想配准情况如图3所示,不理想配准情况如图4所示。
[0065] 具体地,将点云对的配准过程看成高斯混合模型概率密度函数的最大似然估计问题,将其中一个点云看做高斯质心,另一个点云表示观测样本,在最优化的过程中实现点云的配准,XM×D=(x1,…,xN)T表示作为高斯质心的点云。YN×D=(y1,...,yM)T表示观测样本点云,并以质心为基础对样本进行数据聚合,D表示点云中点的维数,N,M表示点云中点的个数,需要说明的是,本发明中用作数据处理的高斯混合模型的概率密度函数为现有技术,在此,不对采用的高斯混合模型的概率密度函数做过多赘述。
[0066] 应当指出的是,对人体进行扫描的整个过程会产生很多帧点云,通过两两局部配准后仍然有出现环闭合问题,如图5所示,针对这个问题,采用基于曲线插值的方法进行全局配准,具体步骤为:
[0067] 首先通过对匹配快中的点进行重采样,构造人体模型不同高度下的n帧匹配点序列;对首尾帧匹配点进行修正,取首尾帧匹配点的中点统一为封闭匹配点,使用三次B样条插值曲线方法构造封闭拟合曲线,每个点Pi的参数ti通过弧长参数化得到,并利用这些参数计算点列在封闭拟合曲线中的位置Pi′;对每一帧中不同高度下的匹配点列重新计算每一帧的修正旋转和平移矩阵Ri和Ti,要求总得偏移量达到最小,通过最小二乘法求解公式:
[0068]
[0069] 进一步使用修正后的变换矩阵调整每一帧,得到全局匹配效果如图6所示。
[0070] 作为本实施例优选的实施方式,S3具体包括以下步骤:
[0071] S31:获取点云数据模型的表面的有向点集,并将有向点集转换为模型指示函数的梯度样本点以计算模型指示函数;本实施例中,模型指示函数为泊松偏微分方程;在实际应用中,通过求解其梯度值可以得到点云数据模型中的等值面。具体地,本实施例中所指等值面为点云数据模型对应的点云数据中间中距离相等的点组成的面,与现有技术中对空间等值面的理解一致,在此,不多做赘述。
[0072] S32:采用指示函数提取点云数据模型中的等值面,得到三维重建表面;
[0073] S33:采用八叉树技术优化三维重建表面。本实施例中,在具体优化时,通过八叉树技术使点云数据具有空间结构并采用方向距离函数将全局配准后的多帧点云数据进行空间距离上的融合,可以达到优化三维重建表面的目的。采用八叉树技术,将细节点所在面的等值线段投影到粗节点所在面上,避免产生裂纹,优化重建表面。该方法运行速度快,构网精度高,结合了隐式函数方法的优点并可以解决基函数解矩阵病态的问题。
[0074] 将本发明的三维构建方法构建的结果图与传统的三位构建方法进行对比,其中,采用传统的三维构建方法构三维模型如图7所示,采用本发明的三维构建方法构建的结果图如图8所示,本发明的三位构建方法具有明显的更清楚更细致的特点。
[0075] 实施例2
[0076] 与上述方法实施例相对应地,本实施例提供一种用于构建人体三维模型的系统,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
[0077] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈