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()

示例代码

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

相关推荐
TeDi TIVE3 小时前
开源模型应用落地-工具使用篇-Spring AI-高阶用法(九)
人工智能·spring·开源
MY_TEUCK3 小时前
Sealos 平台部署实战指南:结合 Cursor 与版本发布流程
java·人工智能·学习·aigc
三毛的二哥3 小时前
BEV:典型BEV算法总结
人工智能·算法·计算机视觉·3d
j_xxx404_3 小时前
大语言模型 (LLM) 零基础入门:核心原理、训练机制与能力全解
人工智能·ai·transformer
飞哥数智坊3 小时前
全新 SOLO 在日常办公中的实际体验
人工智能·solo
<-->4 小时前
Megatron(全称 Megatron-LM,由 NVIDIA 开发)和 DeepSpeed(由 Microsoft 开发)
人工智能·pytorch·python·深度学习·transformer
朝新_4 小时前
【Spring AI 】图像与语音模型实战
java·人工智能·spring
Yuanxl9034 小时前
神经网络-Sequential 应用与实战
人工智能·深度学习·神经网络
火山引擎开发者社区5 小时前
Seedance 2.0 1080P 生成能力正式上线
人工智能
冬奇Lab5 小时前
一天一个开源项目(第79篇):生化危机女主角亲自开源的 AI 记忆系统 MemPalace
人工智能·开源·资讯