はじめに
5月にIoTハッカソンがあり、そのための準備を第6回 Raspberry pi もくもく会でおこないます。
ハッカソンのテーマが「キッズIoT」ということで、子供のテレビ時間を抑制するものを作ろうとしています。 子供がテレビの前にいるかを確認しなければならないので、ラズベリーパイとOpenCVを使って確認してみようと思います。
今回はRaspberry PiにOpenCVをインストールしてみます。
ファイルシステムの拡張
sudo raspi-config
を実行し、「7 Advanced Options」の「A1 Expand Filesystem」を選択します。
実行することでラズベリーパイで使用できるファイルの領域が広がります。OpenCVのコンパイルでは大きいファイル領域を使用するので必ずおこないます。
SDカードの大きさが小さい場合は他にも必要のないソフトウェアをアンインストールしておきます。
sudo apt-get purge wolfram-engine
sudo apt-get purge libreoffice*
sudo apt-get clean
sudo apt-get autoremove
OpenCV3をソースコードからインストールする
まずは依存関係のあるパッケージをインストール
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install build-essential cmake pkg-config
sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev
sudo apt-get install libgtk2.0-dev libgtk-3-dev
sudo apt-get install libatlas-base-dev gfortran
sudo apt-get install python3-dev
次にソースコードのダウンロードと解凍
wget -O opencv.zip https://github.com/Itseez/opencv/archive/3.3.0.zip
unzip opencv.zip
wget -O opencv_contrib.zip https://github.com/Itseez/opencv_contrib/archive/3.3.0.zip
unzip opencv_contrib.zip
numpyのインストール
pip install numpy
OpenCVのビルド
cd ~/opencv-3.3.0/
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.3.0/modules \
-D BUILD_EXAMPLES=ON ..
make -j4
ここでエラー
エラー
何度かmake -j4
を試してもfatal error: can’t write PCH file: No space left on device
エラーが出てしまいました。一番最初にデバイスの領域を確保したはずなんだけどなぁ。SDカードも16GBを使っているので領域が足りなくなることはほぼ無いと思っています。結構調べたのですが、どれも解決には至らず…
解決したらまたブログを書きます。
参考URL
作業編
https://github.com/yoshitaku-jp/study-picamera-slack
https://qiita.com/nanbuwks/items/422eb405ceef84826ab4
https://www.scivision.co/install-opencv-python-windows/
エラー編
https://teratail.com/questions/101689
https://www.raspberrypi.org/forums/viewtopic.php?t=124646
http://answers.opencv.org/question/18121/cant-write-in-pch-file-crunchbang/
https://raspberrypi.stackexchange.com/questions/63417/compiling-opencv-on-pi-3
追記
解決しました!!!!!!!!!!!!!!!!!!