📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨
📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】
📢:文章若有幸对你有帮助,可点赞 👍 收藏 ⭐不迷路🙉
📢:内容若有错误,敬请留言 📝指正!原创文,转载请注明出处
1.每张图像的运行时间和帧率的计算公式
总时间/总帧数=每一帧图像播放时停留的时间。
总帧数/总时间=帧率
2.getTickFrequency()
getTickFrequency():返回CPU一秒中所走的时钟周期数。即一秒钟的重复次数。
getTickFrequency() / 1000:即一毫秒的重复次数
3.getPerfProfile
getPerfProfile(layersTimings) :每一层的执行时间,单位默认为毫秒。
getPerfProfile(layersTimings) / freq:即总时间/总帧数=每一帧图像播放时停留的时间。
4. 代码举例
vector<double> layersTimings;
double freq = getTickFrequency() / 1000;//getTickFrequency() 每一层时间里面所重复显示图像的帧数,默认时间单位为秒,除以1000即转化为毫秒单位。
double time = net.getPerfProfile(layersTimings) / freq;
ostringstream ss;
ss << "FPS" << 1000 / time << ";time:" << time << "ms";
//1000 / time=1000* freq/net.getPerfProfile(layersTimings) =getTickFrequency()/net.getPerfProfile(layersTimings)
//即总帧数/总时间=帧率