肖紅梅, 王偉珍*,2, 房媛
(1.大連工業(yè)大學(xué) 服裝學(xué)院,遼寧 大連 116034;2.大連工業(yè)大學(xué) 服裝人因與智能設(shè)計(jì)研究中心,遼寧 大連 116034;3.大連工業(yè)大學(xué) 工程訓(xùn)練中心,遼寧 大連 116034)
款型設(shè)計(jì)是服裝生產(chǎn)過程中核心內(nèi)容產(chǎn)出的重要環(huán)節(jié)。深度學(xué)習(xí)技術(shù)在近年不斷成熟,其中生成對抗網(wǎng)絡(luò)(generated adversarial network, GAN)模型在服裝圖像生成領(lǐng)域應(yīng)用廣泛。對于服裝圖像區(qū)域?qū)傩跃庉嬋蝿?wù),學(xué)界分別通過改進(jìn)模型和訓(xùn)練方式開展相關(guān)研究并取得顯著效果。其中時(shí)尚生成對抗網(wǎng)絡(luò)(FashionGAN)[1]模型可以解決深度卷積生成對抗網(wǎng)絡(luò)(deep convolution generative adversarial networks,DCGAN)[2]所產(chǎn)生的服裝圖像結(jié)構(gòu)不一致以及圖像模糊的問題,其通過語義分割和文本編碼對輸入的圖像和描述進(jìn)行處理,并對編輯后的形狀加以紋理渲染。Fashion-AttGAN[3]對面部屬性編輯生成對抗網(wǎng)絡(luò)(attribute generative adversan networks,AttGAN)[4]模型的損失函數(shù)進(jìn)行改進(jìn),使得模型能夠編輯服裝圖像顏色和袖長兩個屬性。為展現(xiàn)生成模型在產(chǎn)品設(shè)計(jì)領(lǐng)域的實(shí)用性,屬性設(shè)計(jì)生成對抗網(wǎng)絡(luò)(design attribute GAN,DA-GAN)[5]在AttGAN基礎(chǔ)上采用了新的損失函數(shù)。屬性編輯生成對抗網(wǎng)絡(luò)(attribute manipulation generative adversarial networks,AMGAN)[6]模型將條件生成對抗網(wǎng)絡(luò)(condition GAN,CGAN)模型、卷積神經(jīng)網(wǎng)絡(luò)(convolution neural network,CNN)和類激活圖(class activation maps,CAMs)算法結(jié)合,實(shí)現(xiàn)了袖子和領(lǐng)型的精細(xì)控制。生成器使用CAMs增強(qiáng)注意機(jī)制,且在模型中添加屬性鑒別器網(wǎng)絡(luò),使得模型專注于指定屬性的編輯。TailorGAN[7]模型使用自監(jiān)督訓(xùn)練方式實(shí)現(xiàn)服裝的屬性編輯,使用對抗損失和重建損失實(shí)現(xiàn)不同領(lǐng)型和不同袖長之間的轉(zhuǎn)換。虛擬私人裁縫網(wǎng)絡(luò)(virtual personal tailoring network,VPTNet)[8]模型將可編輯服裝圖像屬性拓展至衣長,整個模型分為形狀生成和色彩紋理渲染兩個部分,通過使用變分自編碼器生成對抗網(wǎng)絡(luò)(variational autoencoder GAN,VAE-GAN)模型,對輸入的語義圖和邊緣圖進(jìn)行編碼,編輯為目標(biāo)形狀后完善細(xì)節(jié)。
上述模型從不同角度提供了服裝款型設(shè)計(jì)的方法,但對于款型變化的細(xì)節(jié)之處研究較少,圖像的形狀編輯效果存在模糊[9]和無關(guān)屬性(如圖案和紋理)被修改的問題[10]。為解決這些編輯不精準(zhǔn)的問題(如袖子輪廓不完整、領(lǐng)型多余輪廓等),文中提出一種優(yōu)化Fashion-AttGAN模型以提高編輯后的圖象質(zhì)量。
GAN模型在生成真實(shí)自然圖像任務(wù)中展示出了強(qiáng)大能力,它由生成模型Generator和判別模型Discriminator組成,其結(jié)構(gòu)如圖1[11]所示。圖1中將噪音向量z輸入到生成模型G后生成假圖像xfake。將真實(shí)圖像xreal和假圖像xfake輸入判別模型,通過分類網(wǎng)絡(luò)D識別出輸入圖像的真假。生成模型和判別模型交替訓(xùn)練,使生成器學(xué)習(xí)到真實(shí)圖像數(shù)據(jù)分布。GAN的損失函數(shù)見式(1),訓(xùn)練目標(biāo)為求得損失函數(shù)的最小值。

