LionにOpenCV 2.4.0をインストールした

MacPortsOpenCV 2.4.0に対応したので、2.3.1aからバージョンアップした。

Macの環境は下記の通り。

バージョンアップのコマンドはいつも通りだ。

$ sudo port upgrade opencv

ところが、アップデート中にilmbaseのインストールに失敗してしまう。

--->  Computing dependencies for ilmbase
--->  Fetching archive for ilmbase
--->  Attempting to fetch ilmbase-1.0.2_0.darwin_11.x86_64.tgz from http://packages.macports.org/ilmbase
--->  Fetching ilmbase
--->  Attempting to fetch ilmbase-1.0.2.tar.gz from http://distfiles.macports.org/ilmbase
--->  Verifying checksum(s) for ilmbase
--->  Extracting ilmbase
--->  Applying patches to ilmbase
--->  Configuring ilmbase
--->  Building ilmbase
Error: Target org.macports.build returned: shell command failed (see log for details)
Log for ilmbase is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_ilmbase/ilmbase/main.log
Error: Problem while installing ilmbase
To report a bug, see <http://guide.macports.org/#project.tickets>

調べたところ、下記の問題に近いようだ。

指示に従ってilmbaseを再インストール。

$ sudo port clean libtool ilmbase
$ sudo port -n upgrade --force libtool
$ sudo port install ilmbase

今度は正常にOpenCVのインストールが完了した。

--->  Computing dependencies for opencv
--->  Fetching archive for opencv
--->  Attempting to fetch opencv-2.4.0_0.darwin_11.x86_64.tgz from http://packages.macports.org/opencv
--->  Fetching opencv
--->  Attempting to fetch OpenCV-2.4.0.tar.bz2 from http://nchc.dl.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.0
--->  Verifying checksum(s) for opencv
--->  Extracting opencv
--->  Applying patches to opencv
--->  Configuring opencv
--->  Building opencv
--->  Staging opencv into destroot
--->  Installing opencv @2.4.0_0
--->  Cleaning opencv
--->  Computing dependencies for opencv
--->  Deactivating opencv @2.3.1a_3
--->  Cleaning opencv
--->  Activating opencv @2.4.0_0
--->  Cleaning opencv

インストールが終わったところで、定番の顔認識をテスト。正常に動作することを確認した。

$ cd /opt/local/share/opencv/samples/c/
$ ./build_all.sh 
$ ./facedetect --cascade=../../haarcascades/haarcascade_frontalface_default.xml 

また、物体トラッキングのlkdemoも正常に動作した。

$ cd /opt/local/share/opencv/samples/cpp/
$ ./build_all.sh 
$ ./lkdemo

なお、OpenCV 2.3から2.4への変更点については、下記の情報が詳しい。