基于Matlab的图像去噪算法仿真(二)

在信息化的社会里,图像在信息传播中所起的作用越来越大。所以,消除在图像采集和传输过程中而产生的噪声,保证图像受污染度最小,成了数字图像处理领域里的重要部分。

本文主要研究分析邻域平均法、中值滤波法、维纳滤波法及模糊小波变换法的图像去噪算法。首先介绍图像处理应用时的常用函数及其用法;其次详细阐述了四种去噪算法原理及特点;最后运用Matlab软件对一张含噪图片(含高斯噪声或椒盐噪声)进行仿真去噪,通过分析仿真结果得出:

一.均值滤波是典型的线性滤波,对高斯噪声抑制是比较好的;

二.中值滤波是常用的非线性滤波方法,对椒盐噪声特别有效;

三.维纳滤波对高斯噪声有明显的抑制作用;

四.对小波系数进行阈值处理可以在小波变换域中去除低幅值的噪声和不期望的信号。

本论文主要是从两方面展开,首先是图像去噪算法:简要说明了图像噪声的概念及分类,详细阐述了邻域平均法、中值滤波法、维纳滤波法及模糊小波变换法的去噪原理及特点。

其次是基于Matlab的图像去噪算法仿真:根据邻域平均法、中值滤波法、维纳滤波法及模糊小波变换法原理分析,运用Matlab仿真软件编写代码,对一张含噪图片(含高斯噪声或椒盐噪声)进行仿真去噪,并对结果分析讨论,比较几种方法的优缺点。

本论文仿真时选取一张彩色图片"2010-03-09-2.bmp",并在图片中加入两种噪声:高斯噪声和椒盐噪声。所谓高斯噪声是指它的概率密度函数服从高斯分布的一类噪声。椒盐噪声是由图像传感器、传输信道、解码处理等产生的黑白相间的亮暗点噪声,属于非平稳噪声。本章利用Matlab软件对含噪图像的去噪算法进行仿真,将应用邻域平均法、中值滤波法、维纳滤波法和模糊小波变换法对含有高斯噪声和椒盐噪声图像的去噪效果进行比较,从而得到相应结论。

    1. 邻域平均法的仿真

本节选用邻域平均法对含有高斯噪声和椒盐噪声的图片进行去噪,并用Matlab软件仿真。

(1)给图像加入均值为0,方差为0.02的高斯噪声,选择3×3模板去噪

Matlab部分代码:

j=imnoise(x,'gaussian',0,0.02);

h=ones(3,3);

h=h/9;

k=conv2(j,h);

仿真结果如图4-1所示。

图1-1 邻域平均法对高斯噪声去噪的仿真结果

(2)给图像加入噪声密度为0.02的椒盐噪声,选择3×3模板去噪

Matlab部分代码:

j=imnoise(x,'salt & pepper',0.02);

h=ones(3 3);

h=h/9;

k=conv2(j,h);

仿真结果如图1-2所示。

从仿真结果可以看出:邻域平均法实现起来很方便,适用于消除图像中的颗粒噪声,但需要指出这种方法既平滑了图像信号,同时使图像的细节部分变得模糊。由以上处理后的图像可以看到:邻域平均法消弱了图像的边缘,使图像变得有些模糊。如图1-1所示,均值滤波对高斯噪声的抑制是比较好的,但对椒盐噪声的抑制作用不好,如图1-2所示,椒盐噪声仍然存在,只不过被削弱了而已。为了改善均值滤波细节对比度不好、区域边界模糊的缺陷,常用门限法来抑制椒盐噪声和保护细小纹理,用加权法来改善图像的边界模糊,用选择平均的自适应技术来保持图像的边界。

相关推荐
Xの哲學8 分钟前
Linux 分区表深度技术剖析
linux·网络·算法·架构·边缘计算
写写闲篇儿16 分钟前
经典算法题剖析之传递信息(三)
算法
上不如老下不如小17 分钟前
2025年第七届全国高校计算机能力挑战赛初赛 Python组 编程题汇总
开发语言·python·算法
小年糕是糕手39 分钟前
【C++】类和对象(二) -- 构造函数、析构函数
java·c语言·开发语言·数据结构·c++·算法·leetcode
机器学习之心1 小时前
SSA-SVMD麻雀算法优化逐次变分模态分解(15种不同的适应度)MATLAB代码
matlab·ssa-svmd·麻雀算法优化逐次变分模态分解
kupeThinkPoem1 小时前
跳表有哪些算法?
数据结构·算法
三维空间1 小时前
在MATLAB中对基因表达数据进行数据预处理
matlab
前端小L1 小时前
图论专题(二十一):并查集的“工程应用”——拔线重连,修复「连通网络」
数据结构·算法·深度优先·图论·宽度优先
88号技师1 小时前
2025年9月一区SCI-孤行尺蠖觅食优化算法Solitary Inchworm Foraging-附Matlab免费代码
开发语言·算法·数学建模·matlab·优化算法
前端小L2 小时前
图论专题(二十五):最小生成树(MST)——用最少的钱,连通整个世界「连接所有点的最小费用」
算法·矩阵·深度优先·图论·宽度优先