next up previous index
Next: ``Symmetric_Nearest_Neighbor'' - symmetric nearest-neighbor Up: Filter Previous: ``Sigma'' - sigma filter

``maximum homogeneity'' - the maximum-homogeneity filter

VFX name:
iMaxHomog
IMPROMPTU Equivalent:
Maximum_Homogeneity
purpose:
Apply the maximum-homogeneity filter to an input volume [10,11]. This nonlinear filter reduces noise, while preserving edges and removing thin artifacts. It is excellent for aiding the segmentation of data that contains nominally uniform-intensity regions. It is also excellent for deblurring blurred region borders. Other modes of operation, as described in parameters, are possible.
input:
An 8-bit volume.
output:
An 8-bit volume.
parameters:
Default parameters menu is
iterations = 1
number_of_sectors = 3D:7;2D:5
function = mean
max_variance = 999
operator_size = 5
dimension = 2-D
threshold = 0
constant = 1100
The function uses a cubic operator for 3-D processing and square operator in the x-y plane for 2-D (size determined by ``operator_size''). A number of sectors, shaped like a spotlight beam (actually a circular paraboloid), are defined within the operator. The more sectors one uses, the better the filter works (as set by ``number_of_sectors''). The shape of the beam is determined by ``constant'' - values < 1 give a narrow beam, > 1 gives a wide beam.

For a voxel of interest, the filter finds the sector whose voxels have the lowest grayscale variance. This sector is used for updating the voxel of interest. If no sector about a voxel of interest has a variance smaller than the value set by ``max_variance'', then the voxel of interest is not changed - this condition occurs in areas a wildly varying grayscale activity (near edges). (Note that the variance can be > 255 for 8-bit data.

The ``function'' parameter, which toggles, determines what is computed. The value ``mean'' acts as a filter. The value ``variance'' outputs the grayscale variance of the sector having the smallest grayscale variance - this setting acts very much like a em directionally-sensitive edge detector.

The setting ``max'' also acts as a filter; for a voxel of interest whose lowest-variance sector has a mean grayscale value > than ``threshold'', use the brightest value in this sector as the new value for the voxel of interest. Otherwise, use the mean value. This is useful for sharpening up bright regions and really separating such regions from the background.

comments:
1.
This is a slow function. It can take around 15 minutes for 1 iteration of a 5x5x5, 27-sector run on a 100x100x100 volume.
2.
Running the filter using a 3x3x3 operator is typically not worthwhile. Bigger operators (5x5x5 or bigger) give better results, but watch out for the computation time!
3.
Iterating the filter improves the results.


next up previous index
Next: ``Symmetric_Nearest_Neighbor'' - symmetric nearest-neighbor Up: Filter Previous: ``Sigma'' - sigma filter
MultiDimensional Image Processing Lab, Penn State University