論文筆記(SR)-Super-Resolution via Deep Learning(詳解SRCNN)

論文筆記(SR)-Super-Resolution via Deep Learning(詳解SRCNN)

論文下載:https://arxiv.org/pdf/1706.09077.pdf

文章以深度學習爲背景,對SR文獻進行了考察。關注多媒體的三個重要方面,即圖像、視頻和多維度,尤其是深度映射。

在每種情況下,首先以數據集和最先進的SR方法(不包括深度學習)的形式引入相關基準。接下來是對各個算法的詳細分析,每個算法都包括對方法的簡短描述和對結果的評論,並特別參照所做的基準測試。然後是對一些常見數據集以比較的形式進行的最小總體基準測試,同時依賴於各種算法論文中的結果。

 

1 超分辨率(Super-resolution,SR)概述

在天文學、遙感、顯微術和斷層攝影術等領域,獲得的圖像可能受到各種因素的限制。這些因素可能包括測量裝置的缺陷,如光學退化或傳感器的有限容量,不穩定的觀測現場,物體運動或介質湍流。受影響的圖像可能不清晰,有噪聲,缺乏空間和/或時間分辨率。補救措施可以是單獨或結合使用盲反捲積(消除模糊)和超分辨率。

超分辨率(Super-resolutionSR)是指從同一場景的一個或多個低分辨率(low resolution,LR)觀測中估計高分辨率(high resolution,HR)圖像/視頻,通常採用數字圖像處理和機器學習(machine learning,ML)技術。由於在大多數情況下是一個逆問題,可能有不止一個解,每個解都需要構建一個正向觀測模型。關於這個問題的第一次嘗試大概可以追溯到1984年;“超分辨率”一詞的明確使用是在1990年晚些時候。圖4是一個非常詳細簡單的3層分類。

圖4中,第一層根據輸入和輸出進行分類,分爲單輸入單輸出(single input single output,SISO)、多輸入單輸出(multiple input single output,MISO)和多輸入多輸出(multiple input multiple output,MIMO)。MIMO屬於視頻SR,可以很容易地與第二層合併,這使得第一層冗餘。因此,最好直接按照第二層進行分類,即分爲兩大類,即單幅圖像超分辨率(single image super-resolution,SISR)和多幅圖像或多幀超分辨率

1.1 單幅圖像超分辨率(SISR)

SISR關注的問題是,在假設原始圖像設置不可用的情況下,給定場景的單個LR圖像,估計底層HR圖像。作爲一個不適定的問題,由於可能有好幾個HR對應於輸入的LR圖像,所以SISR可以比作普通的“分析”插值(如線性、雙三次和三次樣條)。任務可能因此變成計算HR網格中丟失的像素強度作爲已知像素的平均值,這樣就會在光滑部分工作得很好,但在不連續的情況下有風險出錯,如在邊緣和角落,導致輸出振鈴和模糊。因此,除了插值之外,還需要更復雜的洞察力來超解析輸入。有兩種類型的SISR算法:

  1. 學習方法(Learning methods) 採用ML技術對輸出圖像的HR細節進行局部估計。這些可能是基於像素的,包括統計學習,或基於patch的,包括基於字典的LR到HR的平方像素塊對應(稱爲patch)。後者,也稱爲基於實例的方法,利用同一圖像內部的相似性,可以採用各種方法,例如鄰域嵌入、稀疏編碼,或將這些方法混合。
  2. 重構方法(Reconstruction methods) 在定義目標HR圖像的約束條件時,通常需要明確的先驗信息(以分佈、能量函數等形式)。這可以通過多種方法實現,比如銳化邊緣細節、正則化或反捲積。

 有些方法可以稱爲ML和重構方法的混合。注意,最近的SISR方法大多屬於基於實例的方法,這些方法試圖從LR和HR對中學習先驗知識,從而減輕了SISR的病態。代表性的方法有鄰域嵌入迴歸、隨機森林和深度卷積神經網絡(CNN)。

