常用數據集
BSDS300、BSDS500、DIV2K、General-100、L20、Manage109、OutdoorScene、PIRM、Set5、Set14、T91、Urban100
圖像評價
- PSNR:逐一像素比較
- SSIM:注重整體比較,從對比度、亮度、結構獨立比較
- MOS:平均主觀意見分
操作通道
- RGB
- YCBCr
有監督學習的超分辨方法
Pre-upsampling SR
-
原因:直接學習低分辨率圖像和高分辨圖像之間的映射比較困難
-
模型:SRCNN、VDSR、DRRN
-
創新:首次使用
pre-upsampling SR
操作,先對LR做上采樣,使得上采樣后的圖像尺寸與HR相同,然后再學習他們的映射關系,極大降低學習難度 -
缺點:預先上采樣會帶來噪聲放大和模糊,計算在高維度空間進行,要更多的時間和空間成本
-
結構:
Post-upsampling SR
-
原因:在低維度進行計算可以提高計算效率,所以先在低維度進行計算,在網絡的末端進行上采樣操作
-
模型:FSRCNN、ESPCN
-
創新:由於具有巨大計算成本的特征提取過程僅發生在低維空間中,大大降低了計算量和空間復雜度,該框架也已成為最主流的框架之一
-
缺點:在超分比例因子Scale較大的情況下,有較大的學習難度
-
結構:
Progressive upsampling SR 漸進式上采樣超分辨
-
原因:在放大因子較大時,使用上述b的方法有很大困難;且對於不同的放大因子,需要分別訓練一個單獨的SR網絡模型,無法滿足對多尺度SR的需求
-
模型:LapSRN
-
創新:基於級聯的CNN結構,逐步重建高分辨率圖像。把困難的任務分解,降低學習難度。如要進行4倍SR,則先進行2倍SR,在X2_SR的基礎上進行4倍SR
-
缺點:模型設計復雜、訓練穩定性差、要更多的建模指導和先進的訓練策略
-
結構:
Iterative up-and-down sampling SR 上下采樣迭代超分辨
-
原因:為了更好地捕捉LR-HR直接的相互依賴關系,引入了反投影
-
模型:DBPN
-
創新:交替連接上采樣層和下采樣層,並使用所有中間過程來重建最終的HR結果,可以很好地挖掘LR-HR圖像對之間的深層關系,從而提高更好的重建效果
-
缺點:反投影設計標准不清楚,有很大的探索潛力
-
結構:
上采樣方法
-
-
最近鄰插值法:每個待插值的位置選擇最相鄰的像素值,而不考慮其他像素,這種策略很直覺,它的優勢是:處理速度快。但缺點是:生成圖片質量低、塊狀化。
-
雙線性插值法
-
雙三次插值法
-
-
基於學習的上采樣:
- 轉置卷積
- 亞像素卷積
網絡設計
殘差學習
全局殘差學習 | 輸入圖像與目標圖像高度相關,因此可以只學習它們之間的殘差,這就是全局殘差學習 | (a) 可以避免學習從一個完整圖像到另一個圖像的復雜變換,而只需要學習一個殘差圖來恢復丟失的高頻細節 (b) 由於大部分區域的殘差接近於零,模型的復雜度和學習難度大大降低 |
---|---|---|
局部殘差學習 | 類似於ResNet中的殘差學習,shortcut連接可以用於緩解網絡深度不斷增加所帶來的模型退化問題,降低了訓練難度 | ![]() |
遞歸學習
-
原因:為了不引入過多參數的情況下學習到更高級的特征,以遞歸方式多次應用相同的模塊來實現超分辨任務
-
缺點:無法避免較高的計算成本,存在梯度消失或爆炸問題,常與殘差學習和多重監督學習結合
-
模型:DRCN、MEMNet、CARN、DSRN
-
結構:
多路徑學習
- 概念:指通過多條路徑傳遞特征,每條路徑執行不同的操作,將他們的操作結果融合以提供更好的建模能力
全局多路徑學習 | 利用多條路徑來提取圖像不同方面的特征,這些路徑在傳播過程中可以相互交叉,從而大大提高學習能力 | ![]() |
LapSRN、DSPN |
---|---|---|---|
局部多路徑學習 | 對輸入進行不同路徑的特征提取后進行融合 | ![]() |
CSNLN |
特定尺度的多路徑學習 | 不同尺度的SR模型需要經過相似的特征提取,所以它們共享模型用於特征提取的網絡層,並分別在網絡的開始和結束處附加特定比例的預處理結構和上采樣結構。訓練期間僅啟用和更新與選定比例相對應的模塊 | ![]() |
MDSR、CARN、ProSR |
稠密連接
-
原理:對於稠密塊體中的每一層,將所有前一層的特征圖作為輸入,並將其自身的特征圖作為輸入傳遞到所有后續層
-
優點:稠密連接不僅有助於減輕梯度消失、增強信號傳播和鼓勵特征重用,而且還通過采用小增長率(即密集塊中的信道數)和在連接所有輸入特征映射后壓縮通道數來顯著減小模型尺寸。
-
模型:
-
結構:
注意力機制
- 原理:考慮到不同通道之間特征的相互依賴關系來提高網絡的學習能力
- 模型:
高級卷積Advanced Convolution
- 擴張卷積(空洞卷積)Dilated Convolution:增大感受野,有助於生成逼真的細節
- 分組卷積Group Convolution:可以在little performance loss的情況下減少大量的參數和運算,而CARN-M在性能損失很小的情況下將參數數量減少了5倍,運算減少了4倍。
- 深度分離卷積
金字塔池Pyramid Pooling
受空間金字塔池層的激勵,提出了金字塔池模塊,以更好地利用全局和局部上下文信息。
Pyramid的思路就是把不同 size 的 feature concat 在一起。對於尺寸是 h×w×c
的feature map,每個channel被划分成M×M
塊並通過GAP全局池化
,生成M×M×c
的結果。再通過 1×1 卷積
把輸出壓縮為single channel。之后,再經過雙線性插值把結果進行上采樣到原來feature map的維度。當 M 變化時,模塊結合全局和局部的上下文信息以提升性能。
損失函數
像素級損失pixel Loss
內容損失Content Loss
希望生成的圖片從視覺上看更像是真實的圖片
衡量不同圖像通過預訓練的模型后得到的特征圖之間的差異,計算圖像之間的感知相似性
其中,φ是利用Vgg
、ResNet
等預先訓練好的圖像分類網絡
紋理損失Texture Loss
希望重構的圖片與原圖有相同的風格
考慮到重建圖像應具有與目標圖像相同的風格(如顏色、紋理、對比度),將圖像紋理視為不同特征通道之間的相關性,將圖像的紋理視為不同特征通道之間的相關性(利用矩陣點乘來表示相關性)
最終損失函數是要求相關性相同:
需要一定的調參經驗,patch太小會造成紋理部分重影,太大會整張圖像重影
對抗損失Adversarial Loss
希望重構的圖片與原圖有相同的風格
在生成對抗網絡中,判別器被用來判斷當前輸入信號的真偽,生成器則盡可能產生“真”的信號,以騙過判別器
循環一致性損失Cycle Consistency Loss
受到啟發,將HR圖像通過另一個CNN網絡縮小為I'
,然后跟要處理的小圖片做相似性度量
總變化損失Total Variation Loss
希望生成的圖片更平滑
用於抑制噪聲,提升圖像的空間平滑性
基於先驗的損失Prior-Based Loss
聚焦於人臉圖像的超分辨,引入人臉比對網絡FAN來約束從原始和生成的圖像中檢測到的人臉的一致性,經常要和多個Loss組合使用,需要一定的調參經驗
本文學習參考:2020 圖像超分最新綜述及上采樣技術一覽
Write by Gqq