【Ubuntu+OpenCV】HighGUI之trackbar充当开关按钮--学习笔记【3】
2011-06-14 20:27
555 查看
opencv的highgui没有button按钮,但是我们可以充分利用trackbar的功能来实现button按键。
一、主要思路
设置一个只有两个值的trackbar,即trackbar的位置范围是[0,1]。位置为0的时候对应一种状态;位置为1的时候对应另外一种状态。就能实现button的功能。
二、运用实例
编写一个程序,创建一个trackbar,当其位置为0时,显示彩色的原图像;当其位置为1时,显示图像对应的灰度图像。
编译以后,运行结果如下:
一、主要思路
设置一个只有两个值的trackbar,即trackbar的位置范围是[0,1]。位置为0的时候对应一种状态;位置为1的时候对应另外一种状态。就能实现button的功能。
二、运用实例
编写一个程序,创建一个trackbar,当其位置为0时,显示彩色的原图像;当其位置为1时,显示图像对应的灰度图像。
//switch.c #include "cv.h" #include "highgui.h" IplImage* src = NULL ; IplImage* dst = NULL ; const char* image_name = "lena.jpg" ; const char* wnd_name = "switch" ; const char* trackbar_name = "on_or_off" ; void on_or_off(int pos) { if ( 0 == pos ) { cvShowImage( wnd_name,src ); } if( 1 == pos ) { cvCvtColor( src,dst,CV_BGR2GRAY ); cvShowImage( wnd_name,dst ); } } int main(int argc,char** argv) { int value = 0 ; src = cvLoadImage(image_name,1); dst = cvCreateImage( cvGetSize(src),IPL_DEPTH_8U,1 ); cvNamedWindow(wnd_name,CV_WINDOW_AUTOSIZE); cvCreateTrackbar(trackbar_name,wnd_name,&value,1,on_or_off); on_or_off(0); cvWaitKey(0); cvReleaseImage(&src); cvReleaseImage(&dst); cvDestroyWindow(wnd_name); return 0 ; }
编译以后,运行结果如下:
相关文章推荐
- 【Ubuntu+OpenCV】HighGUI之trackbar(滑动条)的创建--学习笔记【2】
- OpenCv学习笔记(八)---细说HighGUI(图像用户界面)之滑动条createTrackbar()详解
- OpenCV学习笔记(十)——图形交互和媒体接口HighGUI
- openCV学习笔记(2)--cvCreateTrackbar
- opencv之highgui中createTrackbar
- OpenCV学习笔记08--细说HighGUI
- OpenCV学习笔记---HighGUI的初步
- OpenCV学习笔记18 OpenCV高级GUI和多媒体模块 HIGHGUI MODULE (二)
- OpenCV学习笔记:opencv_highgui模块
- OpenCV3学习笔记-HighGUI初步
- OpenCV学习笔记17 OpenCV高级GUI和多媒体模块 HIGHGUI MODULE (一)
- OpenCv基础学习笔记之一[highgui_c.h]
- OpenCV学习笔记(14)创建Trackbar & 图像对比度、亮度值调整
- 四、openCV学习笔记(High-level GUI and Media I/O)
- OpenCV3.2学习笔记之TrackBar
- OpenCV学习笔记:opencv_highgui模块
- OpenCV学习笔记(三十)——解开VideoInput面纱highgui
- opencv学习笔记2:HighGUI
- OpenCV学习笔记19 OpenCV高级GUI和多媒体模块 HIGHGUI MODULE (三)
- OpenCV学习笔记(11)createTrackbar使用方法及步骤