[matplotlib] 114. 画像のアルファブレンド

matplotlib

はじめに

matplotlib.pyplotのimshowで2つの画像をアルファブレンドする方法について説明する。

コード&解説

モジュールのインポート

バージョン

画像の読み込み

すみれ丸と兜丸の画像を読み込む。サイズはともに(800, 800, 3)となっている。

画像を表示

読み込んだ画像を表示すると以下のようになる。

透明度用の2d配列の作成

透明度(アルファ)用の配列をnp.linspace、np.repeatで作成する。alpha2はalpha1を反転させたものとなっている。

透明度用の画像を表示

透明度(アルファ)用の画像は以下のようになる。

RGBA画像の作成

RGB配列に透明度の配列(A配列)をnp.dstack()で結合してRGBA配列とする。作成したRGBA画像は以下のようになる。

アルファブレンド

上の画像を同じ図中に表示すればアルファブレンド画像となる。

コードをダウンロード(.pyファイル)

コードをダウンロード(.ipynbファイル)

参考

numpy.dstack — NumPy v1.21 Manual
アルファブレンド - Wikipedia

コメント