直方图均衡中值滤波均值滤波锐化滤波.doc
文本预览下载声明
直方图均衡及图像滤波
实验目的
1、通过实验进一步加深原理的理解;
、提高Matlab编程能力
实验原理
(一)
在实际应用中,希望能够有目的地增强某个灰度区间的图像, 即能够人为地修正直方图的形状, 使之与期望的形状相匹配,这就是直方图规定化的基本思想。换句话说,希望可以人为地改变直方图形状,使之成为某个特定的形状,直方图规定化就是针对上述要求提出来的一种增强技术,它可以按照预先设定的某个形状来调整图像的直方图。每一可能的灰度层次所占的像素个数尽量均等,每个像素具有同样的显示机会,从而使图像细节清晰,改善图像的整体对比度。
()
中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性信号处理技术,中值滤波的基本原理是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替,让周围的像素值接近的真实值,从而消除孤立的噪声点。方法是用某种结构的二维滑动模板,将板内像素按照像素值的大小进行排序,生成单调上升(或下降)的为二维数据序列。模板通常为3×3和5×5区域,也可以是其他不同的形状,如线状,圆形,十字形,圆环形等。
()
均值滤波是一种利用模版对图像进行模板操作的图像平滑方法,所谓模版是指模版中所有系数都取相同值的模版,常用的3×3和5×5模版。
邻域平均法的思想是通过一点和邻域内像素点求平均来去除突变的像素点,从而滤掉一定噪声,其优点是算法简单,计算速度快,其代价会造成图像在一定程度上的模糊。
实验
直方图均衡
首先读入一幅图像,利用Matlab的rgb2gray()函数将其转化为灰度图,便于接下来的处理。转化成的灰度图像如下图所示:
图1 原灰度图
上面灰度图的直方图如下:
图2 原灰度图的直方图
上面原始图像的直方图共256个灰度级,我们统计每个灰度级内像素数量,每个灰度级像素数量占像素总数量的比例,计算累计直方图做出灰度直方图:
累计直方图如下:
图3 累积直方图
然后按照的映射关系,将原像素的灰度值变为该式映射的灰度值,从而获得均衡后的图像和均衡后的直方图。
均衡后的图像如下:
图4 直方图均衡化后图像
从图4可以看出,均衡化后的图像细节更加清晰,整体对比度提高。
均衡后的直方图如下:
图5 均衡化后直方图
从图5可以看出:
1、变换后直方图趋向平坦,部分灰度合并,有效的灰度级减少;
变换后含有像素数多的几个灰级间隔被拉大,压缩的只是像素数少的几个灰度级。
中值滤波
在进行滤波前,首先给图像添加噪声,在此,我们给图像添加椒盐噪声,得到加入噪声后的图像如下:
图6 中值滤波后图像
均值滤波
均值滤波能够减弱或消除图像的高频分量,保留图像的低频分量,可用于降低或消除图像中的噪声。因此我们也可以用均值滤波去除图像上的噪点。
在这里我们利用下面的平滑模板对图像进行均值滤波:
则每个像素点等于周围自身加上周围8个像素灰度值的均值。
得到均值滤波后的图像如下:
图7 均值滤波后图像
从图7中可以看出,均值滤波后,图像上的噪点减弱,但是仍剩余一些噪点,与图6中值滤波的结果相比,均值滤波对于椒盐噪声的滤波效果要差些。
结果分析
()
滤波窗口的大小对滤波效果有重要影响。为了探究滤波窗口大小对滤波效果的影响,我们以均值滤波为例,分别采用3×3,5×5,7×7,9×9,11×11,13×13的窗口,对添加椒盐噪声的图像进行滤波实验,得到滤波效果如下:
图图图图图图()图图图1图1图1实验心得
附录
clc;clear all;close all;
ARGB = imread(lady.jpg);
imwrite(rgb2gray(ARGB),AGray.bmp); %将彩色图片灰度化并保存
AGray=rgb2gray(ARGB); %灰度化后的数据存入数组
figure;
imshow(AGray); %显示均衡化后的图像
title(原灰度图像);
%%%%%%%%%%%%%%二、绘制直方图%%%%%%%%%%%%%%%%%%%%%%%
[m,n]=size(AGray); %测量图像的宽和高
p=zeros(1,256); %存储每个灰度级出现的概率p(k)=nk/N
for k=0:255
p(k+1)=length(find(AGray==k))/(m*n); %计算每级灰度出现的概率,将其存入p(k)中相应位置
end
figure;
ba
显示全部