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

示例代码

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

相关推荐
留意_yl7 分钟前
量化感知训练(QAT)流程
人工智能
山烛24 分钟前
KNN 算法中的各种距离:从原理到应用
人工智能·python·算法·机器学习·knn·k近邻算法·距离公式
盲盒Q34 分钟前
《频率之光:归途之光》
人工智能·硬件架构·量子计算
墨染点香43 分钟前
第七章 Pytorch构建模型详解【构建CIFAR10模型结构】
人工智能·pytorch·python
go546315846543 分钟前
基于分组规则的Excel数据分组优化系统设计与实现
人工智能·学习·生成对抗网络·数学建模·语音识别
茫茫人海一粒沙1 小时前
vLLM 的“投机取巧”:Speculative Decoding 如何加速大语言模型推理
人工智能·语言模型·自然语言处理
诗酒当趁年华1 小时前
【NLP实践】二、自训练数据实现中文文本分类并提供RestfulAPI服务
人工智能·自然语言处理·分类
静心问道1 小时前
Idefics3:构建和更好地理解视觉-语言模型:洞察与未来方向
人工智能·多模态·ai技术应用
sheep88881 小时前
AI与区块链Web3技术融合:重塑数字经济的未来格局
人工智能·区块链
奋进的孤狼2 小时前
【Spring AI】阿里云DashScope灵积模型
人工智能·spring·阿里云·ai·云计算