0.6.0
release-drafter
released this
03 Jun 19:04
·
23 commits
to refs/heads/master
since this release
🚀 Features
Update metrics for evaluating tracking performance @msschwartz21 (#95)
This PR introduces several substantial changes
- Reorganization of functions with the addition of two new modules:
metrics
andtrk_io
. Backwards compatible imports were maintained whenever possible.load_trks
,trk_folder_to_trks
,save_trks
,save_trk
,save_track_data
fromutils
totrk_io
match_nodes
,contig_tracks
fromisbi_utils
toutils
classify_divisions
,calculate_summary_stats
fromisbi_utils
tometrics
benchmark_division_performance
deprecated inisbi_utils
and renamed tobenchmark_tracking_performance
inmetrics
- Fixes bugs in how we built graphs of tracks and compared between ground truth and predictions
- Originally we converted lineage data to isbi format prior to generating a graph. This intermediate step unintentionally removed any discontinuities that were present in a lineage. There is now a new function
deepcell_tracking.utils.trk_to_graph
that faithfully converts lineage data to a graph without any intermediate steps. - The use of a
node_key
generated bymatch_nodes
unintentionally dropped lineages if more than one predicted lineage was mapped onto a single ground truth lineage. Instead of mapping cell ids when we create the graph, we instead map cell ids on the fly when we are comparing graphs which eliminates the risk of accidentally dropping lineages from consideration.
- Originally we converted lineage data to isbi format prior to generating a graph. This intermediate step unintentionally removed any discontinuities that were present in a lineage. There is now a new function
- Introduces Association Accuracy as a new metric that evaluates how many edges in the tracking graph are correctly assigned. This score discounts edges involved with a division, but does detect discontinuities in lineages.
- Introduces Target Effectiveness as a new metric that evaluates how many cells in a lineage are correctly assigned to the lineage.