網路攝影機無法開啟的問題,現在一直沒有解決。開學了,上課了,時間
有點緊張。先說一下,一些嘗試把。
問題是:演算法運行後但是沒有開啟 網路攝影機裝置,演算法列印出“capture device failed to open! ”
經過幾天的摸索,猜測可能是這麼回事了:
無法開啟網路攝影機裝置,是由於交叉編譯opencv時沒有把ffmpeg交叉編譯上。
有兩種解決辦法:(1)把ffmpeg交叉編譯上
(2)在ok6410上利用Video for Linux介面,對網路攝影機資料進行採集
這裡,我採用第一種解決方案:
(1)下載ffmpeg源碼:ffmpeg-0.7.11.tar.bz2
(2)配置:./configure --cpu=libavcodec/arm/ --cc=arm-linux-gcc --enable-shared --enable-cross-compile --arch=libavcodec/arm/ --target-os=linux --disable-ffserver --enable-libxvid --enable-libx264 --enable-gpl --enable-pthreads --disable-stripping
(3)make,make install 安裝到交叉編譯工具鏈的lib下
嘗試重新編譯opencv2.2,#cmake-gui & 後發現沒有WITH_ffmpeg選項,自己在CMakeCache.txt中自己加上
with_ffmpeg,開始按照上次的方法編譯,install到工具鏈下,在編譯tld演算法,沒有報錯。
可是,將run_tld放到開發板測試,錯誤還是一樣——capture device failed to open!。
都快三周了,鬱悶阿,求大神。。。。
ps:同時,還瞭解到一個情況,由於ok6410上沒有gtk的庫,因此對opencv中的highgui時不支援的,
所以,無法顯示映像的。解決這個問題,或者移植gtk(據傳,比較困難),或者自己利用QT映像庫,
實現顯示的功能。這個估計會面會涉及到,mark下。