余保玲,虞松坤,孫耀然,楊振,傅旭波?
(1 浙江大學(xué)公共體育與藝術(shù)部, 杭州 310058; 2 浙江大學(xué)光電科學(xué)與工程學(xué)院, 杭州 310058; 3 中國(guó)科學(xué)院自動(dòng)化研究所, 北京 100190)(2019年5月7日收稿; 2019年10月30日收修改稿)
在計(jì)算機(jī)視覺領(lǐng)域,人體姿態(tài)檢測(cè)中的關(guān)節(jié)節(jié)點(diǎn)定位問題一直是研究的熱點(diǎn)。傳統(tǒng)的檢測(cè)算法主要存在以下幾個(gè)問題:1)如何提高關(guān)節(jié)節(jié)點(diǎn)定位準(zhǔn)確度;2)發(fā)生遮擋時(shí),能否預(yù)測(cè)出被遮擋部位的關(guān)節(jié)節(jié)點(diǎn);3)如何同時(shí)定位多個(gè)目標(biāo)的關(guān)節(jié)節(jié)點(diǎn)。在關(guān)節(jié)節(jié)點(diǎn)定位問題中,大多數(shù)的研究主要關(guān)注如何提高關(guān)節(jié)節(jié)點(diǎn)定位的準(zhǔn)確度。通常的做法是通過暴力搜索的方式,在圖像中搜索所有可能出現(xiàn)關(guān)節(jié)節(jié)點(diǎn)的區(qū)域。如何提高搜索效率自然成為解決該問題的一種思路,近年來,基于人體部位的高效推斷模型不斷被提出[1]。
傳統(tǒng)方法用人工設(shè)計(jì)的特征提取方法和預(yù)定義的人體部位模型。但是在復(fù)雜的場(chǎng)景下,人工設(shè)計(jì)的特征提取方法提取出來的特征,不能對(duì)關(guān)節(jié)節(jié)點(diǎn)進(jìn)行準(zhǔn)確表達(dá),并且人體部位模型無法包含全部的人體姿態(tài)。隨著深度學(xué)習(xí)在目標(biāo)檢測(cè)中的成功應(yīng)用,Toshev等[2]提出一種基于深層神經(jīng)網(wǎng)絡(luò)(deep neural network, DNN)的DeepPose人體姿態(tài)估計(jì)方法,并將姿勢(shì)估計(jì)的問題可以看成是基于DNN的關(guān)節(jié)回歸問題。DeepPose[3]是一種級(jí)聯(lián)的DNN回歸模型,利用全局信息進(jìn)行姿態(tài)預(yù)測(cè)。Gkioxari等[4]延續(xù)回歸的思想,嘗試改造卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network, CNN),使得CNN變成循環(huán)網(wǎng)絡(luò),以解決單個(gè)圖像中人體姿態(tài)以及視頻中人姿態(tài)的估計(jì)問題。然而,現(xiàn)有的關(guān)節(jié)節(jié)點(diǎn)檢測(cè)方法,在目標(biāo)發(fā)生遮擋時(shí),推理性能會(huì)顯著下降,并且每次只能檢測(cè)單個(gè)目標(biāo)。
RCNN使用候選區(qū)域得到預(yù)定義目標(biāo)的圖像局部預(yù)測(cè)區(qū)域,然后把這些區(qū)域分別輸入到CNN中,提取局部區(qū)域的特征,再將特征輸入到分類器中,判斷特征對(duì)應(yīng)的區(qū)域是屬于具體某類預(yù)定義的目標(biāo)還是背景。同時(shí),RCNN中通過針對(duì)邊界的回歸,修正預(yù)測(cè)的邊界的位置。RCNN在VOC2007上的平均準(zhǔn)確率是58%左右,雖然在VOC2007的準(zhǔn)確率上有了很大的提高,但RCNN存在著重復(fù)計(jì)算的問題:候選區(qū)域有幾千個(gè),并且大多數(shù)是相互重疊的,重疊區(qū)域會(huì)被多次重復(fù)提取特征。于是研究者借鑒SPP-net[5]中的思路提出Fast-RCNN[6],將候選區(qū)域映射到CNN最后一層卷積層的特征圖上,這樣每張圖片只需提取一次特征,而不需要對(duì)候選區(qū)域的特征進(jìn)行重復(fù)計(jì)算,大大提高了速度,在VOC2007上的平均準(zhǔn)確也提高到68%。Fast-RCNN的速度瓶頸在候選區(qū)域選擇上,于是將候選區(qū)域的選擇也交給CNN來做,提出Faster-RCNN。Fater-RCNN速度更快,用VGG網(wǎng)絡(luò)作為特征抽取時(shí),在VOC2007上平均準(zhǔn)確率能達(dá)到73%。Gkioxari等[7]結(jié)合運(yùn)動(dòng)物體和環(huán)境因素實(shí)現(xiàn)靜態(tài)圖像的行為識(shí)別,將Fast-RCNN改造成能夠?qū)D片進(jìn)行分類同時(shí)回歸物體位置的RCNN網(wǎng)絡(luò),在PASAL VOC Action數(shù)據(jù)集上的平均準(zhǔn)確率達(dá)到90.2%。Mask-RCNN[8]在Faster-RCNN 的基礎(chǔ)特征網(wǎng)絡(luò)之后又加入全連接的分割子網(wǎng),由原來的兩個(gè)任務(wù)(分類+回歸)變?yōu)?個(gè)任務(wù)(分類+回歸+分割)。主要改進(jìn)點(diǎn)在于:1)基礎(chǔ)網(wǎng)絡(luò)的增強(qiáng),將VGGNet的特征提取方法換成ResNeXt-101和FPN;2)改進(jìn)分割的損失函數(shù),由原來的基于單像素softmax多項(xiàng)式交叉熵變?yōu)榛趩蜗袼豷igmod二值交叉熵;3)用RoIAlign層替代RoI Pooling層,這是由于直接ROI Pooling對(duì)特征圖的量化操作會(huì)使得得到的mask與實(shí)際物體位置有微小偏移,因而采用 RoIAlign對(duì)特征圖進(jìn)行插值操作。Mask-RCNN在物體檢測(cè)中取得了顯著效果提升。
在本文的研究中,我們采用基于深度卷積神經(jīng)網(wǎng)的方法對(duì)單幅圖像中的多個(gè)目標(biāo)進(jìn)行關(guān)節(jié)節(jié)點(diǎn)檢測(cè),利用Faster-RCNN[9]的ROI給出圖像中若干個(gè)潛在的人體區(qū)域,并為潛在的人體區(qū)域建立回歸網(wǎng)絡(luò),同時(shí)輸出圖像中多個(gè)目標(biāo)的邊界坐標(biāo)和關(guān)節(jié)節(jié)點(diǎn)的坐標(biāo)。
Faster-RCNN是RCNN系列的目標(biāo)檢測(cè)算法,RCNN具有突出的特征提取和分類能力,主要分為3個(gè)步驟:候選區(qū)域提?。惶卣魈崛。环诸惻c邊界回歸。但是傳統(tǒng)的RCNN方法會(huì)占用大量的磁盤空間,耗時(shí)較長(zhǎng)。Fast RCNN很好地解決了圖像內(nèi)大量候選框重疊造成的特征提取冗余問題,訓(xùn)練速度得到了很大的提升。
在Fast RCNN基礎(chǔ)上,F(xiàn)aster-RCNN進(jìn)一步提高了模型效率,將目標(biāo)檢測(cè)中生成候選框、提取特征、分類器分類和回歸幾個(gè)步驟都交給神經(jīng)網(wǎng)絡(luò)進(jìn)行處理,極大地提高了效率,是基于深度學(xué)習(xí)的RCNN系列目標(biāo)檢測(cè)方法中最好的一種方法。Faster-RCNN主要由兩個(gè)核心部分組成:1)區(qū)域生成網(wǎng)絡(luò)RPN候選框提取模塊,RPN是全卷積神經(jīng)網(wǎng)絡(luò),內(nèi)部與普通卷積神經(jīng)網(wǎng)絡(luò)不同,它是把CNN中的全連接層變成卷積層;2)Fast RCNN檢測(cè)模塊,基于RPN提取的候選框檢測(cè)并識(shí)別其中的物體。
Faster-RCNN解決了RCNN中使用搜索選擇算法耗時(shí)多的問題,使用深度CNN網(wǎng)絡(luò)直接產(chǎn)生召回率高的Region Proposals的RPN層。與selective search相比,當(dāng)每張圖生成的候選區(qū)域從2 000減少到300時(shí),訓(xùn)練時(shí)間將減少20%~25%,RPN方法的召回率下降幅度不大,說明RPN方法的目的性更加明確。
基于 Faster RCNN 強(qiáng)大的目標(biāo)識(shí)別能力,通過在 Caffe深度學(xué)習(xí)框架下的實(shí)驗(yàn),F(xiàn)aster RCNN 對(duì)于人體整體識(shí)別率和準(zhǔn)確率高達(dá)98%,基本不會(huì)出現(xiàn)漏檢和誤檢的情況。本文提出一種新的策略:將Faster-RCNN運(yùn)用到關(guān)節(jié)點(diǎn)的檢測(cè)中。在這個(gè)思路的基礎(chǔ)上,我們將現(xiàn)有的Faster-RCNN框架運(yùn)用在肢體檢測(cè)方面,對(duì)此進(jìn)行實(shí)驗(yàn)并做出詳細(xì)的實(shí)驗(yàn)分析,作為本文多目標(biāo)關(guān)節(jié)節(jié)點(diǎn)檢測(cè)的基線?;贔aster-RCNN強(qiáng)大的目標(biāo)檢測(cè)能力,本文嘗試將其運(yùn)用到人體肢體檢測(cè)方向上來。
DeepPose提出一種基于DNN的人體姿態(tài)估計(jì)方法,該方法可以表達(dá)成基于 DNN 的身體關(guān)節(jié)的回歸問題。DeepPose的核心思想是對(duì)于關(guān)節(jié)點(diǎn)位置的回歸,利用DNN對(duì)人體關(guān)節(jié)節(jié)點(diǎn)位置進(jìn)行定位,先在圖像中進(jìn)行粗略的姿態(tài)統(tǒng)計(jì),再利用DNN 回歸的級(jí)聯(lián),對(duì)關(guān)節(jié)點(diǎn)區(qū)域的子圖像進(jìn)行優(yōu)化預(yù)測(cè),能夠得到高精度姿態(tài)估計(jì)。該方法具有以整體方式推理姿勢(shì)的優(yōu)點(diǎn),能夠?qū)⒚總€(gè)身體關(guān)節(jié)的位置回歸到全圖像并作為7 層卷積DNN的輸入。DeepPose給出了使用CNN進(jìn)行姿態(tài)估計(jì)的方法,利用級(jí)聯(lián)方式進(jìn)行更加精確的姿態(tài)估計(jì)。對(duì)每個(gè)關(guān)節(jié)點(diǎn),都將整個(gè)圖像作為輸入并利用卷積神經(jīng)網(wǎng)絡(luò)提取全局特征,將節(jié)點(diǎn)的絕對(duì)坐標(biāo)轉(zhuǎn)化為統(tǒng)一坐標(biāo),之后,通過縮放的方式固定初始的圖片輸入大小,在獲得初步坐標(biāo)后,再根據(jù)該坐標(biāo)選擇一定的局部區(qū)域,對(duì)節(jié)點(diǎn)坐標(biāo)進(jìn)行更加精確的回歸,這種方法有兩個(gè)優(yōu)點(diǎn):首先,DNN 能夠捕獲每個(gè)身體關(guān)節(jié)的完整上下文信息并且每個(gè)聯(lián)合回歸器都使用完整圖像作為信號(hào);第二,與基于圖形模型的方法相比,該方法的制定更加簡(jiǎn)單,不需要明確地設(shè)計(jì)零件的特征表征和檢測(cè)器, 也無需明確設(shè)計(jì)模型拓?fù)浜完P(guān)節(jié)之間的相互作用,后期優(yōu)化階段通過使用更高分辨率的子圖像來優(yōu)化預(yù)測(cè)結(jié)果。
MPII 是一個(gè)人體姿態(tài)數(shù)據(jù)庫(kù),包含約2.5萬張圖片和4萬個(gè)不同姿態(tài)的人類肢體節(jié)點(diǎn)信息,覆蓋超過410種活動(dòng),圖片均來源于YouTube視頻。MPII包括如下節(jié)點(diǎn):左右腳踝,左右膝蓋,左右臀部,左右盆骨,左右肩膀,左右手肘,左右手腕,頭部和頭頂位置。評(píng)估標(biāo)準(zhǔn)使用正確預(yù)測(cè)關(guān)鍵節(jié)點(diǎn)的百分比(percentage of correct keypoints),當(dāng)一個(gè)關(guān)鍵節(jié)點(diǎn)預(yù)測(cè)結(jié)果和真實(shí)標(biāo)記間的 “距離”在一定范圍內(nèi)時(shí)視為正確預(yù)測(cè)。對(duì)于MPII數(shù)據(jù)集,這個(gè)“距離”使用頭部大小進(jìn)行歸一化,相應(yīng)的評(píng)估標(biāo)準(zhǔn)記為PCKh。
1)數(shù)據(jù)集的轉(zhuǎn)化
Faster-RCNN使用的數(shù)據(jù)集為VOC2007,是2007 年計(jì)算機(jī)視覺挑戰(zhàn)賽的數(shù)據(jù)格式[10],該數(shù)據(jù)集采用XML格式表示人體關(guān)節(jié)點(diǎn)信息,而 MPII 數(shù)據(jù)庫(kù)則采用MatLab格式保存關(guān)節(jié)點(diǎn)信息,因此實(shí)驗(yàn)的第一步需要對(duì)數(shù)據(jù)集進(jìn)行轉(zhuǎn)化。本文通過python進(jìn)行數(shù)據(jù)的導(dǎo)入和處理,創(chuàng)建了3個(gè)python類,分別為 Picture,Person,Point。其中1個(gè)Picture實(shí)例包含1個(gè)或多個(gè)Person,1個(gè)Person實(shí)例中含有多個(gè)Point節(jié)點(diǎn)信息。通過python中的MatLab接口導(dǎo)入MPII 數(shù)據(jù),將其轉(zhuǎn)化為python類。
數(shù)據(jù)集轉(zhuǎn)化的目的是將 MPII 原有的節(jié)點(diǎn)坐標(biāo)信息轉(zhuǎn)化為bounding box,即Faster-RCNN能夠處理的數(shù)據(jù)格式,如圖1所示,不同的節(jié)點(diǎn)處的bounding box被視為一個(gè)單獨(dú)的目標(biāo)進(jìn)行檢測(cè)和分類。由于 MPII 數(shù)據(jù)庫(kù)中的圖片分辨率不一,如果對(duì)每種關(guān)節(jié)節(jié)點(diǎn)都采用固定長(zhǎng)寬的bounding box,則實(shí)驗(yàn)結(jié)果會(huì)有較大的誤差。因此,在數(shù)據(jù)處理的過程中,采用自適應(yīng)圖片大小的bounding box,即通過一定的比例計(jì)算出包圍盒的大小。
圖1 原始數(shù)據(jù)轉(zhuǎn)化為各個(gè)節(jié)點(diǎn)的包圍盒Fig.1 Bounding box converted from the raw data
2)實(shí)驗(yàn)結(jié)果分析
實(shí)驗(yàn)結(jié)果顯示,直接用Faster-RCNN對(duì)每種關(guān)節(jié)節(jié)點(diǎn)的識(shí)別效果不理想。如圖2所示,頭部識(shí)別的正確率超過90% 以上,但肩膀、手肘、手掌、臀部、膝部、腳腕的識(shí)別率不到20%,大部分圖像均無法識(shí)別出這些關(guān)節(jié)。通過分析結(jié)果發(fā)現(xiàn),出現(xiàn)上述情況主要有以下幾點(diǎn)原因:1)人體關(guān)節(jié)常會(huì)出現(xiàn)重疊和遮擋的情況。一個(gè)側(cè)身站立的人,圖像內(nèi)側(cè)的關(guān)節(jié)部分就會(huì)被處于圖像前側(cè)的關(guān)節(jié)所遮擋;對(duì)于多人的圖像,部分個(gè)人的關(guān)節(jié)極有可能會(huì)被其他人遮擋。2)上述實(shí)驗(yàn)僅僅對(duì)單獨(dú)的關(guān)節(jié)點(diǎn)進(jìn)行識(shí)別,缺少節(jié)點(diǎn)之間相關(guān)聯(lián)性的信息,導(dǎo)致結(jié)果的不理想。3)Faster-RCNN 采用的區(qū)域推薦算法可能并沒有將單個(gè)的關(guān)節(jié)點(diǎn)所在的矩形框作為推薦區(qū)域之一傳遞到下一層網(wǎng)絡(luò)。
圖2 Faster-RCNN基線的多目標(biāo)關(guān)節(jié)節(jié)點(diǎn)檢測(cè)Fig.2 The multi-objective joint node detection based on Faster-RCNN
根據(jù)上一節(jié)的實(shí)驗(yàn)分析,可知由于人體各個(gè)關(guān)節(jié)點(diǎn)之間缺少關(guān)聯(lián)性的信息,并且標(biāo)注區(qū)域過于狹小,導(dǎo)致了目標(biāo)識(shí)別率的不理想。本文考慮是否可以將MPII人體姿態(tài)數(shù)據(jù)集做進(jìn)一步的轉(zhuǎn)化,表示出節(jié)點(diǎn)間的關(guān)聯(lián)信息呢?于是本節(jié)提出一種新的思路,對(duì)相鄰節(jié)點(diǎn)的連線所處于bounding box進(jìn)行檢測(cè),例如左肩和左手肘的連線構(gòu)成左上臂,該連線的bounding box包含的信息相對(duì)于單獨(dú)節(jié)點(diǎn)較大,不僅含有2個(gè)節(jié)點(diǎn)信息,還包括它們之間的關(guān)聯(lián)信息,其中可識(shí)別的特征點(diǎn)要明顯多于單獨(dú)關(guān)節(jié)點(diǎn)。
1)數(shù)據(jù)集轉(zhuǎn)化及優(yōu)化方法
首先要解決的問題是如何將MPII人體姿態(tài)數(shù)據(jù)庫(kù)中的關(guān)節(jié)點(diǎn)位置信息轉(zhuǎn)換成包含軀干的bounding box,以及該bounding box的大小如何確定。最直觀的思路,是以坐標(biāo)節(jié)點(diǎn)連線畫一個(gè)最小的bounding box。因?yàn)镸PII數(shù)據(jù)庫(kù)提供的關(guān)節(jié)點(diǎn)坐標(biāo)是該關(guān)節(jié)的中心位置,而關(guān)節(jié)點(diǎn)比如手肘、肩膀等,并不是由一個(gè)點(diǎn),而是一整塊相關(guān)的區(qū)域構(gòu)成的,那么直接以坐標(biāo)節(jié)點(diǎn)連線畫一個(gè)最小的bounding box很難將預(yù)期的區(qū)域全部囊括進(jìn)來,少部分的關(guān)節(jié)部分為落在bounding box的外面。為解決這個(gè)問題,本文提出一種優(yōu)化bounding box的改進(jìn)算法。對(duì)于節(jié)點(diǎn)A和B,以及它們的連線 Line(A,B),首先根據(jù)人體大小以及關(guān)節(jié)類型計(jì)算出一個(gè)節(jié)點(diǎn)覆蓋半 徑R。以節(jié)點(diǎn)中心為原點(diǎn),R為半徑畫圓,最后得到圖3(c)優(yōu)化后的結(jié)果??梢钥吹?圖3(b)中人的左上臂的bounding box并沒有覆蓋到靠近頭部和靠近左下臂的部分, 而在圖3(c)中,通過加入兩個(gè)半徑為R和r的圓,填充了原本沒有覆蓋到的部分。
圖3 包圍盒優(yōu)化示意圖Fig.3 Optimized bounding box
下面提供求解如圖3(c)所示的bounding box的一種算法:
設(shè)節(jié)點(diǎn)坐標(biāo)為 (x,y), 節(jié)點(diǎn)覆蓋半徑為R, 將半徑為R的圓分成k等份, 則有如下公式
(1)
(2)
同理,MaxX和MaxY也可以計(jì)算出來,k一般取60左右即可。如圖4所示為原數(shù)據(jù)轉(zhuǎn)化為關(guān)節(jié)點(diǎn)連線的包圍盒輸出結(jié)果。
圖4 原數(shù)據(jù)轉(zhuǎn)化為關(guān)節(jié)點(diǎn)連線的包圍盒Fig.4 Bounding box for connecting nodes transformed by original data
2)實(shí)驗(yàn)結(jié)果與分析
通過實(shí)驗(yàn)發(fā)現(xiàn),采用優(yōu)化的bounding box后,F(xiàn)aster-RCNN的檢測(cè)錯(cuò)誤率有所下降。腿部的錯(cuò)誤率降低到50%左右,但其他部位的錯(cuò)誤率仍然高達(dá) 60%~80%。出現(xiàn)該情況的原因在于,腿部相較于上半身的關(guān)節(jié)點(diǎn),體積較大,因此可識(shí)別的特征范圍大。并且腿部發(fā)生遮擋的情況較少,因此大腿部分的檢測(cè)優(yōu)于其他部位的檢測(cè)。實(shí)驗(yàn)證明,雖然對(duì)Faster-RCNN中用于分類的bounding box進(jìn)行了修改和與優(yōu)化,但是人體肢體檢測(cè)的效果依舊不是很理想,分析原因有如下幾點(diǎn):當(dāng)嘗試將人體某一部分單獨(dú)提取出來作為一個(gè)識(shí)別目標(biāo),比如腿部,截取出來的目標(biāo)圖像基本是單一的顏色,不存在鮮明的特征可供機(jī)器識(shí)別。雖然相比直接用包含關(guān)節(jié)節(jié)點(diǎn)區(qū)域的圖像作為訓(xùn)練數(shù)據(jù),多了一些上下文信息,但是依然無法提供足夠的整體信息,如圖5所示。
圖5 節(jié)點(diǎn)連線部位檢測(cè)實(shí)驗(yàn)結(jié)果Fig.5 Test results of node-connected parts
基于DeepPose的關(guān)節(jié)節(jié)點(diǎn)檢測(cè)在FLIC 數(shù)據(jù)庫(kù)[2]和 Leeds Sports Pose 數(shù)據(jù)庫(kù)[11]進(jìn)行訓(xùn)練和測(cè)試。在深度學(xué)習(xí)框架caffe上運(yùn)行,迭代次數(shù)為50 000次,batch size大小為50。在訓(xùn)練過程中,損失函數(shù)一開始快速下降,隨后逐漸趨于平緩,直至收斂。訓(xùn)練過程的誤差曲線如圖6所示。
圖6 損失函數(shù)曲線Fig.6 Loss function curve
通過在測(cè)試集進(jìn)行測(cè)試發(fā)現(xiàn),部分圖片可以較為準(zhǔn)確地勾勒出人體肢體的情況,另一部分圖片則略有偏差。通過圖7的對(duì)比不難發(fā)現(xiàn),DeepPose對(duì)于單個(gè)人且人體在圖片中占較大比例時(shí)會(huì)得到比較好的預(yù)測(cè)結(jié)果。而當(dāng)待檢測(cè)圖片中包含多目標(biāo)或者是人體占圖片比例較小時(shí),效果不佳,甚至?xí)霈F(xiàn)特別大的偏差。因此,本文得出這樣的結(jié)論:DeepPose通過全圖特征分析回歸得到的節(jié)點(diǎn)坐標(biāo)受到圖片背景的影響較大,特別是當(dāng)人體區(qū)域在圖片中比例較小時(shí),DeepPose會(huì)將人體的部分區(qū)域誤認(rèn)為是背景,從而產(chǎn)生較大的偏差。
圖7 DeepPose的測(cè)試結(jié)果Fig.7 DeepPose test results
為了進(jìn)一步研究人體在圖像中的所占比例大小對(duì)于預(yù)測(cè)結(jié)果的影響,本文對(duì)同一張圖片中的人體區(qū)域進(jìn)行不同比例的裁剪和縮放,然后使用DeepPose進(jìn)行關(guān)節(jié)節(jié)點(diǎn)檢測(cè),結(jié)果如圖8所示。在圖8中,人體占圖片的比例越大,預(yù)測(cè)結(jié)果越準(zhǔn)確。這說明背景對(duì)于基于DeepPose的預(yù)測(cè)結(jié)果影響較大,當(dāng)人體所占的比例較小時(shí),背景圖片會(huì)對(duì)結(jié)果造成比較大的干擾。
圖8 人體占圖像不同比例的預(yù)測(cè)結(jié)果Fig.8 Predicting results of images with different proportions of human body
本文發(fā)現(xiàn)Faster-RCNN和 DeepPose 有著各自的優(yōu)缺點(diǎn),F(xiàn)aster-RCNN適合檢測(cè)較大塊、特征比較鮮明的物體,比如它對(duì)人體整體的檢測(cè)識(shí)別率達(dá)到98%以上,非常準(zhǔn)確,但是對(duì)于各個(gè)關(guān)節(jié)點(diǎn)的判斷能力幾乎沒有;而DeepPose與Faster-RCNN恰好相反,它對(duì)于細(xì)節(jié)和全圖關(guān)聯(lián)性的分析能力比較強(qiáng),適合做關(guān)節(jié)點(diǎn)位置的判斷,但是非常容易受到背景圖片的影響,且只能適用于單人圖片。于是,本文提出一種新的思路,結(jié)合Faster-RCNN目標(biāo)檢測(cè)的能力和DeepPose人體肢體節(jié)點(diǎn)坐標(biāo)的判斷分析能力,進(jìn)行多目標(biāo)的關(guān)節(jié)節(jié)點(diǎn)檢測(cè)。首先利用Faster-RCNN得到圖片中若干個(gè)人體的矩形框(大小為w×h),對(duì)于每個(gè)矩形框,將對(duì)應(yīng)的人體矩形框從原圖裁剪下來,歸一化成 227×227大小的人體區(qū)域(DeepPose的圖片輸入格式),放到DeepPose中運(yùn)行,并用優(yōu)化的bounding box以及R,r計(jì)算出節(jié)點(diǎn)坐標(biāo)p,再將p在227×227圖像塊上的坐標(biāo)位置映射到w×h的人體候選區(qū)域上。
通過實(shí)驗(yàn)發(fā)現(xiàn),結(jié)合Faster-RCNN和DeepPose的效果有了很大的提升。單純地使用DeepPose的方法,如圖9(a)所示,當(dāng)人周圍有了其他物體干擾后,肢體檢測(cè)結(jié)果會(huì)非常不準(zhǔn)確,而經(jīng)過Faster-RCNN計(jì)算出來的人體矩形框的約束后,關(guān)節(jié)節(jié)點(diǎn)的預(yù)測(cè)效果迅速提升。另外,對(duì)于原本DeepPose束手無策的多目標(biāo)關(guān)節(jié)節(jié)點(diǎn)檢測(cè),經(jīng)過Faster-RCNN的幫助,也不再是問題,如圖9(b)和9(c)所示。
圖9 結(jié)果對(duì)比Fig.9 Comparison of results
使用MPII數(shù)據(jù)集官方給出的評(píng)測(cè)工具[12]對(duì)我們的模型進(jìn)行評(píng)估,結(jié)果見表1??梢钥吹?,我們的模型在手腕、膝蓋兩種關(guān)鍵節(jié)點(diǎn)檢測(cè)上均取得了最好結(jié)果,比原來的最好結(jié)果各提升1.2%和0.3%。在其他5類關(guān)鍵節(jié)點(diǎn)檢測(cè)中也取得了很好的結(jié)果,在全部的關(guān)鍵節(jié)點(diǎn)檢測(cè)上PCKh為87.6%,接近于原來的最好結(jié)果88.5%。
表1 在MPII上的預(yù)測(cè)結(jié)果 (PCKh@0.5)Table 1 Results on MPII dataset (PCKh@0.5)
本文提出一種進(jìn)行多目標(biāo)關(guān)節(jié)節(jié)點(diǎn)檢測(cè)的新方法。該方法結(jié)合Faster-RCNN和 DeepPose各自的優(yōu)點(diǎn),優(yōu)化了人體關(guān)節(jié)節(jié)點(diǎn)檢測(cè)的結(jié)果。Faster-RCNN善于識(shí)別整體物體,比如人體、汽車、輪船等等,但是對(duì)于細(xì)節(jié)和關(guān)聯(lián)性分析能力不強(qiáng);DeepPose恰恰相反,它不善于分析事物的整體性,但是對(duì)于整體事物內(nèi)部的聯(lián)系有著較強(qiáng)的分析能力。本文提出的算法在MPII數(shù)據(jù)集中取得了很好的效果,能夠應(yīng)對(duì)多目標(biāo)關(guān)節(jié)節(jié)點(diǎn)檢測(cè)的問題。