- 操作系统: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;
}