Alignment 3D unit

Hello, we have a high resolution dataset that reaches the nyquist frequency processed by nominal pixel size and thus we are trying to reextract the super resolution pixel size in Bayesian polishing in relion.

However one issue arises, this structure depends on the local alignment thus we have to copy the alignment3D parameter from previous result prior to polish. Now that the pixel size changed, we notice great resolution loss (pixel size change is considered) and we are suspecting that most columns in the alignments/3D is based on pixel size and we need to adjust accordingly. Therefore I was wondering if we could get some help in terms of the unit in alignments/3D columns in the cs file.

If possible, a brief online meeting will be very helpful.
Thanks a lot.

Specifically,
(‘alignments3D/split’, [0 0 0 … 1 1 1]),
(‘alignments3D/shift’, [[-3.6991794 2.3242605 ] [-0.11919823 -0.07308453] [ 0.20380807 0.67319894] … [-0.43797424 -0.09089207] [-0.08881145 -0.21567607] [-0.8070505 0.1129812 ]]),
(‘alignments3D/pose’, [[ 0.48828402 1.6474108 0.5337798 ] [ 1.2638842 1.0891789 -0.3482657 ] [-0.67655575 1.6800531 1.2956536 ] … [-1.6677825 0.20528896 0.47297508] [-1.6067528 0.49305445 0.18269044] [-1.1776335 1.2228471 -0.5726101 ]]),
(‘alignments3D/psize_A’, [1.09 1.09 1.09 … 1.09 1.09 1.09]),
(‘alignments3D/error’, [50551.355 50307.906 50124.83 … 49561.723 51890.113 52023.82 ]),
(‘alignments3D/error_min’, [0. 0. 0. … 0. 0. 0.]),
(‘alignments3D/resid_pow’, [0. 0. 0. … 0. 0. 0.]),
(‘alignments3D/slice_pow’, [70.66016 67.94922 59.101555 … 103.57423 88.777336 94.558586]),
(‘alignments3D/image_pow’, [50622.016 50375.855 50183.93 … 49665.297 51978.89 52118.38 ]),
(‘alignments3D/cross_cor’, [141.32031 135.89844 118.20311 … 207.14845 177.55467 189.11717]),
(‘alignments3D/alpha’, [0.8427902 0.88637686 0.7687062 … 0.9398721 0.9263102 0.92309606]),
(‘alignments3D/alpha_min’, [0.8427902 0.88637686 0.7687062 … 0.9398721 0.9263102 0.92309606]),
(‘alignments3D/weight’, [0. 0. 0. … 0. 0. 0.]),
(‘alignments3D/pose_ess’, [0. 0. 0. … 0. 0. 0.]),
(‘alignments3D/shift_ess’, [0. 0. 0. … 0. 0. 0.]),
(‘alignments3D/class_posterior’, [1. 1. 1. … 1. 1. 1.]),
(‘alignments3D/class’, [0 0 0 … 0 0 0]),
(‘alignments3D/class_ess’, [1. 1. 1. … 1. 1. 1.]),
(‘alignments3D/fulcrum’, [[ 0.02685979 0.04770071 -0.10288754] [ 0.02685979 0.04770071 -0.10288754] [ 0.02685979 0.04770071 -0.10288754] … [ 0.02685979 0.04770071 -0.10288754] [ 0.02685979 0.04770071 -0.10288754] [ 0.02685979 0.04770071 -0.10288754]]),
(‘alignments3D/object_pose’, [[ 0.44518158 1.6425681 0.56567824] [ 1.2615849 1.0890002 -0.3493171 ] [-0.675739 1.6826245 1.2951633 ] … [-1.6697423 0.22662511 0.4561903 ] [-1.6051637 0.47980082 0.18519755] [-1.1799097 1.221534 -0.57198715]]),
(‘alignments3D/object_shift’, [[-3.5927303 2.575664 ] [-0.1544187 -0.10831741] [ 0.16856588 0.6378046 ] … [-0.54134136 -0.12736717] [ 0.01557064 -0.24995609] [-0.84243375 0.07790927]]),
(‘alignments3D/local_pose’, [[ 0.04499677 -0.00954477 0.00954477] [ 0.00136354 0.00136354 0.00136354] [-0.00136354 -0.00136354 -0.00136354] … [-0.00409062 -0.02318015 -0.00409062] [-0.0014822 0.01009032 0.00679231] [ 0.00136354 0.00136354 0.00136354]]),
(‘alignments3D/local_shift’, [[-0.10546875 -0.24609375] [ 0.03515625 0.03515625] [ 0.03515625 0.03515625] … [ 0.10546875 0.03515625] [-0.10546875 0.03515625] [ 0.03515625 0.03515625]]),

These are the alignments3D params in my cs file. Thanks a lot.

Saw this recently. If you’ve re-motion corrected in RELION with super-res, there will be variation in particle position compared to the CryoSPARC patch motion as they work differently. End result is that the particles are now very slightly mis-aligned, which depending on severity can result in precipitous resolution loss - one dataset it barely mattered, a local refinement got resolution back, another dataset was unrecoverable and I ended up importing the RELION motion corrected micrographs, re-picking, classifying and reconstructing. End result was identical resolution, but polishing then worked without issues.

Also bear in mind that if extracting non-super-res positions from super-res data to multiply particle positions by two, and halve the pixel size.

Thanks a lot for the great help. We have redo the motion correction in relion in super res mode and import back to cryosprc to reextract, rather than re-extract the super-res particle in bayesian polish step.
This route worked without losing to much resolution and local refinement restored it.

Hi @nym2834610,

It looks like @rbs_sci’s advice was able to get you where you needed to be with this particle set. For posterity, we just wanted to confirm what @rbs_sci said in their post:

If you’ve re-motion corrected in RELION with super-res, there will be variation in particle position compared to the CryoSPARC patch motion as they work differently.

This will likely be true for any other motion correction software also. The particle positions wont be very far off (only a few pixels), so the particles don’t necessarily need to be manually shifted, just re-aligned/re-centered. Our recommendation is to run a global refinement prior to any local refinements for a particle stack that was obtained using particle coordinates of particles extracted from CS patch motion corrected micrographs and re-extracted from micrographs that were motion corrected in another software. This will ensure that the particles are properly aligned for use in local refinements or other downstream processing steps.

4 Likes