什么是双边滤波

双边滤波是一种局部的、非线性的、非迭代的滤波技术,它将经典的低通滤波器边缘停止函数相结合,当像素之间的强度差较大时,边缘停止函数会衰减滤波器的核心。由于同时考虑了相邻像素的灰度相似度和几何贴近度,滤波器的权值不仅依赖于欧氏距离,而且还依赖于灰度/颜色空间中的距离。该滤波器的优点是,它平滑图像的同时保留边缘。

使用双边滤波原因

高斯滤波去降噪,会较明显地模糊边缘,对于高频细节的保护效果并不明显。

 双边滤波引入像素之间的欧氏距离作为加权,使其能够在保持平滑去噪的同时表现出良好的保边性。

双边滤波的数学推导

我们都知道,对图像进行空间域滤波的方法是使用一个结构元素(核)来对原图像进行卷积。比如说高斯核像是这样的:

而这个结构会对原图像进行卷积操作。从而得到一个新的图像,即输出图像。在高斯滤波过程中,这个卷积核是不会变的,但是在双边滤波过程中,卷积核是会根据被积像素的邻域进行观察而改变。为了使图像的边缘得到保留,就要根据当前被卷积像素的邻域进行观察,“推断”是否是边缘点和接近边缘的点。因此,卷积核会发生改变,从而保留边缘点。

下面的一组图中,图a是原图像,图c是输出。而中间的图像是什么呢?显然,这是原图中根据某个点的邻域生成的,专属于这个点的结构元素。

可以看到,原图中显然有一个灰度的突变,这就表示是边缘。灰度值高的地方不应该和灰度低的区域进行混合,所以,图像中接近边缘的一个点就会生成图b这样的结构元素。那么这个接近边缘的点在哪里呢?大概就在我标出的这个区域。

而生成这样的结构元素的方法,是将我们原本的高斯核,与一个能“推断”出是否在边缘点的结构元素相乘,如下图中间的结构元素。

双边滤波的原理图

双边滤波计算公式

双边滤波器的输出像素依赖于当前被卷积像素的邻域。

双边滤波和交叉双边滤波相关推荐

  1. 图像平滑处理(归一化块滤波、高斯滤波、中值滤波、双边滤波)

    图像平滑处理 目标 本教程教您怎样使用各种线性滤波器对图像进行平滑处理,相关OpenCV函数如下: blur GaussianBlur medianBlur bilateralFilter 原理 No ...

  2. [Python图像处理] 四十一.Python图像平滑万字详解(均值滤波、方框滤波、高斯滤波、中值滤波、双边滤波)

    该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门.OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子.图像增强技术.图像分割等,后期结合深度学习研究图像识别 ...

  3. 三种经典图像滤波方法介绍——双边滤波(Bilateral filter)、导向滤波(Guided Fliter)、滚动导向滤波(RollingGuidedFilter)

    文章目录 一.前言 二.双边滤波(Bilateral filter) 2.1 双边滤波的理论介绍及公式推导 2.2 双边滤波的matlab程序实现 三.导向滤波(Guided Fliter) 3.1 ...

  4. 中值滤波,均值滤波,高斯滤波,双边滤波,联合双边滤波介绍

    看GAMES202相关课程发现闫老师讲的太好了,所以记录一下.当然文中涉及的PPT也来自闫老师的课程PPT,欢迎交流. 首先这几种都是空域的滤波方式,用于抑制图像中的噪声.它们采用的原理基本都是通过滤 ...

  5. java 滤波算法_双边滤波算法

    1.原理 高斯滤波是以距离为权重,设计滤波模板作为滤波系数,只考虑了像素间的空间位置上的关系,因此滤波的结果会丢失边缘的信息. 高斯滤波的缺陷如下图所示:平坦区域正常滤波,图像细节没有变化,而在突变的 ...

  6. c++ openvc4.5.5 学习笔记(五)图像平滑滤波几种基本方法(平均滤波blur、高斯平滑滤波GaussianBlur、中值滤波medianBlur、双边滤波bilateralFilter )

    平滑,也称为模糊,是一种简单而经常使用的图像处理操作. 要执行平滑操作,我们将对我们的图像应用过滤器.最常见的滤波器类型是线性的,其中输出像素的值(i.e. g(i,j)),被确定为输入像素值的加权和 ...

  7. Opencv之图像滤波:6.双边滤波(cv2.bilateralFilter)

    前面我们介绍的滤波方法都会对图像造成模糊,使得边缘信息变弱或者消失,因此需要一种能够对图像边缘信息进行保留的滤波算法,双边滤波是综合考虑空间信息和色彩信息的滤波方式,在滤波过程中能够有效地保护 图像内 ...

  8. 图像处理-双边滤波和联合双边滤波

    图像处理-双边滤波和联合双边滤波 双边滤波原理 ​ 双边滤波(Bilateral Filter)是一种非线性滤波器,可以达到保持边缘,降噪平滑的效果.其算法最早由C. Tomasi和R. Manduc ...

  9. 交叉双边滤波器 cross bilateral filter

    首先强调一下,cross bilateral filter 也就是 joint bilateral filter.仅有几篇论文用cross bilateral filter来表示这种滤波技术. 与双边 ...

最新文章

  1. Python3中__init__.py文件介绍
  2. 颈椎病2句话就能治疗好,你也试试看,一学就会!
  3. parameter localparam define的区别
  4. java httpserver 多个接口_多个Servlet之间数据共享实现方案
  5. AdjacentHTML/innerHTML/innerText
  6. HACMP环境修改IP的方法
  7. Win10 64位安装SQL2000(个人版)
  8. 没有任何匹配: mod_auth_mysql 阿里云_文案丨网易云让人感触良多的文案
  9. Lotus notes 通讯录的导入导出
  10. 地理探测器“运行时系统找不到指定文件”报错
  11. 数学-盲点题:九个点用四条直线连起来
  12. android url后缀名,Android获取URL中文件的扩展名的方法
  13. 忆我的大学老师----(一)
  14. html代码标签优化与提速,HTML代码标签优化与提速
  15. 使用Nginx反向代理豆瓣Api电影接口(解决微信小程序频繁调用api被关小黑屋)
  16. linux centos 访问根目录 not accessable
  17. 解决问题“The App ID ‘XXXXX‘ appears to be in use by the App Store, so it can not be removed at this ti”
  18. 使用微信小程序扫码登录系统PC端web的功能
  19. 从Excel导入数据到数据库
  20. elementUI日期时间控件控制选择时间区间不超过一个月

热门文章

  1. 【2023年更新】1000个大数据/人工智能毕设选题推荐
  2. immigrant Blog to cnblogs.com , github, and OpenShift 博客搬家
  3. js动态设置文字大小
  4. KTX(相当于kotlin的简洁、快速使用的版本) Jetpack
  5. CAS单点登录快速入门
  6. 网络广告VS电子邮件
  7. 报错异常:java.io.NotSerializableException: daqi.base_io.Student
  8. 超详细——Java面试高频
  9. 项目部署到阿里云无法发送邮件问题
  10. [转][留着备用]如何彻底卸载删除pptv(pplive)