| synopsis || return value || arguments || prev |
double * get_bibo_gains( int level_idx, double & low_gain, double & high_gain)
[Declared in "../coresys/common/kdu_kernels.h"]
Computes the BIBO (Bounded-Input-Bounded-Output) analysis gain from the input 1D transform's input sequence to the various subbands and intermediate lifting step results produced at a particular level of the DWT.
The BIBO gain of a linear system is the ratio between the maximum absolute value of the output sequence and the maximum absolute value of the input sequence. As such the BIBO gain figures are useful for determining the optimal placement of the binary point in fixed point DWT implementations.
Note that beyond a certain number of DWT levels, the function does not explicitly calculate the analysis vectors and their BIBO gains. Instead, it relies upon the fact that the analysis vectors converge to samplings of the dual wavelet and scaling functions which are continuous. This enables it to accurately predict gains for very deep DWT's without expending substantial memory resources. Again, for a discussion of these properties, see Section 17.3 of the book by Taubman and Marcellin.
Pointer to an array with one entry per lifting step, whose entries hold the BIBO gain from the input sequence through to the output of that lifting step in the indicated DWT level. If level_idx is 0, the function returns NULL.
The particular level in the DWT pyramid at which the BIBO gain is being calculated. A value of 0 refers to no transform at all.
Used to return the BIBO gain from the input sequence to the low-pass subbands at DWT level level_idx. If level_idx is 0, the function returns 1.0.
| top || synopsis || return value || arguments || prev |