1. 程式人生 > >奇異值分解和影象壓縮

奇異值分解和影象壓縮

=====================代表正義的分割線=====================

今天我們來講講奇異值分解和它的一些有意思的應用。奇異值分解是一個非常,非常,非常大的話題,它的英文是 Singular Value Decomposition,一般簡稱為 SVD。下面先給出它大概的意思:

對於任意一個 m×nm×n 的矩陣 MM,不妨假設 m>nm>n,它可以被分解為

M=UDVTM=UDVT

其中

  • UU 是一個 m×nm×n 的矩陣,滿足 UTU=InUTU=InInIn 是 n×nn×n 的單位陣
  • VV 是一個 n×nn×n 的矩陣,滿足 V
    T
    V=In
    VTV=In
  • DD 是一個 n×nn×n 的對角矩陣,所有的元素都非負

先別急,我看到這個定義的時候和你一樣暈,感覺資訊量有點大。事實上,上面這短短的三條可以引發出 SVD 許多重要的性質,而我們今天要介紹的也只是其中的一部分而已。

前面的表示式 M=UDVTM=UDVT 可以用一種更容易理解的方式表達出來。如果我們把矩陣 UU 用它的列向量表示出來,可以寫成

U=(u1,u2,,un)U=(u1,u2,…,un)

其中每一個 uiui 被稱為 MM 的左奇異向量。類似地,對於 VV,有

V=(v1,v2,,vn)V=(v1,v2,…,vn)

它們被稱為右奇異向量。再然後,假設矩陣 D

D 的對角線元素為 didi (它們被稱為 MM的奇異值)並按降序排列,那麼 MM 就可以表達為

M=d1u1vT1+d2u2vT2++dnun

相關推薦

奇異分解影象壓縮

=====================代表正義的分割線===================== 今天我們來講講奇異值分解和它的一些有意思的應用。奇異值分解是一個非常,非常,非常大的話題,它的英文是 Singular Value Decomposition,一般簡稱為 SVD。下面先給出它大概的意思

奇異分解影象壓縮中的應用(有MATLAB模擬程式)

  這篇文章其實也是矩陣分析課程的一個作業,當時也是覺得矩陣奇異值分解挺有意思的,所以就在網上查詢奇異值分解的相關應用。另外自己對影象處理也很感興趣,因此就選擇了影象壓縮這個應用。寫部落格是個很好的學習方法,堅持寫部落格也是一個好習慣。下面就直接把論文貼上來。附錄1:奇異值分

基於奇異分解影象壓縮與除噪

一、本報告所用的一些基本原理 第一,慮噪過程。 巴特沃斯濾波器的特點是通頻帶內的頻率響應曲線最大限度平坦,沒有起伏,而在阻頻帶則逐漸下降為零。在振幅的對數對角頻率的波得圖上,從某一邊界角頻率開始,振幅隨著角頻率的增加而逐步減少,趨向負無窮大。 本程式通過不斷調整通帶截止頻率

【PCA與LDA】特徵值分解奇異分解以及影象壓縮處理原理

    上一次寫了關於PCA與LDA的文章,PCA的實現一般有兩種,一種是用特徵值分解去實現的,一種是用奇異值分解去實現的。在上篇文章中便是基於特徵值分解的一種解釋。特徵值和奇異值在大部分人的印象中,往往是停留在純粹的數學計算中。而且線性代數或者矩陣論裡面,也很少講任何跟特徵值與奇異值有關的應用背景。奇異值分

利用矩陣奇異分解影象進行壓縮

最近學習線性代數的有關東西,在看到奇異值分解(svd)時,發現了一個在影象壓縮上的應用。 奇異值分解:線上性代數中,我們知道對任意一個矩陣都存在奇異值分解,,其中U和V是標準正交矩陣,而是一個對角矩陣,每一個對角元是該矩陣的奇異值,奇異值指的是矩陣的特徵值開根號。其具體分解形式如下: 其中 將A展開

機器學習筆記——基於奇異分解(SVD)的影象壓縮(PIL)

