【Raspberry Pi 2】 OpenCV3.0.0のインストール

6月4日にようやく正式版がリリースされたOpenCV3.0.0をインストールします。

OpenCV3.0.0のインストール

OpenCVはapt-getでもインストールできますが、最新版を使用したいので、ここではソースからコンパイルします。

まず前準備として、必要なツールやライブラリをインストールします。

$ sudo apt-get -y install build-essential cmake cmake-qt-gui pkg-config libpng12-0 libpng12-dev libpng++-dev libpng3 libpnglite-dev zlib1g-dbg zlib1g zlib1g-dev pngtools libtiff4-dev libtiff4 libtiffxx0c2 libtiff-tools
$ sudo apt-get -y install libjpeg8 libjpeg8-dev libjpeg8-dbg libjpeg-progs ffmpeg libavcodec-dev libavcodec53 libavformat53 libavformat-dev libgstreamer0.10-0-dbg libgstreamer0.10-0 libgstreamer0.10-dev libxine1-ffmpeg libxine-dev libxine1-bin libunicap2 libunicap2-dev libdc1394-22-dev libdc1394-22 libdc1394-utils swig libv4l-0 libv4l-dev python-numpy libpython2.6 python-dev python2.6-dev libgtk2.0-dev pkg-config
$ sudo apt-get install libswscale-dev

続いてOpenCVの入手とビルドです。

$ wget http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/3.0.0/opencv-3.0.0.zip
$ unzip opencv-3.0.0.zip
$ cd opencv-3.0.0
$ mkdir build
$ cd build
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_NEW_PYTHON_SUPPORT=ON -D BUILD_EXAMPLES=ON ..

$ make -j 4
$ sudo make install
$ sudo ldconfig

上記の通り、「make -j 4」でmakeすることによって4並列でコンパイルできます。Raspberry Pi 2の本領発揮ですね!
コンパイルは1時間ぐらいで終了しました。

顔認識サンプルの実行

上記の通り「BUILD_EXAMPLES=ON」を指定してビルドした場合はサンプルもビルドされています。
定番の顔認識を動かしてみます。OpenCVに含まれているレナさん画像で試してみます。

$ cd bin
$ ./cpp-example-facedetect --cascade="../../data/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5 ../../samples/data/lena.jpg

正常に認識されました。
opencv3

画像ファイルを指定しなければUSBカメラの動画で認識できます。動画の場合はパフォーマンスを考慮し、scaleは4ぐらいが良いようです。

$ ./cpp-example-facedetect --cascade="../../data/haarcascades/haarcascade_frontalface_alt.xml" --scale=4
本格派対局将棋 ぴよ将棋
本格派対局将棋アプリ ぴよ将棋
[Android] [iOS]

かわいい「ひよこ」と対局する将棋アプリ。かわいいけどAIは本格派!
対局後の検討機能や棋譜管理機能も充実!棋譜解析機能も搭載!

「【Raspberry Pi 2】 OpenCV3.0.0のインストール」への4件のフィードバック

  1. はじめまして。
    ラズパイ設定においてこのサイトをよく参考にさせていただいております。
    raspicamCVをopenCV3.0.0に対応させるのはどうしたらよいでしょうか?
    Makefileにはいっているopencv_legacy moduleが3.0からdeprecateになっているようでエラーになってしまいます。外してコンパイルすると通るのですが、サンプルが動かなくなってしまいます。
    もしなにか解決策などありましたらご教示いただけるとうれしいです。

  2. futurestandardさん
    当方で試したところでは、opencv_legacyをはずしてコンパイルして、サンプル(RaspiCamTest.c)も動作しました。

  3. pontaさん
    ありがとうございます。
    別のプログラムで起動時にカメラを常時稼働させていたのが原因だったようです。
    そちらをきればきちんと動作しました。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です