Skip to main content
NIHPA Author Manuscripts logoLink to NIHPA Author Manuscripts
. Author manuscript; available in PMC: 2016 Jan 31.
Published in final edited form as: Biotechniques. 2015 Aug 1;59(2):82–86. doi: 10.2144/000114318

Traxtile: Interactive editing of cell tracks in time-lapse images

Benjamin S Braun 1
PMCID: PMC4560953  NIHMSID: NIHMS716846  PMID: 26260086

Abstract

Time-lapse imaging can be used to quantify how cells move, divide, and die over time and under defined culture conditions. Open source software packages such as CellProfiler, Icy, and Fiji provide robust and convenient interfaces for performing such analyses. However, object tracking algorithms are imperfect, and validation of significant events is often required. This is challenging, as CellProfiler produces only tabular data for object tracking, and the graphical tools in Icy and Fiji are not optimal for manual review of these events. Here we describe Traxtile, a program that allows interactive graphical review and revision of object tracking assignments. Traxtile imports initial assignments and automatically identifies events needing review (i.e., apparent creation of new objects, splits, merges, and losses). For each such event, the object track is displayed on a montage of images centered on the event and spanning the preceding and subsequent frames. Links between cells in successive frames can be reviewed and edited, yielding validated tracks for the image series. Reports summarize events from the validated tracks. Traxtile is implemented in Python version 2.7 using standard distribution libraries (available at www.python.org) and is freely available at https://github.com/braunb/traxtile-public.

Keywords: CellProfiler, Icy, Fiji, time lapse, cell imaging, image analysis, object tracking, Python

Method Summary

Traxtile is a stand-alone Python program providing an interactive graphical interface for editing object tracks in time-lapse image series. Traxtile allows for manual review of events that change the number of visible cells to support accurate quantitative analysis of growing or diminishing cultures.

The growth rate of a cell population is determined by the rates of cell division and death. It is well known that average growth rates can be influenced by environmental conditions such as the availability of growth factors and nutrients, and by intrinsic factors such as cell genotype. However, it is often unclear whether an observed difference in the overall population growth rate is due to a change in the rate of cell division or in the rate of cell death. Cell division and death are regulated by distinct biochemical networks, so this uncertainty creates a barrier to understanding basic mechanisms that regulate cell numbers in health and disease. There are convenient platforms for loading time-lapse image series, optimizing image contrast, recognizing objects (e.g., cells) in each image, and tracking objects through time. These applications include CellProfiler, which provides a suite of image analysis tools through a powerful and flexible interface (1), as well as other freely available software packages that provide similar functionality, such as Fiji and Icy (2,3).

However, for any system, tracking assignments are often imperfect, and rare events can be obscured even when error rates are low (4,5). Thus, for rigorous quantitation of cell division and death kinetics, events must be validated. This requires manual review of images to determine whether a track that splits represents a true cell division or whether a track that appears to end represents a true cell death. This validation step is not easy to accomplish with CellProfiler, which at this time produces only tabular summaries of recognized objects and tracks. Furthermore, while track editing is available in other tracking software platforms, such as Icy and Fiji, these interfaces are limited when it comes to manual review of cell division and death.

The Traxtile program was developed as a tool for directly measuring rates of cell division and death, by observing these events under various conditions using time-lapse imaging. Traxtile was designed as an adjunct to CellProfiler and other cell tracking software to provide a convenient visual platform for reviewing and editing object tracks in the context of time series images. In contrast to existing track editing platforms, Traxtile supports interactive editing of cell tracks on zoomed images of cells undergoing sentinel events such as cell division and cell death.

Materials and methods

Traxtile is implemented in Python version 2.7 using standard distribution libraries (available at www.python.org). It was written using the PyCharm CE 3.1 development environment in MacOS and then tested in Microsoft Windows 7. Sample images were obtained with an automated Zeiss Cell Observer microscope (Carl Zeiss Microscopy, LLC, Thornwood, NY) equipped with an on-stage incubator and Zeiss ZEN software, using a 10×/0.25 NA objective, with support from the UCSF Laboratory for Cell Analysis. Raw images with a resolution of 0.645 μ/pixel were processed with a custom CellProfiler pipeline to enhance contrast, identify cells, and perform initial object tracking. Each image tile shows a square of 80 pixels (51.6 μ) per side. Source code and processed images are freely available at https://github.com/braunb/traxtilepublic. Traxtile is compatible with CellProfiler versions 2.0 and 2.1.

Data model for object tracking

Traxtile maintains a data model that includes a list of all cells identified in each frame of a time series and the relationships between cells in successive frames. The user interface and its associated controller classes access and modify the data model.

