一种面向个性化虚拟试衣的真实人体三维建模方法
【技术领域】
[0001]本发明属于计算机视觉领域,具体涉及一种面向个性化虚拟试衣的真实人体三维建模方法。
【背景技术】
[0002]随着虚拟现实技术的发展,人体三维建模受到了越来越多的关注,并成为影视特效、动画仿真、虚拟试衣等技术的基础环节。现有的人体三维表面重建方法主要包括主动测量方法、参数建模方法和基于深度图像的建模方法。
[0003]主动测量方法是指利用激光扫描仪、结构光扫描仪等设备对人体表面进行扫描并得到点云的三维坐标。使用这类设备获取目标表面三维信息的方式比较直接,结果比较精确,常用于标准三维人体模板的制备。但是该方法使用的扫描设备结构复杂、价格昂贵且不易操作。此外,此类方法测量时间长,被测者的舒适性差,而且很难处理人体自身的遮挡冋题。
[0004]参数建模方法需要获取人体少数特定部位的控制点和特征尺寸(如身高、腰围、臂长等),根据几何约束对人体拓扑结构进行调整,最后利用曲面对表面进行建模。这类方法简单易行,常用于服装设计相关领域,根据输入的参数可以获得实时重建效果。然而,该类方法容易受到非专业人士测量误差的影响,而且人体大部分区域是没有获得测量数据的,在这些区域上的重建精度不高。
[0005]基于深度图像的建模方法利用深度相机(如微软的Kinect)在拍摄彩色图像的同时,获得每个像素的深度信息。该方法操作简单、设备价格低廉,比主动测量方法更具通用性,但其得到的深度信息包含空洞和较多噪声,适用于对精度要求不高的实时动态人体三维重建。此外,深度相机远远低于普通数码相机的普及率也限制了当前该技术的应用范围。
[0006]近20年来,随着计算机视觉理论的完善和普通数码成像设备的普及,从图像中恢复场景三维结构的技术取得了很大进展。运动恢复结构(Structure from Mot1n,SFM)的方法只需一组无序图像作为输入便可完全自动地估计出相机参数和稀疏三维点云,因此得到了广泛的应用。典型的SFM过程包含特征匹配、相机参数估计和相机参数优化三个主要步骤。然而,由于人体不属于静态刚体目标并且缺乏丰富的纹理信息,SFM算法得到的三维模型在精度和完整度上都很难达到实际应用的要求,无法直接用于人体三维建模。因此,研宄基于计算机视觉技术的人体三维重建算法,改善人体图像匹配精度和相机参数估计精度,提高重建模型的完整性,不仅有很强的理论意义,而且具有非常广阔的应用前景。
【发明内容】
[0007]本发明所要解决的技术问题是克服现有SFM技术针对人体三维重建存在的缺陷,仅以视频作为基本数据内容,提出一种面向个性化虚拟试衣的真实人体三维建模方法,从而构建尺度精确、结构完整、效果真实的人体三维模型,重建后的模型可用于游戏和动画设计、影视特效以及个性化虚拟试衣等。
[0008]按照本发明,提出了一种面向个性化虚拟试衣的真实人体三维建模方法,该算法具体包括以下步骤:
[0009](I)数据准备。
[0010]这里描述的步骤仅仅用于获取人体数据,便于从数据中恢复人体裸身尺寸信息。由于运动恢复结构技术只能对静态刚体场景进行重建,无法处理动态的非刚体场景,因此必须要求被测者保持站立姿势不动。被测者的双臂不应自然下垂或紧贴身体,应保持伸直姿态并向身体两侧略微张开25至50度;同样地,被测者的双腿不应并拢,应保持直立姿态并分开与肩同宽。这样做是为了避免手臂和腿部内侧被多度遮挡,使更多身体表面暴露在视野范围之内。在三维服装设计和虚拟试衣的应用中,重建得到的人体模型应该是能反映特定个体真实尺寸的裸身模型。如果被测者身着宽松的衣物参与数据采集,重建得到的模型尺寸将会与裸身尺寸产生较大偏差。然而,处于隐私保护和伦理观念的考虑,要求被测者裸身或者身着内衣进行数据采集是不可行的。因此,在本发明中要求被测者A身着印有图案的紧身衣。这一策略有两个优点:第一,身穿紧身衣既不会对模型尺寸造成较大影响,又不会产生隐私和伦理的纠纷;第二,紧身衣上印刷的花纹大大简化了特征提取和匹配的过程,便于后面利用SFM进行重建。
[0011]本发明中对花纹的具体样式不做限定,但应尽量保证花纹包含较丰富的纹理信息,避免大面积的单色区域,同时花纹应尽量均匀地覆盖整个人体。具体地,可以让被测者A身穿印有黑白棋盘网格的紧身衣保持站立姿势不动,测量者B使用手机或数码相机围绕被测者A拍摄一段视频。
[0012](2)对视频中相邻的两帧图像进行特征提取与匹配,根据匹配构建特征点的轨迹。
[0013]特征点的轨迹是指一个特征点在一段连续子序列的每一帧上的匹配点构成的集合,每个轨迹对应于空间中的一个三维点。这些轨迹将在SFM算法中用于对相机参数的估计和优化。
[0014](3)对视频进行处理分析,剔除冗余信息,抽取视频中关键帧用于重建。关键帧的选取应当满足两个约束:即相邻两个关键帧之间有足够多的匹配,同时相邻两个关键帧的基线尽可能宽。
[0015](4)人体三维点云模型的生成。根据特征点的轨迹估计并优化所有关键帧的相机参数,得到轨迹对应的稀疏的三维点云,并通过点云在三维空间中的扩展得到稠密的人体三维点云模型。
[0016](5)将预先制备的标准人体模型向重建得到的点云模型映射,映射过程中允许发生一定程度的姿态变化和表面形状变化,以便标准模型能最大程度地拟合重建模型,最终得到完整光滑的人体表面模型;
[0017](6)根据关键帧和对应的相机参数,对生成的人体表面模型进行纹理映射,得到最终重建结果。
[0018]在本发明的一个实施例中,所述步骤(2)具体包括:
[0019](2.1)在视频第一帧上提取特征点,并利用光流法对其进行跟踪,得到在下一帧上特征点位置的预测值;
[0020](2.2)为了减少噪声的干扰,需要通过可靠性验证来过滤不可靠的跟踪结果;
[0021](2.3)随着新的场景进入视野,需要在没有特征点的图像区域重新提取特征点;
[0022](2.4)根据特征点匹配的结果构建特征点的轨迹。
[0023]进一步地,在本发明的一个实施例中,所述步骤(2.4)中特征点的轨迹是指一个特征点在一段连续子序列的每一帧上的匹配点构成的集合。
[0024]在本发明的一个实施例中,所述步骤(3)具体包括:
[0025](3.1)清空关键帧队列,并将视频序列的第一帧作为初始关键帧加入关键帧队列;
[0026](3.2)设置搜索起始帧为关键帧队列的最后一帧,然后将当前帧初始化为搜索起始帧;
[0027](3.3)判断当前帧是否是视频序列的最后一帧。如果是,则执行步骤(3.7),如果不是,则当前帧沿视频序列向后移动一帧;
[0028](3.4)根据搜索起始帧和当前帧之间的匹配计算基础矩阵,统计满足极线几何约束的匹配点的数量,并将不满足该约束的匹配剔除;
[0029](3.5)根据搜索起始帧和当前帧之间的匹配计算单应变换矩阵,统计满足单应变换矩阵约束的匹配点数量占所有匹配点数量的比例;
[0030](3.6)判断搜索起始帧和当前帧之间满足极线几何约束的匹配点数量是否小于预先设定的阈值,判断搜索起始帧和当前帧之间满足单应变换的匹配点比例是否小于一个阈值。如果二者满足其一,即终止当前向后搜索过程,把当前帧作为新的关键帧加入关键帧队列的尾部,并执行步骤(3.2);如果二者皆不满足,则执行步骤(3.3)。
[0031](3.7)关键帧选取过程结束,返回关键帧队列。
[0032]在本发明的一个实施例中,所述步骤(4)具