双边滤波器是一种边缘保护的非线性滤波器。

1.像高斯滤波器一样,它的权值取决于到中心像素的空间距离

原理:附近的像素(在空间中)应该比远处的像素有更大的影响

高斯滤波器:距离中心像素i (x, y)的空间偏移量(i, j)处的邻居的权值为:

2.与高斯滤波器不同的是,它的权重同样取决于离中心像素的灰度值距离近。

原理:亮度值相似的像素比亮度值不同的像素影响更大。

3.双边滤波器:距离中心像素i (X,Y)的空间偏移量(i, j)处的邻居的权值由乘积给出

4. 实验结果

5. Python简单实现

def gaussian(x, sigma):return (1.0/(2*numpy.pi*(sigma**2)))*numpy.exp(-(x**2)/(2*(sigma**2)))def distance(x1, y1, x2, y2):return numpy.sqrt(numpy.abs((x1-x2)**2-(y1-y2)**2))def bilateral_filter(image, diameter, sigma_i, sigma_s):new_image = numpy.zeros(image.shape)for row in range(len(image)):for col in range(len(image[0])):wp_total = 0filtered_image = 0for k in range(diameter):for l in range(diameter):n_x = row - (diameter/2 - k)n_y = col - (diameter/2 - l)if n_x >= len(image):n_x -= len(image)if n_y >= len(image[0]):n_y -= len(image[0])gi = gaussian(image[int(n_x)][int(n_y)] - image[row][col], sigma_i)gs = gaussian(distance(n_x, n_y, row, col), sigma_s)wp = gi * gsfiltered_image = filtered_image + (image[int(n_x)][int(n_y)] * wp)wp_total = wp_total + wpfiltered_image = filtered_image // wp_totalnew_image[row][col] = int(numpy.round(filtered_image))return new_image

Bilateral Filter双边滤波器相关推荐

  1. bilateral filter双边滤波器的通俗理解

    bilateral filter双边滤波器的通俗理解 图像去噪的方法很多,如中值滤波,高斯滤波,维纳滤波等等.但这些降噪方法容易模糊图片的边缘细节,对于高频细节的保护效果并不明显.相比较而言,bila ...

  2. c语言双边滤波算法,浅析bilateral filter双边滤波器的理解

    图像去噪的方法很多,如中值滤波,高斯滤波,维纳滤波等等.但这些降噪方法容易模糊图片的边缘细节,对于高频细节的保护效果并不明显.相比较而言,bilateral filter双边滤波器可以很好的边缘保护, ...

  3. python:实现Bilateral Filter双边滤波器算法(附完整源码)

    python:实现Bilateral Filter双边滤波器算法 import math import sys import cv2 import numpy as np def vec_gaussi ...

  4. OpenCV图像处理学习九,双边滤波器 (Bilateral Filter)和中位数滤波器 (Median Filter)

    均值模糊无法克服边缘像素信息丢失缺陷,原因是均值滤波是基于平均权重,赋予图像内的像素与图像边缘像素一样的比值权重,图像处理是会使得边缘部分图像部分像素信息丢失: 高斯模糊部分克服了该缺陷,但是无法完全 ...

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

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

  6. 联合双边滤波器(joint bilateral filter)

    原文地址: 联合双边滤波器(joint bilateral filter) 作者: pplong 前面介绍了双边滤波器(bilateral filter,LBF),然而BF的权值是不稳定的,因此在边缘 ...

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

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

  8. 双边滤波(bilateral filter)以及联合双边滤波(joint bilateral filter)

    文章目录 双边滤波 理论公式 代码(C++) 数学辅助理解 联合双边滤波(joint bilateral filter) 参考链接 写在最后 双边滤波 自用备忘,若侵则删. 理论公式 利用二维高斯函数 ...

  9. 双边滤波(Bilateral filter)

    双边滤波器(Bilateral filter)是一种可以保边去噪的滤波器.可以滤除图像数据中的噪声,且还会保留住图像的边缘.纹理等(因噪声是高频信号,边缘.纹理也是高频信息,高斯滤波会在滤除噪声的同时 ...

最新文章

  1. Apache Hadoop YARN – ResourceManager--转载
  2. [scala-spark]2. Scala运行原理与源码查看
  3. leetcode 213. 打家劫舍 II(dp)
  4. iOS MD5 (消息摘要算法5)
  5. python字符串命名_python-字符串及其常用方法
  6. 留学计算机美国硕士,美国硕士留学计算机专业有哪些名校推荐下?
  7. 让老外吐血而亡的中国汉字
  8. c mysql查询年月日_mysql查询指定日期时间内的sql语句及原理
  9. java 动画 制作_【轻松一刻】Java制作字符动画
  10. Matlab转C++代码入门————附带详细代码和示例
  11. 我的 Java/C# web 后端开发技术选择
  12. 金融行业数据容灾架构中的数据复制技术
  13. 读于博士SI设计手记有感
  14. Unity3D FPS帧数修改
  15. 【学习笔记】彻底删除2345输入法
  16. Export2Excel实现多级表头以及多个sheet页
  17. Python实现企业微信发送图片
  18. 蓝桥 百亿富翁 stack<Type> 栈
  19. allure安装与使用
  20. 用好故事思维,轻松获得人心

热门文章

  1. React插件及动画
  2. Java虚拟机组成部分及作用
  3. Spyder快捷键推荐设置
  4. c语言之计算字节大小的举例
  5. 第14篇:Struts2框架下Log4j2漏洞检测方法分析与总结
  6. 22种超全用户触点采集,易观方舟SDK又更新了
  7. iOS通讯录,蓝牙,内购等开发系列
  8. redis(21):集群之哨兵
  9. android 7.0 sdk jar jack,Jack 服务编译问题 Android 7.0
  10. 优化itmo官网总结