胡新荣 刘嘉文
(湖北省服装信息化工程技术研究中心 湖北 武汉 430200) (武汉纺织大学数学与计算机学院 湖北 武汉 430200)
Non-contact measurement
随着信息技术在服装领域的快速发展,人体尺寸测量技术已逐渐应用于个性化服装定制[1]、虚拟试衣[2]等各类技术领域中。其中,在线非接触式人体尺寸测量在服装定制领域起着至关重要的作用。
目前,非接触式人体尺寸测量技术主要依赖于三维人体扫描系统[3]。然而,由于测量仪器成本昂贵以及测量地点不灵活等原因,导致了该技术无法在市场上广泛普及。为了满足中小企业的需求,基于图像的非接触式人体测量方法[4-7]被提出了。
在二维系统中,人体各个部位的高度、宽度和厚度可以被直接测量。然而,在三维尺寸预测方面,当前传统算法主要包括:椭圆傅里叶法、多元函数拟合和模型重建法。
夏明等[8]和夏凤勤等[9]提出采用椭圆傅里叶变换将胸围断面拟合点的坐标信息转换为一组不同频率椭圆的叠加。但由于人体体型的差异性,导致该模型在实际拟合过程中获取围度信息的精度无法满足人体着装尺寸的误差要求。
李晓久等[10]首先提出了基于多元函数拟合的方法预测人体的围度尺寸信息,之后刘国联等[11]、李臻颖等[12]、邹昆等[13]和顾冰菲等[14]分别在此基础上针对人体体型的差异性对模型进行了优化,但仅依据某部位的宽厚比设定阈值区间,在实际测量过程中模型的鲁棒性不强,且预测的围度信息为该阈值区间的均值,从而无法体现人体自身的异构性。
Alldieck等[15-16]和孙瑜亮等[17]提出使用深度相机获取人体深度信息,然后分别通过SMPL模型[18]与Poisson方法[19]重建人体以获取各个部位的围度信息,但由于深度相机的普适性较低,采样人体信息条件十分苛刻,且重建单个人体模型的时间消耗超过3分钟,导致该方法无法适用于在线自动化批量预测人体围度信息,以至于传统算法难以满足在线测量系统所需要的精度与实时性的需求。
近年来,人工神经网络算法在处理非线性函数时的优势显著,其中Elman神经网络(Elman Neural Network,ENN)相对于BP神经网络结构上增加了一个承接层,从而增强了网络的全局稳定性,但传统ENN依然无法避免易陷入局部极小值、收敛速度慢[20]、初始阈值和权值随机赋予、网络训练震荡等问题[21]。
因此,通过群智能算法对神经网络进行优化,典型的群智能算法包括:遗传算法[22]、人工蜂群算法[23]和粒子群算法[24]。Mirjialili等[25]提出了一种新的群智能算法:鲸鱼优化算法(WOA)。该算法全局寻优能力强,但是在面对一些复杂问题时,算法易陷入局部最优并且收敛速度较慢。为了解决这些问题,本文提出一种改进收敛因子、联合最优惯性权重和阿基米德螺旋更新策略的优化鲸鱼算法(IWOA),有效地解决了WOA早熟及陷入局部最优的问题,并且提升了算法的精度。Elman神经网络(ENN)[26]采用IWOA输出的权值阈值作为初始参数训练模型,然后利用马尔可夫残差模型(Markov Chain,MC)[27]对IWOA-ENN模型预测的围度信息进行优化,提出了一种适合于人体围度尺寸预测的IWOA-ENN-MC模型。选用CAESAR数据集[28]进行实验,将GA-ENN[29]、PSO-ENN[30]和WOA-ENN[31]应用于人体围度尺寸预测当中,并与IWOA-ENN-MC进行对比分析,以验证该模型在收敛性和预测精度方面的优势。
人体围度尺寸预测主要分为以下4个步骤:体型分类、自适应划分人体结构关键区域、多特征尺寸提取、IWOA-ENN和马尔可夫残差模型训练。IWOA-ENN-MC模型的基本框架如图1所示。1) 在图像预处理过程中,提取完整的人体轮廓后基于ABSS算法[32]划分人体体型,然后将不同体型的用户进行人体特征区域自适应划分。2) 从人体二维图片中提取的人体性别S、身高信息H、X围的宽度、X围的厚度、X围与身高的比例系数R共五个特征(其中X表示为颈、胸、腰部等具有围度属性的部位)。3) 对设计好的IWOA-ENN模型进行训练,输出预测值。4) 将IWOA-ENN模型输出的预测值与实测值的残差序列作为马尔可夫残差网络模型的输入并训练MC模型,最终输出IWOA-ENN-MC模型的预测值。
图1 基于IWOA-ENN-MC模型预测人体围度信息的方法流程
ENN是一种多层的反馈型递归神经网络。主要由输入层、输出层、一层或多层隐含层和承接层四个部分构成,如图2所示。在实际应用过程中,对于第一层输入参数为:性别S,身高H,X围的宽度,X围的厚度,X围与身高的比例系数R(其中X表示为颈、胸、腰部等具有围度属性的部位)。
图2 Elman神经网络模型
如图2所示,Elman神经网络的非线性状态空间描述表达式为:
x(k)=h(ω2xc(k)+ω1u(k-1))
(1)
xc(k)=x(k)
(2)
Y(n)=g(ω3x(k))
(3)
式中:h表示隐含层的传递函数通常为s型函数;g为激活函数;ω1、ω2、ω3分别为输入层到隐含层、承接层到隐含层和隐含层到承接层的权值;Y(n)为第n个样本输出节点向量;xc为n维反馈状态向量;u为输入向量。
WOA相对于传统优化算法而言以生物模型为基础,在保证收敛性的同时,时耗更短,鲁棒性更高。通过气泡网攻击、包围猎物和随机寻找猎物三种行为方式保证了算法的寻优能力。
(1) 气泡网攻击。WOA的气泡网攻击模型鲸鱼产生收缩圆形或者螺旋形路径的气泡网络来更新自己的路径接近并且包围猎物(如图3所示)。
(a) 收缩圆位置更新(b) 螺旋线位置更新图3 鲸鱼包围猎物的位置更新策略
则满足下列式子:
(4)
A=2a·r-aC=2·ra=2-2t/Tmax
(5)
(2) 包围猎物。将当前迭代次数中适应度最高的鲸鱼个体位置作为猎物位置,其他的鲸鱼不断更新自己的位置来包围猎物,数学模型如式(6)所示。
X(t+1)=X*-A·|Xt-C·X*|
(6)
(3) 随机寻找猎物。当|A|<1时,鲸鱼采取局部搜索策略,根据式(6)更新位置坐标;反之,进行全局搜索策略,随机选择鲸鱼迫使其选择更优的猎物从而增加算法的全局搜索能力,根据式(7)对鲸鱼个体进行位置更新。
X(t+1)=Xrand-A·D′
(7)
(8)
2.3.1非线性收敛因子
传统WOA的三种行为方式相互互补、相互制约,与系数A的取值有着重要的关系,如果系数A过大,则使得WOA气泡网攻击和包围猎物的行为的全局性寻优能力增强,反之选择随机搜索使得算法尽量根据最优解的位置实现更高的寻优精度。马创等[33]提出的参数在实验过程中会使得收敛速度过慢,即采用平方级进行减小并且为了使系数A不仅只受迭代次数的约束,采用正态算子进行优化如式(9)所示,σ方差表示为a与其数学期望的偏离程度以动态调节正态算子,即当算法迭代初期且a方差较大时,A的值较大,增加全局寻优能力,反之则增加局部寻优能力,如式(10)所示。
(9)
a(t)=(2-2t/Tmax)γ(t)
(10)
2.3.2阿基米德螺旋更新策略
由式(4)可知传统WOA在螺旋更新位置选择的是对数更新策略,然而Sun等[34]实验表明该策略如果螺旋步进不合理就可能造成算法无法遍历整个空间,降低了算法的寻优能力,于是采用阿基米德螺旋更新策略代替传统方法,如式(11)所示。
X(t+1)=D·e·(b·l)·cos(2πl)+X*
(11)
2.3.3联合最优权重
传统惯性权重是随着迭代的次数增加而线性递减,并且在选择最优解时仅考虑当前个体状态[35],个体间没有关联,从而使得算法易陷入局部最优,所以根据灰狼优化算法(GWO)包围猎物启发选取前3个历史最优位置的种群适应度f(t-3)min、f(t-2)min、f(t-1)min,得到联合种群适应度如式(12)所示。
(12)
即基于联合策略的惯性权重表达式为:
(13)
式中:ωmax和ωmin分别为初始权重参数的最大值和最小值;ω(t)为第t次迭代后的权重;f(t)、f(t)min、f(t)max分别为第t次迭代后的当前种群适应度、最小适应度、最大适应度。结合迭代次数和联合种群适应度对传统惯性权值进行进一步改进,可知在当前适应度大于联合适应度时,权值增大,可以增加寻优的广度;反之,权值逐渐变小,保证了算法在寻找最优值的精度,增加了种群之间的联系,以此来提升算法的收敛速度和寻优的精度。改进后的WOA寻优策略如式(14)所示。
(14)
2.3.4IWOA优化的ENN模型
IWOA优化的ENN模型的算法流程如图4所示,主要分成以下4个步骤。
步骤1初始化ENN模型。实验验证确定模型的隐含层节点个数、初始权值和阈值。
步骤2将ENN模型的权值和阈值作为IWOA的初始位置向量,设定种群规模N、最大迭代次数Tmax、最大最小惯性权重ωmax和ωmin。
步骤3按照式(14)计算个体适应度,找出最优适应度的位置向量作为ENN模型的初始权值和阈值。
步骤4训练ENN模型,若满足误差需求或者超出最大迭代次数即保存网络。
图4 IWOA-ENN模型流程
马尔可夫链(MC)[36]通过状态转移概率矩阵得到未来可能达到某种状态的概率,不受过去状态的影响,适用于随机波动性较大和受多种因素影响的样本序列。本文基于IWOA-ENN模型预测人体围度信息,然后利用马尔可夫链分析实测信息与预测值之间的相对误差比的波动规律,对IWOA-ENN模型的预测值进行修正以减小误差。具体步骤如下:
步骤1根据状态划分:根据IWOA-ENN模型预测值的相对误差比,采用最值均方差法将相对误差区间分成q个状态[37],即[S1,S2,…,Sn]∈S。其中q的计算方法为:
q=EVEN(d/σ)
(15)
步骤2以前N次IWOA-ENN循环输出的预测值F与实测值T的残差数列ε作为基准数据,基于马尔可夫链进行优化预测,其中利用黄金分割率原理[38],按照式(16)计算残差值分割单位的长度。
(16)
步骤3计算马尔可夫链的状态转移矩阵如式(17)所示。
(17)
步骤4选择离预测时步最近的前3个时步,合计概率最大的状态区间为下一个时步可能出现的状态区间。其中x状态转移矩阵如式(18)所示。
(18)
步骤5确定该状态空间的中点为最可能的响应时间马尔可夫链预测值,计算公式如式(19)所示。
(19)
式中:f′(x)为马尔可夫残差网络模型进行优化的最终值;Δ为相对误差比;ΔU和ΔD分别为某一变动区间的上下限值;f(x)为IWOA-ENN的输出值。图5为IWOA-ENN-MC的算法流程。
图5 IWOA-ENN-MC模型流程
在本次实验过程中,选取CAESAR数据集中270组人体样本(其中体型偏瘦、正常、偏胖样本各90组)中。首先,为了检验IWOA相对于标准WOA在寻优能力的优势,针对三种改进方法分别进行了对比实验。
其次,为了检验IWOA-ENN-MC模型的预测的精度和算法的收敛性,首先平均从每类体型中随机抽取80组样本,一共240组样本进行实验测试,用于检验模型的拟合效果,然后为了验证该模型的性能优势,通过将GA-ENN[29]、PSO-ENN[30]和WOA-ENN[31]应用于人体围度尺寸预测当中,对剩余30组样本各部位进行预测,并与IWOA-ENN-MC模型作对比和分析。
ENN在结构上与BP网络相似,参考王嵘冰等[39]对Elman网络隐层节点选择策略进行反复实验对比分析得出当隐含层神经元数目为9时,模型拟合误差最小,如图6所示。设定ENN和IWOA-ENN模型训练的迭代次数为150,目标误差均为0.001,并且设定种群规模为50,最大迭代次数Tmax=120,最大权重和最小权重分别为ωmax=1、ωmin=0.5。实验环境为:Windows 10操作系统,E5-1620v4 3.5 GHz处理器,6 GB内存,NVIDIA 1080显卡。
图6 隐含层不同神经元个数的误差值
利用数据集中个人体样本的性别S、身高H、颈围的宽度、颈围的厚度、颈围与身高的比例系数R作为ENN的输入,将ENN的初始权值和阈值转化为WOA的位置向量进行训练,计算适应度从而获取最优解并赋值于ENN,进而输出该样本的颈部围度信息。图7为IWOA与WOA针对不同改进策略的适应度对比分析。
(a) 非线性收敛因子
(b) 阿基米德螺旋更新策略
(c) 联合最优权重图7 不同改进策略的IWOA与WOA的适应度对比分析
由图7(a)可知,传统WOA虽收敛速度很快,但是迭代至45次时,陷入局部最优解;文献[33]方法相对于传统WOA有着更优解,迭代至53次时陷入局部最优解;本文结合正态算子进行优化的非线性收敛因子相对于前两者而言,在第49次迭代时仍然获取最优解,适应度优于传统算法,并且前期收敛速度相对文献[33]的方法有所提升。
图7(b)将传统WOA、仅改进阿基米德螺旋更新策略的WOA和叠加非线性收敛因子与阿基米德螺旋更新策略的WOA进行对比分析可以证实,改进螺旋更新策略后算法的寻优广度增加,随之也影响了算法的收敛速度,但是叠加非线性收敛因子之后算法的前期收敛速度有所提升,并且适应度更优。
图7(c)可证明联合最优权重的WOA相对于传统WOA而言收敛速度更快并且在57次迭代后仍然在寻找最优解,IWOA在结合三种改进策略后,无论在算法的收敛性还是适应度方面都有着显著的优势。
对本次270组实验样本中随机抽取240组样本的颈围实测数据算法拟合效果进行分析,并且与GA-ENN[29]、PSO-ENN[30]和WOA-ENN[31]进行对比分析,不同算法的适应度收敛过程如图8所示。
图8 不同算法适应度过程
可以看出,GA的寻优效果最差;PSO前期收敛速度较快但是在迭代37次后陷入局部最优解,传统WOA相对于PSO而言收敛更快,但随着迭代次数增加,收敛因子和螺旋更新策略的影响导致收敛速度越来越慢,并且迭代至45次陷入局部最优,IWOA收敛速度最快并且第41次迭代后取得最优解,并且算法的适应度明显优于传统算法。
将上述最优解对应的权值阈值作为ENN的初始权值和阈值进行训练,可得到人体颈围的拟合值,同理可对人体其他具有三维属性的部位进行训练,具体拟合曲线如图9所示,证实了IWOA-ENN的拟合效果优于WOA-ENN、PSO-ENN、GA-ENN模型。
(a) 颈围
(b) 胸围
(c) 腰围
(d) 臀围图9 各种模型不同部位拟合曲线
根据式(16)将人体实测的围度信息与IWOA-ENN模型输出的预测值之间的相对误差比的取值可以划分成4个状态,状态区间如表1所示。随机抽取23组正常体型用户的颈围实测数据利用前20组数据滚动式[40]地预测后3组数据,即通过1-7组用户数据信息作为神经网络的输入,第8组为网络输出,接下来以2-8组预测第9组的数据信息,其中IWOA-ENN模型的预测值和状态划分如表2所示。
表1 状态划分区间
表2 实验数据及状态划分
续表2
根据表2中的状态区间将实测数据与IWOA-ENN模型预测值的相对误差比划分成不同的状态区间[2,4,2,4,3,4,1,1,4,1,3,1,4,1],并依据式(18)可得出一步、二步和三步的状态转移矩阵,如表3所示。
表3 状态转移矩阵
以第22次测量为例,选取与之最近的三个样本进行预测其误差区间所处于的状态,如表4所示。
表4 第22次测量相对误差状态预测
可以看出,其预测的相对误差处于S4状态的可能性最大,对应区间为[0.026 555 945,0.084 925 793],根据式(19)计算通过马尔可夫残差模型修正值为:
相对于表2,IWOA-ENN模型第22次预测的精确度提升了0.701 5 cm。然后该状态加入原始样本序列中,并剔除第一个数据,构成新的样本序列进行下一次状态预测。
多元函数拟合是目前用于预测人体围度信息最广泛的模型,尽管经过多次改良,基于体型对阈值区间进行划分,但该模型的预测值是某个阈值区间的均值信息,无法体现人体自身的异构性。对于ENN模型而言,针对标准差较大的样本时,模型的收敛速度较慢,易于陷入局部最优从而导致预测精度较差。
IWOA-ENN-MC模型通过IWOA改进ENN模型,解决了ENN模型易陷入局部最优的同时提升了模型的收敛速度,并且基于马尔可夫残差算法对预测值进行修正,增加了预测精度,使得模型预测误差整体符合GBT 31907—2015《Method of Garment Measurement》[41]中规定人体着装围度的最大误差需求,满足了模型的实用性。图10为GA-ENN29]、PSO-ENN[30]、WOA-ENN[31]和IWOA-ENN-MC模型针对剩余30组样本各部位预测值的误差分析。
(a) 颈围
(b) 胸围
(d) 臀围图10 不同模型预测值曲线
本次实际工程案例由均方根误差(RMSE)、平均绝对百分比(MAPE)和误差绝对值均值(MAE)对模型的性能指标进行评价,如式(20)-式(22)所示,并且根据GBT31907-2015量体规定围度误差不超过3 cm为合格测量,具体性能指标对比如表5所示。
(20)
(21)
(22)
表5 各模型性能评价结果
本文提出一种基于IWOA-ENN-MC模型,运用改进的WOA克服了ENN模型易陷入局部最优解和收敛速度慢的问题,然后利用MC模型对IWOA-ENN的预测值进行修正,解决了传统模型预测值误差较大的问题。选取CAESAR数据集中270组样本,首先对传统WOA与IWOA进行实验分析,证实了IWOA的优越性,其次为了检验IWOA-ENN-MC模型的收敛速度和预测精度,与传统GA-ENN、PSO-ENN、WOA-ENN分别做了对比分析。通过实验分析证明:IWOA-ENN-MC模型相对于GA-ENN和PSO-ENN无论在寻优能力、拟合程度还是预测精度方面都优于传统模型。
下一步的研究工作的重点是研究三维网格的设计,将预测的人体围度信息直接映射到三维人体模型的同时保证降低模型的失真度。