Lightweight Adversarial Network for Salient Object Detection
Abstract
作者提出了一種用于顯著目標檢測(salient object detection)的輕量級對抗網絡,該網絡通過進行對抗性訓練來實現更高階的空間一致性,并分別通過輕量級bottleneck block降低了計算成本,從而同時提高了準確性和效率。
1.Introduction
在計算機上,鑒別器區分輸入圖像的真實性,并進一步導致更完整的顯著性檢測結果,這啟發我們將對抗性訓練引入視覺顯著性學習中,目前最常見的后處理方法是CRF。
LANet將對抗損失放入視覺顯著性學習中,利用編碼器-解碼器結構進行顯著性推理。
本文的貢獻:
2.Related Work
2.1 Salient Object Detection
《 Deeply supervised salient object detection with short connections》提出了一種深度監督的模型(deeply supervised salient model),但是這個模型需要高性能的計算資源,使得無法應用于嵌入式和移動設備。
2.2 Adversarial Learning
生成對抗網絡由生成網絡和對抗網絡組成,是一種用于學習深度生成模型的對抗方法。 它最初是為圖像生成而設計的,其中生成網絡用于生成偽造圖像,而對抗網絡則旨在區分真實圖像和生成網絡生成的偽造圖像。
最近,一些工作將GAN擴展到顯著目標檢測。 在本文中,我們提出了一種用于目標物體檢測的輕量級對抗網絡,該網絡將高級對抗損失納入了網絡訓練期間的常規顯著性預測中。
3.Lightweight Adversarial Network
如圖2所示,LANet由顯著性預測器(saliency predictor)和對抗性網絡(adversarial network)組成,二者均基于輕量級瓶頸塊(lightweight bottleneck)而不是規則卷積,從而實現了有效的端到端解決方案。
顯著性預測器包括特征提取器,多尺度對比度模塊和解碼器,用于生成顯著性圖。 具體來說,在給定圖像的情況下,我們采用特征提取器(即定制的VGG)來生成初始特征圖,然后將其饋入多尺度對比度模塊以生成最終的編碼器特征圖。 然后,通過解碼器對得到的特征圖進行上采樣以產生最終顯著性預測。
在訓練階段,此網絡最初在預測的顯著性圖上以顯著性損失進行訓練。 然后,該模型通過對抗網絡進行訓練,該對抗網絡經過訓練可以解決LANet預測的顯著性圖和相應的地面真實性之間的二元分類任務。
3.1. Lightweight Bottleneck Block
Lightweight Bottleneck Block是LANet中每個部分的基本單元。如上圖,輕量級瓶頸塊的特征在于深度方向上可分離的卷積,線性瓶頸(linear bottlenecks)和倒數殘差(inverted residuals)。
特別地,將深度方向上可分離的卷積依次分解為深度方向卷積和點方向卷積,即1×1卷積。 深度方向卷積使用不同的卷積核過濾每個輸入通道,而點方向卷積進一步融合所有通道上的合成特征以產生新的特征表示。
如圖可以直觀地觀察到,輕量級瓶頸塊首先通過逐點卷積將輸入擴展到更高的維度,然后通過深度卷積來過濾高維度的結果,最后通過另一個點卷積來減小結果特征的維度。
深度方向可分離卷積的主要貢獻是減少了計算量。
給定輸入張量kernel尺寸是K×K卷積,得到特征圖深度方向可分離卷積的相應計算成本M為:
而常規卷積運算的計算成本R為:
輕量級瓶頸塊中的反向殘差(inverted residual)用于加快訓練和推理的過程。 如圖3(a)所示,它在維數減少后的輸入層和各層之間建立了快捷鏈接,這僅在步幅為1時發生。
反向殘差(inverted residual)與經典殘差(the classical residual)之間的差異是:(a)中的倒數殘差連接了較薄的立方體(特征圖),而(b)中的經典殘差則連接了較厚的立方體。 此外,為了防止有用的信息被破壞,瓶頸塊擺脫了其最后一層的非線性激活。
3.2. Adversarial Training
在使用基于CNN的模型時,預測的顯著性圖通常不完整,即在空間上與相應的Ground Truth不一致。 我們利用對抗訓練,將對抗損失納入saliency predictor中,以實現更高階的空間一致性。 具體而言,我們在訓練LANet時既考慮了顯著性損失Ls也考慮了對抗性損失La。
為了便于說明,將這兩個術語中使用的二進制交叉熵損失表示為
顯著性損失是一個標準的二進制交叉熵,用于執行顯著性模型以獨立預測每個像素位置的準確顯著性,但是無法實現更高階的空間一致性。
給定N個訓練圖像 xk∈RH×W×3 的數據集和相應的ground-truth yk∈{0,1} H×W,我們使用y^ = S(x)表示預測的顯著圖。 然后,顯著性損失可以計算為
由于對抗網絡處理二進制分類問題,導致感受野比顯著性預測器大得多,因此對抗訓練可以實現更高階的空間一致性。
將A(x,y)∈[0,1]表示為對抗網絡預測y是x的真實情況顯著性圖的概率,S(?)是顯著性預測器的輸出。 因此,對抗性損失也由二進制交叉熵損失表示:
Training the Saliency Predictor 在給定對抗網絡的情況下,對顯著性預測器的訓練旨在最大程度地減少顯著性損失,t同時降低對抗性網絡的性能。 這鼓勵了顯著性預測器生成難以與對抗性網絡的ground-truth圖區分開的顯著性圖。 it propagates stronger gradient to maximize bce(A(xk,S(xk)),1) than to minimize bce(A(xk,S(xk)),0)。與顯著性預測器相關的損失函數為
Training the Adversarial Network
由于對抗性損失僅取決于對抗性網絡,因此訓練對抗性網絡等效于最小化以下二進制分類損失
合并對抗性損失不會在測試階段消耗額外的計算資源。 Lightweight bottleneck(對抗網絡的基本單位)也使訓練更加有效。 顯著性預測器和對抗性網絡的體系結構將在下面的第3.4節中介紹。
3.3. Multi-Scale Contrast Module
如前所述,我們提出的基于bottleneck blocks的LANet無法充分融合先前的關鍵全局對比度,這是因為vanilla CNN和輕型瓶頸塊中的接受域都大大損失了。 為了解決這個問題,我們提出了一種多尺度對比模塊,以正確地結合全局和局部上下文,以進行精確的顯著性檢測。
空間金字塔平均池可以利用空間統計信息有效地描述整個圖像。 如圖4所示,多尺度對比模塊(multi-scale contrast module)包含金字塔平均池,深度方向可分離卷積(即深度方向卷積與點方向卷積耦合)以及上采樣操作。
為了從初始特征M1分別提取局部和全局視覺對比信息,我們在執行金字塔平均池化時考慮了三個不同級別的大小.實驗表明,深度可分離卷積將計算精度提高了約0.6%,而計算成本卻可以忽略不計。
3.4. Network Architecture
顯著性預測器的體系結構。 在顯著性預測器中,特征提取器由VGG16的卷積層組成[59],其中常規卷積被輕量級瓶頸塊替換以減少模型參數,而解碼器通過無參數雙線性插值的上采樣以16的倍數生成顯著圖。
對抗網絡的體系結構。 對抗網絡的體系結構如圖5所示。它以RGB圖像和相應的顯著性圖作為輸入,這兩種圖像在饋入網絡之前都被調整為224×224。 顯著性圖要么是基礎事實,要么是由顯著性預測器生成的。 如[68]中所建議的,從圖5中的兩個2??20個獨立分支生成的特征圖具有相同數量的通道。
4.Experimental Results
評價標準:
F-measure,mean absolute error(MAE), precision-recall(PR)
F-measure:
其中β2設置成0.3可以突顯精度的重要性。
MAE:
MAE 以像素為單位測量ground-truth G與預測顯著圖M之間的數值距離
W和H表示顯著性圖的寬度和高度
M(i,j)表示像素在(i,j)的顯著性值
G(i,j)表示像素在(i,j)的真實值
在bottleneck blocks 中的擴張率設置成6
顯著性損失和對抗性損失都被公式化為二值交叉熵損失
作者使用驗證集搜索最佳的超參數λ,最終我們使用15
Conclusion
最終的結果表明,對抗訓練比CRF可以更好地緩解不完整的預測顯著性圖的問題。LANet降低計算成本、加快了訓練速度、并且在準確性和效率方面有更好的優越性,可以更好的應用在實時的嵌入式應用中。
總結
以上是生活随笔為你收集整理的Lightweight Adversarial Network for Salient Object Detection的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信息学奥赛一本通:题解目录 (〃‘▽‘〃
- 下一篇: oracle配置控制文件快照的位置以及名