SMIL  1.0.4
MaxTree based algorithms

MaxTree based Attribute Opening and Closing as proposed by Salembier [12]. More...

Detailed Description

MaxTree based Attribute Opening and Closing as proposed by Salembier [12].

+ Collaboration diagram for MaxTree based algorithms:

Classes

class  MaxTree2< T, CriterionT, Offset_T, Label_T >
 

Typedefs

typedef size_t Offset_T
 
typedef UINT32 Label_T
 

Functions

template<class T , class CriterionT , class Offset_T , class Label_T , class Attr_T >
void ComputeDeltaUO (MaxTree2< T, CriterionT, Offset_T, Label_T > &tree, T *transformee_node, Attr_T *indicatrice_node, int node, int nParent, T prev_residue, Attr_T stop, UINT delta, int isPrevMaxT)
 
template<class T1 , class T2 >
void compute_max (MaxTree2< T1, HeightCriterion, size_t, UINT32 > &tree, T1 *transformee_node, T2 *indicatrice_node, UINT32 node, T2 stop, T1 max_tr, T2 max_in, T2 hauteur_parent, T1 valeur_parent, T1 previous_value)
 
template<class T1 , class T2 >
void compute_contrast (MaxTree2< T1, HeightCriterion, size_t, UINT32 > &tree, T1 *transformee_node, T2 *indicatrice_node, UINT32 root, T2 stopSize, UINT delta=0)
 
template<class T1 , class T2 >
RES_T ultimateOpen (const Image< T1 > &imIn, Image< T1 > &imTrans, Image< T2 > &imIndic, const StrElt &se=DEFAULT_SE, T2 stopSize=0, UINT delta=0)
 Ultimate Opening using the max-trees. More...
 
template<class T , class CriterionT , class Offset_T , class Label_T , class Attr_T >
void ComputeDeltaUOMSER (MaxTree2< T, CriterionT, Offset_T, Label_T > &tree, T *transformee_node, Attr_T *indicatrice_node, int node, int nParent, int first_ancestor, Attr_T stop, UINT delta, UINT method, int isPrevMaxT, UINT minArea=0, T threshold=0, T mymax=0)
 
void computeFillAspectRatioFactor (UINT wNode, UINT cNode, UINT area, UINT width, UINT height, float &fillRatio, float &AspectRatio)
 
template<class T , class CriterionT , class Offset_T , class Label_T , class Attr_T >
void ComputeDeltaUOMSERSC (MaxTree2< T, CriterionT, Offset_T, Label_T > &tree, T *transformee_node, Attr_T *indicatrice_node, int node, int nParent, int first_ancestor, Attr_T stop, UINT delta, int isPrevMaxT)
 
template<class T1 , class T2 >
void compute_contrast_MSER (MaxTree2< T1, HWACriterion, size_t, UINT32 > &tree, T1 *transformee_node, T2 *indicatrice_node, UINT32 root, T2 stopSize, UINT delta=0, UINT method=2, UINT minArea=0, T1 threshold=0, bool use_textShape=0)
 
template<class T1 , class T2 >
RES_T ultimateOpenMSER (const Image< T1 > &imIn, Image< T1 > &imTrans, Image< T2 > &imIndic, const StrElt &se=DEFAULT_SE, T2 stopSize=0, UINT delta=0, UINT method=2, UINT minArea=0, T1 threshold=0, bool use_textShape=0)
 
template<class T , class CriterionT , class Offset_T , class Label_T , class Attr_T >
void processMaxTree (MaxTree2< T, CriterionT, Offset_T, Label_T > &tree, Label_T node, T *lut_out, T previousLevel, Attr_T stop)
 
template<class T , class CriterionT , class Offset_T , class Label_T , class Attr_T >
void compute_AttributeOpening (MaxTree2< T, CriterionT, Offset_T, Label_T > &tree, T *lut_node, Label_T root, Attr_T stopSize)
 
template<class T , class CriterionT , class Offset_T = size_t, class Label_T = UINT32>
RES_T attributeOpen (const Image< T > &imIn, Image< T > &imOut, size_t stopSize, const StrElt &se)
 
template<class T >
RES_T heightOpen (const Image< T > &imIn, size_t stopSize, Image< T > &imOut, const StrElt &se=DEFAULT_SE)
 Image opening based on height attribute. More...
 
template<class T >
RES_T heightClose (const Image< T > &imIn, size_t stopSize, Image< T > &imOut, const StrElt &se=DEFAULT_SE)
 Image closing based on height attribute. More...
 
