什么是目標檢測中的旋轉敏感度錯誤?
點擊上方“小白學視覺”,選擇加"星標"或“置頂”
重磅干貨,第一時間送達
文章導讀
旋轉框的目標檢測任務通常出現(xiàn)在遙感數(shù)據(jù),文本數(shù)據(jù),以及點云鳥瞰圖數(shù)據(jù)中。對旋轉框的表達會采用中心點和長寬再加上旋轉角,然后設計損失函數(shù)求學習誤差。以下介紹一篇講述旋轉框回歸引起的旋轉敏感度誤差以及如何解決該問題的文章RSDet。
前沿
核心思想
問題描述
解決方法
思考展望
目標檢測任務根據(jù)方向,通??煞譃樗娇驒z測和旋轉框檢測。水平框檢測通常適合于一般的自然場景圖像。旋轉框檢測通常出現(xiàn)在場景文本、遙感地圖、車牌檢測、點云鳥瞰圖中,通常需要更精確的定位,并需要有效的旋轉檢測器。
目標檢測中如何表示一個旋轉框?
通常對一個旋轉框我們有兩種表達形式:一種是基于五個參數(shù),分別為中心點(x, y)、寬高(w, h)、旋轉角度a,如下圖所示:

另一種是基于八個參數(shù),分別是旋轉框的四個頂點(x1, y1),(x2, y2),(x3, y3),(x4, y4),如下圖所示:

對于基于區(qū)域的旋轉物體檢測器,通常使用“l(fā)1-損失”作為損失函數(shù)。
本文認為由于角度固有的周期性以及相關的寬度和高度的突然變化導致的損失不連續(xù)性,上述積分會導致訓練不穩(wěn)定和性能退化??紤]到五個具有不同測量單位的參數(shù)之間不一致的回歸性,這個問題更加突出。
針對上述問題,本文提出調制旋轉損耗來消除損耗不連續(xù)性。新的損耗與八參數(shù)回歸相結合,進一步解決了參數(shù)回歸不一致的問題。
什么是旋轉敏感度誤差?
1. 角度損失不連續(xù):當角度數(shù)值達到其范圍邊界時,角度損失就會出現(xiàn)跳變;
2. 回歸參數(shù)的不統(tǒng)一:中心點坐標,寬高以及角度的單位不同,并且與IoU存在不同的關系;
以上兩個問題會導致訓練不穩(wěn)定以及最終檢測性能的下降。
如何解決上述兩個問題?
針對損失函數(shù)中出現(xiàn)的不連續(xù)的問題,本文在原有的基礎上增加校正損失,對突變位置的L1-損失進行對稱。
針對回歸參數(shù)不一致的問題,本文對五參數(shù)旋轉框的表示修改為八參數(shù)旋轉框表示法?;诎藚?shù)回歸的檢測直接對旋轉框的四個點回歸,因此預測是四邊形的。
四邊形回歸的關鍵步驟是預先對四個角點進行排序,使姿態(tài)預測正確,也可以避免非常大的損失。對于頂點順序,本文采用基于叉積的算法來獲得四個頂點的序列。
什么是角度參數(shù)引起的損耗不連續(xù)?
當角度達到其范圍邊界時,損失值將會跳躍,如圖,將水平矩形分別順時針和逆時針旋轉1度,得到地面真值框和檢測框。參考矩形的位置只是略有變化,但它的角度變化很大,高度和寬度也發(fā)生了變化。

藍色、紅色和綠色的矩形分別代表參考框、真實框和預測框。上述三個框用五個參數(shù)來描述:參考框(0,0,10,25,-90°)、真實框(0,0,25,10,-1°)和預測框(0,0,10,25,-89°)。網絡預測的偏移量為(0 , 0 , 0 , 0 , 1 ° ) ,將參考框轉為預測框。網絡訓練的目標是(0 , 0 , 15 , ? 15 , 89 ° ),目標與網絡預測的偏移量很多,所以損失會很大。這就是角度的周期性導致的損失不連續(xù)。
參數(shù)單位的不同如何影響網絡性能?
在五參數(shù)系統(tǒng)中,角度,寬度,高度和中心點坐標具有不同的測量單位,并且它們與IoU顯示出相當不同的關系,如下圖所示。簡單地將它們加起來會導致不一致的回歸性能。

為了解決上述兩個問題,本文分別針對五參數(shù)和八參數(shù)設計了旋轉損失。
1. 五參數(shù)旋轉損失
由于l1損失函數(shù)在五參數(shù)情況下,在邊界會出現(xiàn)損耗不連續(xù)的情況。本文設計了新的損失函數(shù)lmr?:

lcp是中心點損失,lmr的第一項是L1損失。第二項是通過消除角度周期性以及高度和寬度的交換性校正損失使其連續(xù)。當其未達到角度參數(shù)的范圍邊界時,該校正項大于L1損失。當L1損失突然發(fā)生不連續(xù)時,這種校正變得正常。換句話說,這種校正可以看作是對突變位置的L1-損失進行對稱。最后,損失為最小的L1-損失和校正損失。lmr曲線是連續(xù)的。

2. 八參數(shù)旋轉損失
為了避免固有的回歸不一致,本文針對八參數(shù)表示法中頂點的順序問題做了設計。
主要步驟是先確定最左邊的點(如果矩形是水平的則有兩個最左面點,取上面的那個)。然后通過叉乘找到對角點,也就是第三個點。最后利用這兩個點構成的向量以及叉乘方法,根據(jù)逆時針或者順時針的順序要求找點其他兩個點。
但是,在八參數(shù)回歸模型中仍然存在損失不連續(xù)性。
如下圖所示,從藍色預選框到實際位置的回歸過程。綠色真實框為{(a→a),(b→b),(c→c),(d→d)},但顯然理想的回歸過程應為{(a→b),(b→c),(c→d),(d→a)}。這種情況也導致模型訓練困難和回歸不平滑。

因此,本文設計了八參數(shù)版本的旋轉損失函數(shù)。分別將預選框的四個頂點順時針移動一位,保持預選框頂點的順序不變,將預選框的四個頂點逆時針移動一位。取三種情況下的最小值。

文章提到中心點,長寬和角度單位度量的不同會對訓練的模型的結果產生影響。但是很多通用的目標檢測網絡中,回歸損失函數(shù)的發(fā)展是經歷了L-norm—>IoU—>GIoU—>DIoU—>CIoU—>EIoU的過程,正是因為使用L-norm作為回歸損失無法兼顧邊界框回歸的三大幾何因素:重疊面積、中心點距離、縱橫比,才發(fā)展成了IoU系列。
為什么在旋轉框的目標檢測任務中仍在L-norm的回歸上進行優(yōu)化?是否可以在IoU系列上增加角度參數(shù)從而做到更好的位置回歸?
交流群
歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動駕駛、計算攝影、檢測、分割、識別、醫(yī)學影像、GAN、算法競賽等微信群(以后會逐漸細分),請掃描下面微信號加群,備注:”昵稱+學校/公司+研究方向“,例如:”張三?+?上海交大?+?視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會根據(jù)研究方向邀請進入相關微信群。請勿在群內發(fā)送廣告,否則會請出群,謝謝理解~

