Caroline's comment about assign_lineage_id in /annotators/_track_annotator.py:
" whole section probably should be refactored to work better with the trackdata API. The internal external IDs seems fragile - this is a place where if we used tracksdata with SQL vs with rustworkx backend it would be a different implementation, right? Also, the _assign_ids helper could be refactored to do the efficient bulk update and then used for both lineage and track ids. There might be a better way to get the tracklet IDs that would eliminate the need for graph copying too."
Also:
- TrackAnnotator._assign_tracklet_ids() is very inefficient, it loops over ALL nodes to find parent nodes...
Caroline's comment about
assign_lineage_idin/annotators/_track_annotator.py:" whole section probably should be refactored to work better with the trackdata API. The internal external IDs seems fragile - this is a place where if we used tracksdata with SQL vs with rustworkx backend it would be a different implementation, right? Also, the _assign_ids helper could be refactored to do the efficient bulk update and then used for both lineage and track ids. There might be a better way to get the tracklet IDs that would eliminate the need for graph copying too."
Also: