opencv入门学习7

滚动条操作演示——参数传递度

  1. 设置亮度响应滑动条的回调函数
static void on_lightness(int b, void* userdata) {
	Mat srcImg = *((Mat*)userdata);//将指针解除
	Mat dst = Mat::zeros(srcImg.size(), srcImg.type());
	Mat m = Mat::zeros(srcImg.size(), srcImg.type());
	addWeighted(srcImg, 1.0, m, 0, b, dst);//a*b+c*d+e
	imshow("亮度与对比度调整", dst); 
}
  1. 设置对比度响应滑动条的回调函数
static void on_contrast(int b, void* userdata) {
	Mat srcImg = *((Mat*)userdata);
	Mat dst = Mat::zeros(srcImg.size(), srcImg.type());
	Mat m = Mat::zeros(srcImg.size(), srcImg.type());
	double contrast = b / 200.0;
	addWeighted(srcImg, contrast, m, 0.0, 0, dst);
	imshow("亮度与对比度调整", dst);
}

3.设置Trcakbar函数

createTrackbar("Value Bar:", "亮度与对比度调整", &lightness, max_valus, on_lightness, (void*)(&srcImg));
	createTrackbar("Contrast Bar:", "亮度与对比度调整", &contrast_value, 200, on_contrast, (void*)(&srcImg));
on_lightness(50, &srcImg);
上一篇:使用强大的 CSS 滤镜实现安卓充电动画效果


下一篇:bootstrap~~媒体查询兼容IE