1.2 多幅圖像或多幀超分辨率

在多幀SR中,輸入通常由一個以上的LR圖像組成,這些圖像通常來自於場景的不同視角。假設每個輸入圖像都是底層HR場景的退化版本,被模糊化、下采樣和仿射變換破壞。在後來的案例中,積分變換被認爲是不重要的,沒有攜帶有用的信息;理想情況下,部分或亞像素變換具有更大的信息價值。有三種類型的多幀方法:

 

  1. 插值方法(Interpolation methods) 通常包括配準、插值和去模糊三個步驟。
  2. 頻域方法(Frequency-domain methods) 從輸入的LR幀圖像的DFT、DCT、DWT或任何其他頻域表示中收集有關底層HR的高頻的不同線索。由於其局部特性,DWT域更適合。
  3. 正則化方法(Regularization methods) 適用於有限數量的LR圖像或病態模糊運算,並嘗試使用確定性或隨機性正則化策略來包含未知HR圖像的一些先驗知識。

 

2 圖像超分辨率(Image Super-Resolution)

在使用CNN進行恢復任務(如SR和去噪)時,由於重要的圖像細節可能會被丟棄,池化或下采樣可能會適得其反。因此,在SR任務中通常避免池化層,這也有它的缺點:每增加一個卷積層,就意味着增加一個新的權值層,從而增加更多的參數,其結果是過度擬合和模型太大,無法存儲和檢索。

2.1 圖像基準(Image Benchmarks)

2.1.1 圖像數據庫

在表I中,列出了許多SR中流行的圖像數據集。一些數據集已經被它們的提供者劃分爲訓練、驗證和測試集。但是並沒有硬性的規則,許多工作使用它們時並不侷限於這些分區。有時研究人員會對數據集進行臨時處理,或組合多個數據集。

2.1.1 非CNN的圖像SR基準測試方法

以下是超分辨率圖像文獻中常用的一些用於基準測試的,新興的,非CNN的方法,最後三種方法很重要,因爲它們是對CNN策略的反敘述的一部分,可以在它們的比較中發現SRCNN:

 

  1. 雙三次插值(Bicubic interpolation):經典插值方法之一,其他的還有最近鄰域和雙線性插值。
  2. NE+:一組鄰域嵌入方法,利用最近鄰搜索(nearest neighbor search)在字典中選擇若干LR候選patch,並利用它們的HR版本重構HR輸出patch,重構方法可能是最小二乘(NE+LS)、局部線性嵌入(NE+LLE)、非負最小二乘(NE+NNLS)。
  3. SC或SrSC:找到稀疏表示來稀疏近似輸入的LR patch,然後利用得到的係數稀疏生成相應的HR輸出patch。
  4. KK:採用核匹配跟蹤和梯度下降相結合的稀疏方法,基於核脊迴歸(kernel ridge regression,KRR),直接從輸入LR圖像學習到目標HR圖像的映射。
  5. K-SVD:是將K-SVD和正交匹配追蹤(OMP)相結合,以提高字典學習效率,以改進稀疏方法SC。
  6. A+,ANR和GR:錨定鄰域迴歸(Anchored Neighborhood Regression,ANR)是一種改進K-SVD和SC的方法,它引入脊迴歸(可離線求解,每個字典原子/錨都可存儲)。一個不太精確但更有效的變異是採用了全局迴歸,因此,GR. A+ (advanced ANR)這個名稱是後來改進的方法,與ANR不同,它不僅從字典原子中學習,還學習了局部鄰域錨(anchor)的所有訓練patch。雖然具有類似的時間複雜性,但已經證明A+的性能優於ANR和GR。
  7. Self-Ex:自相似算法(self-similarity algorithm) 在對返回的patch估計期望變形後,加入了橡皮筋變換(rubber-band transformations),目的是擴大內部patch的搜索空間。在作者開發的綜合數據庫上,該方法的性能優於現有的方法,尤其是A+方法。
  8. SRF:超分辨率森林(super-resolution forests)依賴於使用隨機森林(RFs)從LR到HR patch的直接映射。作者論證了當代SISR與局部線性迴歸的關係,並試圖將RFs納入這一框架。該方法有多種變體,包括RF線性(RFL)、RFL+及其高級版本ARFL+(也稱爲ASRF)。
  9. NBRSF:使用分層外部學習策略,在基於實例的SR中採用了具有雙峯樹的Na¨ıve-Bayes SR森林。提供了一個快速的局部線性化搜索,連接一種快速的局部樸素貝葉斯(Local Naive Bayes)策略用於patch-wise樹的選擇。
  10. IA:或改進的A+,是作者提出的改進任何給定SR方法的通用7路策略的結果。

