Batch Processing

In addition to the interactive operation mode (the GUI mode) described in the previous sections, micrograph images can also be processed under a standing alone computing mode (the COM mode), in which scoring maps required by the algorithmic particle selection are calculated but not screened. These maps can later be read into the system under the GUI mode for interactive particle selection. The COM mode enables batch-processing that can greatly enhance productivity through scripting and distributed computing. To start the program under this mode at a shell command-line, type the command and filename
signature project_file.prj

The project file for each micrograph can be created as follows:

  1. Define a new project space (from Menu : Project : New).
  2. Load one micrograph image (from Menu : Data : Micrograph : Load MRC) and set proper pixel size.
  3. Inspect the quality of the micrograph and mask out defects.
  4. Load template images (from Menu : Data : Template : Load MRC) and set proper rotational search parameters.
  5. Define particle parameters (in Particle OpPanel).
  6. Save the project definition for this micrograph (from Menu : Project : Save).
  7. Load another micrograph and repeat the procedure, starting from step 2.
  8. When done, close the project space (from Menu : Project : Close).

Once the project files have been created for all the micrographs to be screened, batching processing can be commenced by using the C-shell script listed below. It is assumed that the micrographs are numerically named with MRC extension (e.g., "1234.mrc"). When multiple computing nodes are available, the micrographs can be divided into a number of groups. One task script can be created for each group and submitted to a separate node.


#!/bin/csh
#
# SIGNATURE batch processing script


# the first micrograph ID
set FIRST_FILM=
1000

# the last micrograph ID
set LAST_FILM=
9999

# the "screening/" directory in your project-space
set PROJ_ROOT="
.../your_project.ems/screening"

# location of Signature executable
set EXEC_CODE="
.../bin_directory/signature"

# AUTOMATIC SCREENING STARTS
set this_film=$FIRST_FILM


while ( $this_film

set THIS_PROJ="${PROJ_ROOT}/${this_film}.prj"
set LOG_FILE="${PROJ_ROOT}/${this_film}.log"


if ( -e ${THIS_PROJ} ) then
echo "Screening micrograph $this_film ..."
${EXEC_CODE} ${THIS_PROJ} >& ${LOG_FILE}
endif


@ this_film++


end


# END

A log file (e.g., "1234.log") will be created for each screening project. There should be no error message in the log file for a successfully accomplished task. A quick check can be done by, for example,

grep -i "err" 1234.log