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

东莞市长安镇做网站深圳网站提升排名

东莞市长安镇做网站,深圳网站提升排名,可以做四级的网站,有做阿里网站的吗操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 在 OpenCV 的 CUDA 模块中,与范数(Norm)相关的函数主要用于计算矩阵的范数或者两个矩阵之间的差值范数。 主…
  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

在 OpenCV 的 CUDA 模块中,与范数(Norm)相关的函数主要用于计算矩阵的范数或者两个矩阵之间的差值范数。

主要函数

1.计算单个 GPU 矩阵的范数:norm

原型
double cv::cuda::norm
(InputArray src1,                // 输入 GPU 矩阵int normType = NORM_L2,         // 范数类型,默认为L2范数InputArray mask = noArray()     // 可选掩码,用于选择性地应用范数计算到src1的部分区域
);
参数
  • InputArray src1: 需要计算范数的输入 GPU 矩阵。
  • int normType: 指定使用的范数类型。常见的有:
    • NORM_INF: 无穷范数,等于绝对值最大的元素。
    • NORM_L1: L1范数,所有元素绝对值之和。
    • NORM_L2: L2范数,平方和的平方根。
  • InputArray mask: 可选参数,如果提供,则只对mask中非零元素对应的src1部分进行计算。

2.计算两个 GPU 矩阵之间的差值范数norm

原型
double cv::cuda::norm
(InputArray src1,                // 第一个输入 GPU 矩阵InputArray src2,                // 第二个输入 GPU 矩阵,尺寸/类型相同int normType = NORM_L2          // 范数类型,默认为L2范数
);
参数
  • InputArray src2: 第二个输入 GPU 矩阵,要求与src1具有相同的尺寸和通道数。
  • 其余参数同上。

3.异步计算单个 GPU 矩阵的范数calcNorm

原型
void cv::cuda::calcNorm
(InputArray src,                 // 输入 GPU 矩阵OutputArray dst,                // 输出结果,标量int normType,                   // 范数类型InputArray mask = noArray(),    // 可选掩码Stream& stream = Stream::Null() // 可选 CUDA 流
);
参数
  • OutputArray dst: 输出结果,通常是一个 GpuMat 或者 Scalar,表示计算出的范数值。
  • Stream& stream: 可选参数,指定执行此操作的CUDA流,默认为 Stream::Null() 表示使用默认流。

4.异步计算两个 GPU 矩阵之间的差值范数calcNormDiff

原型
void cv::cuda::calcNormDiff
(InputArray src1,                // 第一个输入 GPU 矩阵InputArray src2,                // 第二个输入 GPU 矩阵,尺寸/类型相同OutputArray dst,                // 输出结果,标量int normType = NORM_L2,         // 范数类型,默认为L2范数Stream& stream = Stream::Null() // 可选 CUDA 流
);
参数
  • InputArray src2: 第二个输入 GPU 矩阵,要求与src1具有相同的尺寸和通道数。
  • 其余参数同上。

代码示例


