A script to obtain the Fourier Shell Correlation (FSC) of a 3D tomographic reconstruction.
Usage: In FSC the tilt series is divided into two parts according to even/odd tilt angles. You can do
this with the below code, just copy/paste it to a new script window and have the tilt series in front.
Then you have to reconstruct these tilt series independently and think about the new tilt angles.
There is however a problem in DM: one of the two splitted tilt series does not have a zero tilt image; when
one tries to put the tilt angles such that there is no zero tilt angle, DM changes the starting tilt value such
that there is a zero tilt angle. This is not possible in my knowledge to change, not even with
pretagging the tilt series with correct tilt angles. Therefore you must reconstruct these tilt series in IMOD
(tilt seriesa.mrc -thickness z -tiltfile seriesa.tlt seriesarec.mrc) before you do the fft's. One would
also rotate the latter reconstruction by the negative of the tilt increment in y but it is unclear how this would
affect the FSC.
Since i have not found a way in DM to obtain 3D fft's you must do this e.g in matlab or IMOD -
check the script 3D radial intensity for help. Remember to taper the edges of the reconstructions before to avoid false FSC.
The real part of the fft is sufficient to save since of symmetry reasons the imaginary part will vanish anyway.
Give these (real) fft's of the reconstructions as the two images asked for.
The image size in x,y and z should be the same, although this is not checked.
Correct the sx as the original pixelsize from the tilt series acquired with the microscope.
Choose a step size for the radial resolution e.g 0.5 or 1. There is no shell width.
The edge variable is for cutting the stack in z for maximum finding, e.g find max from zsize/2 -edge to zsize/2 + edge.
The number limit is the maximum difference in origin in xyz of the two fft's. If the origins differ more than this
number then the second fft is transposed accordingly. The shifts are applied to the original images so don't save them overwriting the originals.
// Currently the largest memory block i have on DM is 2146 MB, with this it is possible to run this script with 700x700x700 fft's.
// Without DM2 these are the largest fft's you will get (also in DM2 there is a 3D fft option).