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

OpenCV CUDA模块直方图计算------生成一组均匀分布的灰度级函数evenLevels()

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

算法描述

该函数主要用于为 直方图均衡化、CLAHE 等图像处理算法 生成一组等间距的灰度区间边界值(bins 或 levels),这些边界值可用于后续将图像划分为多个区域进行处理。

函数原型

void cv::cuda::evenLevels 	
(OutputArray  	levels,int  	nLevels,int  	lowerLevel,int  	upperLevel,Stream &  	stream = Stream::Null() 
) 		

参数

  • levels 目标数组。levels 具有 1 行、nLevels 列,类型为 CV_32SC1(即单通道 32 位有符号整型)。
  • nLevels 计算出的灰度级数量。nLevels 必须至少为 2。
  • lowerLevel 最低灰度级的下边界值(起始值)。
  • upperLevel 最高灰度级的上边界值(结束值)。
  • stream 用于异步执行的流(Stream),可实现与主机的异步操作。

代码示例

#include <opencv2/cudaimgproc.hpp>
#include <opencv2/opencv.hpp>int main()
{cv::Mat levels;int nLevels = 8;int lower   = 0;int upper   = 255;// 在 GPU 上生成均匀分布的灰度级cv::cuda::evenLevels( levels, nLevels, lower, upper );// 打印结果std::cout << "生成的灰度级边界值: " << std::endl;for ( int i = 0; i < levels.rows * levels.cols; ++i ){std::cout << levels.at< int >( i ) << " ";}std::cout << std::endl;return 0;
}

运行结果

生成的灰度级边界值: 
0 37 74 111 147 183 219 255 
http://www.lryc.cn/news/2393858.html

相关文章:

  • 深度学习常见实验问题与实验技巧
  • 前端面试之Proxy与Reflect
  • uniapp vue3 鸿蒙支持的 HTML5+接口
  • 一张Billing项目的流程图
  • 理想树图书:以科技赋能教育,开启AI时代自主学习新范式
  • 【大模型02】Deepseek使用和prompt工程
  • B端产品经理如何快速完成产品原型设计
  • [Java实战]Spring Boot切面编程实现日志记录(三十六)
  • Apache POI生成的pptx在office中打不开 兼容问题 wps中可以打卡问题 POI显示兼容问题
  • 大学大模型教学:基于NC数据的全球气象可视化解决方案
  • Python学习(2) ----- Python的数据类型及其集合操作
  • 机器学习算法-决策树
  • MediaMtx开源项目学习
  • Linux安装EFK日志分析系统
  • Linux(9)——进程(控制篇——下)
  • E. Melody 【CF1026 (Div. 2)】 (求欧拉路径之Hierholzer算法)
  • @Pushgateway 数据自动清理
  • 粽叶飘香时 山水有相逢
  • YC-8002型综合变配电监控自动化系统
  • react diff 算法
  • 近期手上的一个基于Function Grap(类AWS的Lambda)小项目的改造引发的思考
  • Obsidian 社区插件下载修复
  • VSCode的下载与安装(2025亲测有效)
  • 千库/六图素材下载工具
  • Ansible模块——Ansible的安装!
  • 差分S参数-信号与电源完整性分析
  • ​扣子Coze飞书多维表插件-查询数据
  • 计算机模拟生物/化学反应有哪些软件?
  • PostIn V1.1.2版本发布,新增接口评审功能,提升接口质量与合理性
  • MySQL数据归档利器:pt-archiver原理剖析与实战指南