1 单个彩色图像转灰度图像
思路:写入图像路径,读取图像,利用rgb2gray函数进行彩色图像转为灰度图像,保存或展示灰度图像。
clc;clear;close all;
fig_rgb= 'E:\dataset\91\pepper.bmp'
fig_gray= rgb2gray(fig_rgb);%RGB转灰度图像
imshow(fig_gray);%灰度图图像展示
2 批量彩色图像转灰度图像
%作用:彩色RGB三通道图像变为灰度图像
%过程:从电脑上根据路径调取图像,将彩色RGB三通道图像由 RGB 空间变换到 YCrCb
%空间,选取亮度通道,此时的图像为单通道的灰度图像,保存图像。
clc;clear;close all;
StrIn = 'E:\dataset\91\';% 变换前,图像文件夹路径
D = dir([StrIn '*.bmp']);%图像格式是bmp格式
StrOut='E:\dataset\91_gray\';%变换后的图像放置的文件夹路径
i=1;
for h= 1:length(D)
boot=imread([StrIn,getfield(D,{h,1},'name')]);
YCbCr = rgb2ycbcr(boot);%RGB到YCbC颜色空间转换
YCbCr_Y = YCbCr(:, :, 1);%对亮度分量Y进行提取
imwrite(YCbCr_Y,[StrOut '\' getfield(D,{h,1},'name')]);
end
说明:”E:\dataset\91\“和”E:\dataset\91_gray\“是文件夹路径,此处应根据个人情况更改