openCV中waitKey函式介紹

2021-07-10 17:22:41 字數 2931 閱讀 4785

#include < opencv2/highgui/highgui.hpp >

#include 

iostream >

#include

windows.h >

using

namespacecv;

using

namespacestd;

intmain()

{

mat im;

double

duration;

im=imread("d:\\document\\pictures\\lena.bmp",0);

//測試沒有

namedwindow

時的waitkey

執行時間

duration=

static_cast

<

double>(

gettickcount());

waitkey(10000);

duration=

static_cast

<

double>(

gettickcount())

-duration;

duration/=gettickfrequency();

cout<<"

第乙個waitkey

執行時間為:

"<<duration

<<'s'<<endl;

namedwindow("lena");

imshow("lena",im);

//測試有

namedwindow

時的waitkey

執行時間

duration=

static_cast

<

double>(

gettickcount());

waitkey(10000);

duration=

static_cast

<

double>(

gettickcount())

-duration;

duration/=gettickfrequency();

cout<<"

第二個waitkey

執行時間為:

"<<duration

<<'s'<<endl;

sleep(20000);

return0;

執行結果如下:

從執行結果可以看出,第乙個結果並未如期執行,第二個結果如期執行了。這是因為

waitkey

僅對視窗機制起作用,即

namedwindow

產生的視窗。若在此之前沒有產生視窗,則

waitkey

相當於未執行。

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

語句則不會正常顯示影象。

openCV中waitKey函式介紹

include include iostream include using namespace cv using namespace std int main 結果 第乙個waitkey執行時間為 3.56973e 006s 第二個waitkey執行時間為 10.0054s 請按任意鍵繼續.從執行...

opencv 中findContours函式介紹

findcontours 這個函式的主要功能是找到contours也就是邊界線,不過這個函式主要是給灰度圖物件服務的。函式的使用介紹 findcontours image,mode,method contours hierarchy offset contours,hierarchy 返回值cont...

OpenCV中與matlab中相對應的函式

1 matlab中的imread相當於opencv中的 cvloadimage imagename,cv load iamge anydepth cv load image anycolor 讀出的影象資訊保持了原有影象的資訊 包括通道資訊和位深資訊 rgb2gray相當於cvloadimage i...