はじめに
ここでは、skimage restoration unwrap_phaseによりラッピングした画像をアンラッピングする例について説明する。
コード

解説
モジュールのインポート
画像データの読み込みとグレースケール化
ギムノカリキュウム・海王丸の画像を読み込む。
データ形式を0-1のfloat型にした後にrgb2grayによりグレースケールにする。

画像のデータ範囲をリスケール
exposure.rescale_intensity()によりデータの範囲を(0, 4 * np.pi)にリスケールする。
rescale_intensityについては下記で解説した。

[scikit-image] 8. 画像処理におけるコントラスト補正テクニック
scikit-imageライブラリを用いた画像のコントラスト補正テクニックを解説。rescale_intensity、equalize_hist、equalize_adapthistなどの均等化関数の特徴と使用方法を実例とともに紹介し、効果的な画像処理手法を学びます。
位相ラッピング像の生成
1j * imageにより画像を複素数にする。それの指数をnp.exp()でとることでオイラーの公式が適用できて、np.angle()で偏角をとることで(-π, π)でラッピングされたデータを得ることができる。
位相アンラッピング像の生成
画像の表示
Imagegrid により画像を表示した。
cbar_mode=”each”などを記述しないとカラーバーは表示されない。
cbar_pad=0.03は画像とカラーバーの間隔となる。
Imagegridでカラーバーを表示するには、grid.cbar_axes[3].colorbar(im3)のようにする。
コードをダウンロード(.pyファイル) コードをダウンロード(.ipynbファイル)参考
Phase Unwrapping — skimage 0.25.2 documentation

オイラーの公式 - Wikipedia
位相アンラッピング(Phase unwrapping)
1D Phase Unwappingをサクッと行う 1.元データの作成 まず元データを作成。適当なデータを作る。 In : from numpy imp...
コメント