函数解释:
getTickCount()函数:它返回从操作系统启动到当前所经的计时周期数。(s)
getTickFrequency()函数:返回CPU的频率。(s)
{
double t1 = (double)getTickCount();
. . .
double t2 = (double)getTickCount();
out<<"time:"<<(t2-t1)*1000/(getTickFrequency())<< "ms\n"<<endl;
}
总次数/一秒内重复的次数 = 时间(s)
1000 *总次数/一秒内重复的次数= 时间(ms)
C版本的cvGetTickFrequency()函数和C++版本的getTickFrequency()的单位不一样,
前者以ms计算频率,后者以s为单位计算频率,所以如果使用C版本的cvGetTickFrequency()计算时间的话,应该是:
总次数/一秒内重复的次数 = 时间(ms)
总次数/一秒内重复的次数*1000= 时间(s)
---------------------
double timeStart = (double)getTickCount();
……
double Time = ((double)getTickCount() - timeStart) / getTickFrequency();
cout << "运行上面程序共耗时:" << Time << "秒\n" << endl;
---------------------
int begintime, endtime;
begintime = clock();
……
endtime = clock();
printf("\nRunning Time:%dms\n", endtime - begintime);
---------------------
time.h中的声明:clock_t clock(void);clock_t是一个长整形数,单位为ms。
这个函数返回从“程序启动”到“程序中调用clock()函数”之间的CPU时钟计时单元(clock tick)数。