論文閱讀:Multi-Scale Boosted Dehazing Network with Dense Feature Fusion
程式碼:https://github.com/BookerDeWitt/MSBDN-DFF
目錄
1. 摘要
本文提出了基於U-Net的Multi-Scale Boosted Dehazing Network with Dense Feature Fusion(MSBDN-DFF)。該方法基於以下兩個原則,boosting(提升)和error feedback(錯誤反饋)。
2. 提出的方法
文章中Section Ⅲ分為兩個部分描述該網路,即3.1和3.2。3.1題目為Multi-Scale Boosted Dehazing Network,但是除了一張圖(圖1)外及幾句極其簡單的話語,其餘都是描述解碼器中的SOS Boosted Module。3.2題目為Dense Feature Fusion Module,這一小節題目和標題描述的一致。所以我覺得更好的排版應該是先給出關於整體網路的簡單描述,之後再重新編排兩節用於描述本文的核心創新點會好一點。
我重新編排了文章的結構,個人感覺更好理解文章。當然讀者可以完全不用管編排,直接閱讀內容即可。
2.1 Multi-Scale Boosted Dehazing Network
網路總體結構如圖1所示。
如圖1所示,該網路包含三個元件,分別為:編碼器 G E n c G_{Enc} GEnc、boosted解碼器 G D n c G_{Dnc} GDnc和特徵修復模組 G R e s G_{Res} GRes。
2.2 SOS Boosted Module
受Strengthen-Operate-Subtract(SOS) boosting方法的啟發,本文設計了一個多尺度boosted解碼器。本小節只詳細介紹 G D n c G_{Dnc} GDnc中SOS Boosted模組,對於整體結構可以檢視原始碼或者圖1。
1) Boosting in image dehazing
該演算法是在《Boosting of image denoising algorithms》這篇文章中提出的,最初是用於影像去噪。SOS boosting演算法公式化如下:
J
^
n
+
1
=
g
(
I
+
J
^
n
)
−
J
^
n
(2)
\hat{J}^{n+1}=g\left(I+\hat{J}^{n}\right)-\hat{J}^{n} \tag{2}
J^n+1=g(I+J^n)−J^n(2)
為了方便對照原文,以後都採用與文章公式相同的編號,而不是另起爐灶。
其中,
J
^
n
\hat{J}^{n}
J^n是第
n
n
n次迭代的預測結果,
g
(
⋅
)
g(\cdot)
g(⋅)為去霧操作,
I
+
J
^
n
I + \hat{J}^{n}
I+J^n表示用霧圖
I
I
I增強
J
^
n
\hat{J}^{n}
J^n。和去噪的公理相似,上述公式已被證明,對於指標PoH(見下),可以促進影像去霧效能。
定義PoH(Portion of Haze,霧的部分)為:
P
o
H
(
J
)
=
(
1
−
T
)
A
/
J
PoH(J) = (1 - T) A / J
PoH(J)=(1−T)A/J。
公理1:一幅影像經由去霧方法
g
g
g,對於指標PoH可以獲得更好的結果,即相同場景但是會有更少的霧。
根據公理1,
(
2
)
(2)
(2)中SOS boosting演算法可以提升去霧效果,即:
P
o
H
(
J
^
n
+
1
)
<
P
o
H
(
J
^
n
)
(3)
{PoH}\left(\hat{J}^{n+1}\right)<{PoH}\left(\hat{J}^{n}\right) \tag{3}
PoH(J^n+1)<PoH(J^n)(3)
文章中提到,關於公理1的證明見補充材料,但是我沒找到相應的補充材料,主要是大概率我會看不懂,所以我就沒去找。
有了公理1,作者根據SOS boosting演算法,提出了一個深度boosted網路,即本小節的解碼器。
2) Deep boosted dehazing network
在U-Net網路中,編碼器為霧特徵提取的模組,解碼器為無霧影像復原的模組。為了逐步復原從特徵修復模組
G
R
e
s
G_{Res}
GRes中得到的結果
j
L
j^L
jL,作者結合了SOS boosted演算法提出瞭解碼器
G
D
n
c
G_{Dnc}
GDnc。
G
D
n
c
G_{Dnc}
GDnc整體結構如圖1所示,下面為
G
D
n
c
G_{Dnc}
GDnc中其中一個模組,即SOS boosted模組的圖解,見圖2(e)。
對於第
n
n
n層的SOS boosted模組,首先對上一層得到的特徵圖
j
n
+
1
j^{n+1}
jn+1(因為這裡是倒著數的)進行上取樣,然後用同一層對應的編碼器得到的特徵圖
i
n
i^{n}
in進行相加,送入到修復單元
G
θ
n
n
\mathcal{G}_{\theta_n}^n
Gθnn中,結果減去上取樣後的
j
n
+
1
j^{n+1}
jn+1最為最終第
n
n
n層的SOS boosted模組的輸出,即
j
n
j^n
jn。公式表達如下:
j
n
=
G
θ
n
n
(
i
n
+
(
j
n
+
1
)
↑
2
)
−
(
j
n
+
1
)
↑
2
(4)
j^{n}=\mathcal{G}_{\theta_{n}}^{n}\left(i^{n}+\left(j^{n+1}\right) \uparrow_{2}\right)-\left(j^{n+1}\right) \uparrow_{2} \tag{4}
jn=Gθnn(in+(jn+1)↑2)−(jn+1)↑2(4)
其中,
↑
2
\uparrow_{2}
↑2表示2倍上取樣操作,
G
θ
n
n
\mathcal{G}_{\theta_n}^n
Gθnn表示第
n
n
n層引數為
θ
n
\theta_n
θn的可訓練修復單元。在每一個修復單元中,都使用了殘差組。
在解碼器的最後一層中,使用一個卷積層從最後的特徵圖中得到最終的無霧影像
J
^
\hat{J}
J^。
這裡有一點需要特別注意,如上圖所示,編碼器和解碼器中紅色框中的兩部分才是對應的編碼解嗎結構。即編碼器紅框輸出的結果為 i 2 i^2 i2,解碼器紅框輸出結果為 j 2 j^2 j2。明白了這一點,就清楚為什麼 i 2 i^2 i2和 j 2 j^2 j2是在同一條水平線上了。
3) Alternatives to SOS boosted module
這一部分主要介紹在解碼器中使用圖2(a)(b)(c)(d)四種模組的情況。感興趣的看原文,這裡不過多贅述。在後面消融實驗中證明了SOS boosted模組效果是最好的。
2.3 Dense Feature Fusion Module
U-Net體系結構固有地在幾個方面受到限制,例如,在編碼器的下采樣過程中缺少空間資訊,並且在非相鄰層級的特徵之間缺少足夠的連線。
很好理解,下采樣一定會丟失空間資訊;U-Net只在水平上有聯絡,而在豎直上沒有聯絡,所以非相鄰層級之間會缺少資訊互動。
受back-projection algorithm(Bilateral back-projection for single image super resolution)啟發,為了增強非相鄰層級特徵之間的連線,本文提出了DFF模組。本文描述瞭解碼器中DFF模組的使用,關於編碼器可以相應的推匯出。編碼器中第
n
n
n層中DFF模組的框架如圖3所示。
公式化如下:
j
~
n
=
D
d
e
n
(
j
n
,
{
j
~
L
,
j
~
L
−
1
,
⋯
,
j
~
n
+
1
}
)
(10)
\tilde{j}^{n}=\mathcal{D}_{d e}^{n}\left(j^{n},\left\{\tilde{j}^{L}, \tilde{j}^{L-1}, \cdots, \tilde{j}^{n+1}\right\}\right) \tag{10}
j~n=Dden(jn,{j~L,j~L−1,⋯,j~n+1})(10)
其中, j n j^n jn為解碼器第 n n n層中的boosted特徵圖(即SOS Boosted Module的輸出), j ~ n \tilde{j}^n j~n為第 n n n層DFF模組的輸出, L L L為網路層級數, { j ~ L , j ~ L − 1 , ⋯ , j ~ n + 1 } \{\tilde{j}^{L}, \tilde{j}^{L-1}, \cdots, \tilde{j}^{n+1}\} {j~L,j~L−1,⋯,j~n+1}為解碼器中前面所有 ( L − n ) (L-n) (L−n)層DFF模組的輸出。下面關於每次用一個增強特徵 j ~ L − t , t ∈ { 0 , 1 , ⋯ , L − n − 1 } \tilde{j}^{L-t},t \in \{0, 1, \cdots, L-n-1\} j~L−t,t∈{0,1,⋯,L−n−1},增強當前boosted特徵 j n j^n jn的介紹。更新過程如下:
a. 計算第 t t t次迭代, j t n ( j 0 n = j n ) j_t^n(j_0^n = j^n) jtn(j0n=jn)和 j ~ L − t \tilde{j}^{L-t} j~L−t的差距 e t n e_t^n etn:
e t n = p t n ( j t n ) − j ~ L − t (11) e_{t}^{n}=p_{t}^{n}\left(j_{t}^{n}\right)-\tilde{j}^{L-t} \tag{11} etn=ptn(jtn)−j~L−t(11)其中, p t n p_t^n ptn為投影操作,將 j t n j_t^n jtn下采樣到和 j ~ L − t \tilde{j}^{L-t} j~L−t相同維度。
b. 更新 j t n j_t^n jtn:
j t + 1 n = q t n ( e t n ) + j t n (12) j_{t+1}^{n}=q_{t}^{n}\left(e_{t}^{n}\right)+j_{t}^{n} \tag{12} jt+1n=qtn(etn)+jtn(12)
其中, q t n q_t^n qtn為反投影操作,將 e t n e_t^n etn上取樣到和 j t n {j}_t^{n} jtn相同維度。c. 迭代完以前所有增強特徵(即 t t t取遍 { 0 , 1 , ⋯ , L − n − 1 } \{0, 1, \cdots, L-n-1\} {0,1,⋯,L−n−1}),得到現在最終的增強特徵 j ~ n \tilde{j}^n j~n。
超分中的back-projection algorithm, p t n p_t^n ptn和 q t n q_t^n qtn是未知的。本文則直接採用了卷積/反摺積層學習相應的下采樣/上取樣操作。為了避免過多引數,本文采用stride=2的方式實現 p t n / q t n p_t^n/q_t^n ptn/qtn。
相應地,編碼器中第
n
n
n層的DFF模組定義如下:
i
~
n
=
D
e
n
n
(
i
n
∣
i
~
1
,
i
~
2
,
⋯
,
i
~
n
−
1
)
(13)
\tilde{i}^{n}=\mathcal{D}_{e n}^{n}\left(i^{n} \mid \tilde{i}^{1}, \tilde{i}^{2}, \cdots, \tilde{i}^{n-1}\right) \tag{13}
i~n=Denn(in∣i~1,i~2,⋯,i~n−1)(13)
根據上述解碼器中的詳細介紹,該部分可以相應的推匯出。這裡不作贅述。
通過和先前的特徵進行融合,彌補了U-Net損失的空間資訊。
2.4 Others
其餘部分,例如實驗細節,實驗結果,消融實驗等,感興趣的可以去閱讀原文。
3. 讀後感
本文兩個核心創新點,SOS Boosted Module和DFF Module,都是從其他領域(去噪和超分),得到啟發的。這也驗證了我的導師經常說的,閱讀論文不能僅限於自己那個狹隘的領域(我的方向是影像去霧),在閱讀自己方向的論文的同時,也要多多閱讀相鄰領域。
本文提出的網路非常大,引數量巨大,效果也好,有種大力出奇跡的感覺。
最後是一點最近的心路旅程。上次更新是在差不多十天前了,這一個多星期經歷了很多事情,對我的打擊很大,讓我堅信我不是搞科研的這塊料。但生活總要繼續,畢業論文終究會到來,所以還是拿起論文繼續努力吧。
相關文章
- 論文解讀(DFCN)《Deep Fusion Clustering Network》
- [論文閱讀筆記] Unsupervised Attributed Network Embedding via Cross Fusion筆記ROS
- THFuse: An infrared and visible image fusion network using transformer and hybrid feature extractor 論文解讀ORM
- 論文閱讀:A neuralized feature engineering method for entity relation extractionZed
- [論文閱讀筆記] Structural Deep Network Embedding筆記Struct
- 論文閱讀:End to End Chinese Lexical Fusion Recognition with Sememe Knowledge
- 論文閱讀 Exploring Temporal Information for Dynamic Network EmbeddingORM
- 論文閱讀:SiameseFC
- GeoChat論文閱讀
- 論文閱讀 | An Artificial Neural Network-based Stock Trading System
- [論文閱讀筆記] Community aware random walk for network embedding筆記Unityrandom
- 論文閱讀 GloDyNE Global Topology Preserving Dynamic Network Embedding
- 如何閱讀科研論文
- 阿里DMR論文閱讀阿里
- [論文閱讀筆記] Adversarial Mutual Information Learning for Network Embedding筆記ORM
- 論文閱讀筆記:LINE: Large-scale Information Network Embedding筆記ORM
- RFN-Nest_ An end-to-end residual fusion network for infrared and visible images 論文解讀
- 並行多工學習論文閱讀(五):論文閱讀總結並行
- MapReduce 論文閱讀筆記筆記
- Q-REG論文閱讀
- SSD論文閱讀筆記筆記
- 論文閱讀 Dynamic Network Embedding by Modeling Triadic Closure Process
- 「DNN for YouTube Recommendations」- 論文閱讀DNN
- 論文閱讀 狀態壓縮
- [論文閱讀] Hector MappingAPP
- AutoEmbedding論文閱讀筆記筆記
- G-FRNet論文閱讀
- XGBoost論文閱讀及其原理
- [論文閱讀筆記] Fast Network Embedding Enhancement via High Order Proximity Approximati筆記ASTMITAPP
- 論文解讀SDCN《Structural Deep Clustering Network》Struct
- [論文解讀]A Quantitative Analysis Framework for Recurrent Neural NetworkFramework
- 論文解讀(SDNE)《Structural Deep Network Embedding》Struct
- 論文閱讀2-思維鏈
- 論文閱讀 dyngraph2vec: Capturing Network Dynamics using Dynamic Graph Representation LearningAPT
- 深度學習論文閱讀路線圖深度學習
- CornerNet-Lite論文閱讀筆記筆記
- 【2020論文閱讀】11月
- 論文閱讀 Inductive Representation Learning on Temporal Graphs