如何获得每秒fpsocapture对象的fps /帧数

时间:2014-02-18 12:29:42

标签: java opencv timer javacv

我正在使用视频捕捉对象来捕获和处理opencv / javacv中的视频帧。 我不知道如何获得帧速率。我想要一个在实时视频捕获期间在后台运行的计时器。它应该在被检测到的脸上暂停并稍后继续。 由于haarcascade文件的处理,每个rame都需要花费很多时间来处理。如何调整帧率。

   System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
   VideoCapture camera = new VideoCapture(0);

3 个答案:

答案 0 :(得分:3)

您可以从VideoCapture中提取各种参数,如帧速率,帧高,帧宽等。

cv::VideoCapture input_video;
 if(input_video.open(my_device))
 {
    std::cout<<"Video file open "<<std::endl;
 }
 else
 {
    std::cout<<"Not able to Video file open "<<std::endl;

 }
int fps = input_video.get(CV_CAP_PROP_FPS);
int frameCount = input_video.get(CV_CAP_PROP_FRAME_COUNT);
double fheight = input_video.get(CV_CAP_PROP_FRAME_HEIGHT);
double fwidth = input_video.get(CV_CAP_PROP_FRAME_WIDTH);

答案 1 :(得分:1)

jsonData

答案 2 :(得分:0)

answer对我有帮助。有一个常量列表及其值。只需为VideoCapture的get()方法赋予价值。防爆。 videoCapture.get(5),将返回视频的FPS