网站建设计划 文库,网站建设专有名词,网站怎么进行优化排名,网络推广方法有在调试程序或者程序执行时需要调整某个变量的值亦或是参数的值#xff0c;我们需要一个简单方便的操作#xff0c;滚动条就是一个非常使用的工具。通过鼠标点击对滚动条进行拖动操作以期实现调整某个参数的值。下面例程参见Opencv 安装目录 samples tutorial_code文件夹。 #i… 在调试程序或者程序执行时需要调整某个变量的值亦或是参数的值我们需要一个简单方便的操作滚动条就是一个非常使用的工具。通过鼠标点击对滚动条进行拖动操作以期实现调整某个参数的值。下面例程参见Opencv 安装目录 samples tutorial_code文件夹。 #includeopencv2/opencv.hpp
using namespace cv;
using namespace std;const int alpha_slider_max 100;
int alpha_slider;
double alpha;
double beta;//存储矩阵
Mat src1, src2, dst;void on_tracker(int, void*);
int main(int argc, char* argv[])
{src1 imread(C:/Users/lyb/Documents/Visual Studio 2013/Projects/ConsoleApplication trackbar/Debug/1.jpg);src2 imread(C:/Users/lyb/Documents/Visual Studio 2013/Projects/ConsoleApplication trackbar/Debug/2.jpg);if (!src1.data){ cout Error loading src1 endl; return -1; } //判断载入是否成功if (!src2.data){ cout Error loading src2 endl; return -1; }alpha_slider 0;namedWindow(Linear_blend);//namedWindow(control_image);//建立滑块char TrackbarName[50];sprintf(TrackbarName, Alpha x %d, alpha_slider_max);//标准写入字符串createTrackbar(TrackbarName, Linear_blend, alpha_slider, alpha_slider_max, on_tracker);//参数1滑块名称 参数2显示窗口 参数3 OPENCV将当前滑块位置值传给指针指向的整数 参数4滑块调整范围最大值 参数5指向回调函数的指针当滑动条被拖动时函数自动调用on_tracker(alpha_slider, 0);waitKey(0);return 0;}void on_tracker(int, void*) //滑块所对应的操作函数 对图像进行线性混合
{alpha (double)alpha_slider / alpha_slider_max;beta (1.0 - alpha);addWeighted(src1, alpha, src2, beta, 0.0, dst);/*cvAddWeighted 计算两数组的加权值的和 dst(I) src1(I)*alpha src2(I)*beta gamma cvAddWeighted( const CvArr* src1, double alpha, const CvArr* src2, double beta, double gamma, CvArr* dst );src1 //第一个原数组.alpha //第一个数组元素的权值src2 //第二个原数组beta //第二个数组元素的权值gamma //添加的常数项。dst //输出数组*/imshow(Linear_blend, dst);
}