您好,登錄后才能下訂單哦!
Pillow是Python里的圖像處理庫(PIL:Python Image Library),提供了了廣泛的文件格式支持,強大的圖像處理能力,主要包括圖像儲存、圖像顯示、格式轉換以及基本的圖像處理操作等。
顏色與RGBA值
計算機通常將圖像表示為RGB值,或者再加上alpha值(通透度,透明度),稱為RGBA值。在Pillow中,RGBA的值表示為由4個整數(shù)組成的元組,分別是R、G、B、A。整數(shù)的范圍0~255。RGB全0就可以表示黑色,全255代表黑色??梢圆聹y(255, 0, 0, 255)代表紅色,因為R分量最大,G、B分量為0,所以呈現(xiàn)出來是紅色。但是當alpha值為0時,無論是什么顏色,該顏色都不可見,可以理解為透明。
from PIL import ImageColor
print(ImageColor.getcolor('red', 'RGBA'))
#也可以只以RBG的方式查看
print(ImageColor.getcolor('black', 'RGB'))
圖像的坐標表示
圖像中左上角是坐標原點(0, 0),這和平常數(shù)學里的坐標系不太一樣。這樣定義的坐標系意味著,X軸是從左到右增長的,而Y軸是從上到下增長。
在Pillow中如何使用上述定義的坐標系表示一塊矩形區(qū)域?許多函數(shù)或方法要求提供一個矩形元組參數(shù)。元組參數(shù)包含四個值,分別代表矩形四條邊的距離X軸或者Y軸的距離。順序是(左,頂,右,底)。右和底坐標稍微特殊,表示直到但不包括??梢岳斫鉃閇左, 右)和[頂, 底)這樣左閉右開的區(qū)間。比如(3, 2, 8, 9)就表示了橫坐標范圍[3, 7];縱坐標范圍[2, 8]的矩形區(qū)域。
使用Pillow操作圖像
from PIL import Image
im_path = r'F:\Jupyter Notebook\csv_time_datetime_PIL\rabbit.jpg'
im = Image.open(im_path)
width, height = im.size
#寬高
print(im.size, width, height)
#格式,以及格式的詳細描述
print(im.format, im.format_description)
im.save(r'C:\Users\Administrator\Desktop\rabbit_copy.jpg')
im.show()
im.size返回一個元組,分別是寬和高。show()方法會調(diào)用系統(tǒng)默認圖像查看軟件,打開并顯示。im.format可查看圖像的格式。save()可保存處理后的圖片,如果未經(jīng)處理,保存后的圖像占用的空間(字節(jié)數(shù))一般也與原圖像不一樣,可能經(jīng)過了壓縮。
裁剪圖像
Image有個crop()方法接收一個矩形區(qū)域元組(上面有提到)。返回一個新的Image對象,是裁剪后的圖像,對原圖沒有影響。
im = Image.open(im_path)
cropedIm = im.crop((700, 100, 1200, 1000))
cropedIm.save(r'C:\Users\Administrator\Desktop\cropped.png')
調(diào)整圖像的大小
resize方法返回指定寬高度的新Image對象,接受一個含有寬高的元組作為參數(shù)。寬高的值得是整數(shù)。
im = Image.open(im_path)
width, height = im.size
resizedIm = im.resize((width, height+(1920-1080)))
resizedIm.save(r'C:\Users\Administrator\Desktop\resize.png')
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。