Wavelet Toolboxを用いた多重解像度解析について

9 ビュー (過去 30 日間)
NAOHIRO KIMURA
NAOHIRO KIMURA 2019 年 7 月 4 日
コメント済み: NAOHIRO KIMURA 2019 年 7 月 4 日
脳波などの生体情報を離散ウェーブレット変換を使って、解析対象の周波数成分のみを抽出し、それらを合成したいと考えています。その場合、wavedecを用いてレベル10まで1次元ウェーブレット分解を実施し、d7とd9を抽出して、合成する場合、waverecを用いて合成するのでしょうか?d7,d8,d9のように連続する周波数成分を合成するケースではwaverecを使えばよいのかな、とは思いますが、不連続の場合はwaverecではできないのではないかと思いました。

回答 (1 件)

Naoya
Naoya 2019 年 7 月 4 日
上記の場合ですと、wrcoef関数を使えばよいと思います。
wrcoef は、あるレベルの 近似成分または詳細成分の単一ブランチから信号を再構成することができます。
例えば、 レベル10 までのウェーブレット分解から、レベル7,9 の詳細成分のみから再構成する場合は、
load noisbloc; % 信号のロード
wname = 'db3'; % マザーウェーブレット
lv = 10; % 分解レベル指定
[C,L] = wavedec(noisbloc, lv, wname); % ウェーブレット分解
d7 = wrcoef('d',C,L,wname,7); % レベル7の詳細成分から再構成
d9 = wrcoef('d',C,L,wname,9); % レベル9の詳細成分から再構成
d79 = d7 + d9; % 合成
plot(d79) % 信号確認
  1 件のコメント
NAOHIRO KIMURA
NAOHIRO KIMURA 2019 年 7 月 4 日
そうなんですね。理解しました。早速試してみます。ありがとうございました。

サインインしてコメントする。

カテゴリ

Help Center および File Exchange機械学習および深層学習 についてさらに検索

タグ

製品


リリース

R2014a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!