Proofreading Tool¶
The proofreading tool lets you fix merge and split errors in segmentations generated by automated workflows (outside WEBKNOSSOS), for example with Voxelytics. Split and merge operations are executed directly on the underlying supervoxel graph structure.
Watch this video to get started with the proofreading tools:
To use the proofreading tool, enable an ID mapping for your segmentation so WEBKNOSSOS can load the supervoxel graph. Once detected, you can activate the proofreading tool from the toolbar (clipboard icon):
- Select an ID mapping for a segmentation layer from the left-hand side panel
- From the toolbar, switch to the proofreading tool (clipboard icon)
- [Optional] Press Shift + middle-click on any segment to load and display its supervoxel graph as an agglomerate tree
- Proceed to fix split and merge errors:
Fixing Split Errors¶
- Left-click on any part of the source segment. It will be marked with a white crosshair
- Right-click on the target segment to bring up the context menu. Select
Merge With Active Segment - WEBKNOSSOS will merge both segments and reload the updated segmentation and 3D meshes
Fixing Merge Errors¶
- Left-click on any part of the source segment. It will be marked with a white crosshair
- Right-click the part of the segment you want to split off to open the context menu. Select
Split from active segment (Min-Cut) - WEBKNOSSOS will perform a min-cut operation to delete all supervoxel graph edges between the source and target segments, effectively splitting the two into individual segments
- WEBKNOSSOS will reload the split agglomerate, updated segmentation, and 3D meshes
Proofreading operations rely on the quality of the initial over-segmentation. If cells are already connected incorrectly in that base graph, WEBKNOSSOS cannot separate them with proofreading alone.
If you want to reload, hide, or remove a 3D mesh during proofreading, use the mesh context menu in the 3D viewport.
Fixing Merge Errors with Multi-Split Mode¶
The standard min-cut determines the cut location based solely on two clicked positions, which can sometimes produce an inaccurate result. Multi-split mode lets you guide the cut by labeling representative segments on each side of the intended boundary before it is computed. This additional context improves accuracy and saves time when dealing with complex merge errors.
When to use multi-split mode¶
Use multi-split mode when:
- A standard min-cut keeps producing incorrect results.
- You already have a clear idea of which segments belong on each side of the cut and want to encode that knowledge directly.
Step-by-step¶
- Activate multi-split mode by clicking the scissor icon in the proofreading toolbar, or press M.
- Assign segments to Partition 1 by Ctrl / Cmd + Left Click on a segment in any orthogonal viewport or the 3D viewport. Partition 1 segments are highlighted in dark gray, but only in the 3D Viewport.
- Assign segments to Partition 2 by Ctrl / Cmd + Shift + Left Click. Partition 2 segments are highlighted in light gray, but only in the 3D Viewport.
- Continue clicking to build up representative samples on both sides. Sampling close to the intended boundary is usually sufficient for an accurate result.
- Once both partitions contain at least one segment, trigger the split by pressing Enter or by right-clicking any segment and choosing Split partitions from the context menu.
- WEBKNOSSOS computes a min-cut that separates the agglomerate into two parts and reloads the updated segmentation and 3D meshes.
The right-click context menu (Add/Remove to Partition 1 / Add/Remove to Partition 2) also lets you add or remove individual segments and serves as a shortcut reminder.
Clearing the selection¶
Press Esc at any time to clear all partition selections without performing a split. Toggling multi-split mode off (scissor icon or M) also clears the current selections.
Splitting a Segment from All Its Neighbors¶
When a segment is incorrectly merged with multiple neighbors simultaneously, you can cut it free from all of them in a single operation instead of performing individual min-cuts. Right-click the segment and select Split from all neighboring segments. WEBKNOSSOS identifies all adjacent segments in the agglomerate graph and severs all connecting edges at once, leaving the segment as its own agglomerate.
This option is available from any viewport and from agglomerate tree node context menus.
Working with Agglomerate Trees¶
Agglomerate trees represent the supervoxel graph of an agglomerate as a tree of connected nodes in the skeleton layer. Load one by pressing Shift + middle-click on a segment, or via right-click → Import Agglomerate Tree. Trees are automatically updated after proofreading operations.
In addition to the context-menu interactions described above, agglomerate trees support fine-grained control:
- Min-cut via nodes: Right-click a node while a second node is selected and choose Perform Min-Cut between these Nodes to split the agglomerate along the minimum-cut path between them.
- Split from neighbors via nodes: Right-click a node and choose Split from all neighboring segments to isolate it from all neighboring segments in the agglomerate.
- Merge via edge creation: Drawing an edge between a node in one agglomerate tree and a node in another (while the proofreading tool is active) merges the two agglomerates.
- Split via edge deletion: Deleting an edge between two nodes splits the agglomerate at that point.
Agglomerate trees can be converted to normal skeleton trees via right-click in the Skeleton tab, which removes their link to the agglomerate mapping.
Info
Undo and redo are not supported for proofreading operations. To revert a mistake, use Restore Older Version in the dropdown next to the Save button.
Proofreading Toolbar Controls¶
When the proofreading tool is active (and editable mappings are enabled), additional controls are available in the toolbar:
- Clear proofreading by-products: Removes auxiliary meshes that were loaded during proofreading. Use this once you have finished correcting a segment pair.
- Automatic mesh loading: When enabled, WEBKNOSSOS automatically loads a 3D mesh for each segment involved in a merge or split operation.
- Selective segment visibility: When enabled, only the hovered or active segment is shown, reducing visual clutter when working on densely packed regions.
- Multi split mode: Enables partition-based splitting (can also be toggled with M).
Info
The proofreading tool requires a supervoxel-graph-compatible mapping. These mappings are commonly generated by automated segmentation pipelines (for example, Voxelytics). If you need help preparing compatible files, contact hello@webknossos.org.
- Get Help
- Community Forums
- Email Support