数字图像处理实验一 图像的灰度变换

合集下载

3.图像增强—灰度变换 - 数字图像处理实验报告

3.图像增强—灰度变换 - 数字图像处理实验报告

计算机与信息工程学院验证性实验报告一、实验目的:1、了解图像增强的目的及意义,加深对图像增强的感性认识,巩固所学理论知识。

2、学会对图像直方图的分析。

3、掌握直接灰度变换的图像增强方法。

二、实验原理及知识点术语‘空间域’指的是图像平面本身,在空间与内处理图像的方法是直接对图像的像素进行处理。

空间域处理方法分为两种:灰度级变换、空间滤波。

空间域技术直接对像素进行操作其表达式为g(x,y)=T[f(x,y)]其中f(x,y)为输入图像,g(x,y)为输出图像,T是对图像f进行处理的操作符,定义在点(x,y)的指定领域内。

定义点(x,y)的空间邻近区域的主要方法是,使用中心位于(x,y)的正方形或长方形区域。

此区域的中心从原点(如左上角)开始逐像素点移动,在移动的同时,该区域会包含不同的领域。

T应用于每个位置(x,y),以便在该位置得到输出图像g。

在计算(x,y)处的g值时,只使用该领域的像素。

灰度变换T的最简单形式是使用领域大小为1×1,此时,(x,y)处的g值仅由f 在该点处的亮度决定,T也变为一个亮度或灰度级变化函数。

当处理单设(灰度)图像时,这两个术语可以互换。

由于亮度变换函数仅取决于亮度的值,而与(x,y)无关,所以亮度函数通常可写做如下所示的简单形式:s=T(r)其中,r表示图像f中相应点(x,y)的亮度,s表示图像g中相应点(x,y)的亮度。

三、实验内容:1、图像数据读出2、计算并分析图像直方图3、利用直接灰度变换法对图像进行灰度变换下面给出灰度变化的MATLAB程序f=imread('medicine_pic.jpg');g=imhist(f,256); %显示其直方图g1=imadjust(f,[0 1],[1 0]); %灰度转换,实现明暗转换(负片图像)figure,imshow(g1)%将0.5到0.75的灰度级扩展到范围[0 1]g2=imadjust(f,[0.5 0.75],[0 1]);figure,imshow(g2)g=imread('point.jpg');h=log(1+double(g)); %对输入图像对数映射变换h=mat2gray(h); %将矩阵h转换为灰度图片h=im2uint8(h); %将灰度图转换为8位图figure,imshow(h)四、实验仪器PC一台,MATLAB软件五、实验图片columbia480.bmp Fig0704(Vase).tif.tif六、实验程序及结果clc;clear allf=imread('columbia480.bmp');subplot 121;imshow(f)title('原始图像')subplot 122;imhist(f,256)title('原始图像直方图')%灰度转换,实现明暗转换(负片图像)f1=imadjust(f,[0 1],[1 0]);figure(2)subplot 121,imshow(f1)title('明暗转换后的图像')subplot 122;imhist(f1,256) title('明暗转换直方图')%将0.5到0.75的灰度级扩展到范围[0 1] f2=imadjust(f,[0.5 0.75],[0 1]); figure(3)subplot 121;imshow(f2)title('0.5到0.75的灰度级扩展到范围[0 1]的图像') subplot 122;imhist(f2,256) title('灰度级扩展直方图')原始图像0原始图像直方图100200明暗转换后的图像明暗转换直方图1002000.5到0.75的灰度级扩展到范围[0 1]的图像04灰度级扩展直方图100200clc;clear allm=imread('Fig0704(Vase).tif.tif');h=log(1+double(m)); %对输入图像对数映射变换 h=mat2gray(h); %将矩阵h 转换为灰度图片 h=im2uint8(h); %将灰度图转换为8位图 figuresubplot 221;imshow(m) title('原始图像') subplot 222;imhist(m) title('原始图像直方图') subplot 223;imshow(h)title('经log 变换后的图像') subplot 224;imhist(h)title('经log 变换后的图像直方图')原始图像原始图像直方图100200经log变换后的图像0经log 变换后的图像直方图100200教师签名:年 月 日。

数字图像处理实验报告(图像灰度变换处理)

数字图像处理实验报告(图像灰度变换处理)

数字图像处理实验报告班级:姓名:学号:数字图像处理实验报告一.实验名称:图像灰度变换二.实验目的: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。

2.产生灰度变换函数T1,使得:0.3r r < 0.35s = 0.105+2.6333(r–0.35) 0.35 ≤ r ≤ 0.65 1+0.3(r–1) r > 0.65用T1对原图像Fig3.10(b).jpg进行处理,打印处理后的新图像。

数字图像处理 实验 灰度变换

