Napari TRAck VALIdator ... a software for manual track / segmentation validation
Enables manual validation and editing of cell tracking results.
Currently at this early stage, you can install Napari Travali only from GitHub
$ pip install git+https://github.com/yfukai/napari-travali
python -m napari_travali /path/to/zarr
# python -m napari_travali /path/to/zarr --presist # for a small-scale dataset
Currently we accept segmented / tracked data in the following format.
-
file format :
zarr
(hopefullyHDF5
in future) -
contents :
Dataset
namedimage
... 5-dim dataset with dimensional orderTCZYX
Group
namedlabels
Dataset
(default nameoriginal
ororiginal.travali
, let name:(dataset_name)
) ... 4-dim dataset with dimensional orderTZYX
attr
namedtarget_Ts
... target time frame indices for manual track validation (masks in the other frames are ignored)
Group
nameddf_tracks
Dataset
name:(dataset_name)
... 2-dim dataset with columns (frame, label, track_id, bbox_y0, bbox_y1, bbox_x0, bbox_x1)attr
namedfinalized_track_ids
... (optional) list of finalized segment idsattr
namedcandidate_track_ids
... (optional) list of candidate segment ids
Group
nameddf_divisions
Dataset
name:(dataset_name)
... 2-dim dataset with columns (parent_track_id, frame_child1, label_child1, frame_child2, label_child2)
- When reading file,
original.travali
is read if exits. If not,original
is read. - When writing file,
- If the read dataset is suffixed with
.travali
, the same name is used. - If the read dataset is not suffixed with
.travali
,(original name).travali
is used.
- If the read dataset is suffixed with
Please see the Command-line Reference for details.
-
Common operations
- Typing
Shift + Left
... move to the previous timeframe intarget_Ts
- Typing
Shift + Right
... move to the next timeframe intarget_Ts
- Typing
Control + Shift + Alt + s
... save the manual validation result
- Typing
-
All label
- Clicking a label ... select the label and to
Label selected
- Clicking a label ... select the label and to
-
Label selected
- Typing
Escape
... cancel editing and toAll label
- Typing
Enter
... finalize editing and toAll label
- Typing
r
... Redrawing the segmentation. Transition toLabel redraw
- Typing
s
... Switching the segmented area. Transition toLabel switch
- Typing
d
... Modifying the daughter areas. Transition toDaughter switch
orDaughter draw
(asks before transition) - Typing
t
... Marking termination
- Typing
-
Label redraw
- Typing
Escape
... cancel redraw and make transition toLabel selected
- Typing
Enter
... finalize redraw and make transition toLabel selected
- Typing
-
Label switch
- Typing
Escape
... cancel switch and make transition toLabel selected
- Clicking a label ... select the label to switch and make transition to
Label selected
- Typing
-
Daughter switch
- Typing
Escape
... cancel choosing daughters and make transition toLabel selected
- Clicking a label ... select the label as a daughter and make transition to either of
Daughter switch
orDaughter draw
(asks before transition) orLabel selected
(if you already selected two daughters)
- Typing
-
Daughter draw
- Typing
Escape
... cancel choosing daughters and toLabel selected
- Typing
Enter
... finalize drawing a daughter and make transition to either ofDaughter switch
orDaughter draw
(asks before transition) orLabel selected
(if you already selected two daughters)
- Typing
Contributions are very welcome. To learn more, see the Contributor Guide.
Distributed under the terms of the MIT license, Napari Travali is free and open source software.
If you encounter any problems, please file an issue along with a detailed description.
This project was generated from @cjolowicz's Hypermodern Python Cookiecutter template.