禹 立,鐘躍崎,2
(1.東華大學(xué) 紡織學(xué)院, 上海 201620; 2.東華大學(xué) 紡織面料技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室, 上海 201620)
中國(guó)擁有一個(gè)龐大的服裝網(wǎng)購(gòu)市場(chǎng)[1],虛擬試衣技術(shù)通過(guò)模擬指定服裝穿在用戶身上的著裝效果,讓用戶能夠直觀地看到自身著裝的視覺(jué)效果。該技術(shù)能夠給顧客更真實(shí)的購(gòu)物體驗(yàn),有助于促進(jìn)顧客做出購(gòu)買(mǎi)決策[2-3]。
過(guò)去很多研究者專(zhuān)注于基于三維建模的虛擬試衣技術(shù)[4-6],即通過(guò)構(gòu)建人體和服裝的三維模型來(lái)實(shí)現(xiàn)虛擬試衣。這種方法不僅可以評(píng)價(jià)合身性,而且通過(guò)精準(zhǔn)地控制服裝的物理變形[7],可達(dá)到較為真實(shí)的試衣效果。這類(lèi)方法一般需要昂貴的設(shè)備來(lái)獲取精確的三維信息,并且在構(gòu)建三維模型的過(guò)程中必須人工參與,故效率較低。
而基于二維圖像的虛擬試衣技術(shù)只需要輸入用戶和目標(biāo)服裝的二維圖像就能合成用戶穿著該服裝的圖像,無(wú)需收集三維信息[8]。二維圖像的低成本獲取使得這種技術(shù)在快速更迭的時(shí)尚行業(yè)中更加具有競(jìng)爭(zhēng)優(yōu)勢(shì)。生成對(duì)抗網(wǎng)絡(luò)常被應(yīng)用于該類(lèi)技術(shù),有學(xué)者[8]借鑒循環(huán)一致思想[9],提出了一種條件類(lèi)推生成對(duì)抗網(wǎng)絡(luò),實(shí)現(xiàn)了對(duì)圖像中人物的服裝進(jìn)行更換。為了簡(jiǎn)化輸入,Han等[10]提出一種從粗糙到精細(xì)的策略,僅需輸入一張用戶圖像和目標(biāo)服裝產(chǎn)品圖即可實(shí)現(xiàn)換衣,但該方法在處理目標(biāo)服裝與用戶匹配時(shí)有時(shí)會(huì)發(fā)生失敗。為了能夠處理匹配失敗的問(wèn)題,Raj等[11]提出通過(guò)人物解析遷移[12]或者姿態(tài)遷移[13],利用網(wǎng)絡(luò)來(lái)學(xué)習(xí)服裝與用戶的匹配關(guān)系,但是這類(lèi)方法生成的試衣結(jié)果會(huì)丟失部分服裝紋理細(xì)節(jié),且未考慮如何保持用戶身份信息(如膚色、頭發(fā)等)。
本文提出了一種基于服裝遷移的二維虛擬試衣技術(shù),只需要輸入用戶圖像和模特圖像,就能夠生成模特服裝穿在用戶身上的合成圖像,并且用戶的體型、姿態(tài)保持不變,同時(shí)服裝的屬性、細(xì)節(jié)仍被保留。通過(guò)紋理重映射[14]以及人物解析遷移盡可能多且合理地提取目標(biāo)服裝和用戶紋理,基于半監(jiān)督學(xué)習(xí)來(lái)修復(fù)紋理缺失區(qū)域,得到最終的試衣結(jié)果。本文通過(guò)將虛擬試衣任務(wù)轉(zhuǎn)換為圖像修復(fù)任務(wù)[15],降低模型訓(xùn)練難度,為基于圖像的虛擬試衣研究提供了新的思路。
密集姿態(tài)[14]作為一種人物圖像的描述特征,是基于SMPL[16]參數(shù)化三維人體模型定義的。該模型可以根據(jù)參數(shù)控制人體的體形和姿態(tài)。借助密集姿態(tài),可以將二維的人物圖像映射到一個(gè)統(tǒng)一的三維人體模型上,這個(gè)三維模型的體形、姿態(tài)都是固定的。如果做一個(gè)逆映射,即將三維人體表面的紋理映射回二維圖像,則得到的結(jié)果與密集姿態(tài)的體形、姿態(tài)相符合。因此本文通過(guò)紋理的映射與逆映射來(lái)實(shí)現(xiàn)服裝與用戶的匹配,紋理重映射的效果如圖1所示。
圖1 紋理重映射的效果
另外,鑒于服裝紋理通常存在對(duì)稱(chēng)區(qū)域(如左袖與右袖),因此在逆映射階段加入對(duì)稱(chēng)部位相應(yīng)的紋理圖,有助于減少紋理缺失區(qū)域的面積,以達(dá)到充分利用模特圖像所提供紋理的目的,對(duì)稱(chēng)部位影響紋理重映射效果如圖2所示。
圖2 對(duì)稱(chēng)部位影響紋理重映射效果
在訓(xùn)練階段,本文采用半監(jiān)督學(xué)習(xí),利用2張同一人物且穿同一服裝但姿態(tài)不同的圖像,記為A和B,構(gòu)成圖像對(duì)來(lái)進(jìn)行訓(xùn)練。若將其中一張圖像A的身體分割圖以及另一張圖像B的人物解析作為輸入,由于仍然是同一個(gè)人,因此遷移結(jié)果的真值即為圖像A的人物解析。因其類(lèi)似于圖像分割任務(wù)[17],故可采用Softmax交叉熵作為損失函數(shù)。另外,本文還加入了生成對(duì)抗損失函數(shù)[18]和總變差正則化[19]來(lái)輔助訓(xùn)練,同時(shí)對(duì)圖像B的人物解析進(jìn)行數(shù)據(jù)增廣來(lái)增強(qiáng)模型的泛化能力。
其中∩代表交集操作,即當(dāng)2個(gè)掩模同一位置的像素值均為1時(shí),結(jié)果相應(yīng)位置為1,其他情況均為0。最后將得到的用戶紋理掩模Utex-mask與用戶圖像U進(jìn)行逐元素相乘,得到所需的用戶紋理Utex。
圖3 提取用戶紋理的流程
在人物解析遷移的基礎(chǔ)上,利用交集操作,不僅保證了提取的紋理被限制在相應(yīng)的用戶紋理區(qū)域,同時(shí)還去除了會(huì)影響最終結(jié)果的多余紋理。如圖3所示,用戶掩模會(huì)將用戶的右臂完整地保留下來(lái),而由于目標(biāo)服裝為短袖,因此右臂上半部分是多余的,通過(guò)交集操作得到的用戶紋理掩模,丟棄了該區(qū)域的用戶紋理,故而提取到了最優(yōu)的用戶紋理。
圖4 合并服裝紋理和用戶紋理得到粗糙結(jié)果
修補(bǔ)紋理缺失區(qū)域?qū)嵸|(zhì)為一個(gè)圖像修復(fù)任務(wù)[15],并且修復(fù)區(qū)域的形狀是不規(guī)則的。本文通過(guò)訓(xùn)練一個(gè)基于生成對(duì)抗網(wǎng)絡(luò)的紋理修復(fù)網(wǎng)絡(luò)來(lái)填補(bǔ)這些缺失的紋理,通過(guò)卷積神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)輸入圖像中的語(yǔ)義信息和隱藏特征,使得修復(fù)的內(nèi)容不僅與背景過(guò)渡自然,同時(shí)不會(huì)破壞人物和服裝的整體結(jié)構(gòu)與局部細(xì)節(jié)。
圖5 紋理修復(fù)網(wǎng)絡(luò)結(jié)構(gòu)
本文合并了LookBook數(shù)據(jù)集[22]和MVC數(shù)據(jù)集[23]來(lái)進(jìn)行模型訓(xùn)練,這些數(shù)據(jù)集包含了同一個(gè)人且穿著相同服裝在不同姿態(tài)下拍攝的圖像組,每組圖像至少由2張人物圖像構(gòu)成。由于紋理修復(fù)網(wǎng)絡(luò)的目標(biāo)是將粗糙結(jié)果修復(fù)為最終的試衣結(jié)果,為了降低數(shù)據(jù)集構(gòu)建難度,依然采用半監(jiān)督學(xué)習(xí)的方式來(lái)訓(xùn)練網(wǎng)絡(luò)。
有鑒于此,本文提出了三元組訓(xùn)練策略。分別定義非成對(duì)樣本、成對(duì)樣本和修復(fù)樣本,并對(duì)這3類(lèi)樣本進(jìn)行聯(lián)合訓(xùn)練,實(shí)現(xiàn)粗糙結(jié)果的紋理修復(fù),三元組訓(xùn)練策略如圖6所示。將同一人物在不同姿態(tài)下的照片視為一個(gè)圖像組:①對(duì)于不成對(duì)樣本,首先隨機(jī)挑選2個(gè)不同的圖像組,然后從這2個(gè)圖像組中分別再隨機(jī)挑選1張;②對(duì)于成對(duì)樣本,則是先隨機(jī)挑選一個(gè)圖像組,然后從該圖像組隨機(jī)挑選2張圖像;③對(duì)于修復(fù)樣本,則是從任意圖像組挑選任意1張圖像并隨機(jī)擦除部分區(qū)域。另外,由于非成對(duì)樣本對(duì)應(yīng)的真值y難以獲取,所以只使用生成對(duì)抗損失LG作為唯一的損失函數(shù)。
圖6 三元組訓(xùn)練策略
圖7展示了人物解析遷移的生成結(jié)果,“本文結(jié)果”即為本文提出方法得到的結(jié)果,“真值”即為人物解析遷移的期望結(jié)果。從圖中可以看出,人物解析遷移網(wǎng)絡(luò)其合成的結(jié)果和預(yù)期真值較為符合。另外,當(dāng)使用成對(duì)樣本的數(shù)據(jù)進(jìn)行測(cè)試時(shí),類(lèi)似于訓(xùn)練階段,即遷移結(jié)果會(huì)有真值,因此可以借助圖像分割任務(wù)的評(píng)價(jià)指標(biāo)進(jìn)行定量分析。本文使用平均像素精度和平均交并比[17]作為遷移結(jié)果的評(píng)價(jià)指標(biāo)。隨機(jī)挑選了5 000對(duì)未參與訓(xùn)練的數(shù)據(jù)進(jìn)行測(cè)試,計(jì)算遷移結(jié)果的平均像素精度以及平均交并比,本文方法的平均像素精度為70.34%,平均交并比為61.35%,同樣證明了本文方法的有效性。
圖7 人物解析遷移結(jié)果展示
為了驗(yàn)證本文方法的泛化能力,使用未參與訓(xùn)練的Zalando數(shù)據(jù)集[9]作為測(cè)試集來(lái)評(píng)估試衣結(jié)果,通過(guò)隨機(jī)組合,得到了2 000組圖像,每組圖像包含1張用戶圖像和1張模特圖像,其中用戶和模特不是同一個(gè)人,所穿服裝、體形、姿態(tài)均不相同。
圖8展示了本文方法的最終試衣結(jié)果,從結(jié)果中可以看出,本文方法能夠較好地保留服裝細(xì)節(jié)(如服裝屬性、圖案紋理)和用戶身份信息(膚色、頭發(fā)),生成的試衣結(jié)果更加合理且真實(shí)。這是因?yàn)椋孩僭谔崛》b紋理時(shí),僅關(guān)注模特圖像中目標(biāo)服裝區(qū)域的像素,借助紋理重映射實(shí)現(xiàn)服裝與用戶匹配的同時(shí),盡可能減少了紋理細(xì)節(jié)的損失;②在提取用戶紋理時(shí),借助人物解析遷移的結(jié)果,盡可能多且正確地保留用戶的紋理;③對(duì)粗糙結(jié)果的紋理修復(fù),使生成的結(jié)果更加真實(shí)、自然。
圖8 最終試衣結(jié)果展示
對(duì)于圖像生成任務(wù),評(píng)價(jià)一個(gè)模型生成結(jié)果的好壞通常是較為主觀的判斷,如對(duì)于基于圖像的二維虛擬試衣任務(wù)來(lái)說(shuō),需要根據(jù)試衣結(jié)果是否正確,以及視覺(jué)上是否真實(shí)來(lái)進(jìn)行判斷。本文采用Inception Score (IS)[24]和Fréchet Inception Distance (FID)[25]作為評(píng)價(jià)圖像質(zhì)量的指標(biāo)。這2個(gè)評(píng)價(jià)指標(biāo)都是借助ImageNet預(yù)訓(xùn)練的Inception網(wǎng)絡(luò)[26]實(shí)現(xiàn)自動(dòng)計(jì)算的。一般來(lái)說(shuō),IS越大,F(xiàn)ID值越小,表示其與真實(shí)數(shù)據(jù)越接近,圖像質(zhì)量越好。在本文中,使用Zalando數(shù)據(jù)集的人物圖像作為真實(shí)數(shù)據(jù),另外還采用檢測(cè)分?jǐn)?shù)(DS)[27]這一指標(biāo)。其計(jì)算步驟為,首先將生成圖像輸入到一個(gè)目標(biāo)檢測(cè)模型,然后得到“人物”對(duì)應(yīng)類(lèi)別的分?jǐn)?shù),最后對(duì)所有生成圖像得到的分?jǐn)?shù)求均值。DS主要用于衡量生成圖像中的人物是否真實(shí),其值越高,則生成的人物圖像質(zhì)量越好。
表1總結(jié)了本文定量評(píng)價(jià)的結(jié)果, 本文IS為2.708,F(xiàn)ID為29.48,DS為99.88,均較為接近真實(shí)數(shù)據(jù)所獲得的分?jǐn)?shù),進(jìn)一步表明本文方法可以生成較高質(zhì)量的試衣結(jié)果。
表1 本文試衣結(jié)果的定量評(píng)價(jià)
本文從紋理修復(fù)的視角,對(duì)基于二維圖像的虛擬試衣進(jìn)行研究,提出了一種虛擬試衣技術(shù),通過(guò)輸入用戶圖像和模特圖像,能夠自動(dòng)生成用戶身穿模特服裝的試衣圖像。在紋理重映射、人物解析遷移以及紋理修復(fù)的幫助下,試衣結(jié)果能夠較好地保留服裝的紋理細(xì)節(jié)和用戶的身份信息。該技術(shù)在大部分情況下均能生成正確的試衣結(jié)果,但還是存在一些不足之處,例如試衣結(jié)果對(duì)密集姿態(tài)估計(jì)、人物解析預(yù)測(cè)的結(jié)果較為敏感,當(dāng)這些結(jié)果存在錯(cuò)誤時(shí),會(huì)影響到最終試衣結(jié)果的合成。未來(lái)可以探索更具魯棒性的紋理提取方法,減少對(duì)紋理描述特征的依賴(lài)。另外,還可以嘗試將該技術(shù)拓展到更多的試穿物品,如眼鏡、帽子、鞋子等。