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

图像处理-双边滤波和联合双边滤波 图像处理-双边滤波和联合双边滤波 双边滤波原理 ​ 双边滤波(Bilateral Filter)是一种非线性滤波器,可以达到保持边缘,降噪平滑的效果。其算法最早由C. Tomasi和R. Manduchi在论文《Bilateral Filtering for Gray and Color Images》中提出,按照原文中的话说It combines gray levels or colors based on both their geometric closeness and their photo 阅读详情
前面介绍了双边滤波器(bilateral filter,LBF),然而BF的权值是不稳定的,因此在边缘附近会出现一些翻转。此外BF计算复杂度是O(r^2);为了改善BF权值的稳定性,引入了联合双边滤波器(joint bilateral filter ,LBF)。两者之间的差别就是LBF用了一个导向图作为值域权重的计算依据。下面我们通过数学公式展示二者的不同:
先看BF的,如(1)所示,
 
再次解释一下公式中的符号意义,其中I表示输入图像,p、q表示像素在图像中的坐标,Ip表示对应位置的像素值,J表示输出, f、g是权重分布函数,一般为高斯函数。这种滤波的结果就是周边像素的权值不仅和距离有关还和那个位置的像素值有关。
再看LBF,如(2)所示,
 
如果在值域的权重计算过程引入另外一幅图像,如下式,则称之为联合双边滤波。~I就是引入的另外一幅图像。该图像必须与待处理的图像相似。
JBF的原理图,如图(1)所示。
[转载]联合双边滤波器(joint <wbr>bilateral <wbr>filter)
图(1)LBF原理图
 联合双边滤波上采样技术也很简单,一种便于理解的也便于写代码的方式就是把下采样并进行处理过后的小图按照最近邻插值的方式放大到原图大小,然后再用原图的数据和这个放大的结果进行联合双边滤波处理  。
下面粘贴了LBF的matlab代码供大家学习参考。
function B = jbfltGray(D,C,w,sigma_d,sigma_r)
%    D should be a double precision matrix of size NxMx1 (i.e., grayscale)  with normalized values in the %    closed interval [0,1]. 
%    C should be similar to D, from which the weights are calculated, with normalized values in the
 %   closed interval [0,1]. 
% Pre-compute Gaussian distance weights.
[X,Y] = meshgrid(-w:w,-w:w);
G = exp(-(X.^2+Y.^2)/(2*sigma_d^2));
% Apply bilateral filter.
dim = size(D);
B = zeros(dim);
for i = 1:dim(1)
   for j = 1:dim(2)      
         % Extract local region.
         iMin = max(i-w,1);
         iMax = min(i+w,dim(1));
         jMin = max(j-w,1);
         jMax = min(j+w,dim(2));
         I = D(iMin:iMax,jMin:jMax); 
         % To compute weights from the color image
         J = C(iMin:iMax,jMin:jMax);
         % Compute Gaussian intensity weights according to the color image
         H = exp(-(J-C(i,j)).^2/(2*sigma_r^2));
         % Calculate bilateral filter response.
         F = H.*G((iMin:iMax)-i+w+1,(jMin:jMax)-j+w+1);
         B(i,j) = sum(F(:).*I(:))/sum(F(:));   
   end
end
中值滤波,均值滤波,高斯滤波,双边滤波,联合双边滤波介绍 看GAMES202相关课程发现闫老师讲的太好了,所以记录一下。当然文中涉及的PPT也来自闫老师的课程PPT,欢迎交流。首先这几种都是空域的滤波方式,用于抑制图像中的噪声。它们采用的原理基本都是通过滤波核K处理含噪图像C,得到干净的输出图C。滤波核:在处理图像位于坐标 i 处的值时,需要考虑其周围j个位置的坐标(包含i本身)。这j个相邻位置即为滤波核。图像的边缘一般像素变化大,包含高频信号;图像中连续部分像素间差距小,一般是低频信号。... 阅读详情

相关推荐

双边滤波算法:从原理到C++实现与工业视觉应用

