pipeline:utilities:sp_separate_class

This version (2020/01/31 11:38) is a draft.
Approvals: 0/1
The Previously approved version (2019/12/11 18:58) is available.Diff

Separate Into Classes : Separates stacks of particle images into stacks for each class.


Usage in command line:

sp_separate_class.py input_class_avgs input_image_stack output_directory --align_isac_dir=isac_dir --filtrad=filter_radius --apix=pixel_size --shrink=shrink_factor --nvec=number_of_eigenimages --ctf --verbose


The purpose of sp_separate_class.py is to:

: write particle-membership lists for each class
: write separate stacks for each class, 
: optionally low-pass filter and/or downsample the images, and
: optionally compute eigenimages (basis images) for each class


1. Standard usage: create separate stacks for each class:

sp_separate_class.py input_class_avgs input_image_stack output_directory 


2. Apply a low-pass filter to the image stacks:

sp_separate_class.py input_class_avgs input_image_stack output_directory --filt=filter_radius --apix=pixel_size

Filter radius is in units of Angstroms. If apix parameter is not specified, program will assume units of pixels^-1.


3. Downsample output image stack:

sp_separate_class.py input_class_avgs input_image_stack output_directory --shrink=shrink_factor


4. Apply ISAC alignments to particles:

sp_separate_class.py input_class_avgs input_image_stack output_directory --align_isac_dir=isac_directory

If the input class averages are ordered_class_averages.hdf, the alignments applied to the ordered class averages will be applied to the particles.


5. Compute eigenimages (basis images) for each class:

sp_separate_class.py input_class_avgs input_image_stack output_directory --align_isac_dir=isac_directory --nvec=number_of_eigenimages

The additional output, stkeigen.hdf, will contain the average, variance, and the requested number of eigenimages.


Main Parameters

input_class_avgs
Set of 2D class averages, with particle-membership information in header. (default required string)
Filtered, aligned particles of TcdA1 corresponding to class #9 below
input_image_stack
Particle image stack. (default required string)
output_directory
Directory where outputs will be written. (default required string)
--filtrad
Gaussian low-pass filter radius, Angstroms if apix specified below, else pixels^-1. (default None)
--apix
Angstroms per pixel, might be downsampled already by ISAC2. (default None)
--shrink
Downsampling factor, e.g., 6 → 1/6 original size. (default None)
--align_isac_dir
If applying alignments, directory for ISAC output (default None)
--nvec
Number of eigenimages to compute. (default None)
--ctf
Applies CTF correction. (default False)
--verbose
Writes additional messages to the terminal during execution. (default False)


Advanced Parameters

--format
Format of optional output aligned-imaged stacks. (default .mrcs)
--debug
Writes additional diagnostics for debugging. (default False)


classmap.txt
Class-to-particle lookup table, one file for all classes
For each class (from left to right): average, variance, and first 5 eigenimages
docclass???.txt
List of particles for each class, one file per class
bdb:stkclass_???
Virtual stacks of particles for each class
bdb:stkflt_???
(Optional) Virtual stacks of filtered particles for each class
params_???.txt
(Optional) Particle alignment parameters, one file per class
stkavgvar.hdf
(Optional) Montage of class averages and variances
stkeigen.hdf
(Optional) Montage of class averages, variances, and eigenimages





: Should allow filter types other than Gaussian low-pass


Tapu Shaikh


Category 1:: APPLICATIONS


sphire/bin/sp_separate_class.py



Beta:: Under evaluation and testing. Please let us know if there are any bugs.


There are no known bugs so far.


  • pipeline/utilities/sp_separate_class.txt
  • Last modified: 2020/01/31 11:38
  • by shaikh