将视频文件的总帧数保存到.txt文件中

时间:2016-12-14 19:44:22

标签: c++ opencv

我试图将视频文件的帧数保存到.txt文件中。例如,将帧编号从帧(0)保存到最后一帧。我可以显示视频文件的总帧数。

#include "opencv2/opencv.hpp"
#include <fstream>


using namespace cv; 
using namespace std;

int main(int argc, char** argv)
{

// Open video file
VideoCapture video("2.avi");

double fps = video.get(CV_CAP_PROP_FPS);
double nframes = video.get(CAP_PROP_FRAME_COUNT); 

cout << "Frames per second using video.get(CV_CAP_PROP_FPS) : " << fps << endl;
cout << "Frames count  : " << nframes << endl;
ofstream myfile;
myfile.open ("example.txt");

for (int i=0;i<nframes;i++)

{


myfile<< "Frame Number=  "<<";"<< i<< endl;

}    
myfile.close(); 
video.release(); 
return 0; 

} 

1 个答案:

答案 0 :(得分:2)

帧数

double nframes = video.get(CAP_PROP_FRAME_COUNT); 

fps是每秒帧数,告诉你播放器显示视频的速度,如果你知道第一帧的时间,你可以计算时间。

要将数据写入文件,您应该搜索用c ++写入文件,并在Simple file write function in C++等答案中找到帮助