CN114119905A - 一种虚拟试衣方法、系统、设备和存储介质 - Google Patents

一种虚拟试衣方法、系统、设备和存储介质 Download PDF

Info

Publication number
CN114119905A
CN114119905A CN202010876005.6A CN202010876005A CN114119905A CN 114119905 A CN114119905 A CN 114119905A CN 202010876005 A CN202010876005 A CN 202010876005A CN 114119905 A CN114119905 A CN 114119905A
Authority
CN
China
Prior art keywords
human body
dimensional
model
target
posture
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.)
Pending
Application number
CN202010876005.6A
Other languages
English (en)
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.)
Beijing Momo Information Technology Co ltd
Original Assignee
Beijing Momo Information 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 Beijing Momo Information Technology Co ltd filed Critical Beijing Momo Information Technology Co ltd
Priority to CN202010876005.6A priority Critical patent/CN114119905A/zh
Publication of CN114119905A publication Critical patent/CN114119905A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0641Shopping interfaces
    • G06Q30/0643Graphical representation of items or shoppers

Abstract

本发明公开了一种虚拟试衣方法,包括:根据服装的二维图像制作服装的三维模型;将三维服装模型贴合到三维标准人体模型;获取目标人体的二维图像;将获得的三维人体参数输入标准人体模型中进行拟合;服装三维模型匹配到三维人体模型上;使得三维人体模型与目标人体姿态基本一致。本发明提供了通过深度神经网络来分析人体全身照片得到精准人体三维模型参数的方法,仅需一张普通照片就能迅速为人体建模;同时,三维服装模型是提前通过对二维服装图片进行加工处理得到的,用户无需参与这些幕后工作,只需要选择想虚拟试衣的服装样式即可,系统会自动匹配相应的服装模型,并且通过一系列方法保持了真实度和还原度。

Description

