首页 > 编程语言 >Qt+Opencv应用程序计时/度量(测量速度)的三种方法

Qt+Opencv应用程序计时/度量(测量速度)的三种方法

时间:2022-10-29 18:38:03浏览次数:50  
标签:Qt 应用程序 Opencv getTickCount TickMeter qDebug cv getTickFrequency

OpenCV计时/度量方法(测量速度),尽量远离经验法则,请试着用你的测量或者任何可信语言的测量参考作为你的经验法则的来源:
可以使用OPenCV中的TickMeter类或getTickFrequency函数和getTickCount函数来度量一个计算机视觉过程(或者任何处理这个问题的过程)的执行时间。还可以使用Qt中的QElapsedTimer类。
getTickFrequency可以用来获得一秒钟内CUP的时钟数(即频率),getTickCount可以用来获得自启动以来传递的CPU时钟数。
不过,TickMeter类提供了更大的灵活性,而且更易于使用。只需在任何过程之前启动该类,并在该过程之后停止该类。

//! 方法一:OpenCV-getTickCount()、getTickFrequency()
int64 tickCount = cv::getTickCount();
//! 方法二:OpenCV-TickMeter类
cv::TickMeter meter;
meter.start();
//! 方法三:Qt-----QElapsedTimer类
QElapsedTimer timer;
timer.start();

currentPluginInstance->processImage(originalMat, processedMat);//具体的应用程序处理过程
meter.stop();
double ms = (cv::getTickCount() - tickCount) * 1000 / cv::getTickFrequency();

qDebug() << "-------------------------TickMeter---------------------------";
qDebug() << "耗时:" << meter.getTimeMicro() << "微妙";//3678.6
qDebug() << "耗时:" << meter.getTimeMilli() << "毫秒";//3.6786
qDebug() << "耗时:" << meter.getTimeMilli() << "计数";//3.6786
qDebug() << "耗时:" << meter.getTimeSec() << "秒"; //0.0036786
qDebug() << "-------------------------QElapsedTimer---------------------------";
qDebug() << "耗时:" << timer.elapsed() << "毫秒"; //4,整数
qDebug() << "-------------------------getTickCount()---------------------------";
qDebug() << "耗时:" << ms << "毫秒"; //3.6787
printf("in %g ms\n", ms); //3.6787,浮点数毫秒
fflush(stdout); //该语句不能少啊

标签:Qt,应用程序,Opencv,getTickCount,TickMeter,qDebug,cv,getTickFrequency
From: https://www.cnblogs.com/zdt168/p/16839337.html

相关文章

  • 基于OpenCV的单目相机标定与三维定位
           相机是产生图像数据的硬件,广泛应用于消费电子、汽车、安防等领域。围绕着相机衍生出一系列的研究与应用领域,包括传统的图像处理和基于深度学习的智能应用等。......
  • 配置pyqt5工具designer,pyuic, pyRCC
    前提:安装好pyQT5后打开pycharm-->file-->setting-->externaltools,-->点+号新建:name:QTdesignerGroup:ExternalToolsprogram:你的项目地址\venv\Lib\site-package......
  • Qt图形视图框架--精确选中连接线
    一、前言在使用Qt图形视图框架进行组态软件开发过程中,我通过继承自QGraphicsPathItem自定义的连接线图元Arrow,发现点选连接线特别不灵敏;classArrow:publicQGraphicsPath......
  • Qt图形视图框架--图元总结
    文章目录​​一、基类QGraphicsItem​​​​二、内部图元​​​​2.1、椭圆图元--QGraphicsEllipseItem​​​​2.2、线段图元--QGraphicsLineItem​​​​2.3、路径图元--Q......
  • C++创建桌面应用程序:处理对话框DialogBox
    VS2019新建C++桌面向导://Project1.cpp:定义应用程序的入口点。//#include"framework.h"#include"Project1.h"INT_PTRDlgproc(HWNDhwndDlg,UINTuMsg,WPARAMwParam......
  • PIL和pillow,opencv库的区别
     一、PIL分不清PIL和Pillow,于是简单整理一下二者区别;PIL全称是:PythonImagingLibrary。PIL是一个强大的、方便的python图像处理库,功能非常强大,曾经一度被认为是pyth......
  • 【黑客攻防技术宝典】03-解析应用程序
    黑客攻防技术宝典——解析应用程序阅读范围:《黑客攻防技术宝典:web实战篇》第四章内容4-解析应用程序信息搜集:枚举、分析应用程序的内容与功能4.1关于枚举Web抓取......
  • Qt之悬浮球菜单
    目录一、概述二、效果展示三、实现代码1、菜单项2、悬浮球3、关键点四、相关文章原文链接:Qt之悬浮球菜单一、概述最近想做一个炫酷的悬浮式菜单,考虑到菜单展开和美观,所......
  • 工业网关BL110实现西门子S7-400 PLC 接入金鸽MQTT云平台
    LAN接口的配置COM口采集西门子S7-400PLC的配置工业智能网关BL110一共有一个LAN接口,一个WAN接口,可以通过LAN接口采集数据,通过WAN接口接入局域网,设置过程不一样,WAN接口可......
  • 工业网关BL110实现西门子S7-1200 PLC接入MQTT Client One云平台
    LAN接口的配置COM口采集西门子S7-1200PLC的配置工业智能网关BL110一共有一个LAN接口,一个WAN接口,可以通过LAN接口采集数据,通过WAN接口接入局域网,设置过程不一样,WAN接口......