OpenCV 2.1 を Snow Leopard にインストールしてみた
前に OpenCV 1.0 で遊んでみたけど、今はなんと 2.1 になっているらしい。というわけで、早速 2.1 を MacBook Air の Snow Leopard にインストールしてサンプルのビルドまでやってみた。
って言ってもやってるのはココのまんま。
Xcode のバージョン
とりあえず自分の Xcode のバージョンは 3.2.3。
gcc はこんな感じ。
MacBookAir:~ paraches$ gcc -v Using built-in specs. Target: i686-apple-darwin10 Configured with: /var/tmp/gcc/gcc-5664~38/src/configure --disable-checking --enable-werror --prefix=/usr --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib --build=i686-apple-darwin10 --program-prefix=i686-apple-darwin10- --host=x86_64-apple-darwin10 --target=i686-apple-darwin10 --with-gxx-include-dir=/include/c++/4.2.1 Thread model: posix gcc version 4.2.1 (Apple Inc. build 5664) MacBookAir:~ paraches$
pkg-config をインストール
次は pkg-config をインストール。
コレをダウンロードして展開。
MacBookAir:opencv paraches$ tar xvf pkg-config-0.23.tar <長いので省略> x pkg-config-0.23/acconfig.h MacBookAir:opencv paraches$ cd pkg-config-0.23
できた pkg-config-0.23 フォルダに入って、configure するのだけど、ここで prefix を /usr に指定。
MacBookAir:opencv paraches$ cd pkg-config-0.23 MacBookAir:pkg-config-0.23 paraches$ ./configure --prefix=/usr checking for a BSD-compatible install... /usr/bin/install -c <長いので省略> creating glibconfig.h config.status: executing default commands MacBookAir:pkg-config-0.23 paraches$ make
次に make してインストール。
MacBookAir:pkg-config-0.23 paraches$ make make all-recursive <長いので省略> gcc -g -Wall -O2 -g -O2 -o pkg-config pkg.o partial-glib.o parse.o main.o findme.o popt.o poptconfig.o popthelp.o poptparse.o glib-1.2.10/.libs/libglib.a MacBookAir:pkg-config-0.23 paraches$ sudo make install <長いので省略> MacBookAir:pkg-config-0.23 paraches$ cd ..
これでインストール完了。
ffmpeg をインストール
次は ffmpeg。
これはいつも面倒なことになるから嫌なんだけど…。
ココからダウンロードして展開。
ダウンロードのページには 0.5.2 と 0.6 があったので、0.5.2 をダウンロードしてトライ。
MacBookAir:opencv paraches$ tar xjf ffmpeg-0.5.2.tar.bz2
.configure は arch=x86_x64 と prefix のオプションつけて。
MacBookAir:ffmpeg-0.5.2 paraches$ ./configure --arch=x86_x64 --prefix=/usr <長いので省略> Creating config.mak and config.h... MacBookAir:ffmpeg-0.5.2 paraches$
後は make してインストール。
MacBookAir:ffmpeg-0.5.2 paraches$ make gcc -fPIC -DHAVE_AV_CONFIG_H -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I. -I"/Users/paraches/myTest/opencv/ffmpeg-0.5.2" -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -std=c99 -pipe -force_cpusubtype_ALL -Wno-sign-compare -fomit-frame-pointer -g -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef -O3 -fno-math-errno `freetype-config --cflags` -MM vhook/drawtext.c | sed -e "/^#.*/d" -e "s,^[[:space:]]*drawtext\.o,vhook/drawtext.o," > vhook/drawtext.d <長いので省略> rm doc/ffserver.pod doc/ffmpeg.pod doc/ffplay.pod MacBookAir:ffmpeg-0.5.2 paraches$ sudo make install <長いので省略> MacBookAir:ffmpeg-0.5.2 paraches$
make にはかなり時間がかかったけど無事終了。インストールも無事終了。
OpenCV 2.1 をインストール
やっと準備ができたので、最後に OpenCV 2.1 のインストール。
ココからダウンロード。ダウンロードするのは OpenCV-2.1.0.tar.bz2。
ダウンロードしたら展開。
MacBookAir:opencv paraches$ tar xjf OpenCV-2.1.0.tar.bz2 MacBookAir:opencv paraches$ cd OpenCV-2.1.0
次にオプション付けて cmake をする。
MacBookAir:OpenCV-2.1.0 paraches$ cmake -DCMAKE_INSTALL_PREFIX=/usr . -- The C compiler identification is GNU <長いので省略> -- Build files have been written to: /Users/paraches/myTest/opencv/OpenCV-2.1.0 MacBookAir:OpenCV-2.1.0 paraches$
たぶん、無事終了。
次は make の番。
MacBookAir:OpenCV-2.1.0 paraches$ make Scanning dependencies of target zlib <長いので省略> Linking CXX shared library ../../lib/cv.so [100%] Built target cvpy MacBookAir:OpenCV-2.1.0 paraches$ cd samples/
(なんか make がカラフルでびっくりした!インストールし直した Snow Leopard のターミナルの設定を変更したから?)
か〜な〜り、時間がかかったけど、無事?終了。
最後に sudo make install でインストール。
MacBookAir:OpenCV-2.1.0 paraches$ sudo make install [ 2%] Built target zlib <長いので省略> -- Installing: /usr/lib/python2.6/site-packages/cv.so MacBookAir:OpenCV-2.1.0 paraches$
これで無事 OpenCV 2.1 のインストールは終了。
サンプルをビルド
最後に C のサンプルをビルドして遊んでみる。
C のサンプルがある場所へ移動したら、まずはビルド用のスクリプトを実行できるようにする。
MacBookAir:OpenCV-2.1.0 paraches$ cd samples/c MacBookAir:c paraches$ ls -al build_all.sh -rw-r--r--@ 1 paraches staff 446 4 6 10:24 build_all.sh MacBookAir:c paraches$ chmod +x build_all.sh MacBookAir:c paraches$ ls -al build_all.sh -rwxr-xr-x@ 1 teshi staff 446 4 6 10:24 build_all.sh MacBookAir:c paraches$
これで build_all.sh を実行できるようになったのでビルドする。
MacBookAir:c paraches$ ./build_all.sh compiling camshiftdemo.c <長いので省略> compiling watershed.cpp MacBookAir:c paraches$
途中、微妙なワーニング?があったけど、無事終了。
とりあえず、OpenCV でいつもの定番? facedetect を起動してみる。
MacBookAir:c paraches$ ./facedetect detection time = 478.019 ms detection time = 467.002 ms detection time = 469.704 ms …
できた!!!
ちゃんと MacBook Air のカメラから読み込んで顔を見つけたよ〜。