reconstruct DWT with detail 2 to detail 5 for 1-D signal

4 ビュー (過去 30 日間)
claire
claire 2011 年 10 月 24 日
I'm using db8 DWT for my 1-D signal How can I keep details between detail(2) to detail(5) and remove the others and reconstruct the signal with those keeped?

採用された回答

Wayne King
Wayne King 2011 年 10 月 24 日
[C,L] = wavedec(x,8,'db8');
Cnew = zeros(size(C));
indices = cumsum(L);
Cnew(1:L(1)) = C(1:L(1));
Cnew(indices(4)+1:indices(9)) = C(indices(4)+1:indices(9));
xnew = waverec(Cnew,L,'db8');

その他の回答 (1 件)

Wayne King
Wayne King 2011 年 10 月 24 日
Hi I'm assuming you want to keep the level 5 scaling (approximation) coefficients.
Let x be your signal. You can zero out the finest scale details and reconstruct your approximation with the following code.
[C,L] = wavedec(x,5,'db8');
C(L(end-1)+1:end) = 0;
xnew = waverec(C,L,'db8');
Are you sure what to just zero out all the finest details? Consider using wden, or at least wthresh on the finest scale details.
  3 件のコメント
Wayne King
Wayne King 2011 年 10 月 24 日
If you are only keeping details 2 to 5, why do you decompose your signal down to level 8? what is the point of that?
claire
claire 2011 年 10 月 24 日
I need to keep later details from level 5 to level 8 to extract others features that I need from my signal because small pics in the signal are better detected in high levels

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

カテゴリ

Help Center および File ExchangeSignal Analysis についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by