aimsalgo  5.1.2
Neuroimaging image processing
chamfer.h File Reference
Include dependency graph for chamfer.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  AimsDistmapMaskPoint
 
class  AimsDistmapMask
 

Namespaces

 carto
 

Macros

#define AIMS_CHAMFER_DISTANCE_MAP   0
 
#define AIMS_CHAMFER_OUTSIDE   0
 
#define AIMS_CHAMFER_INSIDE   1
 
#define AIMS_CHAMFER_DOMAIN   32500
 
#define AIMS_CHAMFER_OUTSIDE_DOMAIN   32501
 

Functions

void AimsCreateAndSplitCubicMask (const carto::rc_ptr< carto::Volume< int16_t > > &vol, int xsize, int ysize, int zsize, AimsDistmapMask &forward, AimsDistmapMask &backward, float mult_factor)
 
void AimsCreateAndSplitConnectivityMask (const carto::rc_ptr< carto::Volume< int16_t > > &vol, Connectivity::Type connectivity, AimsDistmapMask &forward, AimsDistmapMask &backward)
 
void AimsForwardSweepingWithBorder (carto::rc_ptr< carto::Volume< int16_t > > &vol, const AimsDistmapMask &mask, int borderlevel)
 
void AimsBackwardSweepingWithBorder (carto::rc_ptr< carto::Volume< int16_t > > &vol, const AimsDistmapMask &mask, int borderlevel)
 
Chamfer distance map.

Two distance maps can be processed : the distance map of the outside of the object (give AIMS_CHAMFER_OUTSIDE argument), and the distance map of the inside of the object (give the AIMS_CHAMFER_INSIDE argument).

carto::VolumeRef< int16_t > AimsChamferDistanceMap (const carto::rc_ptr< carto::Volume< int16_t > > &vol, int xmask=3, int ymask=3, int zmask=3, float mult_factor=50)
 Return customized short distance map. More...
 
carto::VolumeRef< int16_t > AimsConnectivityChamferDistanceMap (const carto::rc_ptr< carto::Volume< int16_t > > &vol, Connectivity::Type type)
 Return Connectivity Chamfer Distance. More...
 
carto::VolumeRef< float > AimsFloatChamferDistanceMap (const carto::rc_ptr< carto::Volume< int16_t > > &vol, int side=AIMS_CHAMFER_OUTSIDE, int xsize=3, int ysize=3, int zsize=3, float mult_factor=50)
 Return float Chamfer distance map. More...
 
carto::VolumeRef< float > AimsFloatSignedChamferDistanceMap (const carto::rc_ptr< carto::Volume< int16_t > > &vol, int xsize=3, int ysize=3, int zsize=3, float mult_factor=50)
 Return float distance map (minus outside object, plus inside object) More...
 

Macro Definition Documentation

◆ AIMS_CHAMFER_DISTANCE_MAP

#define AIMS_CHAMFER_DISTANCE_MAP   0

Definition at line 48 of file chamfer.h.

◆ AIMS_CHAMFER_DOMAIN

#define AIMS_CHAMFER_DOMAIN   32500

Definition at line 53 of file chamfer.h.

◆ AIMS_CHAMFER_INSIDE

#define AIMS_CHAMFER_INSIDE   1

Definition at line 51 of file chamfer.h.

◆ AIMS_CHAMFER_OUTSIDE

#define AIMS_CHAMFER_OUTSIDE   0

Definition at line 50 of file chamfer.h.

◆ AIMS_CHAMFER_OUTSIDE_DOMAIN

#define AIMS_CHAMFER_OUTSIDE_DOMAIN   32501

Definition at line 54 of file chamfer.h.

Function Documentation

◆ AimsBackwardSweepingWithBorder()

void AimsBackwardSweepingWithBorder ( carto::rc_ptr< carto::Volume< int16_t > > &  vol,
const AimsDistmapMask mask,
int  borderlevel 
)

◆ AimsChamferDistanceMap()

carto::VolumeRef<int16_t> AimsChamferDistanceMap ( const carto::rc_ptr< carto::Volume< int16_t > > &  vol,
int  xmask = 3,
int  ymask = 3,
int  zmask = 3,
float  mult_factor = 50 
)

Return customized short distance map.

◆ AimsConnectivityChamferDistanceMap()

carto::VolumeRef<int16_t> AimsConnectivityChamferDistanceMap ( const carto::rc_ptr< carto::Volume< int16_t > > &  vol,
Connectivity::Type  type 
)

Return Connectivity Chamfer Distance.

◆ AimsCreateAndSplitConnectivityMask()

void AimsCreateAndSplitConnectivityMask ( const carto::rc_ptr< carto::Volume< int16_t > > &  vol,
Connectivity::Type  connectivity,
AimsDistmapMask forward,
AimsDistmapMask backward 
)

◆ AimsCreateAndSplitCubicMask()

void AimsCreateAndSplitCubicMask ( const carto::rc_ptr< carto::Volume< int16_t > > &  vol,
int  xsize,
int  ysize,
int  zsize,
AimsDistmapMask forward,
AimsDistmapMask backward,
float  mult_factor 
)

◆ AimsFloatChamferDistanceMap()

carto::VolumeRef<float> AimsFloatChamferDistanceMap ( const carto::rc_ptr< carto::Volume< int16_t > > &  vol,
int  side = AIMS_CHAMFER_OUTSIDE,
int  xsize = 3,
int  ysize = 3,
int  zsize = 3,
float  mult_factor = 50 
)

Return float Chamfer distance map.

◆ AimsFloatSignedChamferDistanceMap()

carto::VolumeRef<float> AimsFloatSignedChamferDistanceMap ( const carto::rc_ptr< carto::Volume< int16_t > > &  vol,
int  xsize = 3,
int  ysize = 3,
int  zsize = 3,
float  mult_factor = 50 
)

Return float distance map (minus outside object, plus inside object)

◆ AimsForwardSweepingWithBorder()

void AimsForwardSweepingWithBorder ( carto::rc_ptr< carto::Volume< int16_t > > &  vol,
const AimsDistmapMask mask,
int  borderlevel 
)