Skip to main content

Plugin to use Sphire programs within the Scipion framework

Project description

This plugin provides a wrapper for some programs of SPHIRE software suite:

  • JANNI (Just Another Noise 2 Noise Implementation): a neural network denoising tool

  • crYOLO: a fast and accurate particle picking procedure. It’s based on convolutional neural networks and utilizes the popular You Only Look Once (YOLO) object detection system.

PyPI release License Supported Python versions SonarCloud quality gate Downloads


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

    It can be installed in user mode via Scipion plugin manager (Configuration > Plugins) or using the command line:

    scipion installp -p scipion-em-sphire
  2. Developer’s version

    • download repository

    git clone -b devel
    • install

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

crYOLO software will be installed automatically with the plugin but you can also use an existing installation by providing CRYOLO_ENV_ACTIVATION (see below).

Important: you need to have conda (miniconda3 or anaconda3) pre-installed to use this program.

To check the installation you can run the plugin’s tests:

scipion test --grep sphire --run

Configuration variables

CONDA_ACTIVATION_CMD: If undefined, it will rely on conda command being in the PATH (not recommended), which can lead to execution problems mixing scipion python with conda ones. One example of this could can be seen below but depending on your conda version and shell you will need something different:

CONDA_ACTIVATION_CMD = eval “$(/extra/miniconda3/bin/conda shell.bash hook)”

CRYOLO_ENV_ACTIVATION (default = conda activate cryolo-1.9.7): Command to activate the crYOLO environment.

NAPARI_ENV_ACTIVATION (default = conda activate napari-0.4.17): Command to activate napari environment (used only for tomo picker viewer).

Downloaded crYOLO and JANNI general models can be found in the following locations:

  • <SCIPION_HOME>/software/em/cryolo_model-[model_version]

  • <SCIPION_HOME>/software/em/cryolo_negstain_model-[model_version] (not installed by default)

  • <SCIPION_HOME>/software/em/janni_model-[model_version]

Running on CPU

crYOLO can run on CPU, however this is only recommended for picking protocol and not training. For that reason the CPU implementation is only available for the crYOLO-Picking protocol.

The CPU implementation of crYOLO is not installed by default. Therefore you must install the cryoloCPU-[version] package in the Configuration > Plugins >> scipion-em-sphire or by running:

scipion installb cryoloCPU

The CPU version of crYOLO is installed under a separate conda environment called cryoloCPU-[version]. If you already have a cryoloCPU environment pre-installed, then modify the following variable in the Scipion config file:

CRYOLO_ENV_ACTIVATION_CPU = conda activate envName

Supported versions

1.8.5, 1.9.3, 1.9.6, ,1.9.7


  • import crYOLO training model

  • crYOLO picking

  • crYOLO tomo picking

  • crYOLO training

  • JANNI denoising


  • Wagner, T. et al. SPHIRE-crYOLO is a fast and accurate fully automated particle picker for cryo-EM. Communications Biology 2, (2019).

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-sphire-3.1.14.tar.gz (49.1 kB view hashes)

Uploaded Source

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