用python處理圖片之打開\顯示\保存圖像的方法
一提到數(shù)字圖像處理,可能大多數(shù)人就會想到matlab,但matlab也有自身的缺點:
1、不開源,價格貴
2、軟件容量大。一般3G以上,高版本甚至達5G以上。
3、只能做研究,不易轉化成軟件。
因此,我們這里使用python這個腳本語言來進行數(shù)字圖像處理。
要使用python,必須先安裝python,一般是2.7版本以上,不管是在windows系統(tǒng),還是linux系統(tǒng),安裝都是非常簡單的。
要使用python進行各種開發(fā),就必須安裝對應的庫。這和matlab非常相似,只是matlab里面叫工具箱(toolbox),而python里面叫庫或包。安裝這些庫,一般都是使用pip來安裝。
使用python進行數(shù)字圖片處理,還得安裝Pillow包。雖然python里面自帶一個PIL(python images library), 但這個庫現(xiàn)在已經(jīng)停止更新了,所以使用Pillow, 它是由PIL發(fā)展而來的。
pip install Pillow
一、圖片的打開與顯示
from PIL import Image
img=Image.open('d:/dog.png')
img.show()
雖然使用的是Pillow,但它是由PIL fork而來,因此還是要從PIL中進行import. 使用open()函數(shù)來打開圖片,使用show()函數(shù)來顯示圖片。
這種圖片顯示方式是調用操作系統(tǒng)自帶的圖片瀏覽器來打開圖片,有些時候這種方式不太方便,因此我們也可以使用另上一種方式,讓程序來繪制圖片。
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是一個專業(yè)繪圖的庫,相當于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
二、圖片的保存
img.save('d:/dog.jpg')
就一行代碼,非常簡單。這行代碼不僅能保存圖片,還是轉換格式,如本例中,就由原來的png圖片保存為了jpg圖片。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Keras函數(shù)式(functional)API的使用方式
這篇文章主要介紹了Keras函數(shù)式(functional)API的使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-02-02
python+matplotlib實現(xiàn)禮盒柱狀圖實例代碼
這篇文章主要介紹了python+matplotlib實現(xiàn)禮盒柱狀圖實例代碼,具有一定借鑒價值,需要的朋友可以參考下2018-01-01
Python使用自帶的ConfigParser模塊讀寫ini配置文件
這篇文章主要介紹了Python使用自帶的ConfigParser模塊讀寫ini配置文件的方法,ConfigParser中包含了對ini的節(jié)section的一些基本操作,使得改寫ini時非常簡便,需要的朋友可以參考下2016-06-06
基于Python批量鑲嵌拼接遙感影像/柵格數(shù)據(jù)(示例代碼)
這篇文章主要介紹了基于Python批量鑲嵌拼接遙感影像/柵格數(shù)據(jù),使用時直接修改Mosaic_GDAL函數(shù)的入?yún)⒕托辛?選擇數(shù)據(jù)存放的路徑會自動拼接,命名也會自己設置無需額外修改,需要的朋友可以參考下2023-10-10

