matlab图像处理图像灰度变换直方图变换

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

附录1 课程实验报告格式

每个实验项目包括:1)设计思路,2)程序代码,3)实验结果,4)实验中出现的问题及解决方法。

实验一:直方图灰度变换

A:读入灰度图像‘debye1.tif’,采用交互式操作,用improfile绘制一条线段的灰度值。

imread('rice.tif');

imshow('rice.tif'),title('rice.tif');

improfile,title('主对角线上灰度值')

B:读入RGB图像‘flowers.tif’,显示所选线段上红、绿、蓝颜色分量的分布imread('flowers.tif');

imshow('flowers.tif'),title('flowers.tif');

improfile,title('主对角线红绿蓝分量')

C:图像灰度变化

f=imread('rice.png');

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('me.jpg');

imshow(g),title('原始图片');

h=log(1+double(g)); %对输入图像对数映射变换

h=mat2gray(h); %将矩阵h转换为灰度图片

h=im2uint8(h); %将灰度图转换为8位图

imshow(h),title('转换后的8位图');

运行后的结果:

实验二:直方图变换

A:直方图显示

I=imread('cameraman.tif'); %读取图像

subplot(1,2,1),imshow(I) %输出图像

title('原始图像') %在原始图像中加标题

subplot(1,2,2),imhist(I) %输出原图直方图

title('原始图像直方图') %在原图直方图上加标题运行结果如下:

例子:读入图像‘rice.png’,在一个窗口中显示灰度级n=64,128和256的图像直方图。

I=imread('rice.png');

imshow(I)

figure,imhist(I,64)

figure,imhist(I,128)

运行结果如下:

B:直方图灰度调节

利用函数imadjust调解图像灰度范围,观察变换后的图像及其直方图。

I=imread('rice.png');

J=imadjust(I,[0.15 0.9],[0 1]);

subplot(221),imshow(I),title('rice');

subplot(222),imhist(I),title('直方图');

subplot(223),imhist(J),title('imadjust(I,[0.15 0.9],[0 1])');

subplot(224),imshow(J),title('adjust—rice');

例子:

I=imread('cameraman.tif');

J=imadjust(I,[0 0.2],[0.5 1]);

subplot(221),imshow(I),title('cameraman');

subplot(222),imhist(I),title('直方图');

subplot(223),imhist(J),title('imadjust(I,[0 0.2],[0.5 1])');

subplot(224),imshow(J),title('adjust—cameraman');

C;直方图均衡化

在matlab环境中,程序首先读取图像,然后调用灰度均衡函数,设置相关参数,再输出处理后的图像。

I=imread('cameraman.tif'); %读取图像

subplot(2,2,1),imshow(I) %输出图像

title('原始图像') %在原始图像中加标题

subplot(2,2,3),imhist(I) %输出原图直方图

title('原始图像直方图') %在原图直方图上加标题

a=histeq(I,256); %直方图均衡化,灰度级为256

subplot(2,2,2),imshow(a) %输出均衡化后图像

title('均衡化后图像') %在均衡化后图像中加标题

subplot(2,2,4),imhist(a) %输出均衡化后直方图

title('均衡化后图像直方图') %在均衡化后直方图上加标题运行结果:

图像均衡实例:

I=imread('pout.tif');

imshow(I)

figure,imhist(I)

J=histeq(I);

figure,imhist(J)

figure,imshow(J)

subplot(221),imshow(I),title('pout'); subplot(222),imhist(I),title('pout直方图'); subplot(223),imhist(J),title('histeq(i)'); subplot(224),imshow(J),title('eq-pout');

相关文档
最新文档