Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
OpenWalnut Core OpenWalnut Core
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 86
    • Issues 86
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • OpenWalnut
  • OpenWalnut CoreOpenWalnut Core
  • Wiki
  • FiberSimilarityMetrics

Last edited by Alexander Wiebel Jul 10, 2017
Page history

FiberSimilarityMetrics

Fiber Similarity Metrics

Based on point distances

Note: Not every following similarity measure is symmetric or satisfies the triangle inequality!

Average point-by-point-distance

d(F_i,F_j) = \text{mean}_{p_k\in F_i,q_k \in F_j} \| p_k - q_k \|

Closest-point-distance (Corouge)

d_c(F_i,F_j) = \min\limits_{p_k\in F_i,p_l \in F_j} \| p_k - _l \|

Mean of closest-point-distances (Corouge)

d_m(F_i,F_j) = \text{mean}_{p_k\in F_i}\min\limits_{p_l \in F_j} \| p_k - p_l \|

A derived symmetric measure is:

d_{mc}(F_i,F_j) = \frac{1}{2} \left( d_m(F_i, F_j) + d_m(F_j, F_i) \right)

This approach or just selecting the minimum or maximum is often used to make a similarity measure symmetric.

Mean of thresholded closest-point-distance (Zhang)

d_t(F_i,F_j) = \text{mean}_{p_k\in F_i, \| p_k - p_l \| \ge t}\min\limits_{p_l \in F_j} \| p_k - p_l \|

Mean weighted-closest-point-distance (Laidlaw)

Z = \sum\limits_{k=1}^m e^{|k-(m+1)/2|^2/\sigma^2}

\alpha_k = \frac{1}{Z}e^{|k-(m+1)/2|^2/\sigma^2}

d_{ij} = \text{mean}_{p_k \in F_i} \left( \alpha_i^k \cdot \min\limits_{p_l \in F_j} \| p_k - p_l \| \right)

d_w(F_i,F_j) = \max ( d_{ij}, d_{ji} )

where the tracts endings are more weighted.

Hausdorff point-distance

d_h(F_i,F_j) = \max\limits_{p_k \in F_i}\min\limits_{p_l \in F_j} \| p_k - p_l \|

Frechet point-distance

d_h(F_i,F_j) = \min\limits_{p_k \in F_i}\max\limits_{p_l \in F_j} \| p_k - p_l \|

Weighted (Chen)

d_m(F_i,F_j) = \text{mean}_{p_k\in F_i}\min\limits_{p_l \in F_j} \| p_k - p_l \|

d_{mc}(F_i,F_j) = \frac{1}{2} \left( d_m(F_i, F_j) + d_m(F_j, F_i) \right)

AvgN(F) = \text{mean} \quad \text{fractional anisotropy}

AvgR(F) = \text{mean} \quad \text{relative anisotropy}

AvgC(F) = \text{mean} \quad \text{discrete cuvature}

d_w(F_i,F_j) = \alpha\,d_{mc}(F_i, F_j) + \beta \left| AvgN(F_i) - AvgN(F_j)\right| + \gamma \left| AvgC(F_i) -AvgC(F_j) \right|

where \alpha, \beta, \gamma \in [0,1).

Maximal overlap

This is very tricky and achieved via the Gaussian-Process framework. Look in the INRIA paper: Unsupervised White Matter Fiber Clustering and Tract Probability Map Generation: Applications of a Gaussian Process framework for White Matter Fibers

Clone repository
  • Compiling OpenWalnut with MSVC on Windows
  • DeveloperTools
  • DiffusionIndices
  • Documentation
  • Downloads
  • EditorConfiguration
  • FAQ
  • FiberSimilarityMetrics
  • FirstSteps
  • Getting_OpenWalnut
  • Glossary
  • How to download, install and run OpenWalnut AppImage
  • How to use OpenWalnut for SIVERT
  • HowtoDocumentCode
  • IllustrativeConnectivityVisualization
View All Pages