数字图像处理 实验 灰度变换
非线性拉伸不是对图像的整个灰度范围进行扩展而是有选择地对某一灰度值范围进行扩展其他范围的灰度值则有可能被压缩
XXXXXXX
实验名称图像灰度变换
实验时间年月日
专业姓名学号
预习操作座位号
教师签名总评
一、实验目的:
1.深入理解图像灰度变换的基本原理。
2.学习编程实现图像灰度变换,并分析各种算法的效果。
二、实验原理:
现行拉伸:
void CHangView::OnXxls()
{
// TODO: Add your command handler code here
long w,h;
unsigned char *lpsrc;
lpsrc=m_Image;
w=m_DibHead->biWidth;
h=m_DibHead->biHeight;
对数变换:对数变换的一般表达式为:s = c log(1 + r),其中C是一个常数。低灰度区扩展,高灰度区压缩。图像加亮、减暗。非线性拉伸不是对图像的整个灰度范围进行扩展,而是有选择地对某一灰度值范围进行扩展,其他范围的灰度值则有可能被压缩。
三、实验内容:
与实验二建立菜单方式相同。
建立相应的类向导使之建立函数(步骤与实验二相同),函数代码如下:
}
分段变换:
void CHangView::OnFenduan()
{
// TODO: Add your command handler code here
long w,h;
unsigned char *lpsrc;
lpsrc=m_Image;
w=m_DibHead->biWidth;
h=m_DibHead->biHeight;

数字图像处理实验一 图像的灰度变换

数字图像处理实验一  图像的灰度变换

数字图像处理实验报告(一)班级:测控1002姓名:刘宇学号:06102043实验一图像的灰度变换1. 实验任务熟悉MATLAB软件开发环境,掌握读、写图像的基本方法。

理解图像灰度变换在图像增强的作用,掌握图像的灰度线性变换和非线性变换方法。

掌握绘制灰度直方图的方法,掌握灰度直方图的灰度变换及均衡化的方法。

2. 实验环境及开发工具Windws2000/XPMATLAB 7.x3. 实验原理灰度变换灰度变换是图像增强的一种重要手段,它常用于改变图象的灰度范围及分布,是图象数字化及图象显示的重要工具。

在实际应用中,为了突出图像中感兴趣的研究对象,常常要求局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段线性拉伸:图1.1 不同的分段线性变换其对应的数学表达式为:直方图均衡化灰度直方图的横坐标是灰度级,纵坐标是该灰度级出现的频度,它是图像最基本的统计特征。

依据定义,在离散形式下,用rk 代表离散灰度级,用pr(rk)代表pr(r),并且有下式成立:n n r P kk r =)( 1,,2,1,010-=≤≤l k r k式中:nk 为图像中出现rk 级灰度的像素数,n 是图像像素总数,而nk/n 即为频数。

直方图均衡化处理是以累积分布函数变换法为基础的直方图修正法。

假定变换函数为ωωd p r T s r r)()(0⎰==(a) Lena 图像 (b) Lena 图像的直方图 图1.2 Lena 图像及直方图当灰度级是离散值时,可用频数近似代替概率值,即1,,1,010)(-=≤≤=l k r nn r p k kk r式中:l 是灰度级的总数目,pr(rk)是取第k 级灰度值的概率,nk 是图像中出现第k 级灰度的次数,n 是图像中像素总数。

所以积分可以表示为下列累计分布函数(cumulative distribution function, CDF)1,,1,010)()(00-=≤≤===∑∑==l k r r p nn r T s j kj j r kj j k k4. 实验内容1、熟悉使用MATLAB 语言中对图像数据读取、显示等基本函数:imread()函数、imwrite()函数、imshow()函数、Figure ()函数。

数字图像处理实验 图像生成及取反 图像亮(灰)度变换

数字图像处理实验  图像生成及取反 图像亮(灰)度变换

数字图像处理实验报告实验一图像处理入门实验:图像生成及取反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:266for j=246:266B(i,j)=1;endend(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:512for k=1:512if(i(j,k)==255)i(j,k)=0;elsei(j,k)=255;end;endend4、【实验截图】查看文件大小将test.bmp 编程取反5、【实验小结】(1)通过本次实验,对Matlab软件处理图像的相关功能有了初步了解。

(2)在灰度图像的取反操作中,可以使用双重循环,对每一行每一列的象素值进行更改操作。

实验二图像亮(灰)度变换1、【实验目的】灰度变换是图像增强的一种重要手段,使图像对比度扩展,图像更加清晰,特征更加明显。

实验一Matlab图像处理基础及图像灰度变换 - 中南大学信.

实验一Matlab图像处理基础及图像灰度变换 - 中南大学信.

实验一Matlab图像处理基础及图像灰度变换一、实验目的了解Matlab平台下的图像编程环境,熟悉Matlab中的DIP (Digital Image Processing)工具箱;掌握Matlab中图像的表示方法,图像类型、数据类型的种类及各自的特点,并知道怎样在它们之间进行转换。

掌握Matlab环境下的一些最基本的图像处理操作,如读图像、写图像、查看图像信息和格式、尺寸和灰度的伸缩等等;通过实验掌握图像直方图的描绘方法,加深直方图形状与图像特征间关系间的理解;加深对直方图均衡算法的理解。

二、实验内容1.从硬盘中读取一幅灰度图像;2.显示图像信息,查看图像格式、大小、位深等内容;3.用灰度面积法编写求图像方图的Matlab程序,并画图;4.把第3步的结果与直接用Matlab工具箱中函数histogram的结果进行比较,以衡量第3步中程序的正确性。

5.对读入的图像进行直方图均衡化,画出处理后的直方图,并比较处理前后图像效果的变化。

三、知识要点1.Matlab6.5支持的图像图形格式TIFF, JEPG, GIF, BMP, PNG, XWD (X Window Dump),其中GIF不支持写。

2.与图像处理相关的最基本函数读:imread; 写:imwrite; 显示:imshow; 信息查看:imfinfo;3.Matlab6.5支持的数据类double, unit8, int8, uint16, int16, uint32, int32, single, char (2 bytes per element), logical.4.Matlab6.5支持的图像类型Intensity images, binary images, indexed images, RGB image5.数据类及图像类型间的基本转换函数数据类转换:B = data_class_name(A);四、参考程序和参考结果1.求灰度直方图===================================================================== % Experiment 1: calculate the histogram of gray-scale through gray-scale area% functionf=imread('J:\ebook and code_ex\image processing\digital image process2_Woods\DIP usingMatlab\image database\dipum_images_ch02\dipum_images_ch02\Fig0206(a)(rose-original).tif');[m,n]=size(f);gray_area=zeros(1,256);% compute the area under certain gray levelfor k=0:255ind = find(f == k);gray_area(k+1) = length(ind);end% compute the histogram by performing the difference for gray_areahist=zeros(1,256);for k=0:254hist(k+1)=gray_area(k+2)-gray_area(k+1);end% normalizationhist=hist/numel(f);subplot(121); imshow(f);subplot(122);stem([1:1:256],hist,'.');axis([1 256 0 max(hist)]);===============================================================================f = imread('Fig0308(a)(pollen).tif'); subplot(221); imshow(f); title('the orignal image'); subplot(222); imhist(f); ylim('auto');g = histeq(f, 256);subplot(223); imshow(g);title('image after equalization'); subplot(224); imhist(g);ylim('auto');the orignal image5010015020025004image after equalization5010015020025004。

数字图像处理图像变换实验报告

数字图像处理图像变换实验报告

实验报告实验名称:图像处理姓名:刘强班级:电信1102学号:1404110128实验一图像变换实验——图像点运算、几何变换及正交变换一、实验条件PC机数字图像处理实验教学软件大量样图二、实验目的1、学习使用“数字图像处理实验教学软件系统”,能够进行图像处理方面的简单操作;2、熟悉图像点运算、几何变换及正交变换的基本原理,了解编程实现的具体步骤;3、观察图像的灰度直方图,明确直方图的作用与意义;4、观察图像点运算与几何变换的结果,比较不同参数条件下的变换效果;5、观察图像正交变换的结果,明确图像的空间频率分布情况。

三、实验原理1、图像灰度直方图、点运算与几何变换的基本原理及编程实现步骤图像灰度直方图就是数字图像处理中一个最简单、最有用的工具,它描述了一幅图像的灰度分布情况,为图像的相关处理操作提供了基本信息。

图像点运算就是一种简单而重要的处理技术,它能让用户改变图像数据占据的灰度范围。

点运算可以瞧作就是“从象素到象素”的复制操作,而这种复制操作就是通过灰度变换函数实现的。

如果输入图像为A(x,y),输出图像为B(x,y),则点运算可以表示为:B(x,y)=f[A(x,y)]其中f(x)被称为灰度变换(Gray Scale Transformation,GST)函数,它描述了输入灰度值与输出灰度值之间的转换关系。

一旦灰度变换函数确定,该点运算就完全确定下来了。

另外,点运算处理将改变图像的灰度直方图分布。

点运算又被称为对比度增强、对比度拉伸或灰度变换。

点运算一般包括灰度的线性变换、阈值变换、窗口变换、灰度拉伸与均衡等。

图像几何变换就是图像的一种基本变换,通常包括图像镜像变换、图像转置、图像平移、图像缩放与图像旋转等,其理论基础主要就是一些矩阵运算,详细原理可以参考有关书籍。

实验系统提供了图像灰度直方图、点运算与几何变换相关内容的文字说明,用户在操作过程中可以参考。

下面以图像点运算中的阈值变换为例给出编程实现的程序流程图,如下:2、图像正交变换的基本原理及编程实现步骤数字图像的处理方法主要有空域法与频域法,点运算与几何变换属于空域法。

数字图像处理实验报告-线性灰度变换-图像几何变换-频域图像增强技术-图像分割

数字图像处理实验报告-线性灰度变换-图像几何变换-频域图像增强技术-图像分割

线性灰度变换一、实验目的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 nn 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 k3 均值(中值)滤波是指在图像上,对待处理的像素给定一个模板,该模板包括了其周围的临近像素。

将模板中的全体像素的均值(中值)来代替原来像素值的方法。

4 拉普拉斯算子如下:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--------111181111 拉普拉斯算子首先将自身与周围的8个像素相减,表示自身与周围像素的差异,再将这个差异加上自身作为新像素的灰度。

三、实验步骤1 启动MATLAB 程序,对图像文件分别进行灰度线性变换(参考教材57页,例4.1)、直方图均衡化(参考教材64页,例4.6)、均值滤波(参考教材69页,例4.9)、中值滤波(参考教材73页,例4.11)和梯度锐化操作(参考教材76页,例4.12)。

添加噪声,重复上述过程观察处理结果。

数字图像处理实验报告:灰度变换与空间滤波(附带程序,不看后悔)

数字图像处理实验报告:灰度变换与空间滤波(附带程序,不看后悔)

1.灰度变换与空间滤波一种成熟的医学技术被用于检测电子显微镜生成的某类图像。

为简化检测任务,技术决定采用数字图像处理技术。

发现了如下问题:(1)明亮且孤立的点是不感兴趣的点;(2)清晰度不够,特别是边缘区域不明显;(3)一些图像的对比度不够;(4)技术人员发现某些关键的信息只在灰度值为I1-I2的范围,因此,技术人员想保留I1-I2区间范围的图像,将其余灰度值显示为黑色。

(5)将处理后的I1-I2范围内的图像,线性扩展到0-255灰度,以适应于液晶显示器的显示。

请结合本章的数字图像处理处理,帮助技术人员解决这些问题。

1.1问题分析及多种方法提出(1)明亮且孤立的点是不够感兴趣的点对于明亮且孤立的点,其应为脉冲且灰度值为255(uint8)噪声,即盐噪声,为此,首先对下载的细胞图像增加盐噪声,再选择不同滤波方式进行滤除。

均值滤波:均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标像素为中心的周围8个像素,构成一个滤波模板,即去掉目标像素本身),再用模板中的全体像素的平均值来代替原来像素值。

优点:速度快,实现简单;缺点:均值滤波本身存在着固有的缺陷,即它不能很好地保护图像细节,在图像去噪的同时也破坏了图像的细节部分,从而使图像变得模糊,不能很好地去除噪声点。

其公式如下:使用矩阵表示该滤波器则为:中值滤波:滤除盐噪声首选的方法应为中值滤波,中值滤波法是一种非线性平滑技术,它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值。

其过程为:a 、存储像素1,像素2.....像素9的值;b 、对像素值进行排序操作;c 、像素5的值即为数组排序后的中值。

优点:由于中值滤波本身为一种利用统计排序方法进行的非线性滤波方法,故可以滤除在排列矩阵两边分布的脉冲噪声,并较好的保留图像的细节信息。

缺点:当噪声密度较大时,使用中值滤波后,仍然会有较多的噪声点出现。

数字图像灰度变换技术总结

数字图像灰度变换技术总结

数字图像灰度变换技术总结篇一:图像的灰度变换昆明理工大学(数字图像处理)实验报告实验名称:图像的灰度变换专业:电子信息科学与技术姓名:学号:成绩:[实验目的]1、理解并掌握灰度变换的基本原理和方法。

2、编程实现图像灰度变换。

3、分析不同的灰度变换方法对最终图像效果的影响。

[实验内容]1、灰度的线性变换;2、灰度的非线性变换;3、图像的二值化;4、图像的反色处理;[实验原理]图像的灰度变换(grayscaletransformation,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)],可以将灰度变换分为线性变换和非线性变换。

