基於樹莓派3B+Python3.5的OpenCV3.4的配置教程


配置過程歷經千辛萬苦,所以寫下心得,以便后人乘涼

既然寫一次教程,就從頭開始寫,只要按照教程走,基本不會出現意外

首先下載樹莓派固件,我使用的是" 2018-03-13-raspbian-stretch.img "目前最新的樹莓派官方固件,然后准備空的TF卡並格式化,然后使用Win32DiskImager燒寫固件,插入樹莓派上電開機,因為第一次操作出錯概率非常高,所以不建議先安裝其他東西,先完成編譯再安裝其他軟件和庫

建議在樹莓派內打開此網頁或復制文本到移動硬盤,操作時直接復制粘貼,減少出錯概率

首先給apt換源,因為國內源的速度遠超國外源,使用Ctrl+Alt+T打開命令行

安裝vim,當然可以使用vi或nano,本文使用vim(命令行)

sudo apt-get install vim

編輯apt的配置文件(命令行)

sudo vim /etc/apt/sources.list

按insert鍵進入編輯模式,刪除(或注釋)原內容或備份文件,然后變更為,粘貼為Ctrl+Shift+V,保存為Ctrl+C然后輸入" :wq "

deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi

再輸入(命令行)

sudo vim /etc/apt/sources.list.d/raspi.list

變更文件內容為

deb http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui
deb-src http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui

更新apt(命令行)

sudo apt-get update
sudo apt-get upgrade

(以我固件版本為准)系統已內置Python2.7和Python3.5,因為系統文件依賴Python2.7,為了保持系統穩定性,所以使用Python3.5,有的教程使用了虛擬空間,如有需要可以自行百度教程

給PIP換源(系統已內置PIP3,如果沒有安裝Python或PIP自行查找安裝教程)

輸入(命令行)

sudo vim /etc/pip.conf

變更文件內容為(本文使用的是阿里雲源,也可以使用清華源,豆瓣源等源地址)

[global] 
index-url = http://mirrors.aliyun.com/pypi/simple/
[install] 
trusted-host=mirrors.aliyun.com

安裝numpy(命令行),第一次使用pip安裝時可能會比較慢,耐心等待

sudo pip3 install numpy

查看numpy的安裝目錄並記錄(后面編譯時需要,如果不帶numpy編譯可能會卡住)

python3
import numpy
numpy.__path__
quit()

擴大TF卡的空間,如果不做這步操作,后面會出問題,比如卡死

輸入(命令行)

sudo raspi-config

然后選擇" Advanced Options "然后選擇" Expand Filesystem "然后重啟樹莓派

開始為OpenCV安裝做准備,配置所需的庫(一次一行)

1 sudo apt-get install build-essential git cmake pkg-config -y
2 sudo apt-get install libjpeg8-dev -y
3 sudo apt-get install libtiff5-dev -y
4 sudo apt-get install libjasper-dev -y
5 sudo apt-get install libpng12-dev -y
6 sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev -y
7 sudo apt-get install libgtk2.0-dev -y
8 sudo apt-get install libatlas-base-dev gfortran -y

然后下載OpenCV庫和Contrib庫(強烈建議在其他環境下載然后拷貝過來),如果需要其他版本,就修改后面的版本號

https://github.com/Itseez/opencv/archive/3.4.0.zip
https://github.com/Itseez/opencv_contrib/archive/3.4.0.zip

解壓后在opencv-3.4.0文件夾里創建build文件夾,然后在命令行里面cd到此文件夾,開始cmake,以下內容為一行

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D OPENCV_EXTRA_MODULES_PATH=/home/pi/Downloads/opencv_contrib-3.4.0/modules -D BUILD_EXAMPLES=ON -D WITH_LIBV4L=ON PYTHON3_EXECUTABLE=/usr/bin/python3.5 PYTHON_INCLUDE_DIR=/usr/include/python3.5 PYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.5m.so PYTHON3_NUMPY_INCLUDE_DIRS=/home/pi/.local/lib/python3.5/site-packages/numpy/core/include ..  

上面比其他教程多了句" WITH_LIBV4L=ON ",如果沒有這個,可能會沒法對相機參數進行設置並且會有很多問題(並沒有逐一驗證),其他路徑建議逐條驗證,如果不一樣就修改為當前系統的路徑

然后開始編譯,此步不要使用make -j4等加速方法,非常容易報錯,耐心等幾個小時吧,欲速則不達

make && sudo make install

安裝完后重啟樹莓派,然后就可以試試OpenCV了,記得全程都是Python3,如果路徑錯誤或者加載環境不對,使用的是pip(默認pip2)都有可能導致錯誤,建議仔細檢查后再執行命令

在此感謝以下Geeks

https://blog.csdn.net/lc_1994/article/details/52971408

https://blog.csdn.net/qq_37910312/article/details/72866242

https://stackoverflow.com/questions/16390810/opencv-cant-set-resolution-of-video-capture


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM