资源简介

本程序是根据经典的人脸PCA识别程序改进的,用于掌纹识别。该代码是用matlab编写的,解释详细,是学习PCA特征提取的很好的源代码。

资源截图

代码片段和文件信息

function T = CreateDatabase(TrainDatabasePath)
% Align a set of palm print images (the training set T1 T2 ...  TM )
%
% Description: This function reshapes all 2D images of the training database
% into 1D column vectors. Then it puts these 1D column vectors in a row to 
% construct 2D matrix ‘T‘.
%  

% Argument:     TrainDatabasePath      - Path of the training database
%
% Returns:      T                      - A 2D matrix containing all 1D image vectors.
%                                        Suppose all P images in the training database 
%                                        have the same size of MxN. So the length of 1D 
%                                        column vectors is MN and ‘T‘ will be a MNxP 2D matrix.
%
% See also: STRCMP STRCAT RESHAPE

% Original version by Amir Hossein Omidvarnia October 2007
%                     Email: aomidvar@ece.ut.ac.ir                  

%%%%%%%%%%%%%%%%%%%%%%%% File management
TrainFiles = dir(TrainDatabasePath);
Train_Number = 0;

for i = 1:size(TrainFiles1)
    if not(strcmp(TrainFiles(i).name‘.‘)|strcmp(TrainFiles(i).name‘..‘)|strcmp(TrainFiles(i).name‘Thumbs.db‘))
        Train_Number = Train_Number + 1; % Number of all images in the training database
    end
end

%%%%%%%%%%%%%%%%%%%%%%%% Construction of 2D matrix from 1D image vectors
T = [];
for i = 1 : Train_Number
    
    % I have chosen the name of each image in databases as a corresponding
    % number. However it is not mandatory!
    str = int2str(i);
    str = strcat(‘\‘str‘.bmp‘);
    str = strcat(TrainDatabasePathstr);
    
    [imgmap]=imread(str);
    img = ind2gray(imgmap);
    
    [irow icol] = size(img);
   
    temp = reshape(img‘irow*icol1);   % Reshaping 2D images into 1D image vectors
    T = [T temp]; % ‘T‘ grows after each turn                    
end

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1879  2011-09-01 21:00  palmprint PCA\CreateDatabase.m

     文件       2936  2011-09-01 12:47  palmprint PCA\EigenpalmCore.m

     文件       1304  2011-09-01 20:53  palmprint PCA\example.m

     文件       2541  2011-09-01 21:15  palmprint PCA\Recognition.m

     文件       3240  2011-09-01 18:31  palmprint PCA\TestDatabase\1.bmp

     文件       3240  2011-09-01 20:21  palmprint PCA\TestDatabase\2.bmp

     文件       3240  2011-09-01 20:22  palmprint PCA\TestDatabase\3.bmp

     文件       3240  2011-09-01 20:22  palmprint PCA\TestDatabase\4.bmp

     文件       3240  2011-09-01 20:22  palmprint PCA\TestDatabase\5.bmp

     文件       3240  2011-09-01 20:23  palmprint PCA\TestDatabase\6.bmp

     文件       3240  2011-09-01 18:31  palmprint PCA\TrainDatabase\1.bmp

     文件       3240  2011-09-01 20:21  palmprint PCA\TrainDatabase\2.bmp

     文件       3240  2011-09-01 20:22  palmprint PCA\TrainDatabase\3.bmp

     文件       3240  2011-09-01 20:22  palmprint PCA\TrainDatabase\4.bmp

     文件       3240  2011-09-01 20:22  palmprint PCA\TrainDatabase\5.bmp

     文件       3240  2011-09-01 20:23  palmprint PCA\TrainDatabase\6.bmp

     文件     202752  2011-09-01 23:23  palmprint PCA\新建 Microsoft Excel 工作表.xls

     目录          0  2011-10-23 11:42  palmprint PCA\TestDatabase

     目录          0  2011-10-23 11:42  palmprint PCA\TrainDatabase

     目录          0  2011-10-23 11:42  palmprint PCA

----------- ---------  ---------- -----  ----

               250292                    20


评论

共有 条评论