Pythonの一般的に使用される画像処理ライブラリ
多くの言語Pythonの画像処理ライブラリ、OpenCVの-PythonとPILの2つのライブラリの中で間違いなく最高の1つです。残念ながら、PILは今長い間更新されていないが、幸い、PILは枝に枕は、別の更新のために続けてきた、と枕のインストールと使用が比較的簡単です。
インストール
pip install pillow
具体的な使用
テスト画像
画像を開きます
from PIL import Image, ImageFilter, ImageOps
import numpy as np
img = Image.open("test.jpg", mode="r") # mode可以不给,给必须是"r"
共通の属性をのimg
print(img.size) # (640, 426)
print(img.format) # JPEG,图像格式
print(img.mode) # RGB
print(img.info) # 这个里面的信息目前没搞懂是啥意思
RGBはグレースケールに変換しました
img.convert("L")
結果は以下の通りであります:
画像フィルタリング
img.filter(ImageFilter.SHARPEN)
一般的なフィルタリングモードを次のように
ImageFilter.BLUR | ファジィフィルタ |
---|---|
ImageFilter.CONTOUR | 輪郭フィルタ |
ImageFilter.EMBOSS | 救済フィルタ |
ImageFilter.GaussianBlur | ガウスぼかし |
ImageFilter.MedianFilter | メジアンフィルター |
ImageFilter.SHARPEN | シャープ |
サイズ倍率
img.resize((224, 224))
配列NPから画像を読み取ります
img2array = np.asarray(img) # 把读取到的图像转成arrary数组
img = Image.fromarray(img2array) # 从np数组中读取图像
注:NPは、画像属性を持たないアレイ形式から読み出され、印刷がNoneです
画像の回転
img.rotate(60)
操作用画像保存した後
、あなたが操作を保存した後の操作で可変画像を受信する必要があります後の画像を保存したい場合は画像の全ての操作は、コピーで行われています
img_rotate = img.rotate(60)
img_rotate.save("rotate.jpg")
ディスプレイの画像
img.show()