<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
"); //-->

博客專(zhuān)欄

EEPW首頁(yè) > 博客 > 目標檢測回歸損失函數總結

目標檢測回歸損失函數總結

發(fā)布人:計算機視覺(jué)工坊 時(shí)間:2021-11-06 來(lái)源:工程師 發(fā)布文章

作者丨何杰文@知乎(已授權)

來(lái)源丨h(huán)ttps://zhuanlan.zhihu.com/p/422104433

編輯丨極市平臺

導讀

本文總結了6個(gè)目標檢測回歸損失函數的優(yōu)缺點(diǎn)以及對其公式的分析,

演進(jìn)路線(xiàn):Smooth L1->IoU->GIoU->DIoU->CIoU->EIOU Loss

Smooth L1 Loss

【動(dòng)機】 Smooth L1 Loss完美的避開(kāi)了L1和L2 Loss的缺點(diǎn)

L1 Loss的問(wèn)題:損失函數對x的導數為常數,在訓練后期,x很小時(shí),如果learning rate 不變,損失函數會(huì )在穩定值附近波動(dòng),很難收斂到更高的精度。

L2 Loss的問(wèn)題:損失函數對x的導數在x值很大時(shí),其導數也非常大,在訓練初期不穩定。

【分析】

SmoothL1對x的導數為:

實(shí)際使用時(shí):

其中image.png表示真實(shí)框坐標,表示預測的框坐標,即分別求4個(gè)點(diǎn)的loss,然后相加作為Bounding Box Regression Loss。

1.jpg

三種loss的曲線(xiàn)圖如圖所示,可以看到Smooth L1相比L1的曲線(xiàn)更加的Smooth

【不足】 Smooth L1 Loss在計算目標檢測的 bbox loss時(shí),都是獨立的求出4個(gè)點(diǎn)的 loss,然后相加得到最終的 bbox loss。這種做法的默認4個(gè)點(diǎn)是相互獨立的,與實(shí)際不符。舉個(gè)例子,當(x, y)為右下角時(shí),w h其實(shí)只能取0。

IoU Loss(2016)

論文地址:https://arxiv.org/pdf/1608.01471.pdf

【動(dòng)機】 針對smooth L1沒(méi)有考慮box四個(gè)坐標之間相關(guān)性的缺點(diǎn),

【分析】 通過(guò)4個(gè)坐標點(diǎn)獨立回歸Building boxes的缺點(diǎn):

檢測評價(jià)的方式是使用IoU,而實(shí)際回歸坐標框的時(shí)候是使用4個(gè)坐標點(diǎn),如下圖所示,是不等價(jià)的;L1或者L2 Loss相同的框,其IoU 不是唯一的;

通過(guò)4個(gè)點(diǎn)回歸坐標框的方式是假設4個(gè)坐標點(diǎn)是相互獨立的,沒(méi)有考慮其相關(guān)性,實(shí)際4個(gè)坐標點(diǎn)具有一定的相關(guān)性;

基于L1和L2的距離的loss對于尺度不具有不變性;

2.jpg

圖(a)中的三組框具有相同的L2 Loss,但其IoU差異很大;圖(b)中的三組框具有相同的L1 Loss,但IoU 同樣差異很大,說(shuō)明L1,L2這些Loss用于回歸任務(wù)時(shí),不能等價(jià)于最后用于評測檢測的IoU.

3.jpg

Ious Loss公式

IoU Loss定義如下:

實(shí)際使用中簡(jiǎn)化為:

【不足】

當預測框和目標框不相交,即 IoU(bbox1, bbox2)=0 時(shí),不能反映兩個(gè)框距離的遠近,此時(shí)損失函數不可導,IoU Loss 無(wú)法優(yōu)化兩個(gè)框不相交的情況。

假設預測框和目標框的大小都確定,只要兩個(gè)框的相交值是確定的,其 IoU 值是相同時(shí),IoU 值不能反映兩個(gè)框是如何相交的。

4.jpg

GIOU Loss(2019)

論文地址:https://arxiv.org/abs/1902.09630

代碼地址:https://github.com/generalized-iou/g-darknet

【動(dòng)機】 解決IoU Loss沒(méi)有考慮兩個(gè)框是如何相交

【分析】

GIoU定義如下:

image.png

實(shí)際使用時(shí):image.png

GIoU 取值范圍為 [-1, 1],在兩框重合時(shí)取最大值1,在兩框無(wú)限遠的時(shí)候取最小值-1;

與 IoU 只關(guān)注重疊區域不同,GIoU不僅關(guān)注重疊區域,還關(guān)注其他的非重合區域,能更好的反映兩者的重合度。

