徐雪丽
(延安大学 数学与计算机科学学院,陕西 延安 716000)
基于Android平台的虚拟试衣关键技术研究
徐雪丽
(延安大学 数学与计算机科学学院,陕西 延安 716000)
为了突破时间与空间的限制,达到服装实体店试衣的逼真效果,提出一种基于实例驱动的虚拟试衣方法.首先根据角点检测方法自动获取人体关键尺寸;然后根据实例检索算法获取与客户体形最接近的模特试衣效果;再使用移植配准与肤色融合实现头像移植;最后在Android平台上实现初步的系统模型.为提高网上服装交易的成功率与扩展服装的款式奠定了良好的基础.
边缘检测,角点检测,实例驱动,虚拟试衣,Android平台
随着电子商务技术的蓬勃发展,Internet逐渐成为服装业一个引人注目的销售渠道.但是,服装的自身特点决定了其无法用规格、文字以及照片等方式准确地将主要特征信息描述清楚,因此消费者很难根据网上提供的图片和文字描述等信息来判断想要购买服装的合体性及舒适性等.如何解决虚拟试衣的真实感、个性化、实时性等问题成为服装相关研究领域的一个核心问题,也是突破服装电子商务发展瓶颈的一个关键问题.而Android[1]平台的广泛应用为服装业的进一步发展提供了新机遇.因此,我们提出开发一个基于Android平台的虚拟试衣系统.
较传统试衣方式而言,虚拟试衣可以为选购服装的客户提供更加快捷有效的服务.用户通过浏览服装,挑选自己感兴趣的服装进行试穿,最终查看试衣效果.其基本原理是:系统以用户体形的关键尺寸值(如:胸围、腰围、臀围等)为基础,采用实例检索算法检索出与客户体形最接近的模特试衣实例,之后进行头像移植,使试衣效果的逼真程度最大化.关键技术主要包括:①获取关键尺寸:在获取关键尺寸的过程中可选用两种方式:一种是用户直接录入关键尺寸信息,另一种是系统依据用户输入的正、侧面照片与身高值,采用图像处理技术自动获取关键尺寸数据;②检索相似实例:采用实例检索算法实现最相似实例检索;③头像移植:使用移植配准与肤色融合技术,将试衣实例中的模特头像替换为用户自己的头像,完成头像移植.最终实现试衣效果的真实性展示.
3.1人体特征尺寸提取与测量
人体测量是实现服装虚拟试穿的基本前提与重要基础.迄今为止,人体测量方法主要有传统测量、三维测量、二维测量三类.综合分析虚拟试衣系统在成本、时间和便捷程度等方面的影响,采用对满足一定条件的照片,使用自动提取人体特征尺寸信息的非接触式二维人体测量方法——基于Harris角点的人体特征尺寸提取与测量,实现人体关键尺寸信息的获取.
3.1.1Harris角点检测原理
图1 角点描述
角点是指图像中梯度变化很大或者亮度变化剧烈的像素点,它表征着图像局部变化的特征,如图1c)所示.检测原理:Harris[2]角点检测算法是一种基于信号的点特征提取算子,其原理是将所处理的图像窗口w(一般为矩形区域)向任意方向移动微小位移(x,y),计算其灰度改变量,之后对图像求卷积.Harris特征点为局部区域最大值,具体内容参见文献[3].当某个像素点的Harris响应值大于设定阈值时,即认为该点为角点.
图2 技术路线图
图3 实例推理机制
3.1.2技术路线
人体关键尺寸测量的技术路线如图2所示.使用Harris角点检测方法获取关键尺寸点后,根据人体关键尺寸与身高的比例关系(如公式(1)所示),即可确定关键尺寸信息.
(1)
3.2基于实例驱动的虚拟试衣机制
实例推理机制是以获取的用户关键尺寸作为输入,使用实例检索方法,输出最符合顾客体形特征的模特服装展示实例.实例推理机制原理如图3所示.
3.2.1实例库的建立
试衣实例采集过程中,根据人体关键尺寸的定义[4],对每一款服装的不同尺码进行分别采集.对同一款服装,对不同体形的试衣模特试穿效果进行多角度图像采集,建立服装展示实例库.
3.2.2实例检索算法设计
两个对象的相似度表现为对象之间绝对差值的大小,即对象之间的距离.其相似度通过距离函数将值域限制在0到1之间.相似度为0,两个对象的特征完全不同;相似度为1,特征完全相同.数值x,y之间相似度计算公式定义为:
(2)
式中x,y∈[α,β],α为x、y取值的下限,β为x、y取值的上限.当两个对象X、Y分别有多个属性时,需要进行复合相似度计算.复合相似度计算公式为:
(3)
式中的ωi表示对象X,Y的第i个属性对相似度的影响程度,即权重.
通过计算用户与各相似实例之间的复合相似度,选取复合相似度最大的实例作为用户试衣的建议解.
图4 头像移植原理
3.3头像移植
通过基于实例驱动的虚拟试衣机制,可以得到与客户体形最相似的模特试衣效果.为了使虚拟试衣效果的真实程度最大化,需要进行头像移植,其原理如图4所示.
3.3.1图像分割
图像分割可将头部与身体部分分离,这是头像移植与肤色融合的基础.图像采集过程中以白墙为背景,这为简化处理过程提供了优越的条件.通过采用Harris角点检测方法,依据颈部高度与身高的比例关系,实现头像与身体部分的分割.前面已经论述了Harris角点检测的原理及实现方法,这里不再赘述.
3.3.2头像移植配准
通过提取头部图像和身体图像的部分基准点,根据空间变换关系所需参数S(缩放参数)和T(旋转参数),实现图像移植配准.基于初始图像采集要求比较严格,而且非正面图像对面部影响较小,故该文只针对正面图像进行头像变换,因此在头像移植过程中只需确定缩放系数S.
图像缩放是指图像大小按照指定的比率放大或者缩小.假设图像的x轴方向缩放比率Sx,y轴方向缩放比率Sy,缩放变换公式如为:
(4)
针对使用缩放公式计算得到的目标图像中,某些映射源的坐标可能不是整数,我们采用最近邻插值法确定对应像素的位置.
3.3.3图像融合
经过头像移植配准,用户头部与模特身体部分实现了初步的特征匹配.但是,由于用户与模特的图像来源不尽相同,肤色难免会有差异,所以需要进行图像融合.图像融合主要包括皮肤检测与肤色迁移.该文采用颜色空间转换方法实现快速准确地检测皮肤区域,将图像从RGB颜色空间转换到YCrCb空间,根据皮肤部分所在子空间实现检测;肤色迁移主要根据颜色的空间变化(RGB颜色空间→LMS颜色空间→LMS对数空间→颜色空间)及其逆变换(转换回RGB颜色空间)来实现,具体内容参见文献[5].至此,颜色迁移工作完成.
图5 系统结构设计
系统结构设计如图5所示.分为客户端与服务端两部分.客户端主要包括上传用户正侧面照片及身高信息、基本服装信息以及虚拟试衣的效果展示;服务端主要包括采用图像处理技术自动获取人体关键尺寸并从实例库中检索与客户体形最接近的模特试衣实例.
本系统是在Android平台上进行设计开发的,由于它是一个开放源代码式的操作系统,且多媒体处理功能强大,成为目前发展最快、最具市场前景的手机操作系统,截止2013年底,Android系统占有79%的全国智能手机市场份额.因此,选择Android系统开发虚拟试衣更为合适,也可以突破时间与空间的局限性.
Android[6]的应用程序开发需要用到许多工具,包括编译器、调试器、模拟器等.因此,搭建一个良好的开发环境是进行系统开发的前提.首先,需要下载AndroidSDK、JavaJDK、Eclipse、EclipseADT插件.其次安装JDK并配置好JDK的环境变量;然后安装AndroidSDK和EclipseADT插件,打开SDKManager下载所需要的Android系统平台文件;最后配置Eclipse下的AndroidSDK和JDK的安装路径.另外,关于在Android平台上如何使用Matlab,主要通过使用Matlab工作界面中的deploytool发布工具,将Matlab中的m文件压缩整合成可以在Android平台上使用的jar包.其中,m文件以函数的形式提供切入口,在Java中以接口调用的方式引入其功能.
实验通过上传正侧面照片以及身高值,系统自动获取的人体关键尺寸信息结果如表1所示.在该文中,身高值为参考值,由用户手动输入,因此身高没有实验值、绝对误差或相对误差数据.从实际测量数据看出,该文测量结果的误差控制在10mm以内,相对误差控制在4%以内.测量结果产生的误差较小,实验值和实际值之间无显著性差异.说明该文所选算法对特征点位置的提取是比较准确的.
表1 人体关键特征尺寸提取结果
由于该文主要是研究技术的可行性,因此在实验过程中只针对一款服装进行试衣采集与实验,相似实例检索结果如表2所示.通过比较得知,1号实例与问题实例的相似度最大,故1号试衣实例的效果展示即可作为问题实例的建议解.
表2 人体关键尺寸相似度 (%)
在基于现有三维虚拟试衣的时效性差以及二维虚拟试衣的真实感有待提高的背景下,使用了基于实例驱动的方法进行虚拟试衣.系统通过自动测量获取的人体关键尺寸信息作为输入,使用实例推理机制,检索出与客户体形最接近的模特试衣实例,实现了将颈部以下近似为用户体形进行试衣的效果.为了使试衣效果的逼真程度最大化,进行头像移植,这从某种角度上实现了真正的用户试衣体验.该系统可以有效地解决三维虚拟试衣时效性差以及二维虚拟试衣真实性不强的问题,在虚拟试衣技术领域具有重要的研究意义.
[1]杨丰盛.Android应用开发揭秘[M].北京:机械工业出版社,2010.
[2]HARRISC,STEPHENSM.Acombinedcornerandedgedetector[C].Manchester:theUniversityofSheffieldPrintingUnit,1988:147-151.
[3]李健,徐雪丽.基于Harris角点检测的人体特征提取与测量[J].计算机测量与控制,2014,22(2):367-369.
[4]吴汝康,吴新科,张振标.人体测量方法[M].北京:科学出版社,1984.
[5]TAREKM,MAHMOUD.Anewfastskincolordetectiontechnique[C].InWorldAcademyofScience,EngineeringandTechnology,2008:89-92.
[6]倪红军,钱昌俊.基于Android平台的自发短信系统设计与实现[J].电子技术应用,2012,38(12):126-129.
[7]彭培林.基于实例的装配协调方案设计技术研究[D].西安:西北工业大学,2005.
[8]骆敏舟,周美立.实例推理检索中相似度量方法的研究[J].合肥工业大学学报,2001,24(6):1090-1094.
[9]冈萨雷斯.数字图像处理(MATLAB版)[M].北京:电子工业出版社,2011:56-91.
[10]沈小勇.基于照片的在线虚拟试衣系统[D].杭州:浙江大学,2012.
[11]黎明和.基于实例驱动的真实感个性化虚拟试衣机制研究[D].西安:陕西科技大学,2007.
[12]尚笑梅.非接触式人体测量技术的应用与开发[J].服装界,2006(4):13-15.
[13]DIMARZIOJ.Androidaprogramer’shuide[M].[s.l.]:Mc-Graw-Hill/OsborneMedia,2008.
[14]MEIERR.Professionalandroidapplication[M].[s.l.]:Wiley,John&Sons,Incorporated,2008.
[责任编辑仲圆]
Research on the Key Technology of Virtual FittingBased on Android Platform
XU Xue-li
(College of Mathematics and Computer Science, Yan’an University, Yan’an 716000, China)
Inordertobreakthroughthelimitationoftimeandspaceandachievetherealisticfittingeffectsintheclothingstores,akindofvirtualfittingmethodbasedoncasedrivenisproposed.Firstly,thekeydimensionsofthehumanbodyareobtainedautomaticallyaccordingtothecornerdetectionmethod.Secondly,themodelfittingeffectwhichistheclosesttotheshapeofcustomerisobtainedaccordingtothecaseretrievalalgorithm.Then,headimagetransplantationisrealizedbyusingoftheregistrationoftransplantationandskincolorfusion.Finally,apreliminarysystemmodelisimplementedontheandroidplatform.Ithaslaidagoodfoundationforimprovingthesuccessrateofonlineclothingtradeandexpandingthestyleofclothing.
edgedetection;cornerdetection;casedriven;virtualfitting;androidplatform
1008-5564(2016)02-0047-05
2015-08-25
徐雪丽(1990—),女,陕西延安人,延安大学数学与计算机科学学院助教,硕士,主要从事软件开发、图像处理研究.
TP391.4
A