Raspberry Pi4でOpenCV(環境構築)
2020/8/9
概要
- ラズパイ4でOpenCVを動作させる
- 環境準備
- カメラ入力の画面表示
環境
- Raspberry Pi 4 Model B 4GB RAM
- Raspbian GNU/Linux 10(buster)
- Camera V2
- Python 3.7.3
- OpenCV 4.1.1
環境構築
1.ライブラリ関連のインストール
$ sudo apt-get install libhdf5-dev libhdf5-serial-dev libhdf5-103 $ sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng-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 libatlas-base-dev $ sudo apt-get install libqtgui4 libqtwebkit4 libqt4-test python3-pyqt5 $ sudo apt-get install python3-dev
2.OpenCVのインストール
OpenCV用にvenv
で環境を用意し、インストールを行う。
$ python3 -m venv 環境名 $ source 環境名/bin/activate $ pip3 install opencv-contrib-python
この状態ではImportError(undefined symbol: __atomic_fetch_add_8)が発生するため、以下を実行
$ vim.tiny ~/.bashrc
最後の行に
export LD_PRELOAD=/usr/lib/arm-linux-gnueabihf/libatomic.so.1
を追加した後、以下を実行
source ~/.bashrc
参考:https://qiita.com/XM03/items/48463fd910470b226f22
3.カメラ入力の画面表示
以下のようなコードでカメラ入力を画面に表示できる。 (qキー押下で終了)
import cv2 capture = cv2.VideoCapture(0) while(True): ret, frame = capture.read() windowsize = (640, 480) frame = cv2.resize(frame, windowsize) cv2.imshow('camera',frame) if cv2.waitKey(1) & 0xFF == ord('q'): break capture.release() cv2.destroyAllWindows()