CryoSPARC Guide
  • About CryoSPARC
  • Current Version
  • Licensing
    • Non-commercial license agreement
  • Setup, Configuration and Management
    • CryoSPARC Architecture and System Requirements
    • CryoSPARC Installation Prerequisites
    • How to Download, Install and Configure
      • Obtaining A License ID
      • Downloading and Installing CryoSPARC
      • CryoSPARC Cluster Integration Script Examples
      • Accessing the CryoSPARC User Interface
    • Deploying CryoSPARC on AWS
      • Performance Benchmarks
    • Using CryoSPARC with Cluster Management Software
    • Software Updates and Patches
    • Management and Monitoring
      • Environment variables
      • (Optional) Hosting CryoSPARC Through a Reverse Proxy
      • cryosparcm reference
      • cryosparcm cli reference
      • cryosparcw reference
    • Software System Guides
      • Guide: Updating to CryoSPARC v4
      • Guide: Installation Testing with cryosparcm test
      • Guide: Verify CryoSPARC Installation with the Extensive Validation Job (v4.3+)
      • Guide: Verify CryoSPARC Installation with the Extensive Workflow (≤v4.2)
      • Guide: Performance Benchmarking (v4.3+)
      • Guide: Download Error Reports
      • Guide: Maintenance Mode and Configurable User Facing Messages
      • Guide: User Management
      • Guide: Multi-user Unix Permissions and Data Access Control
      • Guide: Lane Assignments and Restrictions
      • Guide: Queuing Directly to a GPU
      • Guide: Priority Job Queuing
      • Guide: Configuring Custom Variables for Cluster Job Submission Scripts
      • Guide: SSD Particle Caching in CryoSPARC
      • Guide: Data Management in CryoSPARC (v4.0+)
      • Guide: Data Cleanup (v4.3+)
      • Guide: Reduce Database Size (v4.3+)
      • Guide: Data Management in CryoSPARC (≤v3.3)
      • Guide: CryoSPARC Live Session Data Management
      • Guide: Manipulating .cs Files Created By CryoSPARC
      • Guide: Migrating your CryoSPARC Instance
      • Guide: EMDB-friendly XML file for FSC plots
    • Troubleshooting
  • Application Guide (v4.0+)
    • A Tour of the CryoSPARC Interface
    • Browsing the CryoSPARC Instance
    • Projects, Workspaces and Live Sessions
    • Jobs
    • Job Views: Cards, Tree, and Table
    • Creating and Running Jobs
    • Low Level Results Interface
    • Filters and Sorting
    • View Options
    • Tags
    • Flat vs Hierarchical Navigation
    • File Browser
    • Blueprints
    • Workflows
    • Inspecting Data
    • Managing Jobs
    • Interactive Jobs
    • Upload Local Files
    • Managing Data
    • Downloading and Exporting Data
    • Instance Management
    • Admin Panel
  • Cryo-EM Foundations
    • Image Formation
      • Contrast in Cryo-EM
      • Waves as Vectors
      • Aliasing
  • Expectation Maximization in Cryo-EM
  • Processing Data in cryoSPARC
    • Get Started with CryoSPARC: Introductory Tutorial (v4.0+)
    • Tutorial Videos
    • All Job Types in CryoSPARC
      • Import
        • Job: Import Movies
        • Job: Import Micrographs
        • Job: Import Particle Stack
        • Job: Import 3D Volumes
        • Job: Import Templates
        • Job: Import Result Group
        • Job: Import Beam Shift
      • Motion Correction
        • Job: Patch Motion Correction
        • Job: Full-Frame Motion Correction
        • Job: Local Motion Correction
        • Job: MotionCor2 (Wrapper) (BETA)
        • Job: Reference Based Motion Correction (BETA)
      • CTF Estimation
        • Job: Patch CTF Estimation
        • Job: Patch CTF Extraction
        • Job: CTFFIND4 (Wrapper)
        • Job: Gctf (Wrapper) (Legacy)
      • Exposure Curation
        • Job: Micrograph Denoiser (BETA)
        • Job: Micrograph Junk Detector (BETA)
        • Interactive Job: Manually Curate Exposures
      • Particle Picking
        • Interactive Job: Manual Picker
        • Job: Blob Picker
        • Job: Template Picker
        • Job: Filament Tracer
        • Job: Blob Picker Tuner
        • Interactive Job: Inspect Particle Picks
        • Job: Create Templates
      • Extraction
        • Job: Extract from Micrographs
        • Job: Downsample Particles
        • Job: Restack Particles
      • Deep Picking
        • Guideline for Supervised Particle Picking using Deep Learning Models
        • Deep Network Particle Picker
          • T20S Proteasome: Deep Particle Picking Tutorial
          • Job: Deep Picker Train and Job: Deep Picker Inference
        • Topaz (Bepler, et al)
          • T20S Proteasome: Topaz Particle Picking Tutorial
          • T20S Proteasome: Topaz Micrograph Denoising Tutorial
          • Job: Topaz Train and Job: Topaz Cross Validation
          • Job: Topaz Extract
          • Job: Topaz Denoise
      • Particle Curation
        • Job: 2D Classification
        • Interactive Job: Select 2D Classes
        • Job: Reference Based Auto Select 2D (BETA)
        • Job: Reconstruct 2D Classes
        • Job: Rebalance 2D Classes
        • Job: Class Probability Filter (Legacy)
        • Job: Rebalance Orientations
        • Job: Subset Particles by Statistic
      • 3D Reconstruction
        • Job: Ab-Initio Reconstruction
      • 3D Refinement
        • Job: Homogeneous Refinement
        • Job: Heterogeneous Refinement
        • Job: Non-Uniform Refinement
        • Job: Homogeneous Reconstruction Only
        • Job: Heterogeneous Reconstruction Only
        • Job: Homogeneous Refinement (Legacy)
        • Job: Non-uniform Refinement (Legacy)
      • CTF Refinement
        • Job: Global CTF Refinement
        • Job: Local CTF Refinement
        • Job: Exposure Group Utilities
      • Conformational Variability
        • Job: 3D Variability
        • Job: 3D Variability Display
        • Job: 3D Classification
        • Job: Regroup 3D Classes
        • Job: Reference Based Auto Select 3D (BETA)
        • Job: 3D Flexible Refinement (3DFlex) (BETA)
      • Postprocessing
        • Job: Sharpening Tools
        • Job: DeepEMhancer (Wrapper)
        • Job: Validation (FSC)
        • Job: Local Resolution Estimation
        • Job: Local Filtering
        • Job: ResLog Analysis
        • Job: ThreeDFSC (Wrapper) (Legacy)
      • Local Refinement
        • Job: Local Refinement
        • Job: Particle Subtraction
        • Job: Local Refinement (Legacy)
      • Helical Reconstruction
        • Helical symmetry in CryoSPARC
        • Job: Helical Refinement
        • Job: Symmetry search utility
        • Job: Average Power Spectra
      • Utilities
        • Job: Exposure Sets Tool
        • Job: Exposure Tools
        • Job: Generate Micrograph Thumbnails
        • Job: Cache Particles on SSD
        • Job: Check for Corrupt Particles
        • Job: Particle Sets Tool
        • Job: Reassign Particles to Micrographs
        • Job: Remove Duplicate Particles
        • Job: Symmetry Expansion
        • Job: Volume Tools
        • Job: Volume Alignment Tools
        • Job: Align 3D maps
        • Job: Split Volumes Group
        • Job: Orientation Diagnostics
      • Simulations
        • Job: Simulate Data (GPU)
        • Job: Simulate Data (Legacy)
    • CryoSPARC Tools
    • Data Processing Tutorials
      • Case study: End-to-end processing of a ligand-bound GPCR (EMPIAR-10853)
      • Case Study: DkTx-bound TRPV1 (EMPIAR-10059)
      • Case Study: Pseudosymmetry in TRPV5 and Calmodulin (EMPIAR-10256)
      • Case Study: End-to-end processing of an inactive GPCR (EMPIAR-10668)
      • Case Study: End-to-end processing of encapsulated ferritin (EMPIAR-10716)
      • Case Study: Exploratory data processing by Oliver Clarke
      • Tutorial: Tips for Membrane Protein Structures
      • Tutorial: Common CryoSPARC Plots
      • Tutorial: Negative Stain Data
      • Tutorial: Phase Plate Data
      • Tutorial: EER File Support
      • Tutorial: EPU AFIS Beam Shift Import
      • Tutorial: Patch Motion and Patch CTF
      • Tutorial: Float16 Support
      • Tutorial: Particle Picking Calibration
      • Tutorial: Blob Picker Tuner
      • Tutorial: Helical Processing using EMPIAR-10031 (MAVS)
      • Tutorial: Maximum Box Sizes for Refinement
      • Tutorial: CTF Refinement
      • Tutorial: Ewald Sphere Correction
      • Tutorial: Symmetry Relaxation
      • Tutorial: Orientation Diagnostics
      • Tutorial: BILD files in CryoSPARC v4.4+
      • Tutorial: Mask Creation
      • Case Study: Yeast U4/U6.U5 tri-snRNP
      • Tutorial: 3D Classification
      • Tutorial: 3D Variability Analysis (Part One)
      • Tutorial: 3D Variability Analysis (Part Two)
      • Tutorial: 3D Flexible Refinement
        • Installing 3DFlex Dependencies (v4.1–v4.3)
      • Tutorial: 3D Flex Mesh Preparation
    • Webinar Recordings
  • Real-time processing in cryoSPARC Live
    • About CryoSPARC Live
    • Prerequisites and Compute Resources Setup
    • How to Access cryoSPARC Live
    • UI Overview
    • New Live Session: Start to Finish Guide
    • CryoSPARC Live Tutorial Videos
    • Live Jobs and Session-Level Functions
    • Performance Metrics
    • Managing a CryoSPARC Live Session from the CLI
    • FAQs and Troubleshooting
  • Guides for v3
    • v3 User Interface Guide
      • Dashboard
      • Project and Workspace Management
      • Create and Build Jobs
      • Queue Job, Inspect Job and Other Job Actions
      • View and Download Results
      • Job Relationships
      • Resource Manager
      • User Management
    • Tutorial: Job Builder
    • Get Started with CryoSPARC: Introductory Tutorial (v3)
    • Tutorial: Manually Curate Exposures (v3)
  • Resources
    • Questions and Support
