(標準のドキュメントフォントサイズの)テキストを含む画像があり、テキストが読めなくなるように画像をぼかしようとしています。
ただし、PILのデフォルトのImageFilter.BLURは強すぎるため、あちこちで1つのピクセルを除いて、画像は空白になっています。
PILのどこかに弱いBLURがありますか?それとも、より良いフィルター/より良い方法がありますか?
(標準のドキュメントフォントサイズの)テキストを含む画像があり、テキストが読めなくなるように画像をぼかしようとしています。
ただし、PILのデフォルトのImageFilter.BLURは強すぎるため、あちこちで1つのピクセルを除いて、画像は空白になっています。
PILのどこかに弱いBLURがありますか?それとも、より良いフィルター/より良い方法がありますか?
BLUR
のプリセットImageFilter.Kernel
です:
class BLUR(BuiltinFilter):
name = "Blur"
filterargs = (5, 5), 16, 0, (
1, 1, 1, 1, 1,
1, 0, 0, 0, 1,
1, 0, 0, 0, 1,
1, 0, 0, 0, 1,
1, 1, 1, 1, 1
)
ここで、BuiltinFilterは、コンストラクターをバイパスするカーネルの単純なカスタマイズサブクラスであり、、、、を含みfilterargs
ます。言い換えれば、次のようになります。size
scale
offset
kernel
BLUR
BLUR = Kernel((5, 5), (1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1))
スケールは16
、オフセットと同様に、デフォルト(、25の重みの合計)に設定されます。
代わりに、より小さなカーネルを試して使用することができます。
mildblur = Kernel((3, 3), (1, 1, 1, 1, 0, 1, 1, 1, 1))
または、スケールとオフセットの値を試してみてください。