我有一个 Raspberry Pi 并在其上安装了 OpenCV 和 Guvcview。当我打开 Guvcview 时,我得到 ~ 17-21 fps 但是当我使用 Opencv 在 C++ 中运行一个简单的程序(仅从网络摄像头和显示帧捕获)时,我只得到 6 fps。
怎么了?我需要配置 Opencv 才能使用 Guvcview 的配置吗?为什么 guvcview 获得 20 fps?我能做些什么?
谢谢。
PD 我在我的电脑上做了同样的事情,在这两种情况下我都得到了 29 fps。
// * ** * ** * ** * ** * ** * ** * ** * ** * ** * **** *这是代码 C++:
#include <iostream>
#include "opencv2/opencv.hpp"
using namespace std;
using namespace cv;
time_t start, end; //variabile di tipo time_t , contiene tempo in sec.
// inizializzo contatore nella dichiarazione
int counter=0;
int main()
{ time(&start);
VideoCapture cap(1);
cap.set(CV_CAP_PROP_FRAME_WIDTH, 640);
cap.set(CV_CAP_PROP_FRAME_HEIGHT, 480);
if (!cap.isOpened())
{ cout << "could not capture";
return 0; }
Mat frame;
namedWindow("camera", 1);
char key = 'a';
while(key != 27)
{ cap.read( frame);
imshow("camera", frame);
//##################
//time at the end of 1 show, Stop the clock and show FPS
time(&end);
++counter;
cout <<"fps: "<< counter/ difftime(end,start) <<endl <<endl;
//##################
key = waitKey(3); }
destroyAllWindows();
return 0;
}