魏雪霞, 趙 娟, 徐增波
(上海工程技術(shù)大學(xué) 紡織服裝學(xué)院, 上海 201620)
虛擬試衣是一種可以幫助用戶實現(xiàn)無需脫衣便可換裝并查看穿著效果的技術(shù)手段,顧客用最短的時間快速瀏覽不同款式的服裝以及觀察試穿效果,增強購物體驗,減少網(wǎng)購服裝與預(yù)想效果不一樣的顧慮,降低退貨率,同時也能夠避免實體店試衣的繁瑣。虛擬試衣最早是以網(wǎng)頁2 D虛擬替身類型出現(xiàn)的,主要對模特和服裝的照片用PS(photoshop)軟件進行簡單處理,對網(wǎng)絡(luò)帶寬和終端設(shè)備要求較低,一般僅能提供虛擬替身正面與背面兩組視角的試穿效果,精準(zhǔn)度低且真實感較差。針對2 D虛擬試衣的種種不足,3 D虛擬試衣逐漸成為研究的重點和熱點。3 D虛擬試衣根據(jù)用戶所測得的人體三維數(shù)據(jù),通過計算機建立三維人體模型并構(gòu)建相應(yīng)的服裝衣片模型,創(chuàng)造一個虛擬的3 D試衣環(huán)境,在不接觸服裝實物的情況下,顧客根據(jù)自己的喜好方便快捷地更換服裝,得到相應(yīng)的著裝立體效果模擬圖[1],以便全方位地瀏覽試穿效果。國外關(guān)于3 D虛擬試衣的研究比較成熟,典型的有美國的Fitiquette、法國力克公司的E-Design系統(tǒng)、英國的Fits.me和Metail以及加拿大的My Virtual Model試衣網(wǎng)站。國內(nèi)關(guān)于3 D虛擬試衣的研究還在探索階段,2011年,我國出現(xiàn)了首個商業(yè)化的三維虛擬試衣系統(tǒng)——杭州森動數(shù)碼科技發(fā)布的“3 D互動虛擬試衣間”,此后又出現(xiàn)了如上海試衣間信息科技有限公司研發(fā)的“好搭盒子”、上海魔購百貨公司研發(fā)的“魔購百貨”、北京優(yōu)時尚科技有限責(zé)任公司推出的購搭A(yù)PP等虛擬試衣軟件,主要用于線上服裝銷售的虛擬體驗,試衣網(wǎng)站有face72、41go、okbig、和炫三維試衣等。雖然3 D虛擬試衣的研究已成為一個熱門話題,但是因其涉及三維人體建模技術(shù)、三維服裝建模技術(shù)、虛擬試穿技術(shù)等,需要專業(yè)性極強的相關(guān)人員,并且部分設(shè)備的投入資金較大,對于普通用戶和日常使用都是不現(xiàn)實的。
深度學(xué)習(xí)是機器學(xué)習(xí)算法研究中的一個新技術(shù),主要是建立、模擬人腦進行分析學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò),成為各行業(yè)的研究熱點,服裝領(lǐng)域也不例外。利用深度學(xué)習(xí)生成模型解決虛擬試衣問題,主要是將虛擬試衣轉(zhuǎn)化為條件圖像生成問題,通過輸入用戶提供的個人照片以及想要知道穿著效果的服裝模型圖,運行神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,從而生成該用戶穿著這款服裝的效果圖。Ronneberger[2]提出U-Net,主要采用全卷積神經(jīng)網(wǎng)絡(luò)對圖像進行逐像素分類,在圖像分割領(lǐng)域達到不錯的效果。Lin等[3]提出一種多路徑增強網(wǎng)絡(luò),使用殘差連接可以將下采樣中缺失的信息有效地融合進來,從而產(chǎn)生高分辨率的預(yù)測圖像。Jetchev等[4]在時尚換裝中引入有條件的類比生成對抗網(wǎng)絡(luò)(the conditional analogy generative adversarial networks, CAGAN)。Han等[5]引入基于映像的虛擬試衣網(wǎng)絡(luò)(VITON),使用形狀上下文匹配算法將布料扭曲在目標(biāo)人物上,并使用U-Net生成器學(xué)習(xí)圖像合成。Wang等[6]提出基于圖像的特征保留虛擬試衣網(wǎng)絡(luò)(characteristic-preserving virtual try-on network, CP-VTON),引進了用于集合匹配的卷積神經(jīng)網(wǎng)絡(luò)架構(gòu)。Pandey[7]提出Poly-GAN(generative adversarial networks)對網(wǎng)絡(luò)進行簡化嘗試,使用一個網(wǎng)絡(luò)完成變形和融合等任務(wù)。這種基于深度學(xué)習(xí)的虛擬試衣方法不使用任何3 D信息,可實現(xiàn)比較好的試穿結(jié)果,同時經(jīng)濟性較好,但存在生成的圖片容易出現(xiàn)紋理丟失、身體部位丟失等問題,影響試衣結(jié)果等。盡管如此,基于深度學(xué)習(xí)的虛擬試衣已經(jīng)引起了廣泛的關(guān)注且研究意義重大,隨著深度學(xué)習(xí)的不斷發(fā)展以及成本的合理化,其在虛擬試衣中的深入應(yīng)用成為大勢所趨。
深度學(xué)習(xí)是機器學(xué)習(xí)研究中的一個新領(lǐng)域,其學(xué)習(xí)樣本數(shù)據(jù)的內(nèi)在規(guī)律和表示層次,這些學(xué)習(xí)過程中獲得的信息對諸如文字、圖像和聲音等數(shù)據(jù)的解釋有很大的幫助。深度學(xué)習(xí)的最終目標(biāo)實現(xiàn)機器能夠像人一樣具有分析學(xué)習(xí)能力,即能夠識別文字、圖像和聲音等數(shù)據(jù)[8]。根據(jù)深度學(xué)習(xí)結(jié)構(gòu)、技術(shù)和應(yīng)用領(lǐng)域不同,將深度學(xué)習(xí)架構(gòu)分為無監(jiān)督或生成式學(xué)習(xí)的深度架構(gòu)、有監(jiān)督學(xué)習(xí)的深度架構(gòu)和混合深度架構(gòu)。無監(jiān)督或生成式學(xué)習(xí)的深度架構(gòu)用于在沒有目標(biāo)類標(biāo)簽信息的情況下捕捉觀測到的或可見數(shù)據(jù)的高階相關(guān)性,常見的代表網(wǎng)絡(luò)有深度波爾茲曼機、受限波爾茲曼機和廣義除噪自編碼器。有監(jiān)督學(xué)習(xí)的深度架構(gòu)直接提供用于模式分類目的的判別能力,描述可見數(shù)據(jù)條件下的后驗分布。混合深度架構(gòu)目標(biāo)是判別式模型,往往以無監(jiān)督或生成式學(xué)習(xí)的深度架構(gòu)的結(jié)果作為重要輔助,常見的實現(xiàn)方式是通過優(yōu)化和正則類別中的深度網(wǎng)絡(luò),或者通過使用判別式準(zhǔn)則對第一個類別所述的生成式或無監(jiān)督深度架構(gòu)的參數(shù)進行估計。
1.2.1 卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks,CNN)
CNN是一類具有深度結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò)[9],是目前深度學(xué)習(xí)技術(shù)領(lǐng)域中具有代表性的神經(jīng)網(wǎng)絡(luò)之一,是最早應(yīng)用于實踐的深度學(xué)習(xí)網(wǎng)絡(luò)。CNN考慮輸入信號是圖像的特點,參考生物視覺神經(jīng)的接收域概念,采用稀疏連接、權(quán)值共享、池化等概念,成功彌補全連接模型在圖像處理領(lǐng)域的不足。CNN包含輸入層、卷積層、激活層、池化層和全連接層等5種類型的層次結(jié)構(gòu)。最早出現(xiàn)的CNN是時間延遲網(wǎng)絡(luò)和LeNet-5[10],其中,LeNet-5闡述圖像中像素特征之間的相關(guān)性能夠由參數(shù)共享的卷積操作所提取,同時使用卷積、下采樣(池化)和非線性映射的組合結(jié)構(gòu),是當(dāng)前流行的大多數(shù)深度圖像識別網(wǎng)絡(luò)的基礎(chǔ)。
1.2.2 循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network, RNN)
RNN是應(yīng)用自然語言處理、語音識別、圖像標(biāo)注等序列數(shù)據(jù)處理的基本網(wǎng)絡(luò)框架,包括Vector-to-Sequence、Sequence-to-Vector和Encoder-to-Decoder等3種網(wǎng)絡(luò)結(jié)構(gòu)。傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)模型的層與層之間一般是“全連接”,每層之間神經(jīng)元是“無連接”,但RNN中當(dāng)前單元的輸出與之前步驟的輸出也有關(guān),具體表現(xiàn)形式為當(dāng)前單元會對之前步驟的信息進行存儲并應(yīng)用于當(dāng)前輸出的計算。常用訓(xùn)練RNN的方法是BPTT (back propagation through time)算法,BPTT的中心思想與BP (back propagation)算法一樣,沿著需要優(yōu)化參數(shù)的負(fù)梯度方向不斷尋找更優(yōu)的點直至收斂。RNN在處理時間序列上距離較遠(yuǎn)的點時,涉及雅可比矩陣的多次相乘,會造成梯度消失或膨脹現(xiàn)象,為了解決該問題,提出了門限RNN,有漏單元通過設(shè)計連接間的權(quán)重系數(shù),從而允許RNN積累距離較遠(yuǎn)節(jié)點之間的長期聯(lián)系,而門限RNN則泛化了這種思想,允許在不同時刻改變該系數(shù),且允許網(wǎng)絡(luò)忘記當(dāng)前已經(jīng)累計的信息。門限RNN中最著名的是長短期記憶網(wǎng)絡(luò)(long-short term memory, LSTM),只要關(guān)閉輸入門,新輸入信號就不會覆蓋原輸入信號,打開輸出門后可使原輸入信號產(chǎn)生作用,這些機制解決了很多普通RNN不能解決的問題。
1.2.3 生成對抗網(wǎng)絡(luò)(generative adversarial networks, GAN)
GAN是圖像合成中最流行的深層生成模型之一,包含一個生成模型和一個判別模型。生成模型捕捉樣本數(shù)據(jù)的分布,判別模型是一個二元分類器,判別輸入樣本是真實樣本還是生成的假樣本,生成模型要盡可能迷惑判別模型,判別模型要盡可能區(qū)分生成模型生成的樣本和真實樣本,兩個模型不斷博弈優(yōu)化,最終判別模型無法判別生成模型所生成圖像的真假。GAN在圖像去噪、圖像超分辨率、圖像補全、風(fēng)格遷移等任務(wù)中取得了很好的效果。
梯度下降(gradient descent, GD)法是最常用的優(yōu)化神經(jīng)網(wǎng)絡(luò)的方法,分為批量梯度下降、隨機梯度下降和小批量梯度下降。批量梯度下降法的每次更新都需要在整個數(shù)據(jù)集上求出所有的偏導(dǎo)數(shù),因此其速度比較慢;隨機梯度下降法的每次更新是對數(shù)據(jù)集中的一個樣本求出罰函數(shù),然后對其求相應(yīng)的偏導(dǎo)數(shù),可避免在較大數(shù)據(jù)集上的計算冗余,運行速度大大加快。調(diào)整隨機梯度下降優(yōu)化算法的學(xué)習(xí)速率可以提升性能并減少訓(xùn)練時間,常用的隨機梯度下降優(yōu)化算法有動量法、Nesterov梯度加速法、Adagrad法、Adadelta法、RMSprop法、適應(yīng)性動量估計法等。還有另外一些改進隨機梯度下降的策略如樣本重排法、遞進學(xué)習(xí)、批量標(biāo)準(zhǔn)化及早停等,其中批量標(biāo)準(zhǔn)化用得比較多,在反向傳播過程中,權(quán)重問題會導(dǎo)致梯度偏移,批量標(biāo)準(zhǔn)化將這些梯度從異常值調(diào)整為正常值,并在小批量范圍內(nèi)通過標(biāo)準(zhǔn)化使其向共同的目標(biāo)收斂,加快梯度求解的速度,即提升模型的收斂速度。小批量梯度下降法集合上述兩種方法的優(yōu)勢,在每次更新中對n個樣本構(gòu)成的一批數(shù)據(jù)計算罰函數(shù)(n通常為50~256),并對相應(yīng)的參數(shù)進行求導(dǎo)。
人體姿態(tài)估計可確定重要身體關(guān)節(jié)的精確位置,而人體解析(又稱語義部分分割)的目的是將人體圖像分割為多個具有細(xì)粒度語義的部分(如身體部位和衣服),并為圖像內(nèi)容提供更詳細(xì)的解釋說明。姿態(tài)估計和人體解析是人體圖像分析的兩個關(guān)鍵和相關(guān)的任務(wù)。關(guān)節(jié)式人體姿態(tài)通常使用一個單術(shù)語和圖形結(jié)構(gòu)或圖形模型的組合建模,例如混合身體部位。隨著DensePose[11]的引入,姿態(tài)估計問題被定義為使用標(biāo)準(zhǔn)卷積架構(gòu)的回歸問題,人體姿態(tài)估計的研究開始從經(jīng)典方法轉(zhuǎn)向深度網(wǎng)絡(luò)。例如,Wei等[12]在CNN中引入身體部位間的空間相關(guān)性推理。Newell等[13]提出一個堆疊沙漏網(wǎng)絡(luò),通過重復(fù)池化向下和向上采樣過程來學(xué)習(xí)空間分布。Cao等[14]提出一種基于關(guān)鍵點的人體姿態(tài)估計部分親和場,計算出的人體姿勢用18個關(guān)鍵點的坐標(biāo)表示,為了利用它們的空間布局,每個關(guān)鍵點被進一步轉(zhuǎn)換為一個熱圖,在關(guān)鍵點周圍有一個11→11的鄰域,在其他地方填充1和0,所有關(guān)鍵點的熱圖進一步疊加成18通道姿態(tài)的熱圖,該姿勢識別流程已經(jīng)成功應(yīng)用在VITON和CP-VTON工作中。對于人體解析,以往的研究大多采用低水平的過分割、姿態(tài)估計和自底向上的假設(shè),生成用于人體解析的構(gòu)建模塊。關(guān)于人體解析方法,大多利用CNN和遞歸神經(jīng)網(wǎng)絡(luò)提高特征表達能力,為了獲取豐富的結(jié)構(gòu)信息,將CNN和圖模型(如條件隨機場)結(jié)合起來。Chen等[15]將對象分割擴展到對象零件級分割,并發(fā)布了PASCAL PART數(shù)據(jù)集,其中包括人體的像素級零件注釋。但上述這些方法很難直接利用基于關(guān)節(jié)點的姿勢估計模型在像素預(yù)測中包含復(fù)雜的結(jié)構(gòu)約束,為了使生成的解析結(jié)果在語義上與人的姿態(tài)一致,Liang等[16]收集一個新的數(shù)據(jù)集(look into person,LIP)進行人體分析和服裝分割,提出一個無縫集成人工解析和姿態(tài)估計的統(tǒng)一框架(JPPNet)來探索高效的上下文建模,可以同時預(yù)測解析和姿態(tài),并具有極高的質(zhì)量,該框架網(wǎng)絡(luò)使用一個共享殘差網(wǎng)絡(luò)來提取人體圖像特征,后面接兩個不同的網(wǎng)絡(luò)來得到解析結(jié)果與姿態(tài)結(jié)果,在這兩個結(jié)果后面分別接細(xì)化網(wǎng)絡(luò),從而進一步細(xì)化出更精確的結(jié)果。
現(xiàn)有研究主要基于薄片樣條(thin plate spline, TPS)變換實現(xiàn)一種可學(xué)習(xí)的圖像匹配模型,并采用CNN實現(xiàn)對衣物形變的預(yù)測。TPS可以對表面進行柔性變形,簡單而言,它要解決的問題就是如何把一張圖片變形到另外一張圖片上并使得相互對應(yīng)的關(guān)鍵點重合。隨著深度學(xué)習(xí)理論的提出,越來越多的CNN模型被提出。Rocco等[17]提出了用于幾何匹配的CNN架構(gòu),用于估計兩個輸入圖像之間幾何變換的參數(shù)。首先,該框架用強大的可訓(xùn)練的CNN特征代替標(biāo)準(zhǔn)的局部特征,可以處理匹配圖像之間的外觀大變化;其次,開發(fā)了可訓(xùn)練的匹配和變換估計層,以穩(wěn)健的方式處理有噪聲和不正確的匹配。在CP-VTON工作中,通過定制的CNN提出一種新的可學(xué)習(xí)的TPS變換,引入幾何匹配模塊(geometric matching module, GMM),這是一個直接使用像素級損耗(L1)訓(xùn)練的端到端神經(jīng)網(wǎng)絡(luò),能夠很好地處理大型形狀和姿態(tài)轉(zhuǎn)換。GMM主要包括4個部分:兩個分別用于提取人體表征和目標(biāo)服裝的高級特征網(wǎng)絡(luò);將兩個高級特征組合為單個張量的相關(guān)層,作為回歸網(wǎng)絡(luò)的輸入;用于預(yù)測空間變換參數(shù)(θ)的回歸網(wǎng)絡(luò);模擬TPS變換進行服裝變形。Dong等[18]受CP-VTON啟發(fā)提出多姿態(tài)虛擬試衣網(wǎng)絡(luò)(multi-pose guided virtual try-on network,MG-VTON),采用CNN學(xué)習(xí)變換參數(shù),包括特征提取層、特征匹配層和變換參數(shù)估計層。
圖像合成一般采用GAN網(wǎng)絡(luò)模型,受原始 GAN的啟發(fā),越來越多改進版GAN被提出并且在圖像生成、圖像修復(fù)、超分辨率成像等方面取得了令人矚目的成果。Isola等[19]引用一個條件GAN框架來研究圖像到圖像的轉(zhuǎn)換問題,將給定的輸入圖像轉(zhuǎn)換為另一個具有不同表示的圖像。Mirza等[20]提出CGAN(conditional generative adversarial nets),通過在生成器和判別器中加入條件來實現(xiàn)按條件生成數(shù)據(jù)。Zhu等[21]提出的CycleGAN使用兩個生成器和兩個判別器,并加入了循環(huán)一致性損失函數(shù),可用于圖像到圖像的轉(zhuǎn)換。Siarohin等[22]提出可變形的GAN,在生成對抗網(wǎng)絡(luò)的生成器中引入可變形跳躍連接,嘗試解決試衣時不同姿勢之間的未對準(zhǔn)問題。在MG-VTON中,引入一種深度扭曲生成對抗網(wǎng)絡(luò)(Warp-GAN),將期望的服裝外觀扭曲到合成的人體解析圖中,使用扭曲特征策略學(xué)習(xí)生成真實圖像,該網(wǎng)絡(luò)由生成器(Gwarp)和判別器(Dwarp)組成。在Warp-GAN中,預(yù)訓(xùn)練模型時使用感知損失來度量高級特征之間的距離,鼓勵生成器合成高質(zhì)量和真實感的圖像。感知損失定義如式(1)所示。由于來自不同層判別器的不同尺度的特征映射增強了圖像合成性能,因此應(yīng)引入特征損失,如式(2)所示。此外,采用對抗性損失和損耗來提高性能,鼓勵Gwarp從不同方面合成真實和自然的圖像,如式(3)所示。
(1)
式中:Lperceptual為感知損失;I為地面真值圖像;為生成圖像;φi(I)為地面真值圖像I在預(yù)訓(xùn)練網(wǎng)絡(luò)Φ的第i(i=0,1,2,3,4)層特征映射;φi()為生成圖像在預(yù)訓(xùn)練網(wǎng)絡(luò)Φ的第i(i=0,1,2,3,4)層特征映射;αi為第i層的損失權(quán)重。
(2)
式中:Lfeature為特征損失;Fi(I)為地面真值圖像I在訓(xùn)練后的Dwarp中第i(i=0,1,2)層特征映射;Fi()為生成圖像在訓(xùn)練后的Dwarp中第i(i=0,1,2)層特征映射;γi為第i層L1損失的權(quán)重。
LGwarp=λ1Ladv+λ2Lperceptual+λ3Lfeature+λ4L1
(3)
式中:LGwarp為生成器損失;λi(i=1,2,3,4)為第i層相應(yīng)損失的權(quán)重;Ladv為對抗性損失;L1為機器學(xué)習(xí)中常用的損失函數(shù)之一,用于最小化誤差,該誤差是真實值和預(yù)測值之間的所有絕對差之和。
3.1.1 根據(jù)輸入服裝圖像改變原圖模特著裝
圖1 VITON虛擬試衣結(jié)果[5]Fig.1 Virtual try-on results of VITON[5]
CP-VTON在VITON基礎(chǔ)上進行改進,采用GMM和Try-On兩個模塊,能夠?qū)⒎b轉(zhuǎn)換為適合目標(biāo)人物的形狀,并保留服裝的紋理、標(biāo)志、刺繡等細(xì)節(jié)。在GMM網(wǎng)絡(luò)中,先對輸入的標(biāo)準(zhǔn)待穿衣服圖片(c)和人體特征信息(p)進行卷積以提取高維特征,然后通過一個相關(guān)層繼續(xù)卷積輸出一套變換參數(shù)(θ),使用這套參數(shù)對衣服圖片(c)進行TPS變換,整個流程是端到端可學(xué)習(xí)的。在Try-On模塊中用類U-Net網(wǎng)絡(luò),輸入人體特征(p)和變形后的衣服圖片(?),輸出一個組合掩碼(M)和初步圖片(Ir),然后使用掩碼(M)對?和Ir進行融合生成最終的試衣結(jié)果(Io)。試驗證明,相比VITON,CP-VTON在服裝細(xì)節(jié)保留方面做得更好,兩者虛擬試衣效果對比如圖2所示。
圖2 VITON與CP-VTON虛擬試衣結(jié)果對比[6]Fig.2 Comparison of virtual try-on results of VITON and CP-VTON[6]
3.1.2 多姿態(tài)引導(dǎo)虛擬試穿網(wǎng)絡(luò)
MG-VTON可以在輸入圖像中擬合所需的服裝并對人體姿態(tài)進行處理,從而生成新的人體圖像,效果如圖3所示。MG-VTON是一個具有生成性、對抗性學(xué)習(xí)的多階段框架,構(gòu)建過程分為3個階段:首先,合成目標(biāo)圖像的期望人體解析圖,以匹配期望姿態(tài)和期望服裝形狀;其次,采用深度變形生成對抗網(wǎng)絡(luò)(Warp-GAN),將期望的服裝外觀變形為合成的人體解析圖,解決了輸入人體姿態(tài)與期望人體姿態(tài)之間的錯位問題;最后,通過細(xì)化渲染網(wǎng)絡(luò)恢復(fù)衣服的紋理細(xì)節(jié)并刪除一些偽影。MG-VTON為多姿態(tài)引導(dǎo)虛擬試穿任務(wù)構(gòu)建了一個新數(shù)據(jù)集,涵蓋了具有更多姿勢和衣服多樣性的人物圖像。
圖3 MG-VTON虛擬試穿結(jié)果[18]Fig.3 Virtual try-on results of MG-VTON[18]
3.1.3 根據(jù)輸入模特圖像替換原圖模特著裝
Raj等[23]提出一個新的基于深度學(xué)習(xí)的虛擬試衣網(wǎng)絡(luò)SwapNet,即基于圖像的服裝轉(zhuǎn)移,給定用戶圖像和穿著目標(biāo)衣服的模特圖像,其任務(wù)是合成穿著目標(biāo)衣服的用戶新圖像。Wu等[24]提出一種創(chuàng)新的混合學(xué)習(xí)框架M2E-TON(M2E-try on net),即無監(jiān)督學(xué)習(xí)和自監(jiān)督學(xué)習(xí)結(jié)合姿態(tài)條件GAN,可以自動將想要的模特服裝傳輸?shù)侥繕?biāo)人物的圖像上,試穿效果如圖4所示。首先, M2E-TON提出了一種基于密集姿態(tài)的人體姿態(tài)對齊網(wǎng)絡(luò)將模型圖像轉(zhuǎn)換為目標(biāo)人體姿態(tài),通過自我監(jiān)督的訓(xùn)練方法,利用同一個人在兩種不同姿態(tài)下的圖像來監(jiān)督姿態(tài)對齊網(wǎng)絡(luò);在此基礎(chǔ)上,提出了一種基于紋理細(xì)化網(wǎng)絡(luò)的圖像融合算法;最后,采用一個擬合網(wǎng)絡(luò)將期望的模型服裝傳遞給目標(biāo)人群,擬合網(wǎng)絡(luò)是一個編解碼器網(wǎng)絡(luò),包括3個卷積層作為編碼器,6個殘差塊用于特征學(xué)習(xí),2個反卷積層和1個卷積層作為解碼器。此外,M2E-TON還涉及一種帶有姿態(tài)條件GAN的非配對聯(lián)合訓(xùn)練策略,以解決高成本配對訓(xùn)練數(shù)據(jù)的需求(目標(biāo)人需要理想的模型服裝)問題。
圖4 M2E-TON虛擬試衣結(jié)果[24]Fig.4 Virtual try-on results of M2E-TON[24]
基于深度學(xué)習(xí),利用圖像和文本技術(shù)做深層抽取和表示,用深層網(wǎng)絡(luò)學(xué)習(xí)搭配關(guān)系,在實際應(yīng)用中取得了良好的效果。
3.2.1 根據(jù)模特圖像上已有服裝自動生成搭配的缺失部件
深度生成模型的最新突破為計算機視覺中眾多的時尚應(yīng)用打開了一扇新大門。Han等[25]提出FiNet,這是一個由形狀生成網(wǎng)絡(luò)和外觀生成網(wǎng)絡(luò)組成的兩階段生成網(wǎng)絡(luò),每個生成網(wǎng)絡(luò)包含一個生成器以及兩個相互作用的編碼器,在第一個編碼器學(xué)習(xí)隱空間表征時,通過第二個編碼器的隱變量對其進行約束,第二個編碼器的輸入來自缺失的服裝單品,兩個編碼器共同學(xué)習(xí),這種方式使得兩個生成網(wǎng)絡(luò)都可以學(xué)習(xí)不同服裝之間的高層級搭配兼容性信息,可以應(yīng)用于具有搭配兼容性要求的時尚設(shè)計輔助工作和新時尚單品推薦任務(wù),效果如圖5所示。具體而言,形狀生成網(wǎng)絡(luò)的目的是學(xué)習(xí)一個映射,在將形狀編碼器的輸出作為條件的情況下,該映射能夠把有缺失的外形信息以及人體信息映射到一個完整的外形信息圖,然后把這個信息圖輸入到外觀生成網(wǎng)絡(luò)中,生成與現(xiàn)有服裝視覺兼容的新服裝。
圖5 FiNet效果圖[25]Fig.5 Renderings of FiNet[25]
3.2.2 對模特圖像上現(xiàn)有服裝進行微調(diào)
Hsiao等[26]提出一種新穎的圖像生成方法,稱為Fashion ++,即通過最少的服裝編輯建議對現(xiàn)有服裝進行較小的更改,以提高其時尚性,更改可能需要卸下圍巾、換上領(lǐng)口高的上衣或者把T恤塞進襯衫,如圖6所示。Fashion ++模型由一個深度圖像生成神經(jīng)網(wǎng)絡(luò)組成,該神經(jīng)網(wǎng)絡(luò)根據(jù)學(xué)習(xí)到的每件衣服的編碼來學(xué)習(xí)合成衣服,潛在編碼根據(jù)形狀和紋理顯式分解,從而分別允許對形狀和顏色/圖案/材料進行直接編輯。其主要思想是激活最大化方法,該方法基于梯度的優(yōu)化圖像高度激活神經(jīng)網(wǎng)絡(luò)中的目標(biāo)神經(jīng),對來自深度圖像生成網(wǎng)絡(luò)的局部編碼進行操作。
圖6 Fashion ++的效果圖[26]Fig.6 Renderings of Fashion ++[26]
3.2.3 時尚推薦
Li等[27]提出一個服裝搭配評分系統(tǒng),這是基于深度學(xué)習(xí)的多模態(tài)、多實例打分模型。該模型首先使用深度卷積網(wǎng)絡(luò)的端到端視覺特征編碼系統(tǒng),可以將一件時尚服裝作為輸入,并預(yù)測用戶的參與度水平;然后提出一個多模態(tài)深度學(xué)習(xí)框架,該框架利用圖像、標(biāo)題和類別中的上下文信息,為服裝評分任務(wù)提供更可靠的解決方案。Han等[28]提出了通過一個端到端的框架來聯(lián)合學(xué)習(xí)視覺語義嵌入和服飾物品之間的匹配性關(guān)系。首先采用Inception-V3 CNN模型作為特征提取器,將圖像轉(zhuǎn)換為特征向量;然后將服裝項目視為一個具有特定順序的序列,序列中的每個圖像作為一個時間步長,搭配的每一件衣服就是一個時間點,在CNN模型的基礎(chǔ)上利用一個具有512個隱藏單元的單層雙向LSTM (Bi-LSTM)模型來預(yù)測集合中的下一個項目;最后訓(xùn)練一種視覺語義嵌入,在Bi-LSTM的訓(xùn)練過程中提供類別和屬性信息,可以有效地學(xué)習(xí)服裝的兼容性。Bracher等[29]提出Fashion DNA,這是一種時尚產(chǎn)品推薦算法,其將文章圖像、標(biāo)簽和其他目錄信息與客戶響應(yīng)結(jié)合起來,通過最大限度地減少深度神經(jīng)網(wǎng)絡(luò)的交叉熵?fù)p失,將精心策劃的內(nèi)容用于協(xié)同過濾,獲取大量客戶的銷售記錄,目的是通過向個別客戶提供量身定制的建議來實現(xiàn)銷售額最大化。由于顧客的興趣和項目相關(guān)性會隨著時間的推移而變化,Heinz等[30]提出基于RNN的個性化推薦模型,通過將LSTM元素引入Fashion DNA的網(wǎng)絡(luò)來解決個性化推薦。
目前基于深度學(xué)習(xí)的虛擬試衣技術(shù)研究已經(jīng)取得很大進展,但仍存在以下問題:
(1)合成圖像的分辨率(256像素×192像素)較低。首先,變形后的衣服和人體之間的錯位區(qū)域會產(chǎn)生偽影,隨著圖像分辨率的增加,偽影變得明顯;其次,現(xiàn)有方法中使用簡單的U-Net不足以合成高分辨率圖像中被遮擋的身體部位。
(2)現(xiàn)有基于深度學(xué)習(xí)的虛擬試衣技術(shù)大部分基于固定且簡單的人體姿勢,對多姿勢的研究很少,但顧客往往希望從不同的角度或以不同的姿勢看到自己的試衣效果。
(3)2 D非剛性變形算法的不足導(dǎo)致衣服的紋理容易過度變形。
(4)現(xiàn)有基于深度學(xué)習(xí)的虛擬試衣技術(shù)研究大多以干凈的產(chǎn)品圖像為基礎(chǔ),只有小部分研究以模特圖像為基礎(chǔ),而且實現(xiàn)的虛擬試衣基本都是上裝,用戶無法自由選擇要試穿哪一部分的衣服,這對面向真實場景應(yīng)用的虛擬換裝系統(tǒng)的實現(xiàn)帶來極大的隱患與阻力。
針對上述虛擬試衣技術(shù)存在的問題,未來的研究可以分以下幾個方面:
(1)基于深度學(xué)習(xí)的虛擬試衣系統(tǒng)可實現(xiàn)高分辨率(1 024像素×768像素)圖像的合成,增加網(wǎng)絡(luò)模塊以刪除未對齊區(qū)域中與衣服紋理無關(guān)的信息,同時使用衣服紋理填充未對齊區(qū)域,并通過特征級別的多尺度細(xì)化保留衣服的細(xì)節(jié)。改進算法并利用條件生成網(wǎng)絡(luò)對變形后的服裝圖像進行組合,重新繪制被遮擋區(qū)域。
(2)基于深度學(xué)習(xí)的虛擬試衣系統(tǒng)可用于多姿勢試穿場景,能夠顯示原始圖像中看不到的顏色和紋理角度,用戶能從不同的角度或以不同的姿勢看到自己的試衣效果,并且服裝上的標(biāo)識、形狀和文字等結(jié)構(gòu)必須盡可能自然。
(3)將基于二維圖像的高質(zhì)量圖像合成方法和基于三維模型的目標(biāo)人體姿態(tài)變形方法結(jié)合起來,使用三維人體模型的二維到三維布料模型重建方法,無需三維服裝模板,這樣重建的服裝模型能以自然的方式使衣服變形,并且保留良好的紋理細(xì)節(jié)。
(4)基于深度學(xué)習(xí)的虛擬試衣系統(tǒng)允許用戶試穿任意模型圖像中的衣服,而不局限于店內(nèi)干凈的服裝產(chǎn)品圖像,考慮加入交互式紋理控制機制,使用戶可以自由選擇想試穿的衣服(上衣、下裝或整套)。
綜合分析了基于深度學(xué)習(xí)的虛擬試衣技術(shù)的研究現(xiàn)狀、關(guān)鍵技術(shù)、應(yīng)用以及發(fā)展趨勢,雖然目前對基于深度學(xué)習(xí)的虛擬試衣技術(shù)的研究還不夠成熟,有待解決的技術(shù)難點仍然存在,需要在已有技術(shù)的基礎(chǔ)上探索出更高效的新方法。但不可否認(rèn)的是基于深度學(xué)習(xí)的虛擬試衣技術(shù)擁有廣闊的市場前景,它將改變現(xiàn)有的試衣環(huán)境和傳統(tǒng)的購物方式,成為服裝實體店及網(wǎng)購中不可或缺的一部分。