So how do the clustering paramerters "rmm" and "vmul" work?
Up to table of contentsQ24. 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.
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 yyyyyyyThis 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.




