#pragma once
using namespace cv;
using namespace std;
class histogram{
private:
int histsize;
float range[2];
const float *histrange;
int channels[1];
float threshold;
public:
histogram() {
histsize = 256;
range[0] = 0;
range[1] = 256;
histrange = range;
channels[0] = 0;
threshold = 0;
}
Mat changeImg(const Mat& img) { //忽略低于边界值的像素值
Mat hsv;
cvtColor(img, hsv, CV_BGR2HSV); //转换成HSV
vector<Mat> channel;
split(hsv, channel);
int minVal = 0;
int maxVal = 256;
float Val = 0;
cout << "请输入边界值:" << endl;
cin >> Val;
for (; minVal < 256; minVal++) { //划定一个值寻找到新的边界范围
if (channel[0].at<uchar>(minVal) > Val)
break;
channel[0].at<uchar>(minVal) = 0; //把边界之外的像素值忽略
}
for (; maxVal >= 0; maxVal--) {
if (channel[0].at<uchar>(maxVal) > Val)
break;
channel[0].at&l