双边滤波数学原理和C++代码实现

本文介绍了双边滤波的基本原理,它结合了空间邻近度和像素值相似度来保边去噪。文中提供了双边滤波的C++代码实现,并通过效果测试对比了自编函数与OpenCV内置函数的滤波结果。
摘要由CSDN通过智能技术生成

一、基本原理

  先从均值滤波说起,模板中所有元素的值是相同的,表示邻域内的每个像素具有相同的权重。而对于高斯滤波,距离模板中心更近的元素具有更高的权重。双边滤波在高斯滤波的基础上更进一步,不仅考虑了元素到模板中心距离的远近,而且考虑了元素灰度值与模板中心灰度值之差的大小。换言之,到模板中心更近、与模板中心的灰度值差异更小的元素,具有更高的权重。
  双边滤波(bilateral filter)是一种非线性的滤波方法,同时考虑了空间邻近度和像素值相似度,从而达到保边去噪的目的。双边滤波之所以能够做到:在平滑去噪的同时还能够很好地保留边缘(edge preserve),是由于其模板元素的值由两部分组成:

  • 第一部分由“元素到模板中心的欧式距离”决定
  • 第二部分由“元素的灰度值、模板中心的灰度值之差”决定

  第一部分的计算公式如下,( k k

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xxxx9300

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值