Local refinement with downsized particles after symmetry expansion

Hello. I am experiencing a strange problem with local refinement using downsized particles (after symmetry expansion in cryosparc). Basically the symptom is that although I got normal maps after homogeneous refinement, once I performed symmetry expansion and refined the particles locally I got maps that looked overrefined with very discontinuous density and high background noise.

Here are a little bit more details:

  1. I tried to downscale particles either in Relion by rescaling while re-extracting particles, or in cyropsarc with its “downscale particles” job. Both approaches give the same result.
  2. I tried to refine both with and without non-uniform option, but it didn’t make a different.
  3. I also tried to limit the maximum align resolution to 4 A, but it didn’t help.

Is there any trick to prevent this from happening?

Thank you very much,

Hi @chenzhao,

We’ve observed this issue of high background noise in local refinement, especially with particles that have been significantly downsampled from their original size. To help us figure out the source of this, would it be possible to post screenshots of the part of the job stream-log showing the initial real and Fourier space slices of the initial model? (You can directly message these to me if you’d prefer that instead of posting them here). As well, what is the initial box size of the particles, and what box size were they downsampled to?

As far as tricks to avoid this happening, one thing that might help is increasing the initial lowpass resolution value – instead of 20 A, values like 30 or 40 A might work better. The reason for this is that unlike other refinement jobs, local refinement currently uses a “soft” initial lowpass filtering instead of a hard cutoff at a specific resolution, meaning that reconstructions with smaller box sizes may have too much signal at high frequencies. In particular, the initial Fourier slices shouldn’t have signal beyond a radius equal to half the box size, i.e. all signal should ideally be within a central inscribed circle in the box. For example in the image below, there is signal beyond that radius, indicating that it should be lowpass filtered to a lower resolution.

Below this is the same model but lowpass filtered to 40 A, with better Fourier space slices; this job avoided the high frequency background noise that was present in the above job.

Best, Michael

1 Like

Hi Michael,

Thank you for your detailed reply! I forgot to mention that I also tried using 60 A as the low-pass filter for initial model, together with limiting the maximum alignment resolution to 4 A. However, it produced the same final results. I will PM you with screenshots of my initial real space and Fourier space slices for this specific job.

I really appreciate your help!


Oh by the way, I just did a test, where I used:
local shift search extent (pix): 0.01
local rotation search extent (degree): 0.01
alignment resolution (degrees): 0.001
as the parameters for local search, with default values of initial lowpass-filter resolution and maximum alignment resolution (A). This is how I normally do cryosparc_reconstruct :slight_smile: :stuck_out_tongue:

This job also outputs “over-refined” map.

Hope this information could be helpful for diagnosis!


I am sorry but just one more point, I did another test as the following:

  • downscaled particles
  • local refinement
  • no symmetry expansion
  • local shift search extent (pix): 0.01
  • local rotation search extent (degree): 0.01
  • alignment resolution (degrees): 0.001
  • initial lowpass-filter: 60 A

I still got bad map.

But as I said earlier, homogeneous refinement or NU-refinement worked fine. This problem seems to be local refinement specific, and is not related to symmetry expansion. However, it is not really “over-refinement”, because even if I do not allow the particles to change poses the artifact in EM density still persists.

Does this count as a bug report? :stuck_out_tongue:

I appreciate your help!


Hi @chenzhao,

Thank you for providing detailed information! This is interesting – just to confirm, are you refining the entire volume, or a significantly smaller portion within the volume? In any case, it is important that the masks used initially have soft edges, and should be generated as described in the “Mask Selection and Generation” section of this case study.

As for the issue of strong ripples in the map as you describe, some users have previously found that in their case, the “ripples” extending over the entire map are only present in the full and sharpened maps – i.e. the A and B half maps don’t have this phenomenon. In the job output, could you download and view either half map in Chimera and let me know if any of them show the “ripples” that you are observing? If the ripples are not present, do the half maps visually show any improvement over the volume that you input into the local refinement job?

This is definitely a bug, and is part of the issues that we hope to resolve in local refinement in future versions; unfortunately though, it is an issue we’ve seen before and don’t have a universal solution to right now. Regardless, do let me know if the half maps from any of your problematic local refinement jobs show this issue too.

I hope this helps, and best regards,

Hi @mmclean,

To answer your question, I have used a mask that is as large as the full molecule, and in fact it is the mask generated by a previous cryosparc homogeneous refinement job (I started to become quite lazy). And when I make masks manually, I always ask for extension and soft edges.

And just to emphasize, local refinement with my full-sized particles worked fine. I only have this problem with downsized particles.

To address your last point, the last test I ran was a perfect example with severe artifacts. Again, in that particular run, I did:

downscaled particles
local refinement
mask and reference model from a previous homogenous refinement job
particle initial poses from the same homogenous refinement job which goes to good resolution
no symmetry expansion
local shift search extent (pix): 0.01
local rotation search extent (degree): 0.01
alignment resolution (degrees): 0.001
initial lowpass-filter: 60 A

In my full and sharpened maps, I have almost no signal at all, just granulated random noise in a ball.
However, both of my half maps are good, similar to what I got from homogeneous refinement.
(Masked real-space slice A and B looks pretty OK, so I should have realized this before.)
This is the case no matter whether I allow the particle poses to change or not.
When I performed symmetry expansion, the situation is not as bad, because I can at least see the shape of my molecule, even though its density is really bad.

I hope the information is helpful. This problem is really strange that half maps are good (thank you for pointing this out to me). I really would like to know what is going on if this bug has ever been fixed.

Thank you very much for your help,

Hi Chen,

Thank you for the clarifications, and apologies for the delay in response – this information will certainly be helpful in investigating this issue further! This has clarified that the issue occurs somewhere during the post-processing (after alignment and reconstruction), since the half-maps taken directly after reconstruction are intact.

If the local refinement is showing real improvement (over the initial model) in each of the half-maps, and you would like to continue processing using the results, one current workaround that I could suggest is to download and manually average the half-maps. This could be done using for example the vop add command in UCSF Chimera, and specifying scaleFactors of 0.5 for each map. This won’t give exactly the same result as the standard outputted map in a regular refinement, due to some re-weighting of the final Fourier space maps using the FSC curves, but it may be helpful until we have a fix.

Again, thank you for this information – we have this issue tracked and this will help us in debugging!


Hi @mmclean,

I apologize for my super delayed response… I was busy with other things and didn’t have a chance to work on the structures… And thank you for the suggestion, which should certainly do the trick. Very interesting bug and hopefully it could be resolved at some point in the future.