CN101493930A - 一种换装方法和换发方法 - Google Patents
一种换装方法和换发方法 Download PDFInfo
- Publication number
- CN101493930A CN101493930A CNA2008100042206A CN200810004220A CN101493930A CN 101493930 A CN101493930 A CN 101493930A CN A2008100042206 A CNA2008100042206 A CN A2008100042206A CN 200810004220 A CN200810004220 A CN 200810004220A CN 101493930 A CN101493930 A CN 101493930A
- Authority
- CN
- China
- Prior art keywords
- clothes
- user
- source
- pixel
- point
- 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.)
- Granted
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种换装方法,包括步骤:获取用户照片、衣服源图和背景图片;扫描用户照片像素点,当像素点在头部区域时,取该像素点像素值给背景图片中对应像素点赋值;调整衣服源图的基准点,使衣服基准点闭合区域面积与用户照片身体基准点闭合区域面积相等;对衣服源图的衣服轮廓点进行引力场变换和坐标偏移,获得用户换装后衣服轮廓点;根据用户换装后的衣服轮廓点闭合区域内像素点,获得在衣服源图中的对应像素点,并获取所述对应像素点的像素值;将用户换装后的衣服轮廓点闭合区域内像素点的像素值赋给背景图片中对应坐标像素点,形成用户换装图。本发明还公开一种换发方法,可以让用户看到自己试穿不同衣服或试剪不同发型后的实际匹配情况。
Description
技术领域
本发明涉及图像技术领域,特别是涉及一种换装方法和换发方法。
背景技术
日常生活中,服饰、发型是人们谈论最多的、最平常的话题。什么样的服装适合自己,什么样的发型更加适合自己,是大家都要面对的问题。目前,对于一件衣服或一个发型,人们需要试穿这件衣服后或试剪过该发型后,进行照镜才知道这件衣服或这个发型跟自己的实际匹配情况,可能出现试穿后或试剪过的衣服或发型不适合的情况,因此,人们进行的实际试穿或实际试剪可能造成时间的浪费。
目前,在一些网站中出现了一些方法(如腾讯网、72变网),可以为一些虚拟的形象或固定的图画模特穿上不同的服装,然后在人们面前显示,从而给人们娱乐的享受,在腾讯网的QQ秀甚至可以替这些虚拟的形象换上不同的发型和背景。
由于这些方法的操作对象都是虚拟的固定的模特,模特的头型、体型都是不变的,而现实生活中,人与人之间是不同的,具有不同的头型、体型,因此,这些方法只是满足人们在网络世界里的娱乐需求,无法显示出不同的人在试穿不同的衣服或试剪不同发型后的实际匹配情况,实用价值很低,无法对人们在现实生活中的换装或换发起指导作用。
发明内容
有鉴于此,本发明解决的问题是提供一种换装方法和换发方法,可以使人们无需进行实际试穿或剪发,就可以看到自己在试穿不同的衣服或试剪不同发型后的实际匹配情况,从而给人们生活带来便利。
为此,本发明提供了一种换装方法,包括以下步骤:
获取用户照片、衣服源图和背景图片;
扫描用户照片像素点,当像素点在头部区域时,取该像素点的像素值给背景图片中的对应像素点赋值,形成背景图片的头部图像;
调整衣服源图的基准点,使衣服基准点闭合区域面积与用户照片身体基准点闭合区域面积相等;
对衣服源图的衣服轮廓点进行引力场变换和坐标偏移,获得用户换装后的衣服轮廓点;
根据用户换装后的衣服轮廓点闭合区域内的像素点,获得在衣服源图中的对应像素点,并获取所述对应像素点的像素值;
将用户换装后的衣服轮廓点闭合区域内像素点的像素值赋给背景图片中对应坐标像素点,形成用户换装图。
优选地,对衣服源图的衣服轮廓点进行引力场变换,获得用户换装后的衣服轮廓点具体为:
选取用户照片的目标基准点和衣服源图的源基准点;
对衣服源图的衣服轮廓点和第i个源基准点的坐标差分别平方求和,获取该衣服轮廓点源像素点到第i个源基准点的距离的平方;
根据所获取的衣服轮廓点到第i个源基准点的距离的倒数,得到第i个源基准点的权值;
将第i个源基准点的权值与该源基准点和第i个目标基准点的坐标差相乘,再用所获得的积与所有源基准点的权值之和相除,并对相除的结果进行求和,获得衣服源图的衣服轮廓点从源引力场变换到目标引力场时的坐标改变量;
根据所述衣服源图的衣服轮廓点从源引力场变换到目标引力场时的坐标改变量,获得用户换装后的衣服轮廓点。
优选地,根据用户换装后的衣服轮廓点闭合区域内的像素点,获得在衣服源图中的对应像素点,并获取所述对应像素点的像素值之后还包括步骤:对所述对应像素点进行坐标插值处理。
优选地,运用以下公式进行坐标插值处理为:
dwPixel=∑Wi·dwPixeli,i=1,2,3,4;
其中,Wi为点i的权值,dwPixeli为点i的像素值,dwPixel为最终形成的变换点的像素值。
优选地,在每两个头部轮廓点坐标值之间通过二次B样条插值的方法,插入三个头部轮廓点坐标值。
优选地,还包括步骤:采用3*3高斯低通滤波模板对用户换装图中头部图像和衣服图像的交界处5*5个像素的区域进行高斯低通滤波处理。
此外,本发明还提供了一种换发方法,包括以下步骤:
获取用户照片、发型源图和背景图片;
扫描用户照片的像素点,当像素点在用户照片的头部区域时,取该像素点的像素值给背景图片中的对应像素点赋值,形成背景图片的头部图像;
调整发型源图的头部基准点,使发型源图的头部区域面积与用户照片中头部区域面积相等;
对发型源图的头部基准点进行引力场变换和坐标偏移,获得用户换发后形成的换发图中头部基准点坐标;
根据用户换发后形成的换发图的头部区域像素点坐标,获得在发型源图中头部区域对应像素点的像素值;
将发型源图头部区域对应像素点的像素值赋给背景图片中具有与用户换发图头部区域内像素点坐标相同的像素点,形成用户换发图。
优选地,用户照片的头部区域通过选择用户照片的眼睛两点来确定。
优选地,根据用户换发后形成的换发图的头部区域像素点坐标,获得发型源图头部区域的对应像素点的像素值之后还包括步骤:对所述对应像素点的像素值进行坐标插值处理。
优选地,所述发型源图的头部基准点为发明源图中人物头部图像两个眼睛的像素点。
优选地,通过所获得的用户换发后形成的换发图中头部基准点坐标,获知用户换发图的头部区域。
通过运用本发明提供的换装方法,在一幅背景图片中生成由用户照片中的用户头部图像和根据用户体型进行变形后的衣服图片中的衣服图像叠加的合成图像,从而使用户看到自己的身体穿着某件种衣服时的真实模样,给人们生活带来便利。
附图说明
图1是本发明提供的换装方法的流程图;
图2是用户换装图中的图像位置偏下时的示意图;
图3是本发明提供的换发方法的流程图。
具体实施方式
为使本领域技术人员更好地理解本发明,下面结合具体实施例对本发明提供的换发方法和换装方法作具体说明。
本发明提供的换装方法的基本思想为:首先根据头部轮廓点将用户的头部图像从照片中取出,然后将用户图片中的身体基准点数据和衣服源图中的衣服基准点形成的区域面积进行比对,根据比值放大、缩小衣服图片,再将衣服图片中的衣服图像进行变形,使衣服图像符合用户的身体轮廓点,将变形后的衣服图像与头部图像相叠加,形成用户换装后的效果图(用户换装图)。
图1是本发明提供的换装方法的一个实施例的流程图,运用本发明提供的换装方法,需要用户事先上传自己的照片,勾画头部轮廓点和身体基准点。同时,还需要提供衣服图片和对应的衣服轮廓点、衣服基准点以及背景图片的上传,事先设定好背景图片。需要用户事先上传自己的照片,勾画头部轮廓点和身体基准点。
用户照片的头部轮廓点、身体基准点以及衣服图片的衣服轮廓点、衣服基准点可以事先人为进行勾画,也可以采用图像识别的方法自动生成。
本发明可以根据用户需要的换装的衣服类型,进行相应照片的上传。例如,用户想试穿上衣时,可以只上传包含上半身的用户照片;需要试穿全身衣服时,则需要用户上传全身照片。
该方法包括以下步骤:
步骤S101:获取用户照片、衣服源图和背景图片。
在本发明中,所述衣服源图为穿着特定款式衣服的虚拟模特的图片,根据上传的用户照片是上半身还是全身,相应采取穿着特定款式衣服的上半身或全身的虚拟模特图片。所述背景图片为空白的、不带图像的图片。
步骤S102:选取用户照片的头部轮廓点,根据头部轮廓点确定头部区域。
头部轮廓点是用户照片中沿着用户头部所取的坐标点。通过用户照片的头部轮廓点可以确定用户照片中用户头部的大小和范围,从而可以根据头部轮廓点将用户的头部图像从用户照片中取出。
步骤S103:扫描用户照片像素点,当像素点在头部区域时,取该像素点的像素值给背景图片中的对应像素点赋值,形成背景图片的头部图像。
基于上述步骤,当扫描出用户照片头部区域的所有像素点时,取该像素点的像素值给背景图片中坐标偏移后的对应像素点赋值,形成形状大小一致的背景图片头部区域,即形成用户的头部图像。
在本步骤中,一般按照从左到右的顺序对用户照片中的所有像素点进行逐行依次扫描。如果一像素点的扫描结果为不在头部区域,则继续扫描下一个像素点。
步骤S104:调整衣服源图基准点,使衣服基准点闭合区域面积与用户照片身体基准点闭合区域面积相等。
步骤S105:对衣服源图的衣服轮廓点进行引力场变换和坐标偏移,获得用户换装后的衣服轮廓点。
上述引力场变换具体为:从衣服源图的衣服基准点形成的源引力场变换到用户照片的身体基准点形成的目标引力场。当从源引力场变换到目标引力场时,在受力的影响下,衣服源图的衣服轮廓点及其他像素点的坐标将发生变动,在这里,鉴于衣服源图经过变形后,其基准点与用户照片的身体基准点相同,本发明定义变化后的衣服轮廓点为用户换装图中的衣服轮廓点。
需要说明的是,本发明借鉴了引力场定义的思想,定义图片中像素由于某点产生的引力场(假定,并非真实存在)将会产生相应的形变。这里,引力场是指某一质点在空间所受引力的场,任何有质量的点都会产生引力场。当图像中的像素点从一个引力场变化到另一个引力场时,图像中像素点的坐标将发生改变,于是图像的形状发生改变(即图像形变)。
因此,当衣服源图所有像素点(源像素点)从衣服基准点形成的源引力场变换到用户照片中用户身体基准点形成的目标引力场时,在目标引力场作用下,像素点的坐标将发生改变,形成新的坐标点。本发明定义新的坐标点为变换点,定义源引力场的基准点为源基准点(即衣服基准点),目标引力场的基准点为目标基准点(即身体基准点)。
需要说明的是,衣服源图的衣服轮廓点进行引力场变换所形成的新的坐标点即为用户换装后的衣服轮廓点。
在本发明中,采用的身体基准点共有8个,分别为颈宽两点、肩宽两点、腰宽两点和胯宽两点,用于标识用户的体型。当然,还可以根据情况调整身体基准点的具体位置。
同样,本发明目前采用的衣服图片的衣服基准点也是8个点,分别为颈宽两点、肩宽两点、腰宽两点和胯宽两点,用于标识衣服的身型,衣服基准点可以根据情况进行调整。当然,衣服包括裤子、帽子、上衣等衣物。在这里,本发明可以用穿着衣服的模特的身体基准点作为衣服源图的衣服基准点。
这里,需要说明的是,身体轮廓点为用户照片中用户的身体区域与背景区域的分隔点,而衣服轮廓点是衣服图片中衣服区域与背景区域的分隔点。
因为衣服轮廓点的引力场变换是根据用户八个基准点进行变形的,所以在变形以后,衣服轮廓点的基准点就是用户八个基准点,从而变形后的衣服图形的衣服基准点中的脖子两点坐标和用户的脖子两点坐标重合,因此,将衣服图像进行相应的坐标偏移后,该衣服图像仍然和头部图像连在一起,衣服图像和头部图像吻合。
本发明提供的换发方法,可以由衣服源图的源引力场中某个源像素点(x,y)坐标获取该点在用户照片的目标引力场形成的变换点(x′y′)坐标,具体运算步骤如下:
首先,对源像素点(x,y)和第i个源基准点(Xi,Yi)的坐标差分别平方求和,获取该源像素点到第i个源基准点的距离di。具体计算公式为:di=(x-Xi)2+(y-Yi)2,i=1,...,8。
根据所获取的源像素点(x,y)到第i个源基准点的距离di值的平方的倒数,获得第i个源基准点(Xi,Yi)的权值。具体计算公式为Wi=1/d2 i,i=1,...,8。那么,源引力场中所有源基准点的权值之和为:SumW=∑Wi,i=1,...,8。
将第i个源基准点(Xi,Yi)的权值与该源基准点(Xi,Yi)和第i个目标基准点(X′i,Y′i)坐标差相乘,所获得的积与所有源基准点的权值之和相除,并对相除的结果进行求和,获得源像素点(x,y)从源引力场变换到目标引力场时的坐标改变量(Δx,Δy),该坐标改变量(即坐标偏移量)的具体计算公式为:
Δx=∑Wi·Δ(Xi-X′i)/SumW,Δy=∑Wi·Δ(Yi-Y′i)/SumW,i=1,...,8。
因此,基于上述计算过程,当源引力场中某个源像素点(x,y)变换到目标引力场时,其在目标引力场的变换点(x′,y′)坐标为源引力场源像素点(x,y)坐标与坐标改变量(Δx,Δy)之和,即为x′=x+Δx,y′=y+Δy。
可以理解的是,衣服源图的衣服轮廓点作为衣服源图的像素点,自然可以运用以上步骤获得在用户照片的目标引力场中形成的变换点,即用户换装后的衣服轮廓点。
步骤S106:根据用户换装后的衣服轮廓点闭合区域内的像素点,获得衣服源图中衣服轮廓点闭合区域的对应像素点。
根据如上所述的运算步骤,可以由用户换装后的衣服轮廓点闭合区域内的像素点获得衣服源图中衣服轮廓点闭合区域的对应像素点。
步骤S107:将对应像素点的像素值赋给用户换装后的衣服轮廓点闭合区域内的像素点。
步骤S108:将用户换装后的衣服轮廓点闭合区域内像素点的像素值赋给背景图片中对应坐标像素点,形成用户换装图。
本步骤也就是实现将用户换装后的衣服轮廓点闭合区域内像素点的像素值映射到背景图片中对应坐标像素点。
为了使最后形成的用户换装图中的图像水平居中显示,本发明还可以求出整体图像的坐标偏移值。通过求取整体图像的坐标偏移值,对用户换装图中的图像进行整体偏移,从而使最后形成的用户换装图中的图像在水平居中且在竖直方向尽量显示完全。
为了使最后形成的用户换装图中的图像水平居中显示,需要对用户换装图中的图像进行水平偏移。具体图像的水平偏移量dx通过以下公式获得:
dx=(width-|x1-x0|)/2-x0;
其中,dx:x坐标(横坐标)的偏移量;
x0:用户八个基准点中的脖子左边点的横坐标;
x1:用户八个基准点中的脖子右边点的横坐标;
width:背景图的宽度。
同时,由于有些用户照片中人物图像的位置偏下,从而根据步骤S105进行引力场变换和坐标偏移后,所形成的图像也位置偏下,为了避免这种情况的出现,需要对用户换装图中的图像进行竖直偏移,
为了使用户换装图中的图像在竖直方向上能够显示完全,需要对图像在竖直方向上进行移动。
在步骤S105对衣服轮廓点进行了引力场变换后,找出最低点,判断该点是否超出了衣服图片的范围,如果没有超出,则不进行竖直方向的位移。如果超出衣服图片范围,则求出衣服轮廓点的最低点与衣服图片底端的距离L1,为了保证图像向上移动不超出衣服图片的顶部,需要求出头部图像中头部轮廓点的最高点与衣服图片顶端的距离L2,参见图2,因此,为了更好地显示图像,本发明将最后形成的用户换装图中的图像在竖直方向上的位移量取距离L1、L2中的最小值,即为min{L1,L2}。
当然,如果L1>L2,那么由于图像不能完全上移,因此换装图中的图像不能显示完全。
经过上述步骤,背景图片上可以实现用户照片的头部图像和衣服源图中衣服图像的叠加。鉴于衣服图像和头部图像会出现重叠,可以在背景图片中先画头部图像,再画衣服图像,从而在背景图片上形成用户换上衣服的效果图。
本发明提供的换装方法直接对位图数据进行操作,即通过对位图文件头、位图信息头、位图图像数据的访问,在背景图像写入从衣服图片、用户照片中得到的数据,获得用户换装图。
鉴于在图像发生形变时(如进行步骤S104或S105的处理操作时),由源引力场源像素点坐标计算得到的目标引力场变换点坐标可能不是整型的,因此需要做插值处理,以提高图像的显示效果。
插值处理过程同样使用引力场概念,优选为根据所求点周围四个像点的像素值进行插值计算,通过以下公式计算得出该点值:
dwPixel=∑Wi·dwPixeli;i=1,2,3,4;
其中,Wi为点i的权值,在这里因为权值对效果的影响并不太大,故而每个点的权值相同,都为1/4,dwPixeli为点i的像素值,dwPixel为最终形成的变换点的像素值。
此外,鉴于用户勾画的头部轮廓点,形成的闭合区域可能会有棱角,本发明可以通过在头部轮廓点和身体轮廓点中,在每两个头部轮廓点的坐标值之间通过二次B样条插值的方法,插入三个头部轮廓点的坐标值,以此来达到平滑头部轮廓的目的。
为了使用户换装图中头部图像和衣服图像的相交处不过于生硬,可以采用3*3高斯低通滤波模板对这两个图像交界处5*5个像素的区域进行平滑处理。即要对交界处5*5个像素进行高斯低通滤波处理。3*3高斯低通滤波模板为:
头部图像和衣服图像相交处的高斯低通滤波处理公式为:
dwPixelij=(1/16)·dwPixeli-1,j-1+(2/16)·dwPixeli-1,j+(1/16)·dwPixeli-1,j+1+(2/16)·dwPixeli,j-1+(4/16)·dwPxeli,j+(2/16)·dwPixeli,j+1+(1/16)·dwPixeli+1,j-1)+(2/16)·dwPixeli+1,j+(1/16)·dwPixeli+1,j+1。
公式中,dwpixeli,j为第i行第j列的像素值。
需要说明的是,从用户照片中取出头部区域内的像素点时,为了使截取出来的头部图像不会显得偏黑,可以将头部区域内的所仍像素点的亮度提高20个单位。
本发明还提供了一种换发方法,其基本原理为:对用户头部照片进行放大、缩小定位,然后将发型照片根据用户照片的位置,去掉白色背景后,替代用户照片上的相应像数点,形成最终效果图。
本发明还提供了一种换发方法,参见图3,该方法包括以下步骤:
步骤S301:获取用户照片、发型源图和背景图片。
在本发明中,所述发型源图为带有特定造型的头发(如发套)的虚拟模特的头部图片。所述背景图片为空白的、不带图像的图片。
步骤S302:选取用户照片的头部基准点,根据头部基准点确定用户的头部区域;
本发明的换发方法所采用的头部基准点为用户的眼睛两点,步骤S302具体为:选取用户照片的眼睛两点,根据眼睛两点与用户头顶的高度以及眼睛两点之间的距离确定用户头部区域。
需要说明的是,本发明中,眼睛两点为在用户照片中用户眼睛的像素点。一般情况下,人脸具有一些共同特征,例如为:两眼距离头顶的高度为头部整体高度的三分之一,两眼瞳孔之间的距离为头部宽度的二分之一,所以,根据用户照片中两眼距离头顶的高度可以获知用户照片中头部的整体高度,该头部的整体高度即为用户照片中眼睛两点距离用户头顶高度的三倍;根据用户照片中两眼之间的距离可以获知用户照片中头部的宽度,该头部宽度即为用户照片中两眼之间距离的二倍。因此,本发明通过用户照片的眼睛两点即可以确定出用户照片中用户头部的大小和范围,从而将用户的头部图像(包括肩膀部分在内)从用户照片中取出。
步骤S303:扫描用户照片的像素点,当像素点在头部区域时,取该像素点的像素值给背景图片中的对应像素点赋值,形成背景图片的头部图像。
基于上述步骤,当扫描出用户照片头部区域的所有像素点时,在背景图片中会形成与用户照片头部区域位置相同、形状大小一致的背景图片头部区域,即形成用户的头部图像。
在本步骤中,一般从左到右对用户照片中的像素点进行逐行扫描。如果一像素点的扫描结果为不在头部区域,则继续扫描下一个像素点。
为了使用户换发的效果图居中显示,本发明还将将背景图片的头部图像平移,使其水平居中显示。
步骤S304:调整发型源图的头部基准点,使发型源图中的头部区域面积与用户照片中头部区域面积相等;
所述发型源图的头部基准点为发明源图中人物(如模特)头部图像的两个眼睛的像素点。
鉴于通过发型源图的头部基准点可以获知发型源图中模特头部的宽度以及高度,发型源图中的头部区域面积可以通过发型源图的基准点获知,在本发明中,即等于发型源图中模特头部的宽度和高度之积。
在本发明中,用户照片中头部区域面积等于用户照片中头部高度与头部宽度之积。
步骤S305:对发型源图的头部基准点进行引力场变换和坐标偏移,获得用户换发后形成的换发图中头部基准点坐标。
所述用户换发后形成的换发图为运用本发明提供的换发方法最后所形成的图片,该图片形成后通过图像显示装置(如计算机显示器)呈现在使用本发明的用户眼前。
即对发型源图中虚拟模特的眼睛两点进行引力场变换和坐标偏移,获得用户换发后形成的换发图中眼睛两点的坐标。
上述引力场变换具体为:从发型源图的头部基准点形成的源引力场变换到用户照片头部基准点(即眼睛两点)形成的目标引力场。当从源引力场变换到目标引力场时,在受力的影响下,发型源图的头部基准点及其他像素点的坐标将发生变动,在这里,定义变化后的头部基准点为用户换发后所形成的用户换发图中的头部基准点。
需要说明的是,本发明借鉴了引力场定义的思想,定义图片中像素由于某点产生的引力场(假定,并非真实存在)将会产生相应的形变。这里,引力场是指某一质点在空间所受引力的场,任何有质量的点都会产生引力场。当图像中的像素点从一个引力场变化到另一个引力场时,图像中像素点的坐标将发生改变。
因此,当发型源图所有像素点(源像素点)从头部基准点形成的源引力场变换到用户照片中的头部基准点形成的目标引力场时,在目标引力场作用下,像素点的坐标将发生改变,形成新的坐标点。本发明定义新的坐标点为变换点,定义源引力场的基准点为源基准点(发型源图中虚拟模特的头部基准点),目标引力场的基准点为目标基准点(即用户照片中用户的头部基准点)。
需要说明的是,发型源图的头部基准点(虚拟模特的眼睛两点)进行引力场变换所形成的新的坐标点即为用户换发后所形成的用户换发图中用户的头部基准点(眼睛两点)的坐标点。
用户照片的眼睛两点以及发型源图的眼睛两点可以事先人为进行勾画,也可以采用图像识别的方法自动生成。
在本发明中,发型源图以及用户照片中所采用的用于定位的头部基准点为该图片中的虚拟模特或该用户的眼睛两点。
运用本发明提供的换发方法,可以由发型源图的源引力场中某个源像素点(x,y)坐标获取该点在用户照片的目标引力场中形成的变换点(x′,y′)坐标,具体运算步骤参照本发明提供的换装方法的描述。
通过上述引力场变换以及进行坐标偏移的图像处理步骤,发型源图的头部基准点(即虚拟模特的眼睛两点)作为发型源图的像素点,可以获得在用户照片目标引力场中形成的变换点,即用户换发后形成的用户换发图中的头部基准点。
步骤S306:根据用户换发后形成的用户换发图的头部区域中像素点的坐标,获得在发型源图中头部区域的对应像素点坐标。
当确定用户换发图的头部区域中头部基准点的坐标后,可以确定用户换发图的头部区域,从而获知该头部区域内所有像素点的坐标。
根据如上所述的运算步骤的逆过程,可以由用户换发后形成的用户换发图的头部区域中像素点的坐标获得发型源图中头部区域的对应像素点坐标。
步骤S307:将对应像素点具有的像素值赋值给背景图片中具有与用户换发图头部区域内像素点坐标相同的像素点,形成用户换发图。
如上所述,由于可以获知用户换发图的头部区域中头部基准点的坐标,所以可以获知用户换发图的头部区域所有像素点坐标,于是,可以通过将对应像素点的像素赋值给空白的背景图片中与用户换发图的头部区域所有像素点坐标相同的像素点,形成最后的用户换发图。
经过上述步骤,本发明在空白的背景图片上最终可以形成用户换发后的实际效果图(即用户换发图)。
需要说明的是,引力场变换时,为了获得在目标引力场中的变换点,本发明提供的换发方法所采用的运算步骤与上述换装方法采用的运算步骤相同。
因为在图像发生形变时(如进行步骤S304或S306处理操作时),由源像素点计算可以得到的变换点坐标可能不是整型的,因此需要做插值处理,以提高图像的显示效果。
插值处理过程同样使用引力场概念,优选为根据所求点周围四个像点的像素值进行插值计算,通过以下公式计算得出该点值:
dwPixel=∑Wi·dwPixeli;i=1,2,3,4;
其中,Wi为点i的权值,在这里因为权值对效果的影响并不太大,故而每个点的权值相同,都为1/4,dwPixeli为点i的像素值,dwPixel为最终形成的变换点的像素值。
为了平滑照片轮廓,本发明提供的换发方法可以在进行图片叠加时,在每两个像素点之间可以通过二次B样条插值的方法,插入三个点,以此来达到平滑照片轮廓的目的。
以上所述仅是本发明的优选实施方式,并不用以限制本发明。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干修改,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1、一种换装方法,其特征在于,包括以下步骤:
获取用户照片、衣服源图和背景图片;
扫描用户照片像素点,当像素点在头部区域时,取该像素点的像素值给背景图片中的对应像素点赋值,形成背景图片的头部图像;
调整衣服源图的基准点,使衣服基准点闭合区域面积与用户照片身体基准点闭合区域面积相等;
对衣服源图的衣服轮廓点进行引力场变换和坐标偏移,获得用户换装后的衣服轮廓点;
根据用户换装后的衣服轮廓点闭合区域内的像素点,获得在衣服源图中的对应像素点,并获取所述对应像素点的像素值;
将用户换装后的衣服轮廓点闭合区域内像素点的像素值赋给背景图片中对应坐标像素点,形成用户换装图。
2、如权利要求1所述的方法,其特征在于,对衣服源图的衣服轮廓点进行引力场变换,获得用户换装后的衣服轮廓点具体为:
选取用户照片的目标基准点和衣服源图的源基准点;
对衣服源图的衣服轮廓点和第i个源基准点的坐标差分别平方求和,获取该衣服轮廓点源像素点到第i个源基准点的距离的平方;
根据所获取的衣服轮廓点到第i个源基准点的距离的倒数,得到第i个源基准点的权值;
将第i个源基准点的权值与该源基准点和第i个目标基准点的坐标差相乘,再用所获得的积与所有源基准点的权值之和相除,并对相除的结果进行求和,获得衣服源图的衣服轮廓点从源引力场变换到目标引力场时的坐标改变量;
根据所述衣服源图的衣服轮廓点从源引力场变换到目标引力场时的坐标改变量,获得用户换装后的衣服轮廓点。
3、如权利要求1或2所述的方法,其特征在于,根据用户换装后的衣服轮廓点闭合区域内的像素点,获得在衣服源图中的对应像素点,并获取所述对应像素点的像素值之后还包括步骤:对所述对应像素点进行坐标插值处理。
4、如权利要求3所述的方法,其特征在于,运用以下公式进行坐标插值处理为:
dwPixel=∑Wi·dwPixeli,i=1,2,3,4;
其中,Wi为点i的权值,dwPixeli为点i的像素值,dwPixel为最终形成的变换点的像素值。
5、如权利要求1或2所述的方法,其特征在于,在每两个头部轮廓点坐标值之间通过二次B样条插值的方法,插入三个头部轮廓点坐标值。
6、如权利要求1或2所述的方法,其特征在于,还包括步骤:采用3*3高斯低通滤波模板对用户换装图中头部图像和衣服图像的交界处5*5个像素的区域进行高斯低通滤波处理。
7、一种换发方法,其特征在于,包括以下步骤:
获取用户照片、发型源图和背景图片;
扫描用户照片的像素点,当像素点在用户照片的头部区域时,取该像素点的像素值给背景图片中的对应像素点赋值,形成背景图片的头部图像;
调整发型源图的头部基准点,使发型源图的头部区域面积与用户照片中头部区域面积相等;
对发型源图的头部基准点进行引力场变换和坐标偏移,获得用户换发后形成的换发图中头部基准点坐标;
根据用户换发后形成的换发图的头部区域像素点坐标,获得在发型源图中头部区域对应像素点的像素值;
将发型源图头部区域对应像素点的像素值赋给背景图片中具有与用户换发图头部区域内像素点坐标相同的像素点,形成用户换发图。
8、如权利要求7所述的方法,其特征在于,用户照片的头部区域通过选择用户照片的眼睛两点来确定。
9、如权利要求7或8所述的方法,其特征在于,根据用户换发后形成的换发图的头部区域像素点坐标,获得发型源图头部区域的对应像素点的像素值之后还包括步骤:对所述对应像素点的像素值进行坐标插值处理。
10、如权利要求7所述的方法,其特征在于,所述发型源图的头部基准点为发明源图中人物头部图像两个眼睛的像素点。
11、如权利要求7所述的方法,其特征在于,通过所获得的用户换发后形成的换发图中头部基准点坐标,获知用户换发图的头部区域。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100042206A CN101493930B (zh) | 2008-01-21 | 2008-01-21 | 一种换装方法和换发方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100042206A CN101493930B (zh) | 2008-01-21 | 2008-01-21 | 一种换装方法和换发方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101493930A true CN101493930A (zh) | 2009-07-29 |
CN101493930B CN101493930B (zh) | 2012-07-04 |
Family
ID=40924515
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008100042206A Active CN101493930B (zh) | 2008-01-21 | 2008-01-21 | 一种换装方法和换发方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101493930B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314709A (zh) * | 2011-08-31 | 2012-01-11 | 深圳市美丽同盟科技有限公司 | 三维虚拟试穿中服饰与人体模型的匹配方法及装置 |
CN103065360A (zh) * | 2013-01-16 | 2013-04-24 | 重庆绿色智能技术研究院 | 一种发型效果图的生成方法及系统 |
CN103198461A (zh) * | 2011-11-08 | 2013-07-10 | 索尼公司 | 图像处理设备、图像处理方法和程序 |
WO2015188767A1 (zh) * | 2014-06-13 | 2015-12-17 | 北京京东尚科信息技术有限公司 | 一种获取衣服图像属性点的方法和装置 |
CN105334963A (zh) * | 2015-10-29 | 2016-02-17 | 广州华多网络科技有限公司 | 一种虚拟物品展示方法及系统 |
CN106933439A (zh) * | 2015-12-29 | 2017-07-07 | 腾讯科技(深圳)有限公司 | 一种基于社交平台的图片处理方法及系统 |
CN107590810A (zh) * | 2017-09-22 | 2018-01-16 | 北京奇虎科技有限公司 | 实现双重曝光的视频数据处理方法及装置、计算设备 |
CN107665482A (zh) * | 2017-09-22 | 2018-02-06 | 北京奇虎科技有限公司 | 实现双重曝光的视频数据实时处理方法及装置、计算设备 |
CN107705279A (zh) * | 2017-09-22 | 2018-02-16 | 北京奇虎科技有限公司 | 实现双重曝光的图像数据实时处理方法及装置、计算设备 |
CN108596702A (zh) * | 2018-03-15 | 2018-09-28 | 深圳市纯彩家居饰品有限公司 | 一种搭配效果的显示方法、系统及终端设备 |
CN114565505A (zh) * | 2022-01-17 | 2022-05-31 | 北京新氧科技有限公司 | 基于虚拟换装的服装变形方法、装置、设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2603445B2 (ja) * | 1994-11-10 | 1997-04-23 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 髪画像適合方法及びコンピュータ・システム |
CN1553397A (zh) * | 2003-06-06 | 2004-12-08 | 翟志东 | 一种智能试衣系统 |
CN1632832A (zh) * | 2003-12-24 | 2005-06-29 | 毛新 | 在本人图像上进行网络试衣 |
-
2008
- 2008-01-21 CN CN2008100042206A patent/CN101493930B/zh active Active
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314709A (zh) * | 2011-08-31 | 2012-01-11 | 深圳市美丽同盟科技有限公司 | 三维虚拟试穿中服饰与人体模型的匹配方法及装置 |
CN103198461B (zh) * | 2011-11-08 | 2017-12-19 | 索尼公司 | 图像处理设备、图像处理方法和程序 |
CN103198461A (zh) * | 2011-11-08 | 2013-07-10 | 索尼公司 | 图像处理设备、图像处理方法和程序 |
CN103065360A (zh) * | 2013-01-16 | 2013-04-24 | 重庆绿色智能技术研究院 | 一种发型效果图的生成方法及系统 |
CN103065360B (zh) * | 2013-01-16 | 2016-08-24 | 中国科学院重庆绿色智能技术研究院 | 一种发型效果图的生成方法及系统 |
WO2015188767A1 (zh) * | 2014-06-13 | 2015-12-17 | 北京京东尚科信息技术有限公司 | 一种获取衣服图像属性点的方法和装置 |
US10095952B2 (en) | 2014-06-13 | 2018-10-09 | Beijing Jingdong Shangke Information Technology Co., Ltd. | Method and device for acquiring clothing image attribute points |
CN105334963A (zh) * | 2015-10-29 | 2016-02-17 | 广州华多网络科技有限公司 | 一种虚拟物品展示方法及系统 |
CN105334963B (zh) * | 2015-10-29 | 2018-11-20 | 广州华多网络科技有限公司 | 一种虚拟物品展示方法及系统 |
CN106933439A (zh) * | 2015-12-29 | 2017-07-07 | 腾讯科技(深圳)有限公司 | 一种基于社交平台的图片处理方法及系统 |
CN107590810A (zh) * | 2017-09-22 | 2018-01-16 | 北京奇虎科技有限公司 | 实现双重曝光的视频数据处理方法及装置、计算设备 |
CN107665482A (zh) * | 2017-09-22 | 2018-02-06 | 北京奇虎科技有限公司 | 实现双重曝光的视频数据实时处理方法及装置、计算设备 |
CN107705279A (zh) * | 2017-09-22 | 2018-02-16 | 北京奇虎科技有限公司 | 实现双重曝光的图像数据实时处理方法及装置、计算设备 |
CN107665482B (zh) * | 2017-09-22 | 2021-07-23 | 北京奇虎科技有限公司 | 实现双重曝光的视频数据实时处理方法及装置、计算设备 |
CN108596702A (zh) * | 2018-03-15 | 2018-09-28 | 深圳市纯彩家居饰品有限公司 | 一种搭配效果的显示方法、系统及终端设备 |
CN114565505A (zh) * | 2022-01-17 | 2022-05-31 | 北京新氧科技有限公司 | 基于虚拟换装的服装变形方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN101493930B (zh) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101493930B (zh) | 一种换装方法和换发方法 | |
US10991110B2 (en) | Methods and systems to modify a two dimensional facial image to increase dimensional depth and generate a facial image that appears three dimensional | |
CN105354876B (zh) | 一种基于移动终端的实时立体试衣方法 | |
CN102419868B (zh) | 基于3d头发模板进行3d头发建模的设备和方法 | |
JP5632100B2 (ja) | 表情出力装置及び表情出力方法 | |
CN1045129C (zh) | 个人识别装置 | |
CN106920146B (zh) | 基于体感特征参数提取的立体试衣方法 | |
CN109788808B (zh) | 身体增强服装和服装设计 | |
JP2019510297A (ja) | ユーザの真実の人体モデルへの仮想的な試着 | |
CN106919906B (zh) | 一种图像互动方法及互动装置 | |
CN109035413B (zh) | 一种图像变形的虚拟试穿方法及系统 | |
KR100327541B1 (ko) | 3차원 얼굴 모델링 시스템 및 모델링 방법 | |
CN108140105A (zh) | 具有脸部表情检测能力的头戴式显示器 | |
JPH07168875A (ja) | 眼鏡形状デザイン設計システム | |
CN109801379A (zh) | 通用的增强现实眼镜及其标定方法 | |
CN108876881A (zh) | 基于Kinect的体型自适应三维虚拟人体模型构建方法及动画系统 | |
CN109389682A (zh) | 一种三维人脸模型自动调整方法 | |
CN101324961A (zh) | 计算机虚拟世界中人脸部三维贴图方法 | |
CN108513089A (zh) | 群组视频会话的方法及装置 | |
CN106652037B (zh) | 一种人脸贴图处理方法及装置 | |
CN107610202A (zh) | 基于人脸图像替换的营销方法、设备及存储介质 | |
CN107945285A (zh) | 一种三维模型换贴图和变形方法 | |
US20210182443A1 (en) | Breast Shape and Upper Torso Enhancement Tool | |
US20180168256A1 (en) | Body-perception enhancing striped garment and systems and methods for creation thereof | |
KR20170103364A (ko) | 3d 볼륨 마스크 모델정보 생성 장치 및 그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |