当前位置: 首页 > news >正文

OpenCV CUDA 模块中用于在 GPU 上计算两个数组对应元素差值的绝对值函数absdiff(

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

算法描述

void cv::cuda::absdiff 是 OpenCV CUDA 模块中的一个函数,用于在 GPU 上计算两个数组对应元素差值的绝对值。

该函数会逐元素计算两个输入矩阵 src1 和 src2 的差值,并取其绝对值,结果保存在输出矩阵 dst 中。
适用于图像比较、差异检测、视频运动分析等场景。

函数原型

void cv::cuda::absdiff 
(InputArray  	src1,InputArray  	src2,OutputArray  	dst,Stream &  	stream = Stream::Null() 
) 		

参数

参数类型描述
src1InputArray第一个输入矩阵,支持多种数据类型(如 CV_8U, CV_32F 等)
src2InputArray第二个输入矩阵,必须与 src1 尺寸和类型相同
dstOutputArray输出结果矩阵,尺寸与输入相同,类型通常为 CV_32F 或匹配输入
streamStream&可选参数,指定 CUDA 流以实现异步执行,默认是同步执行

代码示例

#include <opencv2/opencv.hpp>
#include <opencv2/cudaarithm.hpp>  // 正确包含 CUDA 算术运算模块int main() {// 创建两个 CPU 矩阵并初始化cv::Mat h_src1 = (cv::Mat_<uchar>(2, 2) << 100, 150, 200, 250);cv::Mat h_src2 = (cv::Mat_<uchar>(2, 2) << 90, 160, 190, 255);// 上传到 GPUcv::cuda::GpuMat d_src1, d_src2;d_src1.upload(h_src1);d_src2.upload(h_src2);// 创建输出 GPU 矩阵cv::cuda::GpuMat d_dst;// 调用 absdiff 函数cv::cuda::absdiff(d_src1, d_src2, d_dst);// 下载回 CPU 并显示cv::Mat h_dst;d_dst.download(h_dst);std::cout << "absdiff 结果:\n" << h_dst << std::endl;return 0;
}

运行结果

absdiff 结果:
[ 10,  10;10,   5]
http://www.xdnf.cn/news/447373.html

相关文章:

  • Flutter 开发入门:从一个简单的计数器应用开始
  • 操作系统-物理结构
  • 【拥抱AI】Deer-Flow字节跳动开源的多智能体深度研究框架
  • MCP:开启AI的“万物互联”时代
  • 网站安全防御
  • 北斗导航 | 接收机自主完好性监测算法综述,1980至2025年(原理,公式,代码)
  • Java版OA管理系统源码 手机版OA系统源码
  • 深入理解卷积神经网络:从基础原理到实战应用
  • 硕士论文用YOLO可以毕业吗?
  • 记录算法笔记(20025.5.14)对称二叉树
  • 码题集——魔数、A的B次方、网球比赛、三角形、点与线段的关系
  • libmemcached库api接口讲解五
  • Java Queue 接口实现
  • 【经验分享】Dify+GraphRAG实现知识图谱智能问答
  • QMK键盘编码器(Encoder)(理论部分)
  • Unity Image组件无法阻挡手势的解决办法
  • 如何在运行不同操作系统的计算机上轻松擦除U盘
  • 【行为型之观察者模式】游戏开发实战——Unity事件驱动架构的核心实现策略
  • 医学影像系统的集成与工作流优化
  • 计算机图形学编程(使用OpenGL和C++)(第2版)学习笔记 10.增强表面细节(一)过程式凹凸贴图
  • Unity引擎源码-物理系统详解-其二
  • 大疆无人机自主飞行解决方案局限性及增强解决方案-AIBOX:特色行业无人机巡检解决方案
  • 蚓链数字化营销系统深度解析,以“三位一体“模式驱动企业数字化营销转型
  • UniApp 在华为三折叠屏中的适配问题与最佳解决方案(rpx 实战指南)
  • ET MessageSender类(实体)分析
  • LLM笔记(一)基本概念
  • vue-cli项目升级rsbuild,效率提升50%+
  • 文章记单词 | 第74篇(六级)
  • uniapp设置 overflow:auto;右边不显示滚动条的问题
  • 多线程与线程互斥