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

波变换

开发平台:

Matlab

  1. function t = edwttree(x,depth,wname,modeDWT,userdata)
  2. %EDWTTREE Constructor for the class EDWTTREE.
  3. %   T = EDWTTREE(X,DEPTH,WNAME) returns an epsilon_dwt tree T.
  4. %   If X is a vector, the tree is of order 2.
  5. %   If X is a matrix, the tree is of order 4.
  6. %   The DWT extension mode is the current one.
  7. %
  8. %   T = EDWTTREE(X,DEPTH,WNAME,DWTMODE) returns an epsilon_dwt tree T
  9. %   built using DWTMODE as DWT extension mode.
  10. %
  11. %   With T = EDWTTREE(X,DEPTH,WNAME,DWTMODE,USERDATA)
  12. %   you may set a userdata field.
  13. %   M. Misiti, Y. Misiti, G. Oppenheim, J.M. Poggi 09-Sep-1999.
  14. %   Last Revision: 14-May-2003.
  15. %   Copyright 1995-2004 The MathWorks, Inc.
  16. %   $Revision: 1.5.4.2 $  $Date: 2004/03/15 22:36:01 $ 
  17. %===============================================
  18. % Class RWVTREE (parent class: DTREE)
  19. % Fields:
  20. %   dtree   - Parent object
  21. %   dwtMode - DWTMODE type
  22. %   wavInfo - Structure (wavelet infos)
  23. %     wavName : Wavelet Name.
  24. %     Lo_D    : Low Decomposition filter
  25. %     Hi_D    : High Decomposition filter
  26. %     Lo_R    : Low Reconstruction filter
  27. %     Hi_R    : High Reconstruction filter
  28. %===============================================
  29. % Check arguments.
  30. %-----------------
  31. nbIn = nargin;
  32. if nbIn < 3
  33.   error('Not enough input arguments.');
  34. end
  35. switch nbIn
  36.   case 3 , userdata = {}; modeDWT  = 'per';
  37.   case 4 , userdata = {};
  38. end
  39. % Tree creation.
  40. %---------------
  41. order = 4;
  42. t = dtree(order,depth,x,'spsch',[1 0 0 1],'spflg',0,'ud',userdata);
  43. % Dwtmode  & Wavelet infos.
  44. %--------------------------
  45. obj.dwtMode = modeDWT;
  46. obj.waveInfo.wavName = wname;
  47. [ obj.waveInfo.Lo_D,obj.waveInfo.Hi_D, ...
  48.   obj.waveInfo.Lo_R,obj.waveInfo.Hi_R ] = wfilters(wname);
  49. % Built object.
  50. %---------------
  51. t = class(obj,'edwttree',t);
  52. t = expand(t);