图像增强实验报告

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

课程: 数字图像处理实验日期: 2012年 4 月日成绩:
实验一图像增强与平滑
一.实验目的及要求
1.了解MATLAB的操作环境和基本功能。

2.掌握MATLAB中图像增强与平滑的函数的使用方法。

3.加深理解图像增强与平滑的算法原理。

二.实验原理
图像增强的目的是改善图像的视觉效果,或者使图像更适合于人或机器进行分析处理。

通过图像增强,可以减少图像中的噪声,提高目标与背景的对比度,也可以强调或抑制图像中的某些细节。

从处理的作用域出发,图像增强可以分为空间域法和频率域法。

前者在空间域直接对像素进行处理,后者在图像的变换域内处理,然后经逆变换获得增强图像。

图像增强技术主要有:空域变换增强、空域滤波增强、频域增强。

点运算可以在空域内进行图像灰度修正、图像灰度变换以及图像直方图修正。

空域滤波增强主要应用平滑滤波器、中值滤波器以及锐化滤波器。

频域增强主要应用高通滤波和同态滤波。

图像增强还包括图像的伪彩色处理。

彩色图像中包含有丰富的细节信息,为了获得清晰的彩色图像,保护原有的彩色信息,消除亮度不够对彩色图像像质的影响, 应用图像增强技术对彩色图像进行处理,既可以得到清晰的彩色图像,又可以保护原有的彩色信息。

总之图像增强技术就是对图像中感兴趣的特征有选择地突出,而衰减其不需要的特征。

三、实验内容
(一)研究以下程序,分析程序功能;输入执行各命令行,认真观察命令执行的结果。

熟悉程序中所使用函数的调用方法,改变有关参数,观察试验结果。

(可将每段程序保存为一个.m文件)
1.直方图均衡化
clear all; close all % Clear the MATLAB workspace of any variables
% and close open figure windows.
I = imread('pout.tif'); % Rea ds the sample images ‘ pout.tif’, and stores it in
imshow(I) % an array named I.display the image
figure, imhist(I) % Create a histogram of the image and display it in
% a new figure window.
[I2,T] = histeq(I); % Histogram equalization.
figure, imshow(I2) % Display the new equalized image, I2, in a new figure window.
figure, imhist(I2) % Create a histogram of the equalized image I2.
figure,plot((0:255)/255,T); % plot the transformation curve.
课程: 数字图像处理实验日期: 2012年 4 月日成绩:
imwrite (I2, 'pout2.png'); % Write the newly adjusted image I2 to a disk file named
% ‘pout2.png’.
imfinfo('pout2.png') % Check the contents of the newly written file
功能:直方图均衡化的基本思想是将原始图像的直方图变换为均匀分布的形式,从而增加图像灰度的动态范围,达到增强图像对比度的效果。

经过均衡化处理的图像,其灰度级出现的概率相同,此时图像的熵最大,图像所包含的信息量也最大。

2.直接灰度变换Array clear all; close all
I = imread('cameraman.tif');
J = imadjust(I,[0 0.2],[0.5 1]);
imshow(I)
figure, imshow(J)
[X,map] = imread('forest.tif');
figure,imshow(X,map)
I2 = ind2gray(X,map);
J2 = imadjust(I2,[],[],0.5);
figure,imshow(I2)
figure, imshow(J2)
J3 = imadjust(I2,[],[],1.5);
figure, imshow(J3)
help imadjust % Display the imadjust() function information.
功能:灰度变换就是把原图像的像素灰度经过某个变换函数变换成新的图像灰度。

直接灰度变换法有线性、分段线性以及非线性变换。

3.空域平滑滤波(模糊、去噪)
clear all; close all
I = imread('eight.tif');
h1 = ones(3,3) / 9;
h2 = ones(5,5) / 25;
I1 = imfilter(I,h1);
I2 = imfilter(I,h2);
figure(1), imshow(I), title('Original Image');
figure(2), imshow(I1), title('Filtered Image With 3*3 ')
figure(3), imshow(I2), title('Filtered Image With 5*5 ')
% 加入Gaussian 噪声
J1 = imnoise(I,'gaussian',0,0.005);
% 加入椒盐噪声
J2 = imnoise(I,'salt & pepper',0.02);
课程: 数字图像处理实验日期: 2012年 4 月日成绩:
% 对J1、J2进行平均值平滑滤波
K1 = imfilter(J1,fspecial('average',3));
K2 = imfilter(J2,fspecial('average',3));
figure(4);
subplot(2,2,1), imshow(J1) , title('gaussian');
subplot(2,2,2), imshow(J2), title('salt & pepper ');
subplot(2,2,3), imshow(K1), title('average ');
subplot(2,2,4), imshow(K2);
% 对J1、J2进行中值滤波
K3 = medfilt2(J1,[3 3]);
K4 = medfilt2(J2,[3 3]);
figure(5);
subplot(2,2,1), imshow(J1) , title('gaussian');
subplot(2,2,2), imshow(J2), title('salt & pepper ');
subplot(2,2,3), imshow(K3), title('Median filtering ');
subplot(2,2,4), imshow(K4)
功能:通过中值滤波,消除图像噪声,模糊图像以达到使图像平滑的目的。

4.空域锐化滤波
clear all; close all
I = imread('moon.tif');
w=fspecial('laplacian',0)
w8=[1,1,1;1,-8,1;1,1,1]
I1= imfilter(I,w, 'replicate');
figure(1); imshow(I), title('Original Image');
figure(2), imshow(I1), title('Laplacian Image');
f = im2double(I);
f1= imfilter(f,w, 'replicate');
figure(3), imshow(f1,[]), title('Laplacian Image');
f2= imfilter(f,w8, 'replicate');
f4 = f-f1;
f8 = f-f2;
figure(4), imshow(f4);
figure(5), imshow(f8);
功能:空间域高通滤波主要用模板卷积来实现,本实验用拉普拉斯算子来实现空间域锐化滤波,是模糊的图像变清晰,增强图像边缘等细节,来达到图像锐化的目的。

5.图像的伪彩色处理—密度分割
clear all, close all
课程: 数字图像处理 实验日期: 2012年 4 月 日 成绩:
I = imread('ngc4024m.tif');
X = grayslice(I,16);
imshow(I), title('Original Image')
figure, imshow(X,jet(16)), title('Index Color Image')
伪彩色处理是指对不同的灰度级赋予不同的颜色从而将灰度图像变为彩色图像。

为了引起特殊关注,把自然彩色图像变为伪彩色图像,为了突出某些图像细节内容,可把其变成人眼敏感的彩色。

(二)采用MATLAB 底层函数编程实现以下灰度线性变换
假定原图像f (x , y )的灰度范围为[a , b ],希望变换后图像 g (x , y )的灰度范围扩展至[c , d ],则线性变换可表示为:
c a y x f a
b c d y x g +---=]),([),( 用MA TLAB 底层函数编程实现上述变换函数。

观察图像‘ pout.tif’的灰度直方图,选择合适的参数[a , b ]、[c , d ]对图像‘pout.tif ’进行灰度变换,以获得满意的视觉效果。

四、实验设备
1.PIII 以上微机;
2.MATLAB6.5;
五、实验心得与意见
通过此次实验,了解MATLAB 的操作环境和基本功能,以及如何使用MATLAB 来实现图像增强与平滑,还有它们各种函数的使用方法。

相关文档
最新文档