RPCA的一些理解
文章大意:
PCA方法魯棒性不佳是由于矩陣的噪聲并不完全是高斯噪聲。對應到視頻序列中就是,長時間的靜止視頻中每幀的圖片相關性極高,而在有物體運動時,往往是部分像素有極大的變化,但是變化的像素較少。這也就是說,視頻中圖像可以分成相關性極高的背景以及少量像素的前景圖像。即低秩部分以及稀疏部分。這是優于PCA的部分,即前景圖像對矩陣的分解影響較小。(雖然論文中提到了,矩陣不是特別稀疏時也有很好的性能)
直接提應用方式: 將視頻中的一張圖片以行的方式依次存入到一個行向量中,而視頻包含的圖片數作為其矩陣的行數。由此將視頻存成一個矩陣,對該矩陣進行分解,然后將兩部分恢復成單張圖片即可。
我們希望矩陣分解后產生一個低秩的矩陣和一個稀疏的矩陣,即最小化rank(A) + E的0范,因為問題的復雜性,將其放寬到:
即最小化特征值與稀疏矩陣非零元素的和。
有關RPCA方法的結果顯示:
inexact_alm結果顯示:
這段視頻兩種方法的差異并沒有論文中的明顯。 沒有查找到PCP方法的代碼部分,代碼根據下列迭代方式編寫
有關公式的理解
不關注k,k+1該部分只是迭代的固有格式,3,4反過來做也可以,4中的L上的k+1改為k應該也行,不過上述寫的方式收斂比較快。
有關各部的參數問題 u的取值并沒有明確的證明,只有一個最小值的證明。
u存在其最小值,u非常小時會導致迭代時,所有量都會像誤差項集中;u非常大時,將導致低秩部分中會混雜入稀疏部分,不過誤差項仍會向零向量移動。也就是這時仍是收斂的
u較大時,收斂速度會提高,不過過大會造成混雜,最終效果會變差。u小時,收斂速度較低,不過效果比較好(太小導致不收斂) lambda的取值一般設定為矩陣行列中值較大的值進行開方后的倒數值。
有關迭代部分的理解: 3式右邊的矩陣為低秩的部分,我們希望它的秩更加低,將矩陣進行svd分解后,去除過小奇異值后,將矩陣還原(實際上這常用于圖片的壓縮)。 4式右邊的矩陣為稀疏部分,我們當然希望它更稀疏,也就是將小值的元素部分去除 5式則是誤差項的更新。
而結束條件如下:
這里u的取值也提到了。
F范數代表矩陣的能量。?
一般形式的圖像:加上噪聲項的部分,之前看到一篇文章的名字(有關該部分的): Stable Principle Component Pursuit (SPCP)/ Noisy?Robust PCA
最后有關代碼編寫中的一些備忘: 在分解出的稀疏矩陣中,該矩陣元素為正負均有,最終的顯示將圖片取絕對值,然后在0-255的范圍中顯示。
直接提應用方式: 將視頻中的一張圖片以行的方式依次存入到一個行向量中,而視頻包含的圖片數作為其矩陣的行數。由此將視頻存成一個矩陣,對該矩陣進行分解,然后將兩部分恢復成單張圖片即可。
我們希望矩陣分解后產生一個低秩的矩陣和一個稀疏的矩陣,即最小化rank(A) + E的0范,因為問題的復雜性,將其放寬到:
即最小化特征值與稀疏矩陣非零元素的和。
有關RPCA方法的結果顯示:
inexact_alm結果顯示:
這段視頻兩種方法的差異并沒有論文中的明顯。 沒有查找到PCP方法的代碼部分,代碼根據下列迭代方式編寫
有關公式的理解
不關注k,k+1該部分只是迭代的固有格式,3,4反過來做也可以,4中的L上的k+1改為k應該也行,不過上述寫的方式收斂比較快。
有關各部的參數問題 u的取值并沒有明確的證明,只有一個最小值的證明。
u存在其最小值,u非常小時會導致迭代時,所有量都會像誤差項集中;u非常大時,將導致低秩部分中會混雜入稀疏部分,不過誤差項仍會向零向量移動。也就是這時仍是收斂的
u較大時,收斂速度會提高,不過過大會造成混雜,最終效果會變差。u小時,收斂速度較低,不過效果比較好(太小導致不收斂) lambda的取值一般設定為矩陣行列中值較大的值進行開方后的倒數值。
有關迭代部分的理解: 3式右邊的矩陣為低秩的部分,我們希望它的秩更加低,將矩陣進行svd分解后,去除過小奇異值后,將矩陣還原(實際上這常用于圖片的壓縮)。 4式右邊的矩陣為稀疏部分,我們當然希望它更稀疏,也就是將小值的元素部分去除 5式則是誤差項的更新。
而結束條件如下:
這里u的取值也提到了。
F范數代表矩陣的能量。?
一般形式的圖像:加上噪聲項的部分,之前看到一篇文章的名字(有關該部分的): Stable Principle Component Pursuit (SPCP)/ Noisy?Robust PCA
最后有關代碼編寫中的一些備忘: 在分解出的稀疏矩陣中,該矩陣元素為正負均有,最終的顯示將圖片取絕對值,然后在0-255的范圍中顯示。
總結
- 上一篇: SSIM与PSNR的计算方式
- 下一篇: RPCA学习笔记