Distance map on a uniform grid. More...
#include <cmtkUniformDistanceMap.h>

Classes | |
| class | ThreadParametersEDT |
| Thread parameters. More... | |
Public Types | |
| enum | Flags { DEFAULT = 0, INSIDE = 1, VALUE_EXACT = 2, VALUE_WINDOW = 4, VALUE_THRESHOLD = 8 } |
Enumeration with binary flags that control distance map computation. More... | |
| typedef UniformDistanceMap < TDistanceDataType > | Self |
| This class. | |
| typedef UniformVolume | Superclass |
| Superclass. | |
| typedef SmartPointer< Self > | SmartPtr |
| Smart pointer to distance map. | |
| typedef TDistanceDataType | DistanceDataType |
| Distance data type. | |
Public Member Functions | |
| UniformDistanceMap (const UniformVolume &volume, const byte flags=DEFAULT, const Types::DataItem value=0, const Types::DataItem window=0) | |
| Construct map from given volume. | |
| UniformVolume::SmartPtr | Get () |
Static Public Attributes | |
| static const long int | EDT_MAX_DISTANCE_SQUARED = 2147329548 |
Private Member Functions | |
| void | BuildDistanceMap (const UniformVolume &volume, const byte flags, const Types::DataItem value=0, const Types::DataItem window=0) |
| Compute distance map. | |
| void | ComputeEDT (DistanceDataType *const distance) |
| Compute 3-D Euclidean Distance Transformation. | |
| void | ComputeEDT2D (DistanceDataType *const plane, std::vector< DistanceDataType > &gTemp, std::vector< DistanceDataType > &hTemp) |
| Compute 2-D Euclidean Distance Transformation for one image plane. | |
| bool | VoronoiEDT (DistanceDataType *const lpY, const int nSize, const DistanceDataType delta, std::vector< DistanceDataType > &gTemp, std::vector< DistanceDataType > &hTemp) |
| Compute 1-D Voronoi Euclidean Distance Transform. | |
Static Private Member Functions | |
| static void | ComputeEDTThreadPhase1 (void *const args, const size_t taskIdx, const size_t taskCnt, const size_t threadIdx, const size_t) |
| Thread function for first phase (xy) of EDT computation. | |
| static void | ComputeEDTThreadPhase2 (void *const args, const size_t taskIdx, const size_t taskCnt, const size_t threadIdx, const size_t) |
| Thread function for second phase (z) of EDT computation. | |
Private Attributes | |
| std::vector< std::vector < DistanceDataType > > | m_G |
| Internal: pointer to row storage. | |
| std::vector< std::vector < DistanceDataType > > | m_H |
| Internal: pointer to row storage. | |
| UniformVolume::SmartPtr | m_DistanceMap |
| The computed distance map. | |
Distance map on a uniform grid.
Definition at line 55 of file cmtkUniformDistanceMap.h.
| typedef TDistanceDataType cmtk::UniformDistanceMap< TDistanceDataType >::DistanceDataType |
Distance data type.
Definition at line 70 of file cmtkUniformDistanceMap.h.
| typedef UniformDistanceMap<TDistanceDataType> cmtk::UniformDistanceMap< TDistanceDataType >::Self |
This class.
Definition at line 61 of file cmtkUniformDistanceMap.h.
| typedef SmartPointer<Self> cmtk::UniformDistanceMap< TDistanceDataType >::SmartPtr |
Smart pointer to distance map.
Definition at line 67 of file cmtkUniformDistanceMap.h.
| typedef UniformVolume cmtk::UniformDistanceMap< TDistanceDataType >::Superclass |
Superclass.
Definition at line 64 of file cmtkUniformDistanceMap.h.
| enum cmtk::UniformDistanceMap::Flags |
Enumeration with binary flags that control distance map computation.
The defined values can be combined by arithmetic "or".
Definition at line 75 of file cmtkUniformDistanceMap.h.
| UniformVolume::SmartPtr cmtk::UniformDistanceMap< TDistanceDataType >::Get | ( | ) | [inline] |
Definition at line 114 of file cmtkUniformDistanceMap.h.
Referenced by cmtk::ImageOperationMedialSkeleton::Apply(), and cmtk::ImageOperationDistanceMap::Apply().
const long int cmtk::UniformDistanceMap< TDistanceDataType >::EDT_MAX_DISTANCE_SQUARED = 2147329548 [static] |
Definition at line 58 of file cmtkUniformDistanceMap.h.
UniformVolume::SmartPtr cmtk::UniformDistanceMap< TDistanceDataType >::m_DistanceMap [private] |
The computed distance map.
Definition at line 155 of file cmtkUniformDistanceMap.h.
Referenced by cmtk::UniformDistanceMap< TDistanceDataType >::ComputeEDTThreadPhase1(), and cmtk::UniformDistanceMap< TDistanceDataType >::ComputeEDTThreadPhase2().
std::vector< std::vector<DistanceDataType> > cmtk::UniformDistanceMap< TDistanceDataType >::m_G [private] |
Internal: pointer to row storage.
Definition at line 133 of file cmtkUniformDistanceMap.h.
Referenced by cmtk::UniformDistanceMap< TDistanceDataType >::ComputeEDTThreadPhase1(), and cmtk::UniformDistanceMap< TDistanceDataType >::ComputeEDTThreadPhase2().
std::vector< std::vector<DistanceDataType> > cmtk::UniformDistanceMap< TDistanceDataType >::m_H [private] |
Internal: pointer to row storage.
Definition at line 136 of file cmtkUniformDistanceMap.h.
Referenced by cmtk::UniformDistanceMap< TDistanceDataType >::ComputeEDTThreadPhase1(), and cmtk::UniformDistanceMap< TDistanceDataType >::ComputeEDTThreadPhase2().
1.7.2