Opencv中的直方图(4)局部直方图均衡技术函数createCLAHE()的使用

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

算法描述

创建一个指向 cv::CLAHE 类的智能指针并初始化它。

函数原型


Ptr<CLAHE> cv::createCLAHE
(double 	clipLimit = 40.0,Size 	tileGridSize = Size(8, 8) 
)		

参数

  • 参数clipLimit 对比度限制的阈值。
  • 参数tileGridSize 用于直方图均衡化的网格大小。输入图像将被划分为大小相等的矩形瓷砖。tileGridSize 定义了行和列中的瓷砖数量。

代码示例


#include <opencv2/opencv.hpp>
#include <iostream>int main() {// 加载图像cv::Mat image = cv::imread("/media/dingxin/data/study/OpenCV/sources/images/qiu.jpg", cv::IMREAD_GRAYSCALE);if (image.empty()) {std::cerr << "Error: Image not found or unable to read." << std::endl;return -1;}// 创建并初始化 CLAHE 对象cv::Ptr<cv::CLAHE> clahe = cv::createCLAHE(2.0, cv::Size(8, 8));// 应用 CLAHEcv::Mat clahe_image;clahe->apply(image, clahe_image);// 显示原图和增强后的图像cv::namedWindow("Original Image", cv::WINDOW_NORMAL);cv::imshow("Original Image", image);cv::namedWindow("CLAHE Image", cv::WINDOW_NORMAL);cv::imshow("CLAHE Image", clahe_image);cv::waitKey(0);return 0;
}

运行结果

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/53182.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于Harmony的学习

day20 一、ES5严格模式 ES5提出严格模式&#xff0c;能让代码更规范&#xff0c;分为全局和局部。 进入严格模式语法&#xff1a;use strict 规则&#xff1a;①声明变量时必须使用var&#xff0c;不然会报错。 ②函数参数不能有重复的名称 ③函数名称括号调用函数&#xff…

Android UI绘制流程

UI绘制流程&#xff0c;Activity、Dialog、PopupWindow等 -- android系统的事件分发流程分为很多部分&#xff1a; Native层 –> ViewRootImpl层 –> DecorView层 –> Activity层 –> ViewGroup层 –> View层。 其实Toast窗口和Activity、Dialog、PopupWindow有…

12、Django Admin在列表视图页面上显示计算字段

两种方法&#xff1a; 注册模型有两种方式&#xff0c;需要首先添加或者修改admin中的注册模型如下方式 admin.register(Origin) class OriginAdmin(admin.ModelAdmin):list_display ("name",) 1、在models的模型类中添加函数 def hero_count(self,):return sel…

评价决策类——层次分析法+数学建模+实战分析

目录 一、前言 二、历年题型分析 2.1 常用算法归纳 2.1.1 优化类算法 2.1.2 预测类算法 2.1.3 评价决策类 2.1.4 NP-hard类 2.2 评价类模型求解 2.2.1 层次分析法&#xff08;AHP&#xff09; 2.2.2 多指标评价法&#xff08;MCDA&#xff09; 2.2.3 算法区别 三、层…

如何把自动获取的ip地址固定

在大多数网络环境中&#xff0c;‌设备通常会自动从DHCP服务器获取IP地址。‌这种动态分配IP的方式虽然灵活方便&#xff0c;‌但在某些特定场景下&#xff0c;‌我们可能需要将设备的IP地址固定下来&#xff0c;‌以确保网络连接的稳定性和可访问性。‌本文将详细介绍如何把自…

电子计算机科学中的前端技术:概念、历史、现状与展望?

电子计算机科学中的前端技术&#xff1a;概念、历史、现状与展望&#xff1f; 李升伟 前端技术是创建 Web 页面或 App 等前端界面呈现给用户的过程&#xff0c;通过 HTML、CSS、JavaScript 以及衍生出来的各种技术、框架、解决方案&#xff0c;来实现互联网产品的用户界面交互…

MySQL-基础篇-事务(事务简介、事务操作、事务的四大特性、并发事务引发的问题、事务的隔离级别)

文章目录 1. 事务简介2. 事务操作2.1 未控制事务2.2 控制事务2.2.1 查看事务的提交方式2.2.2 设置事务的提交方式2.2.3 提交事务2.2.4 回滚事务2.2.5 开启事务2.2.6 完善转账案例 3. 事务的四大特性&#xff08;ACID&#xff09;4. 并发事务引发的问题5. 事务隔离级别5.1 演示5…

羊大师:白露养生经,羊奶不可少

随着秋风渐起&#xff0c;白露悄然而至&#xff0c;自然界中的万物开始展现出成熟与收获的喜悦。在这个季节转换的微妙时刻&#xff0c;我们的身体也需要顺应天时&#xff0c;进行一番细致的调养。白露养生&#xff0c;不仅是对自然的敬畏&#xff0c;更是对健康生活的追求。 在…

