Examples
Example 1: Aligning a Pair of Images
We will align examples/images/z00.tif to examples/images/z01.tif:
First, visually compare the two 1024x1024 pixel images using:
cd examples
display images/z00.tif images/z01.tif
or your favorite image viewer. (Hitting the space bar in display will alternate between the two images.) Although similar, these adjacent sections differ slightly in content and have a noticeable difference in rotation. We will use the following workflow for aligning these two images.
z00 will be our source image and z01 our target, so the first step is find an approximate rotation, scale, and translation using find_rst:
echo "z00 z01 z00_z01" >pairs00_01.lst
mkdir -p cmaps
find_rst -pairs pairs00_01.lst -images images/ -output cmaps/ -max_res 1024 \
-summary cmaps/summary.out
This will yield cmaps/z00_z01.map (cmaps is short for "coarse maps"). The max_res option indicates the resolution at which matching will take place, and the processing time is strongly dependent on it. Higher resolutions than 1024 willl take much longer, and need only be used if the images lack large-scale features, but have sufficient small-scale features in common. A summary is written to cmaps/summary.out. Generally, if the quality is >0.1, then the find_rst program has been successful at finding a match. For certain datasets a quality of 0.05-0.1 is still acceptable, but for others may indicate a failure to find a good match. Usually, a quality of < 0.05 indicates that no good match was found.
The next step is to obtain a non-linear registration of the two images. This is done by running register, giving it as an initial map the one found by find_rst:
mkdir -p maps
register -pairs pairs00_01.lst -images images/ -output maps/ -initial_map cmaps/ \
-distortion 2.0 -output_level 6 -depth 6 -quality 0.5 \
-summary maps/summary.out
This produces maps/z00_z01.map. The distortion option is a penalty weight to give to distorted maps, so higher values will tend to produce more rigid and uniform maps. The output_level of 6 indicates that final map points should be space every 2^6 = 64 pixels in x and y. The depth of 6 determines what image resolution is used to a given map resolution. Here, 6 (output_level) - 6 (depth) = 0, so the full resolution images will be used when computing the final maps. (Coarser maps are internally generated prior to the final map since register uses a multiresolution algorithm) Again, a summary of the image pairs processed is written to maps/summary.out. A correlation score indicating success varies widely from dataset to dataset, but generally values above 0.5 are good. Sometimes values as low as 0.1 can still be good -- this just depends on the image characteristics, high-frequency noise being one contributor to lowered correlation scores.
After running register, it is good to inspect the pairwise registration maps using the inspector program:
inspector -pairs pairs00_01.lst -input images/ -map maps/ -tif -no_gray
The left mouse button will alternate between the original z00.tif and a warped z01.tif that has been transformed according to maps/00_01.map to match up with z00.tif. The correspondence cannot be exact because the images are slightly different in content, but the overall image features should match up well visually, which they do here. ESC will exit the program.
To generate a warped version of z00.tif that is in registry with z01.tif, we use apply_map:
ln -s z00_z01.map maps/z00.map
apply_map -image z00 -images images/ -maps maps/ -output warped/ -region 1024x1024+0+0
apply_map, when it tries to process image z00, will look in images/ for z00.tif and then in maps/ for z00.map. We want it to use the map from z00 onto z01, and thus we first make a symlink from z00.map to z00_z01.map. The warped output image is placed in warped/z00.tif. The -region option is necessary so that the output is cropped to a 1024x1024 image corresponding to the size and position of z01.tif. If we had not included that option, the output would have been 1041x1064 in size and offset by 3 pixels in x and 24 in y. To view the warped z00 and compare it with the original z01, we can use the following command:
display warped/z00.tif images/z01.tif
Hitting the space bar will advance from one to the next. The black margins are areas where there were no corresponding pixels in z00. The images displayed should look similar to:
clean_maps
PURPOSE
clean_maps is an interactive program that allows one to remove portions of the maps output by register. The overall aim is to clean off any suspect portions so that there won't be inconsistencies among the maps that are given to the align program to do 3-d stack alignment. It is usually necessary to do this when the relaxation process of align results in a folded spring network (a bad situation that is difficult to recover from). With the default thresholds for distortion and correlation, the clean_maps program does a reasonable job of guessing which map portions should be discarded. However, in a few cases it is necessary to adjust the thresholds when valid map portions are shown in orange/yellow. To comfirm that the map is valid one might run inspector in a separate window to recheck maps that are particularly suspicious.
TYPICAL USAGE
clean_maps -pairs pairs.lst -input images/ -maps maps/ -output corrected_maps/ -corr corr/
COMMAND LINE OPTIONS
-corr corr_directory
specifies where the files holding the corrections arre located. The programs reads and writes to these files, and normally the user does not have to look at them. In the event that clean_maps is run again, the previous map edits are automatically applied.
-input image_directory/
specifies where the input images are located.
-map maps_directory/
specifies where the maps relating the images are located. These are only used as input files.
-output corrected_maps_directory/
specifies where the corrected maps will be written to.
-pairs pairs.lst
specifies the list of image pairs that will be displayed. This list should be in the same format as the pairs list for find_rst and register, and often will be the same file as used with those programs.
COLOR CODES
The color codes for the map elements are:
red - marked explicitly for exclusion
orange - excluded due to excessive distortion
yellow - excluded due to being part of an isolated region
green - included because it has low distortion and is not in an isolated region
blue - marked explicitly for inclusion
KEY AND BUTTON MAPPINGS
The available commands are:
left mouse - mark the map element for exclusion
CTRL left mouse - unmark the map element for exclusion
SHIFT left mouse - mark the map element for inclusion
CTRL SHIFT left mouse - unmark the map element for inclusion
middle mouse - include an isolated region
SHIFT middle mouse - exclude an isolated region
right mouse - save the current pair and go to the next pair
(when the current pair is the last pair, just save it)
SHIFT right mouse - save the current pair and go to the previous pair
(when the current pair is the first pair, just save it)
CTRL right mouse - save the current pair and skip ahead 10 pairs
CTRL SHIFT right mouse - save the current pair and skip backwards 10 pairs
ESC - exit without saving the currently displayed pair
inspector
PURPOSE
inspector is an interactive program that allows one to check the maps output by register, to see how well they map one image onto another. If there are regions where the map is incorrect, one may add correspondence points and rerun register to improve the map.
TYPICAL USAGE
inspector -pairs pairs.lst -input images/ -map maps/ -cpts cpts/
COMMAND LINE OPTIONS
-cpts cpts_directory/
specifies where the files holding the correspondence points are located. The programs reads and writes to these files.
-input image_directory/
specifies where the input images are located.
-map maps_directory/
specifies where the maps relating the images are located.
-pairs pairs.lst
specifies the list of image pairs that will be displayed. This list should be in the same format as the pairs list for find_rst and register, and often will be the same file as used with those programs.
KEY AND BUTTON MAPPINGS
left button - toggle between the image and warped reference (these should match up)
SHIFT+left button - change mode to show image and unwarped reference
CTRL + left button - pan
SHIFT + CTRL + left button - zoom in/out (motion away from the window's center zooms in; motion toward the window's center zooms out)
middle button - place correspondence point
SHIFT + middle button - delete correspondence point
right button - save correspondence points for current section and move to next pair
SHIFT + right button - save correspondence points for current section and move to previous pair
CTRL+right button - save correspondence points for current section and move 10 pairs ahead
SHIFT+CTRL+right button - save correspondence points for current section and move 10 pairs back
CTRL+ALT+right button - save correspondence points for current section and move 100 pairs ahead
SHIFT+CTRL+ALT+right button - save correspondence points for current section and move 100 pairs back
ESC exits without saving the correspondence points for the current section
AlignTK -- RUNNING IN PARALLEL
RUNNING IN PARALLEL
There are two major paradigms for running AlignTK tools in parallel for faster throughput on large datasets. The first paradigm is used for simple image processing operations that generally run fairly quickly but must be applied to thousands of images. Here, a program called prun manages the parallel execution of individual commands. It take a command template and a list of strings, substitutes each list entry into the template, and then runs those commands on a set of worker nodes. For example, if the file reduce.cmd contains:
reduce -factor 8 -input images/%s.tif -output images8/%s.tif
and the file images.lst contains:
z01
z02
z03
then running the following MPI program (possibly inside a batch job):
mpirun -np 4 prun -command reduce.cmd -list images.lst
will cause these individual commands to be delegated to the workers:
reduce -factor 8 -input images/z01.tif -output images8/z01.tif
reduce -factor 8 -input images/z02.tif -output images8/z02.tif
reduce -factor 8 -input images/z03.tif -output images8/z03.tif
Since there are 4 processes total, there will be one master and three workers, and all the above commands will run in parallel. If there had been more entries in the list, then the first free worker would get the next command, etc., until all items in the list were completely processed.
The more CPU-intensive programs such as find_rst, register, align, and ortho handle their parallelism internally, and do not need to be invoked via prun. These programs take lists of images or maps as input, and distribute these over the available processes. For example, to start a parallel run of register, one would issue a command like this (either interactively or from within a batch job):
mpirun -np 128 register -pairs pairs.lst -input images/ -output maps/ ...<other options>...
This would start up 128 instances of the register program, with one being the master and the other 127 being workers. The number of processes should not exceed the number of elements in the list by more than 1, otherwise, there will be idle processes that never have any work assigned to them. The -update option to find_rst and register is often useful when adding new images to a list, or when manually adding correspondence points using inspector. This option only causes these codes to recompute maps for images which have changed or to which correspondence points have been added since the last time the codes were run.
align and ortho are the only codes that require fast, tight synchronization among their component processes. They do not use a master/worker decomposition, and any process may potentially communicate with any other process. For these code a high-bandwidth, low-latency interconnect such as Infiniband is recommended. Since align only requires maps and not the images themselves, the amount of data that it requires is only a fraction of the raw image data size, and one might consider transferring these maps to a tightly-coupled cluster with low-latency for processing with align, while doing the remainder of the processing on a more loosely-coupled cluster.
Latest News
Upcoming Events
No events |
Past Events
No events |
Collaborate with MMBioS
Research Highlights
The Bahar (TR&D1) and Sorkin (DBP3) labs published an article in the Journal of Biological Chemistry, selected as one of JBC's "Editors' Picks. Our results demonstrate a direct coupling between conformational dynamics of DAT, functional activity of the transporter and its oligomerization leading to endocytosis. The high specificity of such coupling for DAT makes the TM4-9 hub a new target for pharmacological modulation of DAT activity and subcellular localization. (Read more)
Differences in the intrinsic spatial dynamics of the chromatin contribute to cell differentiation
Comparison with RNA-seq expression data reveals a strong overlap between highly expressed genes and those distinguished by high mobilities in the present study, in support of the role of the intrinsic spatial dynamics of chromatin as a determinant of cell differentiation. (Read more)
Nanoscale co-organization and coactivation of AMPAR, NMDAR, and mGluR at excitatory synapses
Work by TR&D2 Investigators and collaborators provide insights into the nanometer scale organization of postsynaptic glutamate receptors using a combination of dual-color superresolution imaging, electrophysiology, and computational modeling. (Read more)
Parallel Tempering with Lasso for model reduction in systems biology
TR&D3 Investigators and collaborators develop PTLasso, a Bayesian model reduction approach that combines Parallel Tempering with Lasso regularization, to automatically extract minimal subsets of detailed models that are sufficient to explain experimental data. On both synthetic and real biological data, PTLasso is an effective method to isolate distinct parts of a larger signaling model that are sufficient for specific data. (Read more)
Image-derived models of cell organization changes during differentiation and drug treatments
Our work on modeling PC12 cells undergoing differentiation into neuron-like morphologies (under C&SP11, completed) has been published in Molecular Biology of the Cell. We have also made the large dataset of 3D images collected in that study available through Dryad. (Read more)
Monoamine transporters: structure, intrinsic dynamics and allosteric regulation
T&RD1 investigators Mary Cheng and Ivet Bahar published an invited review article in Nature Structural & Molecular Biology, addressing recent progress in the elucidation of the structural dynamics of MATs and their conformational landscape and transitions, as well as allosteric regulation mechanisms. (Read more)
Trimerization of dopamine transporter triggered by AIM-100 binding
The Bahar (TR&D1) and Sorkin (DBP3) labs explored the trimerization of dopamine transporter (DAT) triggered by a furopyrimidine, AIM-100, using a combination of computational and biochemical methods, and single-molecule live-cell imaging assays. (Read more)
Pre-post synaptic alignment through neuroligin-1 tunes synaptic transmission efficiency
TR&D2 investigators and collaborators describe organizing role of neuroligin-1 to align post-synaptic AMPA Receptors with pre-synaptic release sites into trans-synaptic “nano-columns” to enhance signaling.(Read more)
Inferring the Assembly Network of Influenza Virus
In an article in PLoS Computational Biology, MMBioS TR&D4 members Xiongto Ruan and Bob Murphy collaborated with Seema Lakdawala to address this question of the assembly network of the Influenza virus.(Read more)
Our findings highlight an important mechanism by which proteins genetically implicated in Parkinson’s disease (PD; PINK1) and frontotemporal dementia (FTD; VCP) interact to support the health and maintenance of neuronal arbors.(Read more)
Improved methods for modeling cell shape
In a recent paper in Bioinformatics, Xiongtao Ruan and Bob Murphy of TR&D4 addressed the question of how best to model cell and nuclear shape.(Read more)
New tool to predict pathogenicity of missense variants based on structural dynamics: RHAPSODY
We demonstrated that the analysis of a protein’s intrinsic dynamics can be successfully used to improve the prediction of the effect of point mutations on a protein functionality. This method employs ANM/GNM tools (Read more)
New method for investigating chromatin structural dynamics.
By adapting the Gaussian Network Model (GNM) protein-modeling framework, we were able to model chromatin dynamics using Hi-C data, which led to the identification of novel cross-correlated distal domains (CCDDs) that were found to also be associated with increased gene co-expression. (Read more)
Structural elements coupling anion conductance and substrate transport identified
We identified an intermediate anion channeling state (iChS) during the global transition from the outward facing (OF) to inward facing state (IFS). Our prediction was tested and validated by experimental study conducted in the Amara lab (NIMH). Critical residues and interactions were analyzed by SCAM, electrophysiology and substrate uptake experiments (Read more)
Integrating MMBioS technologies for multiscale discovery
TR&D teams driven by individual DBPs are naturally joining forces, integrating their tools to respond to the needs of the DBP, and creating integrative frameworks for combining structural and kinetic data and computing technologies at multiple scales. (Read more)
Large scale visualization of rule-based models.
Signaling in living cells is mediated through a complex network of chemical interactions. Current predictive models of signal pathways have hundreds of reaction rules that specify chemical interactions, and a comprehensive model of a stem cell or cancer cell would be expected to have many more. Visualizations of rules and their interactions are needed to navigate, organize, communicate and analyze large signaling models. (Read more)
Integration of MCellR into MCell/CellBlender
Using spatial biochemical models of SynGAP/PSD95, MMBioS investigators were able to merge the MCellR code-base with the MCell code-base and validate its utility and correctness of this sophisticated technology now easily accessible through the MCell/CellBlender GUI. (Read more)
Causal relationships of spatial distributions of T cell signaling proteins
The idea is to identify a relationship in which a change in the concentration of one protein in one cell region consistently is associated with a change in the concentration of another protein in the same or a different region. We used the data from our Science Signaling paper reported last year to construct a model for T cells undergoing stimulation by both the T cell receptor and the costimulatory receptor. (Read more...)
BioNetGen modeling helps reveal immune system response decision
To attack or to let be is an important decision that our immune systems must make to protect our bodies from foreign invaders or protect bodily tissues from an immune attack. Using modeling and experiments, we have painted a sharper picture of how T cells make these critical decisions. (Read more)
Tools for determining the spatial relationships between different cell components
An important task for understanding how cells are organized is determining which components have spatial patterns that are related to each other.Read more
Pipeline for creation of spatiotemporal maps
Using a combination of diffeomorphic methods and improved cell segmentation, we developed a CellOrganizer pipeline for use in DPB4 to construct models of the 4D distributions of actin and 8 of its regulators during the response of T cells to antigen presentation. Read more
Multi-scale Hybrid Methodology
The hybrid methodology, coMD, that we have recently developed [1] has been recently extended to construct the energy landscape near the functional states of LeuT (Fig 1) [2]. This is the first energy landscape constructed for this NSS family member. Read more
Insights into the cooperative dynamics of AMPAR
Comparative analysis of AMPAR and NMDAR dynamics reveals striking similarities, opening the way to designing new modulators of allosteric interactions. Read more
Improved Sampling of Cell-Scale Models using the WE Strategy
The WE strategy for orchestrating a large set of parallel simulations has now been extended to spatially resolved cell-scale systems. The WESTPA implementation of WE has been used to control MCell simulations, including models built using a BioNetGen-CellOrganizer pipeline for situating complex biochemistry within spatially realistic cell models. Read more
Anatomy and Function of an Excitatory Network in the Visual Cortex
MMBioS researcher Greg Hood’s collaboration with Wei-Chung Allen Lee of Harvard University and R. Clay Reid of the Allen Institute for Brain Science concerning the reconstruction of an excitatory nerve-cell network in the mouse brain cortex at a subcellular level using the AlignTK software has been published in Nature. Read more
Molecular Mechanism of Dopamine Transport by hDAT
Dopamine transporters (DATs) control neurotransmitter dopamine (DA) homeostasis by reuptake of excess DA, assisted by sodium and chloride ions. The recent resolution of DAT structure (dDAT) from Drosophila permits us for the first time to directly view the sequence of events involved in DA reuptake in human DAT (hDAT). Read more
Synaptic Facilitation Revealed
An investigation of several mechanisms of short-term facilitation at the frog neuromuscular junction concludes that the presence of a second class of calcium sensor proteins distinct from synaptotagmin can explain known properties of facilitation. Read more
Sparse Graphical Models of Protein:Protein Interactions
DgSpi is a new method for learning and using graphical models that explicitly represent the amino acid basis for interaction specificity and extend earlier classification-oriented approaches to predict ΔG of binding. Read more
Advancing Parallel Bio-simulations
A new non-Markovian analysis can eliminate bias in estimates of long-timescale behavior, such as the mean first-passage time for the dissociation of methane molecules in explicit solvent. Read more