Every object in the series has a unique identifier that includes its image number and the object number in that frame, which is assigned by CellProfiler or created while importing data from Icy or Fiji/TrackMate. For example, “27–34” refers to object 34 in image 27. Following the nomenclature used by CellProfiler, each object may be linked to parent objects in prior images and child objects in later images. These links collectively describe the track of an object of interest over the course of the experiment. An object that splits, such as a mitotic cell, has multiple children in the next image. Similarly, if objects merge, multiple parents are linked to a single child. Traxtile extends this metaphor to designate ancestor and descendent objects at the extreme ends of the track for any object. Splits and merges at any point in a track can cause an object to have multiple ancestors or descendants.

Since an object can sometimes appear to be missing in some images, gaps of any length between a parent and child are allowed, although the interface imposes a practical limit of approximately 10 frames. When tracks are analyzed, interpolated positions for cells are inferred for each frame of a gap, allowing a complete accounting of cells even when they may not be visible in every frame. In addition, objects may be added to any tile displayed in Traxtile.

Traxtile follows a tree metaphor to summarize object tracks. A newly appearing object initiates a track and is termed a “root,” while a childless object terminates a track and is called a “tip.” A branch is a linear subset of a tree starting at a root or just after a split (i.e., at each daughter cell) and continuing to the next split or tip. This approach is particularly relevant to proliferating cell populations, where objects rarely, if ever, merge.

Track visualization and editing

Traxtile presents each sentinel event for review (Figure 1). The cell of interest is centered in an image tile that is cropped and zoomed from the original, and corresponding tiles from preceding and following frames are displayed in a montage. The cell track is displayed with lines that join objects in adjacent frames. Finally, cells that seem to disappear (i.e., tips) are indicated with a distinct icon. Tips can be categorized as deaths or disappearances.

Figure 1. Montage of image tiles.

Figure 1