template<class T >
RES_T widthOpen (const Image< T > &imIn, size_t stopSize, Image< T > &imOut, const StrElt &se=DEFAULT_SE)
 Image opening based on width attribute. More...
 
template<class T >
RES_T widthClose (const Image< T > &imIn, size_t stopSize, Image< T > &imOut, const StrElt &se=DEFAULT_SE)
 Image opening based on width attribute. More...
 
template<class T >
RES_T areaOpen (const Image< T > &imIn, size_t stopSize, Image< T > &imOut, const StrElt &se=DEFAULT_SE)
 Image opening based on area attribute. More...
 
template<class T >
RES_T areaClose (const Image< T > &imIn, size_t stopSize, Image< T > &imOut, const StrElt &se=DEFAULT_SE)
 Image closing based on area attribute. More...
 

Function Documentation

◆ ultimateOpen()

RES_T smil::ultimateOpen ( const Image< T1 > &  imIn,
Image< T1 > &  imTrans,
Image< T2 > &  imIndic,
const StrElt se = DEFAULT_SE,
T2  stopSize = 0,
UINT  delta = 0 
)

Ultimate Opening using the max-trees.

Max-tree based algorithm as described by Fabrizio and Marcotegui (2009) [7]

Parameters
[in]imInInput image
[out]imTransThe transformation image
[out]imIndicThe indicator image
[in]stopSize(optional)
[in]delta(optional)
[in]sestructuring element

◆ ComputeDeltaUOMSERSC()

void smil::ComputeDeltaUOMSERSC ( MaxTree2< T, CriterionT, Offset_T, Label_T > &  tree,
T *  transformee_node,
Attr_T *  indicatrice_node,
int  node,
int  nParent,
int  first_ancestor,
Attr_T  stop,
UINT  delta,
int  isPrevMaxT 
)

wParent set but not used*‍/

◆ heightOpen()

RES_T smil::heightOpen ( const Image< T > &  imIn,
size_t  stopSize,
Image< T > &  imOut,
const StrElt se = DEFAULT_SE 
)

Image opening based on height attribute.

Max-tree based algorithm

Warning
4-connex only (6-connex in 3D)
Parameters
[in]imInInput image
[in]stopSizeThe size of the opening
[out]imOutOutput image
[in]seStructuring element

◆ heightClose()

RES_T smil::heightClose ( const Image< T > &  imIn,
size_t  stopSize,
Image< T > &  imOut,
const StrElt se = DEFAULT_SE 
)

Image closing based on height attribute.

Max-tree based algorithm

Warning
4-connex only (6-connex in 3D)
Parameters
[in]imInInput image
[in]stopSizeThe size of the opening
[out]imOutOutput image
[in]seStructuring element

◆ widthOpen()

RES_T smil::widthOpen ( const Image< T > &  imIn,
size_t  stopSize,
Image< T > &  imOut,
const StrElt se = DEFAULT_SE 
)

Image opening based on width attribute.

Max-tree based algorithm

Warning
4-connex only (6-connex in 3D)
Parameters
[in]imInInput image
[in]stopSizeThe size of the opening
[out]imOutOutput image
[in]seStructuring element

◆ widthClose()

RES_T smil::widthClose ( const Image< T > &  imIn,
size_t  stopSize,
Image< T > &  imOut,
const StrElt se = DEFAULT_SE 
)

Image opening based on width attribute.

Max-tree based algorithm

Warning
4-connex only (6-connex in 3D)
Parameters
[in]imInInput image
[in]stopSizeThe size of the opening
[out]imOutOutput image
[in]seStructuring element

◆ areaOpen()

RES_T smil::areaOpen ( const Image< T > &  imIn,
size_t  stopSize,
Image< T > &  imOut,
const StrElt se = DEFAULT_SE 
)

Image opening based on area attribute.

Max-tree based algorithm

Parameters
[in]imInInput image
[in]stopSizeThe size of the opening
[out]imOutOutput image
[in]seStructuring element

◆ areaClose()

RES_T smil::areaClose ( const Image< T > &  imIn,
size_t  stopSize,
Image< T > &  imOut,
const StrElt se = DEFAULT_SE 
)

Image closing based on area attribute.

Max-tree based algorithm

Parameters
[in]imInInput image
[in]stopSizeThe size of the closing
[out]imOutOutput image
[in]seStructuring element