資源簡介
本方法采用pca進行特征提取,knn分類器進行人臉識別。
代碼片段和文件信息
???????
function?accuracy=classifier_KNN(c_testsc_trainsK)
n=0;
tests=c_tests;????????????%測試樣本
trains=c_trains;??????????%訓練樣本
for?i=1:size(tests1)
????for?j=1:size(trains1)
????????dist(j)=(norm(tests(i:)-trains(j:)))^2;??%計算每個測試樣本與所有訓練樣本的歐氏距離
????end
????
???[distsortindex]=sort(dist);???%將距離按升序排列并返回元素所在的行數
?
???
???%----------K-階近鄰程序部分--------??
???nearK=index(1:K);?????%index(1:K):取距離最近的前K個樣本的標號,K取1,3,5,7
???max=-1;????????????????????????????????????????????????????????
???for?c=1:40????%orl時,c=1:40
???????cntK=length(find((floor(nearK/5)+1)==c));?%計算每一類別的數目
???????if?(cntK>max)
???????????max=cntK;????
???????????class=c;?????%取類別數目最多的類別的標號
???????end
???end
%******三種算法的公共部分,判別是否是同類*********
????if?class==(floor(i/5)+1)???%因為每相連的5個樣本為一類,計算該樣本的類別號
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????890??2009-12-14?19:14??pca_knn\classifier_NN.m
?????文件???????2472??2010-04-06?10:52??pca_knn\main_pca.m
?????文件????????462??2009-11-04?18:13??pca_knn\scaleForSVM.m
?????文件???????1083??2010-04-06?10:52??pca_knn\classifier_KNN.m
?????目錄??????????0??2010-04-06?10:51??pca_knn
-----------?---------??----------?-----??----
?????????????????4907????????????????????5
評論
共有 條評論