Aligning Successive Frames from K2 Camera


Introduction:

Aligns successive frames from a K2 Direct Electron Capture Camera using the methodology proposed in:
X Li, P Mooney, S Zheng, C R Booth, M B Braunfeld, S Gubbens, D A Agard & Y Cheng.
Electron counting and beam-induced motion correction enable near-atomic-resolution single-particle cryo-EM.
Nature Methods. 10, 584-590 (2013), doi:10.1038/nmeth.2472
THis is a global alignment over the whole image area, does not consider any movement of individual particles within the ice.
Can process a whole series of frame sets using a filelist.


Using procedure: 'framealign.spi'

Input files:

Note: ### denotes stem name of input set.

¤ filenames:            List of frame sets in MRC stacks (without filename extensions)
Frame sets must be in the current directory for file naming to work.
¤ [in].mrc:     MRC frame stacks
Frame stacks must be in the current directory.

Output files:

¤ ###: SPIDER stacks
¤ filtstk_###: Filtered stacks.
¤ shift_doc_###: Raw alignment shift doc file.
¤ mlr_shift_doc_###: Refined alignment shift doc file.
¤ shstk_###: Aligned frame image stacks.
¤ ali_###: Summed aligned image.


Processing Steps:

Convert images from MRC stack format to SPIDER stacks.
Uses: 'CP FROM MRC'

Reads:
     ¤ ###.frames.mrc: Stack of frames in MRC format
Creates:
     ¤ ###: Stack of frames in SPIDER format

Filter frame images to minimize central peak.
Uses: 'DN MED'

Reads:
     ¤ ###: Stack of frames
Creates:
     ¤ filtstk_###: Stack of filtered frames

Find pair-wise frame shifts.
Uses: 'AP SCC' to determine the shift offset between each frame and all other frames, subject to a consecutive exclusion zone which can be set in the procedure.

Reads:
     ¤ filtstk_###: Stack of filtered frames
Creates:
     ¤ shift_doc_###: Document file containing shift values

Refine alignment shifts.
Uses: 'ML'
Carries out multiple linear regression for refining the shift values found by previous step.

Reads:
     ¤ shift_doc_###: Document file containing shift values
Creates:
     ¤ mlr_shift_doc_###: Document file containing refined shift values

Shift align frame images.
Uses: 'SH F'
Initial shift takes far longer since FFTW3 Fourier Transform plans are calculated and cached for reuse.

Reads:
     ¤ ###: Stack of frames
     ¤ mlr_shift_doc_###: Document file containing refined shift values
Creates:
     ¤ shst_###: Stack of frames

Sum the aligned frame images.
Uses: 'AD S'

Reads:
     ¤ shst_###: Stack of frames
Creates:
     ¤ ali_###: Stack of frames


Differences from Li et.al.:

  1. Uses SPIDER stacks not MRC stacks. MRC stacks are a poor choice of file format for stacked images. See rant.
  2. Uses median filter instead of a 'B factor filter'. This median filter is faster and just as good as the 'B factor filter'. If you do not agree, alter your procedure to use: 'FF' instead.
  3. SPIDERS 'AP SCC' uses polygonal approximation for sub-pixel location. Although theoretically inferior to the Fourier based sub-pixels used by Li et.al., this operation seems to give better cross-correlation when compared to the raw values reported by dosefgpu.
  4. SPIDERS 'ML' operation uses a modification of the Levenberg-Marquardt algorithm as implemented in the Minpack package lmdif1.f and lmdif.f subroutines.
    See: Argonne National Laboratory. Minpack Project. March 1980.
    Burton S. Garbow, Kenneth E. Hillstrom, Jorge J. More
    I am not certain what Li et.al. use.
  5. Does not use GPU for processing but is still reasonably fast after first image.

Source: framealign.html         Page updated: Nov. 13, 2017       ArDean Leith