本发明属于互联网技术领域,具体涉及虚拟试衣间的实现方法、终端及介质。
背景技术:
在传统购买衣服过程中,由于客户需要脱掉身上的衣服才能更好的试穿新衣服,这个过程占用了客户大量时间。由于时间和服装资源的限制,有时候几个小时下来都不能买到一件适合自己的衣服。客户试衣的过程也占用了服装商店大量时间和衣服资源,让服装商店损失很多利润。特别是在黄金假期,当用户很多的情况下,服装商店往往拥挤不堪,工作效率低下。同时,由于空间位置的限制,服装商店不能够提供多种多样的服装供用户参考,这也限制了服装商店发展。
技术实现要素:
针对现有技术中的缺陷,本发明提供虚拟试衣间的实现方法、终端及介质,用于解决传统购买衣服过程中,用户试穿新衣服导致购买效率低,操作麻烦的缺陷。
第一方面,一种虚拟试衣间的实现方法,包括以下步骤:
采集用户三维模型,并存储在用户数据库中;
采集商品三维模型,并存储在商品数据库中;
当接收到用户的选择指令时,获取所述选择指令中商品编号,从所述商品数据库中读取所述商品编号对应的商品三维模型;
读取用户数据库中该用户的用户三维模型;
将该商品三维模型以及用户三维模型进行对比,根据所述对比结果生成成像模型;
显示所述成像模型。
优选地,所述采集用户三维模型具体包括:
采集用户输入的用户模型参数;
根据所述用户模型参数和预设的用户模型模板,生成所述用户三维模型;
所述用户模型参数包括以下参数的一种或几种:胸围、肩宽、领围、袖长、腰围、裤长、身长、头围、脚长、脚宽、臀围和肤色。
优选地,所述商品三维模型包括衣服三维模型、鞋子三维模型和帽子三维模型;
所述采集商品三维模型具体包括:
采集商户输入的商品模型参数;
根据所述商品模型参数和预设的商品模型模板,生成所述商品三维模型;
所述商品模型参数包括以下参数的一种或几种:肩宽、胸围、衣长、腰围、臀围、袖长、前裆、后档、大腿围、臂围、袖口、袖围、吊带长、颜色、材质、码数、头围、脚长、脚宽。
优选地,当所述商品三维模型为衣服三维模型时,将该衣服三维模型以及用户三维模型进行对比,根据所述对比结果生成成像模型具体包括:
分别将不同码数的衣服三维模型以及用户三维模型进行对比,得到对比结果;
获取对比结果差异最小的衣服三维模型的码数,根据该码数的衣服三维模型、以及用户三维模型生成所述成像模型。
优选地,所述根据该码数的衣服三维模型、以及用户三维模型生成所述成像模型具体包括:
依次计算衣服三维模型和用户三维模型中同一位置的尺寸差值,所处尺寸差值的计算方法如下:
尺寸差值=商品模型参数值-用户模型参数值;
根据所述尺寸差值调整对应的衣服三维模型,
将调整后的衣服三维模型叠加到所述用户三维模型生成所述成像模型;
所述根据所述尺寸差值调整对应的衣服三维模型具体包括:
如果所述尺寸差值为负数、且该衣服三维模型的材质为弹性时,将衣服三维模型中该位置的尺寸均匀延长等于对应的用户模型参数值;
如果所述尺寸差值为正数,根据所述尺寸差值和位置调整衣服三维模型褶皱程度。
优选地,所述如果所述尺寸差值为正数,根据所述尺寸差值和位置调整衣服三维模型褶皱程度具体包括:
如果肩宽的尺寸差值为正数,将衣服三维模型中肩宽值调整为用户三维模型的肩宽值,根据袖口、袖围和尺寸差值调整衣服三维模型中袖长值;
如果衣长的尺寸差值为正数,且腰围的尺寸差值为0时,增加衣服三维模型中腰围的褶皱程度,使得衣长等于对应的身长。
优选地,所述采集用户三维模型具体包括:
接收用户输入的图像、视频或数据,根据图像、视频或数据建立所述用户三维模型。
优选地,该方法在所述采集用户三维模型,并存储在用户数据库中之前,还包括:
接收用户输入的注册信息,完成注册;
所述注册信息包括用户名和密码。
第二方面,一种终端,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行第一方面所述的方法。
第三方面,一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行第一方面所述的方法。
由上述技术方案可知,本发明提供的虚拟试衣间的实现方法、终端及介质,该方法采集用户身材对应的用户三维模型,以及商品形状对应的商品三维模型。用户在试穿时,可以选择待购买商品的商品三维模型,这样,该方法就能将选择的商品三维模型叠加在用户三维模型上,使得用户可以直观地看到自己穿这件商品的样子,提高用户逛网店的兴趣,减少网络购物因不适合退货的频率,同时解决传统方法购物中,用户进行频繁试穿的麻烦。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。
图1为实施例一提供的虚拟试衣间的实现方法的流程图。
图2为实施例二提供的生成成像模型的方法流程图。
图3为实施例二提供的根据对比结果生成成像模型的方法流程图。
图4为实施例二提供的根据尺寸差值调整衣服三维模型的方法流程图。
图5为实施例二提供的尺寸差值为正数时,调整衣服三维模型褶皱程度的方法流程图。
图6为实施例三提供的终端的模块框图。
具体实施方式
下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。
实施例一:
一种虚拟试衣间的实现方法,参见图1,包括以下步骤:
s1:采集用户三维模型,并存储在用户数据库中;
具体地,所述采集用户三维模型具体包括:
接收用户输入的图像、视频或数据,根据图像、视频或数据建立所述用户三维模型。
这样用户可以提供包含用户身形的图像或视频,该方法对图像或视频进行图像处理和视频处理,获得用户的身形数据。用户也可以直接输入身形数据。该方法根据用户的身形数据建立用户三维模型。一个登录账号只采集一个用户三维模型,由于用户的身形也在随着时间发生变化,所以用户可以对其建立的用户三维模型进行修改。重新输入新的图像、视频或数据,建立新的用户三维模型。
s2:采集商品三维模型,并存储在商品数据库中;
具体地,商品三维模型包括衣服、裤子、鞋子、帽子等商品的三维模型。同上,商品三维模型也可以通过接收商户输入的图像、视频或数据,根据图像、视频或数据建立商品三维模型。一件商品对应一个商品三维模型。
s3:当接收到用户的选择指令时,获取所述选择指令中商品编号,从所述商品数据库中读取所述商品编号对应的商品三维模型;
具体地,用户想要试穿哪件商品时,输入该商品对应的商品编号。选择指令可以是用户通过点击终端触摸屏上某件商品发出,也可以是用户通过输入商品编号得到。每一个商品三维模型对应一个商品编号,该方法通过商品编号可以调取出对应的商品三维模型。
s4:读取用户数据库中该用户的用户三维模型;
具体地,当用户开始试穿时,需要读取该用户的用户三维模型,以及用户选择的商品三维模型。
s5:将该商品三维模型以及用户三维模型进行对比,根据所述对比结果生成;
s6:显示所述成像模型。
具体地,该方法通过对比商品三维模型和用户三维模型,就能知道该商品与用户的身形是否匹配。成像模型即模拟展示了该商品穿戴在用户身上的效果。
该方法采集用户身材对应的用户三维模型,以及商品形状对应的商品三维模型。用户在试穿时,可以选择待购买商品的商品三维模型,这样,该方法就能将选择的商品三维模型叠加在用户三维模型上,使得用户可以直观地看到自己穿这件商品的样子,提高用户逛网店的兴趣,减少网络购物因不适合退货的频率,同时解决传统方法购物中,用户进行频繁试穿的麻烦。
优选地,该方法在所述采集用户三维模型,并存储在用户数据库中之前,还包括:
接收用户输入的注册信息,完成注册;
所述注册信息包括用户名和密码。
具体地,该方法提供用户注册功能,用户通过用户名和密码进行登录,进入试穿功能。
实施例二:
实施例二在实施例一的基础上,增加以下内容:
所述采集用户三维模型具体包括:
采集用户输入的用户模型参数;
根据所述用户模型参数和预设的用户模型模板,生成所述用户三维模型;
所述用户模型参数包括以下参数的一种或几种:胸围、肩宽、领围、袖长、腰围、裤长、身长、头围、脚长、脚宽、臀围和肤色。
具体地,用户的模型参数即用户的身形数据,可以通过对图像或视频分析得到,也可以直接输入。用户的身形数据采用传统方法测量。例如:胸围是指人体胸部外圈的周长,长度可以用寸或厘米表示,胸围还分上胸围和下胸围。肩宽是指在三角肌部位上,上臂向外最突出部位间的横向水平直线距离。传统方法通过绕脖子一周,前面在喉结下方,再放半寸得到衬衫的领围。袖长是指从肩缝到袖口距离。腰围是指的是经脐点的腰部水平围长,是反映脂肪总量和脂肪分布的综合指标。裤长是指从腰部开始测量,一直到差不多脚踝的位置。
优选地,所述商品三维模型包括衣服三维模型、鞋子三维模型和帽子三维模型;
所述采集商品三维模型具体包括:
采集商户输入的商品模型参数;
根据所述商品模型参数和预设的商品模型模板,生成所述商品三维模型;
所述商品模型参数包括以下参数的一种或几种:肩宽、胸围、衣长、腰围、臀围、袖长、前裆、后档、大腿围、臂围、袖口、袖围、吊带长、颜色、材质、码数、头围、脚长、脚宽。
具体地,商户可以根据不同的商品输入不同的商品模型参数。例如:如果是衣服,可以输入肩宽、胸围、衣长、腰围、袖长、臂围、袖口、袖围、吊带长、颜色、材质、码数等。如果是裤子,可以输入臀围、前裆、后档、大腿围、颜色、材质、码数。如果是帽子,可以输入头围、颜色、材质。如果是鞋子可以输入颜色、材质、码数、脚长、脚宽。
除此以外,该实施例给出了以下成像模型的一种生成方法。
参见图2,当所述商品三维模型为衣服三维模型时,将该衣服三维模型以及用户三维模型进行对比,根据所述对比结果生成成像模型具体包括:
s11:分别将不同码数的衣服三维模型以及用户三维模型进行对比,得到对比结果;
s12:获取对比结果差异最小的衣服三维模型的码数,根据该码数的衣服三维模型、以及用户三维模型生成所述成像模型。
具体地,即使是同一款商品,码数不同对应的衣服三维模型不同。该方法通过分别将对用户三维模型与同一款衣服不同码数的衣服三维模型进行对比,获取对比结果差异最小的衣服三维模型,那么该衣服三维模型对应的码数是最适合用户的码数。码数包括xs、s、m、l、xl、xxl、xxxl等。该方法能够获取出该款式的衣服最适合用户的码数,并根据该码数对应的衣服三维模型生成成像模型,使得用户能直接得到该款式最适合的码数,以及该码数对应的衣服的试穿效果。
参见图3,所述根据该码数的衣服三维模型、以及用户三维模型生成所述成像模型具体包括:
s21:依次计算衣服三维模型和用户三维模型中同一位置的尺寸差值,所处尺寸差值的计算方法如下:
尺寸差值=商品模型参数值-用户模型参数值;
具体地,商品模型参数值即为商品三维模型中商品模型参数对应的值,用户模型参数值即为用户三维模型中用户模型参数对应的值。该方法在进行对比时,进行两个三维模型同样位置的尺寸对比,例如:对比用户三维模型中的胸围和衣服三维模型中的胸围的尺寸差异,对比用户三维模型中的肩宽和衣服三维模型中的肩宽的尺寸差异。
s22:根据所述尺寸差值调整对应的衣服三维模型;
s23:将调整后的衣服三维模型叠加到所述用户三维模型生成所述成像模型;
具体地,由于对比结果差异大小会造成用户试穿的效果存在差异。该方法根据尺寸差值调整对应的衣服三维模型,直接将调整后的衣服三维模型叠加到用户三维模型,即得到成像模型。
参见图4,所述根据所述尺寸差值调整对应的衣服三维模型具体包括:
s31:如果所述尺寸差值为负数、且该衣服三维模型的材质为弹性时,将衣服三维模型中该位置的尺寸均匀延长等于对应的用户模型参数值;
具体地,如果尺寸差值为负数说明衣服过小,此时如果该衣服的材质为弹性材料,那么用户在试穿时会造成衣服的拉伸,此时将衣服三维模型中该位置的尺寸均匀延长等于对应的用户模型参数值,即成像的效果就是该衣服均匀拉伸至符合用户身形的效果。
s32:如果所述尺寸差值为正数,根据所述尺寸差值和位置调整衣服三维模型褶皱程度。
具体地,如果尺寸差值为正数说明衣服过大,如果衣服过大,穿在用户身上会出现褶或者是遮挡住用户其他位置,例如:如果腰围合适,但是腰围以上的衣长过长,那么用户穿在身上会在腰围以上出现褶。如果是整体衣长过长,就会导致用户穿在身上会遮挡住臀部甚至大腿等。此时根据尺寸差值的大小或位置调整衣服三维模型褶皱程度。褶皱程度包括一个褶、两个褶或者是多个褶,褶越多说明衣服越长。
参见图5,所述如果所述尺寸差值为正数,根据所述尺寸差值和位置调整衣服三维模型褶皱程度具体包括:
s41:如果肩宽的尺寸差值为正数,将衣服三维模型中肩宽值调整为用户三维模型的肩宽值,根据袖口、袖围和尺寸差值调整衣服三维模型中袖长值;
具体地,如果是衣服的肩宽过大,那么穿在用户身上四,衣服上部分肩部位置就会耷拉下来,形成袖子的部分,此时调整衣服三维模型中肩宽值调整为用户三维模型的肩宽值,并将衣服上肩宽的位置耷拉下来的部分调整至袖子的位置,即袖子会变长,袖子变长的程度根据耷拉下来的部分以及袖口和袖围确定。即衣服三维模型中袖长值等于原袖长值加上耷拉下来的长度,如果调整后的衣服三维模型中某位置的尺寸小于用户三维模型中对应位置的此处,在该位置以上形成褶,此时调整衣服三维模型中该位置的褶皱程度。
s42:如果衣长的尺寸差值为正数,且腰围的尺寸差值为0时,增加衣服三维模型中腰围的褶皱程度,使得衣长等于对应的身长。
如果腰围的尺寸差值为0,说明腰围是合适的,如果腰围以上的衣长过长,增加衣服三维模型中腰围的褶皱程度,整体的衣长等于用户三维模型中对应的身长。
该方法能够根据衣服的大小、材质来调整成像模型,使得试穿效果更接近实际穿着的效果,使用方便。
本发明实施例所提供的方法,为简要描述,实施例部分未提及之处,可参考前述方法实施例中相应内容。
实施例三:
一种终端,参见图6,包括处理801、输入设备802、输出设备803和存储器804,所述处理器801、输入设备802、输出设备803和存储器804相互连接,其中,所述存储器804用于存储计算机程序,所述计算机程序包括程序指令,所述处理器801被配置用于调用所述程序指令,执行上述的方法。
具体实现中,本发明实施例中描述的终端包括但不限于诸如具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的移动电话、膝上型计算机或平板计算机之类的其它便携式设备。还应当理解的是,在某些实施例中,所述设备并非便携式通信设备,而是具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的台式计算机。
在接下来的讨论中,描述了包括显示器和触摸敏感表面的终端。然而,应当理解的是,终端可以包括诸如物理键盘、鼠标和/或控制杆的一个或多个其它物理用户接口设备。
终端支持各种应用程序,例如以下中的一个或多个:绘图应用程序、演示应用程序、文字处理应用程序、网站创建应用程序、盘刻录应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件应用程序、即时消息收发应用程序、锻炼支持应用程序、照片管理应用程序、数码相机应用程序、数字摄影机应用程序、web浏览应用程序、数字音乐播放器应用程序和/或数字视频播放器应用程序。
可以在终端上执行的各种应用程序可以使用诸如触摸敏感表面的至少一个公共物理用户接口设备。可以在应用程序之间和/或相应应用程序内调整和/或改变触摸敏感表面的一个或多个功能以及终端上显示的相应信息。这样,终端的公共物理架构(例如,触摸敏感表面)可以支持具有对用户而言直观且透明的用户界面的各种应用程序。
应当理解,在本发明实施例中,所称处理器801可以是中央处理单元(centralprocessingunit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
输入设备802可以包括触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备803可以包括显示器(lcd等)、扬声器等。
该存储器804可以包括只读存储器和随机存取存储器,并向处理器801提供指令和数据。存储器804的一部分还可以包括非易失性随机存取存储器。例如,存储器804还可以存储设备类型的信息。
本发明实施例所提供的终端,为简要描述,实施例部分未提及之处,可参考前述方法实施例中相应内容。
实施例四:
一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述的方法。
所述计算机可读存储介质可以是前述任一实施例所述的终端的内部存储单元,例如终端的硬盘或内存。所述计算机可读存储介质也可以是所述终端的外部存储设备,例如所述终端上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述计算机可读存储介质还可以既包括所述终端的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述终端所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本发明实施例所提供的介质,为简要描述,实施例部分未提及之处,可参考前述方法实施例中相应内容。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。