上海有哪些做网站,响应 网站建设,cgi做网站,莱芜金点子电子版招聘1. 直方图均衡化
直方图均衡化是一种增强图像对比度的方法#xff0c;可以通过均衡化图像的灰度级分布来改善图像中阴影部分的亮度。
#include opencv2/opencv.hppusing namespace cv;int main() {// 读取图像Mat image imread(input_image.jpg, IMREA…1. 直方图均衡化
直方图均衡化是一种增强图像对比度的方法可以通过均衡化图像的灰度级分布来改善图像中阴影部分的亮度。
#include opencv2/opencv.hppusing namespace cv;int main() {// 读取图像Mat image imread(input_image.jpg, IMREAD_COLOR);if (image.empty()) {std::cerr Error loading image! std::endl;return -1;}// 将图像转换为灰度图Mat gray;cvtColor(image, gray, COLOR_BGR2GRAY);// 应用直方图均衡化Mat equalized;equalizeHist(gray, equalized);// 显示原始图像和均衡化后的图像imshow(Original Image, gray);imshow(Equalized Image, equalized);waitKey(0);return 0;
}
2. 自适应直方图均衡化
自适应直方图均衡化可以更好地处理局部区域的对比度问题因此特别适合处理阴影部分。
#include opencv2/opencv.hppusing namespace cv;int main() {// 读取图像Mat image imread(input_image.jpg, IMREAD_COLOR);if (image.empty()) {std::cerr Error loading image! std::endl;return -1;}// 将图像转换为灰度图Mat gray;cvtColor(image, gray, COLOR_BGR2GRAY);// 应用自适应直方图均衡化Mat equalized;PtrCLAHE clahe createCLAHE();clahe-setClipLimit(4); // 设置限制参数clahe-apply(gray, equalized);// 显示原始图像和均衡化后的图像imshow(Original Image, gray);imshow(CLAHE Image, equalized);waitKey(0);return 0;
}
3. 使用滤波器
有时可以通过使用滤波器来减少阴影的影响例如使用高斯滤波器平滑图像或者使用形态学操作来改善图像的局部对比度。
#include opencv2/opencv.hppusing namespace cv;int main() {// 读取图像Mat image imread(input_image.jpg, IMREAD_COLOR);if (image.empty()) {std::cerr Error loading image! std::endl;return -1;}// 将图像转换为灰度图Mat gray;cvtColor(image, gray, COLOR_BGR2GRAY);// 使用高斯滤波器平滑图像Mat blurred;GaussianBlur(gray, blurred, Size(5, 5), 0);// 显示原始图像和平滑后的图像imshow(Original Image, gray);imshow(Blurred Image, blurred);waitKey(0);return 0;
}