12. Android版を使う上でまず考えること
どちらのAPIを使うか
① Java APIを使う
② C++ APIを使う (NDK)
③ ハイブリッド(①+②)
カメラ画像をどのように取得するか
① Android のカメラ機能
② OpenCV のカメラ機能
⇒ それぞれ,以降のページで説明します
12
13. Java API for Android
特徴
Java上で実装・ビルドする。
• NDKは不要
API呼び出し時のオーバーヘッドが大きい
• API内部の処理はNDKでビルド済のため変わらないハズ
デバッグは楽 SurfaceView
PC版とAPI仕様が
異なる 行わせたい画像処理 in Java
オーバーヘッド大
Java API (OpenCV)
OpenCV for Android
Native Library (OpenCV)
13
14. C++ API for Android
特徴
C++によりネイティブコードでOpenCVを呼び出す
Java側(UI側)からの呼び出しは,
JNIラッパーを作成しなければならない
NDKでのビルドが必要
デバッグが面倒 SurfaceView
Java側からの呼び出しを UI側の処理 in Java
減らすことで,オーバー JNIラッパー(自作する)
ヘッドを減らせる
行わせたい画像処理 in C++
PC版と同じAPIを使える
OpenCV for Android Native Library (OpenCV)
14