1. 程式人生 > >Python 3.x 安裝opencv+opencv_contrib

Python 3.x 安裝opencv+opencv_contrib

Note:這篇文章不會包含任何的技術解答,僅是安裝教程。同樣不保證對所有可能的安裝中遇到的問題都能適用。不過如果不幸又幸運地遇到了跟我一樣的問題,我希望你能從我這裡找到解決方案。

前言

最近做作業需要Python+opencv,但發現opencv.org官網中提供的包只支援2.7版本。因為Python已在Anaconda下已經安裝了3.5且寫了一些程式碼,所以並不想解除安裝了3.5重新安裝2.7,所以查了資料想要能讓opencv能在3.5上跑。

正文
環境:Win7, 64bit
python version: 3.5.1,Anaconda 2.4.1(64bit)

1. 選擇合適的版本下載(不是在官網,因為如我前言中所說官網所支援的是Python2.7版本),下載地址:

比如說我下載的是opencv_python‑3.2.0‑cp35‑cp35m‑win_amd64.whl,這個名字標識了三部分:cp35,cp35m和win_amd64。cp35表示Python是3.5版本,win_amd64是表示安裝的Python是64bit的。
特別注意:
1. 這裡的64bit指的是Python安裝的64bit而不是作業系統,有時候64bit的作業系統同樣可能安裝了32bit的Python。確認安裝的版本方法為開啟cmd介面,輸入python --version進行查詢。
2. 如果你想使用如sift的功能,單單安裝opencv是不夠的,需要同時安裝opencv_contrib,對應於上一個網址中下載opencv_python‑3.2.0+contrib‑cp35‑cp35m‑win_amd64.whl 直接進行安裝即可(不用安裝沒有opencv_contrib版本的)。除了包的名字不同以外,安裝步驟和下面都是相同的。

2. 安裝下載的.whl檔案,在cmd介面中輸入:

pip install 檔案路徑\opencv_python‑3.2.0‑cp35‑cp35m‑win_amd64.whl
比如我將其放在c盤中,則使用:
pip install c:\opencv_python‑3.2.0‑cp35‑cp35m‑win_amd64.whl

這個安裝過程應該會很快,這一步完成後就安裝成功了~
當然,很可能像我一樣出現瞭如下error:

opencv_python‑3.2.0‑cp35‑cp35m‑win_amd64.whl is not a supported wheel on this platform. ~(>_<)~

兵來將擋水來土掩咯~在解決這個問題之前,在cmd中先查詢

python
>>> import pip; 
>>> print(pip.pep425tags.get_supported())

返回結果:

[(‘cp35’, ‘none’, ‘win_amd64’), (‘py3’, ‘none’, ‘win_amd64’), (‘cp35’, ‘none’, ‘any’), (‘cp3’, ‘none’, ‘any’), (‘py35’, ‘none’, ‘any’), (‘py3’, ‘none’, ‘any’), (‘py34’, ‘none’, ‘any’), (‘py33’, ‘none’, ‘any’), (‘py32’, ‘none’, ‘any’), (‘py31’, ‘none’, ‘any’), (‘py30’, ‘none’, ‘any’)]

發現問題了麼?我想要安裝的是
opencv_python‑3.2.0‑cp35‑cp35m‑win_amd64.whl,它的三個關鍵字是(‘cp35’, ‘cp35m’, ‘win_amd64’),但我電腦裡的pip並沒有與之完全對應的,因而出現了不supported的現象。解決方案當然就是更新pip了。使用更新指令python -m pip install --upgrade pip就可以解決問題了。不過更新指令連線可能不是很穩定會更新一半就報錯,多試幾次就好了~

3. 測試opencv的確安裝成功

python
>>> import cv2
>>> lena = cv2.imread("d:\lena.jpg")  ##找一個放了照片的路徑
>>> cv2.imshow("Image",lena)    
>>> cv2.waitKey(0)