2014-03-12 100 views
0

我使用Sourceforge存儲庫在我的Raspberry Pi上編譯了OpenCV 2.4.6。我用下面的命令來安裝它:OpenCV 2.4.6程序運行時崩潰

wget http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.6/opencv-2.4.6.tar.gz 
tar zxvf opencv-2.4.6.tar.gz 
cd opencv-2.4.6 
cmake -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_PERF_TESTS=OFF -DBUILD_opencv_gpu=OFF -DBUILD_opencv_ocl=OFF  
make install 

當我編譯時,我沒有得到任何錯誤。我使用人臉識別API識別通過Raspberry Pi相機模塊捕捉的視頻中的人臉。我使用名爲RaspiCam的C++ API從相機捕獲幀,並且它與OpenCV兼容,允許您將捕獲的幀保存爲OpenCV Mat對象。 API的文檔是http://www.uco.es/investiga/grupos/ava/node/40。構建RaspiCam庫的源代碼是http://sourceforge.net/projects/raspicam/files/?source=navba

大多數時候我運行我的臉部識別應用程序時,它運行良好。但是,無論何時,當我運行我的應用程序時,它會在無法預測的時間無誤後無響應。任務管理器顯示程序仍在運行,但CPU使用率非常低,例如2%,而不是通常使用的70-80%。我放置了OpenCV嘗試塊以進行錯誤處理,以捕獲可能到達的任何OpenCV錯誤,但沒有一個被調用。我注意到,當我不使用OpenCV highgui窗口來顯示幀時,我的程序崩潰頻率較低,特別是當我通過ssh運行它時。有沒有人有類似的問題?

+0

我決定了我的程序崩潰的raspicam的搶()函數提到了這個固件版本。 – infiniteRecursion

回答

0

我遇到了'raspicam-0.1.1'的相同問題。對我來說,降級樹莓派固件解決了這個問題。

sudo rpi-update 8660fe5152f6353dec61422808835dbcb49fc8b2 

我發現,當我瀏覽RPi-Cam-Web-Interface

+0

有趣。我只嘗試升級固件。我結束了使用稱爲Picamera的Python樹莓派相機庫,它沒有給出任何問題。偶爾會發現一個壞幀,當OpenCV處理完幀後,它會觸發一個異常,但是我能夠捕獲異常並抓取下一幀,從而防止程序崩潰。 – infiniteRecursion