Denoise an image.
158 if (
ABS(size2 -
ROUND(size2)) > 1e-6)
161 if (
ABS(size2 -
ROUND(size2)) > 1e-6)
198 if (
ABS(size2 -
ROUND(size2)) > 1e-6)
201 if (
ABS(size2 -
ROUND(size2)) > 1e-6)
204 if (
ABS(size2 -
ROUND(size2)) > 1e-6)
229 std::cout <<
"Adaptive soft-thresholding not implemented for imgumes\n";
232 std::cout <<
"Keep central part not implemented for volumes\n";
void resize(size_t Ndim, size_t Zdim, size_t Ydim, size_t Xdim, bool copy=true)
#define REPORT_ERROR(nerr, ErrormMsg)
void resizeNoCopy(const MultidimArray< T1 > &v)
void clean_quadrant3D(MultidimArray< double > &I, int scale, const std::string &quadrant)
void rangeAdjust(T minF, T maxF)
double percentil(double percent_mass)
Incorrect MultidimArray size.
void clean_quadrant2D(MultidimArray< double > &I, int scale, const std::string &quadrant)
Matrix1D< double > bayesian_wiener_filtering2D(MultidimArray< double > &WI, int allowed_scale, double SNR0, double SNRF, bool white_noise, int tell, bool denoise)
void compute_hist(const MultidimArrayGeneric &array, Histogram1D &hist, int no_steps)
void DWT(const MultidimArray< T > &v, MultidimArray< double > &result, int isign=1)
void adaptive_soft_thresholding2D(MultidimArray< double > &I, int scale)
void log10(Image< double > &op)
Matrix1D< double > bayesian_wiener_filtering3D(MultidimArray< double > &WI, int allowed_scale, double SNR0, double SNRF, bool white_noise, int tell, bool denoise)
DenoisingType denoising_type
void DWT_keep_central_part(MultidimArray< double > &I, double R)
void IDWT(const MultidimArray< double > &v, MultidimArray< double > &result)
void soft_thresholding(MultidimArray< double > &I, double th)
Matrix1D< double > estimatedS