jni / ray

Automatic segmentation of electron microscopy volumes
Other
31 stars 10 forks source link

Support backtracking in agglomeration with a tree structure for the history #8

Open jni opened 13 years ago

jni commented 13 years ago

An agglomeration can be represented as a forest structure (single tree if the agglomeration proceeds to completion) in which each leaf is a superpixel, and inner nodes are the products of agglomerating two child nodes. If agglo.Rag maintains this structure, it will be relatively easy to backtrack and undo merging.

jni commented 12 years ago

This tree can be equivalently represented as a list of (max_merge_priority, n1, n2) tuples, representing the height at which two nodes are merged.

Currently, a node resulting from two merged nodes arbitrarily takes the ID of the first node in the tuple. It may help to reconstruct the agglomeration tree if a new unique ID is generated for the "supernodes".

But, if the list above is sorted, the tree can be constructed easily with a minimal amount of bookkeeping.