Ubuntu16.04 下 Python3 虚拟环境安装 OpenCV
?
wg_shun 2018-10-25 19:18:53 6400 收藏 20
分類專欄: 環境搭建 文章標簽: Ubuntu python3 opencv
版權
前言? 轉載自:https://blog.csdn.net/wgshun616/article/details/83383538
最近在看 Light Head Rcnn 的 Tensorflow 源碼,在 Python3 下需要用到 OpenCV ,鑒于我的 Ubuntu 下已經裝了 Python2.7 的 OpenCV2.4.13.7 點擊查看安裝教程。所以這次在虛擬環境下配置一下 Python3 的 OpenCV,按照以下步驟直接裝了最新的 OpenCV4.0.0-pre。
安裝步驟
1. 各種依賴包的安裝
升級一些預安裝的軟件包:
$ sudo apt-get update $ sudo apt-get upgrade安裝一些編譯 OpenCV 所需要的開發工具:
$ sudo apt-get install build-essential cmake git pkg-config- ?
安裝一些用于從磁盤中讀取各種圖片格式所需要的依賴包:
$ sudo apt-get install libjpeg8-dev libtiff4-dev libjasper-dev libpng12-dev- ?
安裝一些用于從磁盤中讀取視頻所需要的依賴包:
$ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev- ?
安裝以后使用 OpenCV 的 GUI 時所需要的 GTK:
$ sudo apt-get install libgtk2.0-dev- ?
安裝用于優化 OpenCV 內部各種功能的依賴包,例如矩陣操作:
$ sudo apt-get install libatlas-base-dev gfortran- ?
2. 設置 Python3 的相關操作
首先安裝 Python 的包管理工具 pip。安裝 Python3 的 pip :
$ wget https://bootstrap.pypa.io/get-pip.py $ sudo python3 get-pip.py注意: 在安裝 pip 的時候使用的是 python3,如果不用 python3 的話,默認安裝的將是 python2 的。
本文前言中說了:是在虛擬環境下安裝 Python3 的 OpenCV。所以在這里搭建 Python3 的虛擬環境需要用到 virtualenv 和 virtualenvwrapper ,下面先使用 pip 安裝 virtualenv 和 virtualenvwrapper 。
$ sudo pip3 install virtualenv virtualenvwrapper- ?
注意: 在這里使用的也是 pip3 ,而不是 pip ,使用 pip3 安裝確保將這兩個包裝在 Python3 的環境下。
下面就要更新環境變量了,在 ~/.bashrc 文件的最后添加上以下環境變量信息:
# virtualenv and virtualenvwrapper export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3 export WORKON_HOME=$HOME/.virtualenvs source /usr/local/bin/virtualenvwrapper.sh注意一下在這里是怎么將 VIRTUALENVWRAPPER_PYTHON 指向 Python3 所在的 Ubuntu 系統路徑的。
為了確保剛剛配置的環境變量有效,執行以下命令:
$ source ~/.bashrc- ?
然后,創建下面安裝 Python3 的 OpenCV 需要使用 cv 虛擬環境:
$ mkvirtualenv cv- 1
這時可以看到終端中用戶名的前面有了 (cv) 的標識。目前算是完成了 Python 設置的一半了,下面需要安裝 Python3 的開發文件:
$ sudo apt-get install python3.5-dev- 1
我這里的 Python3 的版本是 3.5 ,所以我裝的是 python3.5-dev。
OpenCV 還需要用到 Numpy ,下一步安裝 Numpy :
- 1
注意: 這一步出錯的朋友請移步文末的參考鏈接,那里有解決方案。
3. 安裝 OpenCV
到此,安裝 OpenCV 所需要設置的環境都設置完畢,下面開始下載 OpenCV 的源碼:
$ git clone https://github.com/Itseez/opencv.git- 1
注意: 文末的參考文章中有安裝 OpenCV 的 contrib庫 ,目前我還用不到,所以就不占用那個空間去裝了,需要的還請移步自取。
下載好源碼以后就是編譯了:
$ cd opencv $ mkdir release $ cd release $ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON ..cmake 命令結束以后就可以看到以下 python3 的信息了:
注意: 在 cmake 以后看到 python3 的信息才能進行下面的操作。
下面開始 OpenCV 的編譯操作:
$ make -j4- 1
注意: 上述命令中的 4 根據處理器的內核數來設置,可以加快編譯速度。
在編譯的時候遇到錯誤:
fatal error: Eigen/Eigenvalues: No such file or directory compilation terminated.解決方法:
重新 cmake ,在 cmake 的時候加入參數 -D WITH_EIGEN=OFF,然后重新編譯就通過了。
在沒有報錯編譯完成之后,可以執行下列命令將 OpenCV 裝到系統里:
$ sudo make install $ sudo ldconfig4. 設置 OpenCV 的系統鏈接
在沒有錯誤的情況下執行完以上步驟,執行命令:
$ ls -l /usr/local/lib/python3.5/site-packages/- ?
就可以看到 OpenCV 的相關信息了:
在這里 OpenCV 的名字是 cv2.cpython-35m-x86_64-linux-gnu.so 。
下面為了能在創建的 cv 虛擬環境中使用 OpenCV ,需要將這個 site-packages 文件夾下的 cv2.cpython-35m-x86_64-linux-gnu.so 文件鏈接到 cv 虛擬環境中:
在上述命令中將 cv2.cpython-35m-x86_64-linux-gnu.so 的名字改成了 cv2.so,這樣在 Python3 中就能直接導入 cv2 了。這時候使用 ls 命令就可以看到 cv2.so 文件了。
如果沒有 cv2.so 文件,將不能導入 cv2 。
5. 測試 Python3 安裝的 OpenCV
打開終端,進入創建的 cv 虛擬環境,在 Python 中導入 cv2 查看 OpenCV 的版本:
$ workon cv $ python >>> import cv2 >>> cv2.__version__ '4.0.0-pre'結束,安裝成功。
參考:https://www.pyimagesearch.com/2015/07/20/install-opencv-3-0-and-python-3-4-on-ubuntu/
個人網站:心安便是歸處
GitHub:oh,ss
總結
以上是生活随笔為你收集整理的Ubuntu16.04 下 Python3 虚拟环境安装 OpenCV的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 出现 AttributeE
- 下一篇: Ubuntu18.04安装ROS Mel