图像滤波是计算机视觉与图像处理的基础技术,旨在去除噪声、增强特征或提取信息。其核心原理是通过对像素邻域进行加权平均或统计操作来调整像素值。在众多滤波器中,双边滤波因其独特的边缘保持能力而具有重要技术价值,它通过结合空间邻近性和灰度相似性双重权重,实现了在平滑噪声的同时保护图像边缘结构。这一特性使其在图像去噪、细节增强等应用场景中表现优异。本文以工业视觉检测为切入点,深入解析双边滤波的数学原理,并提供从基础到优化的C++完整实现,涵盖参数调优、性能瓶颈分析及常见问题解决方案,帮助开发者掌握这一关键的非线性滤波

congjukun0600的博客 456

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

/* 双边滤波器思想: 1. 在高斯滤波器基础上增加了图像像素之间的相似度的考虑,进而达到保边的效果。 双边滤波器的实现: 1. 求权重系数 2. 确定mask大小 3. 移动处理整张影像 */ #include "opencv2/opencv.hpp" #include"opencv2/highgui/highgui.hpp" #include <math.h> using namespace cv; using namespace std; const int kernel_

flow_specter的博客 1万+

5分钟搞懂JBU双边上采样:从原理到OpenCV实战(附Python代码)

本文详细解析了JBU(Joint Bilateral Upsampling)双边上采样算法的原理及其在OpenCV中的实战应用。通过Python代码示例,展示了如何在图像超分辨率重建中保持边缘锐利和纹理清晰,适用于深度图增强、多模态图像处理等场景。

ujm5678901的博客 295

联合双边滤波器(joint bilateral filter)【OpenCV】

转载自:pplong的博客 前面介绍了双边滤波器(bilateral filter,LBF),然而BF的权值是不稳定的,因此在边缘附近会出现一些翻转。此外BF计算复杂度是O(r^2);为了改善BF权值的稳定性,引入了联合双边滤波器(joint bilateral filter ,LBF)。两者之间的差别就是JBF用了一个导向图作为值域权重的计算依据。下面我们通过数学公式展示二者的不同: 先看B

ShaderJoy 的兴趣技术杂货铺 2万+

Bilateral Filter、Cross/Joint Bilateral Filter

今天被问到cross bilateral Filter,虽然自己知道这肯定是一种滤波算法,但是究竟它和bilateral Filter有什么关系?觉得,作为一个图像处理研究者,一定要基础扎实,所以赶紧去看看! NerdLand在Tech Stuff中描述提到“Joint Bilateral Filter is also referred to as Cross bilateral filter”。也

nature_XD的专栏 6089

联合双边滤波 MATLAB Joint Bilateral filter.zip

联合双边滤波代码,可在MATLAB上运行。已经调测。内含测试图片,方便快捷,下载即可用。联合双边滤波代码。

【OpenCV 例程200篇】60. 非线性滤波—联合双边滤波

图像滤波是在尽可能保留图像细节特征的条件下对目标图像的噪声进行抑制,是常用的图像预处理操作。 联合双边滤波(Joint bilateral filter)是在双边滤波基础上对相似性权重模板进行优化,对于纹理图像的处理效果较好。 注意:本例程需要 opencv-contrib-python 包的支持。

youcans的博客 6940

Joint Bilateral filter_bilateralfilter_双边滤波_jointbilateral_图像去噪_

6性滤波技术。

【图像处理OpenCV(C++版)】——5.6 图像平滑之联合双边滤波

【图像处理OpenCV(C++版)】——5.6 图像平滑之联合双边滤波 jointBilateralFilter()

cqy阳的博客 2135

11-4 AEB 算法原理及系统组成

本专题旨在探讨如何利用仿真软件开发自动紧急制动系统AEB,主要通过整理开发流程,实现从需求到验证的全流程掌握,为后续开发提供支持;同时,研究了如何在汽车自动驾驶仿真工具中开发自己的算法,并解决了从ISO、E-CNAP、GB/T以及交通法规等提炼出功能需求的问题,以快速实现原型模型的开发。本专题重点讲解了AEB的工作原理、系统/软件架构和需求、算法模型及实现、CCRs/CCRb/CCRm建模与仿真、VRU-AEB-B/P/M建模与仿真,同时还提供了测试用例,期待将AEB算法成功地产品化。

