4.2 基于PCA尋找模式(模型)(PCA to find patterns)
假設我們有20張圖像,每張圖像由N個像素的高和N個像素的寬組成(N*N的矩陣)。對于每張圖像,我們可以使用上一節(jié)的方法將其表示為一個圖像向量。然后,我們可以將所有的圖像(現(xiàn)在一張圖像對應一個向量)放到一個大矩陣里面,形如:
以此作為我們使用PCA算法的第一步(現(xiàn)在處理的對象是一個由20張圖像構成的大矩陣)。一旦使用PCA,我們要做的就是求解協(xié)方差矩陣得到特征向量(eigenvectors)。這(PCA)為什么有用呢?假設我們想實現(xiàn)面部識別,原始的數(shù)據(jù)集是人臉圖像。問題是,給定一張新的人臉圖像,識別出這張新圖像對應原始數(shù)據(jù)圖像中的哪一類人臉圖像,也就是根據(jù)人臉圖像信息進行分類(注意,這張新圖像并不是來自于我們一開始所給的那20張圖像)?這個問題在計算機視覺的解法是,基于PCA分析得到的新坐標系下,測量新的人臉圖像與已知的20張人臉圖像之間的區(qū)別,而不是在原來的坐標系。
http://www.cnblogs.com/XMU-hcq/p/6353698.html
事實證明經過PCA算法得到的新的坐標系更有利于識別人臉,這是因為PCA算法告訴我們原始圖像(數(shù)據(jù))之間的差異(differences and similarities)。PCA算法確定了數(shù)據(jù)中的統(tǒng)計模型。
因為所有的向量都是 維,所以我們將得到個特征向量(eigenvector)。實際上,我們也可以丟棄一些意義不大的eigenvectors(只保留特征值前k大對應的eigenvectors),識別的效果同樣不錯。
4.3 基于PCA的圖像壓縮(PCA for image compression)
使用PCA算法進行圖像壓縮又稱為Hotelling 變換或者K-L變換。假如我們有20張圖像,每張個像素。我們可以構造個向量,每個向量20維,每一維對應這20張圖像中同一個像素的強度值,下文我(博主)將補充說明。這一點與上一個例子的大不同,上一個例子是構成的向量vector中的每個元素都是對應不同的像素,而現(xiàn)在這個例子構成的每個向量(個)的元素對應20張圖像相同的一個像素值。
---------------
補充說明:個20維的向量
第1個向量形如:
第2個向量形如:
第
網友評論