Restoration: From Sparse and Low-rank Priors to Deep Priors 閱讀筆記
來源:http://www.comp.polyu.edu.hk/~cslzhang
圖象恢復問題描述

公式表示
𝒚 = 𝑯𝒙 + 𝒗 ,其中𝑯 是退化矩陣,𝒗 是加性噪聲
圖像恢復問題可以描述為給定觀察到的y圖像,從中恢復出原圖像x。
圖象恢復是一種不適定問題。
(適定問題是指定解滿足下面三個要求的問題:① 解是存在的;② 解是唯一的;③ 解連續依賴於定解條件,即解是穩定的。這三個要求中,只要有一個不滿足,則稱之為不適定問題。)
圖象恢復模型

核心問題:
退化過程模型建立
合適的先驗條件(good priors)
稀疏表示
回顧線性代數𝑨𝜶=𝒃, 如何求解𝜶?
A滿秩方陣,𝜶=𝑨-1𝒃.
A列滿秩矩陣(over-determined),有最小二乘解 𝜶= 𝑨†𝒃 (偽逆)

A行滿秩矩陣(under determined)?

優化模型: 𝑚𝑖𝑛𝜶𝐽(𝜶) 𝑠.𝑡.𝑨𝜶=𝒃
不同目標函數𝐽(𝜶)可以得到不同的解,其中目標函數取

L2范數最小化的解為稠密解(解里有許多非0的值),但更多的時候,我們希望得到一個稀疏的解,即解里有許多0或接近0的值。

稀疏編碼模型
為了得到稀疏解,取目標函數為L0范數。

但L0范數最小化為非凸的NP-hard問題。
而L1范數最小化是L0范數最小化的最緊的凸松弛。
最為廣泛使用的稀疏編碼模型形式如下:


稀疏編碼的算法
L0范數最小化-貪婪搜索
匹配追蹤MP
正交匹配追蹤OMP
L1范數最小化-凸優化
迭代再加權最小二乘
近似梯度下降(迭代軟閾值ISTA)
增廣拉格朗日方法(乘子交替方向法ADMM)
MP&OMP
匹配追蹤(MP)和正交匹配追蹤(OMP)要解決的問題可以具體表示為:
在過完備字典𝑨中選出k列,用這k列的線性組合近似表達待稀疏分解信號𝒃,表示為,𝒃=𝑨𝜶,求𝜶。
其中字典A和觀測到的信號𝒃已知。
過完備字典,即原子個數遠大於信號長度,𝒃=𝑨𝜶中,過完備字典𝑨為n*m尺寸,信號b長度為n*1,𝜶為m*1。

MP算法的基本思想:
從過完備字典矩陣A(也稱為原子庫中),選擇一個與信號𝒃 最匹配的原子(某一列),最小二乘解逼近,再從信號𝒃中減去這部分,求出信號殘差,然后繼續選擇與信號殘差最匹配的原子,反復迭代,信號𝒃可以由這些原子的線性和,加上最后的殘差值來表示。
由於字典原子不是相互正交的,有可能會使得每次迭代的結果不是最優的,需要很多次迭代才能收斂。
OMP算法思想:
在正交匹配追蹤OMP中,殘差是總與已經選擇過的原子正交的。這意味着一個原子不會被選擇兩次,結果會在有限的幾步收斂。
具體步驟其實就是用施密特正交化使每次選擇的原子(字典某一列,基)與已經選擇過的所有原子正交。另外,求殘差也不是直接減,而是減去在已經選擇過的所有原子組成的空間上的正交投影。
增廣拉格朗日方法
https://blog.csdn.net/itnerd/article/details/86012869
基於稀疏表示的圖像恢復
用字典 D加強x的稀疏表示:

考慮到圖象恢復模型:

基於稀疏表示的模型為

整個算法的流程為:
- 將圖片y切割成重疊的圖片塊。
- 對於每個圖片塊,求解非線性L1范數稀疏編碼問題:

(這個算法里,稀疏字典D是已知的)
- 重建每個圖像塊:
- 將重建的圖像塊重疊部分平均,重建圖片x.
- 迭代以上步驟。
為什么要稀疏?
神經科學視角
Olshausenand Field’s Sparse Codes, 1996
目標:實現一種生成自然圖像的編碼策略,要求能同時保持位置、方向和帶通特性。
解決方案:最大化稀疏性的編碼策略:
E = -[preserve information] –lambda [sparseness]
•Bruno A. Olshausen, “Emergence of simple-cell receptive field properties by learning a sparse code for natural images.” Nature, 381.6583 (1996): 607-609.
•Bruno A. Olshausenand David J. Field. “Sparse coding with an overcompletebasis set: A strategy employed by VI?.” Vision Research, 37.23 (1997): 3311-3326.
貝葉斯視角
貝葉斯定理下的信號恢復

代入 𝒙 = 𝑫𝜶,假設𝜶符合指數分布:

最大后驗概率的解為

信號處理視角
如果一個信號可以用K個基線性表示,這個信號被稱為K稀疏信號,如果K<<N,這個信號被稱為可壓縮的。

𝒚=𝑯𝒙=𝑯𝑫𝜶=𝑨𝜶