AIgraphX 8556

STM32F105双路CAN通讯无法进入接收中断问题及解决方法

STM32F105RBT6双路CAN通讯无法进入接收中断问题及解决方法

m0_62383223的博客 3442

Opencv之联合双边滤波

Opencv之联合双边滤波

修行之路 558

Oracle EBS R12 AP模块发票导入接口实战:从SQL插入到API调用的完整流程

本文详细解析了Oracle EBS R12 AP模块发票导入接口的完整流程,从SQL插入到API调用的实战技巧。涵盖接口表设计、数据验证、双通道导入机制及错误诊断,特别分享官方文档未提及的高阶优化方案,助力企业实现财务数字化转型。

weixin_33728268的博客 476

【机器视觉学习笔记】双边滤波算法(C++)

目录源码滤波器主函数效果完整源码 平台:Windows 10 20H2 Visual Studio 2015 OpenCV 4.5.3 本文所用源码修改自双边滤波(bilateral filter)以及联合双边滤波(joint bilateral filter)—— flow_specter 源码 滤波器 // 双边滤波 // @ src 待滤波的影像 // @ dst 输出的影像 void BilateralFilter(Mat& src, Mat& dst, int d, doub

乙酸氧铍的博客 1341

从零到一:手把手教你用Python+LangChain搭建企业级RAG知识库(附避坑指南)

本文为开发者提供了一份详尽的实战指南,手把手教你使用Python和LangChain框架从零构建企业级RAG知识库。内容涵盖环境搭建、文档处理、向量化检索、提示工程及生产部署等核心环节,并重点分享了文档分割、检索优化等关键避坑经验,旨在帮助读者打造稳定、高效且易于维护的智能知识中枢。

weixin_29058331的博客 398

锐捷路由器DNS Proxy保姆级配置教程:从零到实战,手把手教你搞定内网域名解析

本文提供锐捷路由器DNS Proxy功能的详细配置教程,从基础环境搭建到实战测试,手把手教你实现内网域名解析。涵盖上游DNS设置、内网域名映射、故障排查等关键步骤,帮助网络管理员快速解决内网访问难题,提升工作效率。

weixin_29284657的博客 555

【图像去噪】基于双边滤波实现灰度和彩色图像去噪附matlab代码

由于人类视觉系统的复杂性以及随着数字图像处理技术的快速发展,对传统的图像处理和计算机视觉任务提出新的要求和挑战,尤其低层次图像去噪和图像融合问题.外部噪声的干扰,或多传感器获取图像,导致图像的信息不够全面或可靠,从而降低了图像质量,也制约着后续图像处理任务的执行.图像去噪的核心问题是如何在高效去除噪声的同时,保留图像边缘,轮廓和纹理等细节结构信息.双边滤波作为图像去噪和融合的一种重要手段,它时间复杂度低,且在去噪的同时和能很好地保持边缘信息.

matlab_dingdang的博客 1103

gtsam官方文档: The new IMU Factor学习笔记

gtsam官方文档:The new IMU Factor 本文为gtsam imu预积分文档学习笔记,为gtsam基于切向量实现的imu预积分的理论基础。 导航状态 定义导航状态为 Xbn={Rbn,Pbn,Vbn}X^n_b=\{R^n_b,P^n_b,V^n_b\}Xbn​={Rbn​,Pbn​,Vbn​} 上角标n:导航(navigation)坐标系 下角标b:载体(body)坐标系 下文均省略上下标 矢量场与微分方程 对于导航问题我们用如下微分方程描述 X˙(t)=F(t,X)\dot X(t)

南柯一梦的博客 1609

matlab 双边滤波(彩色图)

% matlab 2012b % 彩色图的双边滤波 clc; clear; src=imread('cs.jpg'); %加载彩色图 %-------双边滤波 参数 ----------------- r = 20; %半径 窗口 长 = 宽 = 2*r+1 sigma_space = 15.0; %空间标准差 sigma_color = 10.0; %相似标准差 w_space = zeros(1,r+1); %空间权重 for i =.