此指令碼的作用是圖片壓縮(清晰度尚可的情況下,可達到8倍以上的壓縮比),是SVD的一個應用實踐,涉及PIL、numpy庫。 (python中處理圖片的庫比較多,比如PIL、OpenCV、matplot

奇異分解壓縮影象SVD

介紹一下奇異值分解來壓縮影象。今年的上半年中的一篇部落格貼了一篇用奇異值分解處理pca問題的程式,當時用的是影象序列,是把影象序列中的不同部分分離開來。這裡是用的不是影象序列了,只是單單的一幅影象,所以直接就對影象矩陣進行svd了。   吳軍的《數學之美》裡其實已經介紹

特徵分解SVD奇異分解

  奇異值分解(Singular Value Decomposition,以下簡稱SVD)是在機器學習領域廣泛應用的演算法,它不光可以用於降維演算法中的特徵分解,還可以用於推薦系統,以及自然語言處理等領域。是很多機器學習演算法的基石。本文就對SVD的原理做一個總結,並討論在在PCA降維演算法中是如何

Python求特徵值特徵向量、奇異分解

問題1描述: 求解矩陣A=[-1 2 -3; 4 -6 6]的2範數。 其中,矩陣A的2範數為矩陣ATAA^{T}AATA的最大特徵值開平方根。 即利用Python求解2範數如下所示: >>> A=np.array([[-1,2,-3],[4,

奇異分解(SVD)主成分分析(PCA)

設X是一個n*m的資料矩陣(在此不把它理解成變換),每一列表示一個數據點,每一行表示一維特徵。 對X做主成分分析(PCA)的時候,需要求出各維特徵的協方差,這個協方差矩陣是。 (其實需要先把資料平移使得資料的均值為0,不過在此忽略這些細節) PCA做的事情,是對這個協方差矩陣做對角化: 可以這樣理解上式右邊

特徵值奇異分解(SVD)

特徵值分解和奇異值分解兩者有著很緊密的關係,兩者的目的都是為了提取矩陣最重要的特徵。本節先解釋特徵值分解。先用一個例項來說明特徵值和特徵向量的起因和實際意義,然後給出定義,計算方法,python程式碼以及其他解釋。 特徵值分解 例項 某城市有10000

特征分解奇異分解

雲計 做到 mpi img .cn wikipedia cti 雲計算 position 特征值和奇異值在大部分人的印象中,往往是停留在純粹的數學計算中。而且線性代數或者矩陣論裏面,也很少講任何跟特征值與奇異值有關的應用背景。 奇異值分解是一個有著很明顯的物理意義的

數學基礎系列(六)----特徵值分解奇異分解(SVD)

一、介紹   特徵值和奇異值在大部分人的印象中,往往是停留在純粹的數學計算中。而且線性代數或者矩陣論裡面,也很少講任何跟特徵值與奇異值有關的應用背景。   奇異值分解是一個有著很明顯的物理意義的一種方法,它可以將一個比較複雜的矩陣用更小更簡單的幾個子矩陣的相乘來表示,這些小矩陣描述的是矩陣的重要的特性。就像是

《學習OpenCV3》第7章第4題-SVD奇異分解的驗算

lac size ast 編寫代碼 ref www adding 第7章 mar 原文題目: 中文翻譯: 解題過程 d.使用OpenCV編寫代碼 /******************************************************

SVD 奇異分解

依賴 nat 矩陣相乘 適用於 mac 分類 topic 沒有 一個 強大的矩陣奇異值分解(SVD)及其應用 版權聲明: 本文由LeftNotEasy發布於http://leftnoteasy.cnblogs.com, 本文可以被全部的轉載或者部分使用

機器學習實戰精讀--------奇異分解(SVD)

svd 奇異值分解奇異值分解(SVD):是一種強大的降維工具,通過利用SVD來逼近矩陣並從中提取重要特征,通過保留矩陣80%~ 90%的能量,就能得到重要的特征並去掉噪聲SVD分解會降低程序的速度,大型系統中SVD每天運行一次或者頻率更低,並且還要離線進行。隱性語義索引(LST):試圖繞過自然語言理解,用統計

Median absolute deviation | Singular Value Decomposition奇異分解 | cumulative sums |

con osi out posit position for BE absolute lar Consider the data (1, 1, 2, 2, 4, 6, 9). It has a median value of 2. The absolute devia

[數學] 奇異分解SVD的理解與應用

資料 blank art use 過濾 ble 對角線 cos .net 看一個預測的代碼,在預處理數據的時候使用了svd。了解了一下svd相關資料,比較喜歡第一篇文章的解釋,不過第二篇也很簡單。 https://blog.csdn.net/ab_use/article/d

機器學習的數學基礎 - 特征分解奇異分解

src ron 特征 技術 ima 基礎 bsp posit pos 特征分解 奇異值分解(Singular Value Decomposition, SVD) 機器學習的數學基礎 - 特征分解與奇異值分解

奇異分解(SVD)原理及應用

4.4 存在 post 定性 tro ant 二維 5.1 spl 一、奇異值與特征值基礎知識: 特征值分解和奇異值分解在機器學習領域都是屬於滿地可見的方法。兩者有著很緊密的關系,我在接下來會談到,特征值分解和奇異值分解的目的都是一樣,就是提取出一個矩陣最重要的特征