xmipp_mpi_classify_CL2D (v3.0)


Divide a selfile into the desired number of classes. Vector quantization with correntropy and a probabilistic criterion is used for creating the subdivisions. Correlation and the standard maximum correlation criterion can also be used and normally produce good results. Correntropy and the probabilistic clustering criterion are recommended for images with very low SNR or cases in which the correlation have clear difficulties to converge.

The algorithm is fully described in this article.

An interesting convergence criterion is the number of images changing classes between iterations. If a low percentage of the image change class, then the clustering is rather stable and clear. If many images change class, it is likely that there is not enough SNR to determine so many classes. It is recommended to reduce the number of classes

See also


-i <selfile>
Selfile with the input images
--oroot <root=class>
Output rootname, by default, class
--iter <N=20>
Number of iterations
--nref0 <N=2>
Initial number of code vectors
or --ref0 <selfile=>
Selfile with initial code vectors
--nref <N=16>
Final number of code vectors
--neigh <N=4>
Number of neighbour code vectors Set -1 for all
--minsize <N=20>
Percentage minimum node size
--distance <type=correntropy>
Distance type
where <type> can be:
  • correntropy
  • correlation See CL2D paper for the definition of correntropy
Instead of enhanced clustering
--maxShift <d=10>
Maximum allowed shift
By default, some images may not be classified. Use this option to classify them all.

Examples and notes

mpirun -np 3 `which xmipp_mpi_classify_CL2D` -i images.stk --nref 256 --oroot class --iter 10

User's comments