2016-11-25 8 views
0

난 그냥 실시간 이미지 처리에 FPS를 변경하고자하지만, FPS는 내가 그 문제를 해결할 수있는 방법 (raspbian) OpenCV의 세트 (CV_CAP_PROP_FPS, 60은)

을 변경되지 않습니다 작동하지

일부 사람들은 libv4l-dev 및 v412-ctl을 호출해야한다고 말했습니다.

그래서 나는 intall을 사용하여 apt-get intall을 사용하고 다음으로이 문제를 어떻게 해결할 수 있습니까?

이 내 소스

단지 cout을 30
#include <iostream> 
#include <raspicam/raspicam_cv.h> 
#include <opencv2/imgproc.hpp> 

using namespace std; 

int main (void) { 

    raspicam::RaspiCam_Cv Camera; 
    cv::Mat image; 

    Camera.set(CV_CAP_PROP_FORMAT, CV_8UC3); 
    Camera.set(CV_CAP_PROP_FPS,60); 
    Camera.set(CV_CAP_PROP_FRAME_WIDTH, 320); 
    Camera.set(CV_CAP_PROP_FRAME_HEIGHT, 240); 

    if (!Camera.open()) {cerr<<"Error opening the camera"<<endl;return -1;} 

    while(1){ 
     Camera.grab(); 
     Camera.retrieve (image); 

     cv::cvtColor(image, image, cv::COLOR_BGR2RGB); 
     int fps = (int)(Camera.get(CV_CAP_PROP_FPS)); 
     cout << "fps" << fps << endl; 
     cv::imshow("test", image); 
     if (cv::waitKey(1) > 0) break; 

    } 

    Camera.release(); 
} 

입니다! 6 라즈베리 카메라 지원 640x480p 60/90fps!

답변

0

죄송합니다. 제 영어가 완벽하지 않으면 제 첫 번째 언어가 프랑스어입니다.

raspicam_cv.cpp CV_CAP_PROP_FPS은 function set()에서 중요한 매개 변수가 아니므로 FPS를 변경할 수 없습니다. 또한 CV_CAP_PROP_MODE와 동일합니다. CV_CAP_PROP_FPS 매개 변수

얻을 기능은 항상 더 많은 FPS가 당신이 raspicam를 설치하고 라인 (66)에 src/private/private_impl.cpp

로 이동 위치를 파일로 이동하려면 30

을 전송, 당신은 void Private_Impl::setDefaultStateParams() 변경을 발견 할 것이다 State.framerate 그 후 (60)의 값은 530 행으로 이동 한 다음 줄 주석 :

if (shutter > 330000) 
    shutter = 330000; 

마지막으로 다시 작성하고 다시 설치하게합니다. 그것은 나에게 효과가 있었다.

+0

첫 줄을 모르겠다. 게시물을 편집하고 무슨 뜻인지 설명해 주시겠습니까? 고맙습니다! –

+0

이 더 낫습니까? –

+0

더 좋지만 여전히 명확하지 않습니다. 제가 시도해 봅시다 : [raspicam_cv.cpp here] (https://github.com/cedricve/raspicam/blob/master/src/raspicam_cv.cpp)에 대해 이야기하고 있습니까? 나는'bool RaspiCam_Cv :: set (int propId, double value)'를 보았고'propId'는'CV_CAP_PROP_FPS'가 될 수 있습니다. 이게 효과가 없다고 말하는거야? –