來(lái)源:北大青鳥(niǎo)總部 2023年02月21日 14:45
眾所周知,隨著深度學(xué)習(xí)技術(shù)的發(fā)展,深度卷積神經(jīng)網(wǎng)絡(luò)在圖像分類、識(shí)別以及關(guān)鍵點(diǎn)定位上已得到廣泛應(yīng)用。目前在人體姿態(tài)、人臉識(shí)別等多個(gè)方面的關(guān)鍵點(diǎn)定位算法已經(jīng)取得長(zhǎng)足發(fā)展,但是應(yīng)用于多變性的圖像背景以及姿態(tài)等依然面臨很大的挑戰(zhàn),如服飾在類別、比例和外觀上具有多變性,其關(guān)鍵點(diǎn)定位精度并不高。下文將在傳統(tǒng)的殘差與沙漏網(wǎng)絡(luò)模型基礎(chǔ)上,介紹一種新的級(jí)聯(lián)金字塔結(jié)構(gòu)卷積神經(jīng)網(wǎng)絡(luò),實(shí)現(xiàn)對(duì)困難關(guān)鍵點(diǎn)的定位進(jìn)行精細(xì)調(diào)整。并通過(guò)實(shí)例剖析進(jìn)一步幫助大家來(lái)理解。
1.沙漏網(wǎng)絡(luò)
沙漏網(wǎng)絡(luò),正如其名,是一種形如沙漏的下采樣-上采樣結(jié)構(gòu),如下圖所示。圖中左側(cè)部分通過(guò)卷積和池化操作將特征圖降低到較低的分辨率。下采樣通過(guò)池化操作完成,同時(shí)通過(guò)另一路卷積保留下采樣前的特征圖,用于和右側(cè)上采樣部分同尺度的特征圖進(jìn)行融合。當(dāng)下采樣部分特征圖達(dá)到最小分辨率后,網(wǎng)絡(luò)經(jīng)過(guò)最近鄰上采樣后與保留的同尺度特征圖進(jìn)行融合,最后網(wǎng)絡(luò)輸出表示各個(gè)關(guān)節(jié)點(diǎn)在該像素出現(xiàn)的概率的特征集。
沙漏網(wǎng)絡(luò)設(shè)計(jì)的目的在于獲取不同尺度下圖像所包含信息。利用多模塊的沙漏網(wǎng)絡(luò)可以定位關(guān)鍵點(diǎn)進(jìn)而來(lái)識(shí)別人體姿態(tài)特征。
2.深度殘差網(wǎng)絡(luò)
假定一個(gè)網(wǎng)絡(luò)的輸入為
理想的映射輸出為
為了獲取
利用堆疊的非線性層來(lái)擬合殘差映射
由此可以得到
因此擬合最優(yōu)映射的問(wèn)題轉(zhuǎn)化為擬合殘差映射函數(shù),使得網(wǎng)絡(luò)模型不再是學(xué)習(xí)一個(gè)完整的輸出,而只是學(xué)習(xí)殘差
解決深度卷積網(wǎng)絡(luò)中,隨著網(wǎng)絡(luò)層數(shù)的加深,造成的梯度消失、爆炸等問(wèn)題。
相比較普通網(wǎng)絡(luò),深度殘差網(wǎng)絡(luò)引入捷徑跳過(guò)某些層的連接,再與主徑匯合,如下圖所示。這使得底層的誤差可通過(guò)捷徑向上層傳遞而解決梯度消失的問(wèn)題,在不增加額外參數(shù)又不提高計(jì)算復(fù)雜度的同時(shí)增加網(wǎng)絡(luò)模型的訓(xùn)練速度、提高訓(xùn)練效果。作為簡(jiǎn)單且實(shí)用的深層次網(wǎng)絡(luò)模型,深度殘差網(wǎng)絡(luò)在圖像分割、目標(biāo)檢測(cè)等圖像處理領(lǐng)域內(nèi)應(yīng)用廣泛。
級(jí)聯(lián)金字塔結(jié)構(gòu)卷積神經(jīng)網(wǎng)絡(luò)的算法框架分為兩部分,如下圖所示:
第1部分為全局關(guān)鍵點(diǎn)定位網(wǎng)絡(luò),使用殘差網(wǎng)絡(luò)作為特征提取網(wǎng)絡(luò),通過(guò)特征金字塔融合多尺度特征,實(shí)現(xiàn)關(guān)鍵點(diǎn)的初步定位;
第2部分以沙漏網(wǎng)絡(luò)為基礎(chǔ)對(duì)第1級(jí)損失較大的關(guān)鍵點(diǎn)精細(xì)調(diào)整,進(jìn)而實(shí)現(xiàn)對(duì)服飾關(guān)鍵點(diǎn)的精確定位。
在進(jìn)一步解釋前,大家需要對(duì)使用殘差網(wǎng)絡(luò)提取的不同層的特征圖尺度形成的金字塔結(jié)構(gòu)有一定了解。如下圖所示,特征金字塔結(jié)構(gòu)在網(wǎng)絡(luò)前向卷積的過(guò)程中對(duì)每一分辨率的特征圖引入后一分辨率縮放2倍的特征圖做逐個(gè)元素自底向上相加的操作,以這種方式將卷積神經(jīng)網(wǎng)絡(luò)中高分辨率低語(yǔ)義信息的底層特征圖和低分辨率高語(yǔ)義信息的高層特征圖進(jìn)行融合,使得融合之后特征圖既包含豐富的語(yǔ)義信息,也包含由于不斷降采樣而丟失的底層細(xì)節(jié)信息。
詳細(xì)介紹:
1.第1級(jí)網(wǎng)絡(luò)
第1級(jí)網(wǎng)絡(luò)首先通過(guò)殘差網(wǎng)絡(luò)進(jìn)行特征提取,C1~C5分別代表殘差網(wǎng)絡(luò)中卷積Conv1~Conv5產(chǎn)生的特征圖。比如,輸入一張大小為512×512的圖像,原始的ResNet經(jīng)過(guò)5次步長(zhǎng)為2的卷積操作達(dá)到降采樣的目的,特征圖發(fā)生5次尺度變化,最終卷積層輸出的特征圖C5的尺寸為16×16。這里,算法引入空洞卷積為了提高特征圖空間分辨率。
利用殘差網(wǎng)絡(luò)提取的特征圖構(gòu)建特征金字塔時(shí),因?yàn)樘卣鲌DC3~C5具有相同的尺寸,所以可不經(jīng)過(guò)上采樣直接融合。融合后的結(jié)果與C2繼續(xù)融合時(shí),先經(jīng)過(guò)雙線性插值進(jìn)行2倍的上采樣。每一級(jí)產(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)練。在測(cè)試階段,第1級(jí)網(wǎng)絡(luò)輸出的熱力圖可以得到全部關(guān)鍵點(diǎn)的位置坐標(biāo)。
2.第2級(jí)網(wǎng)絡(luò)
第2級(jí)網(wǎng)絡(luò)使用兩個(gè)堆疊的沙漏網(wǎng)絡(luò),但與原始的沙漏網(wǎng)絡(luò)不同的是,第1個(gè)沙漏網(wǎng)絡(luò)的下采樣部分即上采樣部分的輸入是第1級(jí)金字塔結(jié)構(gòu)輸出的特征圖。針對(duì)困難關(guān)鍵點(diǎn),選擇第1級(jí)損失較大的關(guān)鍵點(diǎn)進(jìn)行精細(xì)調(diào)整,僅從這部分關(guān)鍵點(diǎn)反向傳播損失算法。第1個(gè)沙漏網(wǎng)絡(luò)融合來(lái)自第1級(jí)網(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)練。測(cè)試階段,最后結(jié)果為2級(jí)輸出結(jié)果的綜合。
雖然第1級(jí)網(wǎng)絡(luò)已經(jīng)能夠完成關(guān)鍵點(diǎn)定位任務(wù)。但是由于服飾背景、姿態(tài)等的復(fù)雜性,一些困難關(guān)鍵點(diǎn)依然難以實(shí)現(xiàn)精確定位,這里設(shè)計(jì)了第2級(jí)網(wǎng)絡(luò)對(duì)困難關(guān)鍵點(diǎn)的坐標(biāo)進(jìn)行精細(xì)調(diào)整。
數(shù)據(jù)集選取
這里以具有多變性的女裝服飾圖片作為對(duì)象來(lái)研究分析。實(shí)驗(yàn)選取2018 FashionAI 服飾關(guān)鍵點(diǎn)定位數(shù)據(jù)集。此數(shù)據(jù)集是同時(shí)符合機(jī)器學(xué)習(xí)要求和服飾專業(yè)性的高質(zhì)量數(shù)據(jù)集。服飾的關(guān)鍵點(diǎn)基于服裝設(shè)計(jì)的5大專業(yè)類別定義,分別為上衣、外套、褲子、半身裙、連身裙。在該數(shù)據(jù)集中,每種服飾具體關(guān)鍵點(diǎn)如下圖所示。本文案例的數(shù)據(jù)僅包含單個(gè)模特或者商品的圖像。所預(yù)測(cè)的服飾所屬的類別已知,不需要單獨(dú)進(jìn)行分類。數(shù)據(jù)集包括54166個(gè)訓(xùn)練樣本和9971個(gè)測(cè)試樣本。
級(jí)聯(lián)結(jié)果分析
采用上面算法,通過(guò)級(jí)聯(lián)的兩級(jí)卷積神經(jīng)網(wǎng)絡(luò)分別實(shí)現(xiàn)對(duì)關(guān)鍵點(diǎn)的初步定位和進(jìn)一步修正,其結(jié)果如下圖所示。圖中所示為包含上衣、外套類別的4張服飾圖像經(jīng)過(guò)級(jí)聯(lián)網(wǎng)絡(luò)的關(guān)鍵點(diǎn)定位結(jié)果圖,每張圖片的上面一張顯示的是只經(jīng)過(guò)第1級(jí)網(wǎng)絡(luò)的結(jié)果輸出圖像,下面一張包含第2級(jí)網(wǎng)絡(luò)的結(jié)果輸出圖像。圖像中的部分關(guān)鍵點(diǎn)經(jīng)過(guò)了調(diào)整,尤其是方框圈起來(lái)的關(guān)鍵點(diǎn)在第2級(jí)網(wǎng)絡(luò)經(jīng)過(guò)了比較明顯的調(diào)整,比如:
第1張圖像中的右腋窩和右袖口內(nèi)關(guān)鍵點(diǎn),由于被遮擋誤差較大;
第2張圖像左腋窩定位錯(cuò)誤;
第3張圖像左袖口內(nèi)側(cè)被遮擋定位誤差較大;
第4張圖像右腰部關(guān)鍵點(diǎn)被水印遮擋。
經(jīng)過(guò)第2級(jí)網(wǎng)絡(luò)這些關(guān)鍵點(diǎn)都得到了進(jìn)一步調(diào)整,很明顯地減小了定位誤差,使得最終輸出的定位結(jié)果更加準(zhǔn)確.這一級(jí)聯(lián)結(jié)果對(duì)比證明了上述算法可提高關(guān)鍵點(diǎn)精確度的有效性。
上文通過(guò)將傳統(tǒng)的殘差與沙漏網(wǎng)絡(luò)模型進(jìn)行級(jí)聯(lián),并詳細(xì)介紹了一種新的級(jí)聯(lián)金字塔結(jié)構(gòu)卷積神經(jīng)網(wǎng)絡(luò)。為了進(jìn)一步優(yōu)化對(duì)關(guān)鍵點(diǎn)定位精度的問(wèn)題,充分利用特征信息,在第1級(jí)使用殘差網(wǎng)絡(luò)進(jìn)行特征提取網(wǎng)絡(luò)形成特征金字塔結(jié)構(gòu),保留了更多的圖像細(xì)節(jié)信息,實(shí)現(xiàn)對(duì)所有關(guān)鍵點(diǎn)的定位;在第2級(jí)以沙漏網(wǎng)絡(luò)為基礎(chǔ),整合來(lái)自上一級(jí)的特征信息,利用前一級(jí)預(yù)測(cè)出來(lái)的關(guān)鍵點(diǎn)之間的結(jié)構(gòu)先驗(yàn),對(duì)困難關(guān)鍵點(diǎn)即第1級(jí)損失較大的關(guān)鍵點(diǎn)進(jìn)行精細(xì)調(diào)整,進(jìn)一步提升整個(gè)網(wǎng)絡(luò)的定位精度。該網(wǎng)絡(luò)模型對(duì)具有多變性的圖像背景以及姿態(tài)等進(jìn)行關(guān)鍵點(diǎn)定位有很好的適應(yīng)性。