圖1 生成對抗網(wǎng)絡(luò)結(jié)構(gòu)

(1)

直接應(yīng)用該GAN模型容易產(chǎn)生模式崩塌,無法完成服裝圖像屬性編輯。Fashion-AttGAN模型能實(shí)現(xiàn)圖像屬性的精準(zhǔn)修改,更適合應(yīng)用到上裝圖像屬性編輯的研究中。故文中選擇Fashion-AttGAN模型作為基準(zhǔn)進(jìn)行改進(jìn)。
屬性編輯是近年生成式模型關(guān)注的熱點(diǎn)問題,其可以通過使用特定算法精準(zhǔn)控制圖像中指定屬性的呈現(xiàn)效果,如將女上裝圖像中的長袖和圓領(lǐng)屬性修改為無領(lǐng)和V領(lǐng)。對于此類任務(wù),最終目標(biāo)是在不影響其他信息的情況下控制顏色、領(lǐng)型和袖長等服裝屬性。文中以女上裝圖像的袖長和顏色作為研究變量和載體,通過優(yōu)化Fashion-AttGAN模型結(jié)構(gòu),提高編輯效果的細(xì)節(jié)真實(shí)度與完整性。


圖2 Fashion-AttGAN流程示意

(2)


(3)



(4)
式中:Xa為真實(shí)的具有屬性a的圖像;Genc為生成器中的編碼器部分。
由圖2流程示意以及式(1)~式(4)得出Fashion-AttGAN的損失函數(shù)包括屬性分類損失、重構(gòu)學(xué)習(xí)損失和對抗學(xué)習(xí)損失[3]。
在現(xiàn)有的研究中,由于模型提取特征能力有限,加之?dāng)?shù)據(jù)集分布不均等,生成圖像存在袖型、領(lǐng)型的殘缺或冗余問題,因此,選取Fashion-AttGAN模型進(jìn)行改進(jìn),通過優(yōu)化模型結(jié)構(gòu)和損失函數(shù)實(shí)現(xiàn)服裝設(shè)計(jì)的細(xì)節(jié)要求。
原始Fashion-AttGAN中編碼器使用5層特征提取網(wǎng)絡(luò),從結(jié)果來看,并不能滿足服裝圖像的特征提取要求,其生成的袖長存在殘缺或冗余,顏色變化受到輸入圖像自身色彩影響較大。針對這些問題,改進(jìn)模型增加了生成器和判別器的網(wǎng)絡(luò)層數(shù),同時(shí)使用了U-net結(jié)構(gòu),U-net通過拼接的方式實(shí)現(xiàn)服裝圖像中顏色以及袖長的特征融合。改進(jìn)后,生成器的特征提取能力增強(qiáng)。優(yōu)化后的網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。由圖3可知,分類器和判別器共享前7層網(wǎng)絡(luò),卷積層進(jìn)行卷積操作,反卷積層進(jìn)行轉(zhuǎn)置卷積操作。

圖3 改進(jìn)Fashion-AttGAN模型結(jié)構(gòu)
使用合適的損失函數(shù)是最大化GAN生成能力的關(guān)鍵步驟之一。在圖3模型訓(xùn)練中,模型的損失函數(shù)被分為重構(gòu)損失、對抗損失和交叉熵?fù)p失3部分,分別命名為Lrec,Ladv和Lcls,最終目標(biāo)是通過訓(xùn)練使得損失函數(shù)達(dá)到最小值。重構(gòu)損失保證除指定屬性以外的其他屬性編輯前后保持一致;對抗損失保證生成圖像的真實(shí)性;交叉熵?fù)p失鑒別生成圖像是否滿足輸入的屬性要求。
在Fashion-AttGAN模型結(jié)構(gòu)中,重構(gòu)損失使用了L1損失函數(shù)優(yōu)化生成器網(wǎng)絡(luò),L1損失函數(shù)即平均絕對誤差。L1損失函數(shù)將重構(gòu)圖像與輸入圖像進(jìn)行比較,計(jì)算平均絕對誤差,所得值越小,代表重構(gòu)圖像與輸入圖像越相似,但這種像素級別的還原會導(dǎo)致圖像丟失部分信息,使模型學(xué)習(xí)到的數(shù)據(jù)分布存在偏差,生成的圖像模糊不清。為優(yōu)化這一問題,文中研究在重構(gòu)損失部分加上了(structure similarity index measure,SSIM) 結(jié)構(gòu)相似性[12]損失。SSIM損失函數(shù)用來評估生成圖像與真實(shí)圖像之間的相似度,可通過圖像的對比度、亮度和結(jié)構(gòu)相關(guān)性計(jì)算得到。SSIM的取值范圍是[0,1],數(shù)值越接近1,表示生成圖像與輸入圖像之間的相似度越高,計(jì)算公式為
(5)

