1. 程式人生 > >【拜小白opencv】4-測量程式執行時間;getTickCount()與getTickFrequency()

【拜小白opencv】4-測量程式執行時間;getTickCount()與getTickFrequency()

博主力求用最簡單的語言將此部分內容講解清楚,但由於博主同樣是剛剛接觸OpenCV,或許表達上有些錯誤,還望讀者能夠指教探討,大家共同進步。

博主機器配置為:VS2013+opencv2.4.13+Win-64bit。

 如果本人寫的能給讀者帶來一點點的幫助,我就很開心了。

======================分割線===============

有的時候,想知道要我們的程式一共運行了多長時間,這個很常用,也很簡單,僅僅需要兩個函式即可。

opencv裡使用getTickCount()與getTickFrequency()函式記錄時間;

函式解釋:

getTickCount

()函式:它返回從作業系統啟動到當前所經的計時週期數。

getTickFrequency()函式:返回CPU的頻率。

=====================分割線==================

演示程式碼

#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
int main()
{
	//【1】記錄程式開始點timeStart
	double timeStart = (double)getTickCount();
	//【2】此部分為簡單的迴圈,僅供測試用
	int a = 0;
	while (a < 500000000)
		a++;
	//將以上部分替換成,自己將要執行的程式程式碼
	//【3】記錄程式消耗的總時間nTime
	double nTime = ((double)getTickCount() - timeStart) / getTickFrequency();
	cout << "執行上面程式共耗時:" << nTime << "秒\n" << endl;
	system("pause");	//作用:暫停黑視窗,否則視窗一閃而過,看不見資訊
	return 0;
}


顯示結果


程式說明

想要測量程式執行時間,只需要新增程式碼中第【1】步,和【3】步兩行程式碼即可。  中間內容替換為自己編寫好的程式。 ========================END=================