久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
人臉識別2dpca的matlab源碼
[打印本頁]
作者:
hitmengfei
時間:
2018-7-18 20:58
標題:
人臉識別2dpca的matlab源碼
人臉識別程序,歡迎大家參考
2dpca的matlab源程序:
function [eigvectors, eigvalues, meanData, newTrainData, newTestData] = TDPCA(trainData, testData, height, width, numvecs)
%2DPCA Two Dimensional Principal component analysis
% Usage:
% [eigvectors, eigvalues, meanData, newTrainData, newTestData] = TDPCA(trainData, testData, height, width, numvecs)
%
% trainData: Rows of vectors of training data points
% testData: Rows of vectors of testing data points
% height: height of the image matrix
% width: width of the image matrix
% numvecs: the needed number of eigenvectors
%
% meanData: Mean of all the data.
% newTrainData: The data after projection (mean removed)
% newTestData: The data after projection (mean removed)
% eigvectors: Each column of this matrix is a eigenvector of the convariance
% matrix defined in 2DPCA
% eigvalues: Eigenvalues of the convariance matrix
%
%
% Reference paper: J.Yang,D.Zhang,A.F.Frangi,and J.Yang.Two-dimensional
% pca:A new approach to a appearance-based face
% represenation and recognition. IEEE Trans.on
% PAMI,2004
% Written by Zhonghua Shen (cnjsnt_s@yahoo.com.cn), 2006.07
% Check arguments
if nargin ~= 5
error('usage: [eigvectors, eigvalues, meanData, newTrainData, newTestData] = TDPCA(trainData, testData, height, width, numvecs)');
end;
[nSam,nFea] = size(trainData);
fprintf(1,'Computing average matrix...\n');
meanDataVector = mean(trainData);
meanData = reshape(meanDataVector,height,width);
fprintf(1,'Calculating matrix differences from avg and 2DPCA covariance matrix L...\n');
L = zeros(width,width);
ddata = zeros(nSam,nFea);
for i = 1:nSam
ddata(i,:) = trainData(i,:)-meanDataVector;
dummyMat = reshape(ddata(i,:),height,width);
L = L + dummyMat'*dummyMat;
end;
L = L/nSam;
L = (L + L')/2;
fprintf(1,'Calculating eigenvectors of L...\n');
[eigvectors,eigvalues] = eig(L);
fprintf(1,'Sorting eigenvectors according to eigenvalues...\n');
[eigvectors,eigvalues] = sortem(eigvectors,eigvalues);
eigvalues = diag(eigvalues);
fprintf(1,'Normalize Vectors to unit length, kill vectors corr. to tiny evalues...\n');
num_good = 0;
for i = 1:size(eigvectors,2)
eigvectors(:,i) = eigvectors(:,i)/norm(eigvectors(:,i));
if eigvalues(i) < 0.00001
% Set the vector to the 0 vector; set the value to 0.
eigvalues(i) = 0;
eigvectors(:,i) = zeros(size(eigvectors,1),1);
else
num_good = num_good + 1;
end;
end;
if (numvecs > num_good)
fprintf(1,'Warning: numvecs is %d; only %d exist.\n',numvecs,num_good);
numvecs = num_good;
end;
eigvectors = eigvectors(:,1:numvecs);
if nargout == 5
fprintf(1,'Feature extraction and calculating new training and testing data...\n');
newTrainData = zeros(nSam,height*numvecs);
for i = 1:nSam
dummyMat = reshape(ddata(i,:),height,width);
newTrainData(i,:) = reshape(dummyMat*eigvectors,1,height*numvecs);
end
%testData
……………………
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
全部資料51hei下載地址:
2dpca的matlab源代碼.rar
(1.22 KB, 下載次數: 53)
2018-7-18 20:58 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
亚洲免费在线
|
久久99精品久久久久久噜噜
|
国产成人精品一区二三区在线观看
|
色视频在线免费观看
|
亚洲视频一区
|
国产美女自拍视频
|
亚洲91视频
|
91精品国产91久久久久久最新
|
久久在线
|
免费av电影网站
|
久久av一区二区三区
|
自拍偷拍第一页
|
婷婷综合在线
|
自拍偷拍中文字幕
|
亚洲日本免费
|
亚洲看片网站
|
男女网站免费
|
丝袜久久
|
国产午夜亚洲精品不卡
|
japanhd成人
|
天天操夜夜操
|
天堂亚洲
|
中文字幕国产精品
|
欧美一区二区三区视频
|
日韩精品一区二区三区视频播放
|
亚洲免费成人
|
一级黄a
|
欧美在线观看一区
|
一呦二呦三呦国产精品
|
欧美综合国产精品久久丁香
|
亚洲精品一区二区冲田杏梨
|
91国产精品
|
欧美三级视频
|
欧美午夜精品
|
一级a爱片久久毛片
|
国产精品视频一区二区三区四区国
|
免费a v网站
|
日韩一区二区三区视频在线观看
|
99精品免费视频
|
成人精品国产一区二区4080
|
欧美激情a∨在线视频播放 成人免费共享视频
|