Powered by GitBook
On this page
  • Description
  • DeepEMhancer License
  • Installation
  • Finding the executable path
  • (Optional) Create a shell script
  • (Optional) Set DeepEMhancer executable path as project-level default parameter
  • Inputs
  • Outputs
  • Common Parameters
  • Next Steps
  • References
  1. Processing Data in cryoSPARC
  2. All Job Types in CryoSPARC
  3. Postprocessing

Job: DeepEMhancer (Wrapper)

Overview of the DeepEMhancer Wrapper in CryoSPARC.

PreviousJob: Sharpening ToolsNextJob: Validation (FSC)

Last updated 7 months ago

Description

This job is a wrapper for , a deep learning model trained to perform masking-like and sharpening-like postprocessing on cryo-EM maps [1].

DeepEMhancer License

Structura Biotechnology Inc. and CryoSPARC do not license nor distribute DeepEMhancer binaries. Please ensure you have your own copy of DeepEMhancer licensed and installed under the terms of its .

Installation

For the following instructions, do not use the conda command or environment that is installed by CryoSPARC. This installation is destroyed and recreated with CryoSPARC updates, so new environments created by it will be erased and any changes made to it may break other CryoSPARC jobs.

DeepEMhancer depends on other python packages outside of what CryoSPARC provides. In order to install DeepEMhancer using a conda environment, you must use a conda environment manager and a conda environment that is separate from the CryoSPARC conda/python installation, and use that environment to install dependencies.