【實(shí)驗】 GIoU Loss,在單階段檢測器YOLO v1漲了2個(gè)點(diǎn),兩階段檢測器漲點(diǎn)相對較少(原因分析:RPN的box比較多,兩個(gè)框未相交的數量相對較少)

【不足】 當真實(shí)框完全包裹預測框的時(shí)候,IoU 和 GIoU 的值都一樣,此時(shí) GIoU 退化為 IoU, 無(wú)法區分其相對位置關(guān)系。

DIoU Loss(2019)

論文地址:https://arxiv.org/pdf/1911.08287.pdf

代碼鏈接:https://github.com/Zzh-tju/DIoU

【動(dòng)機】 解決GIoU Loss缺點(diǎn)當真實(shí)框完全包裹預測框的時(shí)候,IoU 和 GIoU 的值都一樣,引入距離

【分析】

基于IoU和GIoU存在的問(wèn)題,作者提出了兩個(gè)問(wèn)題:

第一:直接最小化預測框與目標框之間的歸一化距離是否可行,以達到更快的收斂速度。

第二:如何使回歸在與目標框有重疊甚至包含時(shí)更準確、更快。

好的目標框回歸損失應該考慮三個(gè)重要的幾何因素:重疊面積,中心點(diǎn)距離,長(cháng)寬比。

針對問(wèn)題一,作者提出了DIoU Loss,相對于GIoU Loss收斂速度更快,該Loss考慮了重疊面積和中心點(diǎn)距離,但沒(méi)有考慮到長(cháng)寬比;

針對問(wèn)題二,作者提出了CIoU Loss,其收斂的精度更高,以上三個(gè)因素都考慮到了。

DIoU Loss 的定義如下:

其中表示預測框和真實(shí)框中心點(diǎn)歐氏距離,c表示預測框和真實(shí)框最小外界矩形的對角線(xiàn)距離,如下圖所示:

5.jpg

綠色框為真實(shí)框,黑色框為預測框,灰色框為兩者的最小外界矩形框,d表示真實(shí)框和預測框的中心點(diǎn)距離,c表示最小外界矩形框的距離。

當2個(gè)框完全重合時(shí),

當2個(gè)框不相交時(shí):

【不足】 邊框回歸的三個(gè)重要幾何因素:重疊面積、中心點(diǎn)距離和長(cháng)寬比,DIoU 沒(méi)有包含長(cháng)寬比因素。

CIoU Loss(2019)

論文地址:https://arxiv.org/pdf/1911.08287.pdf

代碼地址:https://github.com/Zzh-tju/DIoU-darknet

【動(dòng)機】 解決DIoU loss沒(méi)有包含長(cháng)寬比因素的不足

【分析】

CIoU的懲罰項是在DIoU的懲罰項基礎上加了一個(gè)影響因子。

CIoU Loss定義為:

其中  ,

用于做trade-off的參數image.png

【實(shí)驗】

6.jpg

上表中左邊是用5種不同Boudning Box Regression Loss Function的對比,右邊是以IoU和GIoU來(lái)計算的2種Evaluation的結果;GIoU相對IoU會(huì )有2.49點(diǎn)提升,DIoU相對IoU會(huì )有3.29點(diǎn)提升,CIoU會(huì )有大概5.67點(diǎn)提升,CIoU結合DIoU-NMS使用效果最好,大概會(huì )有5.91點(diǎn)提升。

【不足】 在CIoU的定義中,衡量長(cháng)寬比過(guò)于復雜,從兩個(gè)方面減緩了收斂速度

image.png

EIoU Loss(2021)

論文地址:https://arxiv.org/pdf/2101.08158.pdf

【動(dòng)機】 解決CIoU的定義中不足

【亮點(diǎn)】 引入了解決樣本不平衡問(wèn)題的Focal Loss思想

【分析】

將CIoU的  取代為

EIoU Loss的定義為:

Focal-EIoU Loss的定義為:

focal loss可以理解為對損失加權,常見(jiàn)的分類(lèi)focal loss為:

最后得到:

【實(shí)驗】 論文首先嘗試直接將EIoU帶入,但是效果不好,僅供思路參考,

總結:

好的目標框回歸損失應該考慮三個(gè)重要的幾何因素:重疊面積,中心點(diǎn)距離,長(cháng)寬比, 對邊框間的物理描述愈發(fā)準確。

注意,使用時(shí)各種Loss算法的各個(gè)模塊之間的配合,例如IoU Loss與NMS算法的組合。

本文僅做學(xué)術(shù)分享,如有侵權,請聯(lián)系刪文。

*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。

led顯示器相關(guān)文章:led顯示器原理


色差儀相關(guān)文章:色差儀原理


關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>