数字图像处理实验二 图像灰度变换
数字图像灰度图像二值化实验报告matlab实现1
数字图像灰度图像二值化实验报告matlab
实现
数字图像处理
实验报告
实验二灰度图像的二值化处理
学号
姓名
日期
实验二灰度图像的二值化处理
一、实验目的
图像二值化是数字图像处理技术中的一项基本技术,二值化图像的显示与打印十分方便,存储与传输也非常容易,在目标识别、图像分析、文本增强、字符识别等领域得到广泛应用。图像二值化是将灰度图像转化为只有黑白两类像素的图像,大多采用阈值化算法处理。在不同的应用中,阈值的选取决定着图像特征信息的保留。因此,图像二值化技术的关键在于如何选取阈值。
二、实验内容
1、编程绘制数字图像的直方图。
2、灰度图像二值化处理。
三、实验要求
1、自己选择灰度图像。
2、选择多种阈值分割算法,并比较和分析图像二值化处理的结果。
3、使用VC++编程序。
四、设计思想(阈值选取算法)
灰度图像是指只含亮度信息,不含色彩信息的图像,将彩色图像转化成为灰度图像的过程称为图像的灰度化处理。图像的二值化处理就是将图像上的点的灰度置为0或255,也就是使整个图像呈现出明显的黑白效果。即将256个亮度等级的灰度图像通过适当的阀值选取而获得仍然可以反映图像整体和局部特征的二值化图像。阀值分割选取算法有:典型的全局阀值算法的Otsu 算法、局部阀值方
法中的Bersen算法、灰度拉伸法、直方图方法等等。
1.Otsu算法的设计思想:设阀值将图像分割成两组,一组灰度对应目标,
另一组灰度对应背景,则这两组灰度值的类内方差最小,两组的类间方差最大。对图像设阈值将图像分割成两组,一组灰度对应目标,另一组灰度对应背景,则这两组灰度值的类内方差最小,两组的类间方差最大。
图像的灰度变换
昆明理工大学(数字图像处理)实验报告
实验名称:图像的灰度变换
专业:电子信息科学与技术姓名:
学号:成绩:
[实验目的]
1、理解并掌握灰度变换的基本原理和方法。
2、编程实现图像灰度变换。
3、分析不同的灰度变换方法对最终图像效果的影响。
[实验内容]
1、灰度的线性变换;
2、灰度的非线性变换;
3、图像的二值化;
4、图像的反色处理;
[实验原理]
图像的灰度变换 ( gray scale transformation, GST ) 处理是图像增强处理技术中一种非常基础、直接的空间域图像处理方法,也是图像数字化软件和图像显示软件的一个重要组成部分。灰度变换是指根据某种目标条件按一定变换关系逐点改变原图像中每一个像素灰度值的方法。目的是为了改善画质,使图像的显示效果更加清晰。灰度变换有时又被称为图像的对比度增强或对比度拉伸。从图像输入装置得到的图像数据, 以浓淡表示, 各个像素与某一灰度值相对应。设原图像像素的灰度值 D=f(x,y),处理后图像像素的灰度值D′= g (x,y),则灰度增强可表示为:
g(x,y)=T[f(x,y)]
或 D ′= T (D)
要求 D 和 D′都在图像的灰度范围之内。函数 T(D) 称为灰度变换函数,它描述了输入灰度值和输出灰度值之间的转换关系。灰度变换主要针对独立的像素点进行处理,通过改变原始图像数据所占据的灰度范围而使图像在视觉上得到良好的改观,没有利用像素点之间的相互空间关系。因此,灰度变换处理方法也叫做点运算法。点运算可以按照预定的方式改变一幅图像的灰度直方图。除了灰度级的改变是根据某种特定的灰度变换函数进行之外,点运算可以看做是“从像素到像素”的复制操作。根据g(x,y)=T[f(x,y)] , 可以将灰度变换分为线性变换和非线性变换。
数字图像处理实验报告
目录
实验一:数字图像的基本处理操作 (4)
:实验目的 (4)
:实验任务和要求 (4)
:实验步骤和结果 (5)
:结果分析 (8)
实验二:图像的灰度变换和直方图变换 (9)
:实验目的 (9)
:实验任务和要求 (9)
:实验步骤和结果 (9)
:结果分析 (13)
实验三:图像的平滑处理 (14)
:实验目的 (14)
:实验任务和要求 (14)
:实验步骤和结果 (14)
:结果分析 (18)
实验四:图像的锐化处理 (19)
:实验目的 (19)
:实验任务和要求 (19)
:实验步骤和结果 (19)
:结果分析 (21)
实验一:数字图像的基本处理操作
:实验目的
1、熟悉并掌握MATLAB、PHOTOSHOP等工具的使用;
2、实现图像的读取、显示、代数运算和简单变换。
3、熟悉及掌握图像的傅里叶变换原理及性质,实现图像的傅里叶变换。:实验任务和要求
1.读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分
成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。
2.对两幅不同图像执行加、减、乘、除操作,在同一个窗口内分成五个子窗口来分
别显示,注上文字标题。
3.对一幅图像进行平移,显示原始图像与处理后图像,分别对其进行傅里叶变换,
显示变换后结果,分析原图的傅里叶谱与平移后傅里叶频谱的对应关系。
4.对一幅图像进行旋转,显示原始图像与处理后图像,分别对其进行傅里
叶变换,显示变换后结果,分析原图的傅里叶谱与旋转后傅里叶频谱的
对应关系。
:实验步骤和结果
1.对实验任务1的实现代码如下:
a=imread('d:\');
数字图像处理实验报告(图像灰度变换处理)
数字图像处理实验报告
班级:
姓名:
学号:
数字图像处理实验报告
一.实验名称:图像灰度变换
二.实验目的:1 学会使用Matlab;
2 学会用Matlab软件对图像灰度进行变换,感受各种
不同的灰度变换方法对最终图像效果的影响。
三.实验原理:
Matlab中经常使用的一些图像处理函数:
读取图像:img=imread('filename'); //支持TIFF,JPEG,GIF,BMP,PNG,XWD等文件格式。
显示图像:imshow(img,G); //G表示显示该图像的灰度级数,如省略则默认为256。
保存图片:imwrite(img,'filename'); //不支持GIF格式,其他与imread相同。
亮度变换:imadjust(img,[low_in,high_in],[low_out,high_out]); //将low_in至high_in之间的值映射到low_out至high_out之间,low_in 以下及high_in以上归零。
绘制直方图:imhist(img);
直方图均衡化:histeq(img,newlevel); //newlevel表示输出图像指定的灰度级数。
像平滑与锐化(空间滤波):
w=fspecial('type',parameters);imfilter(img,w); //这两个函数结合将变得十分强大,可以实现photoshop里的任意滤镜。
图像复原:deconvlucy(img,PSF); //可用于图像降噪、去模糊等处理。
四.实验步骤:
1.获取实验用图像:Fig3.10(b).jpg. 使用imread函数将图像读入Matlab。
实验二 图像的灰度变换增强
实验二 图像的灰度变换增强
一、实验目的
1、 理解数字图像处理中点运算的基本作用;
2、 掌握对比度调整与灰度直方图均衡化的方法。
二、实验原理
1、对比度调整
如果原图像f (x , y )的灰度范围是[m , M ],我们希望对图像的灰度范围进行线性调整,调整后的图像g (x , y )的灰度范围是[n , N ],那么下述变换:
[]n m y x f m
M n
N y x g +---=
),(),(
就可以实现这一要求。
MATLAB 图像处理工具箱中提供的imadjust 函数,可以实现上述的线性变换对比度调整。imadjust 函数的语法格式为:
J = imadjust(I,[low_in high_in], [low_out high_out])
J = imadjust(I, [low_in high_in], [low_out high_out])返回原图像I 经过对比度调整后的新图像J 。其中[low_in high_in]为原图像中要变换的灰度范围,[low_out high_out]指定了变换后的灰度范围,灰度范围可以用 [ ] 空矩阵表示默认范围,默认值为[0, 1](注意:灰度范围只能在0~1之间)。
例:
I = imread('pout.tif');
J = imadjust(I, [0.3 0.7], [ ]); %输出灰度范围为默认范围,即为[0, 1] imshow(I), figure, imshow(J)
不使用imadjust函数,利用matlab语言直接编程也很容易实现灰度图像的对比度调整。但运算的过程中应当注意以下问题,由于我们读出的图像数据一般是uint8型,而在MATLAB的矩阵运算中要求运算变量为double型(双精度型)。因此读出的图像数据不能直接进行运算,必须将图像数据转换成双精度型数据。MATLAB中提供了这样的图像数据类型转换函数:im2double函数,其语法格式为:
遥感数字图像处理教程课后习题主要考点答案
《数字图像处理》
课程实习报告
( 2011 - 2012学年第 1 学期)
专业班级:地信09-2班
姓名:罗辉
学号:310905030213
指导老师:刘春国
-------------------------------
---------------
实习成绩:
教师评语:
教师签名:
年月日
实验一图像彩色合成
一、实验目的
在学习遥感数字图像彩色合成基础上,应用所学知识,基于遥感图像处理软件ENVI进行遥感数字图像彩色合成。
二、实验内容
彩色合成:利用TM图像can_tmr.img,实现灰度图像的密度分割、多波段图像的真彩色合成、假彩色合成和标准假彩色合成。
三、操作步骤
显示灰度图像:
1、打开ENVI4.7,单击FILE菜单,在下拉菜单中选择open image file 选项,
然后在弹出的对话框中选择can_tmr.img文件,单击打开。
2、在可用波段列表对话框中,选中某一波段图像,选中gray scale单选按钮,单击LOAD BAND按钮,显示一幅灰度图像。
3、在可用波段列表对话框中,选择其他某一波段图像,进行显示。
4、利用可用波段列表中的display按钮,同时有多个窗口显示多个波段图像。
5、链接显示。利用图像窗口tool菜单下的link子菜单link display实现多图像的链接显示。
6、使用tool菜单下的Cursor Location/value和pixel Locator功能在确定像素的值和位置。
伪彩色合成
1、打开ENVI4.7,单击FILE菜单,在
下拉菜单中选择open image file 选
数字图像处理实验 图像生成及取反 图像亮(灰)度变换
数字图像处理实验报告
实验一图像处理入门实验:图像生成及取反
1、【实验目的】
了解matlab有关图像的基本操作,如图像的读写,显示等。熟悉调试环境。
2、【实验步骤】
(1)Matlab workspace中生成一幅大小为512×512像素的8位灰度图, 背景为黑色,中心有一个宽40像素高20像素的白色矩形。
(2)将这幅图像保存为文件test.bmp。
•从文件test.bmp中读出图像到变量I。
•在Matlab图形界面中显示变量I所代表的图像。
•将获得的图像的格式分别转换为“*.tif”、“*.jpg”的格式保存,检查图像文件数据量的大小。
•将图片保存或拷贝到MATLAB程序组根目录的“work”文件夹中,以便后面的实验利用。
•将test.bmp 编程取反,观察效果。
3、【实验源码】
(1)图像生成
B=zeros(512,512)
(2) 在图像中生成宽40像素高20像素的白色矩形
for i=246:266
for j=246:266
B(i,j)=1;
end
end
(3)图像保存
imwrite(B,'test.bmp')
(4)读出图像到变量I并另存为“*.tif”、“*.jpg”的格式
e=imread('test.bmp')
imshow(e)
imwrite(e,'test.tif')
imwrite(e,'test.jpg')
(5)将test.bmp 编程取反
for j=1:512
for k=1:512
if(i(j,k)==255)
i(j,k)=0;
else
i(j,k)=255;
end;
end
end
《数字图像处理》课程设计题目
《数字图像处理》课程设计题目
实验一图像变换
内容:
1.对标准图像进行离散傅里叶变换并在计算机屏幕观测其频谱,验证二维傅里叶变换的常用性质。
2.对标准图像进行离散余弦变换并在计算机屏幕观测其频谱,验证二维余弦变换的常用性质,了解二维余弦变换用在图像压缩中的原因。
3.对标准图像离散傅里叶变换和离散余弦变换的频谱进行比较。
4.对标准图像进行Walsh变换并在计算机屏幕观测其频谱。
基本要求:
1.加深理解DFT、DCT、Walsh变换的原理和基本性质。
2.掌握DFT、DCT变换的算法流程,并能根据流程编程实现。
3.分析变换域内频谱的特征。
实验二灰度图的线性变换
内容:
灰度的线性变换就是将图像中所有的点的灰度按照线性灰度变换函数进行变换。该线性灰度变换函数是一个一维线性函数:
灰度变换方程为:
式中参数为纯属函数的斜率,为纯属函数在y轴上的截距,表示输入图像的灰度,表示输出图像的灰度。当时,输出图像的对比度将增大;当时,输出图像的对比度将减小;当时,操作仅使所有像素的灰度值上移或下移,其效果是使整个图像更暗或更亮;如果,暗区域将变亮,亮区域将变暗,点运算完成了图像求补运算。特殊情况下,当时,输出图像和输入图像相同;当时,输出图像的灰度正好反转。
基本要求:
1、理解和掌握线性变换的原理和应用。
2、分析经线性变换后图像的效果。
本实验要求学生完成程序的设计。
实验三灰度窗口变换
内容:
灰度窗口变换是将某一区间的灰度级和其它部分(背景)分开。下图可说明灰度窗口变换的原理,其中[gold1, gold2]为灰度窗口。
数字图像处理实验报告:灰度变换与空间滤波(附带程序,不看后悔)
1.灰度变换与空间滤波
一种成熟的医学技术被用于检测电子显微镜生成的某类图像。为简化检测任务,技术决定采用数字图像处理技术。发现了如下问题:(1)明亮且孤立的点是不感兴趣的点;(2)清晰度不够,特别是边缘区域不明显;(3)一些图像的对比度不够;(4)技术人员发现某些关键的信息只在灰度值为I1-I2的范围,因此,技术人员想保留I1-I2区间范围的图像,将其余灰度值显示为黑色。(5)将处理后的I1-I2范围内的图像,线性扩展到0-255灰度,以适应于液晶显示器的显示。请结合本章的数字图像处理处理,帮助技术人员解决这些问题。
1.1问题分析及多种方法提出
(1)明亮且孤立的点是不够感兴趣的点
对于明亮且孤立的点,其应为脉冲且灰度值为255(uint8)噪声,即盐噪声,为此,首先对下载的细胞图像增加盐噪声,再选择不同滤波方式进行滤除。
均值滤波:
均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标像素为中心的周围8个像素,构成一个滤波模板,即去掉目标像素本身),再用模板中的全体像素的平均值来代替原来像素值。
优点:速度快,实现简单;
缺点:均值滤波本身存在着固有的缺陷,即它不能很好地保护图像细节,在图像去噪的同时也破坏了图像的细节部分,从而使图像变得模糊,不能很好地去除噪声点。
其公式如下:
使用矩阵表示该滤波器则为:
中值滤波:
滤除盐噪声首选的方法应为中值滤波,中值滤波法是一种非线性平滑技术,它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值。
数字图像处理实验报告:灰度变换与空间滤波(附带程序,不看后悔)_1
数字图像处理实验报告灰度变换与空间滤波(附带程序,不看后悔)
1.灰度变换与空间滤波
一种成熟的医学技术被用于检测电子显微镜生成的某类图像。为简化检测任务,技术决定采用数字图像处理技术。发现了如下问题:(1)明亮且孤立的点是不感兴趣的点;(2)清晰度不够,特别是边缘区域不明显;(3)一些图像的对比度不够;(4)技术人员发现某些关键的信息只在灰度值为I1-I2 的范围,因此,技术人员想保留I1-I2 区间范围的图像,将其余灰度值显示为黑色。(5)将处理后的I1-I2 范围内的图像,线性扩展到0-255 灰度,以适应于液晶显示器的显示。请结合本章的数字图像处理处理,帮助技术人员解决这些问题。
1.1 问题分析及多种方法提出
(1)明亮且孤立的点是不够感兴趣的点
对于明亮且孤立的点,其应为脉冲且灰度值为255(uint8)噪声,即盐噪声,为此,首先对下载的细胞图像增加盐噪声,再选择不同滤波方式进行滤除。
均值滤波:均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标像素为中心的周围8 个像素,构成一个滤波模板,即去掉目标像素本身),再用模板中的全体像素的平均值来代替原来像素值。
优点:速度快,实现简单;
缺点:均值滤波本身存在着固有的缺陷,即它不能很好地保护图像细节,在图像去噪的同时也破坏了图像的细节部分,从而使图像变得模糊,不能很好地去除噪声点。
其公式如下:
使用矩阵表示该滤波器则为:
中值滤波:
滤除盐噪声首选的方法应为中值滤波,中值滤波法是一种非线性平滑技术,它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值。
数字图像处理实验02图像灰度级修正
数字图像处理实验02图像灰度级修正
一、数字图像处理实验
实验二图像灰度级修正
一、实验目的
掌握常用的图像灰度级修正方法,即图象的灰度变换法和直方图均衡化法,加深对灰度直方图的理解。
观察图象的增强效果,对灰度级修正前后的图像加以比较。
二、实验内容
1. 编程实现图像的灰度变换。改变图像输入、输出映射的灰度参数范围(拉伸和反比),观看图像处理结果。
2. 修改可选参数gamma 值,使其大于1、等于1和小于1,观看图像处理结果。
3. 对图像直方图均衡化处理,显示均衡前后的直方图和图像。
三、实验原理
灰度级修正是图像空间域的增强方法,它以图像的灰度映射变换为基础,直接对图像中的像素进行处理,主要是利用点运算来修改图像像素的灰度。其变换函数通常可写作如下的简单形式:)(r T s = (2.1)
其中,r 表示图像f 中相应点(x,y)的灰度,s 表示图像g 中相应点(x,y)的灰度。
1. 灰度变换
1)图像增强常用的三个基本灰度变换类型函数有:线性的(正
比和反比)、对数的(对数和反对数变换)、幂次的(n 次幂和n 次方根变换)。
线性变换为最一般的函数。假定原图像),(y x f 的灰度范围为],[b a ,希望变换后图像),(y x g 的灰度范围扩展至],[d c ,则线性变换可表示为公式(2.2)所示:
图1.2 灰度范围的线性变换
2)幂次变换
用于图像获取、打印和显示的各种装置根据幂次规律进行响应。幂次变换的基本形式为:
γcr s = (2.3)
其中s 为变换后的图像灰度级,c 和r 为正常数。当1==r c 时,将简化为正比变换。幂次等式中的指数是指伽马值。用于修正幂次响应现象的过程称作伽马校正。
数字图像处理实验报告-线性灰度变换-图像几何变换-频域图像增强技术-图像分割
线性灰度变换
一、实验目的
1结合实例学习如何在视频显示程序中增加图像处理算法;
2理解和掌握图像的线性变换和直方图均衡化的原理和应用;
3了解平滑处理的算法和用途,学习使用均值滤波、中值滤波和拉普拉斯锐化进行图像增强处理的程序设计方法;
4 了解噪声模型及对图像添加噪声的基本方法。
二、实验原理
1 灰度线性变换就是将图像中所有点的灰度按照线性灰度变换函数进行变换。 )],([),(y x f T y x g =
⎪⎩
⎪⎨⎧<≤+-<≤+-≤≤=255),(]),([),( ]),([),(0 ),(),(y x f b g b y x f b y x f a g a y x f a y x f y x f y x g b a γβα
n y m x ,2,1 ,,,2,1==
2 直方图均衡化通过点运算将输入图像转换为在每一级上都有相等像素点数的输出图像。按照图像概率密度函数PDF 的定义:
1,...,2,1,0 )(-==L k n
n r p k k r 通过转换公式获得:
1,...,2,1,0 )()(00-====∑∑==L k n n r p r T s k j k j j j r k k
3 均值(中值)滤波是指在图像上,对待处理的像素给定一个模板,该模板包括了其周围的临近像素。将模板中的全体像素的均值(中值)来代替原来像素值的方法。
4 拉普拉斯算子如下:
⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡--------111181111 拉普拉斯算子首先将自身与周围的8个像素相减,表示自身与周围像素的差异,再将这个差异加上自身作为新像素的灰度。
实验2 灰度增强图像
实验2 灰度增强图像
一、实验目的
通过本实验使学生掌握使用MATLAB 对灰度图像进行空域增强的目的,加深对空域图像增强的理解。
二、实验原理
本实验是基于数字图像处理课程中的图像变换和增强理论来设计的。
本实验的准备知识:教材第三章,空域图像增强方法。重点如下:
1、直方图和直方图均衡
通过实验领悟图像的直方图的含义,加深对图像直方图概念的理解,并且能够掌握直方
图均衡的方法和效果。
画图像的直方图命令, imhist(A)
直方图均衡命令, Aeq=histeq(A)
2、基本灰度变换
3、同屏显示图像的函数
图形窗口分区的命令为 subplot, 例如subplot (2,2,1) 是将图形窗分为2×2的4个
区,在第1个区画图。示例
figure
subplot(1,2,1) imshow(A);
subplot(1,2,2) imshow(Aeq);
将图形窗口分为两个区,分别显示图像A和Aeq。
三、实验内容
(一)直方图均衡
1、读入lena_gray.tif 图像文件,画出其直方图,并解释之;
2、对该图像进行直方图均衡,显示均衡后的图像及其直方图,并解释之;
3、将均衡后的图像存为lena_gray_1.tif 文件。
4、再将lena_gray_1.tif 文件读入并重复上述过程,说明增强效果并解释之。
(二)图像灰度变换
读入lena_gray.tif 文件,对其灰度进行下列调整,并显示图像:
(1)将图像的灰度降低70%,同屏显示原图像和灰度调整后图像;
(2)将图像灰度加上一个值(如50),使图像变亮,编程,同屏显示原图像和灰度调
数字图像处理灰度变换.
7
分段线性变换
分段线性变换曲线图
g(x,y)
L:表示图像总的灰度级数
L-1
d
斜率为K
拐点2
c 0 a b
拐点1 L-1
Q:如何对灰度区间进行扩展和压缩?
f(x,y)
分段线性变换
上图中大部分像素灰度级分布在[a,b],
小部分像素的灰度级超出了此区间,则可以
在[a,b]区间内作线性变换,超出此区间
的灰度可以变换为常数或保持不变。L的数学
17
灰度变换
Thanks
The End
18
的视觉特性,因为人眼对高亮度的分辨率要高于对低
亮度的分辨率。
意义??
对数变换
13
非线性变换 灰度变换
指数变换的效果则与之相反,一般可表示为:
g ( x, y) b
幂律变换一般可表示为:
c[ f ( x , y ) a ]
1
g ( x, y) c[ f ( x, y)]
式中: c、γ 是正常数。不同的γ 系数对灰度变换具有不同的 响应。若γ 小于1,它对灰度进行非线性放大,使得图像的整 体亮度提高,它对低灰度的放大程度大于高灰度的放大程度, 导致图像的低灰度范围得以扩展而高灰度范围得以压缩。若γ 大于1,则相反。
意义???
指数变换和幂律变换
14
图像处理灰度变换实验
一 . 实验名称: 空间图像增强(一)
一. 实验目的
1. 熟悉和掌握利用
matlab 工具进行数字图像的读、写、显示、像素处理等
数字图像处理的基本步骤和流程。
2. 熟练掌握各种空间域图像增强的基本原理及方法。
3. 熟悉通过灰度变换方式进行图像增强的基本原理、方法和实现。
4. 熟悉直方图均衡化的基本原理、方法和实现。
二. 实验原理
(一)数字图像的灰度变换
灰度变换是图像增强的一种经典而有效的方法。 灰度变换的原理是将图像的每一个像素的灰度值通过一个函数, 对应到另一个灰度值上去从而实现灰度的变换。常见的灰度变换有线性灰度变换和非线性灰度变换, 其中非线性灰度变换包括对数变换和幂律(伽马)变换等。
1、线性灰度变换
1)当图像成像过程曝光不足或过度, 或由于成像设备的非线性和图像记录设备动态范围太窄等因素, 都会产生对比度不足的弊病, 使图像中的细节分辨不清,图像缺少层次。 这时,可将灰度范围进行线性的扩展或压缩, 这种处理过程被称为图像的线性灰度变换。 对灰度图像进行线性灰度变换能将输入图像的灰度值的动态范围按线性关系公式拉伸扩展至指定范围或整个动态范围。
2)令原图像 f(x,y)的灰度范围为 [a,b],线性变换后得到图像 g(x,y),其灰度范围为 [c,d],则线性灰度变换公式可表示为
d , f ( x, y) b
g(x, y)
d
c
[ f (x, y) a] c, a f ( x, y) b (1)
b a
a
c, f ( x, y)
由 (1)式可知,对于介于原图像 f(x,y)的最大和最小灰度值之间的灰度值,可通过线性变换公式, 一一对应到灰度范围 [c,d]之间,其斜率为 (d-c)/(b-a);对于小于原
【数字图像处理】灰度变换
【数字图像处理】灰度变换
原⽂链接:
作者:
图像的空间域滤波,其对像素的处理都是基于像素的某⼀邻域进⾏的。本⽂介绍的图像的灰度变换则不同,其对像素的计算仅仅依赖于当前像素和灰度变换函数。
灰度变换也被称为图像的点运算(只针对图像的某⼀像素点)是所有图像处理技术中最简单的技术,其变换形式如下:
s=T(r)s=T(r)
其中,T是灰度变换函数;r是变换前的灰度;s是变换后的像素。
图像灰度变换的有以下作⽤:
改善图像的质量,使图像能够显⽰更多的细节,提⾼图像的对⽐度(对⽐度拉伸)
有选择的突出图像感兴趣的特征或者抑制图像中不需要的特征
可以有效的改变图像的直⽅图分布,使像素的分布更为均匀
常见的灰度变换
灰度变换函数描述了输⼊灰度值和输出灰度值之间变换关系,⼀旦灰度变换函数确定下来了,那么其输出的灰度值也就确定了。可见灰度变换函数的性质就决定了灰度变换所能达到的效果。⽤于图像灰度变换的函数主要有以下三种:
线性函数(图像反转)
对数函数:对数和反对数变换
幂律函数:n次幂和n次开⽅变换
上图给出了⼏种常见灰度变换函数的曲线图,根据这⼏种常见函数的曲线形状,可以知道这⼏种变换的所能达到的效果。例如,对数变换和幂律变换都能实现图像灰度级的扩展/压缩,另外对数变换还有⼀个重要的性质,它能压缩图像灰度值变换较⼤的图像的动态范围(例如,傅⽴叶变换的频谱显⽰)。
线性变换
令r为变换前的灰度,s为变换后的灰度,则线性变换的函数:
s=a⋅r+bs=a⋅r+b
其中,a为直线的斜率,b为在y轴的截距。选择不同的a,b值会有不同的效果:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二图像灰度变换实验
一、实验目的
熟悉亮度变换函数的使用
熟悉灰度图像的直方图的表示;
掌握图像增强的基本方法:灰度变换、直方图均衡;
二、实验内容
灰度线性变换、灰度直方图、直方图均衡处理;
灰度变换是图像增强的一种重要手段,使图像对比度扩展,图像更加清晰,特征更加明显。灰度级的直方图给出了一幅图像概貌的描述,通过修改灰度直方图来得到图像增强。
三、实验原理
1.函数imadjust
函数imadjust是对灰度图像进行亮度变换的基本命令,语法为:
g = imadjust(f, [low_in high_in], [low_out high_out], gamma)
将图像f中的亮度值(灰度值)映射到新图像g中,即将low_in至high_in 之间的值映射到low_out至high_out之间的值。low_in以下的灰度值映射为
low_out,high_in以上的灰度值映射为high_out,函数imadjust的矩阵[ ]内参数均指定在0和1之间,[low_in high_in]和[low_out high_out]使用空矩阵[ ]会得到默认值[0 1]。若high_out小于low_out,则输出图像会反转。
参数gamma指定了曲线(变换函数)的形状,若gamma小于1,则映射
被加权至更高(更亮)的输出值;若gamma大于1,则映射被加权至更低(更暗)的输出值。若省略了函数的参量gamma,则gamma默认为1——即线性映射。
>>f = imread(‘filename’)
>>imshow(f)
>>g1 = imadjust(f, [0 1], [1 0]); %图像反转
>>figure, imshow(g1) %figure命令表示同时显示多个窗口
>>g2 = imadjust(f, [0.5 0.75], [0 1]);
%将0.5至0.75之间的灰度级扩展到范围0和1之间
>>figure, imshow(g2)
>>g3 = imadjust(f, [ ], [ ], 2) %使用gamma值
>>figure, imshow(g3)
2.直方图处理与函数绘图
图像的直方图定义为离散函数:
h(r k) = n k
绘制图像的直方图,函数imhist,语法为:
h = imhist(f, b)
f为输入图像,h为直方图h(r k),b是用于形成直方图的灰度级个数,若b 省略,则默认值为256。
函数numel(f)可给出图像f的象素个数,有了它可归一化直方图:
p = imhist(f, b) / numel(f)
>>imhist(f) %MTALAB默认显示的图像f的直方图
MATLAB中其它一些有代表性的绘制函数选项:
(1)用条形图绘制直方图
函数bar(horz, v, width),其中,v是一个行(列)向量,它包含将被绘制的点;
horz是一个与v有相同维数的向量,它包含水平标度值的增量;width是一个在0到1之间的数,表示竖条宽度,width值为1时,竖条较明显;当
width的值为0时,竖条是简单的垂直线;width的默认值是0.8。在绘制条形图时,我们通常会将水平轴等分为几段,以便降低水平轴的分辨率。下面的语句将生成一副条形图,其水平轴以10个灰度级为一组:
>>h = imhist(f)
>>h1 = h(1:10:256)
>>horz = 1:10:256
>>bar(horz, h1)
>>axis([0 255 0 15000])
%axis函数设置了水平轴和垂直轴的最大和最小值,语法为:
%axis([horzmin horzmax vertmin vertmax])
>>set(gca, ‘xtick’, 0:50:255)
>>set(gca, ‘ytick’, 0:2000:15000)
%参数gca表示“获得当前轴”(即最终显示的图形的轴),参数xtick
和%ytick按所示的间隔设置水平轴和的垂直轴的刻度。
%这两个语句中,坐标轴的取值范围和刻度线都是人工设定的。使用函数% xlim(‘auto’)和ylim(‘auto’)可以自动设定坐标轴的取值范围和刻度线。(2)用杆状图绘制直方图
函数stem(horz, v, ‘color_linestyle_marker’, ‘fill’),参量
color_linestyle_marker来自下表的三个值:颜色_线形_标记
例如,stem(v, ‘r--s’)生成一副杆状图,其线条与标记点都为红色,线条为虚线,标记点为方形。若使用fill,且标记点为圆形、方形、菱形,则标记点的颜色会是color指定的颜色。
默认颜色是black黑色,默认线条为solid实线,默认标记点的形状是circle圆形。
>>h = imhist(f)
>>h1 = h(1:10:256)
>>horz = 1:10:256
>>stem(horz, h1, ‘fill’)
>>axis([0 255 0 15000])
>>set(gca, ‘xtick’, 0:50:255)
>>set(gca, ‘ytick’, 0:2000:15000)
(3)用曲线图绘制直方图
函数plot(X, Y, ‘color_linestyle_marker’)绘制以X、Y元素为横、纵坐标的曲线。plot(X, ‘color_linestyle_marker’)绘制以向量元素X的下标为横坐标、元素值为
纵坐标的连续曲线。plot的默认值为黑色无标记实线。
>>h = imhist(f)
>>plot(h) %使用默认值
>>axis([0 255 0 15000])
>>set(gca, ‘xtick’, 0:50:255)
>>set(gca, ‘ytick’, 0:2000:15000)
用以上四种方法绘制直方图得到的结果:
3.直方图均衡
直方图均衡化由函数histeq实现,语法为:
g = histeq(f, nlev)
式中f是输入图像,nlev是为输出图像指定的灰度级,其默认值为64,我
们要将nlev赋值为灰度级的最大可能数(通常为256)。
>>imshow(f)