数字图像处理程序

  • 格式:doc
  • 大小:23.74 KB
  • 文档页数:12

下载文档原格式

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

数字图像处理实验

图像处理实验(一)直方图

灰度变换是图像增强的一种重要手段,使图像对比度扩展,图像更加清晰,特

征更加明显。

灰度级的直方图给出了一幅图像概貌的描述,通过修改灰度直方图来得到图像

增强。

1、灰度直方图

(1)计算出一幅灰度图像的直方图

clear

close all

I=imread('004.bmp');

imhist(I)

title('实验一(1)直方图');

(2)对灰度图像进行简单的灰度线形变换,

figure

subplot(2,2,1)

imshow(I);

title('试验2-灰度线性变换');

subplot(2,2,2)

histeq(I);

(3)看其直方图的对应变化和图像对比度的变化。

原图像 f(m,n) 的灰度范围 [a,b] 线形变换为图像 g(m,n),灰度范围[a’,b’]公式:g(m,n)=a’+(b’-a’)* f(m,n) /(b-a)

figure

subplot(2,2,1)

imshow(I)

J=imadjust(I,[0.3,0.7],[0,1],1);

title(' 实验一(3)用g(m,n)=a’+(b’-a’)* f(m,n) /(b-a)进行变换 '); subplot(2,2,2)

imshow(J)

subplot(2,2,3)

imshow(I)

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

subplot(2,2,4)

imshow(J)

(4) 图像二值化(选取一个域值,(5) 将图像变为黑白图像)

figure

subplot(2,2,1)

imshow(I)

J=find(I<150);

I(J)=0;

J=find(I>=150);

I(J)=255;

title(' 实验一(4)图像二值化 ( 域值为150 ) ');

subplot(2,2,2)

imshow(I)

clc;

I=imread('14499.jpg');

bw=im2bw(I,0.5);%选取阈值为0.5

figure;

imshow(bw) %显示二值图象

图象处理变换(二)

1.傅立叶变换

熟悉其概念和原理,实现对一幅灰度图像的快速傅立叶变换,并求其变换后的系数分布.

2.离散余弦变换

熟悉其概念和原理,实现对一幅灰度和彩色图像作的离散余弦变换,选择适当的DCT系数阈值对其进行DCT反变换.

% 图象的FFT变换

clc;

I=imread('005.bmp');

subplot(1,2,1)

imshow(I);

title('原图');

subplot(1,2,2)

imhist(I);

title('直方图');

colorbar;

J=fft2(I);

figure;

subplot(1,2,1)

imshow(J);

title('FFT变换结果');

subplot(1,2,2)

K=fftshift(J);

imshow(K);

title('零点平移');

figure;

imshow(log(abs(K)),[]),colormap(jet(64)),colorbar;

title('系数分布图');

% 图象的DCT变换

RGB=imread('005.bmp');

figure;

subplot(1,2,1)

imshow(RGB);

title('彩色原图');

a=rgb2gray(RGB);

subplot(1,2,2)

imshow(a);

title('灰度图');

figure;

b=dct2(a);

imshow(log(abs(b)),[]),colormap(jet(64)),colorbar;

title('DCT变换结果');

figure;

b(abs(b)<10)=0;

% idct

c=idct2(b)/255;

imshow(c);

title('IDCT变换结果');

图象处理变换(三)小波变换

实验内容:熟悉小波变换的概念和原理,熟悉matlab小波工具箱主要函数的使用.利用二维小波分析对一幅图象作2层小波分解,并在此基础上提取各层的低频信息实现图像的压缩.

程序如下:

clc

close all

clear

a=imread('005.bmp');

subplot(1,2,1);

imshow(a);

title('原始图象');

I=rgb2gray(a);

subplot(1,2,2);

imshow(I);

title('原始图象的灰度图');

% 进行二维小波变换

[a,b] = wavedec2(I, 2, 'bior3.7');

% 提取各层低频信息

figure;

c = appcoef2( a, b, 'bior3.7', 1 );

subplot(1,2,1);

imshow(c, []);

title('一层小波变换结果');

d = appcoef2( a, b, 'bior3.7', 2 );

subplot(1,2,2);

imshow(d, []);

title('二层小波变换结果');

图象处理实验(四)模板运算

一、实验内容:

(1)平滑:平滑的目的是模糊和消除噪声。平滑是用低通滤波器来完成,在空域中全是正值。

(2)锐化:锐化的目的是增强被模糊的细节。锐化是用高通滤波器来完成,在空域中,接近原点处为正,在远离原点处为负。

利用模板进行图象增强就是进行模板卷积。

1、利用二个低通邻域平均模板(3×3和9×9)对一幅图象进行平滑,验证模板尺寸对图象的模糊效果的影响。

2、利用一个低通模板对一幅有噪图象(GAUSS白噪声)进行滤波,检验两种滤波模板(分别使用一个5×5的线性邻域平均模板和一个非线性模板:3×5中值滤波器)对噪声的滤波效果。

3、选择一个经过低通滤波器滤波的模糊图象,利用sobel和prewitt水平边缘增强高通滤波器(模板)对其进行高通滤波图象边缘增强,验证模板的滤波效果。

4、选择一幅灰度图象分别利用一阶Sobel算子和二阶Laplacian算子对其进行边缘检测,验证检测效果。

二、实验步骤:

1、利用低通邻域平均模板进行平滑:

I=imread('girl.bmp');

subplot(1,3,1);

imshow(I);

title('原图');

J=fspecial('average');