zoukankan      html  css  js  c++  java
  • waitKey()

     waitKey仅对窗口机制起作用,即namedWindow产生的窗口。若在此之前没有产生窗口,则waitKey相当于未执行。

     注:namedWindow产生的窗口: namedWindow()+imshow()    或者   只有imshow() 都是可以的。

    /***********************************************************************************/

    openv中对cvWaitkey函数的定义如下:

    int cvWaitKey( int delay=0 )

    返回值为int型,函数的参数为int型,当delay小于等于0的时候,如果没有键盘触发,则一直等待,此时的返回值为-1,否则返回值为键盘按下的码字;当delay大于0时,如果没有键盘的的触发,则等待delay的时间,此时的返回值是-1,否则返回值为键盘按下的码字。

    测试代码如下:

    #include<stdio.h>
    #include<cv.h>
    #include<highgui.h>
    int main()
    { IplImage *src=cvLoadImage("car.jpg",-1);
     cvShowImage("car",src);
     int t=cvWaitKey(-1);
     printf("cvWaitKey return: %d",t);
     return 0;
    }

    /*************************************************************************************/

    waitKey有两个作用:

    1. It waits for x milliseconds for a key press. If a key was pressed during that time, it returns the key's ASCII code. Otherwise, it returns -1.

    2It handles any windowing events, such as creating windows with cv::namedWindow(), or showing images with cv::imshow().

        格式:

    waitKey(x);

    第一个参数: 等待x ms,如果在此期间有按键按下,则立即结束并返回按下按键的

    ASCII码,否则返回-1

    如果x=0,那么无限等待下去,直到有按键按下

             另外,在imshow之后如果没有waitKey语句则不会正常显示图像。

    附: 

    int c=cv::waitKey(0);
    if((char)c==27)//27:Esc//>a
    break;
    if((char)c=='r')//>b

    以上>a和>b中(char)加与不加都是等价的!

  • 相关阅读:
    启动php-fpm时报错
    安装php时,make test报错
    安装php时,make步骤报错make: *** [sapi/fpm/php-fpm] Error 1
    安装php时,make步骤报错make: *** [ext/gd/gd.lo] Error 1
    运行phpize时出现:Cannot find autoconf. Please check your autoconf installation
    Linux下安装php加速组件XCache
    加速器eaccelerator不兼容高版本php
    Apache下Worker模式MPM参数分析
    Linux SVN直接删除版本库文件
    Linux SVN一次增加多个文件并批量上传
  • 原文地址:https://www.cnblogs.com/ttzm/p/5418791.html
Copyright © 2011-2022 走看看