Skip to main content

Plugin to use motioncor programs within the Scipion framework

Project description

This plugin allows to use motioncor3 program within the Scipion framework.

Motioncor3 is a GPU-accelerated program for correction of electron beam-induced sample motion. It is developed by Shawn Zheng.

PyPI release License Supported Python versions SonarCloud quality gate Downloads


  1. If you have imported movies with a gain file in DM4 format, you need to flip the gain reference upside-down in the motioncor protocol! (see details)

  2. When importing EER movies, you should specify dose per single EER frame during import step.

  3. When importing EER tilt-series movies, you should specify dose per tilt during import step. It is not relevant for motion-correction (no dose-weighting is done here), but will be used later on.

  4. If you are processing EER movies and providing *.gain reference file camera defects will be automatically extracted from the gain file header and converted to Motioncor format. This step is omitted if you provide a defects file yourself.


You will need to use 3.0+ version of Scipion to be able to run these protocols. To install the plugin, you have two options:

  1. Stable version

scipion installp -p scipion-em-motioncorr
  1. Developer’s version

    • download repository

    git clone -b devel
    • install

    scipion installp -p /path/to/scipion-em-motioncorr --devel

Important: Starting from plugin v3.15, the config variables have been renamed. See: scipion3 config -p motioncorr

  • Motioncor binaries will be installed automatically with the plugin, but you can also link an existing installation.

  • Default installation path assumed is software/em/motioncor3-1.0.1, if you want to change it, set MOTIONCOR_HOME in scipion.conf file to the folder where the Motioncor3 is installed.

  • Depending on your CUDA version this plugin will guess the right default binary from MotionCor3_1.0.1_CudaXY_10-26-2023 (X is for cuda major version, Y for the minor). You can always set a different one by explicitly setting MOTIONCOR_BIN variable.

  • If you need to use CUDA different from the one used during Scipion installation (defined by CUDA_LIB), you can add MOTIONCOR_CUDA_LIB variable to the config file. Various binaries can be downloaded from the official UCSF website.

For an automatically updated installation of motioncor binaries, do not define neither MOTIONCOR_HOME nor MOTIONCOR_BIN.

To check the installation, simply run the following Scipion tests:

scipion test motioncorr.tests.test_protocols_motioncor.TestMotioncorAlignMovies
scipion test motioncorr.tests.test_protocols_tomo.TestMotioncorTiltSeriesAlignMovies


Motioncor3 is provided under BSD-3-Clause license

Supported versions

motioncor3 1.0.1 motioncor2 1.6.4


  • movie alignment

  • align tilt-series movies


  1. Shawn Q Zheng, Eugene Palovcak, Jean-Paul Armache, Kliment A Verba, Yifan Cheng & David A Agard. MotionCor2: anisotropic correction of beam-induced motion for improved cryo-electron microscopy. Nature Methods volume 14, pages 331–332 (2017).

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scipion-em-motioncorr-3.16.1.tar.gz (41.4 kB view hashes)

Uploaded source

Built Distribution

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page