• 大小: 3KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2022-10-04
  • 语言: Matlab
  • 标签: 人脸识别  MATLAB  

资源简介

这个项目只有MATLAB文件,该文件是基于MATLAB实现人脸识别功能的源码

资源截图

代码片段和文件信息

%% derived from “Face Recognition With Radial Basis Function (RBF) Neural Networks“ 
%% which is written by M.J.ErS.Q.Wu J.W.Lu and H.L.Toh in 2002. 

clear all;
close all;
ratio = 4;
class_num = 40;
sample_num = 10;
row_0 = 112;
line_0 = 92;
row = ceil(row_0 / ratio);
line = ceil(line_0 / ratio);
row_line = min(row line);
rowline = row * line;
load orl_4;

right_num_test = [];
right_num_train = [];

disp(‘orl fisherface now begin‘);
right_num = [];
for count = 5
    tic;
    
    count
train_num = count;
    train_total = train_num * class_num;
test_num = sample_num - train_num;
    test_total = test_num * class_num;
    
    
    orl_train = zeros(rowline train_total);
    orl_m_all = zeros(rowline1);
    orl_m = zeros(rowlineclass_num);
for i = 1:class_num
        for j = 1:train_num
            kk = (i-1)*train_num + j;
            orl_temp = double(orl(::ji));
            %orl_temp = double(orl(::j+test_numi));
            for p = 1:row
                for q = 1:line
                      site = (p-1)*line + q;  
                      orl_train(site kk) = orl_temp(pq);
                end
            end
            orl_m_all = orl_m_all + orl_train(:kk);
            orl_m(:i) = orl_m(:i) + orl_train(:kk);
        end
        orl_m(:i) = orl_m(:i)/train_num;
    end
    orl_m_all = orl_m_all / train_total;
    
    orl_test = zeros(rowline test_total);
   for i = 1:class_num
        for j = 1:test_num
            kk = (i-1)*test_num + j;
            orl_temp = double(orl(::j+train_numi));
            %orl_temp = double(orl(::ji));
            for p = 1:row
                for q = 1:line
                    site = (p-1)*line + q;  
                    orl_test(site kk) = orl_temp(pq);
                end
            end
        end
    end        
%% -------- 1.Perform fisherface method to reduce the demension of the feature space -------- %%
        %%------- PCA -------%%
    Sb = zeros(rowlineclass_num);
    for i = 1:class_num
        Sb(:i) = orl_m(:i) - orl_m_all;
    end
%    Sb0 = (Sb * Sb‘) / class_num;  %% [rowline rowline]      

    Sw = zeros(rowlinetrain_total);
for i = 1:class_num
        for j = 1:train_num
            kk = (i-1)*train_num + j;
            Sw(:kk) = orl_train(:kk) - orl_m(:i);
        end    
    end

    St = zeros(rowlinetrain_total);
for i = 1:class_num
        for j = 1:train_num
            kk = (i-1)*train_num + j;
            St(:kk) = orl_train(:kk) - orl_m_all;
        end    
    end
%    St0 = (St * St‘) / train_total;  %% [rowline rowline]
    
    clear orl_m_all orl_m;
    
    ss1 = (St‘ * St) / train_total;   %% [train_total train_total]
%    rr = rank(ss);
    for rr1 = 164%rank(ss1)-1*class_num%:rank(ss1);%rank(ss1);%46;%
    
    [V_St D_St] = eig(ss1);
    dd = abs(eig(ss1));
    [dd_value dd_site] = sort(dd);
    temp2 = rr1;
    temp1 = tra

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-08-06 21:30  基于MATLAB的人脸识别源码\
     文件        9891  2009-02-05 21:14  基于MATLAB的人脸识别源码\shibie.m

评论

共有 条评论