OpenCV-计时函数cv::getTickCount&cv::getTickFrequency

OpenCV-计时函数cv::getTickCount&cv::getTickFrequency本文介绍了一种便于记忆的 OpenCV 计时函数 方便大家使用

场景需求

       使用OpenCV时,如果有计时的需求,就记住两个函数cv::getTickCount和cv::getTickFrequency,应用非常简单也方便记忆,C++中有多种多样的计时方法,选择自己最常用最便于记忆的使用就可以了~

       下面简单分享下cv::getTickCount和cv::getTickFrequency这两个函数的使用。

C++实现代码

/ * @brief getTickCount() 该函数返回CPU自某个事件以来走过的时钟周期数 * @brief getTickFrequency() 该函数返回CPU一秒钟所走的时钟周期数。便于以秒为单位进行计时。 */ // 计时开始 double timex = static_cast<double>(getTickCount()); // 需要计时的函数或代码 .............. // 计时结束 timex = ((double)getTickCount() - timex) / getTickFrequency(); // 时间输出 cout << "运行时间为:" << timex << "秒" << endl ;

测试代码

#include<iostream> #include<opencv2/opencv.hpp> #include<ctime> using namespace std; using namespace cv; int main(void) { Mat A = Mat::zeros(10000, 10000, CV_32FC1); // 随意创建一个A矩阵 for (int i = 0; i < A.rows; i++) { for (int j = 0; j < A.cols; j++) { A.at<float>(i, j) = rand() % 100 / 100.f; } } Mat B = A.clone(); // 计时开始 double time0 = static_cast<double>(getTickCount()); for (int i = 0; i < A.rows; i++) { for (int j = 0; j < A.cols; j++) { B.at<float>(i, j) *= 2; } } // 计时结束 time0 = ((double)getTickCount() - time0) / getTickFrequency(); // 时间输出 cout << " 运行时间为:" << time0 << "秒" << endl << endl; system("pause"); return 0; }

测试效果

OpenCV-计时函数cv::getTickCount&cv::getTickFrequency
图1 计时输出

       本文介绍了一种便于记忆的OpenCV计时函数,方便大家使用。

       如果文章帮助到你了,可以点个赞让我知道,我会很快乐~加油!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233208.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • [转]深邃之思想,纯粹之灵魂——我所了解的柳智宇学长

    [转]深邃之思想,纯粹之灵魂——我所了解的柳智宇学长https://zhuanlan.zhihu.com/p/32340797柳智宇学长文集前言部分深邃之思想,纯粹之灵魂——我所了解的柳智宇学长——2017年12月25日中国.湖北.武汉.华中科技大学【陆秋宇】正文部分读到自己高二写的这篇文章——2005年中国.湖北.武汉.华中师大一附中远慰风雨夕——2006年7月斯洛文尼亚.卢布尔雅那.第47届IMO前夜我在大学的成长历程…

    2022年4月30日
    47
  • 字符串指针赋值小结

    字符串指针赋值小结字符指针赋值探究小结1,字符指针有初始值时,不能修改其中字符的值#include<iostream>usingnamespacestd;intmain(){ char*p1=”nihao”;//字符指针赋值给字符指针只能读不能修改字符的值 …

    2022年7月27日
    4
  • 鼠标滑过显示图片大图效果

    鼠标滑过显示图片大图效果

    2022年1月25日
    56
  • google cloud platform官网_ai智能体验店免费送

    google cloud platform官网_ai智能体验店免费送一、GoogleCloudPlatform(GCP)简介GoogleCloudPlatform(以下简称GCP)是Google提供的云平台,。Google云平台提供很多功能,包括计算服务,存储服务,网络服务,大数据服务,人工智能服务,以及谷歌的产品等,可以用来搭建加速服务,网站和存储数据等等。本文将介绍如何申请GCP一年的免费试用、Linux服务器环境搭建。Docker环境搭建…

    2022年10月23日
    1
  • tcpdump抓包命令怎么用_tcpdump指定ip抓包命令

    tcpdump抓包命令怎么用_tcpdump指定ip抓包命令今天要给大家介绍的一个Unix下的一个网络数据采集分析工具,也就是我们常说的抓包工具。与它功能类似的工具有wireshark,不同的是,wireshark有图形化界面,而tcpdump则只有命令行。由于我本人更习惯使用命令行的方式进行抓包,因此今天先跳过wireshark,直接给大家介绍这个tcpdump神器。这篇文章,我肝了好几天,借助于Linux的man帮助命令,我把tcpdump的用法全部研究了个遍,才形成了本文,不夸张的说,应该可以算是中文里把tcpdump.

    2022年8月20日
    18
  • 权限持久化—映像劫持检测(Shift后门)[通俗易懂]

    权限持久化—映像劫持检测(Shift后门)[通俗易懂]映像劫持说白了还是利用了windows的一些特性,当你点击可执行文件进行执行时,系统并不会直接就对可执行文件进行执行,而是首先对注册表的HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\ImageFileExecutionOptions,这个路径下面如果存在和该程序名称完全相同的子键,就查询对应子健中包含的“Dubugger”键值名,并用其指定的程序路径来代替原始的程序,之后执行的是遭到“劫持”的虚假程序。比较常用的是.

    2022年9月17日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号