ECCV 2018 | Bi-box行人检测:‘行人遮挡’为几何?
極市平臺是專業視覺算法平臺,主要為開發者提供真實項目需求,視覺算法開發等服務,點擊填表加入極市專業CV交流群,與6000+來自騰訊,華為,百度,北大,清華,中科院等名企名校視覺開發者互動交流!更有機會與李開復老師等大牛群內互動!
同時提供每月大咖直播分享、真實項目需求對接、干貨資訊匯總,行業技術交流。掃描以下二維碼,立刻申請入群~
“本文是ECCV2018處理行人檢測中遮擋問題的又一篇力作,通過預測行人目標的可見部分來指導網絡學習,實驗表明對嚴重遮擋情況下的行人檢測十分有效。”
作者:Panzer
論文地址:
https://cse.buffalo.edu/~jsyuan/papers/2018/Bi-box Regression for Pedestrian Detection.pdf
背景介紹
與通用目標檢測相比,遮擋情況在行人檢測中更為普遍,為此也是行人檢測領域最廣為關注的問題之一,例如今年的CVPR共有3篇行人檢測的工作,均解決的是遮擋情況下的行人檢測,同樣今年的ECCV共有4篇行人檢測的相關工作,其中有兩篇重點解決的是行人檢測中的遮擋問題,可見遮擋受關注程度之高,故也是極其具有挑戰性的一個問題。
對于遮擋情況下的行人檢測,總結已有的相關工作,主要有兩種思路:一是對目標候選框分成不同part逐一處理、區別對待再加以特征融合;二是從loss的角度使得目標候選框對相互遮擋的情況更具判別性,如CVPR2018的RepLoss[1],ECCV2018的OR-CNN[2]。
目前主流的行人檢測算法大多基于兩階段的檢測器框架,本文也不例外,但另辟蹊徑,通過讓網絡同時輸出目標候選框的可見部分,指導網絡在學習的過程中對遮擋情況下的行人目標更具有判別力,實驗表明該思路對嚴重遮擋情況下的行人檢測十分有效。
本文方法
本文方法遵循Fast R-CNN檢測框架。為了處理遮擋問題,本文提出利用一個網絡同時進行行人檢測和遮擋估計,具體而言就是讓網絡并行兩個分支,分別輸出兩個bounding box,一個是完整的行人框,另一個時行人的可見部分,如下圖1所示,前者為紅色框后者為藍色框,對于沒有行人目標的候選框而言,則可見部分分支的輸出要盡量逼近候選框的中心。
文中圖2給出了本文算法的具體流程,基于Fast R-CNN檢測框架,首先產生目標候選框,將圖像和目標候選框輸入卷積神經網絡,然后通過RoI pooling提取每個目標候選框的特征,對這些特征進行分類和回歸,分別得到兩個box,圖2中的綠色框代表行人目標整體,黃色框代表可見部分。文中圖3給出了具體的網絡架構示意圖,其主要包括兩個分支:可見部分估計分支和行人整體估計分支。
對于行人整體估計分支的具體處理流程和通用目標檢測一致,不再贅述,這里重點論述下可見部分估計分支,也是本文的貢獻所在。
對于網絡訓練,一個目標候選框P被當成正樣本需要滿足如下兩個條件:
也即目標候選框P不僅要和整個標注框的重疊程度大于一定閾值,還要和標注框內行人可見部分的重疊程度大于一定閾值,這種設定正樣本的方式顯然是合理的,能夠更有效地指導網絡學習進而獲得更強的特征判別力。以圖4為例,如果和已有方法一樣,只用式(1)中的第一個條件時,圖(b)中的藍色框也會被當成正樣本,然而藍色框中包含的目標信息非常有限,顯然是會干擾網絡的正常學習的,而如果加上式(1)中的第二個條件,則只有紅色框才會被當成正樣本。
對于可見部分估計分支的正樣本而言,其回歸目標和整體估計分支一致,定義如下:
但對于負樣本也應當有回歸目標,因為有些負樣本和真實目標沒有重疊,而有些負樣本和真實目標有部分重疊,為了更好地區分正負樣本,作者將負樣本的回歸目標定義為目標候選框的中心區域,實驗表明這一點非常重要。如果可見部分估計分支只為正樣本分配回歸目標的話,這個分支的訓練將被沒有遮擋的目標所主導(因為這部分目標的可見部分和整體部分基本是一致的),結果會導致預測的負樣本的可見部分和整體部分是一致的,這樣兩個分支就不具有互補性了,也就達不到本文利用兩個分支的目的。
實驗分析
實驗細節:
實驗是在Caltech和CityPerson上做的,因為目前只有這兩個數據集提供了可見部分的標注。其中Caltech訓練和測試均采用原始標注。
實驗結果:
首先我們看下在Caltech上的驗證實驗,下表1展示了式(1)中的兩個超參數在不同設定下的評估結果,其中heavy partial代表不同的遮擋程度,α設為固定的0.5,當β逐漸增大時,正樣本的質量越高但也意味著正樣本數量的降低,可見利用本文這套選擇正樣本的機制還是很有效的,尤其是在heavy子集上能提升2個點左右。
表2具體展示了本文各個貢獻所帶來的性能提升,FRCN代表最原始的Fast R-CNN;FRCN+則代表利用了本文的正樣本選擇機制,在heavy子集上的提升最為明顯;VPE,FBE和PDOE分別代表利用可見部分估計分支、整體估計分支和融合兩個分支得分的結果,PDOE-代表訓練可見部分估計分支的回歸目標時,負樣本對loss沒有任何貢獻,可見PDOE在heavy子集上得到了最好結果,比FRCN提升了5.5個點;如果利用RPN來提取目標候選框并融合其得分,本文算法在Reasonable子集上得到了最好結果。
圖5展示了本文算法與其他兩個遮擋處理算法的對比結果,其中DeepParts就是將目標分成不同part分別進行打分的,可見本文算法的性能優勢還是很明顯的尤其是在嚴重遮擋子集上,當然本文算法在Reasonable子集的7.6的表現也是當前Caltech庫上的state-of-the-art,論文中有圖6為證,這里由于篇幅關系不再展示。
同樣在CityPersons驗證集上的表現也是state-of-the-art(如下表3),其中Small代表小目標子集,All代表所有標注目標均參與評估。結果基于測試圖像擴大1.3倍所得,本文算法在Reasonable設定下取得了11.24的表現,優于該數據集上的FasterRCNN[3]的12.81,此外在Small和Heavy子集上本文方法也比FRCN有較大的提升,足以證明對遮擋情況下的行人檢測的優越性。
總結展望
本文貢獻:
(1)本文重點關注行人檢測中的遮擋問題,并基于Fast RCNN的檢測框架提出了一套解決方案。
(2)本文實驗給出兩個結論:1、預測行人框的可見部分是可行的,并可以帶來整體行人檢測的性能提升;2、訓練時,結合遮擋程度來定義高質量的正樣本,可以為訓練帶來幫助,不失為一種非常經濟有效的提升性能的trick。
個人見解:
(1)遮擋問題一直是行人檢測領域非常具有挑戰性的一個問題。其困難在于:從當前常見的行人檢測benchmark的評估的角度,需要檢測器輸出被遮擋目標的整體部分,為此檢測器需要根據僅有的未被遮擋的信息來推斷出整個目標的位置,如何利用未被遮擋的信息是解決這一問題的關鍵,本文則將這一信息直接用于指導網絡訓練,也即指導網絡在輸出行人目標整體box的同時也要輸出行人目標的可見部分box,實驗證明這種思路是有效的,能夠顯著提升行人檢測的準確性,筆者認為該思路有效的原因在于訓練過程中給了網絡更多的supervision,但這種方法所產生的代價也是顯而易見的,也就是其需要數據集額外給出行人目標可見部分的標注,故該方法無法在沒有可見部分標注的數據集上使用。
(2)不可否認的是,未來將還會有大量的工作聚焦于行人檢測中的遮擋問題。從本文可以得到的一個啟發是:只要給予網絡訓練以正向的指導(例如明確告知其遮擋的程度)就能獲得一定的性能提升,因此可以從數據增廣的角度考慮增加訓練集中行人遮擋類型的豐富程度,也是值得探索的一個方向。
參考文獻:
[1] Repulsion Loss: Detecting Pedestrians in a Crowd. CVPR (2018)
[2] Occlusion-aware R-CNN: Detecting Pedestrians in a Crowd. ECCV (2018)
[3] CityPersons: A Diverse Dataset for Pedestrian Detection CVPR (2017)
本文為極市原創文章,轉載請注明出處及原文鏈接,同時歡迎大家投稿~
總結
以上是生活随笔為你收集整理的ECCV 2018 | Bi-box行人检测:‘行人遮挡’为几何?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 吴恩达新书《Machine Learni
- 下一篇: 极市分享|第34期 袁源Jerry:机器