最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python圖片處理庫Pillow實現(xiàn)簡單PS功能

 更新時間:2021年11月01日 09:22:46   作者:Python 技術  
Python 屆處理圖片最強的庫是 PIL(Python Image Library),但由于該庫只支持 2.x 版本,在此基礎上做了擴展,出了一個兼容 3.x 的版本也就是 Pillow,因此,我們今天要用的庫就是Pillow

9d13c8cd16c42f0f8bd386909f0cc1d3.png

文 | 豆豆

來源:Python 技術「ID: pythonall」

在我們的日常生活和工作中有不少場景需要簡單處下理圖片,很多人都是依賴 PS、美圖秀秀等各種圖像處理工具,殊不知在你打開軟件的一瞬間 Python 就已經(jīng)將圖片處理完了。聽起來是不是很神奇,正所謂是 Python 在手,啥也不愁。

安裝

老規(guī)矩,先通過 pip 安裝到本地機器。

pip install Pillow

基本操作

打開圖像

可以通過 Image 類來操控圖片,比如打開一張圖片并獲取其基本信息。

from PIL import Image, ImageFilter, ImageEnhance, ImageDraw, ImageFont
img = Image.open('cat.png')
print(F'圖片大小為 {img.format}, 格式為 {img.size}, 模式為{img.mode}')
 
# 圖片大小為 JPEG, 格式為 (3458, 3456), 模式為 RGB

轉換格式

如果給目標圖片轉換格式,可以通過 save 函數(shù)來實現(xiàn)。

img.save("cat.png ")

之后你就會在同目錄下得到一張擴展名為 png 的圖片了。

97dd4960b536f45df8638ba1ae53f080.jpg

展示圖片

直接通過 show 函數(shù)來顯示圖片。

img.show()

剪裁

使用 crop 函數(shù)傳入一個四元祖坐標來剪裁圖片。

point = (1500, 800, 3000, 2300)
img_crop = img.crop(point)
img_crop.show()

516e8ded442411a6f4f4511a4dcf1d07.png

合并

通過 paste 函數(shù)傳入合并的圖像和坐標來實現(xiàn)兩張圖片的合并,那如果要合并多張圖片呢,當然是直接調用多次就好了呀。

img.paste(img_crop, (0, 0), None)
img.show(

52afdf599b99b3e23ff66f3c6be82efe.png

縮略圖

有時候圖像過大,這時候就顯示出縮略圖的必要了,可以通過 thumbnail 函數(shù)傳入 size 來實現(xiàn)圖片的縮小。

thumb_size = (345, 345)
img.thumbnail(thumb_size)
img.show()

2ecd2aef4577550872f2e34a1835ab46.png

旋轉

使用 transpose 函數(shù)傳入旋轉角度來實現(xiàn)圖片的翻轉。

可以傳入的參數(shù)有以下幾種:

Image.ROTATE_90:逆時針旋轉 90°

Image.ROTATE_180:逆時針旋轉 180°

Image.ROTATE_270:逆時針旋轉 270°

Image.FLIP_LEFT_RIGHT:左右翻轉

Image.FLIP_TOP_BOTTOM:上下翻轉

img_rotate = img.transpose(Image.ROTATE_90)
img_rotate.show()

9725812058d7fe9979028f10ae11e833.png

濾鏡

當然,我們還可以對圖片做一些濾鏡處理。

  • 高斯模糊處理
img_gaussianblur = img.filter(ImageFilter.GaussianBlur(30))
img_gaussianblur.show()

d293cd1ae9ac46020730f6dbaba9b7b2.png

  • 獲取照片輪廓
img_contour = img.filter(ImageFilter.CONTOUR)
img_contour.show()

e5488afef44bff97bce40b65ffc542f0.png

  • 亮度增強

如果照片亮度不夠,還可以對照片進行亮度增強。

color = ImageEnhance.Color(img)
img_color = color.enhance(1.5)
img_color.show()

4e2efe29ff8cf6eb578e023bf99eaece.png

二次創(chuàng)作

當然,如果想對圖片進行二次創(chuàng)作,比如添加一些輔助線,文字之類的可以用 ImageDraw 類來完成。

畫線

draw = ImageDraw.Draw(img)
draw.line((0, 0) + img.size, fill=20, width=3)
draw.line((0, img.size[1], img.size[0], 0), fill=200, width=3)
img.show()

3e459b70ecdfa5497defa58e7d0dddc6.png

文字

draw = ImageDraw.Draw(img)
font = ImageFont.truetype('AliPuHui-Bold.ttf', 200)
text = 'This is a cat!'
draw.text((450, 450), text, font=font, fill='pink')
img.show()

bc4301923978110e24e68f96f5266429.png

當然,如果有多行文字的話,直接加入換行符 \n 即可。

457e6e60caccd58d1e6b4609abfff671.png

總結

今天派森醬帶大家一起通過使用 Pillow 庫對圖片進行一些簡單的操作,事實上 Pillow 庫遠不止此,將這些簡單的操作進行組合甚至可以自創(chuàng)表情包,期待小伙伴們自行發(fā)掘更多更好玩的用法呀~

以上就是python圖片處理庫Pillow實現(xiàn)簡單PS功能的詳細內容,更多關于Pillow庫實現(xiàn)簡單PS的資料請關注腳本之家其它相關文章!

相關文章

最新評論

中阳县| 宁明县| 神农架林区| 灵寿县| 淮安市| 富宁县| 麻江县| 博罗县| 民和| 延长县| 万年县| 祁门县| 江门市| 罗田县| 山东省| 启东市| 贡嘎县| 河池市| 宁河县| 天峻县| 巩留县| 贵港市| 辽宁省| 商水县| 嘉兴市| 易门县| 壶关县| 镇安县| 武乡县| 大埔县| 习水县| 泰和县| 娄底市| 天峻县| 哈巴河县| 阿克苏市| 连平县| 井研县| 景德镇市| 灌阳县| 井研县|