Issue with particles extracted from micrographs processed in cryosparc

Hi All,

My refinement results are strange for particles extracted from micrographs that were Motion corrected and CTF (patch CTF estimation) determined in cryopsarc:

This same particles extracted from Warp or Relion (Gctf for Ctf), produced expected results:

Is this from Ctf issues? I used the classic mode for the cryosparc CTF patch estimation since there is an error with the new algorithm currently. Other than that, I used the default parameters in both motion correction and ctf estimation. Or maybe this is due to something else?


Hey @jaremko,

Were these particles extracted using the Extract from Micrographs (CPU) job? There is currently a minor bug during CPU extraction that we hope to fix in the next release, but the GPU extraction job should not have this bug. Could you let us know if the bug persists when re-extracting the particles using the GPU “Extract from Micrographs” job?


Hi @mmclean,

I actually extracted using the GPU extraction job:


Can you reach Nyquist when you apply fourier-cropping to 1/3 the box size?

Hi @tarek,

I don’t think it does. Here is refinement results (also strange) from 4x bin extraction (nyquist 6.848):


Hi Matt - how do the results of Patch CTF look? Maybe something is going wrong there? Do the CTF fits look reasonable?


you can clearly see masking artifacts artificialy bumping the fsc.
I second Oli, check CTF.
double check pixelsize, CS, voltage etc set during import.

run 2D classification and post class averages.


Hi @olibclarke and @tarek,

Here are results from the 1st micrograph processed in Patch CTF:

I basically used the default settings for Patch CTF:

And I double checked the pixelsize, CS, voltage etc, all look good (same values I used in Relion/Warp):


if CTF is correct check particle images from both stacks, e.g. with or relion.

Hmm nothing suspicious there then… how are you picking/extracting? how do 2D classes compare?

Hi @tarek and @olibclarke,

I’ll take a look at the particle images.

I pick using boxnet implemented in Warp, extraction of these particles with Warp (Ctf in Warp) and Relion (Ctf in Relion) generates the expected refinement results (see start of post). But when I extract in Cryosparc from a Patch CTF job, I get these strange results.


Ah - my guess would be different coordinate conventions - that you are not extracting the particles you think you are.

Have you tried doing a manual picking or inspect picks job with these particles as input to confirm they match the particles visually?

Hi @olibclarke,

I’ll look into that, but I don’t suspect this is the issue. The reconstructions between the two cases are too similar for the coordinates to be way off. After extraction, I performed an ab initio first than homo refinement, so I don’t bias with an external template.


Ok - so ab initio and 2D classes looked fine, but then homogeneous refinement went funky? That is very strange. Were you seeing clean secondary structural features in the 2D and ab initio?

Hi @olibclarke,

Yes, pretty strange. Here are the results from 2D Classification:


the classes indeed look quite good. was that on bin4 data?
Try ab initio and homogeneous refine with only the top shiny classes (rows 1-2) again.
The lower ones appear fuzzy.
I am not aware cryosparc is more sensitive towards “junk” particles than relion but if the fraction is too high that can cause your problem.
Alternatively try to rescue good particles by heterogeneous refinement using the ab initio reference.

The refinements were both done in cryosparc, just different preprocess and extraction programs. And this 2D class is from unbinned particles.

My goal was to attempt cryosparc’s local motion correction on these particles which were extracted from Warp and cleaned up by hetero refinement in cryosparc. This is why I re-imported and re-extracted these “clean” particle coordinates from movies processed in cryosparc. Thats when I noticed the strange behavior in cryosparc refinement and I don’t feel like using the local motion correction until I figure out what is going on here.

I didn’t think I would have to clean the particle stack since the stack I imported was already cleaned up. Does cryosparc weight the particles differently between the different stacks?


From e.g. this class it seems like maybe there are some hot pixels/defects which are present in the Patch Motion images but perhaps absent after Warp.

I don’t know if that could be causing your issue (I doubt it), but something to look at maybe. If you look at the lowpass filtered particles, do they look well centered and happy?


I’ve never been able to see the low-pass filtered individual particles well, but here are a few from the Extraction Job:

On side note, do you think these hot pixels/defects would be removed if I used the defects file from our camera? We currently don’t use them for processing.


Hi @jaremko,
Thanks for reporting this and all the detail. It’s definitely a strange case. And thanks @olibclarke @tarek for your suggestions!

@jaremko, to confirm, the 2D classes you posted so far are from the cryoSPARC-extracted particles, correct? Could you show us 2D classes on the Warp/Relion-extracted particles as well to see if @olibclarke’s hypothesis about defect pixels might be right?

From the density images from refinement it definitely looks like an issue with either masking, or CTF. However, if CTF was the problem 2D classes would also be poor, so it seems like it’s masking.
Can you try running the homogeneous refinement again (with cryoSPARC extracted particles), but this time with a much wider dynamic mask:

  • dynamic mask near : 20A
  • dynamic mask far: 40A

It’s unclear why the same masking works with the warp/relion extracted particles but this will hopefully give a clue.