Difference between revisions of "Documentation/Nightly/Extensions/FinslerTractography"
(4 intermediate revisions by the same user not shown) | |||
Line 11: | Line 11: | ||
Acknowledgments: | Acknowledgments: | ||
Supported by grant number FMECD-2010/71131616E from the Spanish Ministry of Education/Fulbright Committee <br> | Supported by grant number FMECD-2010/71131616E from the Spanish Ministry of Education/Fulbright Committee <br> | ||
− | |||
Contributors: Antonio Tristan Vega, Demian Wassermann and Carl-Fredrik Westin. The directional iterators were contributed by Luis Ibanez (Kitware).<br> | Contributors: Antonio Tristan Vega, Demian Wassermann and Carl-Fredrik Westin. The directional iterators were contributed by Luis Ibanez (Kitware).<br> | ||
Line 28: | Line 27: | ||
<!-- ---------------------------- --> | <!-- ---------------------------- --> | ||
{{documentation/{{documentation/version}}/extension-section|Modules}} | {{documentation/{{documentation/version}}/extension-section|Modules}} | ||
− | *[[Documentation/{{documentation/version}}/Modules/ | + | *[[Documentation/{{documentation/version}}/Modules/FinslerTractography|Finsler Tractography Module]] |
− | *[[Documentation/{{documentation/version}}/Modules/ | + | *[[Documentation/{{documentation/version}}/Modules/FinslerBacktracing |Backtracing Module]] |
− | |||
<!-- ---------------------------- --> | <!-- ---------------------------- --> | ||
{{documentation/{{documentation/version}}/extension-section|Use Cases}} | {{documentation/{{documentation/version}}/extension-section|Use Cases}} | ||
− | + | The Finsler Tractography Module module uses the fast-sweeping algorithm to find the connectivity from a set of seeding points to each voxel in the input DWI volume (or inside the mask, if provided). This connectivity is the minimum cost of arriving at each voxel from the seeds, following the trajectory of the estimated pathways. The cost is computed as the integral along the pathway of a local directional cost computed from the ODF or some other HARDI-related measurement. A complete description of the algorithm may be found in: J. Melonakos, E. Pichon, S. Angenent, A. Tannenbaum, 'Finsler Active Contours'. IEEE Transactions on Pattern Analysis and Machine Intelligence, 30(3):412-423. March 2008. A background-removal mask can be used to accelerate computations. Optionally, the algorithm provides at each voxel an estimation of the vector tangent to the optimal pathway at that point (arrival direction). Fast-sweeping is full multi-threaded, and some other accelerations (checking only those voxels in the causal direction of the solution) have been implemented to obtain a result in a reasonable time. However, an algorithm virtually identical to that in the aforementioned paper may be reproduced fixing the advanced parameters as follows: Cost: (E(q)/Phi(r))^3 Directions: 26 Use threads: deactivate Use accelerated iterations: deactivate (Start accelerated iterations becomes irrelevant). <br> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | < | ||
+ | The Backtracing Module uses the output of the Finsler tractography module to actually trace the estimated fiber bundles. Note that you should have 'Finsler Tractography based on HARDI' installed and working in order to be able to use the present module (see the documentation therein for more details on the Finsler Tractography method). The nomenclature for this module can be a little confusing: contrary to 'Labelmap seeding', this algorithm does not ask for a seeding region. This is because the seeding region is provided when calculating the costs map and the optimal arrival directions with 'Finsler Tractography based on HARDI'. Hence, the seeding region (and also the hypothetic mask used) is now implicit in the costs map. In the present module, we have to choose instead a set of 'target points': the fiber bundles are traced from these target points to the seeding region. Accordingly, no stopping criterion is needed: we stop tracking the bundle just when we hit either the seeding region or a point outside the mask (if used). Nonetheless, we perform some 'sanity checks', avoiding fibers with abnormal length or with excessive curvature. NOTE: If compiled as a stand-alone, this module needs to be linked against both ITK and VTK NOTE2: If compiled as a stand-alone, the fiber bundles computed are written to disk as a VTK file (.vtp/.vtk) that can be loaded with 3D-Slicer or FSL. IMPORTANT: The fibers are always stored in that file in RAS coordinates.. | ||
<!-- ---------------------------- --> | <!-- ---------------------------- --> | ||
{{documentation/{{documentation/version}}/extension-section|Tutorials}} | {{documentation/{{documentation/version}}/extension-section|Tutorials}} | ||
− | + | N/A | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<!-- ---------------------------- --> | <!-- ---------------------------- --> | ||
Line 62: | Line 46: | ||
<!-- ---------------------------- --> | <!-- ---------------------------- --> | ||
{{documentation/{{documentation/version}}/extension-section|References}} | {{documentation/{{documentation/version}}/extension-section|References}} | ||
− | * | + | * GJ. Melonakos, E. Pichon, S. Angenent, A. Tannenbaum, 'Finsler Active Contours'. IEEE Transactions on Pattern Analysis and Machine Intelligence, 30(3):412-423. March 2008 |
− | |||
− | |||
− | |||
− | |||
<!-- ---------------------------- --> | <!-- ---------------------------- --> |
Latest revision as of 15:55, 2 May 2014
Home < Documentation < Nightly < Extensions < FinslerTractography
For the latest Slicer documentation, visit the read-the-docs. |
Introduction and Acknowledgements
Acknowledgments:
Supported by grant number FMECD-2010/71131616E from the Spanish Ministry of Education/Fulbright Committee | |||
|
Extension Description
This module implements the Finsler tractography method with HARDI data described by J. Melonakos et al. From a set of seeding and target points, the paths are estimated as the shortest path taking into account a local, directional dependent cost.
The output provided is the connectivity map from each voxel in the volume to the seeding points, plus a vector volume with the directions tangent to the fiber bundles at each point. If the Backtracing module within is built, these directions can be traced back to actually compute the fiber bundles
Modules
Use Cases
The Finsler Tractography Module module uses the fast-sweeping algorithm to find the connectivity from a set of seeding points to each voxel in the input DWI volume (or inside the mask, if provided). This connectivity is the minimum cost of arriving at each voxel from the seeds, following the trajectory of the estimated pathways. The cost is computed as the integral along the pathway of a local directional cost computed from the ODF or some other HARDI-related measurement. A complete description of the algorithm may be found in: J. Melonakos, E. Pichon, S. Angenent, A. Tannenbaum, 'Finsler Active Contours'. IEEE Transactions on Pattern Analysis and Machine Intelligence, 30(3):412-423. March 2008. A background-removal mask can be used to accelerate computations. Optionally, the algorithm provides at each voxel an estimation of the vector tangent to the optimal pathway at that point (arrival direction). Fast-sweeping is full multi-threaded, and some other accelerations (checking only those voxels in the causal direction of the solution) have been implemented to obtain a result in a reasonable time. However, an algorithm virtually identical to that in the aforementioned paper may be reproduced fixing the advanced parameters as follows: Cost: (E(q)/Phi(r))^3 Directions: 26 Use threads: deactivate Use accelerated iterations: deactivate (Start accelerated iterations becomes irrelevant).
The Backtracing Module uses the output of the Finsler tractography module to actually trace the estimated fiber bundles. Note that you should have 'Finsler Tractography based on HARDI' installed and working in order to be able to use the present module (see the documentation therein for more details on the Finsler Tractography method). The nomenclature for this module can be a little confusing: contrary to 'Labelmap seeding', this algorithm does not ask for a seeding region. This is because the seeding region is provided when calculating the costs map and the optimal arrival directions with 'Finsler Tractography based on HARDI'. Hence, the seeding region (and also the hypothetic mask used) is now implicit in the costs map. In the present module, we have to choose instead a set of 'target points': the fiber bundles are traced from these target points to the seeding region. Accordingly, no stopping criterion is needed: we stop tracking the bundle just when we hit either the seeding region or a point outside the mask (if used). Nonetheless, we perform some 'sanity checks', avoiding fibers with abnormal length or with excessive curvature. NOTE: If compiled as a stand-alone, this module needs to be linked against both ITK and VTK NOTE2: If compiled as a stand-alone, the fiber bundles computed are written to disk as a VTK file (.vtp/.vtk) that can be loaded with 3D-Slicer or FSL. IMPORTANT: The fibers are always stored in that file in RAS coordinates..
Tutorials
N/A
Similar Extensions
N/A
References
- GJ. Melonakos, E. Pichon, S. Angenent, A. Tannenbaum, 'Finsler Active Contours'. IEEE Transactions on Pattern Analysis and Machine Intelligence, 30(3):412-423. March 2008
Information for Developers
Section under construction. |