2

私は現在アプリケーションを開発しており、jniアプローチによるネイティブOpenCVライブラリを使用する予定です。このチュートリアルを私の環境として参照してください。

http://docs.opencv.org/doc/tutorials/introduction/android_binary_package/O4A_SDK.html

SurfFeatureDetectorなどのOpenCVの非フリーモジュールを使用するには、自分でopencvをビルドし、OpenCVWebサイトのチュートリアルを使用する必要があります。

http://code.opencv.org/projects/opencv/wiki/Building_OpenCV4Android_from_trunk

チュートリアル(Windowsネイティブ部分)の手順に従い、スクリプトcmake_android.cmdを実行してコンパイルすると、次のようなエラーメッセージが表示されます。

In file included from E:\git\opencv\3rdparty\libtiff\tif_stream.cxx:30:
E:\git\opencv\3rdparty\libtiff\/tiffiop.h:54:21: error: search.h: No such file or directory
make[2]: *** [3rdparty/libtiff/CMakeFiles/libtiff.dir/tif_stream.cxx.o] Error 1
make[1]: *** [3rdparty/libtiff/CMakeFiles/libtiff.dir/all] Error 2
make: *** [all] Error 2

この問題を解決する方法、またはAndroidアプリケーションのnonfreeモジュールでネイティブOpenCVライブラリを使用できるようにする方法はありますか?

4

3 に答える 3

1

nonfreeモジュールでSIFTまたはSURFを使用したいだけの場合は、opencvパッケージ全体を再構築する必要はありません。非フリーモジュールはスタンドアロンライブラリとしてのみビルドし、プロジェクトで使用できます。このチュートリアルでは、その方法について詳しく説明します。

于 2013-05-23T19:20:42.353 に答える
1

私もこの問題を抱えています。私の修正は、最新バージョン2.4.5をインストールしてから、チュートリアルに従うことでした。1.クリーンな2.4.5バージョンをダウンロードして解凍します。2.チュートリアルに従います。 http://code.opencv.org/projects/opencv/wiki/Trunk_OpenCV_for_Android

これにより、言及したエラーが修正されます。その後、別のエラーが発生しましたが、今は何であるかを思い出せませんが、エラーがどこにあるかを確認し、バージョン2.4.2のスクリプトの行に置き換えて、それだけでした(両者のわずかな違いです) )。

于 2013-05-28T15:50:37.647 に答える
0

コンパイラOpencv4android、libtiffはデフォルトで開かれています。サードパーティであるため、SDKをコンパイルするために閉じることができます。search.hはNDKdirに存在しませんが、システムパスusr / include /に存在するため、LinuxまたはMac用のソースをコンパイルすれば問題なく動作します。

解決策:1、vi CMakeList.txt 2、「TIFF」を検索、/ TIFF

編集

OCV_OPTION(WITH_TIFF"TIFFサポートを含める"ON IF(NOT IOS))

OCV_OPTION(WITH_TIFF"TIFFサポートを含める"OFF IF(NOT IOS))

終わり!

于 2016-04-01T08:01:17.180 に答える