seung-lab / neuroglancer

WebGL-based viewer for volumetric data
https://neuromancer-seung-import.appspot.com/
Apache License 2.0
22 stars 10 forks source link

Point Annotations disappearing after merge/split #227

Open nkemnitz opened 5 years ago

nkemnitz commented 5 years ago

Tracers reported an issue with segmentation-linked local point annotations that are disappearing after merges and splits, and occasionally reappearing for unknown reasons. Example link: https://nkem-multicut-dot-neuromancer-seung-import.appspot.com/?json_url=https://www.dynamicannotationframework.com/nglstate/5689792285114368

nkemnitz commented 5 years ago

Whenever a point annotation is added by a user, it gets linked to a ChunkedGraph Node ID:

Issue 1: Supervoxel IDs <-> Root ID mappings are only loaded for visible neurons, and only in the current 2D window field of view. Without those mappings, all annotations that are linked to Supervoxel IDs and outside of the current 2D window field of view won't be visible in the 3D view: https://nkem-multicut-dot-neuromancer-seung-import.appspot.com/?json_url=https://www.dynamicannotationframework.com/nglstate/5652961799700480 Don't think we can collect all supervoxel for each selected object, since neurons/mergers can easily accumulate to millions of supervoxel.

Issue 2: Each Split/Merge modifies ChunkedGraph Node IDs (other than Supervoxel IDs). Which means we would need to update such linked IDs. Or maybe keep referring to all previous/future generations of a Root ID?

Thoughts Forcing the use of root IDs instead of Supervoxel IDs for each point annotation seems to be the better choice... but it would require to have another ChunkedGraph query. Something that connects a selection of linked Node IDs to currently selected Root IDs?

nkemnitz commented 5 years ago

Blocked until we have RowSets for the graph server