1、灰度的线性变换若g(x,y)=T[f(x,y)]是一个线性或分段线性的单值函数,例如g(x,y)=T[f(x,y)]=af(x,y)+b则由它确定的灰度变换称为灰度线性变换,简称线性变换。

数字图像处理基本操作及灰度调整实验报告

数字图像处理基本操作及灰度调整实验报告

数字图像处理基本操作及灰度调整实验报告实验目的1.掌握数字图像处理的基本概念和原理。

2.学会使用Python编程语言进行图像处理。

3.理解并实现图像灰度调整的方法。

4.分析实验结果,讨论图像处理方法的优缺点。

2.1 数字图像处理概述数字图像处理(Digital Image Processing,DIP)是一门研究使用计算机对图像进行处理的技术。

它的目的是改善图像的质量,使之更适合人类或计算机对图像进行观察和分析。

数字图像处理涉及到图像采集、存储、传输、分析以及图像的恢复等方面。

2.2 图像的表示和描述数字图像由图像元素(像素)组成,每个像素有一个对应的灰度值。

灰度值表示像素的亮度,通常用8位二进制数表示,其范围为0~255。

像素的灰度值越高,亮度越高。

数字图像可以表示为一个矩阵,矩阵中的每个元素对应一个像素的灰度值。

彩色图像通常采用RGB颜色模型,每个像素包含三个分量,分别对应红色、绿色和蓝色通道的亮度。

