日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

【目标检测】ICCV21_TOOD: Task-aligned One-stage Object Detection

發布時間:2023/12/15 66 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【目标检测】ICCV21_TOOD: Task-aligned One-stage Object Detection 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

    • 一、背景
    • 二、動機
    • 三、方法
      • 3.1 Task-aligned Head
      • 3.2 Task Alignment Learning
        • 3.2.1 Task-aligned sample assignment
        • 3.2.2 Task-aligned Loss
    • 四、效果

論文:https://arxiv.org/pdf/2108.07755.pdf
代碼:https://github.com/fcjian/TOOD

一、背景

目標檢測一直是計算機視覺中的重要任務。目前的方法大都是并行的實現對目標的分類和定位。分類的目標是學習目標的具有區分力的特征,定位的目標是對目標的邊界進行準確的定位。所有這個兩個任務有很大的不同,也會導致這兩個任務的不對齊。

二、動機

現有的單階段方法都通過一定的手段來實現兩個任務的統一,也就是使用目標的中心點。他們加上目標中心點的 anchor 能夠給分類和定位提供更準確的預測。例如 FCOS/ATSS 都使用 centerness 分支來提高在物體中心附近的anchor的分類得分,并且給對應的anchor的定位 loss 更多的權重。但這些方法大都有兩個問題:

問題一:分類和定位是被獨立對待的

現有單階段檢測方法,將分類和定位分為兩個分支,這樣可能回導致兩個任務的互相交互很少,導致預測的不一致性。如圖1所示,ATSS 檢測器識別出了一個餐桌,但是對披薩的定位確非常準確。

問題二:Task-agnostic 的樣本分配(對任務無差別的樣本分配)

大多數 anchor-free 的檢測室使用基于幾何的分配方法來選擇里中心點近的 anchor-point,但 anchor-based 方法通常計算anchor box 和 gt box 的 IoU 來確定 anchor。但是,分類和定位的最優 anchor 通常是不一致的,而且和目標的形狀和特征有很大的關系。所以,對不同任務都使用相同的樣本分配方法難以對這兩個任務起到相同的作用。

如圖1中 ATSS(第一行) 的 score 和 IoU,result 列展示出了一個問題,即定位最優的anchor的位置并不一定在目標的中心,而且和最好的分類得分的框不是同一個。所以,定位的準確的框可能會被 NMS 干掉。

基于此,作者提出了一個 Task-aligned one-stage object detection 方法 TOOD,通過設計一個新的 head 結構來更好的將分類和定位任務對齊。

三、方法

總覽:

類似于現有的 one-stage 方法,本文提出的 TOOD 也采用了 “backbone-FPN-head” 的結構,并且為了高效性,TOOD 采用了類似于 ATSS 的anchor生成方法,即在每個位置生成一個anchor,這里的 anchor 在 anchor-free 方法中表示 anchor-point,在 anchor-based 方法中表示 anchor-box。

本文提出了 Task-aligned head (T-head) 和 Task Alignment Learning (TAL) 來解決分類和定位對不齊的問題,如圖2所示。T-head 和 TAL 可以合作起來來實現對這個兩個任務的對齊。

  • 首先,T-head 在 FPN 輸出特征中進行分類和定位
  • 然后,TAL 基于 alignment metric 來計算兩者的 alignment signal
  • 最后,T-head 在反向傳播的時候再使用 alignment signal 來動態調整分類的得分和定位的位置

3.1 Task-aligned Head

為了實現一個高效的結構來提升 head 的設計(如圖3a),作者:

  • 加強了兩個任務的交互
  • 提升的檢測器學習對齊與否的能力

T-head 的結構如圖3b所示,由一個簡單的特征提取器和兩個 Task-aligned Predictors 構成。

  • 為了加強兩個任務的交互,作者使用了一個特征提取器來從卷積層中學習 task-interactive 特征,如圖3b所示,這樣的設計不僅僅可以加強任務的交互,而且可以給這兩個任務提供多尺度感受野的多級特征。因此,可以使用單個分支從 FPN 特征中獲得豐富的多尺度特征。
  • 之后,將會把計算得到的 task-interactive feature 送入兩個TAP 來對齊分類和定位

Task-aligned Predictor (TAP):

作者在計算 task-interactive features 的時候,會同事使用分類和定位的特征,這樣也會使得每個任務更好的感知對方的狀態。然而,由于是單個branch,task-interactive features 會不可避免的引入兩個任務的特征沖突,因為兩個任務的注意點是不同的。于是,作者提出了一個 layer attention 機制,通過動態計算 task-specific 的特征來進行任務的分解,如圖3c所示。


task-specific 特征對每個任務的計算方式如下:

  • wkw_kwk? 是第 k element of the learned layer attention w∈RNw\in R^NwRN

  • xinterx^{inter}xinter 是對 XinterX^{inter}Xinter 使用 average pooling 后得到的

