当前位置:   article > 正文

计算机视觉全系列实战教程:(四)OpenCV用户界面模块highgui

计算机视觉全系列实战教程:(四)OpenCV用户界面模块highgui

1.创建/销毁窗口

创建一个名位winname的窗口

namedWindow(const string& winname, int flags=WINDOW_AUTOSIZE); //创建窗口
void destroyWindow(const string &winname);//销毁指定窗口
void destroyAllWindows(); //销毁所有窗口
  • 1
  • 2
  • 3

参数flags:

WINDOW_NORMAL //用户可以拖拽窗口大小
WINDOW_AUTOSIZE //用户无法重新定义窗口大小
WINDOW_OPENGL //窗口支持对OpenGL的支持
WINDOW_FREERATIO 
WINDOW_KEEPRATIO //保留图像比例
WINDOW_GUI_EXPANDED //可以显示状态栏和工具栏,增强交互性
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

2.显示窗口

void imshow(const string &winname,InputArray mat);
  • 1

Tips:当该窗口处于激活状态时,可以使用使用快捷键复制或保存当前显示的图像:ctrl+c 和 ctrl+s

3.设置窗口标题

void setWindowTitle(const string& winname,const string &title); //不设置的话默认时winname,设置之后是title
  • 1

4.窗口属性

double getWindowProperty(const string& winname,int prop_id); //得到winname窗口的prop_id属性值

void setWindowProperty(const string& winname,int prop_id, double prop_value); 
  • 1
  • 2
  • 3

5.鼠标和键盘事件

(1)鼠标事件

void setMouseCallback(const string &winname, MouseCallback onMouse, void *userData=0); //处理鼠标事件,回调函数是onMouse

Rect selectROI(const string &winname, InputArray img); //鼠标选择ROI区域

void selectROIs(const string &winname, InputArray img, std::vector<cv::Rect>& rects); //获取多个ROI区域
  • 1
  • 2
  • 3
  • 4
  • 5

(2)键盘事件

int cv::waitKey(int delay);//等待键盘事件的发生,delay是延时
int cv::pollKey(); //无需等待键盘事件的发生
  • 1
  • 2
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/597824
推荐阅读
相关标签
  

闽ICP备14008679号