Main Content

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

waverec2

多重レベル 2 次元離散ウェーブレット変換の再構成

    説明

    imrec = waverec2(c,s,wname) は、多重レベル離散ウェーブレット変換 (DWT) c とブックキーピング行列 s に基づいて、イメージ imrec を再構成します。関数 waverec2 は、wname で指定されたウェーブレットを使用します。

    imrec = waverec2(c,s,wname) は、imrec = appcoef2(c,s,wname,0) と等価です。

    imrec = waverec2(c,s,LoR,HiR) は、指定されたローパス (スケーリング) 再構成フィルター LoR とハイパス (ウェーブレット) 再構成フィルター HiR をそれぞれ使用して imrec を再構成します。

    imrec = waverec2(___,Name=Value) は、前の構文の入力引数に加えて、名前と値の引数を 1 つ以上使用してオプションを指定します。たとえば、ローパス (スケーリング) 係数のゲイン 0.25 を指定するには、LowpassGain0.25 に設定します。

    すべて折りたたむ

    イメージを読み込みます。

    load woman

    sym4 ウェーブレットを使用して、イメージのレベル 2 ウェーブレット分解を実行します。

    wv = 'sym4';
    [c,s] = wavedec2(X,2,wv);

    ウェーブレット分解構造からイメージを再構成します。

    xrec = waverec2(c,s,wv);

    完全再構成されているかチェックします。

    max(abs(X(:)-xrec(:)))
    ans = 2.0989e-10
    

    六角形のイメージをインポートします。

    im = imread("hexagon.jpg");
    imagesc(im)
    title("Original Image")

    Figure contains an axes object. The axes object with title Original Image contains an object of type image.

    bior4.4 ウェーブレットを使用して、イメージの 1 レベル離散ウェーブレット分解を取得します。

    wv = "bior4.4"; 
    lev = 1;
    [c,s] = wavedec2(im,lev,wv);

    最も細かいスケールの HH サブバンドを使用せずにイメージを再構成します。HH サブバンドがイメージの対角方向の Detail に対応していることを思い出してください。

    dgain = ones(lev,3);
    dgain(lev,3) = 0;
    imrec = waverec2(c,s,wv,DetailGain=dgain);
    imagesc(imrec)
    title("Reconstruction")

    Figure contains an axes object. The axes object with title Reconstruction contains an object of type image.

    入力引数

    すべて折りたたむ

    ウェーブレット分解ベクトル。実数値のベクトルとして指定します。ベクトル c には、Approximation 係数と Detail 係数がレベルごとに格納されます。ブックキーピング行列 sc を解析するために使用されます。cswavedec2 の出力です。

    データ型: double

    ブックキーピング行列。整数値の行列として指定します。行列 s は、各レベルのウェーブレット係数の次元を格納し、ウェーブレット分解ベクトル c の解析に使用されます。cswavedec2 の出力です。

    データ型: double

    解析ウェーブレット。文字ベクトルまたは string スカラーとして指定します。

    メモ

    waverec2 では、タイプ 1 (直交) とタイプ 2 (双直交) のウェーブレットのみがサポートされます。直交ウェーブレットと双直交ウェーブレットの一覧については、wfilters を参照してください。

    ウェーブレット再構成フィルター。偶数長の実数値ベクトルのペアとして指定します。LoR はローパス (スケーリング) 再構成フィルター、HiR はハイパス (ウェーブレット) 再構成フィルターです。LoRHiR の長さは等しくなければなりません。詳細については、wfilters を参照してください。

    データ型: double

    名前と値の引数

    オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。

    例: imrec = waverec2(c,s,Lo,Hi,LowpassGain=0.5) は、ローパス ゲインを 0.5 に設定します。

    R2023a 以降

    ウェーブレット サブバンド ゲイン。lev 行 3 列の実数値の行列として指定します。ここで、lev は DWT のレベルです。lev は size(s,1)-2 に等しくなります。DetailGain は、LH (水平方向の Detail)、HL (垂直方向の Detail)、HH (対角方向の Detail) の順でウェーブレット サブバンドごとに 1 つずつ、合計 3 つの列をもたなければなりません。DetailGain の要素は区間 [0, 1] の実数で、関数 waverec2 によって各サブバンドの係数に適用されるゲインを表します。

    例: imrec = waverec2(c,s,Lo,Hi,DetailGain=[0 1 1; 0 1 1]) は、LH サブバンドのゲインをすべてのレベルで 0 に設定します。

    データ型: double

    R2023a 以降

    ローパス ゲイン。区間 [0, 1] 内の実数として指定します。関数 waverec2 は、再構成で使用するスケーリング係数にこのゲインを適用します。

    例: imrec = waverec2(c,s,"db2",Lowpassgain=0) は、ローパス (スケーリング) 係数のゲインを 0 に設定します。

    データ型: double

    ヒント

    • cs がインデックス付きイメージの解析またはトゥルーカラー イメージの解析から取得される場合、imrec はそれぞれ m 行 n 列の行列または m×n×3 の配列です。

      イメージ形式の詳細については、imageimfinfo のリファレンス ページを参照してください。

    拡張機能

    バージョン履歴

    R2006a より前に導入

    すべて展開する