Install deepEMhancer following one of the methods described in the deepEMhancer repository at .

Important considerations for Master/Worker or Cluster installations: The path to the conda installation on the machine hosting cryosparc_master must exactly match the path on machines hosting cryosparc_worker. This may be achieved by creating the conda environment in a shared directory that is mounted under the same path on the CryoSPARC master and all workers.

The conda installation directory must be accessible by the CryoSPARC Linux user account with the required permissions for executing the deepemhancer script.

Finding the executable path

With deepEMhancer installed and its conda environment active in the current shell, run

which deepemhancer

to find the full path to the deepEMhancer script. It should be similar to this:

/home/cryosparcuser/miniforge3/envs/deepEMhancer_env/bin/deepemhancer

Instead of miniforge3, the conda environment manager may have been installed in a differently named directory, like anaconda3 or miniconda3, depending on which conda environment manager you chose to install. Use the applicable directory name when specifying the Path to deepEMhancer executable job parameter or inside the (optional) wrapper shell script.

When running the CryoSPARC wrapper, input this as the value for the ‘Path to deepEMhancer executable’ parameter.

(Optional) Create a shell script

The CryoSPARC and deepEMhancer environments and dependencies may conflict. As a workaround, you may need to wrap deepEMhancer in a shell script that deactivates the CryoSPARC environment and activates the deepEMhancer one.

