2010-12-11 15 views
2

私はUbuntuのウェブカメラでBeagleboard xMでOpenCVを実行しています。ウェブカメラは正常に動作しますが、YUYVモードでのみ動作します。つまり、luvcviewはjpeg圧縮を使用していますが、ハーフカット、不適切な色など多くのフレームがありますが、luvcview -f YuYVは完全に機能します。JPEG圧縮の代わりにYUYVを使用するARM(Beagleboard)のOpenCV?

OpenCVのjpeg圧縮を無効にすることはできますか?

私はopenCVをmakeオプションでビルドしてインストールしようとしました:--without-jpeg、makeを完了するのに4時間かかり、通常は90%以上で完了します。

OpenCVのこのno-jpegバージョンをARM用にクロスコンパイルする方法、またはあらかじめビルドされたインストールパッケージを使用してjpegを無効にする方法はありますか?

エラーメイクインストール中:

[95%]ビルCXXオブジェクトテスト/ CV/CMakeFiles/opencv_test.dir/SRC/amoments.o リンクCXX実行../../bin/opencv_test CMakeFiles /opencv_test.dir/src/highguitest.o:関数 `CV_HighGuiTestで::ラン(int型) ':

...など

../../lib/libopencv_features2d.so.2.2.0 :未定義の参照cv::SIFT;:SIFT(double, bool bool, int, int, int, int)) ...など

collect2は:ldは1つの終了ステータスが返さ メイク[2]:* [ビン/ opencv_test]エラー1つの メイク[1]:* [テスト/ CV/CMakeFiles/opencv_test.dir /すべて]エラー2 メイク: * [すべて]エラー2 (back to bash)

+0

さまざまなことを試してみましたが、再コンパイル時の多くの試みは、ファイルにパイプされたSTDERR出力のファイルサイズの変更に基づいて不良フレームを破棄するアルゴリズムを作成しました。恐ろしいハックだが、うまくいった。 –

答えて

2

私は同じ問題を抱えています。これは助けるかもしれない:http://tech.groups.yahoo.com/group/OpenCV/message/77273

あなたはmodules/features2d/src/sift.cppでSIFTを有効にすることができます。 #ifdef アームをファイル内で検索できます。 sift.cppの51-53行をコメントしています。//#define ARM_NO_SIFT

また、ビーグルを使用している場合は、-DWITH_JPEG = OFFオプションを指定してcmakeを実行する必要があります。

+0

ありがとうAron!私はBeagleBoardでもうテストすることはできませんが、これはトリックを行うように見えます。それはあなたのために働いたのですか? –

関連する問題