用matlab實現的pca演算法,用於降維,適用於各種試驗,如人臉識別程式。
使用方法:
1、選擇訓練和測試的資料庫路徑
2、選擇測試影象的路徑
3、執行createdatabase'函式給訓練影象建立二維矩陣
4、執行'eigenfacecore'函式建立基本的空間
5、執行'recognition'函式得到相應的影象。
主成分分析 ( principal component analysis , pca )或者主元分析。是一種掌握事物主要矛盾的統計分析方法,它可以從多元事物中解析出主要影響因素,揭示事物的本質,簡化複雜的問題。計算主成分的目的是將高維資料投影到較低維空間。給定 n 個變數的 m 個觀察值,形成乙個 n ′ m 的資料矩陣, n 通常比較大。對於乙個由多個變數描述的複雜事物,人們難以認識,那麼是否可以抓住事物主要方面進行重點分析呢?如果事物的主要方面剛好體現在幾個主要變數上,我們只需要將這幾個變數分離出來,進行詳細分析。但是,在一般情況下,並不能直接找出這樣的關鍵變數。這時我們可以用原有變數的線性組合來表示事物的主要方面, pca 就是這樣一種分析方法。
利用pca和knn實現人臉識別
import cv2 import numpy as np import os from sklearn import neighbors import tkinter from tkinter import filedialog 讀取人臉資料庫 準備訓練資料 def openfile r file...
基於PCA的人臉識別步驟
人臉識別是乙個有監督學習過程,首先利用訓練集構造乙個人臉模型,然後將測試集與訓練集進行匹配,找到與之對應的訓練集頭像。最容易的方式是直接利用歐式距離計算測試集的每一幅影象與訓練集的每一幅影象的距離,然後選擇距離最近的影象作為識別的結果。這種直接計算距離的方式直觀,但是有乙個非常大的缺陷 計算量太大。...
基於PCA的人臉識別步驟
人臉識別是乙個有監督學習過程,首先利用訓練集構造乙個人臉模型,然後將測試集與訓練集進行匹配,找到與之對應的訓練集頭像。最容易的方式是直接利用歐式距離計算測試集的每一幅影象與訓練集的每一幅影象的距離,然後選擇距離最近的影象作為識別的結果。這種直接計算距離的方式直觀,但是有乙個非常大的缺陷 計算量太大。...