天天看點

【顯著性物體檢測】【CVPR2018】Progressive Attention Guided Recurrent Network for Salient Object Detection【論文筆記】

論文連接配接

這篇cvpr感覺比起同年的其他幾篇顯著性物體檢測的,各有各的不同,使用的方法,看問題的角度也不一樣,但都實作了比較不錯的檢測效果。給我的啟示就是:目前的方法雖然效果很強,但一定有很多更強的方法等待去發現,希望自己不斷積累,早點做出點東西。雖然也有人做了這篇文章的論文筆記,但是還是自己做一份,說說我的看法與感受。

摘要

顯著性物體檢測現在主流都是在backbone的基礎上,充分利用提取的特征進行顯著性檢測。本文也一樣,主要貢獻分為兩點:一、引入注意力機制,具體表現為對channel的注意力篩選以及特征圖上的空間特征篩選機制,進而實作标題中的逐漸注意力引導。二、同樣是最近比較流行的将高層特征中的語義資訊引入低層特征對其進行指導,作者實作的方式為二重循環卷積。

首先看總體的網絡架構:

【顯著性物體檢測】【CVPR2018】Progressive Attention Guided Recurrent Network for Salient Object Detection【論文筆記】

 作者采用的是去掉全連接配接的VGG19作為backbone,一般也有使用VGG16的。在VGG的第三四五的卷積層中引入了多路循環循環連接配接(Multi-Path Recurrent Connections),目的是将高層資訊語義資訊引入底層進而提升檢測效果。将conv5輸出特征圖經過注意子產品依次結合conv4和conv3的特征圖,逐漸生成最後顯著性圖像,每一步注意子產品的輸出都由真圖進行監督。

接下來分兩點說明:

多路循環連接配接

【顯著性物體檢測】【CVPR2018】Progressive Attention Guided Recurrent Network for Salient Object Detection【論文筆記】

用公式表達如下,整體分為兩次,第一次得到特征圖,以及公式中W對應的權重,然後将conv5對應HL進行數次反卷積得到公式的第二項,然後進行第二次特征圖前向傳播,第二次特征圖與反卷積的特征圖相各自L2正則化後相加,在經過fl(激活函數和池化層)的作用得到下一次的特征圖。【與CVPR2018那篇雙向傳播的思想比較類似,特别是加上下一個注意力機制,整個網絡結構非常像隻是網絡執行次序有差別】

【顯著性物體檢測】【CVPR2018】Progressive Attention Guided Recurrent Network for Salient Object Detection【論文筆記】

 漸進式注意力指導模型

【顯著性物體檢測】【CVPR2018】Progressive Attention Guided Recurrent Network for Salient Object Detection【論文筆記】

文中詳細說明了在channel上以及特征圖上的注意力實作機制,比較簡單,看上圖,首先對f也就是特征圖,首先使用均值池化得到一個channel次元的向量v,然後對v進行标準卷積,再使用Sofmax操作歸一化,得到如圖ac向量,表征每一個通道的權重,然後每一個通道的權重與特征圖相乘 ,得到fca(channel-wise attention ),然後第二步,對整個fca進行卷積與Softmax操作,得到一張注意力圖(權重圖),與每一個channel内的特征圖進行點積,即可得到最終的特征圖fcsa(channel-wise spatial-wise attention)。

再整體模型的粉色部分,可以看到,原本Conv5輸出的特征圖經過注意力子產品後得到初步顯著性圖像,顯著圖與Conv4的特征結合,再經過注意力子產品得到精細化一次的顯著圖,再經過Conv3以及注意力子產品,得到最終的顯著性。其中前兩次的顯著圖也受到真圖的監督,可以稱之為middle supervise。作者也驗證了middle supervise這種方式能夠提升效果。

結論與實驗結果

大多數實驗結果與結論都大同小異,這部分就簡化,相信大家也不會具體看,

資料集: ECSSD , HKU-IS ,THUR15K,PASCAL-S , DUT-OMRON 和 DUTS

評估名額:precision-recall (PR) curves, F-measure, mean absolute error (MAE) 和最近提出的 S-measure

首先,作者取得的效果好,是肯定的,都是state-of-the-art,不必多說,

溶解實驗:

驗證了注意力機制以及多通道循環連接配接的有效性,取得了性能的提升。作者确定的最佳循環次數為T=2,就是如圖中所示循環兩次,使用的層數為345層,這也說明了底層确實學不到東西。

使用middle supervise 也有一定程度的提升。

整個網絡結構大概就這樣,具體細節可以去看原文。

說幾個有意思的點:

一個是注意力機制:一般大家都是用在特征圖裡也就是Spatial-wise,然後作者還加了個channel-wise,确實我以前單看每個channel時,也發現了對于輸入會不同的一部分channel都沒處于活躍狀态,或者結果與真圖差距過大。

二個是循環連接配接,作者使用的是反卷積,增加了參數,如果使用雙線性上采樣,可以降低參數量但不确定會不會降低性能。

三是前兩層對于最後的結果圖沒什麼幫助,反而取得一定的負優化。

四是middle supervise,也有幾篇論文使用這個,可能是提升性能的trick之一。

繼續閱讀