python(1)處理圖像

一提到數字圖像處理,可能大多數人就會想到matlab,但matlab也有自身的缺點:python

一、不開源,價格貴linux

二、軟件容量大。通常3G以上,高版本甚至達5G以上。windows

三、只能作研究,不易轉化成軟件。瀏覽器

所以,咱們這裏使用python這個腳本語言來進行數字圖像處理。函數

要使用python,必須先安裝python,通常是2.7版本以上,無論是在windows系統,仍是linux系統,安裝都是很是簡單的。工具

要使用python進行各類開發,就必須安裝對應的庫。這和matlab很是類似,只是matlab裏面叫工具箱(toolbox),而python裏面叫庫或包。安裝這些庫,通常都是使用pip來安裝。spa

使用python進行數字圖片處理,還得安裝Pillow包。雖然python裏面自帶一個PIL(python images library), 但這個庫如今已經中止更新了,因此使用Pillow, 它是由PIL發展而來的。操作系統

pip install Pillow

1、圖片的打開與顯示code

from PIL import Image
img=Image.open('d:/dog.png')
img.show()

雖然使用的是Pillow,但它是由PIL fork而來,所以仍是要從PIL中進行import. 使用open()函數來打開圖片,使用show()函數來顯示圖片。orm

這種圖片顯示方式是調用操做系統自帶的圖片瀏覽器來打開圖片,有些時候這種方式不太方便,所以咱們也可使用另上一種方式,讓程序來繪製圖片。

複製代碼
from PIL import Image
import matplotlib.pyplot as plt
img=Image.open('d:/dog.png')
plt.figure("dog")
plt.imshow(img)
plt.show()
複製代碼

這種方法雖然複雜了些,但推薦使用這種方法,它使用一個matplotlib的庫來繪製圖片進行顯示。matplotlib是一個專業繪圖的庫,至關於matlab中的plot,能夠設置多個figure,設置figure的標題,甚至可使用subplot在一個figure中顯示多張圖片。matplotlib 能夠直接安裝

pip install matplotlib

figure默認是帶axis的,若是沒有須要,咱們能夠關掉

plt.axis('off')

打開圖片後,可使用一些屬性來查看圖片信息,如

print img.size  #圖片的尺寸
print img.mode  #圖片的模式
print img.format  #圖片的格式

顯示結果爲:

(558, 450)
RGBA
PNG

2、圖片的保存

img.save('d:/dog.jpg')

就一行代碼,很是簡單。這行代碼不只能保存圖片,仍是轉換格式,如本例中,就由原來的png圖片保存爲了jpg圖片。

相關文章
相關標籤/搜索