#!/usr/bin/env bash
if command -v conda > /dev/null 2>&1; then
conda deactivate > /dev/null 2>&1 || true  # ignore any errors
conda deactivate > /dev/null 2>&1 || true  # ignore any errors
fi
unset _CE_CONDA
unset CONDA_DEFAULT_ENV
unset CONDA_EXE
unset CONDA_PREFIX
unset CONDA_PROMPT_MODIFIER
unset CONDA_PYTHON_EXE
unset CONDA_SHLVL
unset PYTHONPATH
unset LD_PRELOAD
unset LD_LIBRARY_PATH

source $HOME/miniforge3/etc/profile.d/conda.sh
conda activate deepEMhancer_env
exec deepemhancer $@
  • Replace $HOME/miniforge3 on line 17 with the path to your conda installation.

Make this file executable by the CryoSPARC user from the command line

chmod +x deepemhancer.sh

Then, when running the CryoSPARC wrapper, input the full path to deepemhancer.sh as the value for the ‘Path to deepEMhancer executable’ parameter. This file needs to be accessible at the same path from both the master and worker nodes.

(Optional) Set DeepEMhancer executable path as project-level default parameter

To avoid having to locate and set the executable path when building every DeepEMhancer job, in v4.1 onwards you can set a project-level default that will apply to all newly created DeepEMhancer jobs.

Navigate to the projects view, select a project and choose the DeepEMhancer executable path under the 'Project Level Parameters' module within the sidebar details panel:

Inputs

  • Volume map

    • half maps (map_half_A and map_half_B) or full map (map), as specified by the Use half maps parameter

  • Input mask (optional)

    • used to calculate the noise mean and standard deviation if the Normalization mode parameter is 1: Noise statistics, or provided as a binary mask if the normalization parameter is 2: Binary Mask

Outputs

  • Sharpened volume map (map_sharp)

Common Parameters

  • Path to deepEMhancer executable: full path to the deepEMhancer script, for example /home/cryosparcuser/miniforge3/envs/deepEMhancer_env/bin/deepemhancer

  • Path to deepEMhancer models: full path to where the deepEMhancer pretrained models were installed, for example /home/cryosparcuser/.local/share/deepEMhancerModels/production_checkpoints

Next Steps

Downloading and viewing the postprocessed map in a software such as UCSF Chimera, or in CryoSPARC’s built in volume viewer.

References

[1] R. Sanchez-Garcia, J. Gomez-Blanco, A. Cuervo et al., *“*DeepEMhancer: a deep learning solution for cryo-EM volume post-processing”, Communications Biology, vol. 4, no. 874, 2021. Available: 10.1038/s42003-021-02399-1.

Create a file in a well known location, such as the home directory (e.g., ~/deepemhancer.sh). The file should contain the following, making the noted substitutions:

For details on the other processing parameters, see the deepEMhancer , or the help command (deepemhancer -h with the conda environment activated)

DeepEMhancer
DeepEMhancer
Apache License 2.0
https://github.com/rsanchezgarc/deepEMhancer
deepemhancer.sh
repository
You can use the input field or file browser to enter a path to the DeepEMhancer executable.