RGB图片转换为灰度图批处理

工具性demo,从做视觉的时候可能会用到。即将一个文件夹中的rgb序列图像全部转换为灰度图保存,便于做一些其他处理。
不罗嗦,直接上源码吧:

imPath = 'img'; imExt = 'jpg'; %原图像文件夹名和图像格式
gray_imPath = 'img_gray';  %灰度图像文件夹名
% check if directory and files exist
if isdir(imPath) == 0
    error('USER ERROR : The image directory does not exist');
end

mkdir(gray_imPath); % create a folder
filearray = dir([imPath '\' '*.' imExt]);  % get all files in the directory % PC下使用'\', linux下使用'/'
NumImages = size(filearray,1); % get the number of images

if NumImages < 0
    error('No image in the directory');
end

for i=1:NumImages
    imgname = [imPath '\' filearray(i).name]; % get image name
    originalImage = imread(imgname); % load image
    grayImage = rgb2gray(originalImage);
    imwrite(grayImage, [gray_imPath '\' filearray(i).name]);
end

disp(' ... OK!');

你可能感兴趣的:(RGB图片转换为灰度图批处理)