25 #ifndef _PROG_VQ_PROJECTIONS 26 #define _PROG_VQ_PROJECTIONS 131 nextNonClassCorr.push_back(corr);
135 void transferUpdate(
bool centerReference=
true);
146 void lookForNeighbours(
const std::vector<CL2DClass *> listP,
int K);
169 std::vector<CL2DClass *>
P;
179 CL2D & operator=(
const CL2D &)=
delete;
180 CL2D & operator=(
const CL2D &&)=
delete;
190 void shareAssignments(
bool shareAssignment,
bool shareUpdates,
bool shareNonCorr);
205 void transferUpdates();
212 int cleanEmptyNodes();
217 std::vector<size_t> &finalAssignment)
const;
220 void splitFirstNode();
308 void produceSideInfo();
std::vector< CL2DAssignment > nextListImg
FileName fnSel
Input selfile with the images to quantify.
MultidimArray< double > P
int Nneighbours
Number of neighbours.
FileName fnODir
Output directory.
void write(std::ostream &os, const datablock &db)
int Niter
Number of iterations.
int NSplitTrials
MaxTrials to split.
FileName fnCodes0
Input selfile with initial codes.
int Ncodes0
Initial number of code vectors.
double PminSize
Minimum size of a node.
bool classicalMultiref
Classical Multiref.
bool classifyAllImages
Clasify all images.
int Ncodes
Final number of code vectors.
bool normalizeImages
Normalize input images.
MultidimArray< double > Pupdate
std::vector< size_t > objId
void copyAlignment(const CL2DAssignment &alignment)
Copy alignment.
std::ostream & operator<<(std::ostream &out, const CL2DAssignment &assigned)
Show.
std::vector< double > nextNonClassCorr
bool operator()(CL2DClass *const &rpStart, CL2DClass *const &rpEnd)
bool alignImages
Don't align images.
void updateNonProjection(double corr, bool force=false)
double sigma
Noise in the images.
Polar< std::complex< double > > polarFourierP
MultidimArray< double > rotationalCorr
double maxShift
Maximum shift.
bool useCorrelation
Use Correlation instead of Correntropy.
RotationalCorrelationAux rotAux
std::vector< CL2DAssignment > currentListImg
FileName fnOut
Output rootname.
bool useThresholdMask
Use threshold mask.
bool classicalSplit
Use ClassicalCriterion at split.
double threshold
Threshold to use.
std::vector< CL2DClass * > P
List of nodes.
std::vector< int > neighboursIdx
MultidimArray< int > mask
Mask for the background.
GaussianInterpolator gaussianInterpolator
void readAlignment(const Matrix2D< double > &M)
Read alignment parameters.
CL2DAssignment()
Empty constructor.