#include <opencv2/opencv.hpp>
#include <iostream>
using namespace std;
using namespace cv;
int i = 7;//定义全局变量
void text(int, void*);
int main()
{
int max = 100;
Mat src, dst;
src = imread("F:\\image\\lenna.png");
cvtColor(src, dst, COLOR_BGR2GRAY);
namedWindow("灰度图", WINDOW_NORMAL);
createTrackbar("数字", "灰度图", &i, max, text,(void*)(&src));//这里的src起决定作用,下面的只能保证第一眼的图像。
text(0, &src); //text中的0为初始的7,改变的话,滚动条的值也为7.
/*imshow("灰度图", dst);*/
waitKey(0);
}
void text(int, void* userdata)
{
Mat image = *((Mat*)userdata);
Mat gray(image.size(), image.type());
cout << "数字i的值" << i << endl;
addWeighted(image, 1, image, 0, i, gray);
imshow("灰度图", gray);
waitKey(0);
}