第24课 直方图均衡化

1.什么是直方图

  • 图像直方图,是指对整个图像像在灰度范围内的像素值(0~255)统计出现频率次数,据此生成的直方图,称为图像直方图-直方图。直方图反映了图像灰度的分布情况。是图像的统计学特征。
  • 上述直方图概念是基于图像像素值,其实对图像梯度、每个像素的角度、等一切图像的属性值,我们都可以建立直方图。这个才是直方图的概念真正意义,不过是基于图像像素灰度直方图是最常见的。
  • 假设有图像数据8x8,像素值范围0~14共15个灰度等级,统计得到各个等级出现次数及直方图如下图所示:
    在这里插入图片描述
    -
  • 图像直方图:
    在这里插入图片描述

2. 直方图均衡化

  • 是一种提高图像对比度的方法,拉伸图像灰度值范围。
    在这里插入图片描述

2.1 如何实现

在这里插入图片描述
在这里插入图片描述

3. 相关API

3.1 equalizeHist()

equalizeHist(
InputArray src,//输入图像,必须是8-bit的**单通道图像**
OutputArray dst// 输出结果
)

在这里插入图片描述

4. 例程

#include<opencv2/opencv.hpp>
#include<iostream>
#include<math.h>

using namespace std;
using namespace cv;

int main() {
	Mat src, dst;
	src = imread("D:/resource/images/face.jpg");
	if (src.empty()) printf("The image cuoldn't be loaded...");
	imshow("input", src);

	cvtColor(src, src, COLOR_BGR2GRAY);
	equalizeHist(src, dst);
	imshow("output", dst);

	waitKey(0);
	return 1;

}
发布了31 篇原创文章 · 获赞 12 · 访问量 2760

猜你喜欢

转载自blog.csdn.net/weixin_42877426/article/details/104343366
今日推荐