![]() |
![]() |
Gwyddion Data Processing Library Reference Manual | ![]() |
---|
dwtdwt — Discrete Wavelet Transform |
GwyDataLine* gwy_dwt_set_coefficients (GwyDataLine *dline, GwyDWTType type); GwyDataLine* gwy_data_line_dwt (GwyDataLine *dline, GwyDataLine *wt_coefs, GwyTransformDirection direction, gint minsize); GwyDataField* gwy_data_field_xdwt (GwyDataField *dfield, GwyDataLine *wt_coefs, GwyTransformDirection direction, gint minsize); GwyDataField* gwy_data_field_ydwt (GwyDataField *dfield, GwyDataLine *wt_coefs, GwyTransformDirection direction, gint minsize); GwyDataField* gwy_data_field_dwt (GwyDataField *dfield, GwyDataLine *wt_coefs, GwyTransformDirection direction, gint minsize); GwyDataField* gwy_data_field_dwt_denoise (GwyDataField *dfield, GwyDataLine *wt_coefs, gboolean hard, gdouble multiple_threshold, GwyDWTDenoiseType type); GwyDataField* gwy_data_field_dwt_mark_anisotropy (GwyDataField *dfield, GwyDataField *mask, GwyDataLine *wt_coefs, gdouble ratio, gint lowlimit);
GwyDataLine* gwy_dwt_set_coefficients (GwyDataLine *dline, GwyDWTType type);
Fills resampled or nely allocated data line with wavelet coefficients.
dline : | Data line to store wavelet coefficients to (or NULL to allocate a new one). |
type : | Wavelet type. |
Returns : | resampled or newly allocated GwyDataLine with wavelet coefficients. |
GwyDataLine* gwy_data_line_dwt (GwyDataLine *dline, GwyDataLine *wt_coefs, GwyTransformDirection direction, gint minsize);
Performs steps of the wavelet decomposition.
The smallest low pass coefficients block is equal to minsize. Run with minsize = dline->res/2 to perform one step of decomposition or minsize = 4 to perform full decomposition (or anything between).
dline : | Data line to be transformed, it must have at least four samples. |
wt_coefs : | Data line where the wavelet transform coefficients are stored. |
direction : | Transform direction. |
minsize : | size of minimal transform result block |
Returns : | Transformed data line, that is dline itself. XXX Why? XXX |
GwyDataField* gwy_data_field_xdwt (GwyDataField *dfield, GwyDataLine *wt_coefs, GwyTransformDirection direction, gint minsize);
Performs steps of the X-direction image wavelet decomposition.
The smallest low pass coefficients block is equal to minsize. Run with minsize = dfield->xres/2 to perform one step of decomposition or minsize = 4 to perform full decomposition (or anything between).
dfield : | Data field to be transformed. |
wt_coefs : | Data line where the wavelet transform coefficients are stored. |
direction : | Transform direction. |
minsize : | size of minimal transform result block |
Returns : | Transformed data field (that is dfield itself). XXX Why? XXX |
GwyDataField* gwy_data_field_ydwt (GwyDataField *dfield, GwyDataLine *wt_coefs, GwyTransformDirection direction, gint minsize);
Performs steps of the Y-direction image wavelet decomposition.
The smallest low pass coefficients block is equal to minsize. Run with minsize = dfield->yres/2 to perform one step of decomposition or minsize = 4 to perform full decomposition (or anything between).
dfield : | Data field to be transformed. |
wt_coefs : | Data line where the wavelet transform coefficients are stored. |
direction : | Transform direction. |
minsize : | size of minimal transform result block |
Returns : | Transformed data field (that is dfield itself). XXX Why? XXX |
GwyDataField* gwy_data_field_dwt (GwyDataField *dfield, GwyDataLine *wt_coefs, GwyTransformDirection direction, gint minsize);
Performs steps of the 2D image wavelet decomposition.
The smallest low pass coefficients block is equal to minsize. Run with minsize = dfield->xres/2 to perform one step of decomposition or minsize = 4 to perform full decomposition (or anything between).
dfield : | Data field to be transformed (must be square). |
wt_coefs : | Data line where the wavelet transform coefficients are stored. |
direction : | Transform direction. |
minsize : | size of minimal transform result block |
Returns : | Transformed data field (that is dfield itself). XXX Why? XXX |
GwyDataField* gwy_data_field_dwt_denoise (GwyDataField *dfield, GwyDataLine *wt_coefs, gboolean hard, gdouble multiple_threshold, GwyDWTDenoiseType type);
Performs wavelet denoising.
It is based on threshold obtained from noise variance (obtained from high scale wvelet coefficients). This threshold can be multiplied by user defined value.
dfield : | Data field to be denoised (must be square). |
wt_coefs : | Data line where the wavelet transform coefficients are stored. |
hard : | Set to TRUE to apply hard thresholding. |
multiple_threshold : | A positive value to multiply threshold with (to change thresholding). |
type : | Type of thresholding |
Returns : | Denoised data field (that is dfield itself). XXX Why? XXX |
GwyDataField* gwy_data_field_dwt_mark_anisotropy (GwyDataField *dfield, GwyDataField *mask, GwyDataLine *wt_coefs, gdouble ratio, gint lowlimit);
dfield : | |
mask : | |
wt_coefs : | |
ratio : | |
lowlimit : | |
Returns : |
<< cwt | filters >> |