這篇文章會介紹使用 Python 的 Pillow 第三方函式庫,實作裁切與旋轉圖片的效果。
原文參考:裁切與旋轉圖片
- 本篇使用的 Python 版本為 3.7.12,所有範例可使用 Google Colab 實作,不用安裝任何軟體 ( 參考:使用 Google Colab )
- 使用 Colab 操作需要連動 Google 雲端硬碟,請參考:連動 Google Drive
輸入下列指令安裝 Pillow,根據個人環境使用 pip 或 pip3,如果使用 Colab 或 Anaconda Jupyter,已經內建 Pillow 函式庫。
!pip install Pillow
使用 Pillow Image 裡的 crop 方法,指定要裁切的範圍 ( 左上座標到右下座標 ),就能裁切圖片。
import os
os.chdir('/content/drive/MyDrive/Colab Notebooks') # Colab 換路徑使用
from PIL import Image
img = Image.open('./oxxostudio.jpg') # 開啟圖片
img_crop = img.crop((0,0,200,100)) # 裁切圖片
img_crop.save('./test.jpg') # 存檔
# img_crop.show() # Colab 不支援直接顯示,如果使用本機環境會開啟圖片檢視器
接著使用 Image 的 ratate 方法,指定要旋轉的角度 ( 逆時鐘方向為正 ),就能旋轉圖片,除了旋轉的角度,還能設定 expand 參數,expand 預設 0 表示旋轉後仍保持原本的長寬尺寸 ( 旋轉後會被裁切 ),設定 1 則會保留完整圖形 ( 旋轉後圖片的尺寸會改變 )。
import os
os.chdir('/content/drive/MyDrive/Colab Notebooks') # Colab 換路徑使用
from PIL import Image
img = Image.open('./oxxostudio.jpg')
img_r1 = img.rotate(30) # 旋轉 30 度
img_r2 = img.rotate(30,expand=1) # 旋轉 30 度,expand 設定 1
img_r1.save('./test1.jpg')
img_r2.save('./test2.jpg')
一但能夠透過 Python 進行圖片的才切與旋轉,就可以在不需要開啟影像處理軟體的狀態下,快速調整圖片,如果搭配 glob 函式庫,更是可以進行批次調整,相當方便喔!
大家好,我是 OXXO,是個即將邁入中年的斜槓青年,我已經寫了超過 400 篇 Python 的教學,有興趣可以參考下方連結呦~ ^_^