信號重建
如果信號是k稀疏的,則可以通過遠小於信號矩陣尺寸(M<<N)的測量從y中恢復這個信號。

其中,測量矩陣A需要滿足RIP條件。
RIP, 有限等距性質(Restricted Isometry Property, RIP)

王強,李佳,沈毅.壓縮感知中確定性測量矩陣構造算法綜述[J]. 電子學報,2013,41(10):2041-2050.
字典學習
字典分類
分析字典
DCT、小波變換、Curvelets、Ridgelets, bandlets, …
學習字典
K-SVD、坐標下降 、多尺度字典學習、自適應PCA字典...
為什么要字典學習?
基於學習的過完備字典的稀疏模型比基於分析字典(如DCT字典、小波字典)效果更好。
為什么學過的詞典更有效?
•更適合特定任務/數據。
•對字典的基dictionary atom)的數學性質沒有嚴格限制。
•對模型數據更靈活。
•容易產生稀疏解。
字典學習算法

K-SVD (L0范數)
•Coordinate descent (L1范數)
•其他:多尺度字典學習、自適應PCA…
K-SVD
K-means是一種稀疏字典學習的特殊情況(即只用一個原子來近似整個樣本,例如cluster中心),這種有選擇性地對cluster標簽和中心進行更新的思想可以在字典學習中采用。

K-SVD則是用一個K原子的字典D來近似樣本。K-SVD的目標是要構造一個過完備字典D(k原子),然后選擇最稀疏的系數解𝜶使得過完備字典D可以對其訓練集相似的目標向量進行稀疏表示。
采用L0范數,每次更新D,只關注𝜶中非零值的個數。
M. Aharon, M. Elad, A. Bruckstein, K-SVD: An algorithm for designing over complete dictionaries for sparse representation, IEEE Transactions on Signal Processing, 54 (11), 4311-4322.
算法流程:
構造字典的算法分為兩步:稀疏表示和字典更新。
首先要有一個初始化的字典D,用當前字典D對信號y進行稀疏表示,稀疏表示使用傳統稀疏編碼算法,例如MP、OMP。

逐列更新字典向量:

去掉字典第k列,得到誤差矩陣Ek,對E做SVD分解E=UΛVT,U和V為酉矩陣,Λ是對角矩陣,對角元素從大到小排列,取U第一列表示dk,Λ最大元素和V第一個列乘積表示𝜶k,這樣完成了字典D中一列的更新。
注意,只選擇𝜶k中的非零元素,對相應的dk進行更新。即用𝜶k中非零元素構建一個新的矩陣Ωk,上式變為:

此時取EkΩk進行SVD分解。
參考:https://www.cnblogs.com/salan668/p/3555871.html
L1范數字典學習
L1范數字典學習采用與K-SVD相似的策略,L0范數方法(K-SVD)只關心非零值的數量,而對於L1范數方法,也要考慮參數的值。

