LoginSignup
17
24

More than 5 years have passed since last update.

EclipseでJava用のOpenCVを使う(for windows)

Last updated at Posted at 2016-03-05

■EclipseでOpenCVを使えるようにする

忘備の意味を込めて、EclipseにJava用のOpenCVをインストールする手順をメモしておきます。
Eclipseのインストールはweb上の様々なところに書いてあるので割愛し、既にEclipseがインストールされている状況を想定しています。環境は以下です。

   OS : Windows8.1
   Eclipse : Version Mars.2 Release (4.5.2)
   OpenCV : Version2.4.12 (2.X系で最新Version 2016/03/05時点)

① OpenCVの.exeファイルをダウンロード

まずは、OpenCVをここからからダウンロードします。Windowsにインストールするので、OpenCV for Windowsをダウンロードしてください。もちろん、LinuxやMacにインストールする場合は、OpenCV for Linux/Macなど、環境に適したものを選択してください。
2016年3月5日現在で最新のOpenCV 3.1でも良いのですが、OpenCVは2.X系と3.X系でちょこちょこ変わった部分があるので、今回は2.X系で最新のVersionをインストールすることにします。この辺りは、自分の目的に合わせてインストールすれば良いかと。OpenCVが初めての方であれば、3.X系でもOKです。

② ダウンロードしたOpenCVの.exeを実行してOpenCVをインストール

①でダウンロードしたopencv-2.4.12.exeを実行します。①でダウンロードパスを変更していなければ、この実行ファイルは通常はPC → ダウンロード フォルダにダウンロードされているはずです。
実行すると以下のようにファイルを展開するパスを聞かれますが、デフォルト設定でOKです。Extractを押してインストールを開始します。

図1.png

インストールが完了すると先ほど指定したパスに"opencv"というフォルダができます。
特にこのままでも問題ありませんが、のちのちOpenCVの3.X系もインストールして2.X系と共存させたいと思っているので、フォルダにバージョン名をつけてリネームします( opencv → opencv_2.4.12 ) 。また、C:/Users/hoge/ の直下にこのフォルダを移動させます。

③ Eclipseで使えるように設定する

Eclipseで新規プロジェクトを作成して、ビルドの設定にOpenCVのJava用の.jarファイルを追加します。
まずは、Eclipseで File → New → Java Project で新規プロジェクトを作成します。Project Nameは今回は OpenCVTestとしました。
次に、作成したプロジェクトを右クリックして Build Path → Add External Archives を選択し、Java用の.jarファイルを選択します。.jarファイルはbuilldフォルダ → javaフォルダの下にある opencv-2412.jar です。
今回は以下↓のパスになっています。
C:/Users/hoge/opencv_2.4.12/build/java/opencv-2412.jar
.jarファイルが正しく指定できれば、JavaのProject直下の Referenced Libraries に opencv-2412.jar が入っています。

図2.png

④ Pathの設定

OpenCVのdllファイルを使用するため、WindowsのPathの設定をします。
Windowsでシステムの詳細設定 → 環境変数を選択。そこから、システム環境変数の Pathを選択して、編集をクリックします。

図6.png

すると、システム変数の編集ウィンドウが開くので、変数値の一番最後にセミコロン(;)で区切ってdllファイルがあるパスを追加します。今回は64bitなのでx64直下にある opencv_java2412.dll を使用するので、この.dllファイルがある以下↓のパスです。
C:/Users/hoge/opencv_2.4.12/build/java/x64

以上① ~ ④でインストールおよび設定は完了です。

⑤ 動作確認

問題なくOpenCVが使えるようになっているか、簡単なテストコードで確認してみます。OpenCVでPC内にある画像を読み込んで、グレー画像に変換するコードです。
作成したEclipseのProject (OpenCVTest)の srcを右クリック → New → Class でテスト用のクラスを作成します。
PackageとクラスのNameは適当に決めてください。今回はPackageは test、クラスのNameはImgConvに設定して、自動で生成されるImgConv.javaを以下のように編集しました。

ImgConv.java
package test;

import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.highgui.Highgui;
import org.opencv.imgproc.Imgproc;

public class ImgConv {  
    static{
        System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
    }

    public static void main(String[] args) {
        String path_in = "C:/Users/hoge/Lenna.bmp";
        String path_out = "C:/Users/hoge/Lenna_gray.bmp";

        Mat mat_src = new Mat();
        Mat mat_dst = new Mat();

        mat_src = Highgui.imread(path_in);                          // 入力画像の読み込み
        Imgproc.cvtColor(mat_src, mat_dst, Imgproc.COLOR_BGR2GRAY); // カラー画像をグレー画像に変換
        Highgui.imwrite(path_out, mat_dst);                         // 出力画像を保存
    }

}

以下↓のコード。これは、IBMのサイトを参考にすると分かりやすいです。
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);

実行すると、入力したカラー画像がグレー画像に変換され、問題なくEclipseでOpenCVを使えていることが確認できました。

図11.png

17
24
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17
24