一种虚拟试衣方法、系统、设备和存储介质
技术领域
本发明属于用户虚拟换装和试衣领域,具体涉及虚拟换装中使用的人体建模,衣服建模,以及衣服模型与人体模型的贴合,尤其是基于机器学习的从照片中提取相关信息生成的自定义人体模型与三维衣服模型的匹配方法、系统、设备和存储介质。
背景技术
随着互联网技术的发展,网上购物方式越来越普及。相比于实体店购物,网上在线购物具有商品种类多、购物方便等优势。但是,在网上购买商品,也存在一些不易解决的问题,最主要的就是无法实地查看要买的商品。在所有的商品种类中,服装商品这个问题最为突出。相比于实体店购物中可以实时地换装查看服装效果,在线服装购物无法提供针对消费者本身的效果图,只能提供模特试衣的图片,有的甚至根本没有试衣图片,消费者无法实时直观地获取服装和自身体型形象的匹配程度。造成了大量的退换货。
针对这一问题,经营者尝试利用虚拟试衣技术为消费者提供模拟试衣效果解决这一问题。当然,现实中还存在其他可以使用虚拟换衣试衣技术的场合,比如网络游戏中。因此,这一技术得到了较快的发展。
虚拟试衣是指用户不用实际换上想要观看穿着效果的衣服,也能在终端屏幕上实时查看“换装”效果的一种技术应用。现有的换装技术应用主要包括平面试衣和三维虚拟试衣技术。前者基本上是采集用户的图片,采集衣服的图片,然后对衣物进行拉伸或者压缩成与人体大小相同的状态,再进行裁剪和拼接,形成“穿衣”后的图像,但这类图像由于简单粗暴的图像处理方式而造成真实度较差,完全没有考虑到用户的实际体型,只是把服装生搬硬套到用户照片上,不能满足用户的需求。后者通常通过三维采集设备采集人的三维信息并结合服装的特征进行合成,或者通过手动输入用户提供的身体数据信息,并按照一定的规则生成一个虚拟的人体三维模型mesh,然后与服装贴图进行结合。整体上来说,这类三维虚拟试衣需要进行大量的数据采集或者三维数据计算,硬件成本高,在普通用户中不易推广。
随着云计算技术、人工智能技术和智能终端处理能力的发展,产生了二维虚拟试衣技术。此类技术主要包括三个步骤:(1)对用户提供的个人身体信息进行处理,得到目标人体模型;(2)对服装信息进行处理得到服装模型;(3)将人体模型和服装模型融合在一起,生成人穿着该服装的模拟图。
对于第(1)点,由于流程设计、模型参数选择、神经网络的训练方法等诸多不确定因素的累积,最终生成的换衣图片质量并不如传统的三维虚拟试衣技术,这其中,人体模型的建立因为是其基础步骤,并且后面的穿衣过程也必须以前面生成的人体模型为基础,所以,一旦人体模型生成的不准确,容易产生人体模型与试衣者体型差距过大、皮肤纹理丢失、身体部位丢失等问题,影响最终的生成的换衣图片效果。
在图像处理领域,三维重建是指对三维物体建立适合计算机表示和处理的数学模型,是在计算机环境下对其进行处理、操作和分析其性质的基础,也是在计算机中建立表达客观世界的虚拟现实的关键技术,广泛应用于计算机动画、虚拟现实、工业检测等领域。
在一般的计算机视觉领域中,人体建模的初始起点有很多种,通常包括使用3D扫描设备对真实人体进行全方位扫描,基于多视角景深照相的三维重建方法,以及给定图像结合人体模型的方法实现三维重建这三大类。其中,使用3D扫描设备对真实人体进行全方位扫描获得信息最多最准确,但是这类设备通常比较昂贵,并且需要人体模特的高度配合,整个处理过程对处理的设备的要求非常高,所以一般都应用于一些专业领域;其次,多视角三维重建方法需要提供被重建人体多个视角相互重叠的图像并建立图像间的空间转换关系,使用多组摄像头,以拍摄多张的方式,拼合出一个3D模型,操作相对简化了一些,但是计算复杂度仍然较大,并且多数情况下,只有现场参与的人才能获得多角度的图片。深度摄像头多角度拍照方法拿到的贴图然后拼合得到的模型,没有身体尺度数据,不能为3D感知提供基础。再次,单张图像结合人体模型的方法只需要提供一张图像,基于神经网络的三维人体特征曲线智能生成方法,通过神经网络训练,获得可以用来描述人体颈部、胸部、腰部以及臀部等部位曲线的权值和阂值,然后根据人体截面的围长、宽度、厚度等的尺寸参数信息,就能直接生成与真实人体体型吻合的人体三维曲线就可以获得预测的人体模型。但这种方法由于输入信息量较少,而求解过程仍然需要消耗较多的计算量,导致最终的模型效果不能令人满意。
对于第(2)点,在生成三维服装模型的现有技术中,存在几种不同的方法。目前,比较传统的服装三维模型建立方式是基于二维衣服裁片的设计与缝合方法。这种方法需要一定的服装专业知识来对样板进行设计,这并非是所有的虚拟试衣的用户所具备的素质,同时这种方法也需要人工指定样板间的缝合关系,这将消耗大量的时间来进行设定。除此之外,另一种较为新颖的三维建模方法是基于手绘的,可以通过用户手绘的线条信息生成简单的服装模型。但是,这种方法需要专业的人员来进行手绘,并且可复制性和可重复性较差,需要耗费用户大量时间去进行服装的细节绘画,难以大规模推广至电子商务中。这两种方法都更倾向于创新设计新的服装,而不是对已有待售的服装进行三维建模。还有一种是在获取服装图片信息的基础之上,综合使用图像处理技术与图形仿真技术,最终生成虚拟三维服装模型。在图片中通过轮廓检测与分类获取服装轮廓与尺码,通过机器学习的方法从轮廓中找出的边与边的关键点,通过关键点对应关系生成缝合信息,最后在三维空间中对服装进行物理缝合的仿真,获取服装穿着在人体上的真实效果。
对于第(3)点,当前市场上常见的虚拟试衣间主要专注于款式搭配,没有直观模拟出虚拟角色与衣服布料碰撞的自然属性,因而在真实感方面仍然存在很大的欠缺。目前,越来越多的厂家通过利用虚拟角色形象地表现用户姿态,并实时模拟衣服布料与人体之间的碰撞响应及实时渲染来增加虚拟世界和现实世界的粘合度,给虚拟试衣用户带来了更多的换装乐趣,也让更多人享受到购买服装时所带来的便利。
综上,基于互联网技术和其所处的网络环境特点,从单张人体图像直接输出最终换装后图像或者照片的方式无疑是最优选的,其便捷性是最好的,用户无需亲临现场,只需一张照片,即可完成整个虚拟换衣过程。那么随之而来的问题就是,只要能保证其获得的结果照片效果基本和真实3D模拟换衣相当,就会成为主流。这其中,(1)如何通过一张照片而获得最接近人体真实状态的人体模型,以及(2)如何把三维服装模型以最接近真实的状态穿到人体模型上,就成为虚拟换衣方法中两个最重要的不可回避的问题。
针对第一点。现有技术中,构造人体模型的方法通常有几类:(1)基于回归的方法,通过卷积神经网络重建出体素表示的人体模型,算法首先根据输入图片估计人体主要关节点的位置,然后根据关键点位置估计出给定指定大小体素网格中,根据其内部每个单元体素是否被占用,从而用内部占用体素的整个形状来描述重建出的人体形状;(2)基于单张图片的人体重建,该方法同时估计出人体三维形状和姿态,该方法首先在图像上对简单的人体骨骼关键点进行了粗略的标注,然后根据这些粗关键点进行人体模型的初始匹配和拟合,得到人体大致形状。(3)用23个骨骼节点来表示人体骨架,然后用每个骨骼节点的旋转来表示整个人体的姿态,同时,用6890个顶点位置来表达人体形状,在拟合过程中,给定骨骼节点位置,同时拟合出形状和姿态的参数,从而进行三维人体重建;或者先用CNN模型来预测图像上的关键点,然后采用SMPL模型进行拟合,得到初始的人体模型。接着,用拟合得到的形状参数来回归一个人体关节包围盒,每个关节对应一个包围盒,用轴长和半径来表示其包围盒。最后,结合初始模型和回归得到的包围盒从而得到三维人体重建。以上方法存在建模速度较慢,其建模精度不够,并且重建效果强依赖所创建的身体和姿态数据库的问题。
现有技术一公开了一种基于体测数据的人体建模方法,如图1所示,所述方法包括:获取体测数据;根据所述体测数据,通过预先训练好的预测模型对预先创建的人体模型进行线性回归,拟合得到预测人体模型,所述预先创建的人体模型包括预先定义的多组标记特征点以及对应的标准形状基,所述体测数据包括与每组标记特征点对应的测量数据;根据所述预测人体模型,得到目标人体模型,所述目标人体模型包括测量数据、目标形状基以及目标形状系数。但是这种方法,对体测数据要求非常高,包括体长数据与围长数据,比如身高、臂长、肩宽、腿长、小腿长、大腿长、脚板长,头围、胸围、腰围、大腿围等,不仅测量还要计算。确实节约了计算量,但是用户体验却非常不好,程序很繁琐。并且在人体模型的训练上,参考了SMPL模型的训练方式。
SMPL模型是一种参数化人体模型,是马普所提出的一种人体建模方法,该方法可以进行任意的人体建模和动画驱动。这种方法与传统的LBS的最大的不同在于其提出的人体姿态影像体表形貌的方法,这种方法可以模拟人的肌肉在肢体运动过程中的凸起和凹陷。因此可以避免人体在运动过程中的表面失真,可以精准的刻画人的肌肉拉伸以及收缩运动的形貌。该方法中β和θ是其中的输入参数,其中β代表是个人体高矮胖瘦、头身比等比例的10个参数,θ是代表人体整体运动位姿和24个关节相对角度的75个参数。但是这种模型生成方式,核心是训练数据的大量积累,获得体型和形状基之间的关系,但是,这种关系由于互相之间具有极强的关联性,每个形状基之间无法做到独立控制,不容易进行解耦合操作,比如,胳膊和腿之间也存在一定关联关系,胳膊动的时候腿理论上也会跟着运动,很难在SMPL模型上实现针对不同特点体型的改进。
现有技术二公开了一种基于单张照片的3D人体建模方法,包括:获取一张照片,对照片进行解析,标记照片中人体的关键点,计算关键点的空间坐标;获取预先创建的标准人体模型中的骨骼点与照片中的关键点的距离后,对齐骨骼点与关键点后生成基础人体模型;获取预先创建的标准人体模型中的基本贴图,将基本贴图与照片中人脸的皮肤纹理进行差值计算后,使用边缘通道进行融合,生成基础纹理数据;根据基础人体模型与基础纹理数据生成3D人体模型。通过一张照片实现3D人体建模,而且模型中有骨骼和肌肉系统支撑,可以产生表情和动作。但是这种方法,是通过用户照片关键点和标准人台关键点之间的距离做匹配之后,再去调整距离,达到目标人体的姿态,并且后续还要通过基本贴图和照片中的皮肤纹理进行差值计算并融合后才能获得最终的人体模型,这种方法流程简单计算量小,但是生成的人体模特精度和真实度不是很高。
现有技术三公开了一种三维人体模型的生成方法,包括:获取二维人体图像;将所述二维人体图像输入至三维人体参数模型中,得到与所述二维人体图像对应的三维人体参数;将所述训练样本输入神经网络中进行训练,得到三维人体参数模型,包括:将所述训练样本中的所述标准二维人体图像输入至所述神经网络中,得到与所述标准二维人体图像对应的预测三维人体参数;根据所述预测三维人体参数调整三维柔性可变形模型,得到预测三维人体模型;根据所述预测三维人体模型中关节点位置通过反向映射得到所述标准二维人体图像中预测关节点位置。这种建模方式,利用模型判断和最后经神经网络输出的参数仅仅只有关节点参数,然后利用了SMPL模型的成熟体型对其进行与目标人体姿态一致的细节调整,虽然计算量减少,但是由于输入参数较少,并且只能在SMPL预测模型的基础上完成调整,很难输出特别理想的与目标人体姿态高度一致的人体模型。
针对第二点。现有技术中存在这样的虚拟试衣方案,包括:获取着装的参考人体模型以及未着装的目标人体模型;为所述参考人体模型和所述目标人体模型分别嵌入相同层次结构的骨架;对所述参考人体模型和所述目标人体模型的骨架进行皮肤绑定;计算所述目标人体模型骨架中骨头的旋转量,递归调整所述目标人体模型骨架中的所有骨头,使所述目标人体模型骨架与所述参考人体模型骨架的姿势保持一致;根据所述目标人体模型骨架中骨头的旋转量,利用LBS蒙皮算法进行所述目标人体模型的皮肤变形;在对所述目标人体模型进行皮肤变形的基础上,将服装模型从所述参考人体模型上迁移到所述目标人体模型上。该发明在目标人体模型和参考人体模型姿势调整一致后,可以降低服装模型从参考人体向目标人体迁移的难度,将低效的非刚性配准问题转换为高效的刚性配准问题,从而实现了将服装模型从所述参考人体模型上迁移到所述目标人体模型。解决了在保持衣服在试穿前后尺寸不变的情况下,完成衣服在不同人体、不同姿势下的自动化试穿的技术问题。但是,这种蒙皮的方法,过于注重衣服和皮肤之间的固定间距,在拟合速度上占据优势,但是在服装匹配度和真实度上存在较大劣势,只适合一些需要快速简单处理衣物跟随皮肤网格移动的场合。
由此可见,为了配合互联网行业的发展趋势,在虚拟试衣这个细分领域,最少的输入信息、最少的计算量和最佳的效果将是三个一直被追求的基本目标。需要我们在这三者之间寻找一个最佳的平衡点,提供一种可以做到简单输入,计算量不超过终端设备承受力,效果接近专业设备的虚拟试衣方法。
发明内容
基于上述问题,本发明提供了一种克服上述问题的虚拟试衣方法、系统、设备和存储介质。
本发明提供一种虚拟试衣方法,所述方法包括:获取服装的二维图像;根据服装的二维图像制作服装的三维模型;结合数学模型构造三维标准人体模型,所述三维标准模型处于初始姿态;将三维服装模型贴合到初始姿态的三维标准人体模型,即标准基础人台身上;获取目标人体的二维图像;通过神经网络模型的计算获得三维目标人体模型参数;将获得的若干组姿态和体型三维人体参数输入三维标准人体模型中进行拟合;获得与目标人体姿态和体型相同,并且穿着换装后服装的目标人体模型。
优选的,三维标准人体模型可以是除初始T-pose外的其他预定姿态三维标准人体模型;预先设计若干个常见姿势的初始姿态基,在三维人体模型移动的过程中,先计算从哪个常见姿势移动到目标姿态的距离最短,然后选择从这个常见姿势的初始姿态基开始拟合,以提高处理的速度。
优选的,所述三维标准人体模型由若干个形体基的参数以及若干根骨骼参数构成,所述若干个基构成整个人体模型,每个形体基分别由参数单独控制变化,互不影响;所述三维人体模型具有骨骼点和人体网格的数学权值关系,骨骼点的确定可关联确定目标人体姿态的人体模型。
优选的,还包括三维服装模型和骨骼之间,以及人体模型皮肤网格和骨骼之间两个不同的蒙皮刷权重的处理步骤,以保证服装、人体皮肤网格和骨骼之间存在改进的运动匹配关系。
优选的,所述获得三维目标人体模型参数的步骤还包括,将二维人体轮廓图像代入经过深度学习的第一神经网络进行关节点的回归,获得目标人体的关节点图,语义分割图,身体骨骼点以及关键点信息;以及将生成的上述人体信息代入经过深度学习的第二神经网络进行人体姿态和体型参数的回归,获得三维人体参数,包括三维人体动作姿态参数和三维人体体型参数。
优选的,所述拟合步骤中,通过三维人体体型参数使得三维人体模型与目标人体体型基本一致;与三维标准人体模型贴合的服装三维模型,通过装备自适应的方式匹配到三维人体模型上;通过三维人体动作姿态参数确定目标人体的姿态,从初始姿态驱动骨骼移动到目标姿态,使得三维人体模型与目标人体姿态基本一致。在装备自适应的过程中,对标准人体模型的网格面片生成一种场,三维服装的各个面片与标准人体模型对应位置建立一种场对应关系,当标准人体模型体型变化的时候,三维服装也可以实现与之对应的跟随变化。
优选的,在模型穿着服装的过程中,将三维服装的相对于标准人体模型网格的正常贴合状态膨胀一定尺寸,使得三维服装的穿模现象减少。
优选的,所述拟合驱动步骤还包括以下子步骤,
1)获得初始姿态和目标姿态的位置坐标;
2)生成从初始姿态移动到目标姿态的动画序列;
3)生成动画序列的过程中,采用网格插帧的方式进行处理;
4)插帧速度的设置为前后距离初始点和目标点的位置慢,中间运动过程快;
5)在驱动至最终目标姿态时静止数帧,得到整个动画序列;
6)完成从初始姿态驱动骨骼移动到目标姿态。
优选的,在三维人体模型移动的过程中,对所穿着的衣服进行布料模拟计算,布料模拟采用布料模拟和蒙皮方法的结合,在衣服移动后基本不发生形变的部分采用蒙皮方式,在衣服移动过程中发生形变的部分采用布料模拟的方式,所述布料模拟过程中,在人体模型达到目标姿态时,对服装的布料进行若干帧重力解算,以保证服装布料在目标姿态下的逼真度。
还提供了一种虚拟试衣系统,包括:1)三维服装模型制作模块;2)三维标准人体模型制作模块;3)三维目标人体模型生成模块;4)三维服装和三维目标人体模型的匹配模块;其中,所述三维服装制作模块包括,1)服装二维图像获取模块;2)结合数学模型的三维标准人体模型构造模块;3)根据服装的二维图像制作服装三维模型的服装制作模块;4)将三维服装模型贴合到三维标准人体模型身上的服装贴合模块;5)进行服装三维模型检查的检查模块。
优选的,所述三维服装和三维目标人体模型的匹配模块包括:1)装备自适应模块,用于根据已适配到标准人体模型上的服装模型和给定目标姿态的人体模型,通过服装自适应匹配的方式,将三维服装模型适配到目标体型的人体模型上;2)人体模型拟合模块,用于将获得的若干组POSE基和体型SHAPE三维人体参数输入三维标准人体模型中进行拟合,利用骨骼驱动人体模型完成从初始姿态向目标姿态的变化;3)布料模拟模块,用于对布料进行处理,以使得衣物在跟随骨骼运动到目标姿态后,保持真实性和还原度。
一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现前面任一所述的方法步骤。
一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现前面任一所述的方法步骤。
本发明的有益效果是:
1、用户操作简单。本发明提供了通过深度神经网络来分析人体全身照片得到精准人体三维模型参数的方法,仅需一张普通照片就能迅速为人体建模;同时,三维服装模型是提前通过对二维服装图片进行加工处理得到的,用户无需参与这些幕后工作,只需要选择想虚拟试衣的服装样式即可,系统会自动匹配相应的服装模型。非常好地适应了互联网时代的特点和趋势,一是简单,二是快捷。用户无需任何准备,上传一张照片就是用户需要完成的所有工作。如果将本发明应用于娱乐小程序或者网络购物等场景,将会极大的增强用户的体验和粘性。不需要景深摄像头或者多组摄像头,就能得到的3D模型对应人体的真实形态,为各个行业,比如服装、健康等提供了广阔的应用场景。
2、虚拟服装的真实度高。这里,真实度实际包括两方面的内容,一是衣物自然跟随人体状态变化的真实性高;一是衣物布料纹理的还原度高。我们首先将三维服装模型穿在三维标准人体模特身上,输入目标人体模型的体型参数得到目标人体模型,通过服装自适应的方式让三维服装模型跟随从标准人体模型到目标人体模型体型的变化而变化,并且衣物状态的变化非常真实。此外,我们还采用了布料模拟其实就是模拟出接近真实(当然也可以做的和现实中的物理效果不符)的布料效果,我们这里主要突出的是布料纹理模拟的高还原度,包括布料印花的模拟的正确度。布料模拟采用布料模拟和蒙皮方法的结合,在衣服移动后基本不发生形变的部分采用蒙皮方式,在衣服移动过程中发生形变的部分采用布料模拟的方式保证逼真度和解算速度。布料模拟过程中,在人体模型达到目标姿态时,对服装的布料进行若干帧重力解算,以保证服装布料在目标姿态下的逼真度。
3、衣服穿模缺陷少。在装备自适应的过程中,标准人体模型的网格面片生成一种场,三维服装的各个面片与标准人体模型对应位置建立一种固定的场对应关系,当标准人体模型体型向着目标人体模型的体型发生变化的时候,三维服装模型也可以实现与之对应的均匀变化。在生成的对应关系过程中,我们还会将三维服装的相对于正常状态膨胀一定尺寸,这对服装的真实感影响甚小,但是却使得三维服装模型的穿模现象大大减少,相当于在服装模型面片和人体模型网格之间留下了一个可以活动的空间,留下了一个余量,会在衣服和模型适配过程中,大大减少穿模发生的几率。
4、增加蒙皮刷权重步骤。我们在三维服装模型生成后,加入了一个特别的蒙皮刷权重步骤,其实也可以称之为人体模型和服装模型的调整。包括三维服装模型和骨骼之间,以及人体模型皮肤网格和骨骼之间两个不同的蒙皮刷权重的处理步骤。现有技术中,通常单独使用前述两个操作中的人体模型皮肤网格和骨骼之间蒙皮刷权重的操作,但是,我们创造性地通过结合使用两种蒙皮刷权重的操作,通过这个组合操作,使得在虚拟试衣的条件下,骨骼和衣物的联动更加准确,可以让每根骨骼控制的衣物和人体皮肤网格更加精确和细致,以保证服装、人体皮肤网格和骨骼之间存在改进的精确运动匹配关系,表现在衣物上,就是还原度和真实度好,跟随运动的状态也保持的与真实世界的运动基本一致,不会出现移动一根骨骼造成大块或者其他不相关联区域的皮肤网格和衣物非正常移动的缺陷,可以使服装的跟随移动更加自然逼真。
5、提前设计了多套标准人台,囊括了我们通过统计数据处理得到若干个常见人体姿态的初始姿态基。包括坐姿、手部抬起、抬腿、手部收拢等若干个基本姿态,姿态丰富程度远远高于单一的T-pose标准人体模型。在这种设计下,三维标准人体模型可以是除初始T-pose外的其他预定姿态三维标准人体模型,在三维人体模型移动的过程中,先计算从哪个常见姿势移动到目标姿态的距离最短,然后选择从这个常见姿势的初始姿态基开始对标准人体模型和目标人体模型进行拟合,大大缩短了系统的计算时间,节约了算力,可以将标准人体模型又快又好地驱动到目标姿态,这在手机端可能成为虚拟换衣最常用终端的情况下,是非常有利的。
6、为了能逼真地拟合出目标人体的姿态,在从初始姿态到目标姿态的变化过程中,我们采用了经过优化的插针法来完成,和传统的插针法比较,我们的目标姿态的骨骼信息由模型回归预测得到,同时,生成从初始姿态移动到目标姿态的动画序列;通过线性插值,最近邻插值等插帧方式,形成初始姿态到目标姿态的骨骼信息时间序列。生成动画序列的过程中,采用网格mesh插帧的方式进行处理;插帧速度的设置为前后距离初始点和目标点的位置慢,中间运动过程快;尤其重要的是,在模型达到最终目标姿态时静止数帧,得到整个动画序列。这样的做法比起匀速插帧更贴近真实物理世界运动规律,服装和人体姿态仿真出来的效果更佳,并且可以减少相当的处理时间。
7、高频度使用深度神经网络。本发明充分利用了深度学习网络的优势,能够在各种复杂的场景中,高精度还原人体的姿态和体型。针对不同的目的分别使用不同的神经网络,利用不同输入条件和训练方式的神经网络模型,实现了人体在复杂的背景下的精准轮廓分离,人体的语义分割,关键点和关节点的确定,排除了宽松衣物、发型的影响,做到最大程度上逼近人体的真实体型和形态。现有技术中也会使用神经网络模型,但是由于输入条件、输入参数、训练方式的不同,导致神经网络模型发挥的功能和作用有较大差异。
8、神经网络模型的设置更加科学和有针对性。现有技术中有一些图像处理方法,过于追求简单地直出模型,没有花时间打磨模型的细节,纯粹通过海量图像数据的训练来完成从2D图片到3D身体模型的映射,虽然效率很高,但是处理流程过于简单,完全依靠神经网络模型来生成三维人体模型,身体的比例和细节部分的一致性和效果均不如人意,并且对后续的进一步处理,完全没有帮助,而且可能成为后续程序难以跨过的障碍。而我们前一级的神经网络,人体轮廓、人体语义分割、关键点和关节点都会作为输入的项目,可以从多个角度来完成模型参数的生成,并且后一级神经网络输出的参数包含POSE和SHAPE两个类别,可以分别控制动作和体型,并且结合我们的参考模型,可以精准的复制人体模型的姿态和体型。
9、人体模型精确可控。目前流行的基于单图像的人体重建方法主要分为重建参数化人体模型。最常用的参数化模型为马普所的SMPL模型,其包含用于描述人体姿态和描述人体体型的两套共72个参数。针对单图片重建问题,先从图片估计二维关节位置,再通过三维关节与二维平面关节投影距离最小来实现优化得到SMPL参数,进而得到人体。但SMPL模型,主要通过大量的人体模型实例来进行深度学习和训练,体型和形状基之间的关系是一种整体关联关系,解耦合难度很大,无法随心所欲地控制想要控制的身体部分,导致生成的模型不能达到与真实人体姿态和体型的高度一致性,此外,如果进一步应用于后续的穿衣过程,也会导致对人体表面几何细节的表现能力有限,无法很好地重建出人体表面衣物的细节纹理。但是我们的人体模型,不是通过训练得到的,参数之间存在基于数学原理的对应关系,也就是说,我们的各组参数之间没有互相牵连的关系,是各自独立的,因此我们的模型在变换过程中更具有解释性,可以更好地表征身体某一个局部的形状变化。通俗来讲,就是人的体型千人千样,很多人的大腿和小腿的比例并不满足一定的精确比例,我们的模型可以通过控制输入的参数,实现大腿和小腿分别的控制和长度调整,达到腿部比例的精确确定。
10、更适合亚洲人体型。人体建模通常会设计一些标准人体模型,也就是我们所说的标准人体模型或者基础人台。通过自建的标准人体模型,可以实现人体的操控,也就是从起始POSE到目标姿态的过程操控,这部分工作是完成之后的服装随人体姿态变化而变化的基础。只有人体先准确达到目标姿态,才能计算服装跟随人体到达目标姿态的具体过程。在这个过程中,我们放弃使用马普所SMPL模型依靠欧洲人形体数据训练出来的几个基本人体模型,而是自己建立了一套更符合亚洲人体型的标准人体模型(标准人台)。这套人台可以包括170根骨骼和20个形体基的参数,大大丰富了人体模型的细节部分,对细节的表达超过了SMPL模型。并且结合前面所述每个基独立控制的特点,可以根据需求,对人台每一个部分进行独立、精确地控制和修改,达到了每个人体模型都更加美观的效果。此外,我们还会对人台的局部进行后期的手工调整,比如顶点数和面片数,这更是以SMPL模型为代表的其他模型所不能完成的功能。除了模型高度可以精确调整,其他诸如体型胖瘦、胳膊长短、腿部的比例、腰部长短及腰围等,都可以进行精确控制,从而使得人台更加贴合用户的体型。
本发明通过自有标准人体模型的建立,挑选出适合亚洲人体型特点的形体基,并使用与20个形体基和170根骨骼相对应的参数,生成了比马普所人体SMPL模型更加贴近亚洲人体型,独立操作和控制性更佳的三维人体模型。同时,我们通过一系列方法保持了三维服装模型真实度和还原度,并在衣服模型和人体模型的匹配中使用多种创造性方法,既保持了处理速度的快速,又保持了衣物模拟的真实性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例的全部处理流程图;
图2为一个实施例的模型参数获得模块的处理流程图;
图3为一个实施例的人体模型拟合处理流程图;
图4为本发明的系统示意图。
具体实施方式
下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本发明,并不被配置为限定本发明。对于本领域技术人员来说,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
下面结合附图对本发明实施例提供的处理人体图像的方法进行详细说明。
如图1所示,本发明实施例公开了一种虚拟试衣方法,所述方法包括:获取服装的二维图像;根据服装的二维图像制作服装的三维模型;结合数学模型构造三维标准人体模型,所述三维标准模型处于初始姿态;将三维服装模型贴合到初始姿态的三维标准人体模型,即标准基础人台身上;获取目标人体的二维图像;通过神经网络模型的计算获得三维目标人体模型参数;将获得的若干组姿态和体型三维人体参数输入三维标准人体模型中进行拟合;获得与目标人体姿态和体型相同,并且穿着换装后服装的目标人体模型。
本发明虚拟试衣方法大致包括几个部分的步骤。一是生成三维服装模型;二是生成一个标准人体模型,并把三维服装模型套在标准人体模型身上;三是获得目标姿态人体模型的参数;四是让标准人体模型的体型和姿态均变为和目标人体模型一致,同时模拟出三维服装模型跟随人体模型的变化而发生的真实变化。
第一部分主要是生成三维服装模型。在生成三维服装模型的现有技术中,存在几种不同的方法。目前,比较传统的服装三维模型建立方式是基于二维衣服裁片的设计与缝合方法。这种方法需要一定的服装专业知识来对样板进行设计。另一种较为新颖的三维建模方法是基于手绘的,可以通过用户手绘的线条信息生成简单的服装模型。还有一种是在获取服装图片信息的基础之上,综合使用图像处理技术与图形仿真技术,最终生成虚拟三维服装模型。在图片中通过轮廓检测与分类获取服装轮廓与尺码,通过机器学习的方法从轮廓中找出的边与边的关键点,通过关键点对应关系生成缝合信息,最后在三维空间中对服装进行物理缝合的仿真,获取服装穿着在人体上的真实效果。此外,还有映射法,数学模型仿真法等方法,本发明对这一部分并不作出特别的限定,但是,三维服装模型需要匹配到标准人体模型上,总的要求是基于已适配到标准人体模型上的服装模型,通过布料物理模拟的方式,适配到目标姿态下的人体模型上,且保证服装的自然性和合理性。所以通常要满足一些基本要求,包含但不限于以下几点:a.要和标准人台的初始姿态完全贴合不穿模;b.输出为均匀的四边面;c.模型的UV需要展开平铺紧凑对齐,并且贴图须通过photoshop工具人工对齐UV;d.进行过顶点合并;e.输出模型应均匀减面,参考标准总面数不超过15w面/套;f.需要在主流服装设计软件里调节材质,解算10帧动画观察布料效果,达到预期并把材质参数保存;g.需要在主流设计软件里里调节渲染材质,预览一张渲染,保证材质lambert属性合理。
第二部分是根据我们的人体建模方法,预先设计建模一些基础人台,并把三维服装模型套在标准人体模型身上,以达到和我们后续工作流程相适应的效果。主要工作内容为:结合数学模型构造三维标准人体模型,即基础人台。马普所的SMPL人体模型可以避免人体在运动过程中的表面失真,可以精准的刻画人的肌肉拉伸以及收缩运动的形貌。该方法中β和θ是其中的输入参数,其中β代表是个人体高矮胖瘦、头身比等比例的10个参数,θ是代表人体整体运动位姿和24个关节相对角度的75个参数。β参数是ShapeBlendPose参数,可以通过10个增量模板控制人体形状变化,具体而言,每个参数控制人体形态的变化可以通过动图来刻画。通过研究参数变化的连续动画,我们可以清楚地看到每一个控制人体形态参数的连续变化,都会引起人体模型的局部甚至整体的连锁变化,为了体现人体肌肉组织的运动,SMPL人体模型的每一个参数的线性变化,都会引起大面积的网格变化。形象的讲,例如在调整β1的参数时,模型会直接把β1的参数变化理解为身体的整个变化,你可能只想调整一下腰部的比例,但是模型会强制把腿部、胸部、甚至手部的胖瘦一起帮你调整。这种工作模式虽然可以大大简化工作流程,提高效率,但是对追求建模效果的项目来说,确实非常不方便的。因为SMPL人体模型终究是一个通过西方人体照片和测量数据训练出来的符合西方人体型的模型,其形体变化的规律基本符合西方人的通常变化曲线,应用在亚洲人的人体模型建模中,则会出现很多问题,比如胳膊和腿的比例,腰身的比例,脖子的比例,腿长和胳膊长度等。通过我们的研究,这些方面都存在较大差值,如果硬性套用SMPL人体模型,在最终生成效果上不能达到我们的要求。
为此,我们采用了自制人体模型的方式完成效果的提升。其核心是自建人体blendshape基来实现人体精准的独立操控。优选的,所述三维标准人体模型(基础人台)由20个形体基的参数以及170根骨骼参数构成。所述若干个基构成整个人体模型,每个形体基分别由参数单独控制变化,互不影响。所谓精准操控,一方面是增加了控制的参数,没有沿用马普所的十个β控制参数,这样,可以调整的参数除了通常的胖瘦,还加入了手臂的长度,腿部的长度,腰部、臀部和胸部的胖瘦等,在骨骼参数方面把参数提高了一倍以上,大大丰富了可以调整参数的范围,为精细化设计标准人体模型提供了良好的基础。所谓独立操控,可以理解为每一个基都是单独进行操控的,比如腰、腿、手、头部等,每根骨骼也是可以单独进行长度的调整,互相之间独立,并且不会产生形体上的联动,这样就能比较好的进行人体模型的精细化调整。不再显得模型“傻大笨粗”,总也不能调整到设计师满意的形态。我们现有的模型,体现出来的是一种数学原理上的对应关系,实际上就相当于我们从人工审美和数据统计分析两个部分去设计这个模型,使其按照我们的设计规则去生成我们认为符合亚洲人体型的正确模型,显著区别于SMPL人体模型的大数据训练模型,所以我们的参数变换更具有可解释性,可以更好地表征人体模型局部的形体变化,并且,这种变化是基于数学原理的方式,各个参数之间没有影响,胳膊和腿之间保持了完全独立状态。实际上,设计了这么多不同的参数,就是为了可以避免大数据训练出来人体模型的缺陷,在更多维度上对人体模型进行精准控制,不局限于高度等寥寥几个指标,大幅提升建模效果。也只有在自建形体基的前提下,设置这么多独立的控制参数才有其实际意义,要达到设计师水准的要求,两者缺一不可。
至于把三维服装模型穿在标准人体模型身上,则是本领域常规的技术,本发明对此不做过多的限定,可以达到要求的效果即可。
第三部分是对获取的人体图像进行处理,获得生成人体模型所需要的参数信息。以前,这些骨骼关键点的选取通常是通过人工进行,但是这种方式效率很低,不适应互联网时代快节奏的要求,因此,在神经网络大行其道的今天,利用经过深度学习的神经网络代替人工进行关键点的选取,成为了潮流。但是,如何高效地利用神经网络则是一个需要进一步研究的问题。总体上讲,我们采用了二级神经网络加数据“精修”的思路来构建我们的参数获得体系。如图2所示,我们采用经过深度学习的神经网络来生成这些参数,主要包括以下子步骤:1)获取目标人体的二维图像;2)处理获得目标人体的二维人体轮廓图像;3)将二维人体轮廓图像代入经过深度学习的第一神经网络进行关节点的回归;4)获得目标人体的关节点图;获取人体各部分语义分割图;身体关键点;身体骨骼点;5)将生成的目标人体的关节点图、语义分割图,身体骨骼点以及关键点信息代入经过深度学习的第二神经网络进行人体姿态和体型参数的回归;6)获得输出的三维人体参数,包括三维人体动作POSE参数和三维人体体型SHAPE参数。
所述目标人体的二维图像可以为任意姿势和任意着装的包括人体像的二维图像。二维人体轮廓图像的获取利用目标检测算法,所述目标检测算法是基于卷积神经网络的目标区域快速生成网络。
在将二维人体图像输入第一神经网络模型之前,还包括训练神经网络的过程,训练样本包括标注原始关节点位置的标准二维人体图像,所述原始关节点位置由人工在二维人体图像上进行高准确度地标注。在这里,首先获取目标图像,并利用目标检测算法对目标图像进行人体检测。人体检测并不是使用测量仪器对真实人体进行检测,本发明中实际是指对于任意一幅给定的图像,通常是包含足够信息的二维照片,比如人脸,人的四肢和身体要求全部包括在图片中。然后,采用一定的策略对给定的图像进行搜索,以确定给定的图像中是否包含人体,如果给定的图像中包含人体,则给出人体的位置、大小等参数。在本实施例中,在获取目标图像中的人体关键点之前,需要对目标图像进行人体检测,以获取目标图像中标注人体位置的人体框,因为我们输入的图片可以是任何图片,所以不可避免的存在一些非人体图像的背景,比如桌子椅子、大树汽车楼房等,要通过一些成熟的算法把这些无用的背景去除。
同时,我们还要进行语义分割、关节点检测、骨骼检测和边缘检测,收集到了这些1D的点信息和2D的面信息,就可以为后面生成3D人体模型打下良好的基础。使用第一级神经网络生成人体的关节点图,可选地,目标检测算法可以为基于卷积神经网络的目标区域快速生成网络。该第一神经网络需要进行大量的数据训练,由人工对一些从网络收集来的照片进行关节点标注,然后输入神经网络进行训练,经过深度学习的神经网络,基本可以做到输入照片后就能立即获得和人工标注关节点一样准确率和效果的关节点图,同时效率是人工标注的数十倍甚至数百倍。人体关节点通常都作为人体关键点存在,人体关键点包括重要关键点,重要关键点例如包括,头顶关键点、脖颈关键点、肩部关键点、肘部关键点、手腕关键点、手部关键点、腋下关键点、腰部关键点、臀部关键点、膝盖关键点、脚踝关键点、脚趾顶部关键点和两腿中心关键点。可选的,人体关键点包括1个头顶关键点、2个脖颈关键点、2个肩部关键点、4个肘部关键点、4个手腕关键点、2个手部关键点、2个腋下关键点、2个腰部关键点、2个臀部关键点、4个膝盖关键点、4个脚踝关键点、2个脚趾顶部关键点和1个两腿中心关键点。可选的,人体关键点的个数为68个。对于人体关键点中除重要关键点之外的关键点,可根据重要关键点的位置进行确定。例如,可根据二维平面内两个重要关键点在平面距离上的平分点作为一个关键点。
本发明中,获得照片中人体的关节点位置,只是完成了第一步,获得了1D的点信息,还要根据这些1D的点信息生成2D的面信息,这些工作都可以通过神经网络模型以及现有技术中的成熟算法来完成。本发明由于重新设计了神经网络模型参与工作的流程和介入时机,合理设计了各种条件和参数,使得参数的生成工作更加高效,人工参与的程度降低,非常适合互联网应用场景,比如在虚拟换装的节目中,用户无需等待,基本上是瞬时就可以获得换装结果,对提高节目对用户的吸引力有着至关重要的作用。
在获得了相关的1D的点信息和2D的面信息后,就可以将这些参数或者结果,目标人体的关节点图、语义分割图,身体骨骼点以及关键点信息作为输入项代入经过深度学习的第二神经网络进行人体姿态和体型参数的回归。经过第二神经网络的回归计算,就可以立即输出若干组三维人体参数,包括三维人体动作POSE参数和三维人体体型SHAPE参数。优选的,根据三维标准人体模型(基础人台)、预测三维人体模型、标注原始关节点位置的标准二维人体图像以及包括预测关节点位置的标准二维人体图像设计神经网络的损失函数。
第四部分,也就是最关键的部分,是将人体模型的参数和人体模型进行拟合,同时,保证衣服跟随移动后的状态尽量真实。
如图3所示,移动过程包括以下子步骤,将获得的三维人体POSE和SHAPE参数与三维标准人体模型的若干个基和骨骼参数相对应;将获得的若干组基和骨骼参数输入标准三维人体参数模型中进行拟合;所述三维人体模型具有骨骼点和模型网格的数学权值关系,骨骼点的确定可关联确定目标人体姿态的人体模型。
在这一部分,沿用上一部分生成的这两种参数,就可以代入预先设计好的人体模型进行3D人体模型的构造。这两类参数与马普所的人体SMPL模型参数名称相似,但实际所包含的实质内容相差较大。因为两者的基础并不一样,也就是说,本发明采用自制三维标准人体模型(基础人台),每个基都是我们自己根据亚洲人的体型和身材比例设计的,包括若干个SMPL模型没有涉及到的部位,马普所的SMPL模型采用大数据训练生成的标准人体模型,两个模型的生成计算方式不同,虽然最后都体现为生成的3D人体模型,但是其内涵相差较大。在这一步骤后,就会得到一个初步的3D人体模型,包括骨骼位置和长短信息的人体模型的网格(mesh)。
在这一部分,把三维服装模型套在标准人体模型身上后,需要让标准人体模型的体型和姿态均变为和目标人体一致,同时模拟出三维服装模型跟随人体模型的变化而发生的真实变化。我们使用几个方法来保证以上目的的顺利达成。
首先,三维标准人体模型除了可以是初始T-pose外,还可以是其他预定姿态三维标准人体模型。我们会提前设计多套标准人台,囊括了我们通过统计数据处理得到若干个常见人体姿态的初始姿态基,包括A-POSE、坐姿、手部高举抬起、抬腿、手部交叉收拢胸前、手臂自然下垂、侧身等若干个常见基本姿态,姿态丰富程度远远高于单一的T-pose标准人体模型。在这种设计下,三维标准人体模型可以是除初始T-pose外的其他预定姿态三维标准人体模型,在三维人体模型移动的过程中,先计算从哪个常见姿势的初始姿态基移动到目标姿态的综合距离最短,然后选择从这个常见姿势的初始姿态基开始对标准人体模型和目标人体模型进行拟合,实现人体模型的移动,大大缩短了系统的计算时间,节约了算力,可以将标准人体模型又快又好地驱动到目标姿态,这在手机端可能成为虚拟换衣最常用终端的情况下,是非常有利的。
其次,我们在三维服装模型和人体模型生成后,加入了一个特别的蒙皮刷权重步骤,其实也可以称之为人体模型和服装模型的调整。包括三维服装模型和骨骼之间,以及人体模型皮肤网格和骨骼之间两个不同的蒙皮刷权重的处理步骤,现有技术中,通常单独使用前述两个操作中的人体模型皮肤网格和骨骼之间蒙皮刷权重的操作,但是,我们创造性地通过结合使用两种蒙皮刷权重的操作,通过这个组合操作,使得在虚拟试衣的条件下,骨骼和衣物的联动更加准确,可以让每根骨骼控制的衣物和人体皮肤网格更加精确和细致,以保证服装、人体皮肤网格和骨骼之间存在改进的精确运动匹配关系,表现在衣物上,就是还原度和真实度好,跟随运动的状态也保持的与真实世界的运动基本一致,不会出现移动一根骨骼造成大块或者其他不相关联区域的皮肤网格和衣物非正常移动的缺陷,可以使服装的跟随移动更加自然逼真。
实际操作时,在三维建模和动画软件中,选中骨架与模型,蒙皮-绑定蒙皮,绑定后模型显示为不同颜色。自动刷上去的蒙皮细节效果往往不好,我们需要另外调整。然后再打开绘制蒙皮权重工具,就可以看到各个关节和节点的信息,选中其中的一个关节后就可以显示出对应的控制区域,清楚地显示出了上下级的父子关系,上节节点会控制下节节点,这就是为什么某些关节明明没有控制某个区域去能影响该部分的运动,因为它控制的子节点对其造成了影响,而子节点的影响正是由它传过去的;可以看到关节控制的位置变成了白色。通常关节藏在皮肤网格里面不方便直接调整,于是才会使用控制器控制关节,而关节如何控制模型就是通过蒙皮实现的,也就是影响模型的网格面片,而影响的大小就是通过权重实现的,也就是每个面片受影响的程度,如果需要更真实的效果,就需要刷权重,让模型按照我们理解的真实状态改变。通常白色代表1,黑色代表0,控制得越多影响越大,权重越接近1,颜色越白。通过对人体模型网格和服装模型网格分别刷权重,可以避免自动刷权重的不自然,让人体网格和服装网格更符合其实际应该有的状态,在运动中,可以体现出更真实的跟随效果。
再次,所谓装备自适应是指,基于已适配到标准人体模型上的服装模型,给定目标姿态人体模型,即与标准人体模型姿态相同、网格结构相同,网格顶点、网格单元的数目、以及顶点与顶点之间拓扑连接关系均相同,仅高矮胖瘦等体型不同的人体模型,通过服装自适应匹配的方式,将三维服装模型适配到目标体型的人体模型上。
因为现实世界中,人的高矮胖瘦差别比较大,不同的人穿同一件衣服会呈现非常不同的穿着状态。所以,我们要想保证目标人体模型和服装模型的真实度,也要让服装模型随着真实人体体型和姿态变化而变化。在技术层面,随着人体体型参数的增减,会带动标准人体模型网格的移动,而在自适应的状态下,人体网格移动就会带动衣服模型一起移动,网格和衣服之间存在确定的绑定和联动关系。我们的方案,被驱动体都是受驱动源网格驱动,并一起运动的。
装备自适应在动画领域最基本和最开始的用途就是解决体型问题的,固定初始状态Tpose下人体模特变胖变瘦,衣服也要跟着变胖变瘦的问题。在初始状态下,服装模型贴合在标准人体模型的网格上,随着网格的膨胀或者收缩,衣服也会呈现一种跟随的趋势和状态,实际上就相当于使用自适应算法模拟了真实衣服穿在真实人体上的体型胖瘦变化,这样就可以保证换装后的真实度。
通过三维人体动作姿态参数确定目标人体的姿态,同样通过自适应的方式从初始姿态驱动人体模型网格和服装模型移动到目标姿态,使得三维人体模型与目标人体姿态基本一致,同时服装模型与目标人体姿态完成匹配。
在动画领域,使用骨骼或者关节点作为驱动的源,使用蒙皮驱动的方式是比较常见的。所谓蒙皮驱动,就是在驱动过程中建立起模型网格顶点和骨骼之间的关系,计算骨骼在目标姿态下的旋转参数之后,通过蒙皮权重的关系,使得骨骼可以带动其附近的顶点完成空间上的移动,驱动相关联的顶点到达目标姿态的位置。比如当骨骼弯曲旋转的时候,影响带动了附近绑定的网格顶点也完成空间上的移动。同样的道理,由于存在我们的自建人体模型,拥有非常多的表示人体特征的参数,可以比较精细地表达人体模型的每一个细小部分。比如在我们获得了170根骨骼所有的目标姿态(pose)的旋转参数之后,可以使用全部的蒙皮权重,把整个人体模型的网格(mesh)顶点驱动到目标姿态(pose)。蒙皮驱动的好处是速度很快,可以理解成不必要每帧都插帧计算,可以从初始状态直接把衣服模型驱动到目标姿态。但是它的缺点也很明显,没有任何物理世界模拟操作内容,所以变化的过程中十分不自然,到达目标位置后的状态与实际运动后的状态也是不同的。对于紧身的衣服模型穿模较多,对于比较宽松的三维衣服模型,可以明显看出不自然。会导致过程比较粗糙穿模现象比较严重,游戏当中使用并无太大缺陷,但是在虚拟换装领域,这种方式在真实度上和精准度上不能达到最优效果。
此外,蒙皮可以直接从初始Tpose通过蒙皮权重矩阵得到目标pose的网格位置。但是,基于装备自适应的场关系来做衣服模型驱动,无法直接通过矩阵乘法得到,因为这种场对于初始pose和目标pose跨度比较大的时候会失效。所以,装备自适应最初的用途只能用于Tpose固定状态下人体模型体型改变,衣服模型也随之改变的场合,也就是静止状态下随着人体模特的不同体型而改变衣服的高矮胖瘦。
但是,经过我们的研究,发现装备自适应模块的顶点关系场鲁棒性较高,是完全能够支持小范围动作差异的。所以,我们创造性地利用小范围动作的累积,形成大范围的动作,使用装备自适应模块来逐帧驱动衣服模型到达目标姿态。同时,基于装备自适应驱动方式的特点,避免了采用一步到位的驱动方式。我们的自适应算法,不同于蒙皮的人体网格与骨骼之间的绑定,而是通过人体网格与服装网格之间建立关系,强调场的概念。通过初始pose到目标pose之间的插帧,然后逐帧小幅度的驱动模型网格达到目标pose。通过逐帧计算网格,获得最终目标人体模型和服装模型的匹配结果。每个被驱动的模型顶点受到周围多个被驱动网格的共同作用且作用力度比较平均,驱动过程中这种方式穿模情况极少,达到了更加真实的模拟效果。
比如之前提到的宽松衣物自然下垂状态的真实模拟,对蒙皮操作来讲就会比较困难,而对于装备自适应方式,则可以非常好地解决类似问题,因为是一帧一帧的移动计算,会形成一系列微小动作的集合,不会出现大幅度的衣物模型一步到位的运动,极大地减少了衣服模型穿模的可能性。在实践中,我们已经可以做到以服装mesh为10万三角面(或者5万四边面)模型为基准、单层服装进行测试,要求效果一致。在采用服装自适应模块时,耗时在1秒之内,并且服装集模型至少90%以上不穿模。
在装备自适应的过程中,相当于在标准人体模型的网格面片生成一种场,三维服装的各个面片与标准人体模型对应位置网格面片建立一种场对应关系,当标准人体模型网格变化的时候,三维服装也可以实现与之对应的跟随变化。
所述装备自适应的过程,通过初始姿态到目标姿态之间的插帧,然后逐帧小幅度的驱动人体模型网格来实现。首先指定特定连通的网格作为驱动源,特定连通的网格作为被驱动的网格。根据权利要求8所述的方法,其特征在于,根据所述驱动源和被驱动网格的驱动关系建立一种关系场,使得在初始位置时,对于作为驱动源的人体模型网格的某一个顶点坐标用(x,y,z)表示,计算其三维空间周围最近的最大约束个数为10个的若干个被驱动模型的网格顶点,建立起一个顶点-顶点的关系矩阵,也就是顶点关系场。当人体体型发生改变时,所述人体模型的驱动源的形状发生变化,根据变化后的驱动源网格顶点,乘以顶点关系场矩阵,得到变化后的服装模型所在的新的三维空间坐标,完成装备自适应的过程。
再次,在生成的对应关系过程中,我们还会将三维服装的相对于正常状态膨胀一定尺寸,这对服装的真实感影响甚小,但是却使得三维服装模型的穿模现象大大减少。所述膨胀方式是指,三维服装的各个面片与标准人体模型对应网格位置建立一种距离对应关系,相当于在服装模型面片和人体模型网格之间留下了一个可以活动的空间,留下了一个余量,会在衣服和模型适配过程中,大大减少穿模发生的几率。当然,在具体的对应过程中,可以选择不同的参数来进行对应,比如网格顶点等。这里面会存在不是点对应点的情况,有些时候一个点可能对应一个区域或者区块,这也是一种对应关系。当人体模型发生变化的时候,三维服装也可以实现与之对应的跟随变化,比如模型在从初始姿态驱动到目标姿态的过程中,我们的服装模型同样会跟随模型一起移动。在生成的对应关系过程中,我们会将三维服装的相对于正常贴合状态膨胀一定尺寸,使得三维服装获得额外的冗余度,这对于大范围大幅度移动过后人体模型的完好度是非常有帮助的,由于肢体的动作过于剧烈,服装模型由于跟随运动不及时不准确以及移动引发的肢体碰撞,会引发很多衣服模型和肢体之间的穿模问题。这其实也是虚拟试衣领域最容易从外部被感知到的重大缺陷。针对这个问题,我们首次提出了服装模型相对于人体模型膨胀一个空间的解决办法,希望这个多出来的隔离空间,可以起到保持服装模型和人体模型贴合完整性的作用。以前,技术人员通常会追求服装模型和人体模型的紧密贴合,认为这样可以比较真实地反映衣服上身的效果,但是,实践中两者贴得越紧,出现问题的可能性就越大。我们相当于反其道而行之,从相反的思路去解决这个问题,在服装模型和人体模型之间人为加入了一个缓冲空间。这里,我们的膨胀,是以人体网格的法线方向向外平移一定的绝对空间距离,例如在人体手肘部位,沿着人体网格mesh的法线方向向外对衣服模型的顶点向外移动1厘米的单位,则手肘部位的衣服距离人体模特有更冗余的距离,在布料解算或者蒙皮驱动的过程中会有更大的冗余度,大幅减少了穿模的比例。当然,我们的膨胀其实还是遵循了一定的规则,比如,在腋下部位,沿着人体模型网格mesh的法线方向向外,对衣服模型的每个顶点向外移动1cm的单位,大概率会出现衣服之间的互相穿模,这个位置的穿模就需要依靠穿模修复的模块来修复。实践中,向外扩展的距离通常会按照一定的预设规则对每个部位设置不同的设置。比如,在胳膊,腿部四肢等位置可以适当向外多扩展一些,但是腋下,胯部外侧则一般不进行扩展。从目前实施的情况来看,防止穿模的效果非常好,同时,对于人体模型和服装模型的贴合度和美观度,并没有肉眼可见的影响。经过一定数量的试验之后,我们发现这种改进对服装的真实感影响甚小,但却使得三维服装模型的穿模现象大大减少,相当于在服装模型面片和人体模型网格之间留下了一个可以容纳不正常移动的人体模型和服装模型的空间,留下了一个余量,会在衣服和模型适配过程中,大大减少穿模发生的几率。
再次,在这一部分,把三维服装模型套在标准人体模型身上后,需要让标准人体模型的体型和姿态均变为和目标人体一致,同时模拟出三维服装模型跟随人体模型的变化而发生的真实变化。
通过三维人体动作姿态参数确定目标人体的姿态,从初始姿态驱动骨骼移动到目标姿态,使得三维人体模型与目标人体姿态基本一致。在动画领域,使用骨骼或者关节点作为驱动的源,使用蒙皮驱动的方式是比较常见的。所谓蒙皮驱动,就是在驱动过程中建立起模型网格顶点和骨骼之间的关系,计算骨骼在目标姿态下的旋转参数之后,通过蒙皮权重的关系,使得骨骼可以带动其附近的顶点完成空间上的移动,驱动相关联的顶点到达目标姿态的位置。比如当骨骼弯曲旋转的时候,影响带动了附近绑定的网格顶点也完成空间上的移动。同样的道理,由于存在我们的自建人体模型,拥有非常多的表示人体特征的参数,可以比较精细地表达人体模型的每一个细小部分。比如在我们获得了170根骨骼所有的目标pose的旋转参数之后,可以使用全部的蒙皮权重,把整个人体模型的网格(mesh)顶点驱动到目标姿态(pose)。蒙皮驱动的好处是速度很快,可以理解成不必要每帧都插帧计算,可以从初始状态直接把衣服模型驱动到目标姿态。但是它的缺点也很明显,没有任何物理世界模拟操作内容,所以变化的过程中十分不自然,到达目标位置后的状态与实际运动后的状态也是不同的。对于紧身的衣服模型穿模不明显,但是对于比较宽松的三维衣服模型,可以明显看出不自然。
针对这些问题,我们服装模型的移动采用布料模拟和蒙皮方法的结合,在服装移动后基本不发生形变的部分采用蒙皮方式,在服装移动过程中发生形变的部分采用布料模拟的方式。在这里,蒙皮的方法主要用于提高移动的处理速度,布料模拟的方法主要用于提高真实度,所谓布料模拟其实就是模拟出接近真实(当然也可以做的和现实中的物理效果不符)的布料效果,我们这里主要突出利用的是布料纹理模拟的高还原度,包括布料印花的模拟的正确度。我们的方法兼顾了质感和速度。在保证布料模拟效果超过一般模型的前提下,在某些不是特别重要和变形不是很剧烈的部位,采用了骨骼驱动蒙皮网格的方式带动模型移动,服装模型的驱动采用布料模拟和蒙皮方式的结合,在衣服移动后基本不发生形变的部分采用蒙皮方式保证解算速度,比如上半身,在衣服移动过程中发生形变的部分,比如腿部和衣服下摆部分采用布料模拟的方式保证逼真度和布料纹理质感。
从初始姿态到目标姿态的移动状态是逐帧计算的,在每一帧计算的时候,都是先完成蒙皮驱动再计算布料模拟,当前帧计算完毕之后,再计算下一帧的状态。这样其实也是形成了一个序列的插帧状态,保持了一帧一帧移动一帧一帧计算带来的高真实性。布料模拟使用碰撞体系统,将人体模特的顶点网格建模为刚体,将衣服模型的网格建模为非刚体,使用物理引擎模拟刚体与非刚体之间的碰撞关系,在布料模拟的过程中计算刚体和非刚体之间的碰撞,同时考虑服装模型自身网格之间的连接作用力,逐帧计算衣服模型的网格状态,模拟出物理世界中的碰撞运动过程,这样逐帧模拟的方式,可以最大程度的保持服装模型移动的真实状态,虽然模拟速度有所降低,但在设备计算能力增强的背景下,也维持了比较好的平衡。
再次,本发明的驱动方法,还有一个重要特性,驱动人体模型的姿态达到目标姿态时,需要对服装的布料进行若干帧重力解算,根据神经网络预测模型判断动作变化的连续性,分析目标姿态是抓拍或者静止摆拍,如果是抓拍,则服装模型会由于惯性保持运动过程中的速度使得目标姿态状态是一个非稳态,在人体模型达到目标姿态时减少重力解算的次数;如果是摆拍,在人体模型达到目标姿态时增加重力解算的次数,以保证服装布料在目标姿态下的逼真度。尤其是在移动结束时,对衣物进行几帧布料解算,时间上与变速插帧驱动完美配合,这个过程本来就是存在的,本来是为了得到稳定的模型状态,同时应用在服装模型上,采用并行的方法,时间上基本没有损失,比较完整的重现了衣物的最终纹理状态,真实性得到了提升。布料模拟过程中,在人体模型达到目标姿态时,使用神经网络判断输入图片的静止或者运动状态,针对不同情况,对服装的布料进行若干帧重力解算,模拟出真实运动状态下衣服的最终状态,以保证服装布料在目标姿态下呈现与照片运动形态相一致的运动趋势,达到很好的逼真度和质感。
最后,在这一部分,人体模型还要完成从初始姿态向目标姿态的变化。因为我们输入的只是一张照片,照片上的目标人体姿态通常是和基础人台是不一样的,这时,为了能拟合出目标人体的姿态,就要完成从初始姿态到目标姿态的变化。为了更加逼真地模拟在拟合步骤中,若干组基和骨骼参数在标准三维人体参数模型中进行拟合时,还包括以下步骤,
1)获得初始姿态和目标姿态的位置坐标;初始姿态参数的获得由标准人台模型的初始化参数确定,目标姿态的骨骼信息由神经网络模型回归预测得到。
2)生成从初始姿态移动到目标姿态的动画序列;有了骨骼信息的初始状态以及目标姿态状态参数之后,通过线性插值,最近邻插值等插帧方式,形成初始姿态到目标姿态的骨骼信息时间序列。在驱动过程中按照每帧驱动的骨骼数,可分为全局线性插值及先驱动父节点再驱动子节点等两种方式,考虑到模拟物理世界中的驱动状态,本专利采用后者,先驱动父骨骼节点,再驱动子骨骼节点的方式,这样插值出来的动画序列动作更加贴合真实物理世界,仿真出来的效果更佳。
3)生成动画序列的过程中,采用网格mesh插帧的方式进行处理;即每一帧驱动骨骼运动之后,都通过标准人台的权重参数计算得到当前状态的人体模型顶点即面信息,更新当前的人体模型mesh状态并记录保存。
4)插帧速度的设置为前后距离初始点和目标点的位置慢,中间运动过程中快;本专利采用非匀速的插帧速率,即初始动作和结束动作过程中单帧移动幅度较小,移动中间过程移动幅度大的方式。模拟真实世界中物理动作的起始状态具有一定的加速过程,而运动过程中则保持较高的帧间位移距离,至运动末尾则降低驱动速度。
5)在驱动至最终目标姿态时静止数帧,得到整个动画序列。这样的做法比起匀速插帧更贴近真实物理世界运动规律,仿真出来的效果更佳。
6)完成从初始姿态驱动骨骼移动到目标姿态。
由于我们已经获得了骨骼的数据和网格mesh的信息和数据,这种情况下骨骼的驱动就会变的容易一些,可以采用LBS算法,DQS算法,碰撞体也是要考虑的,因为标准人台的模型是三维标准姿态下的,从初始姿态到目标姿态的变化,有可能导致人体模型的网格mesh之间出现不合理的穿插,只有结合碰撞体才能保证网格之间不出现互穿的缺陷。
此外,本发明还包括对获得的人体模型进行精修的步骤,包括以下子步骤,获得与目标人体姿态和体型相同的三维人体模型;获得精确贴合目标人体二维图像的最终三维目标人体模型网格。
在这一部分中,我们得到了拟合完成的三维人体模型,如果目标人体姿态复杂,通过多次拟合的方式完成准确拟合。但是这种拟合,是分多个层级完成的,并不是一个平均值的概念,而是采用了多级迭代的方式,第一级先迅速把骨骼驱动到目标姿态的附近,保证速度上的高效率,第二级再根据算法进行精细化调整。这样可以保证拟合的速度和最终的建模质量之间的平衡。
本发明的虚拟试衣方法,通过预先的深度学习和模拟运动设置,可以大大降低三维人体模型生成时的计算量和复杂程度,并且可以达到远远超过现有2D图片生成人体模型真实度的效果,同时,通过装备自适应的方法把预先制作好的三维服装模型自然真实地穿在目标人体模型上,很好地模拟了服装穿在人体上的形象。
结合图1至图3描述的根据本发明实施例的生成三维人体模型的方法可以由处理人体图像设备来实现。图4是示出根据发明实施例的处理人体图像的设备的硬件结构300示意图。
本发明还公开了一种虚拟试衣系统,包括:1)三维服装模型制作模块;2)三维标准人体模型制作模块;3)三维目标人体模型生成模块;4)三维服装和三维目标人体模型的匹配模块;
进一步的,所述三维服装制作模块包括,1)服装二维图像获取模块;2)结合数学模型的三维标准人体模型构造模块;3)根据服装的二维图像制作服装三维模型的服装制作模块;4)将三维服装模型贴合到三维标准人体模型身上的服装贴合模块;5)进行服装三维模型检查的检查模块。
进一步的,所述三维服装和三维目标人体模型的匹配模块包括:1)装备自适应模块,用于根据已适配到标准人体模型上的服装模型和给定目标姿态的人体模型,通过服装自适应匹配的方式,将三维服装模型适配到目标体型的人体模型上;2)人体模型拟合模块,用于将获得的若干组POSE基和体型SHAPE三维人体参数输入三维标准人体模型中进行拟合,利用骨骼驱动人体模型完成从初始姿态向目标姿态的变化;3)布料模拟模块,用于对布料进行处理,以使得衣物在跟随骨骼运动到目标姿态后,保持真实性和还原度。
进一步的,所述三维目标人体模型生成模块包括:1)二维人体图像获取模块;2)关节点图获得模块;3)语义分割图获得模块;4)人体姿态和体型参数的回归模块;5)标准三维人体参数模型拟合模块;6)三维人体模型数据处理和精修模块;7)目标人体模型网格输出模块。
以及一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现前面所述的虚拟换衣方法和步骤。
以及一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现前面所述的虚拟换衣方法和步骤。
如图4所示,本实施例中的实现虚拟试衣的设备300包括:处理器301、存储器302、通信接口303和总线310,其中,处理器301、存储器302、通信接口303通过总线310连接并完成相互间的通信。
具体地,上述处理器301可以包括中央处理器(CPU),或者特定集成电路(ASIC),或者可以被配置成实施本发明实施例的一个或多个集成电路。
存储器302可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器302可包括HDD、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器302可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器302可在处理人体图像设备300的内部或外部。在特定实施例中,存储器302是非易失性固态存储器。在特定实施例中,存储器302包括只读存储器(ROM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可改写ROM(EAROM)或闪存或者两个或更多个以上这些的组合。
通信接口303,主要用于实现本发明实施例中各模块、装置、单元和/或设备之间的通信。
总线310包括硬件、软件或两者,将处理人体图像的设备300的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线310可包括一个或多个总线。尽管本发明实施例描述和示出了特定的总线,但本发明考虑任何合适的总线或互连。
也就是说,图4所示的处理人体图像的设备300可以被实现为包括:处理器301、存储器302、通信接口303和总线310。处理器301、存储器302和通信接口303通过总线310连接并完成相互间的通信。存储器302用于存储程序代码;处理器301通过读取存储器302中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行本发明任一实施例中的虚拟试衣方法,从而实现结合图1至图3描述的虚拟试衣的方法和装置。
本发明实施例还提供一种计算机存储介质,该计算机存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现本发明实施例提供的处理人体图像的方法。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
以上所述,仅为本发明的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。

Claims (14)

1.一种虚拟试衣方法,所述方法包括:
1)获取服装的二维图像;
2)根据服装的二维图像制作服装的三维模型;
3)结合数学模型构造三维标准人体模型,所述三维标准模型处于初始姿态;
4)将三维服装模型贴合到初始姿态的三维标准人体模型,即标准基础人台身上;
5)获取目标人体的二维图像;
6)通过神经网络模型的计算获得三维目标人体模型参数;
7)将获得的若干组姿态和体型三维人体参数输入三维标准人体模型中进行拟合;
8)获得与目标人体姿态和体型相同,并且穿着换装后服装的目标人体模型。
2.根据权利要求1所述的方法,其特征在于,三维标准人体模型可以是除初始T-pose外的其他预定姿态三维标准人体模型;预先设计若干个常见姿势的初始姿态基,在三维人体模型移动的过程中,先计算从哪个常见姿势移动到目标姿态的距离最短,然后选择从这个常见姿势的初始姿态基开始拟合,以提高处理的速度。
3.根据权利要求1所述的方法,其特征在于,所述三维标准人体模型由若干个形体基的参数以及若干根骨骼参数构成,所述若干个基构成整个人体模型,每个形体基分别由参数单独控制变化,互不影响;所述三维人体模型具有骨骼点和人体网格的数学权值关系,骨骼点的确定可关联确定目标人体姿态的人体模型。
4.根据权利要求1所述的方法,其特征在于,还包括三维服装模型和骨骼之间,以及人体模型皮肤网格和骨骼之间两个不同的蒙皮刷权重的处理步骤,以保证服装、人体皮肤网格和骨骼之间存在改进的运动匹配关系。
5.根据权利要求1所述的方法,其特征在于,所述获得三维目标人体模型参数的步骤还包括,将二维人体轮廓图像代入经过深度学习的第一神经网络进行关节点的回归,获得目标人体的关节点图,语义分割图,身体骨骼点以及关键点信息;以及将生成的上述人体信息代入经过深度学习的第二神经网络进行人体姿态和体型参数的回归,获得三维人体参数,包括三维人体动作姿态参数和三维人体体型参数。
6.根据权利要求1所述的方法,其特征在于,所述拟合步骤中,通过三维人体体型参数使得三维人体模型与目标人体体型基本一致;与三维标准人体模型贴合的服装三维模型,通过装备自适应的方式匹配到三维人体模型上;通过三维人体动作姿态参数确定目标人体的姿态,从初始姿态驱动骨骼移动到目标姿态,使得三维人体模型与目标人体姿态基本一致。
7.根据权利要求6所述的方法,其特征在于,在装备自适应的过程中,对标准人体模型的网格面片生成一种场,三维服装的各个面片与标准人体模型对应位置建立一种场对应关系,当标准人体模型体型变化的时候,三维服装模型也可以实现与之对应的跟随变化。
8.根据权利要求1所述的方法,其特征在于,在模型穿着服装的过程中,将三维服装模型的相对于标准人体模型网格的正常贴合状态膨胀一定尺寸,使得三维服装模型的穿模现象减少。
9.根据权利要求1所述的方法,其特征在于,所述拟合驱动步骤还包括以下子步骤,
1)获得初始姿态和目标姿态的位置坐标;
2)生成从初始姿态移动到目标姿态的动画序列;
3)生成动画序列的过程中,采用网格插帧的方式进行处理;
4)插帧速度的设置为前后距离初始点和目标点的位置慢,中间运动过程快;
5)在驱动至最终目标姿态时静止数帧,得到整个动画序列;
6)完成从初始姿态驱动骨骼移动到目标姿态。
10.根据权利要求1所述的方法,其特征在于,在三维人体模型移动的过程中,对所穿着的衣服进行布料模拟计算,布料模拟采用布料模拟和蒙皮方法的结合,在衣服移动后基本不发生形变的部分采用蒙皮方式,在衣服移动过程中发生形变的部分采用布料模拟的方式,所述布料模拟过程中,在人体模型达到目标姿态时,对服装的布料进行若干帧重力解算,以保证服装布料在目标姿态下的逼真度。
11.一种虚拟试衣系统,包括:1)三维服装模型制作模块;2)三维标准人体模型制作模块;3)三维目标人体模型生成模块;4)三维服装和三维目标人体模型的匹配模块;其中,所述三维服装制作模块包括,1)服装二维图像获取模块;2)结合数学模型的三维标准人体模型构造模块;3)根据服装的二维图像制作服装三维模型的服装制作模块;4)将三维服装模型贴合到三维标准人体模型身上的服装贴合模块;5)进行服装三维模型检查的检查模块。
12.根据权利要求11所述的系统,其特征在于,所述三维服装和三维目标人体模型的匹配模块包括:1)装备自适应模块,用于根据已适配到标准人体模型上的服装模型和给定目标姿态的人体模型,通过服装自适应匹配的方式,将三维服装模型适配到目标体型的人体模型上;2)人体模型拟合模块,用于将获得的若干组POSE基和体型SHAPE三维人体参数输入三维标准人体模型中进行拟合,利用骨骼驱动人体模型完成从初始姿态向目标姿态的变化;3)布料模拟模块,用于对布料进行处理,以使得衣物在跟随骨骼运动到目标姿态后,保持真实性和还原度。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-10任一所述的方法步骤。
14.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现权利要求1-10任一所述的方法步骤。
CN202010876005.6A 2020-08-27 2020-08-27 一种虚拟试衣方法、系统、设备和存储介质 Pending CN114119905A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010876005.6A CN114119905A (zh) 2020-08-27 2020-08-27 一种虚拟试衣方法、系统、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010876005.6A CN114119905A (zh) 2020-08-27 2020-08-27 一种虚拟试衣方法、系统、设备和存储介质

