Raspberry Pi 2 ★ OpenCV 3.1.0 のインストール 〜 C++ & Python サンプルでのカメラ動作確認まで
Home > Raspberry Pi >
昨日、OpenCV3.0.0 をインストール しましたが、その後、C++サンプルを動かそうとすると、
1 2 3 4 5 6 7 8 9 |
$ ./opencv_example Built with OpenCV 3.0.0 VIDEOIO ERROR: V4L/V4L2: VIDIOC_S_CROP Capture is opened OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvShowImage, file /tmp/opencv-3.0.0/modules/highgui/src/window.cpp, line 534 terminate called after throwing an instance of 'cv::Exception' what(): /tmp/opencv-3.0.0/modules/highgui/src/window.cpp:534: error: (-2) The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function cvShowImage 中止 |
というエラーが出てしまいました。
どうやら必要なライブラリが不足していたようで、libgtk2.0-dev と pkg-config を入れて cmake をやり直してということのようですが・・・
目次
せっかくなので OpenCV3.1.0 でインストールし直すことに
今回は ラズパイマガジン に添ってインストールさせて頂きました。
Raspberry Pi 2 を使用しています。
カメラはこちらです。
まずはOpenCV3.1.0ダウンロード
1 |
wget https://github.com/Itseez/opencv/archive/3.1.0.zip |
解凍
1 |
unzip 3.1.0.zip |
アップデート
1 |
sudo apt-get update |
1 |
sudo apt-get upgrade |
ライブラリインストール
この辺ももっかいやっとく
1 |
sudo apt-get install build-essential cmake cmake-qt-gui |
ライブラリはラズパイマガジンの通りに入れとく
1 |
sudo apt-get install libgtk2.0-dev libjpeg-dev libtiff5-dev libjasper-dev libopenexr-dev python-dev python-numpy python-tk libeigen3-dev yasm libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev libqt4-dev libqt4-opengl-dev sphinx-common libv4l-dev libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev default-jdk ant libvtk5-qt4-dev |
ねんのため、さきほどエラーが出ていたライブラリの存在を確認しておく
1 2 3 |
$ sudo aptitude search libgtk2.0-dev i libgtk2.0-dev - development files for the GTK+ library |
こっちも
1 2 3 4 5 6 |
$ sudo aptitude search pkg-confi p eclipse-cdt-pkg-config - pkg-config support for Eclipse C/C++ development tools i pkg-config - manage compile and link flags for libraries v pkg-config-mingw-w64-i686 - v pkg-config-mingw-w64-x86-64 - p ruby-pkg-config - pkg-config implementation for Ruby |
大丈夫ぽい。
ビルド
opencvのディレクトリに移動
1 |
cd opencv-3.1.0/ |
ビルド用ディレクトリ作成
1 |
mkdir build |
移動
1 |
cd build |
ラズパイ本体のキーボードから
1 |
cmake-gui |
GUIが起動するので、
- 「Where is the source code」「Where to build the binaries」に場所を設定
- 「Configure」を押す
- 「Unix Makefile」と「Use Dfault native compilers」を選択して「Finish」
- 「ENABLE_NEON」「ENABLE_VFPV3」にチェックを入れる
- 「Configure」を押す
- 「Genarate」を押す
- 終了
ふたたび make ・・・これが時間がかかる
1 |
make -j4 |
今回ちょこちょこラズパイを操作したせいか、1時間以上は時間がかかった
インストール
1 |
sudo make install |
特に問題なく終了。
サンプルを動かしてみる
Python サンプル
サンプルディレクトリに移動
1 |
cd ~/opencv-3.1.0/samples/python2 |
ラズパイ本体のキーボードから
1 |
./video.py |
無事起動。
次はC++サンプル
ディレクトリ移動
1 |
cd ~/opencv-3.1.0/samples/cpp/example_cmake/ |
サンプルのコンパイル
1 |
make |
起動
1 |
./opencv_example |
なぞのエラー
1 |
error while loading shared libraries: libopencv_shape.so.3.1: cannot open shared object file: No such file or directory |
調べたところ下記が必要らしい
1 |
sudo ldconfig |
再度
1 |
./opencv_example |
無事起動
(ラズパイの画面を映している)
とりあえずPythonとC++でカメラを移せるようになったということで・・・
最後に昨日のOpenCV3.0.0は削除
1 |
sudo rm -r opencv-3.0.0 |
色々と体当たりで行き当たりばったりなやり方・・・
追記
ラズパイコンテストに応募(2016.9.8.)
OpenCV でカメラ画像を2つ出し、VRっぽく表示させています。
MacからリモートでOpenCVのカメラを起動(2016.9.6)
リモートデスクトップでラズパイの画面をいじれるようになりました。色々便利です。
RaspberryPI3にOpencv3.2.0のインストールをするのに使わせてもらいました。opencv-3.1.0をpencv-3.2.0と置き換えるだけで問題なく作業できました。
どうもありがとうございました。
コメントありがとうございます。お役に立ててよかったです。