2.3 图像灰度调整图像灰度调整是指调整图像像素的灰度值,以改善图像的质量。

常用的图像灰度调整方法有:1.线性灰度变换:通过线性映射关系改变图像灰度值,可以实现图像亮度的调整和对比度的拉伸。

2.直方图均衡化:通过调整图像的灰度直方图,使其均匀分布,可以提高图像的对比度。

•操作系统:Windows 10•编程语言:Python 3.8•图像处理库:OpenCV 4.5.2•集成开发环境:Visual Studio Code4.1 图像读取和显示首先,我们需要使用OpenCV库读取和显示图像。

以下是读取和显示图像的Python代码:4.2 图像灰度化为了便于后续的灰度调整操作,我们需要将彩色图像转换为灰度图像。

以下是图像灰度化的Python代码:4.3 灰度调整接下来,我们将对图像进行灰度调整。

首先,实现线性灰度变换。

以下是线性灰度变换的Python代码:4.4 图像直方图均衡化直方图均衡化是一种能够提高图像对比度的方法。

数字图像处理 灰度变换ppt课件

数字图像处理   灰度变换ppt课件

第9 页
4.2 二值化和阈值处理

MatLab函数
– – – – – – – – – – – I=imread('rice.tif'); for i=1:256 for j=1:256 J(i,j)=0; if I(i,j)>100 J(i,j)=255; end end end subplot(1,2,1),imshow(I); subplot(1,2,2),imshow(J);
第8 页
4.2 二值化和阈值处理

固定阈值法
– 为灰度图像设定一个阈值 T ,把灰度值小于给定 阈值 T 的像素灰度置为0,大于 T 的像素灰度置 为255 , f( x ,y ) T 0 – 函数表达式 g ( x ,y ) 255 ,f( x ,y ) T
T=100
第4章 图像的灰度变换
第4章 图像的灰度变换
第18页
第4章 图像的灰度变换 第15页
4.3 灰度的线性变换

MatLab函数
– J = imadjust (I, [low_in high_in] , [low_out high_out]) – 例:
>> I = imread('pout.tif'); >> J = imadjust(I,[0.3 0.7],[]); >> imshow(I), figure, imshow(J) >> K = imadjust(I,[0.0 1],[0.3 0.7]); >> figure, imshow(K) J I
数字图像处理 灰度变换
第4章 图像的灰度变换
4.1 4.2 4.3 4.4

数字图像处理实验报告:灰度变换与空间滤波(附带程序,不看后悔)

数字图像处理实验报告:灰度变换与空间滤波(附带程序,不看后悔)
优点:形式可以任意合成, 增强输入图像中感兴趣的灰度区域, 相对抑制那 些不感兴趣的灰度区域。
缺点: 是需要更多的用户输入。
技术人员想保留I1-I2区间范围的图像,将其余灰度值显示为黑色。应提取目标区域的灰度值特性, 将图像进行二值化, 即可保留范围在I1-I2区 间范围的图像,将其余灰度值显示为黑色。
优点: 速度快,实现简单;
缺点:均值滤波本身存在着固有的缺陷, 即它不能很好地保护图像细节, 在 图像去噪的同时也破坏了图像的细节部分, 从而使图像变得模糊, 不能很好地 去除噪声点。
其公式如下:
使用矩阵表示该滤波器则为:
中值滤波:
滤除盐噪声首选的方法应为中值滤波,中值滤波法是一种非线性平滑技术, 它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中 值。
优点:对于背景和前景都太亮或者太暗的图像非常有用,且计算量不大。
缺点:变换后图像的灰度级减少, 某些细节消失; 某些图像, 如直方图有高
峰,经处理后对比度不自然的过分增强。
灰度分段线性变换:
分段线性变换函数可以增强原图各部分的反差, 即增强输入图像中感兴趣的 灰度区域,相对抑制那些不感兴趣的灰度区域。
1.1

对于明亮且孤立的点, 其应为脉冲且灰度值为255(uint8)噪声,即盐噪声, 为此,首先对下载的细胞图像增加盐噪声,再 选择不同滤波 方式进行滤除。
均值滤波: 均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板, 该模板包括了其周围的临近像素 (以目标像素为中心的周围8个像素,构成一 个滤波模板, 即去掉目标像素本身) ,再用模板中的全体像素的平均值来代替 原来像素值。
1.
一种成熟的医学技术被用于检测电子显微镜生成的某类图像。 为简化检测任 务,技术决定采用数字图像处理技术。发现了如下问题:(1)明亮且孤立的点 是不感兴趣的点; (2)清晰度不够,特别是边缘区域不明显; (3)一些图像的 对比度不够;(4)技术人员发现某些关键的信息只在灰度值为I1-I2的范围, 因此,技术人员想保留I1-I2区间范围的图像, 将其余灰度值显示为黑色。 (5) 将处理后的I1-I2范围内的图像,线性扩展到0-255灰度,以适应于液晶显示器 的显示。请结合本章的数字图像处理处理,帮助技术人员解决这些问题。

【VIP专享】数字图像处理实验一 图像的灰度变换

【VIP专享】数字图像处理实验一  图像的灰度变换

数字图像处理实验报告
(一)
班级:测控1002
姓名:刘宇
学号:06102043
实验一图像的灰度变换
1. 实验任务
熟悉MATLAB软件开发环境,掌握读、写图像的基本方法。

理解图像灰度变换在图像增强的作用,掌握图像的灰度线性变换和非线性变换方法。

掌握绘制灰度直方图的方法,掌握灰度直方图的灰度变换及均衡化的方法。

2. 实验环境及开发工具
Windws2000/XP
MATLAB 7.x
3. 实验原理
灰度变换
灰度变换是图像增强的一种重要手段,它常用于改变图象的灰度范围及分布,是图象数字化及图象显示的重要工具。

在实际应用中,为了突出图像中感兴趣的研究对象,常常要求局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段线性拉伸:
图1.1 不同的分段线性变换
其对应的数学表达式为:
直方图均衡化
(a) Lena图像(b) Lena图像的直方图图1.2 Lena图像及直方图
当灰度级是离散值时,可用频数近似代替概率值,即
增加亮度后的图像及灰度直方图
二值化处理后的图像及灰度直方图
十灰度
50灰度
150灰度
使用函数处理后的图像及灰度直方图
原图
5. 实验结论
灰度级越多,图像保存的信息越多,在一定程度上减少灰度级不会明显影响图像质量,但在灰度级过少的情况下图像会失真。

