本系列代码托管于:https://github.com/chintsan-code/opencv4-tutorials

本篇使用的项目为:histogram_equalization

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

using namespace cv;
using namespace std;

int main(int argc, const char** argv) {
	Mat src = imread("../sample/lena512color.bmp");
	if (src.empty()) {
		cout << "could not load image..." << endl;
		return -1;
	}

	Mat gray, dst;
	cvtColor(src, gray, COLOR_BGR2GRAY);
	imshow("gray", gray);
	equalizeHist(gray, dst);
	imshow("dst", dst);

	waitKey(0);
	destroyAllWindows();
	return 0;
}

equalizeHist:直方图均衡化。

void equalizeHist( InputArray src, OutputArray dst );
  • src:输入图像,只接受8-bit单通道图像,CV_8UC1
  • dst:输出图像,与输入具有相同的尺寸和类型