Meng Yang, et. al. "MetafaceLearning for Sparse Representation based Face Recognition," In ICIP 2010. (Code:http://www4.comp.polyu.edu.hk/~cslzhang/code/ICIP10/Metaface_ICIP.rar)
其他字典學習方法
多尺度字典學習
隨着信號尺寸的增加,稀疏編碼的復雜度呈指數上升。因此,大多數方法只適用於處理小圖片塊。為了能在大圖片塊上實現稀疏編碼,多尺度方法可以提供一種在大尺度上對簡單結構進行自適應建模、在小尺度上對細節進行自適應建模的方法。

J. Mairal, et al., Learning multiscale sparse representations for image and video restoration.MultiscaleModeling & Simulation.
雙重稀疏度:高維數據稀疏字典
為了建模高維數據,采用稀疏的稀疏字典。稀疏字典表示為𝑫=𝜱𝒁, 其中 𝜱是預定義的字典的基,例如DCT或小波。目標函數為


R. Rubinstein, et. al. Double Sparsity: Learning Sparse Dictionaries for Sparse Signal Approximation. IEEE Trans. on Signal Processing, 2010.
半耦合字典學習
用於復雜圖像的建模


S. Wang, L. Zhang, Y. Liang, Q. Pan, "Semi-Coupled Dictionary Learning with Applications to Image Super-Resolution and Photo-Sketch Image Synthesis," InCVPR 2012.
•http://www4.comp.polyu.edu.hk/~cslzhang/SCDL/SCDL_Code.zip
自適應PCA字典選擇
稀疏編碼耗時較多,尤其是大字典。但為了對復雜圖像的局部結構進行建模,通常需要一個很大的過完備字典。一個解決方法是學習一系列PCA字典,然后從中挑選一個來表示給定的圖片塊。

W. Dong, L. Zhang, G. Shi, X. Wu, Image deblurringand super-resolution by adaptive sparse domain selection and adaptive regularization, TIP 2011.
•http://www4.comp.polyu.edu.hk/~cslzhang/ASDS_data/TIP_ASDS_IR.zip
非局部中心化稀疏表示(NCSR)
局部自相似性
自然圖像常常存在非局部自相似性,即對於一個指定的圖像塊,在圖像中往往存在許多離得較遠的圖像塊與其相似。

Buades, et al., A non-local algorithm for image denoising. CVPR 2005.
非局部中心化稀疏表示(NCSR)是一種簡潔但非常有效的稀疏表示模型,它自然地集成了非局部自相似(NSS)先驗和稀疏編碼。
W. Dong, L. Zhang and G. Shi, “Centralized Sparse Representation for Image Restoration”, in ICCV 2011.
W. Dong, L. Zhang, G. Shi and X. Li, “NonlocallyCentralized Sparse Representation for Image Restoration”, IEEE Trans. on Image Processing, vol. 22, no. 4, pp. 1620-1630, April 2013.
http://www4.comp.polyu.edu.hk/~cslzhang/code/NCSR.rar
NCSR主要思想
對於真實信號x:

對於觀測信號y:

SCN(Sparce coding noise)稀疏編碼噪聲:

為了更好地重建x,必須降低稀疏編碼噪聲:

NCSR目標函數

其中 
核心思想即抑制稀疏編碼噪聲。
NCSR的解
[𝜶𝒚]非局部估計

化簡目標函數

迭代解

在NCSR方法中,考慮到稀疏表示噪聲(SCN)普遍服從Laplacian分布,𝐿𝑝范數實際采用𝐿1范數
正則化參數𝜆由MAP估計原則自適應確定的。
使用局部自適應PCA字典,對圖像塊進行集群,對於每個集群,學習並使用PCA字典對集群中的圖像塊進行編碼。
低秩最小化方法
思想
一組視覺信息通常具有低秩的固有屬性。
例如:


聯合稀疏
如何定義一組相關向量的稀疏度?

把一組圖片視為二維低秩矩陣,秩為:

核范數最小化(NNM)
秩的最小化是非凸且NP困難問題,一個凸松弛形式是核范數:

將一組圖像組成的二維矩陣表示為:

其中Y每列表示一個圖像樣本,X為Y的理想低秩矩陣形式,E為殘差矩陣。
核范數最小化(NNM)即一種從Y中估計X的方法,公式為:

其解析解為:𝑿=𝑼𝑆𝜆(𝜮)𝑽𝑇
其中𝒀=𝑼𝜮𝑽𝑇(SVD分解),
核范數最小化的缺陷在於對於所有奇異值都一視同仁,沒有凸出奇異值大小的作用。
J.-F. Cai, E.J. Candèsand Z. Shen,A singular value thresholdingalgorithm for matrix completion,SIAM J. Optimiz., 20(4): 1956--1982, 2010.
加權奇異值最小化(WNNM)
加權核范數:
模型:
解為:
其中
S. Gu, Q. Xie, D. Meng, W. Zuo, X. Feng, L. Zhang, “Weighted Nuclear Norm Minimization and Its Applications to Low Level Vision,” International Journal of Computer Vision, 2017.
WNNM用於圖像去噪
S. Gu, L. Zhang, W. Zuoand X. Feng, “Weighted Nuclear Norm Minimization with Application to Image Denoising,” CVPR 2014.
Robust PCA
一些應用中,殘差矩陣E可能不服從高斯分布的,也可能是稀疏的。L1-范數在描述稀疏誤差方面更穩健,模型為:

可以用ALM方法求解:

ALM方法
對於形如

的目標函數,使用ALM方法,代價函數為

深度學習方法
Discriminative learning判別學習方法
從退化-潛在圖像對(degraded-latent sample pairs)學習一個映射函數,通常公式采用如下形式:

關鍵問題
合適的圖像對訓練數據集
模型結構
損失函數定義
基於模型的優化方法通常具有明確物理意義,但人工選擇的先驗條件(prior)可能不夠准確,優化過程耗時較多,而判別學習方法實現數據驅動的端到端學習,學習好的模型的通用性和可解釋性有限.
超分辨:
S. Gu, W. Zuo, Q. Xie, D. Meng, X. Feng, L. Zhang, "Convolutional Sparse Coding for Image Super-resolution," in ICCV 2015.
Dong, Chao, et al. "Image super-resolution using deep convolutional networks."IEEE PAMI 38.2 (2016): 295-307.
JiwonKim, Jung Kwon Lee, and KyoungMu Lee. "Accurate image super-resolution using very deep convolutional networks."CVPR, 2016.
WenzheShi, et al. "Real-time single image and video super-resolution using an efficient sub-pixel convolutional neural network."CVPR, 2016.
SRGAN:
C. Ledig, L. Theis, F. Huszar, J. Caballero, A. Cunningham, A. Acosta, A. Aitken, A. Tejani, J. Totz, Z. Wang, W. Shi, “Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network”, CVPR,2017
去噪:
K. Zhang, W. Zuo, Y. Chen, D. Meng, L. Zhang, "Beyond a Gaussian Denoiser: Residual Learning of Deep CNN for Image Denoising,"IEEE Trans. on Image Processing, 2017.
Code: https://github.com/cszn/DnCNN
去模糊
Jiawei Zhang, et al. "Learning Fully Convolutional Networks for Iterative Non-blind Deconvolution."CVPR,2017.
