LionにopenCVをいれてみる
id:tamakiii:20091125 さんの記事を参考にしながらインストールしようとしたのですが、多少状況が違うようなのでメモ。
一番の違いは「MacPorts が不要っぽい」という点でしょうか。
- /usr/bin/xcodebuild のパスが合わないので修正
- Xcode4.3 から Xcode の場所が変わったのでそれに対応。
$ sudo /usr/bin/xcode-select -switch /Applications/Xcode.app/Contents/Developer/
$ tar jxf OpenCV-2.3.1a.tar.bz2 $ mkdir OpenCV_build $ cd OpenCV_build
- cmake で設定
$ cmake -D CMAKE_CXX_COMPILER:FILE_PATH=/usr/bin/g++ -D OPENCV_BUILD_3RDPARTY_LIBS:BOOL=YES ../OpenCV-2.3.1
- make && make install
$ make $ sudo make install
動作確認
動作確認コード。
#include <cv.h> #include <highgui.h> using namespace cv; int main(int argc, char* argv[]) { VideoCapture cap(0); if(!cap.isOpened()) { return -1; } namedWindow("sample", CV_WINDOW_AUTOSIZE); for(;;) { Mat frame; cap >> frame; imshow("sample", frame); if(waitKey(30)>=0) break; } return 0; }
そしてコンパイルと実行。
$ export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/ $ g++ -O3 -Wall -o sample sample.cpp `pkg-config --cflags --libs opencv` $ ./sample
動きました\(゚∀゚)/
pkg-configメモ
これのために MacPorts が要る・・・のかな? 検証できてません。
$ pkg-config --cflags --libs opencv -I/usr/local/include/opencv -I/usr/local/include \ -L/usr/local/lib -lopencv_core -lopencv_imgproc -lopencv_highgui \ -lopencv_ml -lopencv_video -lopencv_features2d -lopencv_calib3d \ -lopencv_objdetect -lopencv_contrib -lopencv_legacy -lopencv_flann