橘子学ES实战操作之管道类型Ingest pipelines的基本使用

简介 我们在使用ES的时候&#xff0c;经常的用法就是把其他数据源比如Mysql的数据灌到ES中。 借用ES的一些功能来提供数据的全文检索以及聚合分析之类的功能。 在这个灌数据的过程中&#xff0c;我们经常会对数据做一些治理&#xff0c;类似ETL的能力。然后把治理后的数据写入…

SQLite3 数据类型深入全面讲解

SQLite3&#xff0c;作为一款轻量级的数据库管理系统&#xff0c;在数据存储方面展现出了其独特的魅力。它不仅支持标准的SQL语法&#xff0c;还提供了丰富的数据类型供开发者选择。这些数据类型不仅涵盖了基本的数值和文本类型&#xff0c;还包括了日期时间、二进制数据等复杂…

Eclipse 自定义字体大小

常用编程软件自定义字体大全首页 文章目录 前言具体操作1. 打开设置对话框2. 打开字体设置页面3. 找到Text Font&#xff0c;点击修改4. 修改字体 前言 Eclipse 自定义字体大小&#xff0c;统一设置为 Courier New &#xff0c;大小为 三号 具体操作 【Windows】>【Perfer…

三极管的检测方法与经验

中、小功率三极管的检测 1、已知型号和管脚排列的三极管&#xff0c;可按下述方法来判断其性能好坏 a.测量极间电阻。将万用表置于 R100 或 R1k 挡&#xff0c;按照红、黑表笔的六种不同接法进行测试。其中&#xff0c;发射结和集电结的正向电阻值比较低&#xff0c;其他四种…

Mac M1 安装Hadoop教程(安装包安装)

一、引言 前面一期&#xff0c;我分享了通过homebrew方式安装Hadoop&#xff0c;本期我将通过安装包方式介绍下hadoop如何安装。二、下载open jdk8 官方下载地址 注意如果是x86架构的苹果电脑&#xff0c;Architecture选择x86 64-bit或者 x86-32bit。 下载后&#xff0c;将得…

Spark-push-based shuffle

一、上下文 《Spark-Task启动流程》中讲到如果一个Task是一个ShuffleMapTask&#xff0c;那么最后在调用ShuffleWriter写入磁盘后还会判断是否可以启用push-based shuffle机制&#xff0c;下面我们就来继续看看push-based shuffle机制背后都做了什么 二、push-based shuffle机…

python-实战4拆分pdf文件

Wps等软件拆分一份页数较多的PDF文件时&#xff0c;经常会出现要收费或者只能拆分其中几页的情况&#xff0c;下面我们就自己来写代码来实现这个收费功能。 课程中已经初步学习了如何将一个PDF文件拆分成总页数个子PDF文件&#xff0c;我们基于其中的思路进行改进&…

【Unity开发】Blender导入VRM格式注意事项

【背景】 Blender顺利导入了VRM Format插件后&#xff0c;发现有的电脑导入后Mesh&#xff0c;Armature和Texture都一切正常&#xff0c;有的电脑只能导入一个框架。 【分析】 首先检查Blender版本和插件的适配性&#xff0c;4.2版本前后VRM Format有两个不同版本。 Blender…

JVM:浅谈JVM调优策略

多数的Java应用不需要在服务器上进行GC优化&#xff0c;虚拟机内部已有很多优化来保证应用的稳定运行&#xff0c;所以不要为了调优而调优&#xff0c;不当的调优可能适得其反。在应用上线之前&#xff0c;先考虑将机器的JVM参数设置到最优&#xff08;适合&#xff09;。 在进…

Golang 开发使用 gorm 时打印 SQL 语句

目录 1. 使用 Debug 方法2. 全局设置日志级别3. 自定义 Logger4. 总结 参考 gorm 文档&#xff1a;https://gorm.io/zh_CN/docs/logger.html Gorm 有一个 默认 logger 实现&#xff0c;默认情况下&#xff0c;它会打印慢 SQL 和错误。如果想要全部或部分打印 SQL 的话可以通过设…

基于QT与STM32的电力参数采集系统(华为云IOT)(211)

文章目录 一、前言1.1 项目介绍【1】开发背景【2】项目实现的功能【3】项目硬件模块组成1.2 设计思路【1】整体设计思路【2】整体构架【3】上位机开发思路【4】供电方式1.3 项目开发背景【1】选题的意义【2】可行性分析【3】参考文献【4】摘要1.4 开发工具的选择【1】设备端开发…

移动UI:成就勋章页面该如何设计,用例子说明。

移动应用的UI成就勋章页面通常是一个展示用户在应用中取得成就和获得勋章的页面。这种页面通常用于激励用户参与应用的活动&#xff0c;增加用户的参与度和忠诚度。 UI设计成就勋章页面时&#xff0c;一般会包括以下元素和功能&#xff1a; 1. 勋章列表&#xff1a; 展示用户…