/***********************************************************************
* OpenCV 2.4.5 example
* By Nero 2014
* 为程序界面添加滑动条
***********************************************************************/
#include <opencv2\opencv.hpp>
using namespace cv;
//全局变量声明与初始化
const int alpha_slider_max = 100;
int alpha_slider;
double alpha;
double beta;
Mat imgA,imgB,imgC;
//定义响应滑动条的回调函数
void on_trackbar(int,void*)
{
alpha = (double) alpha_slider/alpha_slider_max;
beta = (1.0 - alpha);
addWeighted(imgA,alpha,imgB,beta,0.0,imgC);
imshow("Blending",imgC);
}
int main()
{
//读入图像
imgA = imread("Lena.jpg");
imgB = imread("Baboon.jpg");
//如果读入图像失败
if(!imgA.data || !imgB.data)
{
return -1;
}
//初始化
alpha_slider = 0;
//创建窗体
namedWindow("Blending",1);
//在窗体中创建滑动条
char TrackbarName[50];
sprintf(TrackbarName,"alpha %d",alpha_slider_max);
createTrackbar(TrackbarName,"Blending",&alpha_slider,alpha_slider_max,on_trackbar);
//结果在回调函数中显示
on_trackbar(alpha_slider,0);
//等待按键,按键盘任意键返回
waitKey(0);
return 0;
}
Class04 添加滑动条
最新推荐文章于 2022-03-02 11:18:26 发布