CN114119906A - 一种服装模型自适应驱动方法、设备和存储介质 - Google Patents
一种服装模型自适应驱动方法、设备和存储介质 Download PDFInfo
- Publication number
- CN114119906A CN114119906A CN202010876585.9A CN202010876585A CN114119906A CN 114119906 A CN114119906 A CN 114119906A CN 202010876585 A CN202010876585 A CN 202010876585A CN 114119906 A CN114119906 A CN 114119906A
- Authority
- CN
- China
- Prior art keywords
- human body
- model
- dimensional
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 168
- 230000008569 process Effects 0.000 claims description 50
- 230000008859 change Effects 0.000 claims description 40
- 238000013528 artificial neural network Methods 0.000 claims description 30
- 238000004891 communication Methods 0.000 claims description 22
- 230000009471 action Effects 0.000 claims description 19
- 238000004364 calculation method Methods 0.000 claims description 16
- 238000013135 deep learning Methods 0.000 claims description 12
- 238000003062 neural network model Methods 0.000 claims description 12
- 239000011159 matrix material Substances 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 9
- 230000003044 adaptive effect Effects 0.000 claims description 8
- 230000037237 body shape Effects 0.000 claims description 8
- 230000011218 segmentation Effects 0.000 claims description 8
- 230000006978 adaptation Effects 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 31
- 238000012545 processing Methods 0.000 abstract description 28
- 238000004088 simulation Methods 0.000 abstract description 17
- 238000004422 calculation algorithm Methods 0.000 abstract description 15
- 230000009467 reduction Effects 0.000 abstract description 2
- 230000036544 posture Effects 0.000 description 76
- 230000033001 locomotion Effects 0.000 description 27
- 210000000988 bone and bone Anatomy 0.000 description 25
- 238000012549 training Methods 0.000 description 20
- 238000005516 engineering process Methods 0.000 description 18
- 238000001514 detection method Methods 0.000 description 13
- 238000013461 design Methods 0.000 description 9
- 210000002414 leg Anatomy 0.000 description 9
- 238000005259 measurement Methods 0.000 description 9
- 238000009958 sewing Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 239000004744 fabric Substances 0.000 description 7
- 230000007547 defect Effects 0.000 description 6
- 230000002829 reductive effect Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000000149 penetrating effect Effects 0.000 description 5
- 210000000689 upper leg Anatomy 0.000 description 5
- 238000009825 accumulation Methods 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 239000000463 material Substances 0.000 description 4
- 210000003205 muscle Anatomy 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000008602 contraction Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000013178 mathematical model Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000035515 penetration Effects 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 210000003414 extremity Anatomy 0.000 description 2
- 235000004213 low-fat Nutrition 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 241000742899 Myrsine australis Species 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000004323 axial length Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001680 brushing effect Effects 0.000 description 1
- 210000001217 buttock Anatomy 0.000 description 1
- 244000309466 calf Species 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 231100000289 photo-effect Toxicity 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 238000005498 polishing Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000007665 sagging Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 230000036548 skin texture Effects 0.000 description 1
- 230000005477 standard model Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0641—Shopping interfaces
- G06Q30/0643—Graphical representation of items or shoppers
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种服装模型自适应驱动方法,包括:制作服装的三维模型;构造三维标准人体模型;将三维服装模型贴合到初始姿态的三维标准人体模型;获取三维目标人体模型的姿态参数;将获得的若干组姿态参数输入三维标准人体模型中进行拟合;通过装备自适应的方式驱动人体模型从初始姿态向目标姿态移动;获得与目标人体姿态相同,并且穿着服装的目标人体模型。本发明通过装备自适应算法的创新应用,在衣服模型和人体模型的匹配中既保持了三维服装模型真实度和还原度,又保证了一定的处理速度,最重要的是基本保证不穿模,获得了很好的模拟换装效果。
Description
技术领域
本发明属于用户虚拟换装和试衣领域,具体涉及虚拟换装中使用的人体建模,衣服建模,以及衣服模型与人体模型的贴合,尤其是穿着在自定义人体模型上的三维衣服模型的自适应驱动方法、设备和存储介质。
背景技术
随着互联网技术的发展,网上购物方式越来越普及。相比于实体店购物,网上在线购物具有商品种类多、购物方便等优势。但是,在网上购买商品,也存在一些不易解决的问题,最主要的就是无法实地查看要买的商品。在所有的商品种类中,服装商品这个问题最为突出。相比于实体店购物中可以实时地换装查看服装效果,在线服装购物无法提供针对消费者本身的效果图,只能提供模特试衣的图片,有的甚至根本没有试衣图片,消费者无法实时直观地获取服装和自身体型形象的匹配程度。造成了大量的退换货。
针对这一问题,经营者尝试利用虚拟试衣技术为消费者提供模拟试衣效果解决这一问题。当然,现实中还存在其他可以使用虚拟换衣试衣技术的场合,比如网络游戏中。因此,这一技术得到了较快的发展。
虚拟试衣是指用户不用实际换上想要观看穿着效果的衣服,也能在终端屏幕上实时查看“换装”效果的一种技术应用。现有的换装技术应用主要包括平面试衣和三维虚拟试衣技术。前者基本上是采集用户的图片,采集衣服的图片,然后对衣物进行拉伸或者压缩成与人体大小相同的状态,再进行裁剪和拼接,形成“穿衣”后的图像,但这类图像由于简单粗暴的图像处理方式而造成真实度较差,完全没有考虑到用户的实际体型,只是把服装生搬硬套到用户照片上,不能满足用户的需求。后者通常通过三维采集设备采集人的三维信息并结合服装的特征进行合成,或者通过手动输入用户提供的身体数据信息,并按照一定的规则生成一个虚拟的人体三维模型mesh,然后与服装贴图进行结合。整体上来说,这类三维虚拟试衣需要进行大量的数据采集或者三维数据计算,硬件成本高,在普通用户中不易推广。
随着云计算技术、人工智能技术和智能终端处理能力的发展,产生了二维虚拟试衣技术。此类技术主要包括三个步骤:(1)对用户提供的个人身体信息进行处理,得到目标人体模型;(2)对服装信息进行处理得到服装模型;(3)将人体模型和服装模型融合在一起,生成人穿着该服装的模拟图。
对于第(1)点,由于流程设计、模型参数选择、神经网络的训练方法等诸多不确定因素的累积,最终生成的换衣图片质量并不如传统的三维虚拟试衣技术,这其中,人体模型的建立因为是其基础步骤,并且后面的穿衣过程也必须以前面生成的人体模型为基础,所以,一旦人体模型生成的不准确,容易产生人体模型与试衣者体型差距过大、皮肤纹理丢失、身体部位丢失等问题,影响最终的生成的换衣图片效果。
在图像处理领域,三维重建是指对三维物体建立适合计算机表示和处理的数学模型,是在计算机环境下对其进行处理、操作和分析其性质的基础,也是在计算机中建立表达客观世界的虚拟现实的关键技术,广泛应用于计算机动画、虚拟现实、工业检测等领域。
在一般的计算机视觉领域中,人体建模的初始起点有很多种,通常包括使用3D扫描设备对真实人体进行全方位扫描,基于多视角景深照相的三维重建方法,以及给定图像结合人体模型的方法实现三维重建这三大类。其中,使用3D扫描设备对真实人体进行全方位扫描获得信息最多最准确,但是这类设备通常比较昂贵,并且需要人体模特的高度配合,整个处理过程对处理的设备的要求非常高,所以一般都应用于一些专业领域;其次,多视角三维重建方法需要提供被重建人体多个视角相互重叠的图像并建立图像间的空间转换关系,使用多组摄像头,以拍摄多张的方式,拼合出一个3D模型,操作相对简化了一些,但是计算复杂度仍然较大,并且多数情况下,只有现场参与的人才能获得多角度的图片。深度摄像头多角度拍照方法拿到的贴图然后拼合得到的模型,没有身体尺度数据,不能为3D感知提供基础。再次,单张图像结合人体模型的方法只需要提供一张图像,基于神经网络的三维人体特征曲线智能生成方法,通过神经网络训练,获得可以用来描述人体颈部、胸部、腰部以及臀部等部位曲线的权值和阂值,然后根据人体截面的围长、宽度、厚度等的尺寸参数信息,就能直接生成与真实人体体型吻合的人体三维曲线就可以获得预测的人体模型。但这种方法由于输入信息量较少,而求解过程仍然需要消耗较多的计算量,导致最终的模型效果不能令人满意。
对于第(2)点,在生成三维服装模型的现有技术中,存在几种不同的方法。目前,比较传统的服装三维模型建立方式是基于二维衣服裁片的设计与缝合方法。这种方法需要一定的服装专业知识来对样板进行设计,这并非是所有的虚拟试衣的用户所具备的素质,同时这种方法也需要人工指定样板间的缝合关系,这将消耗大量的时间来进行设定。除此之外,另一种较为新颖的三维建模方法是基于手绘的,可以通过用户手绘的线条信息生成简单的服装模型。但是,这种方法需要专业的人员来进行手绘,并且可复制性和可重复性较差,需要耗费用户大量时间去进行服装的细节绘画,难以大规模推广至电子商务中。这两种方法都更倾向于创新设计新的服装,而不是对已有待售的服装进行三维建模。还有一种是在获取服装图片信息的基础之上,综合使用图像处理技术与图形仿真技术,最终生成虚拟三维服装模型。在图片中通过轮廓检测与分类获取服装轮廓与尺码,通过机器学习的方法从轮廓中找出的边与边的关键点,通过关键点对应关系生成缝合信息,最后在三维空间中对服装进行物理缝合的仿真,获取服装穿着在人体上的真实效果。
对于第(3)点,当前市场上常见的虚拟试衣间主要专注于款式搭配,没有直观模拟出虚拟角色与衣服布料碰撞的自然属性,因而在真实感方面仍然存在很大的欠缺。目前,越来越多的厂家通过利用虚拟角色形象地表现用户姿态,并实时模拟衣服布料与人体之间的碰撞响应及实时渲染来增加虚拟世界和现实世界的粘合度,给虚拟试衣用户带来了更多的换装乐趣,也让更多人享受到购买服装时所带来的便利。
综上,基于互联网技术和其所处的网络环境特点,从单张人体图像直接输出最终换装后图像或者照片的方式无疑是最优选的,其便捷性是最好的,用户无需亲临现场,只需一张照片,即可完成整个虚拟换衣过程。那么随之而来的问题就是,只要能保证其获得的结果照片效果基本和真实3D模拟换衣相当,就会成为主流。这其中,如何通过一张照片而获得最接近人体真实状态的人体模型,以及如何把三维服装模型以最接近真实的状态穿到目标人体模型身上,就成为虚拟换衣方法中两个最重要的不可回避的问题。
针对第一点。现有技术中,构造人体模型的方法通常有几类:(1)基于回归的方法,通过卷积神经网络重建出体素表示的人体模型,算法首先根据输入图片估计人体主要关节点的位置,然后根据关键点位置估计出给定指定大小体素网格中,根据其内部每个单元体素是否被占用,从而用内部占用体素的整个形状来描述重建出的人体形状;(2)基于单张图片的人体重建,该方法同时估计出人体三维形状和姿态,该方法首先在图像上对简单的人体骨骼关键点进行了粗略的标注,然后根据这些粗关键点进行人体模型的初始匹配和拟合,得到人体大致形状。(3)用23个骨骼节点来表示人体骨架,然后用每个骨骼节点的旋转来表示整个人体的姿态,同时,用6890个顶点位置来表达人体形状,在拟合过程中,给定骨骼节点位置,同时拟合出形状和姿态的参数,从而进行三维人体重建;或者先用CNN模型来预测图像上的关键点,然后采用SMPL模型进行拟合,得到初始的人体模型。接着,用拟合得到的形状参数来回归一个人体关节包围盒,每个关节对应一个包围盒,用轴长和半径来表示其包围盒。最后,结合初始模型和回归得到的包围盒从而得到三维人体重建。以上方法存在建模速度较慢,其建模精度不够,并且重建效果强依赖所创建的身体和姿态数据库的问题。
现有技术一公开了一种基于体测数据的人体建模方法,如图1所示,所述方法包括:获取体测数据;根据所述体测数据,通过预先训练好的预测模型对预先创建的人体模型进行线性回归,拟合得到预测人体模型,所述预先创建的人体模型包括预先定义的多组标记特征点以及对应的标准形状基,所述体测数据包括与每组标记特征点对应的测量数据;根据所述预测人体模型,得到目标人体模型,所述目标人体模型包括测量数据、目标形状基以及目标形状系数。但是这种方法,对体测数据要求非常高,包括体长数据与围长数据,比如身高、臂长、肩宽、腿长、小腿长、大腿长、脚板长,头围、胸围、腰围、大腿围等,不仅测量还要计算。确实节约了计算量,但是用户体验却非常不好,程序很繁琐。并且在人体模型的训练上,参考了SMPL模型的训练方式。
SMPL模型是一种参数化人体模型,是马普所提出的一种人体建模方法,该方法可以进行任意的人体建模和动画驱动。这种方法与传统的LBS的最大的不同在于其提出的人体姿态影像体表形貌的方法,这种方法可以模拟人的肌肉在肢体运动过程中的凸起和凹陷。因此可以避免人体在运动过程中的表面失真,可以精准的刻画人的肌肉拉伸以及收缩运动的形貌。该方法中β和θ是其中的输入参数,其中β代表是个人体高矮胖瘦、头身比等比例的10个参数,θ是代表人体整体运动位姿和24个关节相对角度的75个参数。但是这种模型生成方式,核心是训练数据的大量积累,获得体型和形状基之间的关系,但是,这种关系由于互相之间具有极强的关联性,每个形状基之间无法做到独立控制,不容易进行解耦合操作,比如,胳膊和腿之间也存在一定关联关系,胳膊动的时候腿理论上也会跟着运动,很难在SMPL模型上实现针对不同特点体型的改进。
现有技术二公开了一种三维人体模型的生成方法,包括:获取二维人体图像;将所述二维人体图像输入至三维人体参数模型中,得到与所述二维人体图像对应的三维人体参数;将所述训练样本输入神经网络中进行训练,得到三维人体参数模型,包括:将所述训练样本中的所述标准二维人体图像输入至所述神经网络中,得到与所述标准二维人体图像对应的预测三维人体参数;根据所述预测三维人体参数调整三维柔性可变形模型,得到预测三维人体模型;根据所述预测三维人体模型中关节点位置通过反向映射得到所述标准二维人体图像中预测关节点位置。这种建模方式,利用模型判断和最后经神经网络输出的参数仅仅只有关节点参数,然后利用了SMPL模型的成熟体型对其进行与目标人体姿态一致的细节调整,虽然计算量减少,但是由于输入参数较少,并且只能在SMPL预测模型的基础上完成调整,很难输出特别理想的与目标人体姿态高度一致的人体模型。
针对第二点。现有技术中存在这样的虚拟试衣方案,包括:获取着装的参考人体模型以及未着装的目标人体模型;为所述参考人体模型和所述目标人体模型分别嵌入相同层次结构的骨架;对所述参考人体模型和所述目标人体模型的骨架进行皮肤绑定;计算所述目标人体模型骨架中骨头的旋转量,递归调整所述目标人体模型骨架中的所有骨头,使所述目标人体模型骨架与所述参考人体模型骨架的姿势保持一致;根据所述目标人体模型骨架中骨头的旋转量,利用LBS蒙皮算法进行所述目标人体模型的皮肤变形;在对所述目标人体模型进行皮肤变形的基础上,将服装模型从所述参考人体模型上迁移到所述目标人体模型上。该发明在目标人体模型和参考人体模型姿势调整一致后,可以降低服装模型从参考人体向目标人体迁移的难度,将低效的非刚性配准问题转换为高效的刚性配准问题,从而实现了将服装模型从所述参考人体模型上迁移到所述目标人体模型。解决了在保持衣服在试穿前后尺寸不变的情况下,完成衣服在不同人体、不同姿势下的自动化试穿的技术问题。但是,这种纯粹的蒙皮方法,过于注重衣服和皮肤之间的固定间距,在拟合速度上占据优势,但是在服装匹配度和真实度上存在较大劣势,只适合一些需要快速简单处理衣物跟随皮肤网格移动的场合。
针对第三点。现有技术三公开了一种虚拟试衣方法,该方法包括:获取着装的参考人体模型以及未着装的目标人体模型;为所述参考人体模型和所述目标人体模型分别嵌入相同层次结构的骨架;对所述参考人体模型和所述目标人体模型的骨架进行皮肤绑定;计算所述目标人体模型骨架中骨头的旋转量,递归调整所述目标人体模型骨架中的所有骨头,使所述目标人体模型骨架与所述参考人体模型骨架的姿势保持一致;根据所述目标人体模型骨架中骨头的旋转量,利用LBS蒙皮算法进行所述目标人体模型的皮肤变形;在对所述目标人体模型进行皮肤变形的基础上,将服装模型从所述参考人体模型上迁移到所述目标人体模型上;其中,所述将服装模型从所述参考人体模型上迁移到所述目标人体模型上,具体包括:利用迭代最近点算法,对所述皮肤变形后的目标人体模型与参考人体模型进行刚性配准,得到仿射变换;将所述仿射变换作用于所述服装模型,从而实现将所述服装模型从所述参考人体模型上迁移到所述目标人体模型上。该方法对蒙皮驱动的具体实现方式进行改进,但实际上还是没有脱离依靠骨骼蒙皮完成移动的思路,实际的衣物模拟效果没有本质提升,并且容易出现穿模的缺陷。
现有技术四公开了一种三维服装自适应着装方法:步骤1:将三维虚拟服装生成多个裁片;步骤2:将三维人体对应所述三维虚拟服装的裁片进行分割;步骤3:将三维虚拟服装裁片与三维人体进行姿态匹配;步骤4:对三维虚拟服装裁片进行缝合,并保持缝合过程中三维虚拟服装裁片的几何特征;步骤5:对三维虚拟服装与人体之间进行穿透补偿;步骤6:对三维虚拟服装自身进行穿透补偿;所述步骤3包括:3.1:根据三维虚拟服装和人体的关键点,将服装和人体位置重合;3.2:根据三维虚拟服装裁片和对应人体部位的点云特征进行姿态匹配。上述方法可以随着人体模型体型的改变而改变衣服模型的形状,但是,对服装自适应的方法却没有进一步的创新运用,仅停留在体型适应阶段,并不能很好解决服装模型驱动过程中的穿模问题。
因此,如何解决服装模型在移动时的真实度和穿模问题,在保证服装模拟效果的前提下,如何找到输入简单、计算量小和真实度高不穿模之间一个较佳的平衡点,成为亟待解决的问题。
发明内容
基于上述问题,本发明提供了一种克服上述问题的服装模型自适应驱动方法、设备和存储介质。
本发明提供的服装模型自适应驱动方法包括:制作服装的三维模型;构造三维标准人体模型;将三维服装模型贴合到初始姿态的三维标准人体模型;获取三维目标人体模型的姿态参数;将获得的若干组姿态参数输入三维标准人体模型中进行拟合;通过装备自适应的方式驱动人体模型从初始姿态向目标姿态移动;获得与目标人体姿态相同,并且穿着服装的目标人体模型。
进一步的,还包括获取目标人体的二维图像,再通过二级神经网络模型的计算获得三维目标人体模型的体型参数和姿态参数。
进一步的,还包括获取三维目标人体模型的体型参数,进行参数拟合使标准人体模型的体型与目标人体体型一致,同时通过装备自适应的方式驱动所述服装模型随人体模型一起变化。
进一步的,所述获得目标人体模型参数的步骤还包括,将二维人体轮廓图像代入经过深度学习的第一神经网络进行关节点的回归,获得目标人体的关节点图,语义分割图,身体骨骼点以及关键点信息;将生成的上述人体信息代入经过深度学习的第二神经网络进行人体姿态和体型参数的回归,获得三维人体参数,包括三维人体动作姿态参数和三维人体体型参数;所述三维人体模型具有骨骼点和人体网格的数学权值关系,骨骼点的确定可关联确定目标人体姿态的人体模型。
进一步的,所述装备自适应是指,基于已适配到标准人体模型上的服装模型,给定目标姿态人体模型,即与标准人体模型姿态相同、网格结构相同,网格顶点、网格单元的数目、以及顶点与顶点之间拓扑连接关系均相同,仅高矮胖瘦等体型不同的人体模型,通过服装自适应匹配的方式,将三维服装模型适配到目标体型的人体模型上。
进一步的,在装备自适应的过程中,对标准人体模型的网格面片生成一种场,三维服装的各个面片与标准人体模型对应位置网格面片建立一种场对应关系,当标准人体模型网格变化的时候,三维服装也可以实现与之对应的跟随变化。所述装备自适应的过程,通过初始姿态到目标姿态之间的插帧,然后逐帧小幅度的驱动人体模型网格来实现。首先指定特定连通的网格作为驱动源,特定连通的网格作为被驱动的网格。根据权利要求8所述的方法,其特征在于,根据所述驱动源和被驱动网格的驱动关系建立一种关系场,使得在初始位置时,对于作为驱动源的人体模型网格的某一个顶点(x,y,z),计算其三维空间周围最近的最大约束个数为10个的若干个被驱动模型的网格顶点,建立起一个顶点-顶点的关系矩阵,也就是顶点关系场。当人体体型发生改变时,所述人体模型的驱动源的形状发生变化,根据变化后的驱动源网格顶点,乘以顶点关系场矩阵,得到变化后的服装模型所在的新的三维空间坐标,完成装备自适应的过程。
还公开了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现前面任一所述的方法步骤。
一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现前面任一所述的方法步骤。
本发明的有益效果是:
1、服装模型不穿模。本发明采用的是一套基于顶点关系场的一种自适应算法,明显区别于之前服装模型刷蒙皮权重的一般做法。蒙皮是建立一种模型网格顶点和骨骼之间的关系,例如有170根骨骼,有1万个mesh顶点,那么建立一个10000x 170的权重矩阵即可,当骨骼位置发生变化的时候,会驱动使得顶点也做相应的位置变化,进而实现蒙皮驱动的目的。但是,蒙皮方式强调速度快和计算量小,会导致过程比较粗糙穿模现象比较严重,游戏当中使用并无太大缺陷,但是在虚拟换装领域,这种方式在真实度上和精准度上不能达到最优效果。而我们的自适应算法,不同于蒙皮的人体网格与骨骼之间的绑定,而是通过网格与网格之间建立关系,强调场的概念。这样做的好处是,每个被驱动的模型顶点受到周围多个被驱动网格的共同作用且作用力度比较平均,驱动过程中这种方式穿模情况极少,达到了更加真实的模拟效果。
2、创新了装备自适应的应用场合。之前的蒙皮可以直接从初始Tpose通过蒙皮权重矩阵得到目标pose的网格位置,但是,基于装备自适应的场关系来做衣服模型驱动,无法直接通过矩阵乘法得到,因为这种场对于初始pose和目标pose跨度比较大的时候会失效。所以,装备自适应最初的用途只能用于Tpose固定状态下人体模型体型改变,衣服模型也随之改变的场合,也就是静止状态下随着人体模特的不同体型而改变衣服的高矮胖瘦。但是,经过我们的研究,发现装备自适应模块的顶点关系场鲁棒性较高,是完全能够支持小范围动作差异的。所以,我们创造性地利用小范围动作的累积,形成大范围的动作,使用装备自适应模块来逐帧驱动衣服模型到达目标姿态。同时,基于装备自适应驱动方式的特点,避免了采用一步到位的驱动方式。通过初始pose到目标pose之间的插帧,然后逐帧小幅度的驱动模型网格达到目标pose。通过逐帧计算网格,获得最终目标人体模型和服装模型的匹配结果。
3、用户操作简单。本发明提供了通过深度神经网络来分析人体全身照片得到精准人体三维模型参数的方法,仅需一张普通照片就能迅速为人体建模;同时,三维服装模型是提前通过对二维服装图片进行加工处理得到的,用户无需参与这些幕后工作,只需要选择想虚拟试衣的服装样式即可,系统会自动匹配相应的服装模型。非常好地适应了互联网时代的特点和趋势,一是简单,二是快捷。用户无需任何准备,上传一张照片就是用户需要完成的所有工作。
4、驱动骨骼过程合理。为了能逼真地拟合出目标人体的运动姿态,更好地配合布料模拟解算,在从初始姿态到目标姿态的变化过程中,我们采用了经过优化的插针法来完成,和传统的插针法比较,我们的目标姿态的骨骼信息由模型回归预测得到,同时,生成从初始姿态移动到目标姿态的动画序列;通过线性插值,最近邻插值等插帧方式,形成初始姿态到目标姿态的骨骼信息时间序列。生成动画序列的过程中,采用网格mesh插帧的方式进行处理;插帧速度的设置为前后距离初始点和目标点的位置慢,中间运动过程快;尤其重要的是,在模型达到最终目标姿态时静止数帧,得到整个动画序列。这样的做法比起匀速插帧更贴近真实物理世界运动规律,人体模型的姿态可以稳定,服装模型的状态也在这几帧的时间内得到了稳定,可以同时进行布料模拟计算。服装和人体姿态仿真出来的效果更佳,并且可以减少相当的处理时间。
5、高频度使用深度神经网络。本发明充分利用了深度学习网络的优势,能够在各种复杂的场景中,高精度还原人体的姿态和体型。针对不同的目的分别使用不同的神经网络,利用不同输入条件和训练方式的神经网络模型,实现了人体在复杂的背景下的精准轮廓分离,人体的语义分割,关键点和关节点的确定,排除了宽松衣物、发型的影响,做到最大程度上逼近人体的真实体型和形态。现有技术中也会使用神经网络模型,但是由于输入条件、输入参数、训练方式的不同,导致神经网络模型发挥的功能和作用有较大差异。
6、神经网络模型的设置更加科学和有针对性。现有技术中有一些图像处理方法,过于追求简单地直出模型,没有花时间打磨模型的细节,纯粹通过海量图像数据的训练来完成从2D图片到3D身体模型的映射,虽然效率很高,但是处理流程过于简单,完全依靠神经网络模型来生成三维人体模型,身体的比例和细节部分的一致性和效果均不如人意,并且对后续的进一步处理,完全没有帮助,而且可能成为后续程序难以跨过的障碍。而我们前一级的神经网络,人体轮廓、人体语义分割、关键点和关节点都会作为输入的项目,可以从多个角度来完成模型参数的生成,并且后一级神经网络输出的参数包含姿态和SHAPE两个类别,可以分别控制动作和体型,并且结合我们的参考模型,可以精准的复制人体模型的姿态和体型。
7、人体模型精确可控。目前流行的基于单图像的人体重建方法主要分为重建参数化人体模型。最常用的参数化模型为马普所的SMPL模型,其包含用于描述人体姿态和描述人体体型的两套共72个参数。针对单图片重建问题,先从图片估计二维关节位置,再通过三维关节与二维平面关节投影距离最小来实现优化得到SMPL参数,进而得到人体。但SMPL模型,主要通过大量的人体模型实例来进行深度学习和训练,体型和形状基之间的关系是一种整体关联关系,解耦合难度很大,无法随心所欲地控制想要控制的身体部分,导致生成的模型不能达到与真实人体姿态和体型的高度一致性,此外,如果进一步应用于后续的穿衣过程,也会导致对人体表面几何细节的表现能力有限,无法很好地重建出人体表面衣物的细节纹理。但是我们的人体模型,不是通过训练得到的,参数之间存在基于数学原理的对应关系,也就是说,我们的各组参数之间没有互相牵连的关系,是各自独立的,因此我们的模型在变换过程中更具有解释性,可以更好地表征身体某一个局部的形状变化。通俗来讲,就是人的体型千人千样,很多人的大腿和小腿的比例并不满足一定的精确比例,我们的模型可以通过控制输入的参数,实现大腿和小腿分别的控制和长度调整,达到腿部比例的精确确定。
本发明通过装备自适应算法的创新应用,在衣服模型和人体模型的匹配中既保持了三维服装模型真实度和还原度,又保证了一定的处理速度,最重要的是基本保证不穿模,获得了很好的模拟换装效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例的全部处理流程图;
图2为一个实施例的模型参数获得模块的处理流程图;
图3为一个实施例的服装模型自适应驱动处理流程图;
图4为本发明的系统示意图。
具体实施方式
下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本发明,并不被配置为限定本发明。对于本领域技术人员来说,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
下面结合附图对本发明实施例提供的处理人体图像的方法进行详细说明。
如图1所示,本发明提供一种服装模型自适应驱动方法,所述方法包括:制作服装的三维模型;构造三维标准人体模型;将三维服装模型贴合到初始姿态的三维标准人体模型;获取三维目标人体模型的姿态参数;将获得的若干组姿态参数输入三维标准人体模型中进行拟合;通过装备自适应的方式驱动人体模型从初始姿态向目标姿态移动;获得与目标人体姿态相同,并且穿着服装的目标人体模型。
所述方法大致包括几个部分的步骤。一是生成三维服装模型;二是生成一个标准人体模型,并把三维服装模型套在标准人体模型身上;三是获得目标姿态人体模型的参数;四是让标准人体模型的体型和姿态均变为和目标人体模型一致,同时模拟出三维服装模型跟随人体模型的变化而发生的真实变化。
第一部分主要是生成三维服装模型。在生成三维服装模型的现有技术中,存在几种不同的方法。目前,比较传统的服装三维模型建立方式是基于二维衣服裁片的设计与缝合方法。这种方法需要一定的服装专业知识来对样板进行设计。另一种较为新颖的三维建模方法是基于手绘的,可以通过用户手绘的线条信息生成简单的服装模型。还有一种是在获取服装图片信息的基础之上,综合使用图像处理技术与图形仿真技术,最终生成虚拟三维服装模型。在图片中通过轮廓检测与分类获取服装轮廓与尺码,通过机器学习的方法从轮廓中找出的边与边的关键点,通过关键点对应关系生成缝合信息,最后在三维空间中对服装进行物理缝合的仿真,获取服装穿着在人体上的真实效果。此外,还有映射法,数学模型仿真法等方法,本发明对这一部分并不作出特别的限定,但是,三维服装模型需要匹配到标准人体模型上,总的要求是基于已适配到标准人体模型上的服装模型,通过布料物理模拟的方式,适配到目标姿态下的人体模型上,且保证服装的自然性和合理性。
所以通常要满足一些基本要求,包含但不限于以下几点:a.要和标准人台的初始姿态完全贴合不穿模;b.输出为均匀的四边面;c.模型的UV需要展开平铺紧凑对齐,并且贴图须通过photoshop工具人工对齐UV;d.进行过顶点合并;e.输出模型应均匀减面,参考标准总面数不超过15w面/套;f.需要在主流服装设计软件里调节材质,解算10帧动画观察布料效果,达到预期并把材质参数保存;g.需要在主流设计软件里里调节渲染材质,预览一张渲染,保证材质lambert属性合理。
第二部分是根据我们的人体建模方法,预先设计建模一些标准模型,也就是基础人台,并把三维服装模型套在标准人体模型身上,以达到和我们后续工作流程相适应的效果。主要工作内容为:结合数学模型构造三维标准人体模型,即基础人台。马普所的SMPL人体模型可以避免人体在运动过程中的表面失真,可以精准的刻画人的肌肉拉伸以及收缩运动的形貌。该方法中β和θ是其中的输入参数,其中β代表是个人体高矮胖瘦、头身比等比例的10个参数,θ是代表人体整体运动位姿和24个关节相对角度的75个参数。β参数是ShapeBlend姿态参数,可以通过10个增量模板控制人体形状变化,具体而言,每个参数控制人体形态的变化可以通过动图来刻画。通过研究参数变化的连续动画,我们可以清楚地看到每一个控制人体形态参数的连续变化,都会引起人体模型的局部甚至整体的连锁变化,为了体现人体肌肉组织的运动,SMPL人体模型的每一个参数的线性变化,都会引起大面积的网格变化。形象的讲,例如在调整β1的参数时,模型会直接把β1的参数变化理解为身体的整个变化,你可能只想调整一下腰部的比例,但是模型会强制把腿部、胸部、甚至手部的胖瘦一起帮你调整。这种工作模式虽然可以大大简化工作流程,提高效率,但是对追求建模效果的项目来说,确实非常不方便的。因为SMPL人体模型终究是一个通过西方人体照片和测量数据训练出来的符合西方人体型的模型,其形体变化的规律基本符合西方人的通常变化曲线,应用在亚洲人的人体模型建模中,则会出现很多问题,比如胳膊和腿的比例,腰身的比例,脖子的比例,腿长和胳膊长度等。通过我们的研究,这些方面都存在较大差值,如果硬性套用SMPL人体模型,在最终生成效果上不能达到我们的要求。
为此,我们采用了自制人体模型的方式完成效果的提升。其核心是自建人体blendshape基来实现人体精准的独立操控。优选的,所述三维标准人体模型(基础人台)由20个形体基的参数以及170根骨骼参数构成。所述若干个基构成整个人体模型,每个形体基分别由参数单独控制变化,互不影响。所谓精准操控,一方面是增加了控制的参数,没有沿用马普所的十个β控制参数,这样,可以调整的参数除了通常的胖瘦,还加入了手臂的长度,腿部的长度,腰部、臀部和胸部的胖瘦等,在骨骼参数方面把参数提高了一倍以上,大大丰富了可以调整参数的范围,为精细化设计标准人体模型提供了良好的基础。所谓独立操控,可以理解为每一个基都是单独进行操控的,比如腰、腿、手、头部等,每根骨骼也是可以单独进行长度的调整,互相之间独立,并且不会产生形体上的联动,这样就能比较好的进行人体模型的精细化调整。不再显得模型“傻大笨粗”,总也不能调整到设计师满意的形态。我们现有的模型,体现出来的是一种数学原理上的对应关系,实际上就相当于我们从人工审美和数据统计分析两个部分去设计这个模型,使其按照我们的设计规则去生成我们认为符合亚洲人体型的正确模型,显著区别于SMPL人体模型的大数据训练模型,所以我们的参数变换更具有可解释性,可以更好地表征人体模型局部的形体变化,并且,这种变化是基于数学原理的方式,各个参数之间没有影响,胳膊和腿之间保持了完全独立状态。实际上,设计了这么多不同的参数,就是为了可以避免大数据训练出来人体模型的缺陷,在更多维度上对人体模型进行精准控制,不局限于高度等寥寥几个指标,大幅提升建模效果。也只有在自建形体基的前提下,设置这么多独立的控制参数才有其实际意义,要达到设计师水准的要求,两者缺一不可。
至于把三维服装模型穿在标准人体模型身上,则是本领域常规的技术,本发明对此不做过多的限定,可以达到要求的效果即可。
第三部分是对获取的人体图像进行处理,获得生成人体模型所需要的参数信息。以前,这些骨骼关键点的选取通常是通过人工进行,但是这种方式效率很低,不适应互联网时代快节奏的要求,因此,在神经网络大行其道的今天,利用经过深度学习的神经网络代替人工进行关键点的选取,成为了潮流。但是,如何高效地利用神经网络则是一个需要进一步研究的问题。
总体上讲,我们采用了二级神经网络加数据“精修”的思路来构建我们的参数获得体系。如图2所示,我们采用经过深度学习的神经网络来生成这些参数,主要包括以下子步骤:1)获取目标人体的二维图像;2)处理获得目标人体的二维人体轮廓图像;3)将二维人体轮廓图像代入经过深度学习的第一神经网络进行关节点的回归;4)获得目标人体的关节点图;获取人体各部分语义分割图;身体关键点;身体骨骼点;5)将生成的目标人体的关节点图、语义分割图,身体骨骼点以及关键点信息代入经过深度学习的第二神经网络进行人体姿态和体型参数的回归;6)获得输出的三维人体参数,包括三维人体动作姿态参数和三维人体体型参数。
所述目标人体的二维图像可以为任意姿势和任意着装的包括人体像的二维图像。二维人体轮廓图像的获取利用目标检测算法,所述目标检测算法是基于卷积神经网络的目标区域快速生成网络。
在将二维人体图像输入第一神经网络模型之前,还包括训练神经网络的过程,训练样本包括标注原始关节点位置的标准二维人体图像,所述原始关节点位置由人工在二维人体图像上进行高准确度地标注。在这里,首先获取目标图像,并利用目标检测算法对目标图像进行人体检测。人体检测并不是使用测量仪器对真实人体进行检测,本发明中实际是指对于任意一幅给定的图像,通常是包含足够信息的二维照片,比如人脸,人的四肢和身体要求全部包括在图片中。然后,采用一定的策略对给定的图像进行搜索,以确定给定的图像中是否包含人体,如果给定的图像中包含人体,则给出人体的位置、大小等参数。在本实施例中,在获取目标图像中的人体关键点之前,需要对目标图像进行人体检测,以获取目标图像中标注人体位置的人体框,因为我们输入的图片可以是任何图片,所以不可避免的存在一些非人体图像的背景,比如桌子椅子、大树汽车楼房等,要通过一些成熟的算法把这些无用的背景去除。
同时,我们还要进行语义分割、关节点检测、骨骼检测和边缘检测,收集到了这些1D的点信息和2D的面信息,就可以为后面生成3D人体模型打下良好的基础。使用第一级神经网络生成人体的关节点图,可选地,目标检测算法可以为基于卷积神经网络的目标区域快速生成网络。该第一神经网络需要进行大量的数据训练,由人工对一些从网络收集来的照片进行关节点标注,然后输入神经网络进行训练,经过深度学习的神经网络,基本可以做到输入照片后就能立即获得和人工标注关节点一样准确率和效果的关节点图,同时效率是人工标注的数十倍甚至数百倍。人体关节点通常都作为人体关键点存在。
本发明中,获得照片中人体的关节点位置,只是完成了第一步,获得了1D的点信息,还要根据这些1D的点信息生成2D的面信息,这些工作都可以通过神经网络模型以及现有技术中的成熟算法来完成。本发明由于重新设计了神经网络模型参与工作的流程和介入时机,合理设计了各种条件和参数,使得参数的生成工作更加高效,人工参与的程度降低,非常适合互联网应用场景,比如在虚拟换装的节目中,用户无需等待,基本上是瞬时就可以获得换装结果,对提高节目对用户的吸引力有着至关重要的作用。
在获得了相关的1D的点信息和2D的面信息后,就可以将这些参数或者结果,目标人体的关节点图、语义分割图,身体骨骼点以及关键点信息作为输入项代入经过深度学习的第二神经网络进行人体姿态和体型参数的回归。经过第二神经网络的回归计算,就可以立即输出若干组三维人体参数,包括三维人体动作姿态参数和三维人体体型参数。优选的,根据三维标准人体模型(基础人台)、预测三维人体模型、标注原始关节点位置的标准二维人体图像以及包括预测关节点位置的标准二维人体图像设计神经网络的损失函数。
第四部分,也就是最关键的部分,是将人体模型的参数和人体模型进行拟合驱动,同时,保证衣服模型跟随移动后的状态尽量真实。在这一部分,把三维服装模型套在标准人体模型身上后,需要让标准人体模型的体型和姿态均变为和目标人体一致,同时模拟出三维服装模型跟随人体模型的变化而发生的真实变化。如图3所示,我们使用几种操作方式来保证以上目的的顺利达成。
首先,获取目标人体的二维图像,再通过二级神经网络模型的计算获得三维目标人体模型的体型参数和姿态参数,具体方法在第三部分已经有详细的介绍。进一步的,获取三维目标人体模型的体型参数,进行参数拟合使标准人体模型的体型与目标人体体型一致,同时通过装备自适应的方式驱动所述服装模型随人体模型一起变化。
三维人体模型具有骨骼点和模型网格的数学权值关系,骨骼点的确定可关联确定目标人体姿态的人体模型。在这一部分,沿用上一部分生成的这两种参数,将获得的三维人体姿态和SHAPE参数与三维标准人体模型的若干个基和骨骼参数相对应;将获得的若干组基和骨骼参数输入标准三维人体参数模型中进行拟合,就可以对预先设计好的人体模型进行3D人体模型的构造。这两类参数与马普所的人体SMPL模型参数名称相似,但实际所包含的实质内容相差较大。因为两者的基础并不一样,也就是说,本发明采用自制三维标准人体模型(基础人台),每个基都是我们自己根据亚洲人的体型和身材比例设计的,包括若干个SMPL模型没有涉及到的部位,马普所的SMPL模型采用大数据训练生成的标准人体模型,两个模型的生成计算方式不同,虽然最后都体现为生成的3D人体模型,但是其内涵相差较大。在这一步骤后,就会得到一个初步的3D人体模型,包括骨骼位置和长短信息的人体模型的网格(mesh)。
所谓装备自适应是指,基于已适配到标准人体模型上的服装模型,给定目标姿态人体模型,即与标准人体模型姿态相同、网格结构相同,网格顶点、网格单元的数目、以及顶点与顶点之间拓扑连接关系均相同,仅高矮胖瘦等体型不同的人体模型,通过服装自适应匹配的方式,将三维服装模型适配到目标体型的人体模型上。
因为现实世界中,人的高矮胖瘦差别比较大,不同的人穿同一件衣服会呈现非常不同的穿着状态。所以,我们要想保证目标人体模型和服装模型的真实度,也要让服装模型随着真实人体体型和姿态变化而变化。在技术层面,随着人体体型参数的增减,会带动标准人体模型网格的移动,而在自适应的状态下,人体网格移动就会带动衣服模型一起移动,网格和衣服之间存在确定的绑定和联动关系。我们的方案,被驱动体都是受驱动源网格驱动,并一起运动的。
装备自适应在动画领域最基本和最开始的用途就是解决体型问题的,固定初始状态Tpose下人体模特变胖变瘦,衣服也要跟着变胖变瘦的问题。在初始状态下,服装模型贴合在标准人体模型的网格上,随着网格的膨胀或者收缩,衣服也会呈现一种跟随的趋势和状态,实际上就相当于使用自适应算法模拟了真实衣服穿在真实人体上的体型胖瘦变化,这样就可以保证换装后的真实度。
其次,通过三维人体动作姿态参数确定目标人体的姿态,同样通过自适应的方式从初始姿态驱动人体模型网格和服装模型移动到目标姿态,使得三维人体模型与目标人体姿态基本一致,同时服装模型与目标人体姿态完成匹配。
在动画领域,使用骨骼或者关节点作为驱动的源,使用蒙皮驱动的方式是比较常见的。所谓蒙皮驱动,就是在驱动过程中建立起模型网格顶点和骨骼之间的关系,计算骨骼在目标姿态下的旋转参数之后,通过蒙皮权重的关系,使得骨骼可以带动其附近的顶点完成空间上的移动,驱动相关联的顶点到达目标姿态的位置。比如当骨骼弯曲旋转的时候,影响带动了附近绑定的网格顶点也完成空间上的移动。同样的道理,由于存在我们的自建人体模型,拥有非常多的表示人体特征的参数,可以比较精细地表达人体模型的每一个细小部分。比如在我们获得了170根骨骼所有的目标姿态(pose)的旋转参数之后,可以使用全部的蒙皮权重,把整个人体模型的网格(mesh)顶点驱动到目标姿态(pose)。蒙皮驱动的好处是速度很快,可以理解成不必要每帧都插帧计算,可以从初始状态直接把衣服模型驱动到目标姿态。但是它的缺点也很明显,没有任何物理世界模拟操作内容,所以变化的过程中十分不自然,到达目标位置后的状态与实际运动后的状态也是不同的。对于紧身的衣服模型穿模较多,对于比较宽松的三维衣服模型,可以明显看出不自然。会导致过程比较粗糙穿模现象比较严重,游戏当中使用并无太大缺陷,但是在虚拟换装领域,这种方式在真实度上和精准度上不能达到最优效果。
此外,蒙皮可以直接从初始Tpose通过蒙皮权重矩阵得到目标pose的网格位置。但是,基于装备自适应的场关系来做衣服模型驱动,无法直接通过矩阵乘法得到,因为这种场对于初始pose和目标pose跨度比较大的时候会失效。所以,装备自适应最初的用途只能用于Tpose固定状态下人体模型体型改变,衣服模型也随之改变的场合,也就是静止状态下随着人体模特的不同体型而改变衣服的高矮胖瘦。
但是,经过我们的研究,发现装备自适应模块的顶点关系场鲁棒性较高,是完全能够支持小范围动作差异的。所以,我们创造性地利用小范围动作的累积,形成大范围的动作,使用装备自适应模块来逐帧驱动衣服模型到达目标姿态。同时,基于装备自适应驱动方式的特点,避免了采用一步到位的驱动方式。我们的自适应算法,不同于蒙皮的人体网格与骨骼之间的绑定,而是通过人体网格与服装网格之间建立关系,强调场的概念。通过初始pose到目标pose之间的插帧,然后逐帧小幅度的驱动模型网格达到目标pose。通过逐帧计算网格,获得最终目标人体模型和服装模型的匹配结果。每个被驱动的模型顶点受到周围多个被驱动网格的共同作用且作用力度比较平均,驱动过程中这种方式穿模情况极少,达到了更加真实的模拟效果。
比如之前提到的宽松衣物自然下垂状态的真实模拟,对蒙皮操作来讲就会比较困难,而对于装备自适应方式,则可以非常好地解决类似问题,因为是一帧一帧的移动计算,会形成一系列微小动作的集合,不会出现大幅度的衣物模型一步到位的运动,极大地减少了衣服模型穿模的可能性。在实践中,我们已经可以做到以服装mesh为10万三角面(或者5万四边面)模型为基准、单层服装进行测试,要求效果一致。在采用服装自适应模块时,耗时在1秒之内,并且服装集模型至少90%以上不穿模。
在装备自适应的过程中,相当于在标准人体模型的网格面片生成一种场,三维服装的各个面片与标准人体模型对应位置网格面片建立一种场对应关系,当标准人体模型网格变化的时候,三维服装也可以实现与之对应的跟随变化。
所述装备自适应的过程,通过初始姿态到目标姿态之间的插帧,然后逐帧小幅度的驱动人体模型网格来实现。首先指定特定连通的网格作为驱动源,特定连通的网格作为被驱动的网格。根据权利要求8所述的方法,其特征在于,根据所述驱动源和被驱动网格的驱动关系建立一种关系场,使得在初始位置时,对于作为驱动源的人体模型网格的某一个顶点坐标用(x,y,z)表示,计算其三维空间周围最近的最大约束个数为10个的若干个被驱动模型的网格顶点,建立起一个顶点-顶点的关系矩阵,也就是顶点关系场。当人体体型发生改变时,所述人体模型的驱动源的形状发生变化,根据变化后的驱动源网格顶点,乘以顶点关系场矩阵,得到变化后的服装模型所在的新的三维空间坐标,完成装备自适应的过程。
在这一部分,人体模型同样需要完成从初始姿态向目标姿态的变化。因为我们输入的只是一张照片,照片上的目标人体姿态通常是和基础人台是不一样的,这时,为了能拟合出目标人体的姿态,就要完成从初始姿态到目标姿态的变化。为了更加逼真地模拟在拟合步骤中,若干组基和骨骼参数在标准三维人体参数模型中进行拟合时,还包括以下步骤,
1)获得初始姿态和目标姿态的位置坐标;初始姿态参数的获得由标准人台模型的初始化参数确定,目标姿态的骨骼信息由神经网络模型回归预测得到。
2)生成从初始姿态移动到目标姿态的动画序列;有了骨骼信息的初始状态以及目标姿态状态参数之后,通过线性插值,最近邻插值等插帧方式,形成初始姿态到目标姿态的骨骼信息时间序列。在驱动过程中按照每帧驱动的骨骼数,可分为全局线性插值及先驱动父节点再驱动子节点等两种方式,考虑到模拟物理世界中的驱动状态,本专利采用后者,先驱动父骨骼节点,再驱动子骨骼节点的方式,这样插值出来的动画序列动作更加贴合真实物理世界,仿真出来的效果更佳。
3)生成动画序列的过程中,采用网格mesh插帧的方式进行处理;即每一帧驱动骨骼运动之后,都通过标准人台的权重参数计算得到当前状态的人体模型顶点即面信息,更新当前的人体模型mesh状态并记录保存。
4)插帧速度的设置为前后距离初始点和目标点的位置慢,中间运动过程中快;本专利采用非匀速的插帧速率,即初始动作和结束动作过程中单帧移动幅度较小,移动中间过程移动幅度大的方式。模拟真实世界中物理动作的起始状态具有一定的加速过程,而运动过程中则保持较高的帧间位移距离,至运动末尾则降低驱动速度。
5)在驱动至最终目标姿态时静止数帧,得到整个动画序列。这样的做法比起匀速插帧更贴近真实物理世界运动规律,仿真出来的效果更佳。
6)完成从初始姿态驱动骨骼移动到目标姿态。
变速插帧是用于布料解算模块的创新方法,主要为了模拟真实世界里时间的概念,服装模型在受到驱动后,会受到加速度影响,所以会采用变速插帧的方式。
结合图1至图3描述的根据本发明实施例的生成三维人体模型的方法可以由处理人体图像设备来实现。图4是示出根据发明实施例的处理人体图像的设备的硬件结构300示意图。
本发明还公开了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现前面所述的服装模型自适应驱动方法和步骤。
以及一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现前面所述的服装模型自适应驱动方法和步骤。
如图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 (12)
1.一种服装模型自适应驱动方法,所述方法包括:
1)制作服装的三维模型;
2)构造三维标准人体模型;
3)将三维服装模型贴合到初始姿态的三维标准人体模型;
4)获取三维目标人体模型的姿态参数;
5)将获得的若干组姿态参数输入三维标准人体模型中进行拟合;
6)通过装备自适应的方式驱动人体模型从初始姿态向目标姿态移动;
7)获得与目标人体姿态相同,并且穿着服装的目标人体模型。
2.根据权利要求1所述的方法,其特征在于,还包括获取目标人体的二维图像,再通过二级神经网络模型的计算获得三维目标人体模型的体型参数和姿态参数。
3.根据权利要求2所述的方法,其特征在于,还包括获取三维目标人体模型的体型参数,进行参数拟合使标准人体模型的体型与目标人体体型一致,同时通过装备自适应的方式驱动所述服装模型随人体模型一起变化。
4.根据权利要求2所述的方法,其特征在于,所述获得目标人体模型参数的步骤还包括,将二维人体轮廓图像代入经过深度学习的第一神经网络进行关节点的回归,获得目标人体的关节点图,语义分割图,身体骨骼点以及关键点信息;将生成的上述人体信息代入经过深度学习的第二神经网络进行人体姿态和体型参数的回归,获得三维人体参数,包括三维人体动作姿态参数和三维人体体型参数;所述三维人体模型具有骨骼点和人体网格的数学权值关系,骨骼点的确定可关联确定目标人体姿态的人体模型。
5.根据权利要求1所述的方法,其特征在于,所述装备自适应是指,基于已适配到标准人体模型上的服装模型,给定目标姿态人体模型,即与标准人体模型姿态相同、网格结构相同,网格顶点、网格单元的数目、以及顶点与顶点之间拓扑连接关系均相同,仅高矮胖瘦等体型不同的人体模型,通过服装自适应匹配的方式,将三维服装模型适配到目标体型的人体模型上。
6.根据权利要求1所述的方法,其特征在于,在装备自适应的过程中,对标准人体模型的网格面片生成一种场,三维服装的各个面片与标准人体模型对应位置网格面片建立一种场对应关系,当标准人体模型网格变化的时候,三维服装也可以实现与之对应的跟随变化。
7.根据权利要求1所述的方法,其特征在于,所述装备自适应的过程,通过初始姿态到目标姿态之间的插帧,然后逐帧小幅度的驱动人体模型网格来实现。
8.根据权利要求7所述的方法,其特征在于,首先指定特定连通的网格作为驱动源,特定连通的网格作为被驱动的网格。
9.根据权利要求8所述的方法,其特征在于,根据所述驱动源和被驱动网格的驱动关系建立一种关系场,使得在初始位置时,对于作为驱动源的人体模型网格的某一个顶点(x,y,z),计算其三维空间周围最近的最大约束个数为10个的若干个被驱动模型的网格顶点,建立起一个顶点-顶点的关系矩阵,也就是顶点关系场。
10.根据权利要求9所述的方法,其特征在于,当人体体型发生改变时,所述人体模型的驱动源的形状发生变化,根据变化后的驱动源网格顶点,乘以顶点关系场矩阵,得到变化后的服装模型所在的新的三维空间坐标,完成装备自适应的过程。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-10任一所述的方法和步骤。
12.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现权利要求1-10任一所述的方法和步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010876585.9A CN114119906A (zh) | 2020-08-27 | 2020-08-27 | 一种服装模型自适应驱动方法、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010876585.9A CN114119906A (zh) | 2020-08-27 | 2020-08-27 | 一种服装模型自适应驱动方法、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114119906A true CN114119906A (zh) | 2022-03-01 |
Family
ID=80374558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010876585.9A Pending CN114119906A (zh) | 2020-08-27 | 2020-08-27 | 一种服装模型自适应驱动方法、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114119906A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114758213A (zh) * | 2020-12-28 | 2022-07-15 | 北京陌陌信息技术有限公司 | 一种服装模型的布料解算方法、设备和存储介质 |
CN115661307A (zh) * | 2022-11-11 | 2023-01-31 | 阿里巴巴(中国)有限公司 | 服装动画生成方法及装置 |
CN115761143A (zh) * | 2022-12-07 | 2023-03-07 | 武汉纺织大学 | 一种基于2d图像的3d虚拟换装模型生成方法及装置 |
CN116187051A (zh) * | 2023-02-17 | 2023-05-30 | 上海百琪迈科技(集团)有限公司 | 一种服装模型与人体模型的绑定方法、系统及设备 |
WO2024007107A1 (en) * | 2022-07-04 | 2024-01-11 | Nvidia Corporation | Neural network-based object reconstruction |
CN117635814A (zh) * | 2022-12-28 | 2024-03-01 | 南京英麒智能科技有限公司 | 基于rgbd数据的可驱动3d数字人体建模方法、系统与设备 |
-
2020
- 2020-08-27 CN CN202010876585.9A patent/CN114119906A/zh active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114758213A (zh) * | 2020-12-28 | 2022-07-15 | 北京陌陌信息技术有限公司 | 一种服装模型的布料解算方法、设备和存储介质 |
WO2024007107A1 (en) * | 2022-07-04 | 2024-01-11 | Nvidia Corporation | Neural network-based object reconstruction |
CN115661307A (zh) * | 2022-11-11 | 2023-01-31 | 阿里巴巴(中国)有限公司 | 服装动画生成方法及装置 |
CN115661307B (zh) * | 2022-11-11 | 2023-03-21 | 阿里巴巴(中国)有限公司 | 服装动画生成方法及装置 |
CN115761143A (zh) * | 2022-12-07 | 2023-03-07 | 武汉纺织大学 | 一种基于2d图像的3d虚拟换装模型生成方法及装置 |
CN115761143B (zh) * | 2022-12-07 | 2023-09-19 | 武汉纺织大学 | 一种基于2d图像的3d虚拟换装模型生成方法及装置 |
CN117635814A (zh) * | 2022-12-28 | 2024-03-01 | 南京英麒智能科技有限公司 | 基于rgbd数据的可驱动3d数字人体建模方法、系统与设备 |
CN116187051A (zh) * | 2023-02-17 | 2023-05-30 | 上海百琪迈科技(集团)有限公司 | 一种服装模型与人体模型的绑定方法、系统及设备 |
CN116187051B (zh) * | 2023-02-17 | 2024-03-29 | 上海百琪迈科技(集团)有限公司 | 一种服装模型与人体模型的绑定方法、系统及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114119908A (zh) | 一种服装模型驱动方法、设备和存储介质 | |
CN114119906A (zh) | 一种服装模型自适应驱动方法、设备和存储介质 | |
CN114202629A (zh) | 一种人体模型的建立方法、系统、设备和存储介质 | |
CN114119905A (zh) | 一种虚拟试衣方法、系统、设备和存储介质 | |
CN107274493B (zh) | 一种基于移动平台的三维虚拟试发型人脸重建方法 | |
CN114758213A (zh) | 一种服装模型的布料解算方法、设备和存储介质 | |
CN114119907A (zh) | 一种人体模型的拟合方法、设备和存储介质 | |
CN109427007B (zh) | 基于多视角的虚拟试衣方法 | |
EP2686834B1 (en) | Improved virtual try on simulation service | |
De Aguiar et al. | Automatic conversion of mesh animations into skeleton‐based animations | |
CN114119911A (zh) | 一种人体模型神经网络训练方法、设备和存储介质 | |
CN114119910A (zh) | 一种服装模型匹配人体模型的方法、设备和存储介质 | |
CN107924579A (zh) | 生成个性化3d头部模型或3d身体模型的方法 | |
Zhu et al. | An efficient human model customization method based on orthogonal-view monocular photos | |
CN107590708B (zh) | 一种生成用户特定体形模型的方法和装置 | |
CN114119912A (zh) | 一种人体模型的快速拟合方法、设备和存储介质 | |
US20210089691A1 (en) | Method, system and computer-readable storage medium for simulating clothing comfort and method for manufacturing clothing | |
CN104123753A (zh) | 基于服装图片的三维虚拟试衣方法 | |
WO2013123306A1 (en) | System and method for simulating realistic clothing | |
US20210375045A1 (en) | System and method for reconstructing a 3d human body under clothing | |
CN114202630A (zh) | 一种光照匹配的虚拟试衣方法、设备和存储介质 | |
CN114693570A (zh) | 一种人体模型图像的融合处理方法、设备和存储介质 | |
WO2014107520A1 (en) | Footwear digitization system and method | |
Zheng et al. | Image-based clothes changing system | |
Pan et al. | Automatic rigging for animation characters with 3D silhouette |
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 |