实验二 图像基本操作

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

实验二图像基本操作

一、实验目的

1、熟悉及掌握图像的采样原理,实现图像的采样过程,进行图像的灰度转换。

2、理解直方图的概念及应用,实现图像直方图的显示,及通过直方图均衡和直方图规定化方法对图像进行修正。

二、实验环境

MATLAB6.5以上版本、WIN XP或WIN2000计算机

三、相关函数

图像的增强

1、直方图

imhist函数用于数字图像的直方图计算或显示,

imhist(I,n)计算和显示图像I的直方图,n为指定的灰度级数目,默认为256。如果I是二值图像,那么n仅有两个值。

[counts,x]=imhist(...)返回直方图数据向量counts,相应的色彩值向量x。

如:

i=imread('e:\w01.tif');

imhist(i);

2、直方图均衡化

histeq函数用于数字图像的直方图均衡化,

J=histeq(I,n)均衡化后的级数n,缺省值为64。

J=histeq(I,hgram)"直方图规定化",即将原是图象I的直方图变换成用户指定的向量hgram(即指定另一幅图像的直方图数据向量)。

如:

i=imread('e:\w01.tif');

j=histeq(i,N);对图像i执行均衡化,得到具有N个灰度级的灰度图像j,N缺省值为64

3、灰度调整

imadjust函数用于数字图像的灰度或颜色调整,

J=imadjust(I)将灰度图像I中的亮度值映射到J中的新值并使1%的数据是在低高强度和饱和,这增加了输出图像J的对比度值。

J=imadjust(I,[low_in;high_in],[low_out;high_out])

将图像I中的亮度值映射到J中的新值,即将low_in至high_in之间的值映射到low_out至high_out之间的值。low_in以下与high_in以上的值被剪切掉了,也就是说,low_in以下的值映射到low_out,high_in以上的值映射到high_out。它们都可以使用空的矩阵[],默认值是[01]。

如:

i=imread('e:\w01.tif');

j=imadjust(i,[0.3,0.7],[]);将图像i转换为j,使灰度值从0.3~0.7与缺省值0~1相匹配

运算函数

1、Zeros生成全0数组或矩阵

如B=zeros(m,n)or B=zeros([m n])返回一个m*n全0矩阵

2、取整函数

floor最小取整函数

round四舍五入取整函数

ceil最大取整函数

如a=[-1.9,-0.2,3.4,5.6,7.0,2.4+3.6i]

I=round(a)

I=[-203672+4i]

四、实验内容

1、调试运行8倍减采样程序,分析程序,对每条语句给出注释,并显示最终执行结果。

a=imread(‘e:\i_lena.JPG’);%读取图像

b=rgb2gray(a);%将图像转化成灰度图像

[wid,hei]=size(b);%得出图像的宽度和高度

wid=

257

hei=

386

quartimg=zeros(wid/2+1,hei/2+1);

i1=1;

j1=1;

for i=1:2:wid

for j=1:2:hei

quartimg(i1,j1)=b(i,j);

j1=j1+1;

end

i1=i1+1;

j1=1;

end

figure

imshow(uint8(quartimg))

2、显示一幅灰度图像a,改变图像亮度使其整体变暗得到图像b,显示两幅图像的直方图,

解:

>>a=imread('C:\Documents and Settings\Administrator\桌面\图片\1.jpg');

>>imshow(a)

b=rgb2gray(a);

imshow(b)

J=imsubtract(b,100);

Imshow(J)

1、直方图

imhist函数用于数字图像的直方图计算或显示,

imhist(I,n)计算和显示图像I的直方图,n为指定的灰度级数目,默认为256。如果I是二值图像,那么n仅有两个值。

[counts,x]=imhist(...)返回直方图数据向量counts,相应的色彩值向量x。

如:

i=imread('e:\w01.tif');

imhist(i);

>>subplot(1,2,2)

>>imhist(J,256)

>>title('变暗后的图像J')

>>subplot(1,2,1)

>>subplot(1,2,1)

>>imhist(b,256)

>>title('灰色图像b')0

200400

600800

1000灰色图像b 的直方图

01002000

500

1000

1500

2000

2500

3000

3500

4000

4500

灰色图像变暗后J 的直方图01002003、对图像b 进行直方图均衡化,显示结果图像和对应直方图。

2、直方图均衡化

histeq 函数用于数字图像的直方图均衡化,

J =histeq(I,n)均衡化后的级数n ,缺省值为64。

J =histeq(I,hgram)"直方图规定化",即将原是图象I 的直方图变换成用户指定的向量hgram (即指定另一幅图像的直方图数据向量)。

如:

i=imread('e:\w01.tif');

j=histeq(i ,N);对图像i 执行均衡化,得到具有N 个灰度级的灰度图像j ,N 缺省值为64

相关文档
最新文档