OPENCV设置fps

时间:2015-10-07 07:22:14

标签: c++ opencv frame-rate

我正在研究Hough圈并尝试解决fps问题。

我希望限制我的fps,以便我可以测试哪种fps最适合我的设备。

    time_t start, end;
    int counter = 0;

    time(&start);   
    //Create a variable to store image
    Mat src;
    //Create video capture
    VideoCapture capture;
    //open video from either a file or webcam

    //capture.open("C:\\Users\\Student-ID\\Downloads\\SPACe Mission IIIA\\GOPR0503.mp4");
    capture.open(0);



    //set frame height
    capture.set(CV_CAP_PROP_FRAME_HEIGHT, 120);
    capture.set(CV_CAP_PROP_FRAME_WIDTH, 120);

    //Set the capture FPS
    capture.set(CV_CAP_PROP_FPS,25);

    //store whatever is captured to src
    capture.read(src);

    //Debugging purpose
    cout << "Vidoe opened" << endl;

    if (!src.data) {
        std::cout << "ERROR:\topening image" << std::endl;
        return -1;
    }

    //Create window to display videos
    cv::namedWindow("image1", CV_WINDOW_AUTOSIZE);

    vector<Vec3f> circles;

        time(&end);
        ++counter;
        cout << "fps is: " << counter / difftime(end, start) << endl << endl;
    }
    return 0;
}

所以我在我的代码中加入了这一行

capture.set(CV_CAP_PROP_FPS,1);

然而,这段代码似乎是假的,无论我如何更改数字,它都不会生效。 我在这里遇到了一些基本的错误吗?

这里的代码

capture.set(CV_CAP_PROP_FRAME_HEIGHT, 120);
capture.set(CV_CAP_PROP_FRAME_WIDTH, 120);

有时也对画面尺寸没有影响,我想知道原因。

谢谢

0 个答案:

没有答案