naginterfaces.library.wav.dim3_mxolap_multi_inv¶
- naginterfaces.library.wav.dim3_mxolap_multi_inv(nwlinv, c, m, n, fr, comm)[source]¶
dim3_mxolap_multi_inv
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 bydim3_multi_fwd()
from an original input array. The initialization functiondim3_init()
must be called first to set up the IDWT options.For full information please refer to the NAG Library document for c09fd
https://www.nag.com/numeric/nl/nagdoc_29.3/flhtml/c09/c09fdf.html
- Parameters
- nwlinvint
The number of levels to be used in the inverse multi-level transform. The number of levels must be less than or equal to , which has the value of argument as used in the computation of the wavelet coefficients using
dim3_multi_fwd()
. The data will be reconstructed to level , where level is the original input dataset provided todim3_multi_fwd()
.- cfloat, array-like, shape
The coefficients of the multi-level discrete wavelet transform. This will normally be the result of some transformation on the coefficients computed by function
dim3_multi_fwd()
.Note that the coefficients in may be extracted according to level and type into three-dimensional arrays using
dim3_coeff_ext()
, and inserted usingdim3_coeff_ins()
.- mint
The number of elements, , in the first dimension of the reconstructed array . For a full reconstruction of levels, where is as supplied to
dim3_multi_fwd()
, this must be the same as argument used in a preceding call todim3_multi_fwd()
. For a partial reconstruction of levels, this must be equal to , as returned fromdim3_multi_fwd()
- nint
The number of elements, , in the second dimension of the reconstructed array . For a full reconstruction of , levels, where is as supplied to
dim3_multi_fwd()
, this must be the same as argument used in a preceding call todim3_multi_fwd()
. For a partial reconstruction of levels, this must be equal to , as returned fromdim3_multi_fwd()
.- frint
The number of elements, , in the third dimension of the reconstructed array . For a full reconstruction of levels, where is as supplied to
dim3_multi_fwd()
, this must be the same as argument used in a preceding call todim3_multi_fwd()
. For a partial reconstruction of levels, this must be equal to , as returned fromdim3_multi_fwd()
.- commdict, communication object
Communication structure.
This argument must have been initialized by a prior call to
dim3_init()
.
- Returns
- bfloat, ndarray, shape
The reconstructed array, , with stored in . The reconstruction is based on the input multi-level wavelet transform coefficients and the transform options supplied to the initialization function
dim3_init()
.
- Raises
- NagValueError
- (errno )
On entry, and where is as used in the computation of the wavelet coefficients by a call to
dim3_multi_fwd()
.Constraint: as used in the call to
dim3_multi_fwd()
.- (errno )
On entry, .
Constraint: .
- (errno )
On entry, .
Constraint: , the number of wavelet coefficients required for a transform operating on levels. If , the maximum number of levels as returned by the initial call to
dim3_init()
, must be at least , the value returned in by the same call todim3_init()
.- (errno )
On entry, .
Constraint: , the number of coefficients in the second dimension at the required level of reconstruction.
- (errno )
On entry, .
Constraint: , the number of coefficients in the first dimension at the required level of reconstruction.
- (errno )
On entry, .
Constraint: , the number of coefficients in the third dimension at the required level of reconstruction.
- (errno )
Either the communication array [‘icomm’] has been corrupted or there has not been a prior call to the initialization function
dim3_init()
.- (errno )
Either the initialization function was called with or the communication array [‘icomm’] has been corrupted.
- Notes
dim3_mxolap_multi_inv
performs the inverse operation ofdim3_multi_fwd()
. That is, given a set of wavelet coefficients, computed up to level bydim3_multi_fwd()
using a DWT as set up by the initialization functiondim3_init()
, on a real three-dimensional array, ,dim3_mxolap_multi_inv
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 todim3_multi_fwd()
. This results in a partial reconstruction.
- References
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)