<更新>
時代は変わります-そしてOpenCVも変わります。現在、純粋なJavaラッパー(Androidではない)が急速に成長しており、誰でもデスクトップJavaアプリでOpenCV関数を直接使用できるようになっています/
</ update>
JavaのいくつかのチュートリアルはOpenCVサンプルディレクトリにありますsamples/android
。
また、ここでいくつかの詳細情報を見つけることができます。
さて、あなたはJavaが欲しいと言うでしょうが、Androidは欲しいとは思わないでしょう:)。しかし、これには説明が必要です。
さまざまな理由から、主な理由は効率であり、2番目の理由は組み込みプラットフォームへの移植性です。コンピュータービジョンはほぼ完全にC /C++で実行されます。これは事実上の標準です。誰もがそれを使用しますが、それには正当な理由と良い結果があります。
PythonやJavaなど、C ++コードベースにはさまざまなアダプターがありますが、それらはいくつかの特定のギャップを埋めるために存在します。Pythonはラピッドプロトタイピングに使用され、JavaはAndroidメイン言語とのインターフェースに使用されます。しかし、すべてのシナリオで、「実際の」アルゴリズム開発はC /C++で行われます。これが、他の言語のチュートリアル/本/例を誰も気にしない理由です。
結論:画像処理を学びたい場合は、C++またはPythonを学びましょう。アプリを作成する場合は、docs/androidチュートリアルからOpenCVJavaインターフェースを学習してください。ただし、柔軟性やパフォーマンスの制御は期待しないでください。
更新されたメモ
ここで指定するものがさらに2つあります。
まず、Androidが普及し、Pythonの人気が高まるにつれ、2つの言語(およびその他の言語)で利用できるコンテンツが劇的に増加しています。しかし、今後数年間、コア開発グループ(および最高のドキュメント)はC++領域に配置されます。
最後に、大事なことを言い忘れましたが、どんな仕事やプログラミングの分野でも、1つの言語に固執すると、死んでしまうことを覚えておく必要があります。原則は重要であり、さまざまな言語でそれらを実装できる必要があり、さまざまなソースから読んで理解できる必要があります。擬似コードをJavaに変換できないと言っているプログラマーはどうでしょうか。他の言語とまったく同じです。
すばらしいブログ投稿を読むことができます。ある言語でのプログラミングを忘れるべき理由を理解するために、プログラマーとは呼ばないでください。