reconstruct DWT with detail 2 to detail 5 for 1-D signal
    4 views (last 30 days)
  
       Show older comments
    
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?
0 Comments
Accepted Answer
  Wayne King
    
      
 on 24 Oct 2011
        [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');
0 Comments
More Answers (1)
  Wayne King
    
      
 on 24 Oct 2011
        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 Comments
  Wayne King
    
      
 on 24 Oct 2011
				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?
See Also
Categories
				Find more on Signal Analysis in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
