PythonPillow-画像へのフィルターの追加
ザ・ ImageFilter module 事前定義された一連のフィルターの定義が含まれています。 Image.filter()方法。これらのフィルターは、画像のルックアンドフィールを変更するために使用されます。
例
以下の例は画像のフィルタリングです-
from PIL import Image, ImageFilter
im = Image.open('jungleSaf2.jpg')
im1 = im.filter(ImageFilter.BLUR)
im1.show()
im2 = im.filter(ImageFilter.MinFilter(3))
im2.show()
im3 = im.filter(ImageFilter.MinFilter) # same as MinFilter(3)
im3.show()
上記のプログラムでは、 MinFilter()最小フィルターを作成するために使用されるメソッド。指定されたサイズのウィンドウで最小のピクセル値を選択します。
ImageFilter.MinFilter(size=3)
どこ、
size −カーネルサイズ(ピクセル単位)。
出力
上記のプログラムを保存して実行すると、元の画像、ぼやけた画像、および標準のPNG表示ユーティリティを使用したMinFilterでのぼやけた画像が次のように表示されます。
Original Image
Blurred Image
Image blurred with mini filter
フィルター
ピローライブラリの現在のバージョンは、以下に示す事前定義された画像強調フィルターのセットを提供します。
BLUR
CONTOUR
DETAIL
EDGE_ENHANCE
EDGE_ENHANCE_MORE
EMBOSS
FIND_EDGES
SHARPEN
SMOOTH
SMOOTH_MORE
例
次のPythonの例では、画像にぼかしフィルターを適用して保存し、標準のPNG表示ユーティリティを使用して表示します-
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(BLUR)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
出力
同じように、 image.filter() メソッド次のパラメータのいずれかを渡して、それぞれの出力を取得できます-
CONTOUR
DETAIL
EDGE_ENHANCE
EDGE_ENHANCE_MORE
EMBOSS
FIND_EDGES
SMOOTH
SMOOTH_MORE
SHARPEN
Python img.filter(CONTOUR)メソッド
次のPythonの例では、指定された画像にCONTOURフィルターを適用します。
例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(CONTOUR)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
出力
上記のプログラムを保存して実行すると、元の画像と、標準のPNG表示ユーティリティを使用してフィルタリングされた画像が次のように表示されます。
Original image
Filtered image
Python img.filter(DETAIL)メソッド
次のPythonの例では、指定された画像にDETAILフィルターを適用します。
例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(DETAIL)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
出力
上記のプログラムを保存して実行すると、次のように、元の画像と、標準のPNG表示ユーティリティを使用してフィルタリングされた画像が表示されます。
Original image
Filtered image
Python img.filter(EDGE_ENHANCE)メソッド
次のPythonの例では、EDGE_ENHANCEフィルターを指定された画像に適用します-
例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(EDGE_ENHANCE)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
出力
上記のプログラムを保存して実行すると、次のように、元の画像と、標準のPNG表示ユーティリティを使用してフィルタリングされた画像が表示されます。
Original image
Filtered image
Python img.filter(EDGE_ENHANCE_MORE)メソッド
次のPythonの例では、EDGE_ENHANCE_MOREフィルターを指定された画像に適用します。
例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(EDGE_ENHANCE_MORE)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
出力
上記のプログラムを保存して実行すると、次のように、元の画像と、標準のPNG表示ユーティリティを使用してフィルタリングされた画像が表示されます。
Original image
Filtered image
Python img.filter(EMBOSS)メソッド
次のPythonの例では、EMBOSSフィルターを指定された画像に適用します。
例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(EMBOSS)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
出力
上記のプログラムを保存して実行すると、元の画像と、標準のPNG表示ユーティリティを使用してフィルタリングされた画像が次のように表示されます。
Original image
Filtered image
Python img.filter(FIND_EDGES)メソッド
次のPythonの例では、FIND_EDGESフィルターを指定された画像に適用します。
例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(FIND_EDGES)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
出力
上記のプログラムを保存して実行すると、元の画像と、標準のPNG表示ユーティリティを使用してフィルタリングされた画像が次のように表示されます。
Original image
Filtered image
Python img.filter(SMOOTH)メソッド
次のPythonの例では、指定された画像にSMOOTHフィルターを適用します。
例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(SMOOTH)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
出力
上記のプログラムを保存して実行すると、元の画像と、標準のPNG表示ユーティリティを使用してフィルタリングされた画像が次のように表示されます。
Original image
Filtered image
Python img.filter(SHARPEN)メソッド
次のPythonの例では、指定された画像にSHARPENフィルターを適用します。
例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(SHARPEN)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
出力
上記のプログラムを保存して実行すると、元の画像と、標準のPNG表示ユーティリティを使用してフィルタリングされた画像が次のように表示されます。
Original image
Filtered image
次のPythonの例では、指定された画像にSHARPENフィルターを適用します。
例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(SHARPEN)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
出力
上記のプログラムを保存して実行すると、元の画像と、標準のPNG表示ユーティリティを使用してフィルタリングされた画像が次のように表示されます。
Original image
Filtered image