這次帶給大家Python3 opencv的設定教程,Python3 opencv配置的注意事項有哪些,下面就是實戰案例,一起來看一下。
無論是Windows、Linux、還是樹莓派 。設定python3的opencv環境都是讓人頭大的一件事情,尤其是許多人用pip安裝以後,發現opencv雖然裝上了,但是卻裝在了系統原生的python2下。
筆者也是經歷過很多次失敗之後,才安裝成功。
本文採用編譯的方法配置opencv,每一步都有ubuntu和樹莓派的分別配置,由於兩個系統極其相似(可以說是基本一樣),所以並在一文詳解。
一般來說,只要依照步驟去安裝配置,就不會出錯。廢話不多說,開始表演!
step1:準備工作
1.ubuntu
安裝前的準備工作:
1.1.對Ubuntu apt-get倉庫進行更新
sudo apt-get update && sudo apt-get upgrade
1.2.安裝必要的python插件及一些環境
sudo apt-get install python3-setuptools python3-dev -y
1.3.安裝pip
#sudo easy_install3 pip
1.4.對pip進行的更新(非必要)
pip install --upgrade pip
1.5.安裝numpy套件
pip install numpy
一些通用的套件:
1.6.安裝build-essential
#sudo apt-get install build-essential -y
1.7.其他的一些開發用套件
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev -y
#2.樹莓派
更新樹莓派的系統與核心
2.1 sudo apt-get update
2.2 sudo apt-get upgrade
2.3 sudo rpi-update
#更新核心時可能會更新核心時可能會報“No space left on device”錯誤,這是因為儲存空間不足,最好在更新前檢查記憶體使用(使用free指令即可)
step2:開始安裝opencv
ubuntu/樹莓派通用
1、首先,你要找一個合適的地方存放opencv的安裝包,我選擇的路徑是~/Download/opencv
#2、進入安裝路徑,並下載安裝包
cd ~/Download/opencv wget https://github.com/Itseez/opencv/archive/3.0.0.zip
# 3.下載完成後,需要建立編譯後檔案存放的路徑:
unzip 3.0.0.zip && cd opencv-3.0.0 mkdir build && cd build
4、接下來一步,要小心依照本機路徑來配置,在build目錄下執行如下指令:
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local PYTHON3_EXECUTABLE=/usr/bin/python3 PYTHON_INCLUDE_DIR=/usr/include/python3.4 PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.4m.so PYTHON3_NUMPY_INCLUDE_DIRS=/usr/local/lib/python3.4/dist-packages/numpy/core/include ..
注意這裡所有的是一行指令,每一個路徑都要確保存在,不要忘記最後的兩個點,大多時候樹莓派和ubuntu在PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.4m.so這個路徑上會有不同,在樹莓派中,cd到/usr/lib/目錄下,找到一個目錄下,存在libpython3.4m.so,(大不了一個一個找),找到了就記住路徑替換即可。
這一步,主要找到文件,例如找到python3.4 找到libpython3.4m.so 找到numpy/core/include 的路徑,各自對應替換即可
#5、最後執行安裝指令:
make && sudo make install
記得是在build目錄下執行,此步安裝時間較長,可以先去看看opencv的入門教學神馬的
6、如果你之前的步驟都完成了,那麼恭喜你,開始驗證吧
import cv2 >>> print(cv2.version) ... opencv-3.0.0
#相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
以上是Python3+opencv的設定教程的詳細內容。更多資訊請關注PHP中文網其他相關文章!