数字图像处理实验报告灰度修正和锐化技术

数字图像处理实验报告灰度修正和锐化技术

灰度修正和锐化技术摘要1.灰度变换:选择一副对比度不足的图像,对该图进行灰度变换,增强对比度,显示增强前、后的图像以及他们的灰度直方图。

2.直方图均衡:选择一副灰度直方图不均匀的图像,对该图像做直方图均衡处理,显示处理前后的图像以及他们的灰度直方图。

3.选择一副边缘较模糊的图像,利用高通滤波器对此图像边缘增强,观察增强的效果。

正文1.灰度变换可以增大图像的动态范围,扩大图像的对比度,使图像特征变得明显。

灰度变换包括灰度的线性变换和非线性变换。

增强前增强后10020005000100000100200510x 1042.直方图均衡化是通过对原图像进行某种灰度变换,是变换后图像的直方图能均匀分布,这样就能使原图像中具有相近灰度且占有大量像素点的区域之灰度范围展宽,使大区域中的微小灰度变化显现出来,使图像更清晰。

原图像01002000.511.522.53x 104原图像直方图均衡化后的图像01002000.511.522.53x 104均衡化后的直方图3.图像锐化就是希望增强图像中的边缘(细节)信息,及对边缘信息进行增强。

频域中的锐化技术可以采用高通提升滤波法。

即让低频通过,而将高频提升,以达到增强图像中高频信息的目的,实现图像的锐化。

原图像IHPF D0=15IHPF D0=30IHPF D0=50附录程序1. >> A=imread('E:\龙猫\123.jpg'); >> y1=rgb2gray(A);>> B=imadjust(y1,[0.35 0.65],[]); >>figure(1)>> subplot(2,2,1);imshow(y1); >> title('增强前')>> subplot(2,2,2);imhist(y1);>> subplot(2,2,3);imshow(B);>> title('增强后')>> subplot(2,2,4);imhist(B);2. >> x=imread('d:\shu.jpg');>> y1=rgb2gray(x);>> subplot(1,2,1);>> imshow(y1)>> title('原图像');>> subplot(1,2,2);>> imhist(y1) %原图像直方图>> title('原图像直方图');>> y2=histeq(y1);>> figure(2)>> subplot(1,2,1);>> imshow(y2)>> title('均衡化后的图像');>> subplot(1,2,2);>> imhist(y2) %均衡化后的直方图>> title('均衡化后的直方图'); 3. I=imread('testpat1.png');J=double(I);%分别设置3种不同的滤波半径D1=15;D2=30;D3=50;%傅里叶变换并中心化Fuv=fftshift(fft2(J));[M,N]=size(Fuv);%确定傅里叶变换的原点xo=floor(M/2);yo=floor(N/2);%分别求IHPFfor i=1:Mfor j=1:ND=sqrt((i-xo)^2+(j-yo)^2);if(D>=D1)h1(i,j)=1;elseh1(i,j)=0;endif(D>=D2)h2(i,j)=1;elseh2(i,j)=0;endif(D>=D3)h3(i,j)=1;elseh3(i,j)=0;endendend%滤波矩阵点乘Guv1=h1.*Fuv;Guv2=h2.*Fuv;Guv3=h3.*Fuv;%傅里叶逆变换g1=ifftshift(Guv1);g1=uint8(real(ifft2(g1)));g2=ifftshift(Guv2);g2=uint8(real(ifft2(g2)));g3=ifftshift(Guv3);g3=uint8(real(ifft2(g3)));%分别显示各个图像subplot(2,2,1);imshow(I);title('原图像') subplot(2,2,2);imshow(g1);title('IHPF D0=15'); subplot(2,2,3);imshow(g2);title('IHPF D0=30'); subplot(2,2,4);imshow(g3);title('IHPF D0=50');。

图像的灰度变换增强实验报告

图像的灰度变换增强实验报告

图像的灰度变换增强实验报告一、实验目的1、 理解数字图像处理中点运算的基本作用;2、 掌握对比度调整与灰度直方图均衡化的方法。

二、实验原理1、对比度调整如果原图像f (x , y )的灰度范围是[m , M ],我们希望对图像的灰度范围进行线性调整,调整后的图像g (x , y )的灰度范围是[n , N ],那么下述变换:[]n m y x f mM 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]。

不使用imadjust 函数,利用matlab 语言直接编程也很容易实现灰度图像的对比度调整。

但运算的过程中应当注意以下问题,由于我们读出的图像数据一般是uint8型,而在MATLAB 的矩阵运算中要求所有的运算变量为double 型(双精度型)。

因此读出的图像数据不能直接进行运算,必须将图像数据转换成双精度型数据。

MATLAB 中提供了这样的数据类型转换函数:im2double 函数,其语法格式为:I2 = im2double(I1)运算之后的图像数据再显示时可以再转化成uint8型,格式为:I3 = uint8 (I2)2、直方图均衡化直方图均衡化的目的是将原始图像的直方图变为均衡分布的形式,即将一已知灰度概率密度分布的图像,经过某种变换变成一幅具有均匀灰度概率密度分布的新图像,从而改善图像的灰度层次。

数字图像处理灰度实验

数字图像处理灰度实验

数字图像处理实验报告学院:专业:姓名:学号:直方图和直方图均衡化一、实验目的1. 改善图像的视觉,提高清晰度;2. 增强人们感兴趣部分,到视觉效果更好的图像,以提高图像的可懂度。

3、增强直方图均衡化的认识和了解二、实验原理直方图均衡化的基本思想是把原始图的直方图变换为均匀分布的形式,这样就增加了象素灰度值的动态范围从而可达到增强图像整体对比度的效果。

设非均匀直方图分布函数P r (r )经转换函数s=T (r )转化为均匀直方图分布函数P s (s)的情况,r 为变化前的归一化灰度级,0≤r ≤1. T (r )为转换函数, s=T (r )为变化后的归一化灰度级,则T (r )应满足以下条件:(1)在0≤r ≤1,范围内是一个单值单增函数。

(2)对于0≤r ≤1,对应有0≤s=T (r )≤1.保证变换后像素灰度级仍在允许范围内。

在实际处理变换时,一般先对原始图像的灰度情况进行统计分析,并计算出原始直方图分布,然后根据计算出的累计直方图分布求出fk 到gk 的灰度映射关系。