A portion of the tiled montage presented by Traxtile showing processed and cropped images overlaid with object identifiers (green numbers) and the track for the selected cell (light blue lines). Note that a cell division is followed by a gap due to a failure of the object identification algorithm to recognize the daughter cells for one frame (image #30). Each tile is a square of 51.6 μ (80 pixels), and cells are typically 10–15 μ in diameter. The time interval between images is 1 min.

Numeric identifiers are displayed on each cell. Clicking an identifier selects the cell and displays its track. To create or destroy links to selected cells, identifiers are selected while depressing an option key on the keyboard (⌘ or Alt).

Basic information about the selected cell is presented in a panel below the image tiles. Links can be inspected and deleted in this view as well. Navigation controls are used to move through the list of reviewed events. This list remains unchanged unless it is manually recalculated through a menu option.

Finally, a separate window can be opened to display the entire, uncropped image, centered on the selected cell. Images from prior and subsequent frames can be displayed using arrow keys. This allows an alternative view of dynamic relationships in the time lapse series that can often help resolve ambiguous tracks.

Input and output

The following data sources are required to run Traxtile with CellProfiler:

  • An Image Data File generated by CellProfiler with image information as comma-separated values (CSV) format.

  • An Object Data File generated by CellProfiler with object information in CSV format.

  • Images to be used for the montage tiles. These must be in GIF format, and are often saved at some point in the CellProfiler image processing pipeline.

  • Optionally, a separate series of GIF image files to be used for the uncropped whole image view.

Alternatively, the following data sources are required to run Traxtile with Icy:

  • An XLS file output from the Spot Detector plugin, converted to CSV format.

  • An XML file created in the TrackManager plugin, using the File/Save... option.

  • Images in GIF format to be used for the montage tiles and, optionally, the whole image view.

Finally, the following data sources are required to run Traxtile with Fiji’s TrackMate plugin:

  • An XML format file created with the Save feature in TrackMate

  • Images in GIF format to be used for the montage tiles and, optionally, the whole image view.

For output, the current workspace can be saved in a proprietary binary format (using Python’s pickle format to save internal objects to disk) to provide a convenient way restore a session in progress. Alternatively, data can be exported as a CSV file that can either be re-imported later or used for external analysis. For example, this could be used with statistical software to apply survival analysis to deaths as a function of time, with disappearances as censored events.

Traxtile produces three report formats. One is a summary of overall rates of sentinel events and the difference in rates of all gains minus losses. This last parameter estimates the exponent κ in the population growth model n(t) = n0eκt.

In a second report, the numbers of objects and events in each frame are tabulated, and an exponential curve is fit to these data by regression, providing a separate estimate for κ. Ideally, these two estimates will be similar. Finally, Traxtile will generate a list of tree structures in the standardized Newick format to represent all the tracks in the image series (http://evolution.genetics.washington.edu/phylip/newicktree.html). This can be exported to various tree drawing utilities. Note, however, that the Newick format was created to analyze phylogeny, and it does not include a notation for merging of branches; therefore, the Newick format is not appropriate for representation of data in which objects merge.

Results and discussion

Briefly, Traxtile imports data from tracking software such as tables created by the CellProfiler TrackObjects module or XML files from Icy or Fiji. Traxtile identifies events needing review (i.e., apparent creation of new cells, splits, merges, and losses). Each such event is displayed on a montage of image tiles centered on the event and spanning preceding and subsequent frames. The track is displayed, and links between cells in successive frames can be reviewed and edited. In this way, all events that alter cell number in an image series can be validated. Reports summarize events from the validated tracks and provide estimates for the exponential growth constant.

In a typical experiment, users will first use CellProfiler to process time-lapse images, including these essential steps:

  1. Save processed images in GIF format.

  2. Identify cells.

  3. Perform initial cell tracking (e.g., using the CellProfiler TrackObjects module).

  4. Save CSV or XML files for the image and object data.

It is important to optimize each step to minimize the number of events needing review. Spot finding is beyond the scope of Traxtile, therefore users should refer to documentation for CellProfiler or other image processing software for this process.

Traxtile can next be used to analyze the data, as follows:

  1. Import the data files and GIF images.

  2. Inspect and edit the tracks associated with cell appearance and disappearance events.

  3. Save the workspace and reports when all events have been validated.

A detailed guide appears in the Traxtile instruction manual, provided in the Supplementary Material and also available at https://github.com/braunb/traxtile-public.

Figure 2 shows an example of track editing. Here, the initial tracking algorithm failed to recognize that a cell had moved between two frames and so determined that one cell had disappeared and a new cell had appeared in the next frame. Traxtile can be used to create a link between the cells in the two images, completing the track and removing one false death and one false birth from the data set.

Figure 2. Example of track editing.

Figure 2

(A) Initial analysis in CellProfiler identified no children for cell #64 in frame #27, so it appears as the end of a track and is highlighted with a diamond. However, that cell actually moved slightly northeast and became cell #56 in frame #28 (arrow). Because the tracking algorithm did not discover this link, this cell in frame #28 appears to be new. (B) To correct this, a link between these two objects is created. The data set now has one less death and one less birth.

The montage of cropped images is sometimes inadequate for cells that move quickly and thus appear in only a few tiles. To address this, an optional window shows an uncropped version of the image with the selected object (Figure 3). A highlight box delineates the cropping boundaries in the montage. Keyboard arrow keys advance through the image series, providing a more dynamic view of object motion than is presented by the tile montage.

Figure 3. The “Whole Image” window.

Figure 3

This optional window shows the entire field of view, and can be advanced to any frame in the series. The box in the center indicates the region that appears in the montage of cropped images. The image shown is a 340 μ square.

In summary, Traxtile provides an interactive graphical editor for object tracking that can help produce validated data sets for quantification of important events in time-lapse cellular imaging.

Supplementary Material

manual

Acknowledgments

The author thanks the CellProfiler development team and the Python programming community at large for providing a robust environment for the development of this software. Images were obtained with assistance of the UCSF Laboratory for Cell Analysis core facility. This work was supported by the National Institutes of Health [U54CA143874, R01CA173085 and 5P30CA082013], an ASH Bridge Grant from the American Society of Hematology, and the Frank A. Campini Foundation. B.S.B is a St. Baldrick’s Foundation Scholar. This paper is subject to the NIH Public Access Policy.

Footnotes

Competing interests

The author declares no competing interests.

References

  • 1.Kamentsky L, Jones TR, Fraser A, Bray MA, Logan DJ, Madden KL, Ljosa V, Rueden C, et al. Improved structure, function and compatibility for CellProfiler: modular high-throughput image analysis software. Bioinformatics. 2011;27:1179–1180. doi: 10.1093/bioinformatics/btr095. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 2.de Chaumont F, Dallongeville S, Chenouard N, Hervé N, Pop S, Provoost T, Meas-Yedid V, Pankajakshan P, et al. Icy: an open bioimage informatics platform for extended reproducible research. Nat Methods. 2012;9:690–696. doi: 10.1038/nmeth.2075. [DOI] [PubMed] [Google Scholar]
  • 3.Schindelin J, Arganda-Carreras I, Frise E, Kaynig V, Longair M, Pietzsch T, Preibisch S, Rueden C, et al. Fiji: an open-source platform for biological-image analysis. Nat Methods. 2012;9:676–682. doi: 10.1038/nmeth.2019. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 4.Chenouard N, Smal I, de Chaumont F, Maška M, Sbalzarini IF, Gong Y, Cardinale J, Carthel C, et al. Objective comparison of particle tracking methods. Nat Methods. 2014;11:281–289. doi: 10.1038/nmeth.2808. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 5.Maška M, Ulman V, Svoboda D, Matula P, Ederra C, Urbiola A, España T, Venkatesan S, et al. A benchmark for comparison of cell tracking algorithms. Bioinformatics. 2014;30:1609–1617. doi: 10.1093/bioinformatics/btu080. [DOI] [PMC free article] [PubMed] [Google Scholar]

Associated Data

This section collects any data citations, data availability statements, or supplementary materials included in this article.

Supplementary Materials

manual

RESOURCES