Caret:Documentation:MetricSmoothing

From Van Essen Lab

Jump to: navigation, search

Contents

Metric Smoothing

Image:MetricSmoothingBefore.jpg Image:MetricSmoothingAfter.jpg

Metric smoothing replaces a node's metric (or surface shape) value using a weighted, or unweighted, average of the node's metric value with the metric values of the node's neighbors. Smoothing essentially removes the noise (reduces any local minima or maxima). Smoothing can also be thought of as a low-pass filter.

Parameters Common to All Smoothing Algorithms

Parameters common to all smoothing algorithms:

  • Strength - Weight applied to average of neighbors (not used in Full Width Half Maximum nor Dilation algorithms)
  • Iterations - The number of iterations of smoothing

Several algorithms use inter-neighbor distances. It is important that the Fiducial (Anatomical) Surface is used for smoothing.

Average Neighbors

Average neighbors smooths a node by averaging its metric value with the metric values of the node's immediate neighbors.

For node Mx with N neighbors Mi, one iteration of smoothing is:

  • M_x = (strength * \frac{\sum_{i=1}^N M_i}{N}) + ( (1.0 - strength) * M_x)

Dilation

Dilation spreads the metric values without altering any non-zero metric values.

For node Mx with a value of zero and N NON-ZERO neighbors Mi, one iteration of smoothing is:

  • M_x = \frac{\sum_{i=1}^N M_i}{N}   \forall  M_x = 0

Full Width Half Maximum (FWHM)

The FWHM smoothing algorithm is based upon Hagler DJ Jr, Saygin AP, Sereno MI. Smoothing and cluster thresholding for cortical surface-based group analysis of fMRI data. Neuroimage. (2006) 33:1093–1103. PubMed.

For node Mx with N neighbors Mi, one iteration of smoothing is average of the node and its neighbors:

  • M_x = \frac{((\sum_{i=1}^N M_i) + Mx)}{N + 1}

The number of iterations provided by the user is the maximum number of iterations of smoothing that are performed using the Full Width Half Maximum Algorithm. Prior to each iteration of smoothing, the Full Width Half Maximum is estimated using equations below. If the calculated FWHM exceeds the FWHM provided by user, smoothing ceases.

  • dv = Average Euclidean (straight-line) Inter-Neighbor Distance for all nodes.
  • var(ds) = Variance of node and neighbor metric differences.
  • var(s) = Variance of node metric values
  • FWHMsurf = dv \sqrt{\frac{-2ln(2)}{ln(1 - \frac{var(ds)}{2 var(s)})}}


Gaussian

Image:MetricSmoothingGaussian.jpg

In gaussian smoothing, the neighboring node is assigned the product of two weights, the normal weight and the tangent weight. For the normal weight, x is the distance from the plane tangent to the node being smoothed to the neighboring node (this distance is parallel to the normal vector). If the node is not within the Normal Below and Normal Above Cutoffs, the normal weight is zero. For the tangent weight, x is the distance from the neighbor to the normal vector. If the the node is not within the Tangent Cutoffs, the tangent weight is zero. In the calculation of both weights, the weight is the gaussian equation e^(\frac{-x^2}{2.0 * \sigma^2}) where x is the normal or tangent distance.

  • Sigma Normal - The standard deviation for the gaussian used in the normal weight calculation.
  • Sigma Tangent - The standard deviation for the gaussian used in the tangent weight calculation.
  • Normal Below Cutoff - The cutoff distance in a direction opposite of the node's normal vector used durning the normal weight calculation.
  • Normal Above Cutoff - The cutoff distance in the direction of the node's normal vector used during the normal weight calculation.
  • Tangent Cutoff - The cutoff distance that is orthogonal to the normal vector.


For node Mx with N neighbors Mi, one iteration of smoothing is:

  • Wi is the gaussian weight for for neighbor i of the node being smoothed.
  • W = \sum_{i=1}^N W_i (the total of the weights).
  • MW = \frac{\sum_{i=1}^N (M_i * W_i)}{W}
  • Mx = (strength * MW) + ((1.0 − strength) * Mx)


For gaussian smoothing, all nodes within a "neighbor depth" of 5 are considered neighbors of the node being smoothed. If a fiducial surface was used for determining the distance from a node to its neighbor, the Euclidean (straight line) distance may be very short across a sulcus but the distance along the surface (geodesic distance) may be much longer. Unfortunately, the time required to calculate the geodesic distances is too slow. As a result, we have chosen to approximate the geodesic distance by computing the distance between a node and its neighbors using a spherical surface.

Image:MetricSmoothingGaussianGeodesic.jpg

Weighted Average Neighbors

Weighted Average Neighbors is similar to Average Neighbors except that neighbors closer to the node being smoothed receive a higher weighting than neighbors further away.

Let:

  • Di = distance(Mx,Mi)
  • D = \sum_{i=1}^N D_i
  • W_i = 1.0 - (\frac{D_i}{D})
  • W = \sum_{i=1}^N W_i

For node Mx with N neighbors Mi, one iteration of smoothing is :

  • M_x = (strength * \sum_{i=1}^N (M_i * (W_i / W))) + ( (1.0 - strength) * M_x)

A Smoothing Analysis

This example uses data from Jason Hill's neonate study. The average neighbors algorithm is used with 10 iterations and strength of 1.0.

Before Smoothing Iterations=4, Strength=0.5 Iterations=10, Stength=1.0

To further quantify the amount of smoothing this represents, we created a metric map with zero values across the entire inter24 fiducial surface, right hemisphere. Next, we set the values of a handful of isolated nodes in known regions of interest to 10.0. Then, we smoothed the map 10 iterations at 1.0 strength. The resulting map and histogram are shown in the table below:

Isolated 10.0 valued nodes after 10 iterations smoothing at strength 1.0 Histogram after 10 iterations smoothing at strength 1.0

Note the scale (0-0.01). The peak of the smoothed map was 0.26, so we thresholded it at half that value, 0.13, and found the area of the resulting clusters:

Surface: FIDUCIAL inter24_PALS-inter24_Rhem_Fiducial_AVERAGE_AFFTRANS_Pass2.R.Fiducial_MidVoxel.coord 
Topology: OPEN Human.OPEN_sphere_6.73730.topo
69740 of 73730 nodes in region of interest
Region of Interest Surface Area: 29032.1
Region Mean Distance Between Nodes: 0.69286
Threshold Column Num-Nodes Area Area Corrected COG-X COG-Y COG-Z
0.13000 1 31 15.64660 21.67346 40.05918 4.35479 -21.19949
0.13000 1 31 17.97602 25.84802 46.11361 -31.20967 -8.25840
0.13000 1 31 15.67979 17.26593 30.08122 -13.26249 11.01580
0.13000 1 31 11.51662 17.91896 40.75745 -2.32964 35.74964
0.13000 1 31 19.16867 19.47389 35.19091 -9.88959 27.80424

The corrected area of the largest cluster was 25.8. Dividing by pi and taking the square root gives:

Area=πRadius2=3.14Radius2=25.8
Radius=sqrt(25.8/3.14)=2.87

So the radius of the largest cluster is 2.87, less than 3mm. The diameter is about 5.7mm. The smallest cluster works out to a diameter of about 4.7mm, so this is a 5-6mm smoothing kernel.

Personal tools
Sums Database