在重复上述步骤得到源图像所有灰度级到目标图像灰度级的映射关系后,按照这个映射关系对源图像各点像素进行灰度转换,即可完成对源图的直方图均衡化三、实验主要内容1、统计原始图像的直方图,求出2、用累积分布函数作变换,求变换后的新灰度; 3、用新灰度代替旧灰度,求出,这一步是近似的,力求合理,同时把灰度相等的或相近的合在一起。

四、实验程序及结果1、实验程序#include<stdio.h>#include<math.h>#include<stdlib.h>void main(){ int c,i=0,j=0,y;long sum=0,su=0,k=0,l=0,t=0,h=0;static inta[256],a1[256],b[256],s[256],d[256][256],d1[65536],B[256][256],d2[655 36];FILE *fp,*fp1;char filename[20],filename1[20];double p1[256],p2[256];printf(" 输入文件名:");scanf("%s",filename);printf(" 输入新的文件名:");scanf("%s",filename1);if ((fp=fopen(filename,"rb"))==0){printf("不能打开文件\n");exit(0);}fp1=fopen(filename1,"w");while(!feof(fp)){c=fgetc(fp);a[c]++; }rewind(fp);while(!feof(fp)){c=fgetc(fp);d2[t]=c;t++;}t=0;for(i=0;i<256;i++)for(j=0;j<256;j++){B[i][j]=d2[t];t++;}for(i=0;i<256;i++)printf("%d\t",a[i]);printf("\n");for(i=0;i<256;i++){sum=sum+a[i];}printf("%d\n",sum);for(i=0;i<256;i++)p1[i]=a[i]/65536.0;}p2[0]=p1[0];for(i=1;i<256;i++){p2[i]=p2[i-1]+p1[i];}for(i=0;i<256;i++){s[i]=(int)(p2[i]*255+0.5);}for(i=0;i<256;i++)for(j=0;j<256;j++){d[i][j]=0;}for(i=0;i<256;i++){ for(j=0;j<256;j++){ y=B[i][j];d[i][j]=s[y];}}for(i=0;i<256;i++)for(j=0;j<256;j++){d1[h]=d[i][j];h++;}for(i=0;i<256;i++){b[i]=0;}for(i=0;i<256;i++){ for(j=0;j<256;j++)if(i==s[j])b[i]=b[i]+a[j];}printf("输出\n");for(i=0;i<255;i++){printf("%d\t",b[i]);printf("\n");for(i=0;i<256;i++){su=su+b[i];}printf("%d\n",su);for(h=0;h<65536;h++){fputc(d1[h],fp1);}printf("新文件已保存\n");fclose(fp);fclose(fp1);}2、实验结果五、结果分析本次实验通过对图像进行均衡化处理,即把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布,也就是对图像进行非线性拉伸,重新分配图像像素值,使一定灰度范围内的像素数量大致相同,然而这样做却使图像的灰度值减少,甚至细节消失,而部分图像的对比度过分增强,直方图有高峰,影响了图像的实际效果。

图像处理灰度变换实验

图像处理灰度变换实验

图像处理灰度变换实验一.实验目的1.熟悉和掌握利用matlab 工具进行数字图像的读、写、显示、像素处理等数字图像处理的基本步骤和流程。

2.熟练掌握各种空间域图像增强的基本原理及方法。

3.熟悉通过灰度变换方式进行图像增强的基本原理、方法和实现。

4.熟悉直方图均衡化的基本原理、方法和实现。

二.实验原理(一)数字图像的灰度变换灰度变换是图像增强的一种经典而有效的方法。

灰度变换的原理是将图像的每一个像素的灰度值通过一个函数,对应到另一个灰度值上去从而实现灰度的变换。

常见的灰度变换有线性灰度变换和非线性灰度变换,其中非线性灰度变换包括对数变换和幂律(伽马)变换等。

1、线性灰度变换1)当图像成像过程曝光不足或过度,或由于成像设备的非线性和图像记录设备动态范围太窄等因素,都会产生对比度不足的弊病,使图像中的细节分辨不清,图像缺少层次。

这时,可将灰度范围进行线性的扩展或压缩,这种处理过程被称为图像的线性灰度变换。

对灰度图像进行线性灰度变换能将输入图像的灰度值的动态范围按线性关系公式拉伸扩展至指定范围或整个动态范围。

