関数 > 画像処理 > 変換領域 > 例: ウェーブレット変換フィルタ
例: ウェーブレット変換フィルタ
wave2d関数とiwave2d関数を使用して、それぞれ n レベルのウェーブレット変換と逆ウェーブレット変換を計算します。使用されるウェーブレットは、Burt-Adelson のラプラシアンピラミッドから導出された双直交ウェーブレットバイアスです。
wavescale関数を使用して、変換領域内の画像の表示を改善します。
* 
ウェーブレット変換では、標準のフーリエ変換よりも画像が圧縮されて表示されることがあります。
この例の使用方法については、画像処理の例についてを参照してください。
n レベルのウェーブレット変換の計算
1. 木星の紫外線映像の部分画像を読み込みます。
クリックしてこの式をコピー
(jupiter2.gif)
2. 3 色結合行列の 3 番目の成分を抽出して表示します。
クリックしてこの式をコピー
クリックしてこの式をコピー
(jup2_ext3.bmp)
3. レベル数を設定し、変換を適用します。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
(jup2_scaled.bmp)
典型的なウェーブレット変換後の画像が表示されます。画像の横方向と縦方向でローパスフィルタと帯域フィルタの組み合わせが異なる 4 つの領域に分かれています。鮮明に表示されているのは左上 (ローパス/ローパス) の領域だけです。これは、変換後の画像でその領域の係数がその他の領域よりも大きくなる傾向にあり、尺度を変更した場合、それより係数が小さい領域が不明瞭になるためです。このマスク効果を修正するため、変換後の各部分画像を個別に尺度化するルーチンが組み込まれています。
4. 逆関数を適用し、再構築後の画像が元の画像と同じであることを確認します。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
(jup2_rabs.bmp)
再構築後の画像を表示する前にその絶対値を求めています。ウェーブレット変換は理論上は完璧な再構築を保証するものですが、コンピュータの丸め誤差は生じます。
5. 丸め誤差がわずかであることを確認します。
クリックしてこの式をコピー
クリックしてこの式をコピー
ウェーブレット変換には正と負の両方の値があるので、表示する前に尺度を変更しておくと便利です。ただし、上に示した尺度変更後の変換画像のように、これによって情報が隠れることがよくあります。
変換領域内の画像の表示
1. ベクトル化した Nwavescale 関数を適用します。
クリックしてこの式をコピー
2. 生成された画像を尺度化して表示します。
クリックしてこの式をコピー
クリックしてこの式をコピー
(jup2_scaled2.bmp)
部分画像の独立性を保つことによって表示が改善されたことがはっきりわかります。ウェーブレット変換のレベルが上がるほど、scale関数の代わりに wavescale 関数を使用する利点はさらに大きくなります。
これは役に立ちましたか?