2.2 圖像SR的先進算法(State of the Art Methods on Image SR)

SRCNN、DNC、VDSR、MSCN-n、RED-Net、Lsp/Hsp network、ESPCN、GUN、EEDS、HWCN

2.2.1  SRCNN

SRCNN是首個使用CNN結構(即基於深度學習)的端到端的超分辨率算法,論文的思路來源於前人的基於稀疏編碼的單幀超分辨重建算法。結構簡單,濾波器和層的數量適中,能取得較好的質量和速度。

使用雙三次插值將單幅LR圖像變成想要的大小,假設這個內插值的圖像爲Y,目標是從Y中恢復圖像F(Y)使之儘可能與HR圖像X相似。爲了便於區分,仍然把Y稱爲LR圖像,儘管它與X大小相同。需要以下3步對映射函數F進行學習:

 

  1. 特徵提取:從LR圖像Y中提取patches,每個patch作爲一個高維向量,這些向量組成一個特徵映射,其大小等於這些向量的維度。第一層定義爲函數F1:F1(Y) = max(0,W1 ∗Y + B1)。其中,W1和B1分別代表濾波器的權值和偏差,W1的大小爲c*f1*f1*n1, c 是輸入圖像的通道數,f1是濾波器的空間大小,n1是濾波器的數量。從直觀上看,W1使用n1個卷積,每個卷積核大小爲c*f1*f1。輸出是n1個特徵映射。B1是一個n1維的向量,每一個元素對應一個濾波器,在濾波器響應中使用激活函數Rectified Linear Unit (ReLU,max(0,x))。
  2. 非線性映射:這個操作將一個高維向量映射到另一個高維向量,每一個映射向量表示一個高分辨率patch,這些向量組成另一個特徵映射。第二步將n1維的向量映射到n2維,這相當於使用n2個1*1的濾波器,第二層的操作如下:F2(Y) = max(0,W2 ∗F1(Y) + B2)。其中,W2的大小爲n1*1*1*n2,B2是n2維的向量,每個輸出的n2維向量都表示一個高分辨率patch用於後續的重建。也可以添加更多的卷積層(1*1的)來添加非線性特徵,但會增加模型的複雜度,也需要更多的訓練數據和時間,在原文中,採用單一的卷積層已經能取得較好的效果。
  3. 重建:這個操作匯聚所有的高分辨率patch構成最後的高分辨率圖像,並期望這個圖像能與X相似。在傳統方法中,預測的重疊高分辨率patch經常取平均得到最後的圖像,這個平均化可以看作是預先定義好的用於一系列特徵映射的濾波器(每個位置都是高分辨率塊的“扁平”矢量形式),因此,定義一個卷積層產生的最後的超分辨率圖像:F(Y) = W3 ∗F2(Y) + B3。W3的大小爲n2*f3*f3*c,B3是一個c維向量。如果這個高分辨率塊都在圖像域,我們把這個濾波器當成均值濾波器;如果這些高分辨率塊在其他域,則W3首先將係數投影到圖像域然後再做均值,無論哪種情況,W3都是一個線性濾波器。