做减求空 2673

ARM架构下的SLAM部署避坑指南:香橙派AIpro与D435i深度相机的实战解析

本文详细解析了在ARM架构的香橙派AIpro开发板上部署SLAM算法并与Intel D435i深度相机配合的实战经验。内容涵盖系统配置、ROS编译、驱动安装、算法优化等关键步骤,提供了具体的避坑指南和性能调优技巧,帮助开发者在嵌入式平台上高效实现实时SLAM应用。

f0g1h2的博客 983

交换机端口模式详解:Access、Hybrid、Trunk

交换机是网络中至关重要的组件之一,用于连接各种设备并启用数据的高效流动。为了更好地管理和控制网络流量,交换机提供了不同的端口模式,其中包括Access、Hybrid和Trunk。本文将深入探讨这三种端口模式,详细解释它们的配置、特性和应用场景,以帮助网络管理员更好地理解和优化网络架构。

网络技术联盟站 4016

双边滤波器的原理及实现

双边滤波器是什么? 双边滤波(Bilateral filter)是一种可以保边去噪的滤波器。之所以可以达到此去噪效果,是因为滤波器是由两个函数构成。一个函数是由几何空间距离决定滤波器系数。另一个由像素差值决定滤波器系数。可以与其相比较的两个filter:高斯低通滤波器(http://en.wikipedia.org/wiki/Gaussian_filter)和α-截尾均值滤波器(去掉百分率为α的

Rachel Zhang的专栏 15万+

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

联合双边滤波-Joint Bilateral Filter

1. 回顾: 双边滤波(BF) 具体参考上篇博客:图像滤波之双边滤波 2. 联合双边滤波(JBF) 联合双边滤波与双边滤波之间的差别就是JBF用了一个引导图作为值域权重的计算依据,但是空间域权重计算仍然基于原图: 3. 联合双边滤波代码 3.1 python opencv实现 import cv2 import matplotlib.pyplot as plt if __name__ == "__main__": image = cv2.imread('lena512.bmp', 0)[20

Nick Blog 3979

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

图像滤波【一】:从高斯滤波到引导滤波

前言:最近在做一个图像的作业, 要求python实现双边滤波和引导双边滤波。 可以使用opencv,numpy。不能用opecv增强库(ximageproc之类的就用不了啦), 这里记录一下学习心得。 查资料过程中,最无法理解的一个概念是双边滤波有一个弊端:梯度反转 (gradient reveral ) 。找了很多文章和问答都没看到解释清楚的答案,最后还是无奈找到何凯文大神的会议PPT,似乎看懂了一点。 图像滤波系列高斯滤波 Guassion Filter图像滤波器/卷积核【互相关 cross-cor.

X_Jiner的博客 7059

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

联合双边滤波(joint bilateral filter)和引导滤波器(guided filter)(含代码)

参考文献及参考代码: 1、【图像处理】引导滤波器 2、He K, Sun J, Tang X. Guided image filtering[C]// European Conference on Computer Vision. Springer-Verlag, 2010:1-14. 3、联合双边滤波器(joint bilateral filter) 4、涂义福, 张旭东, 张骏,等. ...

Di_Wong的博客 8841

交叉双边滤波器 cross bilateral filter

crossbilateral filter可以表示为joint bilateral filter。 与双边滤波一样,交叉双边滤波在不平滑边缘的情况下,同时考虑了相邻像素的灰度相似性和几何贴近度,但它使用一幅图像寻找核,另一幅图像进行滤波。 双边滤波 双边滤波是一种局部的、非线性的、非迭代的滤波技术,它将经典的低通滤波器与边缘停止函数相结合,当像素之间的强度差较大时,边缘停止函数会衰减滤波器的核心。由于同时考虑了相邻像素的灰度相似度和几何贴近度,滤波器的权值不仅依赖于欧氏距离,而且还依赖于灰度/颜...

Dezeming的博客 5570
上一篇: 3D建模与处理软件简介
下一篇: VS集成Qt环境搭建
a412841321
博客等级 码龄18年 33粉丝 267原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值