資源簡介
模式識(shí)別課程作業(yè),利用pca與svm進(jìn)行人臉識(shí)別。
matlab與libsvm環(huán)境

代碼片段和文件信息
function?[F?S]?=?extract_face_feature(X?Y?ratio?scale)
%?利用PCA對人臉數(shù)據(jù)進(jìn)行特征降維,并構(gòu)造成LibSVM數(shù)據(jù)輸入格式以及輸出到特征文件
%?X?:?人臉數(shù)據(jù),每行代表一個(gè)人臉
%?Y?:人臉數(shù)據(jù)標(biāo)簽,對應(yīng)與X的每行
%?ratio?:?PCA降維的能量大小,即降維后數(shù)據(jù)的最低能量大小,范圍0-1??當(dāng)scale矩陣存在是,無實(shí)際意義
%?scale?:?固定的PCA降維轉(zhuǎn)換矩陣,當(dāng)對于測試數(shù)據(jù)時(shí)需給定與訓(xùn)練數(shù)據(jù)相同的轉(zhuǎn)換矩陣,默認(rèn)不使用,僅當(dāng)測試數(shù)據(jù)時(shí)使用
%?F?:?降維提取后的人臉特征并轉(zhuǎn)換為LibSVM格式
%?S?:?PCA降維轉(zhuǎn)換矩陣,當(dāng)訓(xùn)練數(shù)據(jù)時(shí)輸出,測試數(shù)據(jù)與給定的scale相同
if?nargin?==?2
????ratio?=?0.95;
end
if?nargin?<=?3?%?當(dāng)前為訓(xùn)練數(shù)據(jù),進(jìn)行PCA降維處理
????%PCA降維
????[coeff?score?latent]?=?pca(X);
????%計(jì)算各個(gè)主成份累加的能量大小從而計(jì)算特征降維后的使用的維數(shù)
????energy?=?cumsum(latent)?./?sum(latent);
????[m?n]?=?size(energy);
????dim?=?-1;
????for?k?=?1?:?m
????????if?energy(k)?>?ratio
????????????dim?=?k;
????????????break;
????????end
????end
????%根據(jù)得出的降維維數(shù)大小,構(gòu)造降維后數(shù)據(jù)
????F?=?score(:?1?:?dim);
????S?=?coeff(:?1?:?dim);
elseif?nargin?==?4?%?當(dāng)前為測試數(shù)據(jù),使用scale矩陣進(jìn)行降維處理
????F?=?bsxfun(@minus?X?mean(X?1))?*?scale;
????S?=?scale;
end
%?按照LibSVM格式將特征數(shù)據(jù)保存到文件
if?nargin?<=?3
????fid?=?fopen(‘train.feature‘?‘w+‘);
elseif?nargin?==?4
????fid?=?fopen(‘test.feature‘?‘w+‘);
end
[m?n]?=?size(F);
for?k?=?1?:?m
????fprintf(fid?‘%d?‘?Y(k));?%?寫入類別標(biāo)簽
????for?l?=?1?:?n?-?1
????????fprintf(fid?‘%d:%f?‘?l?F(k?l));
????end
????fprintf(fid?‘%d:%f\n‘?n?F(k?n));
end
fclose(fid);
end
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????1906008??2015-02-02?17:08??附件\libsvm-3.20.rar
?????文件???????1567??2015-02-02?14:25??實(shí)驗(yàn)源代碼\extract_face_feature.m
?????文件???????2009??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s1\1.jpg
?????文件???????1960??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s1\10.jpg
?????文件???????1828??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s1\2.jpg
?????文件???????1985??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s1\3.jpg
?????文件???????1827??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s1\4.jpg
?????文件???????1854??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s1\5.jpg
?????文件???????1946??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s1\6.jpg
?????文件???????2021??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s1\7.jpg
?????文件???????1962??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s1\8.jpg
?????文件???????1993??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s1\9.jpg
?????文件???????2161??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s10\1.jpg
?????文件???????2159??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s10\10.jpg
?????文件???????2211??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s10\2.jpg
?????文件???????2235??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s10\3.jpg
?????文件???????2263??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s10\4.jpg
?????文件???????2185??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s10\5.jpg
?????文件???????2224??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s10\6.jpg
?????文件???????2200??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s10\7.jpg
?????文件???????2181??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s10\8.jpg
?????文件???????2179??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s10\9.jpg
?????文件???????2477??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s11\1.jpg
?????文件???????2414??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s11\10.jpg
?????文件???????2482??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s11\2.jpg
?????文件???????2507??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s11\3.jpg
?????文件???????2515??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s11\4.jpg
?????文件???????2562??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s11\5.jpg
?????文件???????2403??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s11\6.jpg
?????文件???????2462??2015-02-02?12:40??實(shí)驗(yàn)源代碼\FaceData\s11\7.jpg
............此處省略423個(gè)文件信息
評論
共有 條評論