重構(gòu)損失可表示為
(6)

對抗損失Ladv使用WGAN-GP的方法,由LadvG和LadvD組成,即
(7)

(8)
交叉熵?fù)p失也稱為屬性分類損失,使用交叉熵計(jì)算得到,在改進(jìn)模型中,屬性分類損失由LclsC和lclsG組成,分別計(jì)算屬性a和b的分類損失。屬性分類損失表達(dá)式分別為
(9)
(10)
式中:LclsC為分類損失函數(shù)中分類器的部分;lG為交叉熵函數(shù);a為輸入圖像中的屬性編碼;LclsG為分類損失函數(shù)中判別器的部分;b為輸出圖像中目標(biāo)屬性編碼。
因此,改進(jìn)后的Fashion-AttGAN中總損失函數(shù)包括LclsG和LclsC組成的判別器損失函數(shù)、Lrec和LadvG組成的生成器損失函數(shù)和LclsG組成的生成器中解碼器額外損失函數(shù)。
判別器損失函數(shù)表達(dá)式為
(11)
式中:Ldis,cls為判別器損失函數(shù);λ2為超參數(shù),需要在訓(xùn)練過程中確定;LadvD為對抗損失函數(shù)中判別器部分。
生成器網(wǎng)絡(luò)損失函數(shù)表達(dá)式為
(12)
式中:Lenc,dec為生成器中編碼器和解碼器共同的損失函數(shù);λ1為超參數(shù),需要在訓(xùn)練過程中確定。
生成器中解碼器的額外損失函數(shù)表達(dá)式為
(13)
式中:Ldec為生成解碼器的損失函數(shù);λ3為超參數(shù),需要在訓(xùn)練過程中確定。
實(shí)驗(yàn)使用特性保留的虛擬試穿網(wǎng)絡(luò)(characteristic-preserving virtual try-on network ,CP_VTON)[13]數(shù)據(jù)集進(jìn)行訓(xùn)練。數(shù)據(jù)集中包含14 221張女裝上衣圖像,每一張圖像都有對應(yīng)的屬性向量,分別標(biāo)注了袖長、衣領(lǐng)和顏色3種粗粒度屬性。文中實(shí)驗(yàn)選取袖長和顏色2種粗粒度屬性作為實(shí)驗(yàn)對象,其中袖長有7種細(xì)粒度,顏色有6種細(xì)粒度,所以實(shí)驗(yàn)中總計(jì)使用了13種細(xì)粒度屬性。
使用PyCharm作為集成開發(fā)環(huán)境,TensorFlow作為上衣圖像屬性編輯的學(xué)習(xí)框架。實(shí)驗(yàn)程序運(yùn)行在NVIDIA GeForce RTX 4080顯卡的計(jì)算機(jī)中,其內(nèi)存為128G,顯卡內(nèi)存為16G,處理器為i7。
經(jīng)過反復(fù)實(shí)驗(yàn),式(11)~式(13)中超參數(shù)λ1設(shè)定為100,控制重構(gòu)損失權(quán)重;λ2設(shè)定為1,控制輸入圖像屬性a分類損失權(quán)重;λ3設(shè)定為3,控制目標(biāo)屬性b分類損失權(quán)重。迭代次數(shù)epoch代表整個數(shù)據(jù)集被送入到網(wǎng)絡(luò)完成一輪前向傳播和反向傳播的次數(shù),batch_size是每次epoch從訓(xùn)練集中隨機(jī)抽取的部分樣本進(jìn)行一次前向傳播和反向傳播的樣本數(shù)。實(shí)驗(yàn)中epoch設(shè)置為200,batch_size設(shè)置為 32。
將改進(jìn)模型與Fashion-AttGAN模型進(jìn)行比較,使用CP-VTON數(shù)據(jù)集,實(shí)現(xiàn)袖長和顏色的編輯。
在袖型編輯效果方面,改進(jìn)模型的袖型結(jié)構(gòu)連貫性和顏色的編輯效果優(yōu)于原始Fashion-AttGAN模型。如對“9分袖”這個屬性的編輯效果進(jìn)行改進(jìn),改進(jìn)后的模型相較于Fashion-AttGAN模型殘缺部分減少。袖長編輯效果對比如圖4所示。

