I used the csparc2star.py script to export a set of my particles from Cryosparc to Relion to use its 3D classification feature. Since using the full-size particles is very time-consuming in Relion, I decided to downscale the particles before exporting them. Now I would like to 3D refine the subset of particles chosen by the 3D classification and for that, I would like to re-extract the particles at their full size.
Is there an easy way to do this in Relion or Cryosparc?
If you want to continue using relion, the particle location info is still available in the 3D-refined subset you selected, so you can use the same micrographs you used to extract the original particles. in Relion, and run a new extraction using the size you want.
You can also include your micrographs as additional input when importing the particles back into cryoSPARC, then you will be able to extract in cryoSPARC.
Thanks for your answer. I would really like to re-extract in Relion but my problem is that the only input I have for Relion is my csparc2star converted particles. Should I convert my Cryosparc processed micrographs to input the Relion extract job?
Sure, or use
star.py --to-micrographs on your particles file (but check the pixel size in the micrographs file after).
I’m trying to do a similar thing but I have the micrographs in Relion already, motion corrected and CTF estimated. Now I just want to re-extract particles associated with my 2D classes found in Cryosparc from the Relion processed micrographs.
In order to pick particles and 2D classify in Cryosparc, I had to redo the motion correction and CTF estimation in cryosparc - otherwise once I loaded the micrographs motion corrected in Relion into cryosparc and then did ctf estimation, the resolutions found were abnormally high and particle picking was not as successful.
I managed to convert the cryosparc 2D classes into a star file using csparc2star.py and import it into Relion but I can’t get re-extraction to work - no particles are found in the micrographs_ctf.star.
P148J293.cs P148J293_pass.cs, P148J293_loc.cs - put in /i/emr211/u/lr001/msp1_pro_kriosdata2_61220
module load pyem/pyem
mkdir -p J175/extract
ln -s /d/emr211/u/csparc/P148/J145/motioncorrected/*.mrc -t
csparc2star.py P148J293.cs P148J293_pass.cs P148J293_loc.cs P148J293.star
sed -i ’s/particles.mrc/particles.mrcs/g’ P148J293.star
However, when I try to extract the particles in relion, it doesn’t find any particles.
The y co-ordinates of the particles seem to be off the range of the micrographs.
Does anyone have any idea whats going on?
Since you already had particles from Relion, why not simply import the particles .star file into cryoSPARC? Then after you process you can simply convert back and use
--copy-micrograph-coordinates to recover Relion’s coordinates from your original .star file. 2D classification in CS is fast enough that I would just take this approach instead.
Still, as to your second question, when you export your cryoSPARC-picked particles, you probably need to correct the rlnMicrographName entries to a path that Relion will see. They are probably Jxxx/import/blah.mrc symlinks made by CS, and you can edit them to reflect the original path seen by Relion. You may also need
--inverty or some combination in order to get the coordinates right from Relion’s perspective.