dwt3
Singlelevel 3D discrete wavelet transform
Description
Examples
SingleLevel ThreeDimensional Wavelet Decomposition
Define the original 3D data.
X = reshape(1:64,4,4,4)
X = X(:,:,1) = 1 5 9 13 2 6 10 14 3 7 11 15 4 8 12 16 X(:,:,2) = 17 21 25 29 18 22 26 30 19 23 27 31 20 24 28 32 X(:,:,3) = 33 37 41 45 34 38 42 46 35 39 43 47 36 40 44 48 X(:,:,4) = 49 53 57 61 50 54 58 62 51 55 59 63 52 56 60 64
Perform singlelevel decomposition of X
using 'db1'
.
wt = dwt3(X,'db1')
wt = struct with fields:
sizeINI: [4 4 4]
filters: [1x1 struct]
mode: 'sym'
dec: {2x2x2 cell}
Decompose X
using 'db2'
.
[LoD,HiD,LoR,HiR] = wfilters('db2');
wt = dwt3(X,{LoD,HiD,LoR,HiR})
wt = struct with fields:
sizeINI: [4 4 4]
filters: [1x1 struct]
mode: 'sym'
dec: {2x2x2 cell}
Decompose X
using different wavelets, one for each orientation: 'db1'
, 'db2'
, and again 'db1'
.
WS = struct('w1','db1','w2','db2','w3','db1'); wt = dwt3(X,WS,'mode','per')
wt = struct with fields:
sizeINI: [4 4 4]
filters: [1x1 struct]
mode: 'per'
dec: {2x2x2 cell}
Decompose X
using the filters given by WF
and set the extension mode to symmetric.
WF = wt.filters; wtBIS = dwt3(X,WF,'mode','sym')
wtBIS = struct with fields:
sizeINI: [4 4 4]
filters: [1x1 struct]
mode: 'sym'
dec: {2x2x2 cell}
Input Arguments
x
— Input data
3D array
Input data, specified as a 3D array.
Data Types: double
wname
— Analyzing wavelet
character vector  string scalar
Analyzing wavelet used to compute the 3D DWT, specified as a character
vector or string scalar. The analyzing wavelet is from one of the following
wavelet families: Bestlocalized Daubechies, Beylkin, Coiflets, Daubechies,
FejérKorovkin, Haar, Han linearphase moments, Morris minimumbandwidth,
Symlets, Vaidyanathan, Discrete Meyer, Biorthogonal, and Reverse
Biorthogonal. See wfilters
for the wavelets
available in each family.
w
— Analyzing wavelets
cell array of character vectors  string array  structure
Analyzing wavelets to use in the 3D wavelet decomposition, one for each
direction, specified as a cell array of character vectors, a string array,
or a structure. w = {'wname1','wname2','wname3'}
, or
w = ["wname1","wname2","wname3"]
, or
w
is a structure with 3 fields
'w1'
, 'w2'
,
'w3'
containing character vectors or string scalars
that are the names of wavelets.
Example: wt =
dwt3(x,["db2","db4","db6"]);
wf
— Wavelet filters
cell array  structure
Wavelet filters to use in the 3D wavelet decomposition, specified as
either a cell array or structure. wf
specifies four
filters, two for decomposition and two for reconstruction, or 3 × 4
filters (one quadruplet by direction). wf
is either a
cell array (1 × 4) or (3 × 4) :
{LoD,HiD,LoR,HiR}
or a structure with the four fields
'LoD','HiD','LoR','HiR'
.
extM
— Extension mode
'zpd'
 'sp0'
 'spd'
 ...
Extension mode used when performing the 3D DWT, specified as one of the following:
mode  DWT Extension Mode 

'zpd'  Zero extension 
'sp0'  Smooth extension of order 0 
'spd' (or
'sp1' )  Smooth extension of order 1 
'sym' or
'symh'  Symmetric extension (half point): boundary value symmetric replication 
'symw'  Symmetric extension (whole point): boundary value symmetric replication 
'asym' or
'asymh'  Antisymmetric extension (half point): boundary value antisymmetric replication 
'asymw'  Antisymmetric extension (whole point): boundary value antisymmetric replication 
'ppd'  Periodized extension (1) 
'per'  Periodized extension (2) If the
signal length is odd, 
The global variable managed by dwtmode
specifies the
default extension mode.
Output Arguments
wt
— Singlelevel 3D wavelet decomposition
structure
Singlelevel 3D wavelet decomposition, returned as a structure with the following fields:
sizeINI  Size of the threedimensional array

mode  Name of the wavelet transform extension mode. 
filters  Structure with four fields:

dec  2 × 2 × 2 cell array containing the coefficients of the decomposition.
The

Version History
Introduced in R2010a
Open Example
You have a modified version of this example. Do you want to open this example with your edits?
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
 América Latina (Español)
 Canada (English)
 United States (English)
Europe
 Belgium (English)
 Denmark (English)
 Deutschland (Deutsch)
 España (Español)
 Finland (English)
 France (Français)
 Ireland (English)
 Italia (Italiano)
 Luxembourg (English)
 Netherlands (English)
 Norway (English)
 Österreich (Deutsch)
 Portugal (English)
 Sweden (English)
 Switzerland
 United Kingdom (English)