2)令原图像f (x,y )的灰度范围为[a,b],线性变换后得到图像g (x,y ),其灰度范围为[c,d],则线性灰度变换公式可表示为a y x fb y x f a b y x fc c a y x f a b cd d y x g <≤≤>+---=),(),(),(,,]),([,),( (1)由(1)式可知,对于介于原图像f (x,y )的最大和最小灰度值之间的灰度值,可通过线性变换公式,一一对应到灰度范围[c,d]之间,其斜率为(d-c)/(b-a);对于小于原图像的最小灰度值或大于原图像的最大灰度值的灰度值,令其分别恒等于变换后的最小和最大灰度值。

变换示意图如图1所示。

图1 线性灰度变换示意图当斜率大于一时,变换后的灰度值范围得到拉伸,图像对比度得到提高;当斜率小于一时,变换后的灰度值范围被压缩,最小与最大灰度值的差变小,图像对比度降低;当斜率等于一时,相当于对图像不做变换。

数字图像处理实验报告图像增强处理与几何变换

数字图像处理实验报告图像增强处理与几何变换

实验图像增强处理与几何变换一、实验目的利用Matlab图像处理工具箱中的函数实现图像点处理、空间域平滑和锐化处理、彩色图像处理、几何处理,巩固其原理与计算方法学习,深化课程理论认知。

二、实验内容1、图像点处理:灰度变换、直方图均衡化和直方图规定处理;2、图像均值滤波和中值滤波、图像锐化处理;3、图像几何变换处理;4、图像彩色合成和彩色变换处理;三、实验步骤1、图像点处理:灰度变换、直方图均衡化和直方图规定处理;1.1图像的灰度变换启用MATLAB,输入以下代码运行I= imread('cameraman-8.bmp','bmp');figure; subplot(2,2,1), imshow(I);%获取图像直方图subplot(2,2,2),imhist(I);[counts1,x1] = imhist(I);%观察Counts,x的值subplot(2,2,3),stem(x1,counts1);%图像灰度变换J=imadjust(I,[0.1 0.7],[0.0 0.9]);subplot(2,2,4), imshow (J);%对比灰度变换前后的图像及其直方图figure;subplot(2,3,1),imshow(I);subplot(2,3,2),imshow(J);subplot(2,3,4),imhist(I);subplot(2,3,5),imhist(J);[counts2,x2] = imhist(J);subplot(2,3,6), stem(x2,counts2);图 1.1.1图 1.1.21.2图像直方图均衡化启用MATLAB,输入以下代码运行I=imread('cameraman-8.bmp','bmp') ;%直方图均衡化处理J=histeq(I) ;%对比均衡化处理前后的图像及其直方图figure(1),subplot(2,2,1),imshow(I),subplot(2,2,2),imshow(J); figure(1),subplot(2,2,3),imhist(I),subplot(2,2,4),imhist(J);图 1.2 1.3直方图规定化启用MATLAB,输入以下代码运行I1=imread('TM5.bmp','bmp');I2=imread('TM3.bmp','bmp');%直方图规定化处理K1=histeq(I1,imhist(I2));%对比规定化处理前后的图像及其直方图figure;subplot(3,2,1),imshow(I1);subplot(3,2,2), imhist(I1);subplot(3,2,3),imshow(I2);subplot(3,2,4), imhist(I2);subplot(3,2,5),imshow(K1);subplot(3,2,6), imhist(K1);图 1.32、图像空间域平滑2.1 用均值滤波器实现图像空间域的平滑启用MATLAB,输入以下代码运行I=imread('cameraman-8.bmp','bmp');J=imnoise(I,'gaussian'); %添加高斯噪声K=imnoise(I,'salt & pepper'); %添加椒盐噪声M=imnoise(I,'speckle'); %添加乘性噪声H=ones(3,3)/9; %3*3的均值去噪模板%滤波去噪处理I1=imfilter(I,H);J1=imfilter(J,H);K1=imfilter(K,H);M1=imfilter(M,H) ;%对比线性滤波去噪处理前后的图像figure;subplot(2,4,1),imshow(I);title('原图');subplot(2,4,2),imshow(J); title('高斯噪声图像'); subplot(2,4,3),imshow(K); title('椒盐噪声图像'); subplot(2,4,4),imshow(M); title('乘性噪声图像'); subplot(2,4,6),imshow(J1); title('高斯噪声滤波图像'); subplot(2,4,7),imshow(K1); title('椒盐噪声滤波图像'); subplot(2,4,8),imshow(M1) ; title('乘性噪声滤波图像') ; 输出图像如下图 2.12.2 用中值滤波器实现图像空间域的平滑启用MATLAB,输入以下代码运行I=imread('cameraman-8.bmp');I1=imnoise(I,'gaussian');I2=imnoise(I,'salt & pepper',0.02);I3=imnoise(I,'speckle');%3×3中值滤波模板J=medfilt2(I,[3,3]);J1=medfilt2(I1,[3,3]);J2=medfilt2(I2,[3,3]);J3=medfilt2(I3,[3,3]);figure,subplot(2,4,1),imshow(I) ; title('原图') ;subplot(2,4,2),imshow(I1) ; title('添加高斯噪声') ;subplot(2,4,3),imshow(I2) ; title('添加椒盐噪声') ;subplot(2,4,4),imshow(I3) ; title('添加乘性噪声') ;subplot(2,4,6),imshow(J1) ;title('高斯噪声3*3中值滤波') ; subplot(2,4,7),imshow(J2) ;title('椒盐噪声3*3中值滤波') ; subplot(2,4,8),imshow(J3) ;title('乘性噪声3*3中值滤波') ;K=medfilt2(I, [5,5]); %5×5中值滤波模板K1=medfilt2(I1,[5,5]);K2=medfilt2(I2,[5,5]);K3=medfilt2(I3,[5,5]);figure;subplot(2,2,1),imshow(K); title('原图5*5中值滤波'); subplot(2,2,2),imshow(K1) ; title('高斯噪声5*5中值滤波') ; subplot(2,2,3),imshow(K2); title('椒盐噪声5*5中值滤波'); subplot(2,2,4),imshow(K3) ; title('乘性噪声5*5中值滤波'); 输出结果如下图 2.2.1图 2.2.22.3 图像空间域锐化启用MATLAB,输入以下代码运行I=imread('cameraman-8.bmp','bmp')H=fspecial('sobel')%用sobel算子做模板%锐化处理J=imfilter(I,H)%锐化处理前后图像对比figure,subplot(1,2,1),imshow(I),subplot(1,2,2),imshow(J); 输出图像如下图 2.33、图像几何变换3.1 缩放启用MATLAB,输入以下代码运行I=imread('cameraman-8.bmp', 'bmp') ;%放大图像J=imresize(I,2) ;%缩小图像K=imresize(I,0.5) ;%图像对比figure(1),subplot(),imshow(I),title('原图'),figure(2),subplot(),imshow(J),title('放大两倍的图'),figure(3),subplot(),imshow(K),title('缩小0.5倍的图') ;输出图像如下图 3.1.1 图3.1.2图 3.1.33.2旋转启用MATLAB,输入以下代码运行I=imread('cameraman-8.bmp', 'bmp') ;%旋转图像M=imrotate(I,45) ;%图像对比figure;subplot(1,2,1),imshow(I),subplot(1,2,2),imshow(M) ;输出图像如下图 3.24、彩色图像处理4.1彩色合成启用MATLAB,输入以下代码运行I=imread('peppers.bmp','bmp');J1=I; J2=I;J3=I; J4=I;J5=I;%改变J1、J2、J3、J4、J5中的波段次序,组合成新的波段合成J1(:,:,1)=I(:,:,2); J1(:,:,2)=I(:,:,3); J1(:,:,3)=I(:,:,1) ;J2(:,:,1)=I(:,:,1); J2(:,:,2)=I(:,:,3); J2(:,:,3)=I(:,:,2) ;J3(:,:,1)=I(:,:,2); J3(:,:,2)=I(:,:,1); J3(:,:,3)=I(:,:,3) ;J4(:,:,1)=I(:,:,3); J4(:,:,2)=I(:,:,2); J4(:,:,3)=I(:,:,1) ;J5(:,:,1)=I(:,:,3); J5(:,:,2)=I(:,:,1); J5(:,:,3)=I(:,:,2) ;%对比原图像I与新图像J1、J2、J3、J4、J5的彩色差异,理解假彩色合成figure,subplot(2,3,1),imshow(I),title('原图');subplot(2,3,2),imshow(J1),title('变换一') ;subplot(2,3,3),imshow(J2),title('变换二') ;subplot(2,3,4),imshow(J3),title('变换三') ;subplot(2,3,5),imshow(J4),title('变换四') ;subplot(2,3,6),imshow(J5),title('变换五');输出图像如下图4.1 4.2彩色变换启用MATLAB,输入以下代码运行I=imread('peppers.bmp','bmp');HSV=rgb2hsv(I) ;RGB=hsv2rgb(HSV) ;%对比彩色变换前后的图像figure;subplot(1,3,1),imshow(I),title('原图'),subplot(1,3,2),imshow(HSV),title('HSV图像'); subplot(1,3,3),imshow(RGB),title('RGB图像') ;输出结果如下图 4.2四、实验算法要点总结1、图像点处理直方图修正法通常分为直方图均衡化和直方图规定化两类2、图像均值滤波和中值滤波、图像锐化处理3、图像几何变换处理4、图像彩色合成和彩色变换处理通过映射函数将彩色图像或多光谱图像变换成新的三基色分量线性假彩色映射表示为:。

数字图像处理灰度变换.

数字图像处理灰度变换.

实验一1. 对一幅图像进行二值化处理 load trees; BW=im2bw(X,map,0.4; imshow(X,map; figure,imshow(BW;2. 将一幅索引色图转化成灰度图像 close all; clear all;load trees;I=ind2gray(X,map;imshow(X,map;figure,imshow(I3. 将一幅灰度图转化成索引色图像 close all; clear all;I=imread('moon.tif';X=grayslice(I,16;imshow(Ifigure,imshow(X,hot(164. 显示一彩色图像的三基色图像football=imread('football.jpg'; figure('Name','Football';imshow(football;figure('Name','Football color planes'; subplot(2,2,1;imshow(football; redfootball=football;redfootball(:,:,2:3=0;subplot(2,2,2;imshow(redfootball; greenfootball=football; greenfootball(:,:,1=0;greenfootball(:,:,3=0;subplot(2,2,3;imshow(greenfootball;bluefootball=football;bluefootball(:,:,1:2=0;subplot(2,2,4;imshow(bluefootball;实验五编写 lowpassfilter.m 和 highpassfilrer.m, 保存在 work 文件夹中%cutoff is the cutoff frequency of the filter 0 - 0.5 function f=highpassfilter(sze,cutoff,nif cutoff<0 | cutoff>0.5error('cutoff frequency must be between 0 and 0.5'; endif rem(n,1~=0 | n<1error('n must be an integer>=1';endS=size(sze;rows=S(1;cols=S(2;x=(ones(rows,1*[1:cols]-(fix(cols/2+1/cols;y=([1:rows]'*ones(1,cols-(fix(rows/2+1/rows;radius=sqrt(x.^2+y.^2;h1=1./(1.0+(radius./cutoff.^(2*n;h=ones(rows,cols-h1;plot3(x,y,h;title('Butterworth高通滤波器幅频响应 ';B=fftshift(fft2(sze;result=ifft2(B.*h;figure,imshow(abs(result,[];title('高通滤波后的图像 '(1I=imread('cameraman.tif';lowpassfilter(I,0.4,1;I=imread('cameraman.tif'; lowpassfilter(I,0.05,1; -0.50.5低通滤波后的图像(2I=imread('cameraman.tif'; highpassfilter(I,0.4,1; -0.50.5低通滤波后的图像I=imread('cameraman.tif'; highpassfilter(I,0.05,1; -0.50.5 Butterworth 高通滤波器幅频响应高通滤波后的图像2. 分别采用 Hamming 窗, Bartlett 窗, Hanning 窗和 Blackman 窗设计近似圆对称的带通滤波器,通频带为【 0.1,0.5】。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数字图像处理实验报告
(一)
班级:测控1002
姓名:刘宇
学号:06102043
实验一图像的灰度变换
1. 实验任务
熟悉MATLAB软件开发环境,掌握读、写图像的基本方法。

理解图像灰度变换在图像增强的作用,掌握图像的灰度线性变换和非线性变换方法。

掌握绘制灰度直方图的方法,掌握灰度直方图的灰度变换及均衡化的方法。

2. 实验环境及开发工具
Windws2000/XP
MATLAB 7.x
3. 实验原理
灰度变换
灰度变换是图像增强的一种重要手段,它常用于改变图象的灰度范围及分布,是图象数字化及图象显示的重要工具。

在实际应用中,为了突出图像中感兴趣的研究对象,常常要求局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段线性拉伸:
图1.1 不同的分段线性变换
其对应的数学表达式为:
直方图均衡化
灰度直方图的横坐标是灰度级,纵坐标是该灰度级出现的频度,它是图像最基本的统计特征。

依据定义,在离散形式下,用rk 代表离散灰度级,用pr(rk)代表pr(r),并且有下式成立:
n n r P k
k r =
)( 1,,2,1,010-=≤≤l k r k
式中:nk 为图像中出现rk 级灰度的像素数,n 是图像像素总数,而nk/n 即为频数。

直方图均衡化处理是以累积分布函数变换法为基础的直方图修正法。

假定变换函数为
ω
ωd p r T s r r
)()(0
⎰==
(a) Lena 图像 (b) Lena 图像的直方图 图1.2 Lena 图像及直方图
当灰度级是离散值时,可用频数近似代替概率值,即
1
,,1,010)(-=≤≤=
l k r n
n r p k k
k r
式中:l 是灰度级的总数目,pr(rk)是取第k 级灰度值的概率,nk 是图像中出现第k 级灰度的次数,n 是图像中像素总数。

所以积分可以表示为下列累计分布函数(cumulative distribution function, CDF)
1
,,1,01
0)
()(0
0-=≤≤===∑∑
==l k r r p n
n r T s j k
j j r k
j j k k
4. 实验内容
1、熟悉使用MATLAB 语言中对图像数据读取、显示等基本函数:imread()函数、imwrite()函数、imshow()函数、Figure ()函数。

2、读入不同情况的图像,请自己编程和调用Matlab 中常用灰度变换函数对输入图像进行分段线性变换和非线性变换,比较相应的处理效果。

3、读入不同情况的图像,请自己编程和调用Matlab 中函数完成对图像进行直方图均衡化处理,试比较与源图的异同。

4、课后撰写实验报告。

5.实验分析
增加亮度后的图像及灰度直方图
二值化处理后的图像及灰度直方图
十灰度
50灰度
150灰度
使用函数处理后的图像及灰度直方图
原图
5. 实验结论
灰度级越多,图像保存的信息越多,在一定程度上减少灰度级不会明显影响图像质量,但在灰度级过少的情况下图像会失真。

相关文档
最新文档