#include <opencv2/opencv.hpp>
#include <opencv2/cudaarithm.hpp>
#include <iostream>int main() {// 创建两个 float 类型的 3x3 测试矩阵cv::Mat h_mat1 = (cv::Mat_<float>(3, 3) <<1.0f, -2.0f,  3.0f,-4.0f,  5.0f, -6.0f,7.0f, -8.0f,  9.0f);cv::Mat h_mat2 = cv::Mat::zeros(h_mat1.size(), h_mat1.type());// 创建一个 mask 矩阵(只允许中心区域参与计算)cv::Mat h_mask = cv::Mat::zeros(h_mat1.size(), CV_8UC1);cv::rectangle(h_mask, cv::Rect(1, 1, 1, 1), cv::Scalar(255), cv::FILLED); // 中心像素// 将数据转换为 CV_8UC1 类型cv::Mat h_mat1_8u, h_mat2_8u;h_mat1.convertTo(h_mat1_8u, CV_8UC1);h_mat2.convertTo(h_mat2_8u, CV_8UC1);// 上传到 GPUcv::cuda::GpuMat d_mat1, d_mat2, d_mask;d_mat1.upload(h_mat1_8u);d_mat2.upload(h_mat2_8u);d_mask.upload(h_mask);// 存储异步结果的 GpuMatcv::cuda::GpuMat d_norm_result;// 创建 CUDA 流cv::cuda::Stream stream;// 1️⃣ 同步:单矩阵 L2 范数(带 mask)double l2_norm = cv::cuda::norm(d_mat1, cv::NORM_L2, d_mask);std::cout << "Sync L2 Norm of mat1 (with mask): " << l2_norm << std::endl;// 2️⃣ 同步:两矩阵之间的 L2 差值范数double diff_norm = cv::cuda::norm(d_mat1, d_mat2, cv::NORM_L2);std::cout << "Sync L2 Diff Norm between mat1 and mat2: " << diff_norm << std::endl;// 3️⃣ 异步:单矩阵 L1 范数cv::cuda::calcNorm(d_mat1, d_norm_result, cv::NORM_L1, cv::noArray(), stream);stream.waitForCompletion();cv::Mat host_norm;d_norm_result.download(host_norm);double async_l1_norm = host_norm.at<double>(0, 0);std::cout << "Async L1 Norm of mat1: " << async_l1_norm << std::endl;// 4️⃣ ✅ 异步:两个矩阵之间的 L2 差值范数(必须调用 calcNormDiff)cv::cuda::calcNormDiff(d_mat1, d_mat2, d_norm_result, cv::NORM_L2, stream);stream.waitForCompletion();d_norm_result.download(host_norm);double async_diff_norm = host_norm.at<double>(0, 0);std::cout << "Async L2 Diff Norm between mat1 and mat2: " << async_diff_norm << std::endl;return 0;
}

运行结果

Sync L2 Norm of mat1 (with mask): 5
Sync L2 Diff Norm between mat1 and mat2: 12.8452
Async L1 Norm of mat1: 25
Async L2 Diff Norm between mat1 and mat2: 12.8452
http://www.dtcms.com/wzjs/348258.html

相关文章:

  • 农产品网站建设宁波正规站内优化seo
  • 佛山移动网站建设费用网站推广的方式和方法
  • 什么网站可以找人做设计师百度seo怎么样优化
  • 博爱网站建设糕点烘焙专业培训学校
  • 找第三方做网站 需要注意磁力搜索引擎
  • 如何用云服务器做网站产品推广的渠道
  • 做网站和优化seo服务深圳
  • 外贸网站做推广互联网平台推广怎么做
  • 客户说做网站价格高淘宝app官方下载
  • 谷歌推广电话百度seo报价
  • 什么叫网站外链厦门网站建设公司
  • 包头网站制作 建设中国网新山东
  • 网架公司推荐长沙seo网站
  • 查询网站备案密码是什么情况seo优化招聘
  • 网页设计报告体会汉中seo培训
  • 农特产品如何做网站360搜索网址是多少
  • 成都电商网站开发培训公司
  • 城乡建设部网站安全员证书查询北京网站制作公司
  • 网站的建设维护推广网络运营商
  • 冠县网站建设多少钱产品线上营销推广方案
  • 推广展示类网站有哪些近期国际热点大事件
  • 如何建立网站服务器首页排名优化公司
  • 巴中手机网站建设产品推广哪个平台好
  • 专业的深圳网站建设公司百度手机助手app免费下载
  • 用腾讯云做淘宝客网站视频下载新闻发稿推广
  • 滁州seoseo优化方法网站快速排名推广渠道
  • 张家港网站seo软媒win7优化大师
  • 重庆企业网站建设解决方案北京网站建设优化
  • 导购网站制作百度电话客服24小时人工
  • 个人社保缴费比例关键词优化