初始----python數位影像處理--:環境安裝與配置

來源:互聯網
上載者:User

標籤:body   linu   視頻   儲存   data   --   https   tor   編輯   

一提到數位影像處理編程,可能大多數人就會想到matlab,但matlab也有自身的缺點:

1、不開源,價格貴

2、軟體容量大。一般3G以上,高版本甚至達5G以上。

3、只能做研究,不易轉化成軟體。

因此,我們這裡使用python這個指令碼語言來進行數位影像處理。

要使用python,必須先安裝python,一般是2.7版本以上,不管是在windows系統,還是linux系統,安裝都是非常簡單的。

要使用python進行各種開發和科學計算,還需要安裝對應的包。這和matlab非常相似,只是matlab裡面叫工具箱(toolbox),而python裡面叫庫或包。基於python指令碼語言開發的數字圖片處理包,其實很多,比如PIL,Pillow, opencv, scikit-image等。

對比這些包,PIL和Pillow只提供最基礎的數位影像處理,功能有限;opencv實際上是一個c++庫,只是提供了python介面,更新速度非常慢。到現在python都發展到了3.5版本,而opencv只支援到python 2.7版本;scikit-image是基於scipy的一款影像處理包,它將圖片作為numpy數組進行處理,正好與matlab一樣,因此,我們最終選擇scikit-image進行數位影像處理。

一、需要的安裝包

因為scikit-image是基於scipy進行運算的,因此安裝numpy和scipy是肯定的。要進行圖片的顯示,還需要安裝matplotlib包,綜合起來,需要的包有:

 

比較,安裝起來非常費事,尤其是scipy,在windows上基本安裝不上。

 

但是不用怕,我們選擇一款整合安裝環境就行了,在此推薦Anaconda, 它把以上需要的包都整合在了一起,因此我們實際上從頭到尾只需要安裝Anaconda軟體就行了,其它什麼都不用裝。

二、下載並安裝 anaconda

先到https://www.continuum.io/downloads 下載anaconda, 現在的版本有python2.7版本和python3.5版本,下載好對應版本、對應系統的anaconda,它實際上是一個sh指令檔,大約280M左右。

本系列以windows7+python3.5為例,因此我們下載如紅框裡的版本:

名稱為: Anaconda3-2.4.1-Windows-x86_64.exe

是一個可執行檔exe檔案,下載完成好,直接雙擊就可以安裝了。

在安裝的時候,假設我們安裝在D盤根目錄,如:

並且將兩個選項都選上,將安裝路徑寫入環境變數。

然後等待安裝完成就可以了。

安裝完成後,開啟windows的命令提示字元: 

輸入conda list 就可以查詢現在安裝了哪些庫,常用的numpy, scipy名列其中。如果你還有什麼包沒有安裝上,可以運行

conda install ***  來進行安裝。(***為需要的包的名稱)

如果某個包版本不是最新的,運行 conda update *** 就可以更新了。

三、簡單測試

anaconda內建了一款編輯器spyder,我們以後就可以用這款編輯器來編寫代碼。

spyder.exe放在安裝目錄下的Scripts裡面,如我的是 D:/Anaconda3/Scripts/spyder.exe, 直接雙擊就能運行。我們可以右鍵發送到案頭捷徑,以後運行就比較方便了。

我們簡單編寫一個程式來測試一下安裝是否成功,該程式用來開啟一張圖片並顯示。首先準備一張圖片,然後開啟spyder,編寫如下代碼: 

from skimage import ioimg=io.imread(‘d:/dog.jpg‘)io.imshow(img)

將其中的d:/dog.jpg 改成你的圖片位置

然後點擊上面工具列裡的綠色三角進行運行,最終顯示



如果右下角“ Ipython console" 能顯示出圖片,說明我們的運行環境安裝成功。

我們可以選擇右上方的 ” variable explorer" 來查看圖片資訊,如

我們可以把這個程式儲存起來,注意python指令檔的尾碼名為py.

四、skimage包的子模組

skimage包的全稱是scikit-image SciKit (toolkit for SciPy) ,它對scipy.ndimage進行了擴充,提供了更多的圖片處理功能。它是由python語言編寫的,由scipy 社區開發和維護。skimage包由許多的子模組組成,各個子模組提供不同的功能。主要子模組列表如下:

子模組名稱  主要實現功能
io 讀取、儲存和顯示圖片或視頻
data 提供一些測試圖片和樣本資料
color 色彩空間變換
filters 映像增強、邊緣檢測、排序濾波器、自動閾值等
draw 操作於numpy數組上的基本圖形繪製,包括線條、矩形、圓和文本等
transform 幾何變換或其它變換,如旋轉、展開和拉東變換等
morphology 形態學操作,如開閉運算、骨架提取等
exposure 圖片強度調整,如亮度調整、長條圖均衡等
feature 特徵檢測與提取等
measure 映像屬性的測量,如相似性或等高線等
segmentation 映像分割
restoration 映像恢複
util 通用函數

用到一些圖片處理的操作函數時,需要匯入對應的子模組,如果需要匯入多個子模組,則用逗號隔開,如:

from skimage import io,data,color

初始----python數位影像處理--:環境安裝與配置

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.