Publications (1)

Publication Number Publication Date
CN114119905A true CN114119905A (zh) 2022-03-01

Family

ID=80374320

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010876005.6A Pending CN114119905A (zh) 2020-08-27 2020-08-27 一种虚拟试衣方法、系统、设备和存储介质

Country Status (1)

Country Link
CN (1) CN114119905A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114445271A (zh) * 2022-04-01 2022-05-06 杭州华鲤智能科技有限公司 一种生成虚拟试穿3d图像的方法
CN114851565A (zh) * 2022-04-12 2022-08-05 深圳市广德教育科技股份有限公司 一种使用3d打印技术制造试衣模特的方法
CN115311060A (zh) * 2022-09-21 2022-11-08 武汉盛爱源科技有限公司 基于3d场景建模下的智能产品推荐方法及装置
CN115358828A (zh) * 2022-10-14 2022-11-18 阿里巴巴(中国)有限公司 基于虚拟试穿的信息处理与交互方法、装置、设备及介质
CN115661354A (zh) * 2022-11-07 2023-01-31 深圳市十二篮服饰有限公司 一种3d智能试衣模型系统
CN116012499A (zh) * 2022-10-20 2023-04-25 武汉两点十分文化传播有限公司 一种快速生成maya三维角色动画的方法及系统
CN117422896A (zh) * 2023-12-18 2024-01-19 高密市真又美服装有限公司 服装工艺模板智能化设计方法及系统

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114445271A (zh) * 2022-04-01 2022-05-06 杭州华鲤智能科技有限公司 一种生成虚拟试穿3d图像的方法
CN114445271B (zh) * 2022-04-01 2022-06-28 杭州华鲤智能科技有限公司 一种生成虚拟试穿3d图像的方法
CN114851565A (zh) * 2022-04-12 2022-08-05 深圳市广德教育科技股份有限公司 一种使用3d打印技术制造试衣模特的方法
CN114851565B (zh) * 2022-04-12 2024-03-29 深圳市广德教育科技股份有限公司 一种使用3d打印技术制造试衣模特的方法
CN115311060A (zh) * 2022-09-21 2022-11-08 武汉盛爱源科技有限公司 基于3d场景建模下的智能产品推荐方法及装置
CN115358828A (zh) * 2022-10-14 2022-11-18 阿里巴巴(中国)有限公司 基于虚拟试穿的信息处理与交互方法、装置、设备及介质
CN116012499A (zh) * 2022-10-20 2023-04-25 武汉两点十分文化传播有限公司 一种快速生成maya三维角色动画的方法及系统
CN116012499B (zh) * 2022-10-20 2023-11-03 武汉两点十分文化传播有限公司 一种快速生成maya三维角色动画的方法及系统
CN115661354A (zh) * 2022-11-07 2023-01-31 深圳市十二篮服饰有限公司 一种3d智能试衣模型系统
CN117422896A (zh) * 2023-12-18 2024-01-19 高密市真又美服装有限公司 服装工艺模板智能化设计方法及系统
CN117422896B (zh) * 2023-12-18 2024-03-22 高密市真又美服装有限公司 服装工艺模板智能化设计方法及系统