最終,分類或定位的結果從每個 XtaskX^{task}Xtask 來得到:

  • conv1conv1conv1:1x1 conv
  • ZtaskZ^{task}Ztask:將會通過 sigmoid 函數被轉換為得分 P∈RH×W×4P\in R^{H \times W \times 4}PRH×W×4,通過 distance-to-box 轉換為 bounding-box B∈RH×W×4B\in R^{H \times W \times 4}BRH×W×4


Prediction alignment:

在預測階段,作者通過這個兩個預測(P and B)的空間分布來進一步更精確的對齊這個兩個任務

方法:計算 task-interactive feature,且對兩個任務的對齊方法是不同的。

  • 分類:如圖3c,作者使用空間概率圖 M∈RH×W×1M\in R^{H\times W\times 1}MRH×W×1來調節分類預測,M 是從交互特征圖中計算得到的,使得 M 能夠學習這兩個任務在每個空間位置上的一致性的梯度。

  • 定位:作者從交互特征圖中學習 spatial offset 圖 O∈RH×W×8O\in R^{H\times W\times 8}ORH×W×8,來對每個位置上的 bbox 進行調整。這些學習到的offset能夠使得 aligned anchor point 識別出其周圍最好的預測框。

    其中c是channel,上式是通過雙線性差值實現的,而且這種計算量很小,因為 B 的channel 維度很小。

值得注意的一點是,每個通道的offset的學習都是獨立的,也就是說每個 boundary 都能學到自己的 offset。這就能使得4條邊界線都能學的準確,因為它們都是獨立從離它們近的anchor point 學習到的。所以,本文的方法不僅僅能夠對齊分類和定位的任務,還能提升定位準確性。

alignment maps MMMOOO 是從一堆 interactive feature 中學習到的,學習的方式是通過 TAL 學習:


注意:T-Head是獨立于 TAL 的,可以作為一個即插即用的模塊來提升單階段目標檢測的性能

3.2 Task Alignment Learning

TAL 在這里被提出來是為了進一步引導 T-Head 來做 task-aligned 的預測

3.2.1 Task-aligned sample assignment

對于實例的 anchor 分配應該滿足以下規則:

  • well-aligned 的anchor 應該能夠同時預測得到高的分類得分和準確的定位
  • misaligned 的anchor應該有一個低的分類得分,而且逐漸被抑制

基于上述兩個目標,作者設計了一個新的 anchor alignment metric 來在 anchor level 衡量 task-alignment 的水平。

并且,alignment metric 被集成在了 sample 分配和 loss function里邊,來動態的優化每個 anchor 的預測。

Anchor alignment metric:

我們已知,分類得分和 IoU表示了這兩個任務的預測效果,所以,作者使用分類得分和IoU的高階組合來衡量 task-alignment的程度。

方法:使用下列的方式來對每個實例計算 anchor-level 的對齊程度

  • s and u 分別為分類得分和 IoU 值
  • α\alphaα and β\betaβ 分別為權重

從上邊的公式可以看出來,t 可以同時控制得分和iou的優化來實現 task-alignment,可以引導網絡動態的關注于高質量的anchor。

Training sample assignment:

對每個實例,作者選取 m 個前 t 大的value作為正樣本

3.2.2 Task-aligned Loss

Classification objective:

為了精準的提升 aligned anchor 的分類得分,降低 misaligned anchor 的分類得分,作者在訓練過程中使用 ttt 來替換positive anchor 的 binary label。但是這種方法,當這個label(比如 t)隨著 α\alphaαβ\betaβ 的增大而減小的時候。所以,作者使用了 normalized ttt,稱為 t^\hat tt^,來代替正樣本的binary label。

ttt 規范化的原則:

  • 保證能夠更好更高效的學習難樣本(這類樣本通常對應的 t 比較小)
  • 能夠較好的保留(基于預測框準確率)不同實例的差別

t^\hat tt^ 的獲得原則(instance level):

  • t^\hat tt^ 的最大值等于最大的 IoU 值

Binary Cross Entropy 對正樣本的分類任務計算方式如下:

  • iii 是一個實例對應的所有正 anchor 的第 iii 個 anchor

作者又使用了 focal loss 來彌補正負樣本的不平衡:

  • jjj 是第 jjj 個負 anchor
  • γ\gammaγ 是平衡參數

Localization objective:

well-aligned anchor(比如有較大的 t)預測出來的 bbox 通常會同時具有高的分類得分和準確的定位框,這樣的 bbox 通常也會在 NMS 過程中保留下來。

ttt 也可以通過給 loss 來加權來選擇高質量的bbox,即也可以衡量bbox的質量,所以在bbox的回歸過程中,作者通過聚焦在well-aligned anchor (t 較大)并且抑制 misaligned anchor (t 較小)的方法,來促進任務對齊和回歸預測。所以作者對回歸任務的 loss 也做了加權,GIoU loss 的加權版本如下:

  • bbb:預測的 bbox
  • b^\hat bb^:真實的 bbox

TAL 的整體 loss 為分類和定位 loss 之和

四、效果


總結

以上是生活随笔為你收集整理的【目标检测】ICCV21_TOOD: Task-aligned One-stage Object Detection的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。