Xmipp
v3.23.11-Nereus
|
#include <fourier_filter.h>
Public Member Functions | |
void | readParams (XmippProgram *program) |
void | apply (MultidimArray< double > &img) |
FourierFilter () | |
void | init () |
void | show () |
double | maskValue (const Matrix1D< double > &w) |
void | generateMask (MultidimArray< double > &v) |
void | applyMaskSpace (MultidimArray< double > &v) |
void | applyMaskFourierSpace (const MultidimArray< double > &v, MultidimArray< std::complex< double > > &V) |
double | maskPower () |
void | correctPhase () |
Public Member Functions inherited from XmippFilter | |
virtual | ~XmippFilter () |
Static Public Member Functions | |
static void | defineParams (XmippProgram *program) |
Public Attributes | |
int | FilterShape |
int | FilterBand |
double | w1 |
double | w2 |
double | sampling_rate |
double | t1 |
double | t2 |
double | rot |
double | tilt |
double | psi |
double | percentage |
FileName | maskFn |
double | raised_w |
CTFDescription | ctf |
double | minCTF |
FileName | fnFSC |
FileName | fnFilter |
bool | do_generate_3dmask |
Matrix1D< double > | w |
MultidimArray< int > | maskFourier |
MultidimArray< double > | maskFourierd |
FourierTransformer | transformer |
MultidimArray< double > | vMag |
MultidimArray< double > | vMagSorted |
std::vector< double > | freqContFSC |
std::vector< double > | FSC |
Filter class for Fourier space.
Example of use for highpass filtering
Example of use for wedge filtering
For volumes you the mask is computed on the fly and in this way memory is saved (unless do_generate_3dmask == true).
Definition at line 69 of file fourier_filter.h.
FourierFilter::FourierFilter | ( | ) |
Empty constructor
Definition at line 45 of file fourier_filter.cpp.
|
virtual |
Process one image
Implements XmippFilter.
Definition at line 379 of file fourier_filter.cpp.
void FourierFilter::applyMaskFourierSpace | ( | const MultidimArray< double > & | v, |
MultidimArray< std::complex< double > > & | V | ||
) |
Apply mask in Fourier space. The image remains in Fourier space.
Definition at line 718 of file fourier_filter.cpp.
void FourierFilter::applyMaskSpace | ( | MultidimArray< double > & | v | ) |
Apply mask in real space.
Definition at line 710 of file fourier_filter.cpp.
void FourierFilter::correctPhase | ( | ) |
Correct phase
Definition at line 804 of file fourier_filter.cpp.
|
static |
Define parameters
Definition at line 51 of file fourier_filter.cpp.
void FourierFilter::generateMask | ( | MultidimArray< double > & | v | ) |
Generate nD mask.
Definition at line 605 of file fourier_filter.cpp.
void FourierFilter::init | ( | void | ) |
double FourierFilter::maskPower | ( | ) |
double FourierFilter::maskValue | ( | const Matrix1D< double > & | w | ) |
Compute the mask value at a given frequency. The frequency must be normalized so that the maximum frequency in each direction is 0.5
Definition at line 414 of file fourier_filter.cpp.
|
virtual |
Read parameters from command line. If a CTF description file is provided it is read.
Reimplemented from XmippFilter.
Definition at line 97 of file fourier_filter.cpp.
|
virtual |
Show.
Reimplemented from XmippFilter.
Definition at line 280 of file fourier_filter.cpp.
CTFDescription FourierFilter::ctf |
CTF parameters.
Definition at line 134 of file fourier_filter.h.
bool FourierFilter::do_generate_3dmask |
Flag to generate 3D mask
Definition at line 146 of file fourier_filter.h.
int FourierFilter::FilterBand |
Pass band. LOWPASS, HIGHPASS, BANDPASS, STOPBAND, CTF, CTFPOS, WEDGE, CONE, GAUSSIAN, FROM_FILE, REALGAUSSIAN, BFACTOR, SPARSIFY, STOPLOWBANDX, STOPLOWBANDY, FSCPROFILE, BINARYFILE, ASTIGMATISMPROFILE, CTFINV, CTFPOSINV, CTFDEF
Definition at line 105 of file fourier_filter.h.
int FourierFilter::FilterShape |
Shape of the decay in the filter. Valid types are RAISED_COSINE.
Definition at line 75 of file fourier_filter.h.
FileName FourierFilter::fnFilter |
Binary file with the filter
Definition at line 143 of file fourier_filter.h.
FileName FourierFilter::fnFSC |
FSC file
Definition at line 140 of file fourier_filter.h.
std::vector<double> FourierFilter::freqContFSC |
Definition at line 207 of file fourier_filter.h.
std::vector<double> FourierFilter::FSC |
Definition at line 208 of file fourier_filter.h.
FileName FourierFilter::maskFn |
Filename in which store the mask (valid only for fourier masks)
Definition at line 128 of file fourier_filter.h.
MultidimArray<int> FourierFilter::maskFourier |
Definition at line 194 of file fourier_filter.h.
MultidimArray<double> FourierFilter::maskFourierd |
Definition at line 197 of file fourier_filter.h.
double FourierFilter::minCTF |
Minimum CTF for inversion
Definition at line 137 of file fourier_filter.h.
double FourierFilter::percentage |
Percentage of coefficients to throw
Definition at line 125 of file fourier_filter.h.
double FourierFilter::psi |
Definition at line 122 of file fourier_filter.h.
double FourierFilter::raised_w |
Pixels around the central frequency for the raised cosine
Definition at line 131 of file fourier_filter.h.
double FourierFilter::rot |
Definition at line 120 of file fourier_filter.h.
double FourierFilter::sampling_rate |
Input Image sampling rate
Definition at line 115 of file fourier_filter.h.
double FourierFilter::t1 |
Wedge and cone filter parameters
Definition at line 118 of file fourier_filter.h.
double FourierFilter::t2 |
Definition at line 119 of file fourier_filter.h.
double FourierFilter::tilt |
Definition at line 121 of file fourier_filter.h.
FourierTransformer FourierFilter::transformer |
Definition at line 200 of file fourier_filter.h.
MultidimArray<double> FourierFilter::vMag |
Definition at line 203 of file fourier_filter.h.
MultidimArray<double> FourierFilter::vMagSorted |
Definition at line 204 of file fourier_filter.h.
Matrix1D<double> FourierFilter::w |
Definition at line 191 of file fourier_filter.h.
double FourierFilter::w1 |
Cut frequency for Low and High pass filters, first freq for bandpass. Normalized to 1/2
Definition at line 109 of file fourier_filter.h.
double FourierFilter::w2 |
Second frequency for bandpass and stopband. Normalized to 1/2
Definition at line 112 of file fourier_filter.h.