c09fdc computes the inverse three-dimensional multi-level discrete wavelet transform (IDWT). This function reconstructs data from (possibly filtered or otherwise manipulated) wavelet transform coefficients calculated by
c09fcc from an original input array. The initialization function
c09acc must be called first to set up the IDWT options.
c09fdc performs the inverse operation of
c09fcc. That is, given a set of wavelet coefficients, computed up to level
by
c09fcc using a DWT as set up by the initialization function
c09acc, on a real three-dimensional array,
,
c09fdc will reconstruct
. The reconstructed array is referred to as
in the following since it will not be identical to
when the DWT coefficients have been filtered or otherwise manipulated prior to reconstruction. If the original input array is level
, then it is possible to terminate reconstruction at a higher level by specifying fewer than the number of levels used in the call to
c09fcc. This results in a partial reconstruction.
Wang Y, Che X and Ma S (2012) Nonlinear filtering based on 3D wavelet transform for MRI denoising URASIP Journal on Advances in Signal Processing 2012:40
- NE_ALLOC_FAIL
-
Dynamic memory allocation failed.
See
Section 3.1.2 in the Introduction to the NAG Library CL Interface for further information.
- NE_BAD_PARAM
-
On entry, argument had an illegal value.
- NE_INITIALIZATION
-
Either the communication array
icomm has been corrupted or there has not been a prior call to the initialization function
c09acc.
The initialization function was called with .
- NE_INT
-
On entry, .
Constraint: , the number of coefficients in the third dimension at the required level of reconstruction.
On entry, .
Constraint: , the number of coefficients in the first dimension at the required level of reconstruction.
On entry, .
Constraint: , the number of coefficients in the second dimension at the required level of reconstruction.
On entry, .
Constraint: .
- NE_INT_2
-
On entry, and .
Constraint: .
On entry,
.
Constraint:
, the number of wavelet coefficients required for a transform operating on
nwlinv levels. If
, the maximum number of levels as returned by the initial call to
c09acc,
lenc must be at least
, the value returned in
nwct by the same call to
c09acc.
On entry,
and
where
nwl is as used in the computation of the wavelet coefficients by a call to
c09fcc.
Constraint:
as used in the call to
c09fcc.
On entry, and .
Constraint: .
- NE_INTERNAL_ERROR
-
An internal error has occurred in this function. Check the function call and any array sizes. If the call is correct then please contact
NAG for assistance.
See
Section 7.5 in the Introduction to the NAG Library CL Interface for further information.
- NE_NO_LICENCE
-
Your licence key may have expired or may not have been installed correctly.
See
Section 8 in the Introduction to the NAG Library CL Interface for further information.
The accuracy of the wavelet transform depends only on the floating-point operations used in the convolution and downsampling and should thus be close to machine precision.
Background information to multithreading can be found in the
Multithreading documentation.
None.