圖4 袖長編輯效果對比
顏色花紋編輯效果對比如圖5所示。由圖5可知,改進(jìn)后模型生成的顏色更深,而原始模型受輸入圖像顏色影響較大。由圖5可以看出,改進(jìn)后模型的花紋保留得更加完整。在圖5第2行中,輸入的服裝圖像帶有花紋,原始Fashion-AttGAN模型在進(jìn)行屬性編輯時(shí),花紋信息有很大損失;在改進(jìn)模型中添加SSIM損失能最大程度保留與目標(biāo)屬性無關(guān)的其他屬性,因此在改進(jìn)模型結(jié)果中花紋信息最大程度得以保留。

圖5 顏色花紋編輯效果對比
重構(gòu)圖像效果對比如圖6所示。相較于原始Fashion-AttGAN模型,改進(jìn)后模型生成的重建圖像清晰度更優(yōu)。對于服裝內(nèi)輪廓的陰影部分還原得更加真實(shí),如圖6第1行輸入圖像服裝內(nèi)輪廓中有白色標(biāo)簽,在原始Fashion-AttGAN模型重構(gòu)圖像中,此標(biāo)簽相對模糊,在改進(jìn)模型中更加真實(shí)地還原了內(nèi)輪廓以及標(biāo)簽。

圖6 重構(gòu)圖像效果對比
Fashion-AttGAN重構(gòu)損失趨勢和改進(jìn)模型的重構(gòu)損失趨勢如圖7所示。由圖7可知,改進(jìn)模型的網(wǎng)絡(luò)訓(xùn)練收斂趨勢更加平穩(wěn),而原始模型出現(xiàn)了大幅度的震蕩。

圖7 改進(jìn)模型重構(gòu)損失趨勢
為了證明使用SSIM損失的有效性,對改進(jìn)后的模型和Fashion-AttGAN模型生成的重構(gòu)圖像的結(jié)構(gòu)相似性指標(biāo)SSIM和峰值信噪比PSNR (peak signal-to-noise ratio)進(jìn)行了數(shù)據(jù)對比。SSIM是衡量兩幅圖像相似度的指標(biāo),其取值范圍為[0,1],數(shù)值越大代表重構(gòu)圖像越接近輸入圖像。PSNR是信號最大功率與信號噪聲功率之比,用于量化經(jīng)過影像壓縮后圖像或視頻的重建質(zhì)量,值越大代表生成圖像質(zhì)量越好。
將改進(jìn)前后的各20張重構(gòu)圖像以及原始圖像輸入程序,并測量生成圖像的SSIM和PSNR,比較其均值。具體結(jié)果見表1。

表1 重構(gòu)圖像質(zhì)量對比
由表1可以看出,相較于原始Fashion-AttGAN模型,改進(jìn)后模型SSIM從0.475 6變化為0.606 0,上升27.4%,SSIM值越大代表重構(gòu)圖像越接近輸入圖像,由此驗(yàn)證了添加SSIM損失函數(shù)的有效性;改進(jìn)后模型的PSNR評分相較于原始Fashion-AttGAN提升2.8%,PSNR值越大代表生成圖像質(zhì)量越好。
文中以女上裝的袖長和顏色作為研究變量和載體,通過優(yōu)化Fashion-AttGAN模型結(jié)構(gòu),增強(qiáng)特征提取能力,增加SSIM損失提高圖像的清晰度以提升生成指定屬性的能力,從而提高編輯效果的細(xì)節(jié)真實(shí)性與完整性。最終實(shí)驗(yàn)表明,改進(jìn)后的Fashion-AttGAN模型在袖長和顏色的編輯效果以及圖像的清晰度上優(yōu)于Fashion-AttGAN模型,重構(gòu)圖像的SSIM提升27.4%,PSNR值提高2.8%,為服裝圖像細(xì)節(jié)變化研究提供技術(shù)參考。后續(xù)將繼續(xù)進(jìn)行參數(shù)簡化和模型優(yōu)化,減少訓(xùn)練時(shí)長。