wpcutree.m
上传用户:haiyisale
上传日期:2013-01-09
资源大小:3246k
文件大小:1k
源码类别:

波变换

开发平台:

Matlab

  1. function [wpt,n2m] = wpcutree(wpt,level)
  2. %WPCUTREE Cut wavelet packet tree.
  3. %   T = WPCUTREE(T,L) cuts the tree T at level L.
  4. %
  5. %   In addition, [T,RN] = WPCUTREE(T,L) returns 
  6. %   the vector RN which contains the indices
  7. %   of the reconstructed nodes.
  8. %
  9. %   See also WPDEC, WPDEC2.
  10. %   M. Misiti, Y. Misiti, G. Oppenheim, J.M. Poggi 12-Mar-96.
  11. %   Last Revision: 23-May-2003.
  12. %   Copyright 1995-2004 The MathWorks, Inc.
  13. %   $Revision: 1.4.4.2 $  $Date: 2004/03/15 22:39:19 $
  14. % Check arguments.
  15. if nargin==1 , level = 0; end
  16. if level<0
  17.     error('Invalid level value.');
  18. end
  19. depth = treedpth(wpt);
  20. if (level>=depth) || (depth==0)
  21.     n2m = [];
  22.     return;
  23. end
  24. order = treeord(wpt);
  25. nottn = noleaves(wpt,'dp');
  26. K     = nottn(:,1)==level;
  27. n2m   = depo2ind(order,nottn(K,:));
  28. wpt   = nodejoin(wpt,n2m);