Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

wdencmp

ノイズ除去または圧縮

説明

[XC,CXC,LXC,PERF0,PERFL2] = wdencmp('gbl',X,wname,N,THR,SORH,KEEPAPP) は、グローバルな正のしきい値 THR を使用したウェーブレット係数のしきい値処理によって取得された入力データ X のノイズ除去または圧縮したバージョン XC を返します。X は実数値のベクトルまたは行列です。[CXC,LXC] は、XCN レベル ウェーブレット分解構造です (詳細については、wavedec または wavedec2 を参照)。PERFL2PERF0 は、それぞれ L2 ノルムの回復スコアと圧縮スコア (パーセント単位) です。KEEPAPP = 1 の場合、Approximation 係数は維持されます。KEEPAPP = 0 の場合、Approximation 係数をしきい値処理できます。

[___] = wdencmp('gbl',C,L,wname,N,THR,SORH,KEEPAPP) は、ノイズ除去または圧縮するデータのウェーブレット分解構造 [C,L] を使用します。

[___] = wdencmp('lvd',X,wname,N,THR,SORH) は、レベル依存のしきい値 THR を使用します。Approximation 係数は維持されます。

[___] = wdencmp('lvd',C,L,wname,N,THR,SORH) は、ウェーブレット分解構造 [C,L] を使用します。

すべて折りたたむ

Donoho-Johnstone のグローバルしきい値を使用して、1 次元の電力消費データのノイズを除去します。

信号を読み込み、ノイズ除去用のセグメントを選択します。

load leleccum; indx = 2600:3100;
x = leleccum(indx);

ddencmp を使用して、既定のグローバルしきい値を決定し、信号のノイズを除去します。元の信号とノイズ除去後の信号をプロットします。

[thr,sorh,keepapp] = ddencmp('den','wv',x);
xd = wdencmp('gbl',x,'db3',2,thr,sorh,keepapp);
subplot(211)
plot(x); title('Original Signal');
subplot(212)
plot(xd); title('Denoised Signal');

Figure contains 2 axes objects. Axes object 1 with title Original Signal contains an object of type line. Axes object 2 with title Denoised Signal contains an object of type line.

Donoho-Johnstone のユニバーサルなしきい値を使用して、加法性ホワイト ガウス ノイズでイメージのノイズを除去します。

イメージを読み込み、ホワイト ガウス ノイズを付加します。

load sinsin
Y = X+18*randn(size(X));

ddencmp を使用してしきい値を取得します。

[thr,sorh,keepapp] = ddencmp('den','wv',Y);

イメージのノイズを除去します。次数 4 の Symlet と 2 レベルのウェーブレット分解を使用します。元のイメージ、ノイズを含むイメージ、およびノイズを除去した結果をプロットします。

xd = wdencmp('gbl',Y,'sym4',2,thr,sorh,keepapp);
subplot(2,2,1)
imagesc(X)
title('Original Image')
subplot(2,2,2)
imagesc(Y)
title('Noisy Image')
subplot(2,2,3)
imagesc(xd)
title('Denoised Image')

Figure contains 3 axes objects. Axes object 1 with title Original Image contains an object of type image. Axes object 2 with title Noisy Image contains an object of type image. Axes object 3 with title Denoised Image contains an object of type image.

入力引数

すべて折りたたむ

ノイズ除去または圧縮する入力データ。実数値のベクトルまたは行列で指定します。

データ型: double

圧縮またはノイズ除去するデータのウェーブレット展開係数。実数値のベクトルとして指定します。データが 1 次元の場合、Cwavedec の出力です。データが 2 次元の場合、Cwavedec2 の出力です。

例: [C,L] = wavedec(randn(1,1024),3,'db4')

データ型: double

圧縮またはノイズ除去する信号またはイメージのウェーブレット展開係数のサイズ。正の整数のベクトルまたは行列として指定します。

信号の場合、Lwavedec の出力です。イメージの場合、Lwavedec2 の出力です。

例: [C,L] = wavedec(randn(1,1024),3,'db4')

データ型: double

