A simple utility that wraps around csparc2star.py to convert particle positions from Cryosparc JOB directories into a RELION-ready directory. On top of what csparc2star.py already does, this script will traverse the Cryosparc job tree to find the relevant .cs files, automatically symlinks (or copies) the .mrc files (renaming them as appropriate to mrcs and updating the rlnMicrographName column to reflect the change). cs2star also separates micrograph information in a micrographs.star file, which is required in several relion jobs.
This package requires pyem, which is not available on pip under that name (there is a pyem on pip; that's a different package!). To install it manually [NOTE: some fixes necessary for this are not yet on the main repo, so we're installing from a fork]:
pip install git+https://github.com/brisvag/pyem.gitYou can then install cs2star with pip:
pip install cs2starcs2star cryosparc_job_dir [dest_dir]A couple more options are available, check out the help page with -h.
Assuming Cryosparc/J23 is a classification job:
cs2star Cryosparc/J23 -pwill create in the working directory:
- a relion-ready
particles.star - a relion-ready
micrographs.star - a
patchesdirectory containing the particle images to be used by relion refinement You can now runrelionand provideparticles.starandmicrographs.staras the inputs.
- While you can use the
--classoption to select specific classes from a cryosparc job, the class indexes do not correspond the the class order in Cryosparc (which is simply based on particle number). A much easier way to select specific classes to convert to.staris to use theselect 2D classesjob in cryosparc, then provide this job as input to cs2star. --swapxydefaults toTrue. This is because usually that's what you need; unfortunately, this may differ on a case by case basis, so make sure to check the data after conversion with you favourite viewer to ensure that particles are correctly centered.