AR人脸数据库pgm图片转换jpg,matlab实现程序
Posted jlqzzz
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AR人脸数据库pgm图片转换jpg,matlab实现程序相关的知识,希望对你有一定的参考价值。
AR人脸库(美国):(下载2600张)Purdue 大学 126人的彩色照片 光照 尺度和表情变化 126 people over 4 000 color images
虽然不是原始人脸库,但基本上就是论文中用到的,对于重现实验很有帮助!!120*165的灰度图,是pgm格式,要自己转换成jpg或其他格式共100张,前50张是男性人脸,后50张是女性人脸每个目标有26张图片,前13张为场景1,后13张为场景2每个场景的13张图片中,第1张是中性图像,剩余的12张每3张对应一个变换:表情变化、光照变化、戴眼镜+光照变化、戴围巾+光照变化
在Matlab下,转换图片格式相对比较容易,本文以 pgm 转 jpg 为例,贴出示例程序:
% 本示例程序将 /home/zya/AR/目录下面所有的 pgm 图片转换为 jpg 图片
% 如果仅对一张 pgm 图片作格式转换,请直接看 核心代码 部分。
function [ ] = pgm2jpg( )
% 读取指定目录下面所有的 pgm 格式图片
pgms = dir('/home/zya/AR/*.pgm');
num_pgms = length( pgms );
for i = 1 : num_pgms
pgm_file = fullfile( '/home/zya/AR' , pgms(i).name );
pgm = imread( pgm_file );
%%% 核心代码:将 pgm_file 转换为 jpg 格式图片,并保存. %%%
% 第一步,解析文件名 pgm_file ,注意,pgm_file 包括路径+文件名+后缀,如 pgm_file = '/home/zya/AR.pgm'
% path = '/home/zya/AR' name = 'AR' ext = '.pgm'
[ path , name , ext ] = fileparts( pgm_file ) ;
% 第二步,生成新的文件名
filename = strcat( name , '.jpg' );
% 第三步,生成文件全称
jpg_file = fullfile( '/home/zya/jpgs/' , filename ) ;
% 第四步,将 pgm 以 jpg_file 作为文件名,保存为 jpg 格式.
imwrite( pgm , jpg_file , 'jpg' );
end
end
关键函数: imwrite( Image , filename , format ),将 Image以 format 指定的格式保存,文件名称为 filename(相对路径或绝对路径都可以)
用python转换可以参考http://www.cnblogs.com/whu-zeng/p/5999440.html
以上是关于AR人脸数据库pgm图片转换jpg,matlab实现程序的主要内容,如果未能解决你的问题,请参考以下文章
毕业设计/Matlab系列基于PCA和BP神经网络的人脸识别系统(基于AR人脸库)