资源简介
Algorithm Description
Recognizing objects from large image databases, histogram based methods have proved simplicity and usefulness in last decade. Initially, this idea was based on color histograms that were launched by swain [1]. This algorithm presents the first part of our proposed technique named as “Histogram processed Face Recognition” [2]
For training, grayscale images with 256 gray levels are used. Firstly, frequency of every gray-level is computed and stored in vectors for further processing. Secondly, mean of consecutive nine frequencies from the stored vectors is calculated and are stored in another vectors for later use in testing phase.
This mean vector is used for calculating the absolute differences among the mean of trained images and the test image. Finally the minimum difference found identifies the matched class with test image.
Recognition accuracy is of 99.75% (only one mis-match i.e. recognition fails on image number 4 of subject 17)
[1] M. J. Swain and D. H. Ballard, “Indexing via color histogram”, In Proceedings of third international conference on Computer Vision (ICCV), pages 390–393, Osaka, Japan, 1990.
[2] Fazl-e-Basit, Younus Javed and Usman Qayyum, "Face Recognition using processed histogram and phase only correlation ", 3rd IEEE International Conference on Emerging Technology pp. 238-242

代码片段和文件信息
function varargout = FR_Processed_histogram(varargin)
gui_Singleton = 1;
gui_State = struct(‘gui_Name‘ mfilename ...
‘gui_Singleton‘ gui_Singleton ...
‘gui_OpeningFcn‘ @FR_Processed_histogram_OpeningFcn ...
‘gui_OutputFcn‘ @FR_Processed_histogram_OutputFcn ...
‘gui_LayoutFcn‘ [] ...
‘gui_Callback‘ []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State varargin{:});
else
gui_mainfcn(gui_State varargin{:});
end
function FR_Processed_histogram_OpeningFcn(hobject eventdata handles varargin)
handles.output = hobject;
guidata(hobject handles);
global total_sub train_img sub_img max_hist_level bin_num form_bin_num;
total_sub = 40;
train_img = 200;
sub_img = 10;
max_hist_level = 256;
bin_num = 9;
form_bin_num = 29;
function varargout = FR_Processed_histogram_OutputFcn(hobject eventdata handles)
varargout{1} = handles.output;
%% 响应Training按钮
function train_button_Callback(hobject eventdata handles)
global train_processed_bin;
global total_sub train_img sub_img max_hist_level bin_num form_bin_num;
train_processed_bin(form_bin_numtrain_img) = 0;
K = 1;
train_hist_img = zeros(max_hist_level train_img);
for Z=1:1:total_sub % 共有40组图像
for X=1:2:sub_img %只是训练每组图像下的奇数图像
I = imread( strcat(‘ORL\S‘int2str(Z)‘\‘int2str(X)‘.bmp‘) );
[rows cols] = size(I);
for i=1:1:rows
for j=1:1:cols
if( I(ij) == 0 )
train_hist_img(max_hist_level K) = train_hist_img(max_hist_level K) + 1;
else
train_hist_img(I(ij) K) = train_hist_img(I(ij) K) + 1;
end
end
end
K = K + 1;
end
end
[r c] = size(train_hist_img);
sum = 0;
for i=1:1:c
K = 1;
for j=1:1:r
if( (mod(jbin_num)) == 0 )
sum = sum + train_hist_img(ji);
train_processed_bin(Ki) = sum/bin_num;
K = K + 1;
sum = 0;
else
sum = sum + train_hist_img(ji);
end
end
train_processed_bin(Ki) = sum/bin_num;
end
display (‘Training Done‘)
save ‘train‘ train_processed_bin;
%% 响应Testing按钮
function Testing_button_Callback(hobject eventdata handles)
global train_img max_hist_level bin_num form_bin_num;
global train_processed_bin;
global filename pathname I
load ‘train‘
test_hist_img(max_hist_level) = 0;
test_processed_bin(form_bin_num) = 0;
[rows cols] = size(I);
for i=1:1:rows
for j=1:1:cols
if( I(ij) == 0 )
test_hist_img(max_hist_level) = test_hist_img(max_hist_level) + 1;
else
test_hist_img(I(ij)) = test_hist_img(I(ij)) + 1;
end
end
end
[r c] = size(test_hist_img);
sum = 0;
K = 1;
%此处和Train中的不同为此处为只有一个图像
for j=1:1:c
if( (mod(jbin_num)) == 0 )
s
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2011-07-03 10:53 基于Matlab 直方图Histogram的人脸识别程序\
文件 25600 2011-03-31 16:57 基于Matlab 直方图Histogram的人脸识别程序\Face Recognition Algorithm Desc
文件 662310 2008-12-11 16:13 基于Matlab 直方图Histogram的人脸识别程序\Face_recognition_Histogram_processed_GUI.bmp
文件 4981 2011-03-31 19:28 基于Matlab 直方图Histogram的人脸识别程序\FR_Processed_histogram.asv
文件 8416 2011-03-31 19:25 基于Matlab 直方图Histogram的人脸识别程序\FR_Processed_histogram.fig
文件 5040 2011-03-31 19:31 基于Matlab 直方图Histogram的人脸识别程序\FR_Processed_histogram.m
目录 0 2011-06-17 18:45 基于Matlab 直方图Histogram的人脸识别程序\ORL\
目录 0 2011-06-17 18:44 基于Matlab 直方图Histogram的人脸识别程序\ORL\S1\
文件 2273 2011-06-17 18:35 基于Matlab 直方图Histogram的人脸识别程序\ORL\S1\1.jpg
文件 2395 2011-06-17 18:36 基于Matlab 直方图Histogram的人脸识别程序\ORL\S1\2.jpg
文件 2453 2011-06-17 18:39 基于Matlab 直方图Histogram的人脸识别程序\ORL\S1\3.jpg
文件 2394 2011-06-17 18:39 基于Matlab 直方图Histogram的人脸识别程序\ORL\S1\4.jpg
文件 7680 2011-06-17 18:44 基于Matlab 直方图Histogram的人脸识别程序\ORL\S1\Thumbs.db
目录 0 2011-06-17 18:44 基于Matlab 直方图Histogram的人脸识别程序\ORL\S2\
文件 2532 2011-06-17 18:39 基于Matlab 直方图Histogram的人脸识别程序\ORL\S2\1.jpg
文件 2583 2011-06-17 18:39 基于Matlab 直方图Histogram的人脸识别程序\ORL\S2\2.jpg
文件 2676 2011-06-17 18:39 基于Matlab 直方图Histogram的人脸识别程序\ORL\S2\3.jpg
文件 2788 2011-06-17 18:39 基于Matlab 直方图Histogram的人脸识别程序\ORL\S2\4.jpg
文件 2728 2011-06-17 18:39 基于Matlab 直方图Histogram的人脸识别程序\ORL\S2\5.jpg
文件 8192 2011-06-17 18:44 基于Matlab 直方图Histogram的人脸识别程序\ORL\S2\Thumbs.db
目录 0 2011-06-17 18:44 基于Matlab 直方图Histogram的人脸识别程序\ORL\S3\
文件 2784 2011-06-17 18:35 基于Matlab 直方图Histogram的人脸识别程序\ORL\S3\1.jpg
文件 2678 2011-06-17 18:35 基于Matlab 直方图Histogram的人脸识别程序\ORL\S3\2.jpg
文件 2585 2011-06-17 18:35 基于Matlab 直方图Histogram的人脸识别程序\ORL\S3\3.jpg
文件 7168 2011-06-17 18:44 基于Matlab 直方图Histogram的人脸识别程序\ORL\S3\Thumbs.db
目录 0 2011-06-17 18:45 基于Matlab 直方图Histogram的人脸识别程序\ORL\S4\
文件 2457 2011-06-17 18:35 基于Matlab 直方图Histogram的人脸识别程序\ORL\S4\1.jpg
文件 2446 2011-06-17 18:35 基于Matlab 直方图Histogram的人脸识别程序\ORL\S4\2.jpg
文件 2401 2011-06-17 18:35 基于Matlab 直方图Histogram的人脸识别程序\ORL\S4\3.jpg
文件 2598 2011-06-17 18:35 基于Matlab 直方图Histogram的人脸识别程序\ORL\S4\4.jpg
文件 7680 2011-06-17 18:45 基于Matlab 直方图Histogram的人脸识别程序\ORL\S4\Thumbs.db
............此处省略515个文件信息
- 上一篇:最优化 中国科学院大学 算法中的最优化资源
- 下一篇:contourlet工具箱
相关资源
- matlab_OFDM调制解调(来自剑桥大学)
- Matlab路面裂缝识别69319
- 高灵敏度GPS接收机MATLAB仿真,附捕获
- 基于MATLAB的质点弹道计算与外弹道优
- 阵列天线的matlab仿真
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
评论
共有 条评论