FSC noise substitution in local refinement (new)


It’s great that FSC noise substitution is an option now in local refinement (new)! However, it seems not to be respected in setting the resolution for alignment in the next round of refinement - is this intended?

For example, I have a local refinement that is running currently where the GS-FSC resolution is 4.4A, based on the corrected curve. However, the max alignment radius for the next iteration is set to 3.8A, which corresponds to the resolution of the “loose” curve, not the corrected FSC. It would be better I think to use the resolution from the corrected FSC for setting alignment resolution.

Alternatively/additionally, it would be good to be able to set the FSC threshold for choosing the alignment resolution - I would tend to be a bit more conservative with this when using smaller masks where overfitting is more of an issue.


Hi @olibclarke,

This is right – the current behaviour actually takes the maximum filter resolution between the loose mask, and corrected (tight mask), to prevent cases where the mask is too tight in early iterations and the corrected curve spikes downward a lot. Your suggestion makes sense though, i.e. to enforce using the mask’s corrected FSC for filtering. Perhaps this should be added as another parameter… we weren’t entirely sure what the best way to proceed was, since the ideal behaviour depends on the size of the mask, but we will add this to our issue/feature tracker.

Custom thresholding makes sense too, I’ll also add this to our issue/feature tracker!


Yes exactly - because the ideal behavior depends on the size of the mask, it would be great to have a way to tune the behavior to tweak it for individual cases

We have been getting great results using the gaussian prior with local refinement by the way - really dramatic improvements with very small masks that were previously too small to use without unacceptable overfitting/streaking

1 Like

Awesome – It’s good to know that it would be useful to have finer control over all these decisions like filtering, thresholding, etc.!

Glad to know that the prior helps - it was definitely intended to be used in more challenging cases where alignment without regularization fails.


Also - one other question - when using the gaussian prior in conjunction with the recenter rotations/shifts option, is the gaussian prior always with respect to the initial input orientations? Or is it penalizing large changes from the current orientations/offsets? I think it is doing the former but the latter might be helpful in certain cases

With re-centering, the prior is penalizing deviations relative to the current orientations/offsets. So at the end of the job, when re-centering is on, the overall deviation from the initial poses can be larger than the per-iteration search extents. With re-centering off is when it would penalize deviations relative to the initial orientations/offsets. Also, the alignment magnitude plots show per-iteration deviations when re-centering is on, but global deviations when re-centering is off (perhaps this should be documented better). Does the behaviour seem inconsistent with this?


Ah I think the second part of this is what got me - it is not clear at all that these plots are showing something different when the recentering option is on. This should be clearly flagged on the plot I think. Or perhaps just show per iteration and global plots for both?

Right ok, yeah this is definitely confusing. I agree this should be labeled on the plots. Will add this!

1 Like

I think it might be better just to show global plots for both - with the per iteration plots in the recentering case, I then don’t know how far it has drifted - that is if a particle changes orientation, and then changes back, I can’t tell the difference between that and two changes in the same direction. I think the global plot would be more informative, and then there would be no confusion