將3步操作整合在一起就構成了卷積神經網絡,在這個模型中,所有濾波器的權值和偏差均被優化。學習端對端的映射函數F需要評估以下參數: Θ = {W1,W2,W3,B1,B2,B3}。最小化重建函數F(Y;Θ) 與對應的HR圖像X之間的損失,給出一組HR圖像{Xi}和對應的LR圖像{Yi},使用均方誤差(Mean Squared Error,MSE)作爲損失函數:

其中,n爲訓練樣本數,損失的最小化使用隨機梯度下降法和標準的BP算法進行反向傳播。使用MSE作爲損失函數有利於得到較高的峯值信噪比(Peak Signal to Noise Ratio,PSNR),PSNR是圖像復原方法中一個常用的評價指標。

參考:

圖像復原】SRCNN論文詳解(Image Super-resolution Using Deep Convolutional Networks)

基於深度卷積神經網絡的圖像超分辨率重建(SRCNN) 學習筆記

 

3 視頻超分辨率(Video Super-Resolution)

3.1 視頻基準(Video Benchmarks)

3.1.1 視頻數據庫

 表Ⅲ列出了一些公共可用的流行視頻數據集。注意,靜態圖像數據集仍然有效,主要用於檢查單幀圖像的質量。

 

3.1.2 非CNN的視頻SR基準測試方法

在比較視頻SR工作時,不僅要用到視頻特有的方法,還要用到前面介紹的常用圖像SR方法,尤其是SRCNN、A+、ESPCN和雙三次插值。此外,以下是非CNN視頻SR的基準測試方法:

  1. 3DSKR:在不進行顯式運動估計的情況下,通過求解局部加權最小二乘問題,自適應增強和時空縮放,其中權值來自相鄰像素的空間/時間比較。
  2. ANN:利用人工神經網絡(artificial neural network,ANN)學習LR和HR幀之間的時空細節。
  3. BayesSR:一種自適應地進行HR幀重建的貝葉斯策略,同時估計運動、模糊核和噪聲。
  4. Bayesian-MB:一種特別關注模糊運動 (motion blur,MB)的期望最大化(expectation maximization,EM)策略,通過最優搜索最小模糊像素進行殘差模糊估計和HR重建。

 3.2 視頻SR的先進算法(State of the Art Methods on Image SR)

 Draft CNN、MFCNN、BRCN、VESPCN

 

4 深度映射/3D和更高維度(Depth Maps/3D and higher dimensions)

4.1 基準(Benchmarks)

4.1.1 數據庫

表V列出了一些重要的公共可用數據集。與之前的數據集不同,這些數據集主要處理特定的情況,如表的第三列所述。

4.1.2 非CNN的SR基準測試方法

除了前面描述的一些方法,如ANR、A+、NE+、K-SVD、SRCNN,通常還使用以下這些非CNN方法作爲基準測試方法:

  1. 引導圖像採樣(Guided Image Sampling):一種可以連接上採樣的邊緣保存濾波器。
  2. MRF:假設深度不連續度,並從伴隨的HR相機圖像中進行觀察,基於馬爾可夫隨機域的LR深度的增強,通常與相關相機圖像的強度變化相協調。
  3. ATGV:由HR強度圖像計算得到的各向異性擴散張量引導的深度圖像上採樣。
  4. 3D-ToF Upsampling:利用非局部均值濾波對深度圖像進行正則化,並利用基於HR RGB輸入的多特徵邊緣加權方法,嘗試將噪聲三維飛行時間(3DToF)相機與HR RGB相機相結合,超分辨LR深度。
  5. PatchSDSR:將每個LR patch輸入的高度字段與本地HR patch的通用數據庫進行匹配,從而提高深度分辨率;通過MRF標記選擇合適的HR候選。
  6. 邊緣導向(Edge-guided):利用HR邊緣圖,對LR對應的邊緣進行MRF優化,獲得單個深度圖像的超分辨率。

 4.2 三維/深度和多光譜數據基於CNN的SR

 3DSRCN、Progressive Deep CNN、Depth SR

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章