ノイズ除去または圧縮に使用するウェーブレットの名前。文字ベクトルまたは string スカラーとして指定します。詳細については、wavemngr を参照してください。wdencmpwname を使用して XN レベル ウェーブレット分解を生成します。

ウェーブレット分解のレベル。正の整数として指定します。

ウェーブレット係数に適用するしきい値。スカラー、実数値のベクトル、または実数値の行列として指定します。

  • 'gbl' の場合、THR はスカラーです。

  • 1 次元のケースで 'lvd' オプションの場合、THR はレベル依存のしきい値を含む長さ N の実数値のベクトルです。

  • 2 次元のケースで 'lvd' オプションの場合、THR は 3 行 N 列の行列で、水平、対角、垂直の 3 つの方向でレベル依存のしきい値が含まれます。

データ型: double

実行するしきい値処理のタイプ。

  • 's' — ソフトなしきい値処理

  • 'h' — ハードなしきい値処理

詳細については、wthresh を参照してください。

しきい値の近似設定。0 または 1 として指定します。KEEPAPP = 1 の場合、Approximation 係数はしきい値処理できません。KEEPAPP = 0 の場合、Approximation 係数をしきい値処理できます。

データ型: double

出力引数

すべて折りたたむ

ノイズ除去または圧縮されたデータ。実数値のベクトルまたは行列として返されます。XCX は同じ次元になります。

ノイズ除去または圧縮されたデータ XC のウェーブレット展開係数。実数値のベクトルとして返されます。LXC には、レベルごとの係数の数が格納されます。

ノイズ除去または圧縮されたデータ XC のウェーブレット展開係数のサイズ。正の整数のベクトルまたは行列として返されます。データが 1 次元の場合、LXC は正の整数のベクトルになります (詳細については、wavedec を参照)。データが 2 次元の場合、LXC は正の整数の行列になります (詳細については、wavedec2 を参照)。

圧縮スコア。実数として返されます。PERF0 は、しきい値が 0 に等しくなる係数のパーセンテージです。

[C,L]X のウェーブレット分解構造を表す場合、PERFL2 = 100 * (CXC のベクトル ノルム / C のベクトル ノルム)2 です。

X が 1 次元信号で 'wname' が直交ウェーブレットの場合、PERFL2 は次のように省略されます。

100XC2X2

アルゴリズム

ノイズ除去と圧縮の手順には、次の 3 つのステップが含まれます。

  1. 分解。

  2. しきい値処理。

  3. 再構成。

2 つの手順の違いは、手順 2 にあります。圧縮では、ウェーブレット分解の各レベルでしきい値が選択され、ハードなしきい値処理が Detail 係数に適用されます。

参照

[1] DeVore, R. A., B. Jawerth, and B. J. Lucier. “Image Compression Through Wavelet Transform Coding.” IEEE Transactions on Information Theory. Vol. 38, Number 2, 1992, pp. 719–746.

[2] Donoho, D. L. “Progress in Wavelet Analysis and WVD: A Ten Minute Tour.” Progress in Wavelet Analysis and Applications (Y. Meyer, and S. Roques, eds.). Gif-sur-Yvette: Editions Frontières, 1993.

[3] Donoho, D. L., and I. M. Johnstone. “Ideal Spatial Adaptation by Wavelet Shrinkage.” Biometrika. Vol. 81, pp. 425–455, 1994.

[4] Donoho, D. L., I. M. Johnstone, G. Kerkyacharian, and D. Picard. “Wavelet Shrinkage: Asymptopia?” Journal of the Royal Statistical Society, series B, Vol. 57, No. 2, pp. 301–369, 1995.

[5] Donoho, D. L., and I. M. Johnstone. “Ideal denoising in an orthonormal basis chosen from a library of bases.” C. R. Acad. Sci. Paris, Ser. I, Vol. 319, pp. 1317–1322, 1994.

[6] Donoho, D. L. “De-noising by Soft-Thresholding.” IEEE Transactions on Information Theory. Vol. 42, Number 3, pp. 613–627, 1995.

拡張機能

バージョン履歴

R2006a より前に導入