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

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

算法描述

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

函数原型

cpp 复制代码
Ptr<CLAHE> cv::createCLAHE
(
	double 	clipLimit = 40.0,
	Size 	tileGridSize = Size(8, 8) 
)		

参数

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

代码示例

cpp 复制代码
#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));

    // 应用 CLAHE
    cv::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;
}

运行结果

相关推荐
m0_748232395 分钟前
基于OpenCV和Python的人脸识别系统_django
python·opencv·django
喝不完一杯咖啡6 分钟前
【AI时代】可视化训练模型工具LLaMA-Factory安装与使用
人工智能·llm·sft·llama·llama-factory
huaqianzkh34 分钟前
理解构件的3种分类方法
人工智能·分类·数据挖掘
后端码匠34 分钟前
Spring Boot3+Vue2极速整合:10分钟搭建DeepSeek AI对话系统
人工智能·spring boot·后端
用户2314349781435 分钟前
使用 Trae AI 编程平台生成扫雷游戏
人工智能·设计
神经美学_茂森1 小时前
神经网络防“失忆“秘籍:弹性权重固化如何让AI学会“温故知新“
人工智能·深度学习·神经网络
大囚长1 小时前
AI工作流+专业知识库+系统API的全流程任务自动化
运维·人工智能·自动化
阿_旭1 小时前
【超详细】神经网络的可视化解释
人工智能·深度学习·神经网络
Se7en2581 小时前
提升 AI 服务的稳定性:Higress AI 网关的降级功能介绍
人工智能
机器视觉知识推荐、就业指导1 小时前
【数字图像处理二】图像增强与空域处理
图像处理·人工智能·经验分享·算法·计算机视觉