Linux等のWindows以外の環境でOpenCvSharpのMachineLearning(機械学習)やBlob(ラベリング)を利用するためには、ネイティブで書かれたラッパー「OpenCvSharpExtern」を自力でコンパイルしなければなりません。この度、CMakeによって多少楽にできるようにしました。
(まだリリースはしていません。リリースはOpenCV 2.0が出た直後を予定しています。)
CMakeとは
cross platformなmakeの略だそうで、様々なプラットフォームにおけるビルドファイルを作ってくれるツールです。UnixならMakefile、WindowsならVisual Studioのプロジェクト、といったように、それぞれのプラットフォームに合ったビルドファイルを出力できます。
実際のmakeまでしてくれるツールではありません。そこはCMakeが終わった後、別途自分でやります。
CMakeのインストール
以下、OpenCvSharpExternのバイナリを作る手順をご説明します。Windows版のバイナリは標準で用意してあるので別にやる必要は無いはずなので、以下ではUbuntu 9.04という前提で話を進めます。
インストールはaptで一発です。
sudo apt-get update sudo apt-get install cmake
Makefileの生成
OpenCvSharpのソースをリポジトリから取得して、そのディレクトリに入ります。
svn checkout http://opencvsharp.googlecode.com/svn/trunk/v2 OpenCvSharp cd OpenCvSharp
cmakeを実行します。
cmake .
すると、MakefileとかCMakeFilesといったファイル・ディレクトリが色々新たに生成されるはずです。
もし失敗した場合は、OpenCVのインクルードファイルやライブラリファイルのパスの設定がこちらの想定と違う可能性があります。インクルードパスは"/usr/include"若しくは"/usr/local/include"、ライブラリパスは"/usr/lib"若しくは"/usr/local/lib"を探索する設定になっています。違う場合はcmakeの際に多分設定し直せると思います。
make
cmakeがうまくいけば、後はmakeするだけ。
make
成功すると、OpenCvSharpExtern/libOpenCvSharpExtern.so が生成されているはずです。このファイルをOpenCvSharp.dllと同じ場所に置くことで、機械学習やラベリングが使えるようになります。
- 作者: Zheng Cirino
- 出版社/メーカー: CIV
- 発売日: 2012/01/17
- メディア: ペーパーバック
- この商品を含むブログを見る