dwt

dwt — Discrete Wavelet Transform

Synopsis




GwyDataLine* gwy_dwt_set_coefficients       (GwyDataLine *dline,
                                             GwyDWTType type);
GwyDataLine* gwy_data_line_dwt              (GwyDataLine *dline,
                                             GwyDataLine *wt_coefs,
                                             gint isign,
                                             gint minsize);
GwyDataField* gwy_data_field_xdwt           (GwyDataField *dfield,
                                             GwyDataLine *wt_coefs,
                                             gint isign,
                                             gint minsize);
GwyDataField* gwy_data_field_ydwt           (GwyDataField *dfield,
                                             GwyDataLine *wt_coefs,
                                             gint isign,
                                             gint minsize);
GwyDataField* gwy_data_field_dwt            (GwyDataField *dfield,
                                             GwyDataLine *wt_coefs,
                                             gint isign,
                                             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);
GwyDataField* gwy_data_field_dwt_correction (GwyDataField *dfield,
                                             GwyDataField *mask,
                                             GwyDataLine *wt_coefs);

Description

Details

gwy_dwt_set_coefficients ()

GwyDataLine* gwy_dwt_set_coefficients       (GwyDataLine *dline,
                                             GwyDWTType type);

Fills resampled or nely allocated GwyDataLine with wavelet coefficients.

dline : dataline where coefficients should be stored (allocated or NULL)
type : wavelet type
Returns : resampled or newly allocated GwyDataLine with wavelet coefficients.

gwy_data_line_dwt ()

GwyDataLine* gwy_data_line_dwt              (GwyDataLine *dline,
                                             GwyDataLine *wt_coefs,
                                             gint isign,
                                             gint minsize);

Performs steps of the wavelet decomposition while 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 : dataline to be transformed
wt_coefs : dataline where wavelet transfor coefficients are stored.
isign : direction of the transform (1)...direct, (-1)...inverse
minsize : size of minimal transform result block
Returns : transformed GwyDataLine.

gwy_data_field_xdwt ()

GwyDataField* gwy_data_field_xdwt           (GwyDataField *dfield,
                                             GwyDataLine *wt_coefs,
                                             gint isign,
                                             gint minsize);

Performs steps of the X-direction image wavelet decomposition while 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 : datafield to be transformed
wt_coefs : dataline where wavelet transfor coefficients are stored.
isign : direction of the transform (1)...direct, (-1)...inverse
minsize : size of minimal transform result block
Returns : transformed GwyDataField.

gwy_data_field_ydwt ()

GwyDataField* gwy_data_field_ydwt           (GwyDataField *dfield,
                                             GwyDataLine *wt_coefs,
                                             gint isign,
                                             gint minsize);

Performs steps of the Y-direction image wavelet decomposition while 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 : datafield to be transformed
wt_coefs : dataline where wavelet transfor coefficients are stored.
isign : direction of the transform (1)...direct, (-1)...inverse
minsize : size of minimal transform result block
Returns : transformed GwyDataField.

gwy_data_field_dwt ()

GwyDataField* gwy_data_field_dwt            (GwyDataField *dfield,
                                             GwyDataLine *wt_coefs,
                                             gint isign,
                                             gint minsize);

Performs steps of the 2D image wavelet decomposition while 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 : datafield to be transformed (square)
wt_coefs : dataline where wavelet transfor coefficients are stored.
isign : direction of the transform (1)...direct, (-1)...inverse
minsize : size of minimal transform result block
Returns : transformed GwyDataField.

gwy_data_field_dwt_denoise ()

GwyDataField* gwy_data_field_dwt_denoise    (GwyDataField *dfield,
                                             GwyDataLine *wt_coefs,
                                             gboolean hard,
                                             gdouble multiple_threshold,
                                             GwyDWTDenoiseType type);

Performs wavelet denoising base on threshold obtained from noise variance (obtained from high scale wvelet coefficients). This threshold can be multiplied by user defined value.

dfield : datafield to be transformed (square)
wt_coefs : dataline where wavelet transfor coefficients are stored.
hard : whether to apply hard thresholding
multiple_threshold : multiply it by value different from zero to change threshold
type : type of thresholding
Returns : denoised GwyDataField.

gwy_data_field_dwt_mark_anisotropy ()

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 :

gwy_data_field_dwt_correction ()

GwyDataField* gwy_data_field_dwt_correction (GwyDataField *dfield,
                                             GwyDataField *mask,
                                             GwyDataLine *wt_coefs);

dfield :
mask :
wt_coefs :
Returns :