[数字图像处理]图像去噪初步(1)--均值滤波器

2024-04-01 07:08

本文主要是介绍[数字图像处理]图像去噪初步(1)--均值滤波器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.图像去噪的前言


    上一篇博文中,我对噪声的类型进行了介绍,也使用的Matlab对各种噪声进行了实现。旧话重提,一幅图像,甚至是一个信号的老化,可以使用以下模型来表示。


可以使用以下算式来表示


这里,由于退化函数的作用,使得原图像产生退化(比如,运动模糊),然后在加上一个加性噪声项

      本博文,主要对去除加性噪声的线性滤波器的性能进行了比较。对于退化函数的去除(称为去卷积或者逆滤波),将放在稍后的博文。


      1.1 实验用图像 




      1.2 实验结果的评价

            实验的步骤为,将实验用图像加上加性噪声,然后使用滤波器进行去噪,比较所得到的图像的画质。这里,就涉及到画质的评价方法。一般的,去噪图像的评价一般使用PSNR(峰值信噪比)。


       对于8-bit的图片而言,这里的MAX为255。PSNR越大,其画质就越好。但是,有些时候,使用PSNR来进行评价,也有不太合理的时候。

       请对比如下三张图片,a)是使用平均滤波器进行了处理,使其有些模糊;b)是使用高斯噪声污染原图;c)是使用椒盐噪声污染的图像。


    问题来了,这三张图像哪张画质最好,哪张最差。普遍的,画质从好到差排列,大家的答案应该是

a) > c) > b)

这样的(更多实际例子,请参考https://ece.uwaterloo.ca/~z70wang/research/ssim/)。那么,我们求其的PSNR是这样的。


这明显不科学,三幅图像的PSNR是一样的。反观PSNR的计算式,PSNR计算的时候,使用了MSE这个量。而MSE仅仅表现了两幅图像的灰度值的差,而对于图像的结构,却没有进行任何分析。

       这里使用一种比较好的图像画质评价的方法:SSIM(念做:艾斯-希姆)。这是一种由两张图像的灰度差异,构造差异和对比度去判断两张图的接近程度的方法。详情请参考[文献1],这里只做简单的介绍一下啦。


SSIM从图像亮度(Luminance),图像对比度(Contrast)和图像构造(Structure)去判断处理过的图像与原图的差异。这里,使用了某个区域的内的平均值作为亮度度量,使用方差作为对比度度量,使用协方差作为构造度量,来进行判断。这样,SSIM就比仅使用灰度去判断的PSNR更加准确。一样的,使用SSIM求取上面三幅图象的类似度。


从上表可以看出来,通过使用SSIM进行判断的结果,更加符合人眼的主观感受。本文余下的实验,全部使用SSIM去判断画质。


2.几个均值滤波器---线性处理


这篇关于[数字图像处理]图像去噪初步(1)--均值滤波器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/866523

相关文章

初步学习Android的感想

之前在学习java语言的时候就经常听说过Android这门语言,那时候感觉Android有些神秘感,再加上Android是用来开发移动设备的一门语言,所以一直对Android抱有一种兴奋的心情。 在我开始接触 Android之后,感觉超好玩,因为可以在自己的手机设备上开发一些我喜欢的小应用,再想想之前说学习Android应该会很难,但是如果你真的接触了,而且有JAVA的功底,我想学习Androi

《计算机视觉工程师养成计划》 ·数字图像处理·数字图像处理特征·概述~

1 定义         从哲学角度看:特征是从事物当中抽象出来用于区别其他类别事物的属性集合,图像特征则是从图像中抽取出来用于区别其他类别图像的属性集合。         从获取方式看:图像特征是通过对图像进行测量或借助算法计算得到的一组表达特性集合的向量。 2 认识         有些特征是视觉直观感受到的自然特征,例如亮度、边缘轮廓、纹理、色彩等。         有些特征需要通

《数字图像处理(面向新工科的电工电子信息基础课程系列教材)》P98

更改为 差分的数学表达式从泰勒级数展开式可得: 后悔没听廖老师的。 禹晶、肖创柏、廖庆敏《数字图像处理(面向新工科的电工电子信息基础课程系列教材)》 禹晶、肖创柏、廖庆敏《数字图像处理》资源二维码

初步了解VTK装配体

VTK还不太了解,根据资料, vtk.vtkAssembly 是 VTK库中的一个重要类,允许通过将多个vtkActor对象组合在一起来创建复杂的3D模型。 import vtkimport mathfrom vtk.util.colors import *filenames = ["cylinder.stl","sphere.stl","torus.stl"]dt = 1.0renW

Weka的初步介绍

Weka无疑是数据挖掘入门的最好工具,初学者可以直接使用图形界面了解数据挖掘的相关算法(如何使用网上有很多教程,可以参考 http://download.csdn.net/detail/u013422712/8649239)。     进阶阶段就必须学会使用和了解Weka的源码,这会在接下去的文章中写道。

【MATLAB】FIR滤波器的MATLAB实现

FIR滤波器的MATLAB实现 FIR滤波器的设计fir1函数fir2函数 与IIR滤波器相比,FIR滤波器既有其优势也有其局限性。FIR滤波器的主要优点包括: 精确的线性相位响应;永远保持稳定性;设计方法通常是线性的;在硬件实现中具有更高的运行效率;启动传输仅需有限的时间。 然而,FIR滤波器也存在一些显著的缺点: 为了达到与IIR滤波器相同的性能要求,FIR滤波器通常需要

波导模式分析2 用于圆TE01模式高功率传输线的大型多模波导滤波器

摘要: 一种对于大型多模波导滤波器的设计方法,其能衰减掉(deteriorate)不想要的模式而不影响所需要的工作模式,被提出来抑制用于圆TE01模式高功率传输线的受限模式谐振。为了从TE10模式中分离出不期望的模式,引入了一种形变圆波导。在波导中的本征模式通过微扰分析理论推断,并且研究了一些公共模式的传输特性。此分析显示在工作TE01模式和其他模式之间通过变形圆波导可以获得显然的模式间隔,特别

Maven的初步使用以及命令行工具

在写本文的时候先来说明一下maven依赖的各种范围的意思 compile(编译范围) compile 是默认的范围;如果没有提供一个范围,那该依赖的范围就是编译范围。编译范围依赖在所有的classpath 中可用,同时它们也会被打包。 provided(已提供范围)provided 依赖只有在当JDK 或者一个容器已提供该依赖之后才使用。例如,如果你开发了一个web 应用,你可能在编译cl

基于LangChain+LLM的相关技术研究及初步实践

01 概述 大模型概述 大模型是指具有大规模参数和复杂计算结构的机器学习模型。这些模型通常由深度神经网络构建而成,拥有数十亿甚至数千亿个参数。大模型的设计目的是为了提高模型的表达能力和预测性能,能够处理更加复杂的任务和数据。大模型在各种领域都有广泛的应用,包括自然语言处理、计算机视觉、语音识别和推荐系统等。大模型通过训练海量数据来学习复杂的模式和特征,具有更强大的泛化能力,可以对未见过的数据

Mybaites初步认知

Mybaties中映射语句是最强大的地方。ResultMap是其中最重要,最强大的元素。 一个Mybaties以一个SqlSessionFactory实例为中心,通过配置类SqlSessionFactoryBuilder创建SqlSessionFactory. SqlSessionFactory作用域为application,在整个应用程序中始终存在,获取sqlsession实例。(SqlSe