Xmipp  v3.23.11-Nereus
Macros
wavelet.h File Reference
#include <core/multidim_array.h>
#include <core/numerical_recipes.h>
Include dependency graph for wavelet.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define HAAR   2
 
#define DAUB4   4
 
#define DAUB12   12
 
#define DAUB20   20
 

Functions

Wavelet transform
void Bilib_DWT (const MultidimArray< double > &input, MultidimArray< double > &result, int iterations, int isign=1)
 
void set_DWT_type (int DWT_type)
 
int Get_Max_Scale (int size)
 
template<typename T >
void DWT (const MultidimArray< T > &v, MultidimArray< double > &result, int isign=1)
 
void IDWT (const MultidimArray< double > &v, MultidimArray< double > &result)
 
Wavelet Denoising
void clean_quadrant2D (MultidimArray< double > &I, int scale, const std::string &quadrant)
 
void clean_quadrant3D (MultidimArray< double > &I, int scale, const std::string &quadrant)
 
void soft_thresholding (MultidimArray< double > &I, double th)
 
void adaptive_soft_thresholding2D (MultidimArray< double > &I, int scale)
 
void DWT_keep_central_part (MultidimArray< double > &I, double R)
 
Matrix1D< double > bayesian_wiener_filtering2D (MultidimArray< double > &WI, int allowed_scale, double SNR0=0.1, double SNRF=0.2, bool white_noise=false, int tell=0, bool denoise=true)
 
void bayesian_wiener_filtering2D (MultidimArray< double > &WI, int allowed_scale, Matrix1D< double > &estimatedS)
 
Matrix1D< double > bayesian_wiener_filtering3D (MultidimArray< double > &WI, int allowed_scale, double SNR0=0.1, double SNRF=0.2, bool white_noise=false, int tell=0, bool denoise=true)
 
void bayesian_wiener_filtering3D (MultidimArray< double > &WI, int allowed_scale, Matrix1D< double > &estimatedS)
 
void phaseCongMono (MultidimArray< double > &I, MultidimArray< double > &PC, MultidimArray< double > &FT, MultidimArray< double > &Energy, MultidimArray< double > &lowPass, MultidimArray< double > &Radius, MultidimArray< std::complex< double > > &H, int nScale, double minWaveLength, double mult, double sigmaOnf)
 

Wavelet related functions

#define DWT_Imin(s, smax, l)
 
#define DWT_Imax(s, smax, l)
 
void DWT_lowpass2D (const MultidimArray< double > &v, MultidimArray< double > &result)
 
template<typename T >
void SelectDWTBlock (int scale, const MultidimArray< T > &I, const std::string &quadrant, int &x1, int &x2)
 
template<typename T >
void SelectDWTBlock (int scale, const MultidimArray< T > &I, const std::string &quadrant, int &x1, int &x2, int &y1, int &y2)
 
template<typename T >
void SelectDWTBlock (int scale, const MultidimArray< T > &I, const std::string &quadrant, int &x1, int &x2, int &y1, int &y2, int &z1, int &z2)
 
std::string Quadrant2D (int q)
 
std::string Quadrant3D (int q)
 
void Get_Scale_Quadrant (int size_x, int x, int &scale, std::string &quadrant)
 
void Get_Scale_Quadrant (int size_x, int size_y, int x, int y, int &scale, std::string &quadrant)
 
void Get_Scale_Quadrant (int size_x, int size_y, int size_z, int x, int y, int z, int &scale, std::string &quadrant)