Python計算機視覺:安裝

  1. 0.1 須要準備的安裝包
  2. 0.2 安裝Python(x,y)
  3. 0.3 安裝PCV庫
  4. 0.4 VLfeat

 

爲順利幫助讀者完成本書中實例的學習,譯者已對代碼作了相應整理,下面給出在對本書實例學習前,你須要作的前期安裝工做。注意,下面譯者給出的安裝過程是針對Windows下的,其餘平臺如Linux、Mac請查閱中譯本附錄。html

0.1 須要準備的安裝包

要完整復現書中的實例,你須要的主要四個文件包括Python(x,y) 2.7.x安裝包、PCV庫、VLfeat和本書用到的數據庫。Python(x,y)能夠在python-xy,PCV庫、本書整理出來的實例代碼以及本書用到的全部圖像數據能夠從首頁給出的連接下載。python

0.2 安裝Python(x,y)

在Windows下,譯者推薦你安裝Python(x,y) 2.7.x。Python(x,y) 2.7.x是一個庫安裝包,除了包含Python自身外,還包含了不少第三方庫,下面是安裝Python(x,y)時的界面:mysql

ch02_fig2-1_harris

從上面第二幅圖能夠看出,pythonxy不只包含了SciPy、NumPy、PyLab、OpenCV、MatplotLib,還包含了機器學習庫scikits-learn。 爲避免出現運行實例時出現的依賴問題,譯者建議將上面的庫所有選上,也就是選擇「full」(譯者也是用的所有安裝的方式進行後面的實驗的)。安裝完成後,爲驗證安裝是否正確,能夠在Python shell裏確認一下OpenCV是否已安裝來進行驗證,在Python Shell裏輸入下面命令:git

from cv2 import __version__
__version__

輸入上面命令,若是能夠看到OpenCV的版本信息,則說明python(x,y)已安裝正確。github

另外,須要提醒讀者的是,Python是沒有平臺區分的,這裏指的平臺不是指Linux和Mac這樣的平臺概念,而是在Windows上沒有位數的區分。舉個簡單的例子,好比你是64位的Windows系統,你能夠安裝32位的Python。對於這一部分的詳細說明,能夠參閱譯者的一篇博文Django配置MySQL最後一段的說明。好了,關於Python(x,y)的安裝說明就說到這裏。算法

0.3 安裝PCV庫

PCV庫是原書做者寫的一個第三方庫,書中幾乎全部的實例到要用到改庫。假設你已從下載本書由譯者整理的中譯版源碼,從Windows cmd終端進入PCV所在目錄:sql

cd PCV
python setup.py install

運行上面命令,便可完成PCV庫的安裝。爲了驗證PCV庫是否安裝成功,在運行上面命令後,能夠打開Python自帶的Shell,在Shell輸入:shell

import PCV

若是未報錯,則代表你已成功安裝了該PCV庫。數據庫

0.4 VLfeat

VLFeat是一個跨平臺的開源機器視覺庫,它囊括了當前流行的機器視覺算法,如SIFT, MSER, HOG, 同時還包含了諸如K-MEANS, Hierarchical K-means的聚類算法。本書中主要在提取sift特徵時用到了VLfeat。django

ch02_fig2-1_harris

如上圖所示,從紅色框標的地方下載VLFeat,解壓:

ch02_fig2-1_harris

你須要的僅是對應平臺的可執行文件,譯者系統是32位的,因此選用的是win32。注意目前VLFeat最新發布版已到0.9.18了。對於0.9.18,目錄結構和0.9.17的同樣,因此你也僅需bin下對應的文件夾下的可執行文件。 將該win32拷貝到你想放置的某個目錄,譯者將其放置在計算機的以下目錄:

ch02_fig2-1_harris

須要注意的是,譯者將原來的「bin」文件名從新"win32vlfeat"。完成該步驟後,進入PCV所在目錄:

ch02_fig2-1_harris

打開sift.py,找到下面代碼:

def process_image(imagename,resultname,params="--edge-thresh 10 --peak-thresh 5"):
    """ process an image and save the results in a file"""

    if imagename[-3:] != 'pgm':
        #create a pgm file
        im = Image.open(imagename).convert('L')
        im.save('tmp.pgm')
        imagename = 'tmp.pgm'

    cmmd = str("D:\mltools\win32vlfeat\sift.exe "+imagename+" --output="+resultname+
                " "+params)
    os.system(cmmd)
    print 'processed', imagename, 'to', resultname

將cmmd中的目錄修改成你本身放置的Vlfeat bin所在目錄。這裏稍微解釋一下os.system(cmmd)這句話的意思,這裏Python經過os.system()調用外部可執行文件,也就是Vlfeat bin目錄下的sift.exe。

好了,安裝完後,你即可以運行書中的大部分實例代碼了。這裏之因此是「大部分」是由於書中的某些實例,還要用到別的庫。

相關文章
相關標籤/搜索