Skip to content

AFNI and NIfTI Server for NIMH/NIH/PHS/DHHS/USA/Earth

Sections
Personal tools
You are here: Home » AFNI » Documentation » FAQs » So how do the clustering paramerters "rmm" and "vmul" work?

So how do the clustering paramerters "rmm" and "vmul" work?

Document Actions
Up to table of contents

Q24. So how do the clustering parameters "rmm" and "vmul" work?
The clustering options (to programs 3dclust and 3dmerge, among others), put together voxels that are nonzero and spatially contiguous. The first step is usually to threshold the dataset in some way (this can be done on the command line of 3dclust, or can be done ahead of time with 3dmerge, 3dcalc, etc.).

The geometrical criterion for spatial contiguity is defined by the parameter "rmm". A nonzero voxel is defined as being in the same cluster as another nonzero voxel if their centers are within a distance of rmm millimeters. In a 3D lattice of cubical voxels with edges of length L, the range of common values of rmm are:

  • L < rmm < 1.4142 L
    This will directly connect voxels that share a common face (nearest neighbors), but no others.
  • 1.4142 L < rmm < 1.732 L
    This will also connect voxels that share an edge (2nd nearest neighbors), but have no nonzero voxel in common in the corner between them.
  • 1.732 L < rmm < 2 L
    This will also connect voxels that share a corner (3rd nearest neighbors), but have no nonzero voxel in common in the corners between them.
Here, 1.4142 = sqrt(2) and 1.732 = sqrt(3). If the voxels are not cubical, you have to calculate the appropriate value of rmm for the connectivity that you desire.

The parameter "vmul" is used to delete (set to zero) voxels in clusters whose volume is less than vmul microliters (a microliter is a cubic millimeter). This is particularly useful when datasets have been resampled to a fine grid in Talairach coordinates. There may be small patches of above-threshold voxels that are smaller than one of the original data voxels. Thus, vmul should be at least as large as the volume of an original voxel, and you may want it to be 2 or 3 times larger than that.

Cluster Erosion and Dilation
The -1erode and -1dilate options to 3dmerge can be used to further massage the shapes of clusters. The basic idea is to try to cut off small "necks" (or peninsulas) that might connect larger regions, as in this picture:

   xxxxxxx         yyyyyyy
   xxxxxxx         yyyyyyy
   xxxxxxxaaaaaaaaayyyyyyy
   xxxxxxx         yyyyyyy
   xxxxxxx         yyyyyyy

This is easy to see in 2D, but hard to see when it is all twisted through 3D space--what looks like 2 separate clusters of activation may actually be detected by 3dclust (or 3dmerge) as 1, because of a small neck (like the a voxels) connecting the two larger regions.

By eroding the outer edges, the a voxels would be removed, along with the outer edges of the the x and y regions. Dilation from the surviving x and y regions will restore the x and y regions back to about what they were before, but the a neck will not come back (much).

For a single voxel neck, as illustrated above, setting the erode pv parameter to 50 should delete the a voxels, since you are requiring that 50% of the neighbors be in the cluster for non-erosion. Since there are 6 neighbors (in 3D, and assuming you have set rmm to cluster only nearest neigbors), and the a's only have 2 cluster neighbors each, they will be gone. So will the corner x and y voxels. Dilation will restore the corners, and also the first a voxels that stick out of the big regions, but the rest of the neck will be history.

Other Editing Options
The program 3dmerge has a number of other "editing options" that can be used to manipulate the data prior to clustering. Most useful among these, perhaps, is the -1thresh option, which will threshold the data before clustering. When using the newer bucket type of datasets (e.g., as generated by FIM+), you might need to select the correct sub-bricks for the data to be clustered and the thresholding. In 3dmerge, this is done with options -1dindex and -1tindex, respectively. These two options were just added to program 3dclust as well [16 Sep 1999]. If you are using an earlier version of the AFNI package, the only way to use a bucket dataset with 3dclust is to first use 3dmerge with the appropriate -1dindex and -1tindex options (and maybe -1thresh) to create a temporary dataset with the desired properties. (Or you could upgrade to the current AFNI.)

[Answer last changed 23 Sep 1999]

This FAQ applies to: Any version.

Created by Robert Cox
Last modified 2005-07-31 10:46
 

Powered by Plone

This site conforms to the following standards: