【程式學習之路:Day4 9】智慧感測與應用:OpenCV安裝程序
∎ 安裝相關套件
•編譯套件
sudo apt-get install build-essential cmake
•圖片套件
sudo apt-get install libjpeg-dev libpng-dev libtiff-dev
•影片套件
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev
•GTK套件
sudo apt-get install libgtk-3-dev libcanberra-gtk*
•最佳化套件
sudo apt-get install libatlas-base-dev gfortran
•樹莓派加裝到此
sudo apt-get install at-spi2-core
∎ Python設定
•安裝python3開發套件
sudo apt-get install python3-dev
•安裝 virtualenv
sudo pip3 install virtualenv
•建立並啟動 virtualenv
virtualenv -p python3 cv
cd cv
source bin/activate
- 建立 virtualenv 後安裝 numpy 套件
pip install numpy (若不裝在 virtualenv 中需 sudo)
∎ 解壓縮 OpenCV
建立opencv資料夾,在底下解壓縮
解壓縮指令
unzip opencv-4.0.1.zip
unzip opencv_contrib-4.0.1.zip
∎ 設定編譯條件
•建立編譯目錄
cd opencv-4.0.1
mkdir build
cd build
•修改opencv-4.0.1底下的 swapfile size
sudo vi /etc/dphys-swapfile
•修改 CONF_SWAPSIZE=2048
- 改完後
sudo /etc/init.d/dphys-swapfile stop
sudo /etc/init.d/dphys-swapfile start
∎ 執行 cmake
切換到build資料夾
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv/opencv_contrib
4.0.1/modules \
-D ENABLE_NEON=ON \
-D ENABLE_VFPV3=ON \
-D BUILD_TESTS=OFF \
-D OPENCV_ENABLE_NONFREE=ON \
-D INSTALL_PYTHON_EXAMPLES=OFF \
-D BUILD_EXAMPLES=OFF \
-D PYTHON_EXECUTABLE=~/usr/bin/python3 \
..
檢查兩個地方是否正確
∎ 編譯
•在 build 目錄下執行make -j4
-j4 代表使用 4 核心 CPU 編譯,速度快。若是 8 核心 CPU,建議使用 -j8
•編譯完成後,在 build 目錄下執行(樹莓派3B+約 3–4 小時,zero 可以放上一整天)
sudo make install
sudo ldconfig
- 將 swap size 改回 100
∎ 使用
- 設定 symbolic link
在build資料夾輸入以下指令
cd lib/python3
cp cv2.cpython-35m-arm-linux-gnueabihf.so ~/cv/lib/python3.5/site-packages
∎ 測試
- 切換到cv資料夾
- 執行python
- >>import cv2