Main GUI mouse controls:

- Pan = left-click + drag
- Zoom = scroll wheel (or +/= and - buttons)
- Full view = double left-click
- Select mask = left-click on mask
- Delete mask = Ctrl (or COMMAND on Mac) + left-click
- Merge masks = Alt + left-click (will merge last two)
- Start draw mask = right-click
- End draw mask = right-click, or return to circle at beginning

Overlaps in masks are NOT allowed. If you draw a mask on top of another mask, it is cropped so that it doesn’t overlap with the old mask. Masks in 2D should be single strokes (single stroke is checked). If you want to draw masks in 3D (experimental), then you can turn this option off and draw a stroke on each plane with the cell and then press ENTER. 3D labelling will fill in planes that you have not labelled so that you do not have to as densely label.

!NOTE!: The GUI automatically saves after you draw a mask in 2D but NOT after 3D mask drawing and NOT after segmentation. Save in the file menu or with Ctrl+S. The output file is in the same folder as the loaded image with `_seg.npy` appended.

Bulk Mask Deletion Clicking the 'delete multiple' button will allow you to select and delete multiple masks at once. Masks can be deselected by clicking on them again. Once you have selected all the masks you want to delete, click the 'done' button to delete them.
Alternatively, you can create a rectangular region to delete a regions of masks by clicking the 'delete multiple' button, and then moving and/or resizing the region to select the masks you want to delete. Once you have selected the masks you want to delete, click the 'done' button to delete them.
At any point in the process, you can click the 'cancel' button to cancel the bulk deletion.

FYI there are tooltips throughout the GUI (hover over text to see)
Keyboard shortcuts | Description
--- | ---
=/+ button // - button | zoom in // zoom out
CTRL+Z | undo previously drawn mask/stroke
CTRL+Y | undo remove mask
CTRL+0 | clear all masks
CTRL+L | load image (can alternatively drag and drop image)
CTRL+S | SAVE MASKS IN IMAGE to `_seg.npy` file
CTRL+T | train model using _seg.npy files in folder
CTRL+P | load `_seg.npy` file (note: it will load automatically with image if it exists)
CTRL+M | load masks file (must be same size as image with 0 for NO mask, and 1,2,3… for masks)
CTRL+N | save masks as PNG
CTRL+R | save ROIs to native ImageJ ROI format
CTRL+F | save flows to image file
A/D or LEFT/RIGHT | cycle through images in current directory
W/S or UP/DOWN | change color (RGB/gray/red/green/blue)
R / G / B | toggle between RGB and Red or Green or Blue
PAGE-UP / PAGE-DOWN | change to flows and cell prob views (if segmentation computed)
X | turn masks ON or OFF
Z | toggle outlines ON or OFF
, / . | increase / decrease brush size for drawing masks

Segmentation options \ (2D only)

SIZE: you can manually enter the \ approximate diameter for your cells, or press “calibrate” to let the model estimate it. The size is \ represented by a disk at the bottom of the view window (can turn this disk of by unchecking \ “scale disk on”).

use GPU: if you have specially \ installed the cuda version of mxnet, then you can activate this, but it won’t give huge speedups when \ running single 2D images in the GUI.

MODEL: there is a cytoplasm \ model and a nuclei model, choose what you want to segment

CHAN TO SEG: this is the channel in \ which the cytoplasm or nuclei exist

CHAN2 (OPT): if cytoplasm model \ is chosen, then choose the nuclear channel for this option