Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pillowライブラリを使って画像にBoxBlur(ボックスブラー)を適用する方法

この記事では、Pythonの画像処理ライブラリ「Pillow」を使用して、画像にボックスフィルタによるぼかし処理を適用する方法を解説します。

PillowライブラリのImageFilterクラスには、ボックスぼかしフィルタを簡単に適用できるBoxBlur()メソッドが用意されています。このメソッドは、ぼかしの強さを決める「半径(radius)」という1つのパラメータのみを受け取ります。値が大きいほど、ぼかし効果が強くなります。

元画像

以下は、処理前のオリジナル画像です。

Pillowライブラリを使って画像にBoxBlur(ボックスブラー)を適用する方法

処理の手順

ボックスブラーを適用する流れは、次の4ステップです。

  1. Pillowから ImageImageFilter をインポートする
  2. 対象となる画像ファイルを開く
  3. BoxBlur() メソッドを呼び出し、ぼかしの半径を指定する
  4. 結果の画像を表示する

サンプルコード

実際のコードは非常にシンプルです。以下の例では、半径7のボックスブラーを画像に適用しています。

from PIL import Image, ImageFilter

im = Image.open('image_test.jpg')
im1 = im.filter(ImageFilter.BoxBlur(radius = 7))
im1.show()

コードのポイント:

  • Image.open() で画像を読み込みます。
  • filter() メソッドに ImageFilter.BoxBlur(radius=7) を渡すことで、ぼかし処理が行われます。
  • show() を呼び出すと、処理後の画像がデフォルトのビューアで表示されます。

実行結果

上記コードを実行すると、以下のように画像全体が滑らかにぼかされた結果が得られます。

Pillowライブラリを使って画像にBoxBlur(ボックスブラー)を適用する方法

radiusの値を変更することで、ぼかしの強度を自由に調整できます。軽いノイズ除去には小さい値を、強いぼかし表現には大きい値を指定するとよいでしょう。

  1. OpenCVのGaussianBlur()関数を使って画像をぼかす方法

    このプログラムでは、OpenCVが提供するGaussianBlur()関数を使用して、画像にぼかし(ブラー)を適用する方法を解説します。ガウシアンブラーとは?ガウシアンブラー(Gaussian Blur)とは、ガウス関数(正規分布関数)を利用して画像をぼかす処理のことです。画像内のノイズを除去したり、ディテール(細部)を滑らかに抑えたりする目的で、PhotoshopやGIMPなどのグラフィックソフトウェアで広く使われている基本的なフィルタです。また、物体検出などの前処理としても頻繁に活用されています。処理の流れ(アルゴリズム)ステップ1:cv2モジュールをインポートする。 ステップ2:元画像を

  2. OpenCVのblur()関数を使って画像をぼかす方法をわかりやすく解説

    この記事では、OpenCVが提供するblur()関数を使用して、画像にぼかし(ブラー)処理をかける方法を解説します。blur()は画像処理の基本となるフィルタの一つで、ノイズ除去や画像の前処理など、さまざまな場面で活用されます。 処理の流れ(アルゴリズム) 画像をぼかすための手順は以下の通りです。 ステップ1:OpenCVをインポートする。 ステップ2:対象となる画像を読み込む。 ステップ3:カーネルサイズを設定する。 ステップ4:blur()関数を呼び出し、画像とカーネルサイズを引数として渡す。 ステップ5:結果を表示する。 元画像 今回使用するサンプル画像は以下の通りです。 サンプルコー