2016-11-25 3 views
0

に動作していない私は、リアルタイムの画像処理が、FPSでFPSを変更したい、私はその問題

いくつかに対処するにはどうすればよい

に変更されていませんあなたはlibv4l-devとv412-ctlをインストールしなければならないと言いました

これはapt-get intallを使ってintallして、次にこの問題を解決する方法は?

これは30でちょうどcoutで私のソース

#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

私の英語が完璧でない場合、私の最初の言語はフランス語です。

FPSを変更することはできません。raspicam_cv.cpp CV_CAP_PROP_FPSは、function set()では貴重なパラメータではないため、何もしません。また、CV_CAP_PROP_MODEと同じです。

そしてCV_CAP_PROP_FPSパラメータを持つ関数は、常にあなたがraspicamをインストールし、ライン66でsrc/private/private_impl.cpp

に行くファイルに移動し、より多くのFPSを持っているために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 :: set(int propId、double value)'を参照し、 'propId'は' CV_CAP_PROP_FPS'にすることができます。これはうまくいかないと言っていますか? –