Mac OS X 10.6 Snow Leopard でMacPortsを使ったOpenCVのセットアップ方法(MacPortsで入れたPythonも使えるようにする)

####MacPortsを用いたOpenCV 2.2のインストールに関する記事をまとめてあります.コチラへどうぞ####

##参考サイト
Setup von OpenCV und den Python-Bindings unter Mac OS X(ドイツ語注意)

##必要なもの
・最新版のXcode
・MacPorts(執筆時点最新版:1.9.1)
・何度失敗しても折れない心


##1.MacPortsのインストール
これに関しては過去の記事を参照.
きちんとセットアップ後に

sudo port -d selfupdate
sudo port -d sync
を実行しておくこと

##2.必要なライブラリのインストール
これは全部MacPortsにお任せ
・Subversionのインストール
sudo port install subversion
・Cmake-Toolsのインストール
sudo port install cmake
・pkg-configのインストール
sudo port install pkgconfig
・libjpeg, libtiff, libjasper, libpng, zlibのインストール
sudo port install jpeg tiff jasper libpng zlib
・ffmpeg, gstreamer, libdc1394のインストール
sudo port install ffmpeg gstreamer libdc1394

##3.OpenCVのダウンロード
適当なディレクトリhogeで
svn co https://code.ros.org/svn/opencv/trunk opencv
とするとダウンロード可能
svnの段階で「サーバー証明書でエラー出てるけどほんまにダウンロードしまっか?セキュリティとか大丈夫でっか?」的なことを聞かれるので「p」を押してでダウンロード
するとディレクトリにopencvというフォルダが出来,その中には「opencv」と「opencv_extra」という二種類のフォルダが出来る.

##4.PythonのMacPortsでのインストール
MacPortsでPython2.6とデフォルトのPythonの選択ツールであるpython_selectのインストール
sudo port install python26
sudo port install python_select
インストールが完了したら,
sudo python_select python26
として,MacPortsでインストールしたPython26を設定する.
設定後に
which python
として,
/opt/local/bin/python
が帰ってくればOK

##5.OpenCVのセットアップ
ダウンロードしたopencv内のopencvフォルダにbuildディレクトリを構築する
cd opencv
mkdir opencv/build
cd opencv/build
そこでCMakeを実行
sudo cmake -G "Unix Makefiles" ..
実行終了したら,ccmakeで設定ファイルの編集を行う
sudo ccmake .
設定画面に写ったら(↓みたいな感じ),まず「t」キーを押して,アドバンスドモードに移行する.

そして以下の項目を設定する(該当項目でReturn(Enter)キーを押して,:より右側の項目を入力すればOK)
BUILD_NEW_PYTHON_SUPPORT:ON
CMAKE_BUILD_TYPE:Release
CMAKE_INSTALL_PREFIX:/opt/local
PYTHON_EXECUTABLE:/opt/local/bin/python2.6
PYTHON_INCLUDE_DIR:/opt/local/Library/Frameworks/Python.framework/Headers
PYTHON_LIBRARY:/opt/local/Library/Frameworks/Python.framework/Python
入力が完了したら一度「c」キーを押してConfigureし,終了したら「g」キーを押して設定ファイルを生成する..
ccmakeの設定が終了したら,
sudo make -j8
でmakeし,終了したら
sudo make install
でインストール

##6.終了後の設定
#設定ファイルにOpenCVの設定を追加
まず,使用しているシェルの設定ファイルに以下の項目を書き加える.
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PYTHONPATH=/opt/local/lib/python2.6/site-packages:$PYTHONPATH
上記の設定を加えることによって,MacPortsのPythonでもOpenCVのサンプルファイルが実行可能.

#Cのサンプルファイルのコンパイル
Cのサンプルファイルはopencv/samples/c以下に入っているので
cd opencv/samples/c
で移動し
sh build_all.sh
でコンパイル可能.
./lkdemo
とかすることによってサンプルを実行可能.

#Pythonのサンプルファイルの実行
Pythonのサンプルファイルはopencv/sample/python以下に入っているので
cd opencv/samples/python

で移動し
python lkdemo.py
とかすることによってサンプルを実行可能.




以上でとりあえずMac OS X 10.6 Snow Leopard でMacPortsを使ったOpenCVの環境構築を完了.
めでたしめでたし.