Trace Editor/Features
From FarsightWiki
(Difference between revisions)
(Feature computation for Trace Editor) |
|||
Line 3: | Line 3: | ||
='''Feature List'''= | ='''Feature List'''= | ||
− | {| border="1px" cellpadding=" | + | {| border="1px" cellpadding="2" style="text-align:left" |
! Feature | ! Feature | ||
! Description | ! Description | ||
Line 24: | Line 24: | ||
='''Algorithms'''= | ='''Algorithms'''= | ||
− | The algorithms suggested are used to control the editing process allowing for rule based cluster editing. | + | The algorithms suggested are used to control the editing process allowing for rule based cluster editing. The Goal is to complete group editing in five steps. |
− | + | [[Image:Edit_Operations.png|800px|thumb|center|Proposed steps of editing ]] | |
+ | |||
+ | 1: '''Merge Small Gaps''' | ||
+ | Goal: Create longest continuous trace segments by merging close endpoints | ||
+ | Methods: Nearest neighbors (Closest end points), Rejection based on conflicts and thresholds | ||
+ | |||
+ | *Minimal distance between end points | ||
+ | **Angle between traces | ||
+ | **Path length | ||
+ | **Gap distance is too large | ||
+ | *Another trace is a better fit (Cost Function) | ||
+ | **Smallest gap | ||
+ | **Better Angular alignment | ||
+ | *"Bad merge" | ||
+ | **The merge causes corners | ||
+ | **Needs to be smoothed | ||
+ | |||
+ | 2: '''Interpolate Large Gaps''' | ||
+ | Goal: Connect Large gaps that step 1 cannot simply connect by addition of a single cell | ||
+ | Method: Larger gaps need new segments created, new Trace Bits must be added, smoothing operator. | ||
+ | |||
+ | *Curve fitting to find trend of: | ||
+ | **Direction | ||
+ | **Curvature | ||
+ | *Interpolation | ||
+ | **Extend the line | ||
+ | **Most probable vector | ||
+ | **Avoid creating edges | ||
+ | |||
+ | [[Image:MergingBranching.gif|800px|thumb|right|Example showing how Merging and branching are interconnected. The Merging that creates sharp turns needs to be smoothed. The Traces need to create a new branch point and trace bits to interpolate the original path of the branch.]] | ||
+ | 3: '''Branch Points''' | ||
+ | Goal: Detect and control Branching | ||
+ | Method: Detect most probable intercepts, Determination of main branch and child, Type of branch point | ||
+ | |||
+ | *Distance maps | ||
+ | **Nearest neighbors (traces) | ||
+ | **Closest trace bits | ||
+ | *Angle of intercept | ||
+ | *Interpolation | ||
+ | |||
+ | 4: '''Soma Detection''' | ||
+ | Goal: Correspond processes with a soma | ||
+ | Method: Segmentation of original data, Localize the area to attach processes to soma, Correct direction of traces | ||
+ | |||
+ | *Image intensity | ||
+ | *Blob segmentation | ||
+ | *Centroid | ||
+ | *Distance map | ||
+ | *Connectivity | ||
+ | **Connected components | ||
+ | **Localization of processes | ||
+ | |||
+ | [[Image:FullConnections.gif|800px|thumb|center|Illustration of how the processes should be connected to a soma(shown in red). <br />The Dendrites are shown in blue, where the axon is shown in yellow.]] | ||
+ | |||
+ | 5: '''Fragments''' | ||
+ | Goal: Removal of small traces that do not correspond to a process | ||
+ | Method: Small traces removed, Leftovers from splitting operators, Line fragments that cannot be merged | ||
+ | |||
+ | *Lowest percentile of length | ||
+ | **Traces with no parents or children | ||
+ | **Type dependent |
Revision as of 16:37, 24 June 2009
Feature computation for Trace Editor
Feature List
Feature | Description |
---|---|
Gap Size | Minimum distance between endpoints of two traces |
Angle | Is the angle created between two traces normalized as vectors |
Path Length | Total length along a trace, indicated by the size of the trace |
Euclidean Distance | Straight line distance between the endpoints of a trace |
Fragmentation Smoothness | Ratio of Path Length to Euclidean Distance[1] |
Algorithms
The algorithms suggested are used to control the editing process allowing for rule based cluster editing. The Goal is to complete group editing in five steps.
1: Merge Small Gaps Goal: Create longest continuous trace segments by merging close endpoints Methods: Nearest neighbors (Closest end points), Rejection based on conflicts and thresholds
- Minimal distance between end points
- Angle between traces
- Path length
- Gap distance is too large
- Another trace is a better fit (Cost Function)
- Smallest gap
- Better Angular alignment
- "Bad merge"
- The merge causes corners
- Needs to be smoothed
2: Interpolate Large Gaps Goal: Connect Large gaps that step 1 cannot simply connect by addition of a single cell Method: Larger gaps need new segments created, new Trace Bits must be added, smoothing operator.
- Curve fitting to find trend of:
- Direction
- Curvature
- Interpolation
- Extend the line
- Most probable vector
- Avoid creating edges
3: Branch Points Goal: Detect and control Branching Method: Detect most probable intercepts, Determination of main branch and child, Type of branch point
- Distance maps
- Nearest neighbors (traces)
- Closest trace bits
- Angle of intercept
- Interpolation
4: Soma Detection Goal: Correspond processes with a soma Method: Segmentation of original data, Localize the area to attach processes to soma, Correct direction of traces
- Image intensity
- Blob segmentation
- Centroid
- Distance map
- Connectivity
- Connected components
- Localization of processes
5: Fragments Goal: Removal of small traces that do not correspond to a process Method: Small traces removed, Leftovers from splitting operators, Line fragments that cannot be merged
- Lowest percentile of length
- Traces with no parents or children
- Type dependent
Cite error:
<ref>
tags exist, but no <references/>
tag was found