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

运行结果

相关推荐
AI服务老曹5 分钟前
报警推送消息升级的名厨亮灶开源了
人工智能·安全·开源·音视频
白兔12059 分钟前
联邦大模型微调
人工智能·深度学习
全域观察21 分钟前
平安夜与圣诞节,如何玩转节日选题?
人工智能·新媒体运营·媒体·内容运营·程序员创富
Ricciflows34 分钟前
MIT线性代数教材:Linear Algebra and Its Applications
人工智能·学习·线性代数·机器学习·数学建模·矩阵
凡人的AI工具箱36 分钟前
每天40分玩转Django:Django Email
数据库·人工智能·后端·python·django·sqlite
RFID舜识物联网1 小时前
RFID智能文件柜:高效安全的档案管理新方案
大数据·网络·人工智能·嵌入式硬件·物联网
orion-orion1 小时前
概率论沉思录:概率论的怪异应用
人工智能·概率论·科学哲学
jndingxin1 小时前
OpenCV相机标定与3D重建(37)计算两幅图像之间单应性矩阵(Homography Matrix)的函数findHomography()的使用
opencv·3d
liukuang1101 小时前
自动驾驶第一股的转型迷途:图森未来赌上了AIGC
人工智能·自动驾驶·aigc
AI完全体1 小时前
【AI日记】24.12.27 kaggle 比赛 2-15
人工智能·机器学习·kaggle 比赛