CS NLR 學習筆記(二)

2021-09-08 16:44:43 字數 1616 閱讀 9370

cs-nlr 演算法 主要是進行非區域性塊匹配,然後對塊的集合進行 低秩矩陣的最優化 和 影象恢復 操作

按照上文內容對整幅影象進行塊匹配,然後得到低秩矩陣li

對每個li,即是最小化問題

其中l(li, ε)是li奇異值得對數和的近似,ε是乙個小的常量, 上式也可以寫成

其中xi = rix (rix = [ri0x, ri1x, …, rim-1x],表示由相似塊的集合構成的矩陣), n0 = min(li為n*m矩陣,且n<=m),σj(li)表示li的第j個奇異值。

令f(σ) = ∑n

j=1log(σj + ε),將其taylor展開

那麼解得:

忽略常量,▽f = ∑n0

j=1 1 /(σj + ε),上式可寫作

其中 τ = λ/2η,φ(li,w) = ∑n0

j wj*σj

φ(li,w)表示加權核範數,權重wj = 1 /(σj + ε)

定理1(加權核範數的臨近運算元)

對每個xn*m 0 <= w1 <= … <= wn0,n0 = min

最小值可由加權奇異值閾值運算元(weighted singular value thresholding operator)sw,t(x)給出:

其中u∑vt是x的svd分解,(x)+ = max

由定理1,最終第k+1次迭代得到:

其中u∑vt是xi的svd分解,wj = 1 /(σj + ε)

初始w可設為[1, 1, …, 1]t

對於求解後的每個li,可以通過求解最小化問題重建整幅影象

這是乙個二次最優化問題

其中h是hermit置換運算元。由於求逆不太現實,所以無法進行直接求解。實際上,可以採用共軛梯度法(cg)進行求解。

當測量矩陣φ是部分傅利葉變換陣的時候,可以通過admm進行快速求解(19):

z是輔助變數,μ是拉格朗日乘子,β是正標量,可以通過迭代求解(21):

ρ>1是個常量

固定 x, u, β

其中 ∑iritri是一對角陣,對角元素與相應影象的畫素位置有關,它的值等於此畫素位置重疊塊的數量。∑irili是所有相似塊的平均值

固定z, u, β

其中φ是部分傅利葉變換陣φ = df(d是下取樣陣,f是傅利葉變換陣)

在傅利葉域可以輕鬆求解:

進行逆傅利葉變換即可求解x

整體演算法流程圖如下:

CS NLR 學習筆記(一)

cs nlr 學習筆記 一 compressive sensing via nonlocal low rank regularization 通過非區域性低秩正則化進行壓縮感知 dong w,shi g,li x,et al.compressive sensing via nonlocal low ...

學習筆記二

1 算符運算子 1 5為1 1 5為 1 即只看被除數的符號。b a 先賦值後運算 a b 先運算後賦值。2 字串資料與任何資料使用 都是相連線,最終都會變成字串,例如 ad 2 結果為 ad2 3 轉義字元 通過 來裝便後面字母或符號的含義 n換行 linux b 退格 r 按下回車鍵,windo...

學習筆記(二)

k 近鄰演算法中的python知識 1.建立乙個3x3的單位矩陣a,a.shape的結果為 3,3 2.建立乙個一維矩陣b,b.shape為矩陣的長度。3.建立乙個4x2的矩陣c,c.shape 1 為第一維的長度 2,c.shape 0 為第二維的長度 4 4.tile函式位於python模組 n...