(一):彩色图像转灰度图 1、 设计任务 1) 读入彩色和灰度图像并显示; 2) 对彩色图像转化为灰度图像并显示; 3) 比较两种方法的效果
2、 设计目的 1) 掌握彩色图转灰度图的基本原理与方法; 2) 初步掌握 MATLAB 的使用方法; 3) 了解 MATLAB 在数字信号处理,尤其是图像处理中显现出来的优势
3、 源代码 % 把 RGB 格式的图片转换为 YUV 格式
clear; clc; x=imread('lena512
BMP'); [line,row,dim]=size(x); x1=double(x); % 数据类型转换 subplot(1,3,1) % 分割当前绘图窗口为(1,3)的区域,显示此图片与 1 号区域 imshow(uint8(x)) % 数据类型转换,并且显示当前图片 title('原图'); % 矩阵乘,根据【RGB】转【YUV】关系转灰度图 Y1=0
299*x(:,:,1)+0
587*x(:,:,2)+0
114*x(:,:,3); y1=[round(Y1)]; % 取整 subplot(1,3,2) imshow(uint8(y1)) title('根据各分量转换关系转换后图片'); % 求 RGB 各个分量均值转灰度图 Y2=(x(:,:,1)+x(:,:,2)+x(:,:,3))/3; y2=[round(Y2)]; subplot(1,3,3) imshow(uint8(y2)) title('求均值转换后图片'); 图片无法显示哈
图(1)彩色转灰度图程序运行结果 4、 结果分析 由运行结果可以看出,根据 RGB 到 YUV 各个分量关系转换得到的灰度图比较真实,而用简单的求RGB 各个分量的均值转弧度图,其结果很不理想,图片基本