OPenCV CUDA模块立体匹配------对立体匹配生成的视差图进行双边滤波处理类cv::cuda::DisparityBilateralFilter

  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

cv::cuda::DisparityBilateralFilter 是 OpenCV CUDA 模块中的一个类,用于对立体匹配生成的视差图进行双边滤波处理。这种滤波方法可以在保留边缘信息的同时平滑噪声,从而提高视差图的质量。

创建方法

静态函数:create()

cpp 复制代码
static Ptr<cv::cuda::DisparityBilateralFilter> cv::cuda::DisparityBilateralFilter::create(int ndisp = 16);

参数说明:

参数名 类型 默认值 描述
ndisp int 16 视差范围的最大值,通常与 StereoBMStereoSGBM 中设置的 numDisparities 相同

主要成员函数

函数名 返回类型 描述
filter() void 对输入的视差图应用双边滤波
getEdgeThreshold() float 获取边缘阈值
setEdgeThreshold(float) void 设置边缘阈值
getMaxDiscThreshold() float 获取最大不连续性阈值
setMaxDiscThreshold(float) void 设置最大不连续性阈值
getSigmaRange() float 获取颜色空间标准差(range sigma)
setSigmaRange(float) void 设置颜色空间标准差
getSigmaSpace() float 获取坐标空间标准差(spatial sigma)
setSigmaSpace(float) void 设置坐标空间标准差

filter() 函数原型

cpp 复制代码
void cv::cuda::DisparityBilateralFilter::filter(
    InputArray disparity,         // 输入的视差图(CV_8UC1 或 CV_16SC1)
    InputArray image,             // 原始图像(用于边缘感知滤波),CV_8UC1 或 CV_8UC3
    OutputArray filtered_disparity, // 输出滤波后的视差图
    Stream& stream = Stream::Null()
);

参数说明:

参数名 类型 描述
disparity InputArray 输入视差图(单通道,CV_8UC1 或 CV_16SC1)
image InputArray 原始图像(通常是左图),用于指导滤波过程
filtered_disparity OutputArray 输出滤波后的视差图
stream Stream& 可选 CUDA 流,默认为 Stream::Null()

示例代码

待添加,没写出来成功的。

相关推荐
蜜桃味女焊匠人2 小时前
焊接生产线优化思路:解决手工焊、机器人焊气体浪费问题
人工智能·经验分享·其他·机器人
Georgeviewer7 小时前
商业落地评测|实体门店GEO优化性价比与服务体系深度复盘
大数据·人工智能
GuWenyue7 小时前
分不清AI Workflow与Agent?3个实战案例彻底讲透,做AI应用不再踩选型坑
人工智能
彩讯股份3006348 小时前
彩讯股份与心洲科技签署战略合作协议,共建企业级模型后训练能力
人工智能·科技
迅易科技8 小时前
从场景验证到Agent上线:迅易 × WorkBuddy如何帮助企业建设AI能力?
人工智能·ai·腾讯云
PNP Robotics8 小时前
多伦多大学机器人峰会|物理AI与具身智能落地新趋势
人工智能·深度学习·机器学习·机器人
GIR1238 小时前
官方出品 | 多通道土壤呼吸测量系统市场现状与十五五规划深度报告:行业分析+趋势预测全收录
大数据·人工智能·机器学习
绿算技术8 小时前
绿算技术亮相第十八届HPC AI中国年会,擘画AI基础设施全栈协同新图景
人工智能
Litluecat9 小时前
2026年7月22日科技热点新闻
人工智能·科技·新闻·每日·速览
To_OC9 小时前
别再傻傻分不清:Workflow 和 Agent 到底不是一回事
人工智能·agent·workflow