您好,欢迎来到爱go旅游网。
搜索
您的当前位置:首页图像增强

图像增强

来源:爱go旅游网


实验四 图像增强

实验内容:(1)直方图均衡化处理:给定一幅图片,作出均衡化后的直方图,并将原图和均衡化后的图片进行对比。

(2)对一副图像采用多种方法(如均值滤波)实现图像平滑;及采用“原图-低通图像(均值滤波)”、及“原图+高通图像(各种算子)”的方法锐化图像。

实验原理:(1)直方图均衡化是图像增强的重要手段,把输入图像的直方图进行均衡化处理后,可以获得更加清晰的图像。

(2)锐化和平滑是图像增强的重要手段,采用前者可以突出图像的细节,采用平滑可以滤除图像中的噪声,从而达到图像清晰的目的。

实验报告要求:给出实验代码,和实验结果图,并对实验结果进行分析。

所用函数:

(1) Imhist

函数功能:该函数用于获取图像数据直方图。

调用格式:imhist(I,n)

其中,n为指定的灰度级数目,缺省值为256

(2) histeq

g=histeq(f,n)

对图像f进行均衡化处理,n为输出图像指定的灰度级数,默认值为64;

k=histeq(f,p)

对图像f进行规定化处理,p为指定的直方图,k为输出图像,其直方图近似于指定的直方图p。

(3)fspecial

用于建立预定义的滤波算子,其语法格式为:

h = fspecial(type)

h = fspecial(type,para)

其中type指定算子的类型(可以为'average'——均值滤波,参数为hsize代表模板尺寸,默认值为【3,3】; 'disk'——圆形区域均值滤波,参数为radius代表区域半径,默认值为5;'gaussian'——高斯低通滤波,有两个参数,hsize表示模板尺寸,默认值为【3 3】,sigma为滤波器的标准值,单位为像素,默认值为0.5。'laplacian'——拉普拉斯算子,参数alpha用于控制算子形状,取值范围为【0,1】,默认值为0.2。'log'——拉普拉斯高斯算子,有两个参数,hsize表示模板尺寸,默认值为【3 3】,sigma为滤波器的标准差,单位为像素,默认值为0.5。’motion’——运动模糊算子,有两个参数,表示摄像物体

逆时针方向以theta角度运动了len个像素,len的默认值为9,theta的默认值为0;'prewitt'——用于边缘增强,无参数;'sobel'——用于边缘提取,无参数;'unsharp'——为对比度增强滤波器),参数alpha用于控制滤波器的形状,范围为【0,1】,默认值为0.2。para指定相应的参数。

(4)filter2

基于卷积的图象滤波函数,其语法格式为:

Y = filter2(h,X)

其中Y = filter2(h,X)返回图像X经算子h滤波后的结果,默认返回图像Y与输入图像X大小相同。其实filter2和conv2是等价的。MATLAB在计算filter2时先将卷积核旋转180度,再调用conv2函数进行计算。

1.图像均衡化处理

程序:

clear all

I=imread('D:\\matlab图片\\12_gray.bmp');

H=histeq(I); %均衡化后图像I的直方图'

subplot(2,2,1),imshow(I),title('原始图像');

subplot(2,2,2),imhist(I),title('显示原始图像直方图');

subplot(2,2,3),imshow(H),title('均衡化处理的图像');

subplot(2,2,4),imhist(H),title('显示均衡化后图像的直方图');

结果:

2.图像平滑、锐化处理:

程序1

I=imread('D:\\matlab图片\\lena_gray.bmp');

a=0.01;

pic=imnoise(I,'gaussian',0,a);

%b=[1 2 2;3 4 2;1 2 4];

y1=medfilt2(pic,[3,3]);%中值滤波

y2=medfilt2(pic,[16,16]);%中值滤波

subplot(2,2,1),imshow(I),title('原图像');

subplot(2,2,2),imshow(pic),title('加噪声后的图像');

subplot(2,2,3),imshow(y1),title('中值滤波3*3处理以后的图像');

subplot(2,2,4),imshow(y1),title('中值滤波16*16处理以后的图像');

结果:

程序2

clear all

%I = imread('D:\\matlab图片\\lena_gray.bmp');

I = imread('D:\\matlab图片\\12_gray.bmp');

w=fspecial('laplacian',0);

w8=[-1,-1,-1;-1,8,-1;-1,-1,-1];

I1= imfilter(I,w, 'replicate');

f = im2double(I);

f1= imfilter(f,w, 'replicate');

f2= imfilter(f,w8, 'replicate');

f3 = f-f1;%得到平滑,突出边界

f4 = f-f2;

subplot(2,3,1),imshow(I),title('原图像');

subplot(2,3,2),imshow(I1),title('拉普拉斯算子处理图像');

subplot(2,3,3),imshow(f1),title('拉普拉斯算子处理图像');

subplot(2,3,4),imshow(f2),title('自定义算子处理图像');

subplot(2,3,5),imshow(f3),title('相减以后的图像');

subplot(2,3,6),imshow(f4),title('相减以后的图像');

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igat.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务