裁切與旋轉圖片
這篇文章會介紹使用 Python 的 Pillow 第三方函式庫,實作裁切與旋轉圖片的效果。
- 本篇使用的 Python 版本為 3.7.12,所有範例可使用 Google Colab 實作,不用安裝任何軟體 ( 參考:使用 Google Colab )
- 使用 Colab 操作需要連動 Google 雲端硬碟,請參考:連動 Google Drive
安裝 Pillow
輸入下列指令安裝 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')
意見回饋
如果有任何建議或問題,可傳送「意見表單」給我,謝謝~