先上代码

#include <iostream>
#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/imgproc.hpp>
#include <opencv2/videoio.hpp>
#include <opencv2/video.hpp>using namespace cv;
using namespace std;#define WINDOW_NAME "[线性混合示例]" //为窗口标题定义的宏const int g_nManAlphaValue = 100; //Alpha值的最大值
int g_nAlphaValueSlider;//滑动条对应的变量
double g_dAlphaValue;
double g_dBetaValue;//声明存储图像的变量
Mat g_srcImage1;
Mat g_srcImage2;
Mat g_dstImage;void on_Trackbar(int, void*) {//求出当前alpha值相对于最大值的比例g_dAlphaValue = (double)g_nAlphaValueSlider / g_nManAlphaValue;//则beta值为1减去alpha的值g_dBetaValue = (1.0 - g_dAlphaValue);//根据alpha和beta值进行线性混合addWeighted(g_srcImage1, g_dAlphaValue, g_srcImage2, g_dBetaValue, 0.0, g_dstImage);//显示效果图imshow(WINDOW_NAME, g_dstImage);
}int main(int argc, char** argv)
{//加载图像g_srcImage1 = imread("3.jpg");g_srcImage2 = imread("4.jpg");if (!g_srcImage1.data){printf("读取第一张图片错误,请确定目录下是否有imread函数指定的图片存在\n");return -1;}if (!g_srcImage2.data) {printf("读取第二张图片错误,请确定目录下是否有imread函数指定的图片存在\n");return -1;}//设置滑动条初始值为70g_nAlphaValueSlider = 70;//创建窗体namedWindow(WINDOW_NAME, WINDOW_NORMAL);//在创建的窗体中创建一个滑动条控件char TrackbarName[50] = "透明值 100";//sprintf(TrackbarName, "透明值 %d", g_nManAlphaValue);createTrackbar(TrackbarName, WINDOW_NAME, &g_nAlphaValueSlider, g_nManAlphaValue, on_Trackbar);//结果在回调函数中显示//on_Trackbar(g_nAlphaValueSlider, 0);cout << "bar pos = " << getTrackbarPos(TrackbarName, WINDOW_NAME);waitKey(0);return 0;
}

运行结果

今天中午在琢磨公司的东西,没午休,现在直接顶不住,今天就这么多吧,先保狗命要紧。

OpenCV之滑动条的创建和使用相关推荐

  1. opencv 滑动条的创建和使用

    CV_EXPORTS int createTrackbar(const string& trackbarname, // 轨迹条名称const string& winname, // ...

  2. 【火同学】OPencv学习笔记——滑动条的创建和使用

    Opencv中的滑动条的创建和使用 Ps:素材来源:opencv编程,目的是记录自己的学习过程. 一,创建滑动条:createTrackbar() 1)createTrackbar()函数是用来创建一 ...

  3. python -opencv 使用滑动条 cv2.createTrackbar,cv2.getTrackbarPos(), cv2.setTrackbarPos

    python -opencv 使用滑动条 函数createTrackbar: cv2.createTrackbar("scale", "display", 0, ...

  4. C/C++ OpenCV滑动条的创建与使用

    滑动条(Trackbar)是Opencv动态调节参数的一个工具,他依附于窗口存在 创建滑动条:createTrackbar() int createTrackbar( const string& ...

  5. python 滚动条方法_Python OpenCV 使用滑动条来调整函数参数的方法

    引言 在观察OpenCV中某个函数在不同参数的情况下,所得到的效果的时候,我之前是改一次参数运行一次,这样做起来操作麻烦,效率低下.为了更便捷的观察参数变化时带来的处理效果改变 可以使用滑动条来改变参 ...

  6. OpenCV利用滑动条实现一个开关

    //----------------------------------------------------------------------- // 代码说明:以下代码来自Learning Ope ...

  7. HighGUI图像用户界面初步(滑动条、鼠标操作)

    文章目录 1.Mat类简析 2.图像的载入:imread()函数 3.图像的显示:imshow()函数 4.创建窗口:namedWindow()函数 5.输出图像到文件:imwrite()函数 6.综 ...

  8. 【OpenCV 】计算物体的凸包/创建包围轮廓的矩形和圆形边界框/createTrackbar添加滑动条/

    目录 topic 1:模板匹配 topic 2:图像中寻找轮廓 topic 3:计算物体的凸包 topic 4:轮廓创建可倾斜的边界框和椭圆¶ topic 5:轮廓矩¶ topic 6:为程序界面添加 ...

  9. OpenCV之highgui 模块. 高层GUI和媒体I/O: 为程序界面添加滑动条 OpenCV的视频输入和相似度测量 用OpenCV创建视频

    为程序界面添加滑动条 在以前的教程中 (例如 linear blending 和 brightness and contrast adjustments)你有可能注意到需要 input 一些数值到我们 ...

最新文章

  1. 回归算法 - 线性回归求解 θ(最大似然估计求解)
  2. #每天一种设计模式# 模板方法
  3. vs怎么编译php文件,vscode怎么初始编译
  4. HDU2608 0 or 1
  5. java检测tomcat宕机_Tomcat意外宕机分析
  6. vmware 克隆后Linux没有eth网卡只有lo
  7. signature=095ed28e83b68620637b3a67436b0f8f,SMB 3.1.1 Encryption in Windows 10
  8. c语言翻译时为0运行为2,高级语言程序设计:、二章习题解答
  9. 链表c++语言 解析,C++ 单链表的基本操作(详解)
  10. python合并两个数据框_python-3.x - 如何使用匹配索引合并两个数据框? - SO中文参考 - www.soinside.com...
  11. Numpy系列(二)对数组按索引查询
  12. 内存越界并不等于马上出错
  13. 一位销售的几年职业总结
  14. 设置一个励志锁屏短语吧!苹果电脑锁屏短语在哪设置?
  15. HttpClient用法--这一篇全了解(内含例子)
  16. C++ 程序越过windows Defender检测
  17. ThinkPHP5分页样式
  18. 校内题目T2691 桶哥的问题——送桶
  19. 电商商家玩抖音裂变营销,必须要知道的数据分析知识-下秒数据
  20. 【2018-11-09】中证500指数的估值详情

热门文章

  1. Jquery JS 正确的比较两个数字大小的方法
  2. Key为数字的Json数据标准化成标准Json格式
  3. 注册登录时本地图片验证码
  4. error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
  5. php访问mysql 封装
  6. Tomcat5的数据库连接池配置
  7. 利用IDocHostUIHandler接口屏蔽WebBrowser的弹出菜单
  8. 理解去中心化稳定币DAI
  9. ES6系列_2之新的声明方式
  10. app的证书签名,eclipse的sha1和md5值