Similar Documents

Publication Publication Date Title
CN114119905A (zh) 一种虚拟试衣方法、系统、设备和存储介质
CN114119908A (zh) 一种服装模型驱动方法、设备和存储介质
CN114202629A (zh) 一种人体模型的建立方法、系统、设备和存储介质
CN114119910A (zh) 一种服装模型匹配人体模型的方法、设备和存储介质
CN114758213A (zh) 一种服装模型的布料解算方法、设备和存储介质
US10134181B2 (en) System and method for simulating realistic clothing
CN114119907A (zh) 一种人体模型的拟合方法、设备和存储介质
CN114119906A (zh) 一种服装模型自适应驱动方法、设备和存储介质
EP2686834B1 (en) Improved virtual try on simulation service
US20100156935A1 (en) Method and apparatus for deforming shape of three dimensional human body model
Zhu et al. An efficient human model customization method based on orthogonal-view monocular photos
CN114119911A (zh) 一种人体模型神经网络训练方法、设备和存储介质
CN107924579A (zh) 生成个性化3d头部模型或3d身体模型的方法
CN104123753A (zh) 基于服装图片的三维虚拟试衣方法
CN105354876A (zh) 一种基于移动终端的实时立体试衣方法
US20210089691A1 (en) Method, system and computer-readable storage medium for simulating clothing comfort and method for manufacturing clothing
CN107590708A (zh) 一种生成用户特定体形模型的方法和装置
CN112950769A (zh) 三维人体重建方法、装置、设备及存储介质
CN114202630A (zh) 一种光照匹配的虚拟试衣方法、设备和存储介质
CN114693570A (zh) 一种人体模型图像的融合处理方法、设备和存储介质
Zheng et al. Image-based clothes changing system
WO2014107520A1 (en) Footwear digitization system and method
CN114119913A (zh) 一种人体模型的驱动方法、设备和存储介质
CN114119912A (zh) 一种人体模型的快速拟合方法、设备和存储介质
CN108846892A (zh) 人体模型的确定方法及装置

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