(この記事は2018/8/17に作成しました)
RaspberryPiにOpenCVをインストールします。
以前に別の方法で
sudo apt autoremove libopencv3
- RaspberryPi3 Model B+ (OS: RASPBIAN, version: June 2018)
- Python3
- OpenCV3.4.2
を想定しています。下の記事を全面的に参考にさせていただきました。
参考リンク:https://qiita.com/nanbuwks/items/422eb405ceef84826ab4
1. microSDからメモリのスワップ
作業にあたり、スワップメモリ容量を変更しておきます。当該モデルのメモリは1GBありますが、インストール時にメモリ容量がなくなる可能性があるためです。
メモリ容量は、以下のコマンドで確認します。
$ free -h
microSDのメモリを割り当てます。1GB程度あれば十分と思われます。32GBであれば、2GBでも問題ないでしょう。
容量の変更は、"/etc/dphys-swapfile" を編集することで可能です。nanoを用いて編集します。
$ sudo nano /etc/dphys-swapfile
実行すると、nanoで当該ファイルの編集ができます。単位はMBになっていますので、1024に書き換えます。
CONF_SWAPSIZE=1024
書き換え後、control + Xで終了、その後Yで編集内容を保存、Enterで離脱します。
設定が完了したら、スワップメモリの変更を実行します。
設定の反映のために、stop→startとコマンドを実行します。
$ sudo systemctl stop dphys-swapfile
$ sudo systemctl start dphys-swapfile
変更ができたか、もう一度容量を確認します。
$ free -h
2. インストール
OpenCVをインストールする前に、必要となるパッケージをインストールしておきます。
参考リンク先の内容をそのまま踏襲して、以下のように入力すれば良さそうです(すでにインストール済みのパッケージはスキップされます)。
$ sudo apt-get install build-essential git cmake pkg-config libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk2.0-dev libatlas-base-dev gfortran
$ sudo apt-get install python3-dev python3-pip
3. OpenCVおよびOpenCV_contribをダウンロード
OpenCVに加え、基本的なパッケージが含まれるOpenCV_contribも同時にインストールします。
下記の通りにダウンロードします。参考リンク先では3.2.0となっているところは、最新バージョンの数字である3.4.2に変更します。
$ cd ~
$ git clone https://github.com/Itseez/opencv.git
$ cd opencv
$ git checkout 3.4.2
$ cd ..
$ git clone https://github.com/Itseez/opencv_contrib.git
$ cd opencv_contrib/
$ git checkout 3.4.2
$ cd ..
numpyをインストールします。pipがインストール済みですので、pipを使用します。
使用するコマンドはpipではなく、pip3ですので注意してください。
$ sudo pip3 install numpy
それでは、ダウンロードしたOpenCVをインストールします。cmake以下に多くの変数がありますが、 "\" を挟めば改行することができます。その場合にも、行頭の "-D" は毎回指定してください。最後の".."まで記述してください。
$ cd opencv
$ 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/modules \
> -D BUILD_EXAMPLES=ON ..
$ make -j 4
"make -j 4 "はCPUコアを4つ使ってビルドするという意味です。
ビルドには2時間以上かかりますので、RaspberryPiには手を触れないで待ちます。
最後にインストールします。
$ sudo make install
$ sudo ldconfig
インストールが終了したら、インストールができているか確認します。
$ Python3
>>>import cv2
>>>cv2.__version__
最新バージョン "3.4.2" が表示されていれば成功です。
(おわり)