李健,樊妍,何斌
(1.陜西科技大學(xué) 電子信息與人工智能學(xué)院,陜西 西安 710021;2.同濟(jì)大學(xué) 電子與信息工程學(xué)院,上海 201804)
近年來(lái),隨著深度學(xué)習(xí)在服裝時(shí)尚領(lǐng)域的深入,基于二維圖像的服裝展示技術(shù)的研究在紡織服裝的設(shè)計(jì)、生產(chǎn)、商貿(mào)等領(lǐng)域都有著廣泛的應(yīng)用前景。盡管在線購(gòu)物給人們提供了便利,但消費(fèi)者仍擔(dān)心在在線購(gòu)買服裝時(shí),商品穿在他們身上看起來(lái)如何。因此對(duì)于基于姿勢(shì)的服裝展示工作來(lái)說(shuō),合理且準(zhǔn)確的目標(biāo)服裝變形和服裝合成是服裝展示發(fā)揮其作用的必要前提。
基于姿勢(shì)的服裝展示任務(wù)將目標(biāo)服裝轉(zhuǎn)移到目標(biāo)人物身上,引起了越來(lái)越多的研究關(guān)注。由此出現(xiàn)了基于二維的服裝展示相關(guān)的研究與應(yīng)用?,F(xiàn)今主流工作之一主要集中在VITON[1],CP-VTON[2]等基于姿勢(shì)的虛擬試衣方法使用粗略的人體形狀和姿勢(shì)圖作為輸入來(lái)生成穿著衣服的人。VITON是一種基于圖像的虛擬試穿方法,僅使用2D信息。使用最新的人體姿勢(shì)檢測(cè)器[3]和人體分析器[4],此方法可以獲得良好的人體質(zhì)量分割和關(guān)鍵點(diǎn)。其中利用基于薄板樣條(TPS)的變形方法,首先變形目標(biāo)服裝,然后使用合成蒙版將紋理映射到經(jīng)過(guò)優(yōu)化的服裝展示結(jié)果中。形狀上下文是通過(guò)手工進(jìn)行提取特征,兩個(gè)形狀的匹配是耗時(shí)的,這不利于實(shí)現(xiàn)用戶所需的實(shí)時(shí)性,并且生成的服裝細(xì)節(jié)不夠完善。CP-VTON采用了類似于VITON的結(jié)構(gòu),是在其工作上進(jìn)行改進(jìn),使用空間變換網(wǎng)絡(luò)中的卷積幾何匹配器來(lái)學(xué)習(xí)目標(biāo)人物服裝的特征和合成目標(biāo)服裝特征之間的薄板樣條(TPS)變換,服裝細(xì)節(jié)相較于之前有所提升。因?yàn)樗菍?duì)目標(biāo)服裝的特征信息進(jìn)行二次提取﹐來(lái)合成更加真實(shí)的試衣圖像,雖然相較于之前的算法服裝細(xì)節(jié)更加逼真,但是依然會(huì)在姿勢(shì)遮擋服裝的情況下,丟失合成后目標(biāo)服裝細(xì)節(jié)和人物細(xì)節(jié)特征。VTNFP[5]通過(guò)簡(jiǎn)單地串聯(lián)從身體部位和衣服中提取的高級(jí)特征來(lái)緩解此問(wèn)題,從而產(chǎn)生比CP-VTON和VITON更好的結(jié)果。但是,模糊的身體部位和偽影仍然保留在結(jié)果中。之所以會(huì)出現(xiàn)這樣的情況,是由于在整個(gè)服裝合成過(guò)程中忽略了目標(biāo)人物與目標(biāo)服裝的語(yǔ)義布局,缺少了其約束導(dǎo)致變形后的目標(biāo)服裝不足與更好的為服裝渲染過(guò)程提供準(zhǔn)確的對(duì)齊約束,尤其對(duì)于款式不同、紋理復(fù)雜的服裝圖像,以及姿態(tài)復(fù)雜的目標(biāo)人物圖像它并不總是能生成滿意的試衣效果。
針對(duì)上述問(wèn)題,本文主要包括語(yǔ)義預(yù)測(cè)模塊和目標(biāo)服裝的變形以及融合語(yǔ)義布局信息的服裝渲染模塊三個(gè)部分,主要工作如下:
(1)通過(guò)條件生成對(duì)抗網(wǎng)絡(luò)進(jìn)行語(yǔ)義布局預(yù)測(cè)。首先利用條件生成對(duì)抗網(wǎng)絡(luò)對(duì)經(jīng)過(guò)處理的公開的數(shù)據(jù)集進(jìn)行訓(xùn)練,僅通過(guò)目標(biāo)人物圖像和姿勢(shì)圖,以及將要試穿的目標(biāo)服裝得到能夠預(yù)測(cè)穿衣后目標(biāo)人物的語(yǔ)義解析圖的模型。
(2)基于改進(jìn)的空間變換網(wǎng)絡(luò)實(shí)現(xiàn)目標(biāo)服裝的變形。根據(jù)得到語(yǔ)義解析圖和目標(biāo)服裝,通過(guò)掩膜預(yù)測(cè)網(wǎng)絡(luò)通過(guò)得到換裝后目標(biāo)服裝的掩膜,再通過(guò)空間變換網(wǎng)絡(luò)實(shí)現(xiàn)對(duì)目標(biāo)服裝的變形。
(3)融合語(yǔ)義布局信息實(shí)現(xiàn)服裝渲染的構(gòu)建。借助于換裝后的語(yǔ)義解析圖和變形后的目標(biāo)服裝,將其服裝信息融入到局部渲染過(guò)程中,通過(guò)語(yǔ)義布局的約束,提高服裝渲染的準(zhǔn)確度和真實(shí)度,從而實(shí)現(xiàn)完整的融合語(yǔ)義布局信息的服裝渲染方法。本文算法的總體框架如圖1所示。
圖1 算法總體框架
2.2.1 網(wǎng)絡(luò)架構(gòu)
語(yǔ)義預(yù)測(cè)模塊采用有條件的生成對(duì)抗網(wǎng)絡(luò),其中使用U-Net[6]結(jié)構(gòu)作為生成器,同時(shí)使用pix2pix[7]中給出的鑒別器PatchGAN來(lái)區(qū)分生成的語(yǔ)義解析圖和真實(shí)語(yǔ)義解析圖。為了能夠?qū)⒛繕?biāo)服裝的特征更好的與目標(biāo)人物進(jìn)行融合,本文使用OPENPOSE和SS-JPPNet[8]算法對(duì)目標(biāo)人物進(jìn)語(yǔ)義解析和姿勢(shì)估計(jì)得到相對(duì)應(yīng)的語(yǔ)義解析圖Is和姿勢(shì)圖Ip,然后將提取的目標(biāo)人物的語(yǔ)義解析圖和姿勢(shì)圖高維特征,與目標(biāo)服裝c的新的特征相映射得以預(yù)測(cè)出穿衣后目標(biāo)人物的語(yǔ)義解析圖It。
2.2.2 損失函數(shù)
我們?nèi)诤狭颂卣髌ヅ鋼p失[68]激勵(lì)生成器關(guān)注生成圖像與目標(biāo)圖像之間的差異,來(lái)代替L1損失,避免圖像模糊,來(lái)得到更完善的語(yǔ)義解析圖。特征匹配損失可直接比較使用預(yù)先訓(xùn)練的感知網(wǎng)絡(luò)(VGG-19)計(jì)算的生成圖像和真實(shí)圖像,激勵(lì)生成器關(guān)注生成圖像與目標(biāo)圖像之間的差異,這樣對(duì)于處理目標(biāo)衣服與原始衣服長(zhǎng)短不一致時(shí)語(yǔ)義分割預(yù)測(cè)有著更好的效果。使用VGG19所提取出的圖像特征與如下公式可以計(jì)算感知損失:
故對(duì)于此階段采用的條件生成對(duì)抗損失可以表示為:
2.3.1 掩膜預(yù)測(cè)
所以服裝變形的目的是使服裝適應(yīng)目標(biāo)人物服裝區(qū)域的形狀,并根據(jù)人體姿勢(shì)在視覺(jué)上自然變形,并保留服裝的特征。CP-VTON方法僅僅通過(guò)粗糙的身體形狀來(lái)約束目標(biāo)服裝的變形,在出現(xiàn)姿勢(shì)遮擋的情況下,目標(biāo)服裝不能適應(yīng)姿勢(shì)得到合理的變形。本文在其方法基礎(chǔ)上首先根據(jù)生成的語(yǔ)義解析圖和目標(biāo)服裝進(jìn)行預(yù)測(cè)目標(biāo)服裝區(qū)域掩膜,在其約束下來(lái)改善目標(biāo)服裝的變形。
本文使用的網(wǎng)絡(luò)結(jié)構(gòu)以U-Net網(wǎng)絡(luò)為基礎(chǔ),通過(guò)跳轉(zhuǎn)連接直接在各層之間共享信息,我們使用了10層U-Net結(jié)構(gòu),包括5個(gè)步長(zhǎng)為2的下采樣卷積層,5個(gè)步長(zhǎng)為2的上采樣層。上采樣使用雙線性插值層和步長(zhǎng)為1的卷積層的組合,最后一層添加Sigmoid激活函數(shù)。具體參數(shù)如表1所示:
表1 U-Net各層參數(shù)
對(duì)于損失函數(shù)設(shè)計(jì)部分,我們使用監(jiān)督學(xué)習(xí)來(lái)訓(xùn)練掩膜預(yù)測(cè),網(wǎng)絡(luò)對(duì)于生成掩膜部分并不涉及細(xì)節(jié)特征部分,這里僅僅使用L1損失來(lái)優(yōu)化整個(gè)過(guò)程即可。如公式(3),其中c記為預(yù)測(cè)的目標(biāo)服裝的掩模的真實(shí)數(shù)據(jù),cM是掩膜預(yù)測(cè)網(wǎng)絡(luò)的輸出,我們采用了L1損失作為網(wǎng)絡(luò)的損失函數(shù),定義如下:
2.3.2 基于空間變換網(wǎng)絡(luò)的服裝變形
空間變換網(wǎng)絡(luò)的幾何匹配方法使用CP-VTON的方法,但通過(guò)改變其輸入條件進(jìn)行變形約束。如圖2所示,通過(guò)輸入目標(biāo)服裝的掩膜和目標(biāo)服裝,目標(biāo)服裝結(jié)合服裝掩膜的幾何約束,一同作為空間變換網(wǎng)絡(luò)的輸入,首先通過(guò)對(duì)其特征提取然后在將其合并成一個(gè)張量,輸入到回歸網(wǎng)絡(luò)中?;貧w網(wǎng)絡(luò)在進(jìn)行仿射變換參數(shù)預(yù)測(cè)時(shí),能夠在輪廓約束下更穩(wěn)定的進(jìn)行形變,從而得到最終得到變形后的目標(biāo)服裝,其中代表真實(shí)目標(biāo)人物的真實(shí)圖像。
圖2 空間變換網(wǎng)絡(luò)算法框架
故不難得出服裝變形的損失函數(shù):
本章節(jié)使用基于U-Net的編碼器-解碼器網(wǎng)絡(luò)作為服裝渲染的網(wǎng)絡(luò)架構(gòu),如圖3所示,算法的框圖如下,為了防止產(chǎn)生棋盤格的偽影,進(jìn)行卷積運(yùn)算的使之用3×3的基礎(chǔ)上填充1的卷積操作,在進(jìn)行服裝渲染過(guò)程之前,我們引入了與衣服無(wú)關(guān)的人表示,保留諸如臉部、膚色、發(fā)型、褲子等物理屬性。在此使用SS-JPPNet算法對(duì)目標(biāo)人物圖像提取其人臉、頭發(fā)區(qū)域和褲子的RGB通道,以便在生成圖像時(shí)注入身份信息給新的穿衣后的合成圖像。將其調(diào)整為256192分辨率的圖像,進(jìn)行卷積操作并對(duì)此關(guān)系進(jìn)行建模。
圖3 融合語(yǔ)義布局信息的服裝渲染算法框架
為了達(dá)到我們保持特性的目標(biāo),我們通過(guò)應(yīng)用L1正則化使合成遮罩M偏向于盡可能選擇變形的衣服。故服裝變形的總體損耗函數(shù)為:
式中,Io表示生成的最終服裝展示效果圖,It代表真實(shí)圖,M表示合成蒙版。
故本文對(duì)Han等人收集的現(xiàn)有的公開數(shù)據(jù)集[63]中目標(biāo)人物進(jìn)行語(yǔ)義解析和姿態(tài)估計(jì),得到所需的新數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)。它包含大約19,000個(gè)前視圖女性和頂級(jí)服裝圖像對(duì),有16253個(gè)清洗對(duì),分別分為訓(xùn)練集和驗(yàn)證集,分別具有14221和2032對(duì)。我們將驗(yàn)證集中的圖像重新排列為未配對(duì)的對(duì),作為測(cè)試集。
訓(xùn)練過(guò)程中使用的目標(biāo)衣服與參考圖像中的目標(biāo)衣服相同,因?yàn)楹茈y獲得試穿結(jié)果的真實(shí)圖像。在上述三個(gè)模塊的訓(xùn)練過(guò)程中,通過(guò)設(shè)置損耗權(quán)重λ=λ=0.1,λ1=λ2=1和批處理大小8,將所提出方法中的每個(gè)模塊訓(xùn)練20個(gè)單元。將學(xué)習(xí)率初始化為0.0002,并通過(guò)Adam優(yōu)化器優(yōu)化網(wǎng)絡(luò)其中超參數(shù)β1=0.5,β2=0.999。所有代碼均由深度學(xué)習(xí)工具包PyTorch實(shí)施。
3.2.1 定性
我們使用VITON、CP-VTON和VTNFP對(duì)我們提出的方法進(jìn)行主觀分析評(píng)價(jià)。如圖4所示,從上到下,手臂與服裝的遮擋程度逐漸增加,VITON生成的圖像都顯示出許多視覺(jué)偽影,包括顏色混合,邊界模糊,紋理混亂等。與VITON相比,CP-VITON在手臂與服裝沒(méi)有咬合的情況下可獲得更好的視覺(jué)效果,但在有肢體遮擋的情況下,仍會(huì)導(dǎo)致不必要目標(biāo)服裝和身體部位模糊。當(dāng)手臂和軀干之間有交叉點(diǎn)時(shí),也可以觀察到較差的情況,例如在生成的圖像中手臂細(xì)節(jié)消失乃至斷裂現(xiàn)象。綜上所述,VITON和CP-VTON將目標(biāo)服裝扭曲到衣服區(qū)域并映射紋理和繡花,缺少相對(duì)應(yīng)的語(yǔ)義布局的約束,從而可能導(dǎo)致對(duì)身體部位和下裝的編輯不正確。
圖4 各種算法對(duì)不同姿勢(shì)下實(shí)現(xiàn)的服裝展示效果圖
3.2.2 定量
上述定性比較是基于視覺(jué)層面上的結(jié)果對(duì)比。該部分為了更好地比較兩種方法的效果采取定量比較的方式,選取了3個(gè)評(píng)價(jià)指標(biāo)對(duì)生成結(jié)果進(jìn)行評(píng)測(cè),其中PSNR 、SSIM、MSE分別表示兩幅圖像間的峰值信噪比、結(jié)構(gòu)相似性以及均方誤差,評(píng)測(cè)結(jié)果如表2和表3所示。
表2 隨機(jī)選取100組實(shí)驗(yàn)結(jié)果
表2是隨機(jī)選取100組實(shí)驗(yàn)結(jié)果的數(shù)據(jù),表3是全部測(cè)試結(jié)果(共14221組)的數(shù)據(jù)。從表中可以看出,本文方法的PSNR值略高于CP-VTON方法,表明了本文方法試衣后的圖像質(zhì)量更好。SSIM值基本一致,表明兩種方法在圖像結(jié)構(gòu)性保留方面都有著較好的效果。此外,本文方法的MSE值小于CP-VTON方法,說(shuō)明了本文方法的圖像失真較小,更好地保留了原始圖像的結(jié)構(gòu)特征,試衣后圖像更加保真。
表3 全部實(shí)驗(yàn)結(jié)果
本文在目前已有的成果基礎(chǔ)上,通過(guò)融合目標(biāo)服裝和目標(biāo)人物的語(yǔ)義解析圖預(yù)測(cè)出換裝后的人的語(yǔ)義解析圖,語(yǔ)義布局不僅能夠約束目標(biāo)服裝的變形,而且在指導(dǎo)完整的局部渲染的過(guò)程中占據(jù)了重要的因素,從而構(gòu)建融合服裝信息的局部渲染構(gòu)建方法,但是收到各方面資源的限制,本文目前只針對(duì)上衣服裝的常見姿勢(shì)的服裝展示效果的應(yīng)用與研究。取得了一定的進(jìn)展,但以下幾個(gè)方面還需作深入的研究:(1)融合深度學(xué)習(xí)的方法的局限性。目前的配準(zhǔn)效果較為依賴訓(xùn)練出的模型精度,對(duì)于不同的測(cè)試對(duì)象,學(xué)習(xí)訓(xùn)練的數(shù)據(jù)集選擇應(yīng)更具有普適性。(2)在服裝款式方面,本文只是針對(duì)上衣和目標(biāo)人物之間語(yǔ)義解析和掩膜預(yù)測(cè),從而實(shí)現(xiàn)較為完善的服裝展示效果,在以后的研究中,可以通過(guò)構(gòu)建更多樣式的數(shù)據(jù)集,設(shè)計(jì)針對(duì)圖像中規(guī)則體的深度學(xué)習(xí)目標(biāo)檢測(cè)與邊緣提取網(wǎng)絡(luò),來(lái)提高檢測(cè)精度。未來(lái)的研究可以考慮將目標(biāo)人物分位各個(gè)服裝區(qū)域的語(yǔ)義解析圖,實(shí)現(xiàn)更多的服裝搭配。