实验3灰度变换_第1页
实验3灰度变换_第2页
实验3灰度变换_第3页
实验3灰度变换_第4页
实验3灰度变换_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验三 灰度变换与直方图处理一、实验目的1、理解图像直方图的含义;2、掌握MATLAB中灰度转换和直方图处理相关函数;3、了解直方图均衡化的实现方法。二、实验步骤及内容1、灰度转换灰度变换是图像增强技术中最简单的一类。常用的三类基本函数:线性函数、对数函数、幂次函数。(1)图像反转:对教材中61页的图像Fig3.04(a)的图像进行反转变换 Image=imread('Fig3.04(a).jpg');imshow(Image);Image=255-double(Image); %反转figure(2),imshow(uint8(Image);11电子韦志东(2)对数变换:对教

2、材中62页的图像Fig3.05(a)进行对数变换close allImage=imread('Fig3.05(a).jpg');imshow(Image);Image=log(1+double(Image); %对数变换figure(2),imshow(Image,);(3)幂次变换:对教材中66页的图像Fig3.09(a)进行幂次变换close allImage=imread('Fig3.09(a).jpg');imshow(Image);Image2=double(Image).3.0; %3figure(2),imshow(Image2,);Image2=

3、double(Image).4.0;figure(3),imshow(Image2,);Image2=double(Image).5.0;figure(4),imshow(Image2,);2、灰度直方图的显示 imhistimhist是MATLAB提供的显示图像灰度直方图的函数。(1) 显示图像cameraman.tif 的直方图。close allx=imread('cameraman.tif');figuresubplot(2,1,1)imshow(x)subplot(2,1,2)imhist(x)(2)还可以将直方图显示成其他形式,比如柱形图(续一)或者折线图(续二)。

4、 (续一):h=imhist(x);h1=h(1:10:256);horz=1:10:256; bar(horz,h1) axis(0 255 0 15000) set(gca, 'xtick',0:50:255)set(gca, 'ytick',0:2000:15000)(续二):h=imhist(x);plot(h) axis(0 255 0 15000) set(gca, 'xtick',0:50:255)set(gca, 'ytick',0:2000:15000)思考题1: 显示教材中71页,暗、亮、低对比度和高对比度图以

5、及它们对应的直方图,即显示实验文件夹中Fig3.15(a)1.jpg Fig3.15(a)4.jpg各图的直方图,观察其直方图的分布情况,进一步了解直方图的含义。图2-1 暗、亮、低对比度和高对比度图(1)close allx=imread(Fig3.15(a)1.jpg);figuresubplot(2,1,1)imshow(x)subplot(2,1,2)imhist(x)(2) close allx=imread('Fig3.15(a)2.jpg');figuresubplot(2,1,1)imshow(x)subplot(2,1,2)imhist(x)(3) close

6、 allx=imread('Fig3.15(a)3.jpg');figuresubplot(2,1,1)imshow(x)subplot(2,1,2)imhist(x)(4) close allx=imread('Fig3.15(a)4.jpg');figuresubplot(2,1,1)imshow(x)subplot(2,1,2)imhist(x)3、图像的强度调整函数imadjust(1)imadjust是MATLAB提供的图像强度调整函数。利用它也可以实现图像反转。close allI=imread('Fig3.04(a).jpg');i

7、mshow(I,);JJ=imadjust(I,0 1,1 0);figure(2),imshow(JJ,)(2)使用imadjust函数对cameraman.tif图像进行灰度压缩 close allx=imread('cameraman.tif');figuresubplot(2,2,1), imshow(x)subplot(2,2,2), imhist(x)subplot(2,2,3)y=imadjust(x,0.4 0.6); %imadjust函数进行灰度压缩imshow(y)subplot(2,2,4), imhist(y)思考题2:查看imadjust函数的使用方

8、法,把实验文件夹中的lena_adjust.bmp 用imadjust 进行灰度范围拉伸,得出类似图2-2的结果,写出命令。 图2-2 imadjust调整lena图像close allx=imread('lena_adjust.bmp');figuresubplot(2,2,1), imshow(x)subplot(2,2,2), imhist(x)subplot(2,2,3)y=imadjust(x,0.4 0.542,); imshow(y)subplot(2,2,4), imhist(y)( 注解:>> max(x(:)ans =138>> mi

9、n(x(:)ans =102>> 102/255ans =0.4000>> 138/255ans =0.5412)3、直方图均衡化 histeq直方图均衡化是图像增强的一个重要方法,人们已经提出了很多直方图均衡化和规定化的算法,其中基于累积分布函数的算法最为经典。histeq命令就是基于这种经典的算法。对教材中75页的图像Fig3.15(a)1.jpg的进行直方图均衡化处理。close allImage =imread('Fig3.15(a)1.jpg');Out_Image = histeq(Image);figuresubplot(1,2,1),im

10、show(Image)subplot(1,2,2),imhist(Image)figuresubplot(1,2,1),imshow(Out_Image)subplot(1,2,2),imhist(Out_Image)思考题3:编写m程序,显示图像的直方图,并与imhist()函数结果做比较。(提示:对图像I的灰度值进行统计,myhist(I(i,j)1)=myhist(I(i,j)+1)+1; 图像灰度值I(i,j)的范围是【0 255】,matlab中数组下标是从1开始的。用plot(myhist)来显示统计结果。)close allP=imread('Fig3.04(a).jpg');y=zeros(1,256);m n=size(P)for i=1:m for j=1:ny(double(P(i,j)+1)=y(double(P(i,j)+1)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论