| genre | Fuzzy |
| status | work-in-progress |
| author | Sarah Behrens |
| package | MeVisLab/Standard |
| dll | MLFuzzy |
| definition | MLFuzzy.def |
| see also | ContourManager, FuzzyCluster |
| keywords | fuzzy, connectedness, segmentation, HCC, tumor, vessels, bones, distance |
The module FuzzyConnectDistance provides a segmentation algorithm based on Fuzzy Connectedness.
The algorithm can be extended by a property based on the distance of image elements to the center of the object to be segmented while calculating membership values. This version is conceived for spherical objects and objects that do not differ much from the background.
Starting from a seed point to be placed in the object of interest or from a vector drawn as the object's diameter, the algorithm starts to calculate the membership values of the voxels in the object of interest (OOI). For the computation, mean gray values have to be provided. There are several parameters to help shortening the calculation. After the segmentation is done, the result can be manipulated by changing the threshold for the memberships to obtain an optimal result.
The distance-based method is only a feature but has not to be used. Turning the option off provides the original Fuzzy Connectedness algorithm.
First you have to provide the following values: the Mean Object Value , its Stdev Object Value, the Mean Gradient and its Stdev Gradient.
This can be done manually or by drawing a contour to let the object values be calculated automatically and putting some markers at the border of the OOI to calculate the gradient to objects outside of it. Another possibility is to draw a vector in the object of interest with the index 0 and then the mean gray value will be calculated considering the points inside the circle defined by the diameter. Moreover, the radius is stored to be able to calculate distance-based membership values.
| acceptedMarkerType: Integer | Mean Background: Double | Slice: Integer |
| Calc Mean Gray Value: Trigger | Mean Gradient: Double | Status: String |
| calcCounter: Double | Mean Object Value: Double | Stdev Gradient: Double |
| Calculate: Trigger | Neighbourhood: Enum | Stdev Object Value: Double |
| calcVolume: Trigger | noSeeds: Integer | Stop: Trigger |
| Distance Weigth: Double | Overflow Limit (Voxel): Integer | Use (buckets): Bool |
| ImageMax: Double | Per Slice: Bool | Use (distanceOn): Bool |
| ImageMin: Double | Radius Weight: Double | Value: Double |
| Lower Limit: Double | Reset: Trigger | volume: Double |
| maxSize: Integer | Selection: Double | Weight Object: Double |
Sets the threshold for membership.
Can be used after the calculation is done to manipulate the result.
Sets the weight of the object value in the calculation.
The weight of the gradient is 1 - Weight Object.
Sets the membership value that the calculation should be pursued.
Should be greater than zero to avoid long calculation time.
Sets the mean object value.
Sets the standard deviation of the mean object value.
Sets the mean gradient to objects outside the OOI.
This parameter helps finding edges of the OOI.
Sets the standard deviation of the gradient.
If pressed, the object and gradient values and their standard deviation are calculated automatically.
Use this after tracing a contour and placing markers at the border of the OOI.
If pressed, the segmentation result is removed.
If pressed again, the calculation is being started from the beginning.
Shows for which membership value the calculation has been done.
Sets the mean background value.
Sets the maximum number of the internally used buckets.
If that maximum number is reached, the calculation is stopped.
If checked, the field Overflow Limit (Voxel) can be used.
If checked, the distance to the center of the object is included into the calculation of membership values.
Sets the weighting between gray values and distance of a voxel from the center of the OOI.