您的位置:首页 > 运维架构

opencv学习笔记第四章 图像的均值化

2017-10-01 10:22 411 查看
图像在视觉上的缺陷在多数情况下不是像素强度范围过窄,而是因为像素强度频率分布不均。

一副高质量的图片应该平均使用所有的像素强度。

void equalizeHist( InputArray src, OutputArray dst );

#include <stdio.h>
#include <iostream>
#include "opencv2/opencv.hpp"
#include "histogram.h"
using namespace std;
using namespace cv;

int main()
{
Histogram1D h;
Mat image;
image = imread("D:/1.jpg", 0);
namedWindow("image");
imshow("image", image);
/*
MatND histo = h.getHistogram(image);
for (int i = 0; i < 256;i++)
//cout << "Value" << i << "=" << hist.at<float>(i) << endl;
*/
namedWindow("Histogram");
imshow("Histogram", h.getHistogramImage(image));

/********************************************************
二值化
********************************************************/
Mat thresholded, result;
//threshold(image, thresholded, 60, 255, THRESH_BINARY);
//namedWindow("thresholded");
//imshow("thresholded", thresholded);
equalizeHist(image, result);
namedWindow("equalized image");
imshow("equalized image", result);
namedWindow("equalizedHistogram");
imshow("equalizedHistogram", h.getHistogramImage(result));

waitKey(0);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: