|
MeVisLab Toolbox Reference
|
Implementation of a SimilarIntensities clustering algorithm. More...
#include <mlSimilarIntensitiesClusterAlgorithm.h>
Public Member Functions | |
| SimilarIntensitiesClusterAlgorithm (const ComputeClusterParameters ¶meters, Clusters *clusters) | |
| ML_FORCE_INLINE bool | isInTolerance (DATATYPE neighborValue, DATATYPE currentValue) |
| Tolerance calculation for scalar images. | |
Public Member Functions inherited from ml::ClusterAlgorithm< DATATYPE, SimilarIntensitiesClusterAlgorithm< DATATYPE > > | |
| ClusterAlgorithm (const ComputeClusterParameters ¶meters, Clusters *clusters) | |
| Constructor to be used. | |
| MLErrorCode | runClustering () |
| MLErrorCode | processSlice (MLint zi, const ImageVector &inputImageExtent, TSubImage< MLint8 > &inMaskSlice) |
Public Member Functions inherited from ml::ClusterAlgorithmBase | |
| ClusterAlgorithmBase (const ComputeClusterParameters ¶meters, Clusters *clusters) | |
| Constructor to be used. | |
| virtual | ~ClusterAlgorithmBase () |
| Default virtual destructor. | |
| bool | hasResults () const |
| Returns whether getCluster() and getClusterOfVoxel() contains cluster data. | |
Static Public Member Functions | |
| static ML_FORCE_INLINE DATATYPE | getVoxel (void *position) |
| Get the typed voxel value for current position. | |
| static ML_FORCE_INLINE MLdouble | getVoxelAsDouble (void *) |
Additional Inherited Members | |
Public Types inherited from ml::ClusterAlgorithm< DATATYPE, SimilarIntensitiesClusterAlgorithm< DATATYPE > > | |
| typedef DATATYPE | ClusterVoxelType |
| The used type of the voxels, needed by derived classes. | |
Protected Types inherited from ml::ClusterAlgorithmBase | |
| enum | { _NR_OF_SUBIMAGES = 2 } |
| We do not load the whole image into memory, only keep two slices at once. More... | |
Protected Member Functions inherited from ml::ClusterAlgorithm< DATATYPE, SimilarIntensitiesClusterAlgorithm< DATATYPE > > | |
| MLuint | updateClusterRefForNeighbor (void *neighborVoxelPtr, MLint x, MLint y, MLint z, DATATYPE currentValue, MLuint currentClusterRef) |
| Checks if neighbor at position x,y,z belongs to the same cluster given by currentClusterRef. | |
| MLErrorCode | calcClustersForSlices () |
| Template applying cluster calculations for one slice. | |
Protected Member Functions inherited from ml::ClusterAlgorithmBase | |
| void | setInSliceVoxelType (MLDataType dt) |
| Sets voxel type of input slices. | |
| void | freeInSliceData () |
| Releases memory of input image slices. | |
| void | storeNextSlice (SubImage &slice) |
| Sets next image data, expects the data to be managed by memory manager. | |
| MLErrorCode | loadNextSlice (MLint sliceNr, const ImageVector &inImgExt) |
| Gets next image data. | |
| MLErrorCode | loadMaskSlice (TSubImage< MLint8 > &slice, MLint sliceNr, const ImageVector &inImgExt) const |
| Gets current slice of the mask image. | |
| MLuint | mergeClusterReference (MLint x, MLint y, MLint z, MLuint currClusterRef) |
| Merges a cluster reference currClusterRef for position (x,y,z). | |
| void | setResultFlag (bool result) |
| Sets internal result flag to result. | |
Static Protected Member Functions inherited from ml::ClusterAlgorithm< DATATYPE, SimilarIntensitiesClusterAlgorithm< DATATYPE > > | |
| static DATATYPE | convertBackgroundValue (MLdouble backgroundValue) |
Protected Attributes inherited from ml::ClusterAlgorithmBase | |
| enum ml::ClusterAlgorithmBase:: { ... } | NumInImagesEnum |
| We do not load the whole image into memory, only keep two slices at once. | |
| Clusters * | _clusters |
| Result clusters. | |
| SubImage | _currentSlices [_NR_OF_SUBIMAGES] |
| do not load the whole image into memory, only keep two slices at once | |
| ComputeClusterParameters | _parameters |
Implementation of a SimilarIntensities clustering algorithm.
It uses internally two data structures. One (class ClusterRefVolume) holds references for every image voxel to a field of cluster informations (here ClusterRefCollection). For every image voxel will be checked whether it belongs to the background or if not, if it has neighbors with a similar gray value. Merging adjacent cluster is done within ClusterRefCollection.
Definition at line 30 of file mlSimilarIntensitiesClusterAlgorithm.h.
|
inline |
Definition at line 34 of file mlSimilarIntensitiesClusterAlgorithm.h.
|
inlinestatic |
Get the typed voxel value for current position.
Definition at line 40 of file mlSimilarIntensitiesClusterAlgorithm.h.
|
inlinestatic |
Definition at line 45 of file mlSimilarIntensitiesClusterAlgorithm.h.
|
inline |
Tolerance calculation for scalar images.
Definition at line 53 of file mlSimilarIntensitiesClusterAlgorithm.h.