OpenCV3.3 + Python3.6 開發環境配置
2018.9.6 更新:Anaconda3-5.2.0版本(Python 3.6)下OpenCV 3 安裝
今天重新安裝了 Python 的環境,發現在新版本 Anaconda3 下安裝配置 OpenCV 3 十分簡單。
在 Anaconda navigator 左側選擇 Environment ,在右側要使用的環境中,左上方將 Installed 改為 All,右側搜尋 cv ,便可看到 opencv,勾選後點選右下角 Apply ,同時還會安裝幾個依賴包,點選確認後稍等即可,我安裝的版本是 3.4.1 。
如此簡單,快在編輯器中 import cv2
試試吧!
以下是原文:
人生苦短,快用 Python
在 Python 2.7 裡使用 OpenCV 實在是再簡單不過了,只需要把 OpenCV 目錄中 /build/python/2.7 裡的 “cv2.pyd” 複製貼上到 Python 目錄下的 \Lib\site-packages 資料夾中,再 import cv2
即可。
但是,本人一開始學的就是 Python 3 ,與2版本的還是有一些區別的,加上什麼都喜歡用最新版的強迫症,所以查了一些資料並做了實驗,把 OpenCV 3 在 Python 3 中的使用方法總結一下。
首先本文使用具體版本(2017.12.16):
- Python 版本:3.6.3 (Anaconda 3)
- OpenCV 版本:3.3.1
- Windows 10 x64
因為 opencv-python 需要 numpy 包,要安裝 numpy 可以自己下載安裝,不過如果使用 Anaconda 則更方便,包含了 numpy 在內的大量的科學包,還有很多其他好處。IDE使用的是 PyCharm ,美觀好用。安裝Anaconda3與PyCharm的過程很簡單,就不多說了。
1. Anaconda 下使用 conda 安裝 opencv
Anaconda使用conda管理各種包,關於conda的使用可以參考
如果在命令列裡輸入 conda install -c menpo opencv
的話,安裝的版本是 v2.4.11 ,不是我想要的版本。
如果在命令列裡輸入 conda install -c menpo opencv3
的話,安裝的版本是 v3.1.0 ,但是會提示:
UnsatisfiableError: The following specifications were found to be in conflict:
- opencv3 -> python 2.7*
- python 3.6*
意思是這個 opencv3 支援 python2.7 但是當前環境為 python3.6 ,所以直接使用 conda 安裝可以使用但只能對版本做出妥協。
2. pip 安裝 opencv
使用python自帶的pip管理包的話,可以試試 pip install opencv-python
,之後會自動下載:
Downloading opencv_python-3.3.0.10-cp36-cp36m-win_amd64.whl (39.7MB)`
但是我在 anaconda 命令列裡使用 pip 總是下到一半出 Exception。
另一個辦法是在下面的網址下載對應版本及平臺的 .whl 包,再手動安裝。
例如我下載的是:opencv_python‑3.3.1‑cp36‑cp36m‑win_amd64.whl
將其拷貝到 Python 目錄下的 \Lib\site-packages 資料夾中,在這個目錄下開啟命令列(shift+右鍵),或者cd進這個目錄,輸入:
pip install opencv_python‑3.3.1‑cp36‑cp36m‑win_amd64.whl
安裝完成即可使用 import cv2
。
3. 使用 CMake 重新編譯適用於 python3 的 cv2.pyd
使用CMake重新配置和編譯,這種做法可以參考我的部落格中“使用 CMake + VS2017 ( + Python 3) 配置和編譯 OpenCV 3.3”一文,最後會得到 cv2.cp36-win_amd64.pyd 直接拷貝即可使用。
我嘗試了後兩種方案均可以成功,需要注意使用的版本及平臺是否對應,若使用版本不同可參考網路上其他教程。