基于MATLAB的彩色图像灰度化处理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
第1章绪论............................................................................................... - 0 - 第2章设计原理......................................................................................... - 1 - 第3章彩色图像的灰度化处理...................................................................... - 2 - 3.1加权平均法. (2)
3.2平均值法 (3)
3.3最大值法 (4)
3.4举例对比 (5)
3.5结果分析 (7)
第4章结论 ............................................................................................. - 8 - 参考文献.................................................................................................... - 10 - 附录.......................................................................................................... - 11 -
基于Matlab的彩色图像灰度化处理
第1章绪论
在计算机领域中,灰度数字图像是每个像素只有一个采样颜色的图像。这类图像通常显示为从最暗的黑色到最亮的白色的灰度,尽管理论上这个采样可以是任何颜色的不同深浅,甚至可以是不同亮度上的不同颜色。灰度图像与黑白图像不同,在计算机图像领域中黑白图像只有黑色与白色两种颜色;灰度图像在黑色与白色之间还有许多级的颜色深度。但是,在数字图像领域之外,“黑白图像”也表示“灰度图像”,例如灰度的照片通常叫做“黑白照片”。在一些关于数字图像的文章中单色图像等同于灰度图像,在另外一些文章中又等同于黑白图像[1]。
彩色图像的灰度化技术在现代科技中应用越来越广泛, 例如人脸目标的检测与匹配以及运动物体目标的监测等等, 在系统预处理阶段, 都要把采集来的彩色图像进行灰度化处理, 这样既可以提高后续算法速度, 而且可以提高系统综合应用实效, 达到更为理想的要求。因此研究图像灰度化技术具有重要意义。
本设计是在MATLAB设计环境中完成的。Matlab的图像处理工具箱提供一套全方位的参照标准算法和图形工具,用于进行图像处理、分析、可视化和算法开发。可用其对有噪声图像或退化图像进行去噪声或还原、增强图像以获得更高清晰度、提取特征、分析形状和纹理以及对两个图像进行匹配等。
本文主要描述基于Matlab仿真软件,通过加权法平均法,平均值法,最大值法三种方法,实现彩色图像的灰度化处理,并对三种方法的处理结果进行分析对比。
第2章设计原理
将彩色图转化成为灰度图的过程称为图像的灰度化处理。彩色图像中的每个像素的颜色有R、G、B三个分量决定,而每个分量有255个中值可取,这样一个像素点可以有1600多万(255*255*255)的颜色的变化围。而灰度图像是R、G、B三个分量相同的一种特殊的彩色图像,其中一个像素点的变化围为255种,所以在数字图像处理中一般先将各种格式的图像转变成灰度图像以使后续的图像的计算量变得少一些。灰度图像的描述与彩色图像一样仍然反映了整幅图像的整体和局部的色度和亮度等级的分布和特征[2]。
在RGB模型中,如果R=G=B时,则彩色表示一种灰度颜色,其中R=G=B的值叫做灰度值。因此,灰度图像每个像素只需一个字节存放灰度值(又称强度值、亮度值),灰度围为0-255。本设计采用三种方法对图像进行灰度化处理。
a)加权平均法
根据重要性及其它指标,将三个分量以不同的权值进行加权平均。由于人眼对绿色的敏感最高,对蓝色敏感最低,因此,对RGB三分量进行加权平均能得到较合理的灰度图像。
b)平均值法
求出每个像素点的R、G、B三个分量的平均值,然后将彩色图像中的这个平均值赋
予给这个像素的三个分量。
c)最大值法
将彩色图像中的三分量亮度的最大值作为灰度图的灰度值。
本课程设计分别采用了以上三种设计方案,即加权平均法、平均值法和最大值法。在MATLAB中,通过编程实现了彩色图像的灰度化处理。
第3章彩色图像的灰度化处理
本设计采用的三种方法,都实现了对彩色图像的灰度化处理。下面分别对其作具体分析。
3.1加权平均法[3]
根据重要性及其它指标,将R、G、B三个分量以不同的权值进行加权平均。由于人眼对绿色的敏感度最高,对蓝色敏感度最低。因此,在MATLAB中我们可以按下式系统函数对RGB三分量进行加权平均能得到较合理的灰度图像。
f(i,j)=0.30R(i,j)+0.59G(i,j)+0.11B(i,j))
(3-1)
程序首先读取一个RGB格式的图象,然后调用已有的函数rgb2gray()来实现彩色图像灰度化。
图3.1加权平均法的图像灰度处理
3.2平均值法[3]
将彩色图像中的R、G、B三个分量的亮度求简单的平均值,将得到均值作为灰度值输出而得到灰度图。其表达式见下式:
f(i,j)=(R(i,j)+G(i,j)+B(i,j)) /3
(3-2)用size函数读取原图像图像的尺寸,并以该尺寸构建一个全零矩阵来存储用下面的方法产生的灰度图像。由于在此之前的语句创建之后图像为双精度型,因而我们采用uint8()将其转化成无符号整型。然后对原图像中的像素逐点处理,首先采用的是均值法,即将每个像素点上的R,G,B分量取其平均,将处理后均值作为该像素点的灰度值输出,对应代码中MyYuanLaiPic( i,j,k )/3语句,在对所有像素点处理完毕后即可实现彩色图像的灰度化处理。