27 #ifndef _PROG_FORWARD_ART_ZERNIKE3D_SUBTOMOS 28 #define _PROG_FORWARD_ART_ZERNIKE3D_SUBTOMOS 186 double rot,
double tilt,
double psi);
196 enum class Direction { Forward, Backward };
199 template <Direction DIRECTION>
203 template<
bool USESZERNIKE, Direction DIRECTION>
207 void splattingAtPos(std::array<double, 3> r,
double weight,
218 void sortOrthogonal();
void fillVectorTerms(int l1, int l2, Matrix1D< int > &vL1, Matrix1D< int > &vN, Matrix1D< int > &vL2, Matrix1D< int > &vM)
Zernike and SPH coefficients allocation.
void readParams()
Read argument from command line.
MultidimArray< int > mask2D
void processImage(const FileName &fnImg, const FileName &fnImgOut, const MDRow &rowIn, MDRow &rowOut)
void numCoefficients(int l1, int l2, int &vecSize)
Length of coefficients vector.
~ProgForwardArtZernike3DSubtomos()
Destructor.
ProgForwardArtZernike3DSubtomos()
Empty constructor.
virtual void finishProcessing()
MultidimArray< double > gaussian_mw
void applyMissingWedge(MultidimArray< double > &mV)
Image< double > Ifilteredp
MultidimArray< size_t > ordered_list
FourierTransformer transformer
MultidimArray< double > gaussian3d
void deformVol(MultidimArray< double > &mP, MultidimArray< double > &mW, const MultidimArray< double > &mV, double rot, double tilt, double psi)
Deform a volumen using Zernike-Spherical harmonic basis.
FileName fnOutDir
Output directory.
MultidimArray< int > Vmask
std::vector< double > clnm
void defineParams()
Define parameters.