天天看點

anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

文章目錄

  • 前言
  • 1、L1/L2 loss
  • 2、Smooth L1 loss
  • 3、IOU loss
  • 4、GIOU loss
  • 5、DIOU loss
  • 6、CIOU loss
  • 7、EIOU loss
  • 8、總結

前言

  聲明:轉載它處,稍作總結

1、L1/L2 loss

定義如下:

anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

缺點:

  1. L1 loss對x倒數為常數,x是真實值與标簽值的差,那麼無論是訓練前期還是後期,提供的梯度都一樣,在訓練後期由于梯度原因損失函數波動較大,難以達到更好的收斂效果。
  2. L2 loss對x的求導與x的大小正比,當x較大時,倒數很大,訓練初期不穩定。

2、Smooth L1 loss

針對L1、L2 loss的缺點,綜合了兩者得到smooth L1。

定義如下:

anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

當x的絕對值在1之内(小),取L2 loss;x絕對值大于1時,取L1 loss。位置損失函數如下:

anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

其中v是bbox的真實值,t表示預測值。

缺點:

  1. L1、L2、Smooth L1計算邊界框損失時,獨立求出4個值的loss然後相加,而評判位置準确性的名額是IOU,IOU與Smooth L1 loss的計算方式不比對。

3、IOU loss

針對Smooth L1 loss的缺點,引入了x、y、w、h的關聯性,同時具備尺度不變性。

定義如下:

anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

或者

anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

缺點:

  1. 當IOU為0時,不能反映預測框和真實框的距離,順勢函數不可導,即IOU loss無法優化兩個框不相交的情況。
  2. IOU不能反映兩個框是如何相交的,如下圖:
    anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

4、GIOU loss

針對IOU loss隻關注重疊區域,不能反映相交情況,GIOU loss不僅關注重疊區域,還關注非重疊區域。

定義如下:

anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結
anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

其中C為A和B的外接矩形,GIOU的取值範圍是[-1,1],兩個框重合取1,無限遠取-1,GIOU loss範圍[0,2]。

缺點:

  1. 當目标框完全包裹預測框時,IOU與GIOU的值一樣,此時GIOU退化為IOU,無法反映具體預測框和真實框的具體位置關系,如下圖:
    anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

5、DIOU loss

針對IOU和GIOU的缺點,DIOU将兩個要素融入邊界框回歸,重疊面積、中心點距離,并将它們融入到懲罰項中。

定義如下:

anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結
anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

缺點:

  1. DIOU沒有包含長寬比因素。

6、CIOU loss

針對DIOU沒有考慮長寬比因素,CIOU在DIOU的基礎上将長寬比因素融入懲罰項。

定義如下:

anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

其中v用于衡量長寬比的一緻性, α \alpha α用于平衡v的大小,表達式如下:

anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結
anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

最後,得到CIOU loss的表達式:

anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

缺點:

  1. v太複雜,減緩了收斂速度。
  2. 從上看出v對w和v對h符号相反,那麼優化意義相反。

7、EIOU loss

針對CIOU中v太複雜的問題,

anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

定義如下:

anchor-based的邊界框回歸損失函數前言1、L1/L2 loss2、Smooth L1 loss3、IOU loss4、GIOU loss5、DIOU loss6、CIOU loss7、EIOU loss8、總結

8、總結

在選用邊界框回歸函數時,要根據具體情況考慮;同時更好的損失函數應該與nms等子產品配合起來使用。

繼續閱讀