Raspberry PiにOpenCVをインストールする
Raspberry PiでOpenCVが使用できるようにします。最新のバージョンが欲しいのでapd-getせずに自前でビルドします。
必要なものをいれる
事前準備で以下のコマンドを必要なものをいれておきます。
$ sudo apt-get install build-essential
$ sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
OpenCVを入手する
入手したOpenCVの作業ディレクトリ(インストールディレクトリではないです)は
/home/pi/Library/opencv
とします。
端末のカレントディレクトリを移動しておいてください。
OpenCVのダウンロード先はOpenCVのgithubからzipファイルを探してきます。
https://github.com/opencv
以下のコマンドでzipファイルを入手して、作業ディレクトリにおいて解凍します。
gitのクローンを作成しても可です。追加機能も利用するため、opencv_contribもダウンロードします。
$ wget -O opencv.zip https://github.com/opencv/opencv/archive/4.4.0.zip
$ unzip opencv.zip
$ wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.4.0.zip
$ unzip opencv_contrib
アドレスはバージョンによって変更される可能性がありますので、現在のものをgithubから調べて入力してください。
cmake
作業ディレクトリの/oepncvに入り、buildという名前のディレクトリを作って中に入ります。
下記コマンドを実行してください。
$ cd opencv
$ mkdir build
$ cd build
以下のコマンドでcmakeを開始します。
$ cmake .. -DOPENCV_EXTRA_MODULES_PATH=$HOME/Library/opencv/opencv_contrib-4.4.0/modules -DCMAKE_INSTALL_PREFIX=/usr
oepncv_contribのパスはバージョンにより適宜変更してください。
make
下記コマンドでmakeします。makeは時間がかかります。Raspberry Pi 4で2~3時間ぐらい?
$ make -j4
makeが正常終了したら下記コマンドでインストールします。
インストール先はcmakeのオプションで入力した -DCMAKE_INSTALL_PREFIX の値になります。
$ sudo make install
動作確認
適当な場所で、cvtest.cppというファイルを作ります。
#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/imgcodecs.hpp>
int main() {
cv::Mat m = cv::imread("sample.png", 1);
cv::namedWindow("sample", cv::WINDOW_AUTOSIZE);
cv::imshow("sample", m);
cv::waitKey(0);
cv::destroyAllWindows();
return 0;
}
下記コマンドでビルドします。
Includeを通すため、IオプションにはOpenCVをインストールしたディレクトリを指定する。(cmakeで指定したディレクトリ)
$ g++ cvtext.cpp -std=c++11 -I /usr/include/opencv4 -lopencv_core -lopencv_imgcodecs -lopencv_highgui
同じフォルダに適当なsample.pngをおいて実行します。
$ ./a.out
参考サイト
http://ssr-yuki.hatenablog.com/entry/2018/05/14/022802
https://qiita.com/takahiro_itazuri/items/a67dd3bb7f5f88ca9dd8
https://qiita.com/DQNEO/items/4e5c2eca2761ec08b922
作成:松林雄一