ネットや本を漁ってみると, 1.x の記事, 2.x の記事がごっちゃになっていて
混乱したので, 簡単にセットアップできる手順をまとめてみました.
インストール手順
以下の手順で OpenCV 2.4 と, それを python から利用するためのライブラリ をインストールします.
sudo port -v install opencv +python27
# OS X 標準の python を確認
$ which python
/usr/bin/python
$ sudo port -v install opencv +python27
・・・結果は略. 自分の環境では10分くらいでインストールできた・・・
# OS X 標準の python が変更されていないことの確認
$ which python
/usr/bin/python
$ python --version
Python 2.7.2
# インストールされた python を確認. MacPorts のディレクトリ( /opt/local/bin )の下
$ which python2.7
/opt/local/bin/python2.7
# どうやら python2.7 という名前でコマンドが通っているらしい.
$ python2.7 --version
Python 2.7.5
# OpenCV のライブラリのパスを確認
# port でインストールしたところの python2.7 の影響下にインストールされてる模様
$ ls -l /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/cv2.so
-rwxr-xr-x 1 root wheel 1579428 9 16 23:36 /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/cv2.so
動作確認
ライブラリが python2.7 から参照できることをもって動作確認とします.
$ python2.7
Python 2.7.5 (default, Aug 1 2013, 01:01:17)
[GCC 4.2.1 Compatible Apple Clang 4.1 ((tags/Apple/clang-421.11.66))] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>>
# cv2ライブラリのインポートでエラーが出ないのでインストールはうまくいったと判断
# 開発元公式で配布されているサンプルプログラムを実行してみる
# http://sourceforge.net/projects/opencvlibrary/files/
$ python2.7 opencv-2.4.6/samples/python2/find_obj.py
Feature-based image matching sample.
USAGE
find_obj.py [--feature=<sift|surf|orb>[-flann]] [ <image1> <image2> ]
--feature - Feature to use. Can be sift, surf of orb. Append '-flann' to feature name
to use Flann-based matcher instead bruteforce.
Press left mouse button on a feature point to see its mathcing point.
using sift
img1 - 604 features, img2 - 969 features
matching...
75 / 80 inliers/matched
まとめ
以上で OpenCV のプログラムを動かすことができました.
あの面倒くさかった Cmake は port install の中でやってくれているようです.
参考リンク
利用したインストールコマンドは 開発元公式 に記載のある "1.Build via MacPorts" によっています.