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;
}

运行结果

相关推荐
EllenLiu7 分钟前
架构演进与性能压榨:在金融 RAG 中引入条款森林 (FoC)
人工智能·架构
IT_陈寒22 分钟前
深入理解JavaScript:核心原理与最佳实践
前端·人工智能·后端
梦醒过后说珍重27 分钟前
医学图像超分辨率:如何构建“教科书级”的模型评测与交互式可视化流水线?
opencv
Presto28 分钟前
AI 时代 .env 文件不再安全——我试图找到替代方案,然后撞上了一堵墙
人工智能
IT WorryFree34 分钟前
OpenClaw-Medical-Skills 仓库介绍
人工智能·skill·openclaw
多年小白36 分钟前
今日AI科技简报 | 2026年3月19日
人工智能·科技·ai编程
逄逄不是胖胖43 分钟前
《动手学深度学习》-69预训练bert数据集实现
人工智能·深度学习·bert
IT_陈寒1 小时前
Python开发者的效率革命:这5个技巧让你的代码提速50%!
前端·人工智能·后端
用户69371750013841 小时前
不卷AI速度,我卷自己的从容——北京程序员手记
android·前端·人工智能
love530love1 小时前
不用聊天软件 OpenClaw 手机浏览器远程访问控制:Tailscale 配置、设备配对与常见问题全解
人工智能·windows·python·智能手机·tailscale·openclaw·远程访问控制