參考資料:
1、什么是行人檢測
行人檢測是使用計算機視覺技術(shù)來判斷圖像或視頻中是否存在行人??梢酝ㄟ^跟行人跟蹤,行人重識別技術(shù),來應(yīng)用于人工智能系統(tǒng),車輛輔助駕駛系統(tǒng)、智能交通等領(lǐng)域
2、行人檢測的具體過程
① 處理數(shù)據(jù)
② 訓(xùn)練模型
③ 輸出目標位置
3、行人檢測的難點
① 外觀差異大。包括視覺、姿態(tài)、服飾和附著物、光照、成像距離等。行人不同的運動姿態(tài)、角度,都會顯示出不同的外觀,而且成像距離遠近不一,也會造成外觀大小不同
② 遮擋問題,在行人密集的地方,會發(fā)生行人被遮擋的問題,或者是被周圍的建筑物遮擋住
③ 背景復(fù)雜,有些物體的外觀、造型、顏色、紋理等都比較接近人體,例如雕塑或人像廣告牌、假人等。之前就有個新聞?wù)f紅綠燈行人越線檢測時,把公共汽車上的代言人廣告中的代言人也檢測了出來
④ 檢測速度,行人檢測一般使用了比較復(fù)雜的模型,運算量相當大,要達到實時非常困難,一般需要大量的優(yōu)化
4、行人檢測的算法
Faster R-CNN
文獻[16]分析了Faster R-CNN在行人檢測問題上的表現(xiàn),結(jié)果表明,直接使用這種算法進行行人檢測效果并不滿意。作者發(fā)現(xiàn),F(xiàn)aster R-CNN中的RPN網(wǎng)絡(luò)對提取行人候選區(qū)域是相當有效的,而下游的檢測網(wǎng)絡(luò)表現(xiàn)的不好。作者指出了其中的兩個原因:對于小目標,卷積層給出的特征圖像太小了,無法有效的描述目標;另外,也缺乏難分的負樣本挖掘機制。作者在這里采用了一種混合的策略,用RPN提取出候選區(qū)域,然后用隨機森林對候選區(qū)域進行分類。這一結(jié)構(gòu)如下圖所示:

DeepParts
文獻[21]提出了一種基于部件的檢測方案,稱為DeepParts,致力于解決遮擋問題。這種方案將人體劃分成多個部位,分別進行檢測,然后將結(jié)果組合起來。部位劃分方案如下圖所示:

整個系統(tǒng)的結(jié)構(gòu)如下圖所示:

RepLoss
RepLoss[14]由face++提出,主要目標是解決遮擋問題。行人檢測中,密集人群的人體檢測一直是一個難題。物體遮擋問題可以分為類內(nèi)遮擋和類間遮擋兩類。類內(nèi)遮擋指同類物體間相互遮擋,在行人檢測中,這種遮擋在所占比例更大,嚴重影響著行人檢測器的性能。
針對這個問題,作者設(shè)計也一種稱為RepLoss的損失函數(shù),這是一種具有排斥力的損失函數(shù),下圖為RepLoss示意圖:

RepLoss 的組成包括 3 部分,表示為:

其中L_Attr 是吸引項,需要預(yù)測框靠近其指定目標;L_RepGT 和 L_RepBox 是排斥項,分別需要當前預(yù)測框遠離周圍其它的真實物體和該目標其它的預(yù)測框。系數(shù)充當權(quán)重以平衡輔助損失。
HyperLearner
文獻[25]提出了一種稱為HyperLearner的行人檢測算法,改進自Faster R-CNN。在文中,作者分析了行人檢測的困難之處:行人與背景的區(qū)分度低,在擁擠的場景中,準確的定義一個行人非常困難。
作者使用了一些額外的特征來解決這些問題。這些特征包括:
apparent-to-semantic channels
temporal channels
depth channels

為了將這些額外的特征也送入卷積網(wǎng)絡(luò)進行處理,作者在VGG網(wǎng)絡(luò)的基礎(chǔ)上增加了一個分支網(wǎng)絡(luò),與主體網(wǎng)絡(luò)的特征一起送入RPN進行處理:

其他的基本上遵循了Faster R-CNN框架的處理流程,只是將anchor參數(shù)做了改動。在實驗中,這種算法相比Faster R-CNN有了精度上的提升。
從上面的回顧也可以看出,與人臉檢測相比,行人檢測難度要大很多,目前還遠稱不上已經(jīng)解決,遮擋、復(fù)雜背景下的檢測問題還沒有解決,要因此還需要學(xué)術(shù)界和工業(yè)界的持續(xù)努力。