ExtremeNet:通過極點進行目標檢測,更細緻的目標區域 | CVPR 2019

ExtremeNet檢測目標的四個極點,然後以幾何的方式將其組合起來進行目標檢測,性能與其它傳統形式的檢測演算法相當。ExtremeNet的檢測方法十分獨特,但是包含了較多的後處理方法,所以有很大的改進空間,感興趣可以去看看論文實驗中的錯誤分析部分

來源:曉飛的演算法工程筆記 公眾號

論文: Bottom-up Object Detection by Grouping Extreme and Center Points

Introduction


  在目標檢測中,常用的方法將目標定義為矩形框,這通常會帶來大量妨礙檢測的背景資訊。為此,論文提出ExtremeNet,通過檢測目標的四個極點進行目標定位,如圖1所示。整體演算法基於CornerNet的思想進行改進,使用五張熱圖分別預測目標的四個極點以及中心區域,將不同熱圖的極點進行組合,通過組合的幾何中心在中心點熱圖上的值判斷組合是否符合要求。另外,ExtremeNet檢測的極點能夠配合DEXTR網路進行目標分割資訊的預測。

ExtremeNet for Object detection


  ExtremeNet使用HourglassNet進行類可知的關鍵點檢測,遵循CornerNet的訓練步驟、損失函數和偏移值預測,其中偏移值的預測是類不可知的,中心點不包含偏移值。主幹網路共輸出$5\times C張熱圖,$4\times 2偏移值特徵圖,C為類別數,整體結構和輸出如圖3所示。當極點提取後,根據幾何關係將他們進行組合。

Center Grouping

  極點位於目標的不同方向,組合時會十分複雜,論文認為像CornerNet那樣採用embedding向量進行組合會缺乏全局資訊,所以提出了Center Grouping進行極點組合。

  Center Grouping的流程如演算法1所示,首先獲取四個極點熱圖上的高峰點,高峰點需滿足兩點:1) 其值需大於閾值\tau_p 2) 為局部最大值,高峰點的值需大於周圍八個點,獲取高峰點的過程稱為ExtrectPeak。在得到各個熱圖上的高峰點後,遍歷各高峰點的組合,對於滿足幾何關係的高峰點組合(t,b,r,l),計算其幾何中心點c=(\frac{l_x+t_x}{2}, \frac{t_y+b_y}{2}),如果幾何中心點的值滿足\hat{Y}^{(c)}_{c_x, c_y} \ge \tau_c,則認為該高峰點組合符合要求。

Ghost box suppression

  在三個大小相同的目標等距分布的情況下,Center Grouping可能會出現高置信度的誤判。此時,中間的目標可能有兩種情況,一是正確的預測,二是錯誤地與隔壁的物體合併輸出,論文稱第二種情況的預測框為ghost框。為了解決這種情況,論文增加了soft-NMS後處理方法,如果某個預測框的內包含的預測框的置信度之和大於其三倍,則將其置信度除以二,然後再進行NMS操作。

Edge aggregation

  極點有時不是唯一的,如果目標存在水平或垂直的邊界,則邊上所有的點都是極點,而網路對這種邊界上的點的預測值會較小,可能導致極點的漏檢。

  論文採用邊聚合(edge aggregation)來解決這個場景,對於左右熱圖的局部最大點,在垂直方向進行分數聚合,而上下熱圖的局部最大點則在水平方向進行分數聚合。將對應方向上的單調遞減分數進行聚合,直到遇到聚合方向上的局部最小點為止。假設m為局部最大值點,N^{(m)}_i=\hat{Y}_{m_x+i, m_y}為水平方向的點,定義i_0 < 0和$0<i_1為兩邊最近的局部最小值,即N^{(m)}{i_0-1} > N^{(m)}{i_0}N^{(m)}{i_1} < N^{(m)}{i_1+1},則邊聚合的高峰點值更新為\tilde{Y}m=\hat{Y}m+\lambda{aggr}{\sum}^{i_1}{i=i_0}N^{(m)}i,其中\lambda{aggr}$為聚合權重,設置為0.1,整體效果如圖4。

Extreme Instance Segmentation

  極點比bbox包含更多的目標資訊,畢竟多了兩倍的標註資訊(8 vs 4)。基於四個極點和bbox,論文提出簡單的方法來獲取目標的mask資訊,首先以極點為中心擴展出1/4 bbox邊界長度的線,如果線超過bbox則截斷,然後將四條線首尾連接得到八邊形,如圖1所示。最後使用DEXTR(Deep Extreme Cut)方法進一步獲取mask資訊,DEXTR網路能夠將極點資訊轉化成分割資訊,這裡直接將八邊形截圖輸入到預訓練的DEXTR網路中。

Experiments


  各模組的對比實驗,另外論文對ExtremeNet進行了錯誤分析,將各模組的輸出替換為GT,最終能達到到86.0AP。

  與其它SOTA方法進行對比。

  實例分割效果。

Conclusion


  ExtremeNet檢測目標的四個極點,然後以幾何的方式將其組合起來進行目標檢測,性能與其它傳統形式的檢測演算法相當。ExtremeNet的檢測方法十分獨特,但是包含了較多的後處理方法,所以有很大的改進空間,感興趣可以去看看論文實驗中的錯誤分析部分。



如果本文對你有幫助,麻煩點個贊或在看唄~
更多內容請關注 微信公眾號【曉飛的演算法工程筆記】

work-life balance.