MATLAB Answers

0

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

Asked by NAOHIRO KIMURA on 4 Jul 2019
Latest activity Commented on by NAOHIRO KIMURA on 4 Jul 2019
脳波などの生体情報を離散ウェーブレット変換を使って、解析対象の周波数成分のみを抽出し、それらを合成したいと考えています。その場合、wavedecを用いてレベル10まで1次元ウェーブレット分解を実施し、d7とd9を抽出して、合成する場合、waverecを用いて合成するのでしょうか?d7,d8,d9のように連続する周波数成分を合成するケースではwaverecを使えばよいのかな、とは思いますが、不連続の場合はwaverecではできないのではないかと思いました。

  0 Comments

Sign in to comment.

Tags

Products


Release

R2014a

1 Answer

Naoya
Answer by Naoya
on 4 Jul 2019

上記の場合ですと、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 Comment

NAOHIRO KIMURA on 4 Jul 2019
そうなんですね。理解しました。早速試してみます。ありがとうございました。

Sign in to comment.