帧数和每秒帧数是一样的吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了帧数和每秒帧数是一样的吗?相关的知识,希望对你有一定的参考价值。

参考技术A

是。

说到帧数,有必要提一下电影的原理。电影实际上是高速播放具有连续性的图片。由于人眼视网膜具有残像效应,因此切换画面时,人脑内仍然会存在上一幅图片的视觉,这样,当高速切换画面时,人大脑内的影像就能连起来,在视觉上形成连续的动画效果。因此

“帧”的概念就是指“画面”,1幅画就叫做“1帧”,每秒帧数指的就是“每秒播放的画面数”。譬如电影放映的标准是每秒放映24帧,每秒遮挡24次,刷新率是每秒48次.这里的帧就是画面,也就是说电影每秒放映24幅画面,以达到动画的效果。

如何在opencv中计算每秒帧数?

【中文标题】如何在opencv中计算每秒帧数?【英文标题】:How to calculate Frame Per Second in opencv? 【发布时间】:2015-07-05 14:37:01 【问题描述】:

这是我的代码,它以高 fps 显示视频。我想要这里的原始fps,但不知道该怎么做。观看一些教程,他们正在使用 VideoCapture ,我尝试使用它,但这给了我链接器错误 undefined reference to 'cv::VideoCapture::VideoCapture(std::string const&)'.. 虽然我正在链接所有库但错误是相同的。我正在使用 Dev-C++ 5.11 (GCC 4.9.2) ,所以知道如何使用 (CV_CAP_PROP_FPS)here -

#include <windows.h>
#include <opencv/cv.hpp>
#include <opencv/highgui.h>
using namespace cv;
using namespace std;

int main( int argc, char** argv )

   double fps=0;
   cvNamedWindow( "Movie", CV_WINDOW_NORMAL );
   CvCapture* capture = cvCreateFileCapture( "G:\\movie\\Journey.2.The.Mysterious.Island.2012.avi" );
   IplImage* frame;

   //cv::VideoCapture cap("G:\\movie\\Journey.2.The.Mysterious.Island.2012.avi" ); [giving me error]
   //fps=cap.get(CV_CAP_PROP_FPS); [How to use this]

   while(1)
   
       frame = cvQueryFrame( capture );
       if( !frame ) break;
       cvShowImage( "Movie", frame );
       char c = cvWaitKey(27);
       if( c == 27 ) break; //esc
   
   cvReleaseCapture( &capture );
   cvDestroyWindow( "Movie" );

谢谢:)

【问题讨论】:

什么opencv版本? @Miki 版本 2.4.10 【参考方案1】:
double fps=cvGetCaptureProperty(capture, CV_CAP_PROP_FPS); 

【讨论】:

@uditr043 我很高兴。但是,您应该考虑使用新的 C++ 语法,首先包括 #include "opencv2\opencv.hpp" 并“基本上”删除函数和类前面的 cv... 好的,我会照着做的,谢谢 :)

以上是关于帧数和每秒帧数是一样的吗?的主要内容,如果未能解决你的问题,请参考以下文章

unity3d 4.3中spritesheet动画的每秒帧数是多少?

什么是帧数?什么是FPS?什么是PING?什么是延迟?什么是延时?什么是延迟时间?什么是时延?.

延时摄影最佳帧数 跟秒数是多少

abaqus的帧数和时间长度

videojs怎么获取帧数和时间

画面每秒传输帧数