Xmipp
v3.23.11-Nereus
|
#include <core/bilib/wavelet.h>
#include <core/args.h>
#include <core/histogram.h>
#include <core/xmipp_image.h>
#include <core/xmipp_fftw.h>
#include "wavelet.h"
#include "numerical_tools.h"
#include "mask.h"
Go to the source code of this file.
Macros | |
#define | DWT_Scale(i, smax) ((int)((i==0)?smax-1:(ABS((CEIL(log10((double)(i+1))/log10(2.0))-smax))))) |
#define | DWT_Quadrant1D(i, s, smax) ((s!=smax-1)?'1':((i==0)?'0':'1')) |
#define | DWT_QuadrantnD(i, s, sp, smax) ((s!=sp)?'0':DWT_Quadrant1D(i,s,smax)) |
#define | DWT_icoef1D(i, s, smax) () |
Functions | |
void | Bilib_DWT (const MultidimArray< double > &input, MultidimArray< double > &result, int iterations, int isign) |
void | set_DWT_type (int DWT_type) |
void | IDWT (const MultidimArray< double > &v, MultidimArray< double > &result) |
void | DWT_lowpass2D (const MultidimArray< double > &v, MultidimArray< double > &result) |
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) |
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_thresholding_block2D (MultidimArray< double > &I, int scale, const std::string &quadrant, double sigma) |
double | compute_noise_power (MultidimArray< double > &I) |
void | adaptive_soft_thresholding2D (MultidimArray< double > &I, int scale) |
void | DWT_keep_central_part (MultidimArray< double > &I, double R) |
void | DWT_Bijaoui_denoise_LL2D (MultidimArray< double > &WI, int scale, const std::string &orientation, double mu, double S, double N) |
void | DWT_Bijaoui_denoise_LL3D (MultidimArray< double > &WI, int scale, const std::string &orientation, double mu, double S, double N) |
void | bayesian_solve_eq_system (const Matrix1D< double > &power, const Matrix1D< double > &Ncoefs, double SNR0, double SNRF, double powerI, double power_rest, bool white_noise, Matrix1D< double > &estimatedS) |
Matrix1D< double > | bayesian_wiener_filtering2D (MultidimArray< double > &WI, int allowed_scale, double SNR0, double SNRF, bool white_noise, int tell, bool denoise) |
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, double SNRF, bool white_noise, int tell, bool denoise) |
void | bayesian_wiener_filtering3D (MultidimArray< double > &WI, int allowed_scale, Matrix1D< double > &estimatedS) |
void | phaseCongMono (MultidimArray< double > &I, MultidimArray< double > &Ph, MultidimArray< double > &Or, MultidimArray< double > &Energy, MultidimArray< double > &lowPass, MultidimArray< double > &Radius, MultidimArray< std::complex< double > > &H, int nScale, double minWaveLength, double mult, double sigmaOnf) |
#define DWT_icoef1D | ( | i, | |
s, | |||
smax | |||
) | () |
Definition at line 246 of file wavelet.cpp.
Definition at line 243 of file wavelet.cpp.
#define DWT_QuadrantnD | ( | i, | |
s, | |||
sp, | |||
smax | |||
) | ((s!=sp)?'0':DWT_Quadrant1D(i,s,smax)) |
Definition at line 244 of file wavelet.cpp.
#define DWT_Scale | ( | i, | |
smax | |||
) | ((int)((i==0)?smax-1:(ABS((CEIL(log10((double)(i+1))/log10(2.0))-smax))))) |
Definition at line 242 of file wavelet.cpp.
void adaptive_soft_thresholding_block2D | ( | MultidimArray< double > & | I, |
int | scale, | ||
const std::string & | quadrant, | ||
double | sigma | ||
) |
Definition at line 321 of file wavelet.cpp.
void bayesian_solve_eq_system | ( | const Matrix1D< double > & | power, |
const Matrix1D< double > & | Ncoefs, | ||
double | SNR0, | ||
double | SNRF, | ||
double | powerI, | ||
double | power_rest, | ||
bool | white_noise, | ||
Matrix1D< double > & | estimatedS | ||
) |
Definition at line 476 of file wavelet.cpp.
double compute_noise_power | ( | MultidimArray< double > & | I | ) |
Definition at line 346 of file wavelet.cpp.
void DWT_Bijaoui_denoise_LL2D | ( | MultidimArray< double > & | WI, |
int | scale, | ||
const std::string & | orientation, | ||
double | mu, | ||
double | S, | ||
double | N | ||
) |
Definition at line 414 of file wavelet.cpp.
void DWT_Bijaoui_denoise_LL3D | ( | MultidimArray< double > & | WI, |
int | scale, | ||
const std::string & | orientation, | ||
double | mu, | ||
double | S, | ||
double | N | ||
) |
Definition at line 446 of file wavelet.cpp.