本发明属于虚拟试衣,特别涉及一种基于style3d的虚拟试衣方法及系统。
背景技术:
1、目前虚拟试衣系统中获取的三维人体模型只是局部逼近人体,没有考虑购买者的脸型,头发等信息,缺乏准确的人体三维模型。在这种情况下,客户很难方便快捷地做出自己最理想的选择;并且需要用户自行输入好多数据,在输入过程中可能出现填错或量错的问题,使建立的三维模型不准确;此外,现有的三维试衣系统大多都没有考虑如何保护购买者的人体隐私,存在很大隐患。对于基于style3d的虚拟试衣的研究仍有非常大的空白有待填补。
技术实现思路
1、为了实现上述目的,本发明提供以下技术方案:
2、本发明提供一种基于style3d的虚拟试衣的方法,包括:
3、(1)建立和存储基础三维模型数据库,包括人体模型数据库、发型肤色贴图库、服装样板数据库、动画数据库、三维试衣场景库;
4、(2)获取用户的身材指标数据,包括用户人体数据和用户人脸图像的信息;
5、(3)构建目标人体三维模型,利用预先构建的基础三维模型根据所述用户的身材指标数据构建所述用户的目标人体三维模型,并对所述目标人体三维模型进行加密保存;
6、(4)根据所述目标用户选择的服装样本,对所述服装样本进行布料模拟、虚拟缝合和制作;
7、(5)响应于所述用户对目标衣物的选择操作,利用所述目标人体三维模型为所述用户执行选择操作后的目标衣物呈现多方位的实时渲染效果,完成三维虚拟试衣过程,并上传云端或者手机客户端进行保存。
8、终端可以直接使用显示屏显示该服装信息,用户通过显示屏对搭配的结果进行挑选,可以更为直观的了解搭配的结果;终端还可以将该服装对应的服装信息发送给该用户对应的便携式终端上,例如该用户的手机、平板电脑等,具体此处不做限定。
9、终端可以通过自身的数据采集器获取到用户的个人数据,也可以是接收其它终端发送的用户的个人数据,具体此处不做限定。
10、进一步的,步骤(1)中基础三维模型数据库建立是通过终端从云服务器下载并预先保存n个三维虚拟人体模型作为所述基础三维模型数据库,包括人体模型数据库、发型肤色贴图库、服装样板数据库、骨骼动画数据库;其中n为大于1的自然数。
11、所述基础三维人体模型数据库包括,包括人体模型数据库、发型肤色贴图库、服装样板数据库、动画数据库、三维试衣场景库;
12、其中,所述人体模型数据库包含多种类型的人体骨架模型,每种骨架类型按中国服装号型gb/t1335-2008标准建通过3d建模软件得到多种人体模型;
13、所述发型肤色贴图库通过3d建模软件构建各类型的发型库以及不同颜色和肤色的贴图库;
14、所述服装样板数据库通过服装样板制作软件得到每件待试穿服装的二维样板文件存储在服装样板库;
15、所述动画数据库,通过互联网上的云端服务器进行下载不同的动画动作信息并导入存储在动画数据库中,动画动作信息包括抬腿动作、双臂摇摆动作、双臂展开动作、下蹲动作、起立动作、步行前进动作、跳舞动作等等,动画动作的种类并不限于以上所述;
16、所述三维场景数据通过三维建模软件制作不同待试穿场景存储在三维场景数据库中;其中,每种待试衣服的类型至少对应一个三维试衣场景。三维试衣场景可以为教堂、球场、山顶、办公室、卧室、地铁内等等,三维试衣场景的种类并不限于以上所述。
17、进一步的,步骤(2)中,用户的身材指标数据获取的过程为:
18、通过手机拍摄和深度摄像头拍摄获取目标用户的二维面部照片以及根据用户输入数据得到用户人体数据,所述用户人体数据包括身高、体重体型数据信息;
19、根据手机拍摄获取的用户人体二维面部照片,确定所述目标用户的脸部信息;
20、对所述用户二维面部图像进行预处理;
21、所述图像预处理包含对输入图像的归类筛选以及重设置大小;对输入的图像数据采用训练好的图像分类深度学习模型根据人体脸部部位进行辅助分类;利用曲面重建算法基于预处理后的用户二维面部图像生成所述初始人体脸部信息模型;
22、通过深度摄像头获取目标用户的人体图像;
23、根据用户输入身体特征信息校准所述更新的基础三维模型;
24、所述人体尺寸信息可以包括身高、体重等信息。
25、进一步的,步骤(3)中,构建所述用户的目标人体三维模型包括以下步骤:
26、根据用户的身材实际尺寸信息,在预先保存的n个虚拟人体模型中选择匹配的虚拟人体模型作为初始三维虚拟人体模型;
27、基于用户人体数据,终端对云服务器的初始三维虚拟人体模型进行网格训练处理,并采用smpl模型对人体进行参数化表示;
28、smpl为一种数据驱动的三维人体模型,由10个体型参数β和72个姿态参数θ控制;
29、smpl模型可以表示为:
30、m(β,θ)=w(tp(β,θ),j(γ),θ,w);
31、tp(β,θ)=t+bs(γ)+bp(θ);
32、其中,m()为重构后的模型函数;
33、tp为网格顶点的位置;
34、w为标准线性混合smpl函数;
35、β为体型参数;
36、θ为姿态参数;
37、t为人体平均模型;
38、bs(β)和bp(θ)为smpl模型在体型参数β和姿态参数θ作用下顶点相对于t的偏移量;
39、j(β)为体型参数β对关节产生的影响;
40、w为混合权重。
41、终端对所述用户数据进行信息私密判定,所述私密信息包括,所述目标用户的二维面部照片以及身体数据,当终端判断所述接收到的信息包含私密信息时,将所述信息进行私密存储,并从默认存储模块删除所述信息。
42、根据获取的身材指标数据对所述初始三维虚拟人体模型进行修正,得到所述用户的目标人体三维模型;所述目标人体三维模型利用rsa加密算法进行加密,加密的具体过程为:
43、终端判定用户数据是否为私密信息,所述私密信息包括目标用户的二维面部照片及人体尺寸信息、目标用户的虚拟三维人体模型;
44、终端分别生成公钥和私钥进行加密和解密,其中,公钥上传到服务器端;
45、当终端判断接收到的信息包含私密信息时,则将接收到的信息进行私密存储存并从默认存储模块删除所述接收到的信息;当所述目标用户再次使用虚拟试衣时,可使用本地私钥对本地数据进行私密访问,提取所述目标用户存储在私密存储区域的信息内容,减少重复输入;
46、其中,所述rsa加密算法步骤:
47、(31)随机生成素数;
48、(32)生成密钥;
49、(321)随机生成两个素数p和q,并且满足p≠q;
50、(322)计算出s=p×q;
51、(323)计算小于s并且与s互质的整数的个数,即计算出s的欧拉函数
52、(324)随机选择正整数e,要求满足,且e与互质;
53、(325)计算e对于的模反元素d,得到d≡e-1mod(s);
54、(326)得到密钥对,公钥为(s,e),私钥为(s,d);
55、(33)进行加密处理:
56、加密过程中通过处理私密信息获得密文c,计算公式如下:
57、c=fe(m)=memod(s);
58、其中,fe()为加密函数;m为私密信息,n为密钥长度,(s,e)为给用户的公钥,c则是加密后的密文;
59、解密过程中使用私钥解锁密文以获取私密信息;计算公式如下:m’=fd(c)=cdmod(s);
60、其中,fd()为解密函数;c为传送的密文,(s,d)为私钥,m’是解密后的私密信息。
61、优选地,所述私密信息包括所述目标用户的二维面部照片及人体尺寸信息、目标用户的虚拟三维人体模型中的任何一个或多个。
62、优选地,当所述接收到的信息包括私密信息私密信息时,将所述信息进行私密存储。
63、优选地,将所述信息进行私密存储包括:将接收到的信息从默认存储模块移入私密存储模块,并从默认存储模块中删除所述信息。
64、优选地,将所述信息进行私密存储包括:将包括私密信息私密信息存储到私密存储模块,不包括私密信息存储到默认存储模块。
65、优选地,在通过安全认证后进入所述私密存储模块。
66、优选的,对服装布料制作的规则为:
67、取待试穿服装的目标人体三维模型;
68、服装样板数据库通过服装样板制作软件得到每件待试穿服装的二维样板文件存储在服装样板库;
69、根据用户挑选的服装二维样板在制定缝合信息规则下进行布料缝合,并对人体模型上的服装受力进行力学分析模拟和修改,将修改过面料参数的纸样置于优化后smpl模型的所述目标人体三维模型的对应位置后完成纸样的虚拟缝合,完成虚拟缝合的各样片摆放到所述人体虚拟模型各个部位并进行加载和试穿;
70、其中,试穿过程利用marvelousdesigner服装设计软件将算法生成的smpl模型作为输入,形成试衣效果模型进行个性化服装展示与试衣。所述缝合信息规则为,对虚拟人体三维模型设有安排点和安排面,通过安排点、安排面可将衣片对应到相应的部位,且可根据需要进行调整、追加或删除;三维排布是在人体模特上进行部位安排点排布样板,将样板安排在相应身体的部位;安排点是根据安排面设定的,根据目标用户的需要设定安排点的位置,安排点将排布在安排面上,同时设定在虛拟模特的身体各个部位,将板片一对应放在相应的位置;缝合时将样片对应缝纫在一起。
71、将所述目标用户的人体三维模型与待试穿服装的三维模型进行融合,得到三维试衣图像;
72、进一步的,步骤(5)的具体步骤为:
73、所述终端从云服务器下载三维试衣场景;
74、所述终端将下载的三维试衣场景导入至所述试衣场景数据库;
75、将试衣效果模型与所述三维试衣场景融合生成试衣效果动画,对所述三维试衣场景进行全方位旋转,所述三维试衣场景与试衣效果模型在横切面固定;将所述试衣效果模型导入到选定的所述三维试衣场景中并与所述三维试衣场景进行渲染合成;
76、控制所述试衣效果模型执行与所述三维试衣场景相适配的动画动作,生成试衣效果动画;呈现多方位的渲染效果,完成三维虚拟试衣过程。
77、所述三维试衣场景内对应设有至少一个动画动作,通过终端预先建立有动画数据库,所述动画数据库保存有若干个动画动作,所述三维试衣场景直接调用动画数据库,实现试衣效果模型的动作变化。
78、由于使示意效果模型在三维试衣场景中进行动画展示可以有效的体现待试衣服在不同试衣场景中的穿着展示效果是否达到目标用户的心理预期,进一步提高了用户体验。
79、优选的,所述终端为服务器终端;供大量数据存储处理使用,可为众多数量的用户进行智能化服装匹配服务;终端也可以为便携式终端,例如手机、平板电脑、笔记本、个人电脑等终端,可以为该终端的使用者提供便携式的智能化服装匹配服务。本发明还提供一种基于style3d的虚拟试衣系统,所述系统包括:
80、数据存储单元,用于人体模型数据库、发型肤色贴图库、服装样板数据库、动画数据库、三维场景数据库的构建和存储;
81、信息采集单元,用于采集用户的身材指标数据,包括用户深度图像及用户身体特征信息的采集;
82、三维模型构建单元,用于根据所述信息采集单元得到的信息对所述数据存储单元中的人体模型进行重构,目标人体三维模型并对含有私密信息进行加密处理;
83、其中,三维模型构建单元包含,
84、信息分析模块,用于判断所述信息是否包括私密信息;
85、默认存储模块,用于存储不包括私密信息的数据;
86、私密存储模块,用于存储包括私密信息的数据;
87、安全认证模块,用于进入所述私密存储区域的安全认证;
88、虚拟试衣单元,用于对服装样本进行缝合、布料模拟,并根据数字人骨骼动画和三维场景的选择完成试衣展示;
89、展示推送单元,用于所述试衣效果模型与所述三维试衣场景融合生成试衣效果动画,并上传云端或者手机客户端进行保存。
90、本发明还提供一种计算机设备,所述计算机设备包括处理器、存储器及存储所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的虚拟试衣方法。
91、本发明还提供一种存储介质,所述存储介质为计算机可读的存储介质,其上存储有计算机程序,所述计算机程序被执行时实现上述的虚拟试衣方法。
92、本发明提供一种基于style3d的虚拟试衣方法及系统,基于深度图像采集设备的三维试衣方法,通过深度图像采集设备建立目标人体三维模型,能够更加精准地重现人体、服装的形态;通过身材指标数据调整预先构建的人体基础模型,又根据调整后的人体基础模型调整预先构建的服装模型,在实时处理时无需另外建立模型,而只需调整模型的部分参数,加快了虚拟试衣的计算速度。由于计算速度快,通过深度图像采集设备可实时采集试穿者的运动状态,并实时调整输出的试穿画面,可实现360度观看穿衣效果。
93、本发明具有以下有益效果:
94、(1)用户个人信息的私密保护
95、本发明通过利用rsa加密算法进行加密和解密,对用户的个人信息进行保护,防止了信息的泄露,同时当所述目标用户再次使用虚拟试衣时,可使用本地私钥对本地数据进行私密访问,提取所述目标用户存储在私密存储区域的信息内容,减少重复输入。
96、(2)自定义的参数化人体建模
98、(3)实时的服装试穿展示
100、(4)多样化的试衣效果展示
101、本发明通过对多种三维场景的建模以及实时采集试穿者的运动状态研究,可以实现多种场景下多种动作的试衣展示,一定程度上增加了试衣的多样性,使得消费者能够更加多角度的观察试衣后的效果以及试穿场景的适配度。