代码如下:

 ////////////////////////////////////////////////////////////////////////
//
// 该程序产生一个窗口10s 如果在10s内滑动条移动到20则将lena.jpg图片加载到
// 窗口显示 满10s窗口销毁
//
////////////////////////////////////////////////////////////////////////
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#include <cv.h>
#include <highgui.h> void trackbarHandler() //自定义滑动条消息响应函数
{
IplImage* img = ; //定义图像文件指针,指向载入的原始图像
char Image_Filename[]; //输入图像文件的文件名
int pos = cvGetTrackbarPos("bar1","mainWin"); //获取滑动条当前的位置 //如果位置为20就显示图片
if(pos == )
{
printf("Trackbar position: %d\n",pos);
printf("Please input the filename of image:\n");
scanf("%s",Image_Filename); img=cvLoadImage(Image_Filename,); //载入图像函数,第一个参数为图像名称.第二个参数为辅助参数,
//有正,零,负三种值.正数表示以三通道图像载入(三通道即一个像素用3个字节表示),0表示
//以单通道载入图像,负数代表载入图像的通道数由图像本身决定. if(!img)
{
printf("Could not load image file: %s\n",Image_Filename);
exit();
} cvShowImage("mainWin", img ); //在之前创建的mainWin窗口中显示图像
cvReleaseImage(&img); //释放图像文件指针
return;
} } int main(int argc, char *argv[])
{
int trackbarVal=;
int maxVal=; cvNamedWindow("mainWin", ); //创建一个名称为mainWin的窗口,用于显示图像.CV_WINDOW_AUTOSIZE值为1
//表示固定窗口大小,若第二个参数为0表示窗口大小可变,图像也会随着窗口的大小而改变 cvMoveWindow("mainWin", , ); //设置窗口的位置,第一个参数为窗口的名字,后面两个参数为窗口显示的位置 cvCreateTrackbar("bar1", "mainWin", &trackbarVal ,maxVal , trackbarHandler);//在窗口mainWin上创建一个bar1滑动条,
//设置滑动条起始位置为10,最大值为50                                             //定义滑动条滑动时的响应函数为trackbarHandler
printf("The initial position is %d\n\n\n",trackbarVal); //输出滑动条起始位置 cvWaitKey(); //窗口仅仅产生10s就销毁 return ;
}


运行结果如下:

Opencv关于滑动条bar操作的实例的更多相关文章

  1. opencv:创建滑动条

    函数原型: ,); #include <opencv.hpp> using namespace cv; #define WINDOW_NAME "线性混合示例" // ...

  2. opencv:通过滑动条调节亮度和对比度

    示例代码: #include <opencv.hpp> using namespace cv; using namespace std; void on_change(int, void* ...

  3. OPENCV中滑动条的使用

    //文中存在两种不同的图像的平滑类型.一类是彩色图像,还有一类是灰度图像.经证明,两种均能够 #include<cv.h> #include<highgui.h> #inclu ...

  4. Android开发手记(11) 滑动条SeekBar

    安卓滑动条的操作特别简单,通过getProgress()可以获得SeekBar的位置,通过setProgress(int progress)可以设置SeekBar的位置.要想动态获取用户对SeekBa ...

  5. opencv学习之路(5)、鼠标和滑动条操作

    一.鼠标事件 #include<opencv2/opencv.hpp> #include<iostream> using namespace cv; using namespa ...

  6. OpenCV——图像的载入、显示、输出到文件和滑动条、鼠标操作

    图像的载入.显示.输出到文件和滑动条 滑动条 示例: 鼠标操作

  7. 利用OpenCV和MFC对话框建设一个有滑动条控制的播放器--转

    (一)问题的提出: OpenCV有一个很简单的播放视频文件并加载滑动条的程序,但是如何用MFC对话框来创建一个有滑动条控制的播放器呢,网络上四处搜索都没有代码可以参考,下的都是些骗子链接文件,很过分, ...

  8. 滑动条 Trackbar[OpenCV 笔记9]

    OpenCV中没有实现按钮的功能,我们可以利用滑动条来实现按钮功能. , ); trackbarname 轨迹条的名字. winname 窗口的名字,轨迹条会依附在这个窗口上. value 一个指向整 ...

  9. Android中ViewPager实现滑动条及与Fragment结合的实例教程

    ViewPager类主要被用来实现可滑动的视图功能,这里我们就来共同学习Android中ViewPager实现滑动条及与Fragment结合的实例教程,需要的朋友可以参考下 自主实现滑动指示条先上一个 ...

随机推荐

  1. MFC与Qt的内存管理

    最近在做MFC向Qt的移植,在内存管理方面遇到了很头疼的问题,虽然不知道问题到底出在哪,先了解下这两个库的内存管理方式.于是转载两篇关于内存管理的文章. 一. Qt内存管理: 在Qt的程序中经常会看到 ...

  2. C++静态成员函数不能调用非静态成员变量

    其实我们从直观上可以很好的理解静态成员函数不能调用非静态成员变量这句话因为无论是静态成员函数还是静态成员变量,它们 都是在类的范畴之类的,及在类的整个生存周期里始终只能存在一份.然而非静态成员变量和非 ...

  3. SoftLayer®凭借Flex Images™消融物理与虚拟服务器之间的界线

    网摘文档留存,日后有用; 达拉斯--(美国商业资讯)--随着SoftLayer Flex Images的推出,物理与虚拟IT资源之间的界线正在变得模糊.Flex Images让用户能够捕捉.复制并存储 ...

  4. Wine --- Linux上运行 Windows 应用

    https://www.winehq.org/ Wine (“Wine Is Not an Emulator” 的首字母缩写)是一个能够在多种 POSIX-compliant 操作系统(诸如 Linu ...

  5. SQL Server 中使用参数化Top语句

    在T-Sql中,一般top数据不确定的情况下,都是拼sql,这样无论是效率还是可读性都不好.应该使用下面参数化Top方式:declare @TopCount int set @TopCount = 1 ...

  6. Unity 读取Excel

    游戏有大多数配置文件,比如玩家等级,游戏商店信息等等.通常情况下把这些放入excel中来读取 第一种解决方案: xlsx –> csv –> 改变成UTF-8 或者Unicode编码 –& ...

  7. flappy bird游戏源代码揭秘和下载

    转:http://blog.csdn.net/touchsnow/article/details/19071961 背景: 最近火爆全球的游戏flappy bird让笔者叹为观止,于是花了一天的时间山 ...

  8. 【进制问题】【HDU2056】A + B Again

    A + B Again Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Tota ...

  9. java学习之i/o

    基本的输入输出  这里有两种方法,其中一种被注释了,可以换着注释后测试一遍 class TestSystem { public static void main(String[] args) { /* ...

  10. java的clone

    做项目时有时可能会遇到需要克隆对象的时候,因为有时候对象是直接从别的类get到的,那样引用的是一个对象,修改的话会将原先的对象也修改了. java的浅克隆,十分简单.但是只会克隆基本的数据类型,当涉及 ...