本文是對 CVPR2019 論文《Generalized Intersection over Union: A Metric and A Loss for Bounding Box Regression》的解讀,通過對 Loss 的修改提升檢測任務的效果,覺得思路很棒。
該文作者來自斯坦福大學與澳大利亞阿德萊德大學。
IoU是檢測任務中最常用的指標,由于IoU是比值的概念,對目標物體的scale是不敏感的。然而檢測任務中的BBox的回歸損失(MSE loss, l1-smooth loss等)優化和IoU優化不是完全等價的(見下圖)。
而且 Ln范數對物體的scale也比較敏感。這篇論文提出可以直接把IoU設為回歸的loss。然而有個問題是IoU無法直接優化沒有重疊的部分。為了解決這個問題這篇paper提出了GIoU的思想~
IoU與L2范數的優化不是等效的。要將IoU設計為損失,主要需要解決兩個問題:
預測值和Ground truth沒有重疊的話,IoU始終為0且無法優化
IoU無法辨別不同方式的對齊,比如方向不一致等。
IoU 無法代表 overlap 的方式
GIoU
所以論文中提出的新 GIoU 是怎么設計的呢:
假如現在有兩個任意性質 A,B,我們找到一個最小的封閉形狀C,讓C可以把A,B包含在內,然后我們計算C中沒有覆蓋A和B的面積占C總面積的比值,然后用A與B的IoU減去這個比值:
GIoU有如下性質:
與IoU類似,GIoU也可以作為一個距離,loss可以用 (下面的公式)來計算
同原始 IoU 類似,GIoU 對物體的大小不敏感。GIoU 總是小于等于 IoU,對于 IoU,有
GIoU 則是
在兩個形狀完全重合時,有
由于 GIoU 引入了包含 A,B 兩個形狀的 C,所以當 A,B 不重合時,依然可以進行優化。
總之就是保留了IoU的原始性質同時弱化了它的缺點。于是論文認為可以將其作為IoU的替代。
GIoU 作為 BBox 回歸的損失
具體一點,如何計算損失呢?我們以 2D detecation 為例:
假設我們現在有預測的 Bbox 和 groud truth 的 Bbox 的坐標,分別記為:
注意我們規定對于預測的 BBox 來說,有
主要是為了方便之后點的對應關系。
作者做了一系列的實驗(針對分割任務和分類任務有一定 loss 的調整設計,不過論文中沒有詳細給出)結果是 IoU loss 可以輕微提升使用 MSE 作為 loss 的表現,而 GIoU 的提升幅度更大,這個結論在 YOLO 算法和 faster R-CNN 系列上都是成立的:
PASCAL VOC 2007上的提升with Yolo
MS COCO的提升with Yolo
PASCAL VOC 2007 with faster-RCNN
更多內容大家可以參考項目主頁:
https://giou.stanford.edu/
代碼實現:
https://github.com/generalized-iou
原文鏈接:
https://zhuanlan.zhihu.com/p/57992040
-
計算
+關注
關注
2文章
451瀏覽量
38865 -
回歸
+關注
關注
0文章
4瀏覽量
7066
原文標題:CVPR2019 | 斯坦福學者提出GIoU,目標檢測任務的新Loss
文章出處:【微信號:rgznai100,微信公眾號:rgznai100】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
斯坦福開發過熱自動斷電電池
關于斯坦福的CNTFET的問題
回收新舊 斯坦福SRS DG645 延遲發生器
DG645 斯坦福 SRS DG645 延遲發生器 現金回收
結合預測框和目標框之間的歸一化距離來提出距離-IoU (DIoU) Loss
基于YOLOX目標檢測算法的改進
"現代愛迪生"鎳氫反應電池發明者斯坦福逝世
斯坦福開啟以人為中心的AI計劃
斯坦福“以人為本人工智能研究院”——Stanford HAI正式上線!
斯坦福SR560可編程濾波器開機顯示overload維修案例
![<b class='flag-5'>斯坦福</b>SR560可編程濾波器開機顯示overload維修案例](https://file.elecfans.com//web2/M00/78/A6/poYBAGNrUGGAbbbyAACkQtDRW6g741.jpg)
維修斯坦福SR560可編程濾波器燒了overload
![維修<b class='flag-5'>斯坦福</b>SR560可編程濾波器燒了overload](https://file1.elecfans.com//web2/M00/BB/B5/wKgZomWc_J2AZEmxAAPilhquvQA489.jpg)
評論