李 鏘,姚麟倩,關(guān) 欣
(天津大學(xué)微電子學(xué)院,天津 300072)
近年來,隨著電商平臺和時(shí)尚行業(yè)的快速發(fā)展,對于服飾分析的算法需求越來越迫切.服飾關(guān)鍵點(diǎn)定位技術(shù),可以有效克服尺度和形變的影響,推動服飾部位對齊、服飾局部屬性識別、服飾圖像自動編輯等應(yīng)用的效果提升,引起了社會廣泛關(guān)注.目前應(yīng)用于人體的關(guān)鍵點(diǎn)定位算法已經(jīng)取得長足發(fā)展,但在與時(shí)尚行業(yè)相互融合過程中,由于服飾在類別、比例和外觀上的多變性,服飾關(guān)鍵點(diǎn)定位算法仍然面臨重大挑戰(zhàn)[1].對于人體關(guān)鍵點(diǎn),大多數(shù)傳統(tǒng)方法通過直接回歸出人體關(guān)節(jié)點(diǎn)的坐標(biāo)來定位,但是由于人體運(yùn)動的靈活性以及回歸模型可擴(kuò)展性的限制,此類方法的效果都不太理想.
隨著深度學(xué)習(xí)技術(shù)的發(fā)展,其在圖像分類、識別以及關(guān)鍵點(diǎn)定位上已得到廣泛應(yīng)用,2016年 Wei等[2]提出的 CPM(convolutional pose machines)網(wǎng)絡(luò)通過順序化卷積方式進(jìn)行空間信息以及紋理信息的表達(dá),是一種魯棒性較強(qiáng)的關(guān)鍵點(diǎn)定位算法.同年Newell等[3]提出 SHN(stack hourglass networks)網(wǎng)絡(luò),通過引入多模塊全卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)來解決單人關(guān)鍵點(diǎn)定位問題,每個(gè) CNN模塊捕捉不同尺度圖片的特征,以此來發(fā)現(xiàn)人體空間關(guān)系,推斷人體的關(guān)節(jié)點(diǎn)位置,但是隨著模塊的增加該網(wǎng)絡(luò)的定位效果難以進(jìn)一步提升.隨后,多人關(guān)鍵點(diǎn)檢測算法逐漸出現(xiàn),效果較好的為自頂向下的算法,即先檢測出單人,再定位每個(gè)人的關(guān)鍵點(diǎn).2017年 Papandreou等[4]提出的 G-RMI算法,首先利用Faster R-CNN[5]檢測圖中的多個(gè)人,而后使用深度殘差網(wǎng)絡(luò)(deep residual networks,ResNet)[6]精確定位關(guān)鍵點(diǎn).2018年,He等[7]在Faster R-CNN基礎(chǔ)上提出 MASK R-CNN算法,在實(shí)例分割、邊界框檢測和人體關(guān)鍵點(diǎn)定位等多個(gè)任務(wù)中都取得優(yōu)于單一模型的效果.隨后 RMPE算法[8]為克服由單人檢測框差異而造成關(guān)鍵點(diǎn)定位誤差的問題,利用金字塔結(jié)構(gòu)的單目標(biāo)檢測算法SSD(single shot detector)[9]檢測單個(gè)人,再使用 SHN網(wǎng)絡(luò)進(jìn)行單人姿態(tài)的關(guān)鍵點(diǎn)檢測.2018年 Chen等[10]為優(yōu)化多人姿態(tài)估計(jì)中的較難關(guān)鍵點(diǎn)定位問題,提出了級聯(lián)金字塔結(jié)構(gòu)網(wǎng)絡(luò)(cascaded pyramid network,CPN),這是一種自頂向下的算法,先使用MASK R-CNN的目標(biāo)檢測分割圖中的多個(gè)人,再通過 CPN中級聯(lián)的 GlobalNet和RefineNet實(shí)現(xiàn)對每個(gè)人關(guān)鍵點(diǎn)定位,通過區(qū)分簡單和困難的關(guān)鍵點(diǎn)大幅提高定位的精確度,該網(wǎng)絡(luò)獲得2017COCO人體關(guān)鍵點(diǎn)檢測挑戰(zhàn)賽冠軍.
本文算法與 CPN網(wǎng)絡(luò)思想類似,為級聯(lián)的卷積神經(jīng)網(wǎng)絡(luò),為了進(jìn)一步優(yōu)化 CPN網(wǎng)絡(luò)中的小物體即關(guān)鍵點(diǎn)定位精度的問題,充分利用特征信息,在第 1級使用 ResNet-101特征提取網(wǎng)絡(luò)和特征金字塔結(jié)構(gòu),引入空洞卷積(dilated convolutions)[11]在不損失感受野的情況下提升高層特征圖的空間分辨率,保留更多的圖像細(xì)節(jié)信息,實(shí)現(xiàn)對所有關(guān)鍵點(diǎn)的定位;在第 2級以沙漏網(wǎng)絡(luò)[3]為基礎(chǔ),整合來自上一級的特征信息,利用前一級預(yù)測出來的關(guān)鍵點(diǎn)之間的結(jié)構(gòu)先驗(yàn),對困難關(guān)鍵點(diǎn)即第1級損失較大的關(guān)鍵點(diǎn)進(jìn)行精細(xì)調(diào)整,進(jìn)一步提升整個(gè)網(wǎng)絡(luò)的定位精度.
深度殘差網(wǎng)絡(luò)[6]是 2016年由 He等提出的一種CNN結(jié)構(gòu),在深度卷積網(wǎng)絡(luò)中,隨著網(wǎng)絡(luò)層數(shù)的加深,雖然可獲取豐富的語義信息,但也造成了梯度消失、爆炸等問題.ResNet通過引入殘差學(xué)習(xí)來解決這種難以優(yōu)化的問題.具體地,假定一個(gè)網(wǎng)絡(luò)的輸入為x,理想的映射輸出為H(x).為了獲取H(x),利用堆疊的非線性層來擬合殘差映射F(x)=H(x)-x,由此可以得到H(x)=F(x)+x.因此擬合最優(yōu)映射的問題轉(zhuǎn)化為擬合殘差映射函數(shù),使得網(wǎng)絡(luò)模型不再是學(xué)習(xí)一個(gè)完整的輸出,而只是學(xué)習(xí)殘差F(x).圖1為普通網(wǎng)絡(luò)結(jié)構(gòu)和殘差網(wǎng)絡(luò)結(jié)構(gòu)的示意[12].ResNet的核心思想是在前饋網(wǎng)絡(luò)中引入捷徑來表示F(x)+x,跳過一個(gè)或者多個(gè)網(wǎng)絡(luò)層執(zhí)行恒等映射.
圖1 普通網(wǎng)絡(luò)和殘差網(wǎng)絡(luò)示意Fig.1 Schematics of general and residual networks
相比較普通網(wǎng)絡(luò),ResNet引入捷徑跳過某些層的連接,再與主徑匯合,使得底層的誤差可通過捷徑向上層傳遞而解決梯度消失的問題,在不增加額外參數(shù)又不提高計(jì)算復(fù)雜度的同時(shí)增加網(wǎng)絡(luò)模型的訓(xùn)練速度、提高訓(xùn)練效果[13].作為簡單且實(shí)用的深層次網(wǎng)絡(luò)模型,ResNet在圖像分割[14]、目標(biāo)檢測[15]等圖像處理領(lǐng)域內(nèi)應(yīng)用廣泛.本文采用 ResNet-101作為特征提取網(wǎng)絡(luò).
沙漏網(wǎng)絡(luò)是一種形如沙漏的下采樣-上采樣結(jié)構(gòu),最初由文獻(xiàn)[3]提出,利用多模塊的沙漏網(wǎng)絡(luò)定位關(guān)鍵點(diǎn)來識別人體姿態(tài).沙漏網(wǎng)絡(luò)結(jié)構(gòu)為如圖 2所示的對稱結(jié)構(gòu)[3],左側(cè)部分通過卷積和池化操作將特征圖降低到較低的分辨率,下采樣通過池化操作完成,同時(shí)通過另一路卷積保留下采樣前的特征圖,用于和右側(cè)上采樣部分同尺度的特征圖進(jìn)行融合,當(dāng)下采樣部分特征圖達(dá)到最小分辨率后,網(wǎng)絡(luò)經(jīng)過最近鄰上采樣后與保留的同尺度特征圖進(jìn)行融合,最后網(wǎng)絡(luò)輸出表示各個(gè)關(guān)節(jié)點(diǎn)在該像素出現(xiàn)的概率的特征集.
圖2 沙漏網(wǎng)絡(luò)Fig.2 Hourglass network
沙漏網(wǎng)絡(luò)設(shè)計(jì)的目的在于獲取不同尺度下圖像所包含信息,SHN[3]通過堆疊 8個(gè)沙漏網(wǎng)絡(luò)模塊,每個(gè)模塊都添加損失,通過 8個(gè)損失共同監(jiān)督網(wǎng)絡(luò)訓(xùn)練,利用前一個(gè)沙漏網(wǎng)絡(luò)輸出的關(guān)節(jié)點(diǎn)之間的關(guān)系來進(jìn)行定位預(yù)測,從而提高關(guān)鍵點(diǎn)定位的精度.SHN網(wǎng)絡(luò)在單人關(guān)鍵點(diǎn)的定位任務(wù)中取得了非常好的效果,但是這種堆疊結(jié)構(gòu)隨著模塊數(shù)目的增加,模型的性能將難以有較大的提升.在文獻(xiàn)[10]中,作者通過實(shí)驗(yàn)證明,兩個(gè)堆疊沙漏網(wǎng)絡(luò)便能取得非常好的定位效果.
受背景擁擠、顏色相近、服飾形變較大等因素的影響,各類服飾中往往存在難以精確定位的關(guān)鍵點(diǎn),為了解決這一問題,本文提出了基于級聯(lián)卷積神經(jīng)網(wǎng)絡(luò)的服飾關(guān)鍵點(diǎn)定位算法.如圖 3所示,算法框架分為級聯(lián)的兩部分;第 1部分為全局關(guān)鍵點(diǎn)定位網(wǎng)絡(luò),通過特征金字塔融合多尺度特征,實(shí)現(xiàn)關(guān)鍵點(diǎn)的初步定位;第2部分以沙漏網(wǎng)絡(luò)為基礎(chǔ)對第1級損失較大的關(guān)鍵點(diǎn)精細(xì)調(diào)整,進(jìn)而實(shí)現(xiàn)對服飾關(guān)鍵點(diǎn)的精確定位.
本文算法第1級使用ResNet-101作為特征提取網(wǎng)絡(luò),將不同層的特征圖尺度差異形成的金字塔結(jié)構(gòu)加以利用.如圖4(a)所示,特征金字塔結(jié)構(gòu)[16]在網(wǎng)絡(luò)前向卷積的過程中對每一分辨率的特征圖引入后一分辨率縮放 2倍的特征圖做逐個(gè)元素自底向上相加的操作,以這種方式將 CNN中高分辨率低語義信息的底層特征圖和低分辨率高語義信息的高層特征圖進(jìn)行融合,使得融合之后特征圖既包含豐富的語義信息,也包含由于不斷降采樣而丟失的底層細(xì)節(jié)信息.
金字塔結(jié)構(gòu)中特征圖的空間分辨率隨著下采樣操作而降低,這個(gè)過程使得很多在原圖中只占有極小的像素區(qū)域的關(guān)鍵點(diǎn)的信息丟失.為了解決這個(gè)問題,本文算法在特征金字塔結(jié)構(gòu)中引入空洞卷積.空洞卷積在卷積過程中引入擴(kuò)張率參數(shù)r,使得卷積核處理數(shù)據(jù)時(shí)各值的間距為r-1,以擴(kuò)大感受野.圖 5所示分別為擴(kuò)張率為 1、2、4的空洞卷積示意圖,分別產(chǎn)生感受野為 3×3、7×7、15×15,并且尺寸和原圖相同的特征圖.如圖4(b)所示,空洞卷積的引入克服了原始特征金字塔結(jié)構(gòu)中為獲得較大感受野而降低特征圖空間分辨率的問題,在保證高層特征圖較高的感受野和語義信息的同時(shí),保持較大的空間分辨率,從而保留了更多在關(guān)鍵點(diǎn)定位任務(wù)中發(fā)揮重要作用的細(xì)節(jié)信息,有效提升關(guān)鍵點(diǎn)定位精度.
如圖 3所示,網(wǎng)絡(luò)首先通過 ResNet進(jìn)行特征提取,C1~C5分別代表ResNet中Conv1~Conv5產(chǎn)生的特征圖.輸入一張大小為 512×512的圖像,原始的ResNet經(jīng)過5次步長為2的卷積操作達(dá)到降采樣的目的,特征圖發(fā)生 5次尺度變化,最終卷積層輸出的特征圖 C5的尺寸為 16×16.與原始 ResNet不同,本算法移除了 Conv4和 Conv5中的帶步長卷積操作,并分別以擴(kuò)張率為2和擴(kuò)張率為4的空洞卷積代替.圖 6所示為 Conv4和 Conv5的具體操作,C1~C5各層特征圖尺度分別為 256×256、128×128、64×64、64×64、64×64.相比原始 ResNet,引入空洞卷積后高層特征圖在保留高感受野的同時(shí),提高了空間分辨率.利用 ResNet提取的特征圖構(gòu)建特征金字塔時(shí),因?yàn)樘卣鲌D C3~C5具有相同的尺寸,所以可不經(jīng)過上采樣直接融合.融合后的結(jié)果與 C2繼續(xù)融合時(shí),先經(jīng)過雙線性插值進(jìn)行 2倍的上采樣.每一級產(chǎn)生的特征圖都生成一組熱力圖,同組的每張熱力圖包含輸入圖像的一個(gè)關(guān)鍵點(diǎn)的坐標(biāo),和真實(shí)關(guān)鍵點(diǎn)坐標(biāo)生成的熱力圖進(jìn)行誤差計(jì)算求得損失,共同監(jiān)督網(wǎng)絡(luò)訓(xùn)練.在測試階段,第 1級網(wǎng)絡(luò)輸出的熱力圖可以得到全部關(guān)鍵點(diǎn)的位置坐標(biāo).
雖然第1級網(wǎng)絡(luò)已經(jīng)能夠完成關(guān)鍵點(diǎn)定位任務(wù),但是由于服飾背景、姿態(tài)等的復(fù)雜性,一些困難關(guān)鍵點(diǎn)依然難以實(shí)現(xiàn)精確定位,因此本文算法設(shè)計(jì)了第 2級網(wǎng)絡(luò)對困難關(guān)鍵點(diǎn)的坐標(biāo)進(jìn)行精細(xì)調(diào)整.第 2級網(wǎng)絡(luò)使用兩個(gè)堆疊的沙漏網(wǎng)絡(luò),但與原始的沙漏網(wǎng)絡(luò)不同的是,第1個(gè)沙漏網(wǎng)絡(luò)的下采樣部分即上采樣部分的輸入是第 1級金字塔結(jié)構(gòu)輸出的特征圖.針對困難關(guān)鍵點(diǎn),選擇第1級損失較大的關(guān)鍵點(diǎn)進(jìn)行精細(xì)調(diào)整,僅從這部分關(guān)鍵點(diǎn)反向傳播損失算法.第 1個(gè)沙漏網(wǎng)絡(luò)融合來自第 1級網(wǎng)絡(luò)所有金字塔層的信息進(jìn)行定位,第2個(gè)沙漏網(wǎng)絡(luò)利用前一個(gè)沙漏網(wǎng)絡(luò)輸出的熱力圖作為關(guān)鍵點(diǎn)之間的結(jié)構(gòu)先驗(yàn)進(jìn)行定位.每個(gè)沙漏網(wǎng)絡(luò)都生成一組熱力圖,并與真值的誤差作為損失函數(shù)監(jiān)督網(wǎng)絡(luò)訓(xùn)練.測試階段,最后結(jié)果為 2級輸出結(jié)果的綜合.
圖3 算法框架Fig.3 Algorithm framework
圖4 不同特征金字塔結(jié)構(gòu)示意Fig.4 Schematics of pyramid structures with different features
圖5 空洞卷積示意Fig.5 Schematic of dilated convolutions
圖6 Conv4和Conv5不同卷積方式Fig.6 Different convolution methods used in Conv4 and Conv5
算法第1級的損失函數(shù)Global Loss采用所有標(biāo)注熱力圖損失Lg,即
式中:yij表示根據(jù)真實(shí)關(guān)鍵點(diǎn)坐標(biāo)生成的單張熱力圖;表示網(wǎng)絡(luò)學(xué)習(xí)出的單張關(guān)鍵點(diǎn)坐標(biāo)熱力圖;M表示每組熱力圖的數(shù)量,在數(shù)值上與輸入圖像關(guān)鍵點(diǎn)的數(shù)量相同;N表示每一次迭代過程中批量數(shù)據(jù)的大小.
算法第 2級的作用是對第 1級損失較大的關(guān)鍵點(diǎn)坐標(biāo)進(jìn)行精細(xì)調(diào)整,其策略是根據(jù)訓(xùn)練損失,進(jìn)行在線挖掘困難關(guān)鍵點(diǎn)[17].因此,Refine Loss主要對Lg損失最大的P個(gè)關(guān)鍵點(diǎn)坐標(biāo)進(jìn)行懲罰,即
式中P表示Lg損失最大的關(guān)鍵點(diǎn)熱力圖的數(shù)量,如文獻(xiàn)[10],P設(shè)置為 8時(shí)在困難關(guān)鍵點(diǎn)和簡單關(guān)鍵點(diǎn)的平衡訓(xùn)練中達(dá)到了最好的效果.同時(shí),類似于SHN網(wǎng)絡(luò),為了避免損失經(jīng)過多層的反向傳播而產(chǎn)生的梯度消失現(xiàn)象,在兩個(gè)沙漏網(wǎng)絡(luò)的訓(xùn)練過程中,訓(xùn)練其中一個(gè)損失時(shí),固定另一個(gè)損失,分別獨(dú)立地進(jìn)行反向傳播.
實(shí)驗(yàn)機(jī)器配置為 Ubuntu14.04操作系統(tǒng),Intel Core i7-8700 CPU,16G運(yùn)行內(nèi)存,Nvidia GTX1080Ti GPU,選用的深度學(xué)習(xí)框架是Tensorflow.在訓(xùn)練過程中,優(yōu)化算法選用 ADAM;初始學(xué)習(xí)率設(shè)置為 5×10-4,學(xué)習(xí)率每經(jīng)過 10輪(epoch)迭代便以 0.5倍進(jìn)行衰減;權(quán)重衰減率(weight decay)設(shè)置為 1×10-5,批量數(shù)據(jù)大小(batch size)設(shè)置為 16;特征提取網(wǎng)絡(luò) ResNet-101的參數(shù)用在 ImageNet上預(yù)訓(xùn)練的參數(shù)進(jìn)行初始化,整個(gè)模型大約訓(xùn)練45h.
在測試過程中,每一個(gè)關(guān)鍵點(diǎn)所對應(yīng)的熱力圖中的最高響應(yīng)到第二高響應(yīng)方向上的 1/4偏移量的位置作為關(guān)鍵點(diǎn)的最終坐標(biāo).為了減小測試誤差,從原圖生成不同尺寸的測試圖,分別進(jìn)行定位預(yù)測,取均值作為最終的測試結(jié)果.
實(shí)驗(yàn)選取 2018 FashionAI 服飾關(guān)鍵點(diǎn)定位數(shù)據(jù)集,為同時(shí)符合機(jī)器學(xué)習(xí)要求和服飾專業(yè)性的高質(zhì)量時(shí)尚數(shù)據(jù)集.本文研究的關(guān)鍵點(diǎn)定位針對女裝服飾.服飾的關(guān)鍵點(diǎn)基于服裝設(shè)計(jì)的 5大專業(yè)類別定義,分別為上衣、外套、褲子、半身裙、連身裙.在該數(shù)據(jù)集中,每種服飾具體關(guān)鍵點(diǎn)如圖 7所示.本文的數(shù)據(jù)僅包含單個(gè)模特或者商品的圖像,所預(yù)測的服飾所屬的類別已知,不需要單獨(dú)進(jìn)行分類,數(shù)據(jù)集包括54166個(gè)訓(xùn)練樣本和9971個(gè)測試樣本.
在原有數(shù)據(jù)的基礎(chǔ)上,本文采用旋轉(zhuǎn)、平移等數(shù)據(jù)增強(qiáng)方法對訓(xùn)練數(shù)據(jù)集進(jìn)行擴(kuò)充.方法包括:圖像隨機(jī)旋轉(zhuǎn)一定角度(±30°、±45°、±60°、±90°)的旋轉(zhuǎn)變換;圖像沿垂直或水平方向翻轉(zhuǎn)的翻轉(zhuǎn)變換;圖像在平面上以一定方向平移的平移變換;圖像按照一定的比例進(jìn)行縮小或放大的縮放變換.
圖7 數(shù)據(jù)集中服飾關(guān)鍵點(diǎn)示意Fig.7 Schematics of key points in clothing dataset
3.3.1 級聯(lián)結(jié)果對比
本文算法旨在通過級聯(lián)的兩級卷積神經(jīng)網(wǎng)絡(luò)分別實(shí)現(xiàn)對關(guān)鍵點(diǎn)的初步定位和進(jìn)一步修正,對于輸入網(wǎng)絡(luò)的圖像,每一級網(wǎng)絡(luò)都有關(guān)鍵點(diǎn)定位結(jié)果的熱力圖輸出,兩級結(jié)果對比可判斷網(wǎng)絡(luò)是否有效.
圖8所示為包含上衣、外套類別的4張服飾圖像經(jīng)過級聯(lián)網(wǎng)絡(luò)的關(guān)鍵點(diǎn)定位結(jié)果圖,每張圖片的上面一張顯示的是只經(jīng)過第1級網(wǎng)絡(luò)的結(jié)果輸出圖像,下面一張包含第 2級網(wǎng)絡(luò)的結(jié)果輸出圖像.圖像中的部分關(guān)鍵點(diǎn)經(jīng)過了調(diào)整,尤其是方框圈起來的關(guān)鍵點(diǎn)在第2級網(wǎng)絡(luò)經(jīng)過了比較明顯的調(diào)整,比如第1張圖像中的右腋窩和右袖口內(nèi)關(guān)鍵點(diǎn),由于被遮擋誤差較大;第2張圖像左腋窩定位錯(cuò)誤;第3張圖像左袖口內(nèi)側(cè)被遮擋定位誤差較大;第4張圖像右腰部關(guān)鍵點(diǎn)被水印遮擋,經(jīng)過第2級網(wǎng)絡(luò)這些關(guān)鍵點(diǎn)都得到了進(jìn)一步調(diào)整,很明顯地減小了定位誤差,使得最終輸出的定位結(jié)果更加準(zhǔn)確.這一級聯(lián)結(jié)果對比證明了本文算法可提高關(guān)鍵點(diǎn)精確度的有效性.
圖8 級聯(lián)網(wǎng)絡(luò)定位結(jié)果對比Fig.8 Comparison of detection results by cascaded network
3.3.2 不同網(wǎng)絡(luò)結(jié)果對比
整個(gè)網(wǎng)絡(luò)的結(jié)果通過統(tǒng)一標(biāo)準(zhǔn)歸一化誤差率(normalized error,NE)評估,NE 是在考慮可見點(diǎn)的情況下,預(yù)測點(diǎn)和標(biāo)注點(diǎn)的平均歸一化距離.
式中:dk為預(yù)測和標(biāo)注關(guān)鍵點(diǎn)之間的距離;sk為距離的歸一化參數(shù)(上衣、外套、連衣裙為兩個(gè)腋窩點(diǎn)歐式距離,褲子和半身裙為兩個(gè)褲頭點(diǎn)的歐式距離);vk表示關(guān)鍵點(diǎn)是否可見.
在測試時(shí),首先不區(qū)分測試集中的服飾類別并使用不同的網(wǎng)絡(luò)進(jìn)行關(guān)鍵點(diǎn)定位預(yù)估,與常用的關(guān)鍵點(diǎn)檢測網(wǎng)絡(luò)SHN網(wǎng)絡(luò)[3]、CPM網(wǎng)絡(luò)[2]相比,定位精確性效果明顯提升,整體誤差率分別降低了 5.85%、4.74%,與在關(guān)鍵點(diǎn)定位任務(wù)中表現(xiàn)效果較好的 CPN網(wǎng)絡(luò)[10]對比可發(fā)現(xiàn),算法進(jìn)一步提升了服飾關(guān)鍵點(diǎn)的定位精確度,將同一數(shù)據(jù)集的定位整體誤差從5.89%降低到 3.56%.除此之外,為了進(jìn)一步確定和對比網(wǎng)絡(luò)定位效果,按測試集的5種服飾分類分別對每一類別服飾進(jìn)行定位預(yù)估,對應(yīng)上衣、連身裙、外套、半身裙、褲子,本文算法與 SHN 網(wǎng)絡(luò)對比,誤差率分別降低了2.19%、8.44%、7.07%、3.08%、5.20%;與 CPM 網(wǎng)絡(luò)對比,誤差率分別降低了 1.72%、6.41%、6.18%、3.03%、5.85%;與 CPN 網(wǎng)絡(luò)相比,結(jié)果誤差率分別降低了 0.90%、3.54%、2.39%、0.39%、1.16%,具體結(jié)果如表1所示.
表1 不同網(wǎng)絡(luò)的歸一化檢測誤差率Tab.1 Normalized error of different networks %
不同網(wǎng)絡(luò)對比實(shí)驗(yàn)結(jié)果表明,本文算法在服飾關(guān)鍵點(diǎn)定位中取得了最好的結(jié)果,通過引入空洞卷積和沙漏網(wǎng)絡(luò)的級聯(lián)卷積神經(jīng)網(wǎng)絡(luò)相比于現(xiàn)有方法,檢測效果提升明顯.不同網(wǎng)絡(luò)檢測結(jié)果的效果圖對比如圖 9所示,本文算法的定位結(jié)果最接近真實(shí)標(biāo)簽,其余網(wǎng)絡(luò)中的關(guān)鍵點(diǎn)定位存在較大誤差,尤其是困難關(guān)鍵點(diǎn),比如圖9中第1組圖像(上衣)中與背景較為相似的右袖口外關(guān)鍵點(diǎn)對比,第2組圖像(褲子)中被遮擋的左腰部和右腰部關(guān)鍵點(diǎn)對比,不同算法結(jié)果差距明顯,本文算法表現(xiàn)出了較好的定位效果.
圖9 不同網(wǎng)絡(luò)檢測效果對比Fig.9 Comparison of detection results by different networks
本文將人工智能和深度學(xué)習(xí)引入時(shí)尚行業(yè),提出基于級聯(lián)卷積神經(jīng)網(wǎng)絡(luò)的服飾關(guān)鍵點(diǎn)定位方法,旨在進(jìn)一步提高服飾關(guān)鍵點(diǎn)定位的精確度.該算法在電商、時(shí)尚搭配等場景下具有重大商業(yè)應(yīng)用價(jià)值,對于電商平臺發(fā)展和人們生活的便捷性提升有很大的幫助.
本文算法的主要貢獻(xiàn)為:①針對關(guān)鍵點(diǎn)定位任務(wù)更依賴圖像底層細(xì)節(jié)特征的問題,算法在第1級利用空洞卷積改進(jìn)特征金字塔結(jié)構(gòu),在不降低高層特征圖感受野的情況下,增大特征圖的空間分辨率,從而有效地進(jìn)行關(guān)鍵點(diǎn)定位;②算法第2級使用兩個(gè)堆疊的沙漏網(wǎng)絡(luò),利用前一級預(yù)測出來的關(guān)鍵點(diǎn)之間的結(jié)構(gòu)先驗(yàn),對困難關(guān)鍵點(diǎn)的進(jìn)一步調(diào)整.在服飾關(guān)鍵點(diǎn)定位任務(wù)中,本文算法與 SHN網(wǎng)絡(luò)、CPM 網(wǎng)絡(luò)以及CPN網(wǎng)絡(luò)的對比中取得了最好的結(jié)果,有效降低了服飾關(guān)鍵點(diǎn)定位的誤差率.