Data Curation - jeanollion/bacmman GitHub Wiki

Data Curation

To edit segmentation and tracking:

  • Open an interactive Kymograph or Hyperstack
  • Set the object class you wish to edit as interactive structure (it can be changed by pressing i when an interactive image is active): all actions will be performed on this object class.
  • Hold Shift to add objects to the current selection
  • When an action requires drawing with an imageJ tool (e.g. freehand line) first draw, and before releasing the mouse press the modifiers key(s) (e.g. Ctrl, Shift, Alt).
  • All the shortcuts only work when the active image is an interactive images (Kymograph or Hyperstack)
  • Note that you can select whole tracks in track mode (press S to toggle ON/OFF track mode). This is useful to split / merge / post-filter whole tracks at once.
  • Tracking links are propagated automatically as much as possible when performing curation of segmentation (Splitting / Merging / Region creation), but it is sometimes impossible so always remember check (Ctrl + Q) and correct them.
  • Always edit the parent object class before the child object class (e.g. microchannel is parent class of bacteria in the case of bacteria growing in microchannels). After editing a parent object class, segmentation and tracking of children class may need to be re-run (except when deleting a whole parent track).
  • A simple undo feature is available
  • Press F1 to display all the shortcuts (F1 to hide them).

Manual Curation

Splitting

To split a segmented region:

  • Draw a line using the freehand line tool that cuts an object into two parts
  • Holding ctrl key before releasing the mouse button.
  • If the line allows to define two distinct regions, they will be created and displayed in yellow.

Creation

To create a segmented region de novo:

  • Draw its contours using the freehand line tool, the ellipse tool or the oval tool, or paint it using the selection brush tool
  • Hold ctrl + shift keys before releasing the mouse button.
  • The contour should be closed or closed by another segmented region.
  • The segmented object will be displayed in yellow.
  • To create segmented regions and merge them directly with existing segmented regions that are in contact, Hold shift instead of ctrl + shift.

Rub Out

  • draw the area to erase with the selection brush tool
  • Hold ctrl + shift keys before releasing the mouse button.

Merging

  • Select several segmented objects
  • Press ctrl + M

Merging is performed frame-wise, so segmented object from several frames can be selected.


Deletion

  • Select one or several segmented objects
  • Press ctrl + D
  • Deletion is performed frame-wise, so segmented object from several frames can be selected.

Pruning:

  • Select a segmented object
  • Press ctrl + P
  • The selected object as well as all linked objects (at next frames) will be deleted

Semi-automatic Curation of Segmentation

Splitting

Semi-automatic splitting requires an algorithm. It can be set in the parameter of the object class, alternatively some Segmenters are able to split segmented object.

  • Select one or several segmented object.
  • Press ctrl + S to split.
  • Each selected object will be split in two (if possible).

Creation

Semi-automatic segmentation requires an algorithm. It can be set in the parameter of the object class, alternatively some Segmenters are able to create segmented objects from user-defined points.

  • Press C to select the multi-point tool
  • Click on the center of objects
  • Press ctrl + C to segment the objects: they will be displayed in yellow. New objects cannot be created in areas where objects are already created.
  • Press C to select the previous tool.

Post-Filtering

User-defined post-filters can be applied to selected objects during manual curation. This is useful for instance to apply a binary closing or to filter objects according to size. Post-filters are set in the parameters of the object class to be edited (parameter Manual Post-Filters)

  • Select one or several segmented objects
  • Press ctrl + F

Tracking Links

Select several segmented objects from several frames:

  • press ctrl + L to link them
  • press ctrl + U to unlink them
  • press ctrl + R to reset all associated links

Notes:

  • When several objects at frame F and several object at frame F+1 are selected, an algorithm that minimizes globally distances will choose the links.
  • Whether segmented objects can merge / split in time is defined in the parameters of the object class. If a merge / split link is assigned to an object class that do not accept them, an error will be flagged for the link.

Undo feature

When performing manual curation, mistakes can easily happen. BACMMAN provides a simple undo mechanism to revert changes to last commit.
One has to commit the changes frequently.

  • Activate it from the menu Misc > Manual Curation > Safe Mode (undo)
  • After making changes you want to keep, commit them from the menu: Misc > Manual Curation > Commit Changes
  • To rollback to last commit from the menu: Misc > Manual Curation > Revert Changes
  • Note that if the program is closed without committing changes, they are lost.