Utilities for computing common accuracy metrics on cell tracking challenge solutions with ground truth
Project description
traccuracy: Evaluate Cell Tracking Solutions
traccuracy
provides a suite of benchmarking functions that can be used to evaluate cell
tracking solutions against ground truth annotations. The goal of this library is to provide a convenient way to run rigorous evaluation and to document and consolidate the wide variety of
metrics used in the field.
traccuracy
can compute a comprehensive set of metrics for evaluating the cell linking and division performance, and can compute biologically meaningful metrics such as number of correctly reconstructed lineages over N frames and cell cycle length accuracy. As matching ground truth and
predicted lineages is a crucial step for performing evaluation, traccuracy
includes
a number of algorithms for matching ground truth and predicted lineages, both with
and without segmentation masks.
Learn more in the documentation or check out the source code.
Installation
pip install traccuracy
Getting Started
The traccuracy
library has three main components: loaders, matchers, and metrics.
Loaders load tracking graphs from other formats, such as the CTC format, into a TrackingGraph object.
A TrackingGraph is a spatiotemporal graph.
Nodes represent a single cell in a given time point, and are annotated with a time and a location.
Edges point from a node representing a cell in time point t
to the same cell or its daughter in t+1
.
To load TrackingGraphs from a custom format, you will likely need to implement a loader: see
documentation here for more information.
Matchers take a ground truth and a predicted TrackingGraph with optional segmentation masks and match the nodes and edges to allow evaluation to occur. Metrics are then computed on the matched graphs, and a summary is printed out.
The traccuracy
library has a command line interface for running common metrics
pipelines, documented here, and a flexible Python API, shown in this example notebook.
Implemented Metrics
- CTC-DET from the Cell Tracking Challenge Evaluation Methodology
- CTC-TRA from the Cell Tracking Challenge Evaluation Methodology
- Acyclic Oriented Graph Metric (AOGM) from Matula et al. 2015. A generalized form the CTC metrics where you can supply different weights for each component of the overall metric.
- Division Precision. Optionally allows detection within N frames of ground truth division.
- Division Recall. Optionally allows detection within N frames of ground truth division.
- Division F1 score. Optionally allows detection within N frames of ground truth division.
- Mitotic Branching Correctness from Ulicna et al. 2021. TP / (TP + FP + FN). Optionally allows detection within N frames of ground truth division.
Glossary
Tracklet : A single non-dividing cell tracked over time. In graph terms, this is the connected component of a track between divisions (daughter to next parent). Tracklets can also start or end with a non-dividing cell at the beginning and end of the captured time or if the track leaves the field of view.
Track : A single cell and all of its progeny. In graph terms, a connected component including divisions.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file traccuracy-0.1.0.tar.gz
.
File metadata
- Download URL: traccuracy-0.1.0.tar.gz
- Upload date:
- Size: 1.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2f6f0c007d0fcd61563831b28283741bae381266931b8cafcb7ee793921d0e36 |
|
MD5 | 3807aad22e32eb3354d6ed616a977fde |
|
BLAKE2b-256 | ec43ec0c77fac3a5e98bb2d66be20137250dd7c23c45dff68089d2941a984161 |
File details
Details for the file traccuracy-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: traccuracy-0.1.0-py3-none-any.whl
- Upload date:
- Size: 36.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0749dcb4b91f30301934bd647f3e9908a034b9b8e7c7225de009ed0c751e60aa |
|
MD5 | 622dea48721761a56fb8fb9500f0b51e |
|
BLAKE2b-256 | 3f310038c5c6fbbf9537f08b571f27ccec58bded2c590df2acfa4ca6b838740c |