SignalProcessing
DWT
compute forward discrete wavelet transform
InverseDWT
compute inverse discrete wavelet transform
Calling Sequence
Parameters
Options
Description
Thread Safety
Examples
Compatibility
DWT(A)
InverseDWT(A1, A2)
A
-
Array of real numeric values; the signal
A1, A2
Arrays of real numeric values corresponding to the low and high frequency components of the signal
container : Array or [Array, Array], predefined Array(s) for holding results
The DWT(A) command computes the Haar discrete wavelet transform (DWT) of the Array A and returns a sequence of two Arrays with datatype float[8] and containing the low-frequency and high-frequency components respectively. The number of elements in A must be even, and each of the result Arrays will have half as many elements.
The InverseDWT(A1, A2) command computes the inverse Haar discrete wavelet transform from the Arrays A1 and A2 containing low and high frequency components. It returns the results in an Array with datatype float[8]. The length of A1 and A2 must be the same, and the size of the result Array will be twice this length.
Before the code performing the computation runs, the input Array(s) are converted to datatype float[8] if they do not have that datatype already. For this reason, it is most efficient if the input Array(s) have this datatype beforehand.
If the container=C option is provided, then the results are put into C and C is returned. With this option, no additional memory is allocated to store the result. With the forward transform, the container must be a list of two Arrays with datatype float[8] and size equal to half that of A. With the inverse transform, the container must be a single Array with datatype float[8] and size equal to twice that of the input Arrays.
The SignalProcessing[DWT] and SignalProcessing[InverseDWT] commands are thread-safe as of Maple 17.
For more information on thread safety, see index/threadsafe.
with⁡SignalProcessing:
with⁡plots:
N≔10:
A≔GenerateTone⁡N,1,0.1,0+GenerateTone⁡N,3,0.4,0.2:
B1≔Array⁡1..N2,datatype=float8:
B2≔Array⁡1..N2,datatype=float8:
DWT⁡A,container=B1,B2
?,?
B1;B2
display⁡listplot⁡A,title=Signal,listplot⁡B1,title=Low,listplot⁡B2,title=High
C≔InverseDWT⁡B1,B2
C≔
map⁡fnormal,A−C
The SignalProcessing[DWT] and SignalProcessing[InverseDWT] commands were introduced in Maple 17.
For more information on Maple 17 changes, see Updates in Maple 17.
See Also
DiscreteTransforms/DiscreteWaveletTransform
SignalProcessing[DCT]
SignalProcessing[DFT]
SignalProcessing[FFT]
Download Help Document