C++11计算FPS函数示例_c++如何计算一帧-程序员宅基地

技术标签: c++  demo  

添加以下头文件和命名空间

#include <chrono>
using namespace std;
using namespace std::chrono;

函数如下:

double fps()
{
    
	static double fps = 0.0;
	static int frameCount = 0;
	static auto lastTime = system_clock::now();
	static auto curTime = system_clock::now();
	
	curTime = system_clock::now();
	
	auto duration = duration_cast<microseconds>(curTime - lastTime);
	double duration_s = double(duration.count()) * microseconds::period::num / microseconds::period::den;

	if (duration_s > 2)//2秒之后开始统计FPS
	{
    
		fps = frameCount / duration_s;
		frameCount = 0;
		lastTime = curTime;
	}

	++frameCount;

	return fps;
}

本文参看了博文https://blog.csdn.net/u013390476/article/details/50209603

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/xiongmingkang/article/details/100580860

智能推荐

Ubuntu安装Docker全记录及错误问题解决_ubuntu安装docker run hello-world无法连接仓库-程序员宅基地

文章浏览阅读2.6k次,点赞2次,收藏4次。版本:ubuntu-16.04-desktop-amd64.iso安装Docker过程全记录1.卸载旧版本的docker,使用如下命令:sudo apt-get remove docker docker-engine docker.io2. 安装Docker-CE2.1 设置仓库 1. 更新索引包,使用如下命令:sudo apt-get update..._ubuntu安装docker run hello-world无法连接仓库

failed to load ldlinux.c32_vmware failed to load ldlinux.c32-程序员宅基地

文章浏览阅读1.5k次。转:https://blog.csdn.net/tnaig/article/details/81139887 https://www.cnblogs.com/huadongw/p/6516637.html 同时附上了评论,感谢精彩评论!!!Ubuntu安装时出现“failed to load ldlinux.c32”U盘启动总是..._vmware failed to load ldlinux.c32

linux问题一句话(程序篇)-程序员宅基地

文章浏览阅读1.3k次。----------------------------程序开发篇-------------------------- 0001 linux下调试core文件(bjchenxu) gdb :出错产生core dump的可执行程序。 : core dump的文件名,缺省是“core” 0002 gcc abc.c得到的a.out不能运行(bjchenxu) ./a.out 0003 c++ 编译

这个小孩绝对聪明~_考题火车行驶中遇到玩耍的孩童-程序员宅基地

文章浏览阅读849次。 _考题火车行驶中遇到玩耍的孩童

C++ 创建文件夹与子文件夹_::access 和 ::mkdir-程序员宅基地

文章浏览阅读2.2w次,点赞4次,收藏15次。C++中fopen函数是没有创建文件夹功能的,也就是说如果‍‍".\\1\\2\\3\\"这个目录不存在,那么下面的代码是运行报错的。char *fileName=".\\1\\2\\3\\a.txt";FILE *ftest=fopen(fileName,"w");fprintf(ftest,"test\naldf\naldkf\m\n");fclose(ftest);要预防_::access 和 ::mkdir

XGB 训练的时候添加自定义eval_metric:f1、准确率,并对样本、特征加权训练_xgb eval_metric-程序员宅基地

文章浏览阅读5k次,点赞7次,收藏23次。文章目录XGB 训练的时候添加自定义eval_metric:f1、准确率,并对样本、特征加权训练随机搜索XGB 训练的时候添加自定义eval_metric:f1、准确率,并对样本、特征加权训练以下demo重点说明:eval_metric:用以训练的时候评估,必须要指定验证集,本博文分享自定义准确率、f1verbose:训练的时候对验证集评估是否打印,True和1等价,比如verbose=10,就会打印n_estimators // 10次feature_weights:特征加权训练,给一个sof_xgb eval_metric

随便推点

Arduino开发板使用矩阵键盘的方法_arduino矩阵键盘输入-程序员宅基地

文章浏览阅读1.4w次,点赞5次,收藏34次。键盘允许用户在程序运行时输入数据。本篇文章主要介绍如何将一个带有十二个按键的键盘连接到Arduino开发板以及如何使用库Keypad.h。通常需要键盘来为Arduino开发板提供输入信号,而薄膜键盘是许多应用的经济型解决方案。它们非常薄,可以轻松安装在任何需要的地方。在本篇文章中,我们将演示如何使用12键数字键盘,类似于电话上的键盘。 12键键盘有三列四行。按下按钮会将其中一个行输出短接到..._arduino矩阵键盘输入

Ubuntu Anaconda tensorflow install_ubuntu anaconda3 tensorflow-cpu == 2.3.0-程序员宅基地

文章浏览阅读2.1k次。本文为Anaconda3-5.2.0 Python3.6.5的tensorflow1.12.0安装教程之前的python -m pip --upgradeThenpip install tensorflow-cpu==2.3.0 -i https://pypi.douban.com/simple/自动升级为新版本,没有意义解决方案sudo apt install python3-pip......_ubuntu anaconda3 tensorflow-cpu == 2.3.0

video自动播放_<video data-v-eef4c0fe="" controls="controls" auto-程序员宅基地

文章浏览阅读6.9k次。Documentcontrols="controls" 是控制按钮autoplay="autoplay" 是自动播放-->_

STM32兴趣篇四:STM32F103C8T6工控板与LabVIEW的串口通讯实例_labview控制stm32的运行-程序员宅基地

文章浏览阅读8.4k次,点赞15次,收藏141次。串口通信(Serial Communications)是指外设与计算机间,通过数据线按位进行传输数据的一种通讯方式。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。虽然串口通信传输速度不高,但是程序简单,能实现远距离通信且远距离通信成本较低,通信长度可达1200米。常用的仪器仪表大多都支持串口通信协议。LabVIEW的自带函数库中有现成的串口通信模块,方便快速搭建堪比串口调试助手的软件。今天分享一个STM32F103C8T6工控板与LabVIEW的串口通_labview控制stm32的运行

离职了,写点什么吧~_大队长离职该写点什么好-程序员宅基地

文章浏览阅读2.1w次,点赞43次,收藏15次。离职了,写点什么吧~_大队长离职该写点什么好

PCM音频文件_pcm测试文件下载-程序员宅基地

文章浏览阅读9.6k次。关于音频格式有好多种,如常见的mp3压缩格式的音频;PCM音频文件,就是我们从计算机中采集出来未压缩的声音数据;我们可以直接通过写文件的方式不断的将数据写到一个文件中,后缀为.pcm,这个文件就可以通过pcm播放器播放了。pcm没有文件头,全部就是采集的未压缩的音频数据。关于音频有自己的格式,在windows中用WAVEFORMATEX结构体表示。 PCM播放器:Music_pcm测试文件下载

推荐文章

热门文章

相关标签