gml_TFingerFinderPlus Class Reference

#include <gml_FingerFinderPlus.h>

Collaboration diagram for gml_TFingerFinderPlus:

Collaboration graph
[legend]
List of all members.

Detailed Description

A complex scanner that processes a segmentation map (scalar image) and detects fingertip-shaped regions.

Warning:
the data members are made public so the finger_finder scanner can access them; they are *not* to be modified by client code !


Public Member Functions

gml_TError Init ()
 Setup the data structures.
void Dispose ()
 Release the data structures.
gml_TError Setup (Float64 reqViewScale)
 Setup the data structures for a given view scale. If the reqViewScale hasn't changed the data structures no allocation or computation will occur.
gml_TError Process (gml_TBitmap *source, gml_TRect *sourceRect, gml_TBoolean flagRejectMap, UInt32 reqTipFillFactor, UInt16 &nbFingers, gml_TFinger *fingers)
 Process the source bitmap and place in fingers the detected fingertips.
void Dump ()
 Write the fields' value to stdout.
gml_TError Init ()
 Setup the data structures.
void Dispose ()
 Release the data structures.
gml_TError Setup (Float64 reqViewScale)
 Setup the data structures for a given view scale. If the reqViewScale hasn't changed the data structures no allocation or computation will occur.
gml_TError Process (gml_TBitmap *source, gml_TRect *sourceRect, gml_TBoolean flagRejectMap, UInt32 reqTipFillFactor, UInt16 &nbFingers, gml_TFinger *fingers)
 Process the source bitmap and place in fingers the detected fingertips.
void Dump ()
 Write the fields' value to stdout.

Static Public Member Functions

static Float64 sMinFingerRadius ()
 fingers are between 9 and 20 millimiters wide meters
static Float64 sMaxFingerRadius ()
 meters
static Float64 sDefaultViewScale ()
 default view ratio meters / pixel default required fill factor for fingertip regions
static UInt8 sDefaultTipFillFactor ()
 percentage
static Float64 sMinFingerRadius ()
 fingers are between 9 and 20 millimiters wide meters
static Float64 sMaxFingerRadius ()
 meters
static Float64 sDefaultViewScale ()
 default view ratio meters / pixel default required fill factor for fingertip regions
static UInt8 sDefaultTipFillFactor ()
 percentage

Public Attributes

Float64 fViewScale
 the view ratio, expressed in meters / pixel
UInt32 fTipFillFactor
 the required fill factor of fingertips, percentage
UInt32 fMinFingerRadius
 the minimum finger radius, pixels
UInt32 fMaxFingerRadius
 the maximum finger radius, pixels
int maxHandArea
SInt32 fDiskDiameter
 pixels
UInt8fDiskMask
 as given by gml_Bresenham_DiskMask
UInt32 fDiskArea
 disk area
SInt32 fCircleDiameter
 pixels
UInt32 fCircleNbPoints
 number of contour points
gml_TPointfCirclePointList
 list of relative contour points as given by gml_Bresenham_CirclePoints
UInt32fPointsBuffer
 temporary storage for contour points
UInt32 fMinContourPoints
 minimum number of contour pixels for a valid finger
UInt32 fMaxContourPoints
 maximum number of contour pixels for a valid finger
UInt8fDiskMask
 as given by gml_Bresenham_DiskMask
gml_TPointfCirclePointList
 list of relative contour points as given by gml_Bresenham_CirclePoints
UInt32fPointsBuffer
 temporary storage for contour points

Protected Member Functions

gml_TError AllocateAndZeroMap (gml_TBitmap *source)
 Allocate fFingerMap as a G_8 bitmap the same size as source (if necessary) and zero it.
gml_TError AllocateAndZeroMap (gml_TBitmap *source)
 Allocate fFingerMap as a G_8 bitmap the same size as source (if necessary) and zero it.

Protected Attributes

gml_TConnexer * fConnexer
 analyzer used to pre- and post-process the bitmap
gml_TBitmapfFingerMap
 output of the finger-finding scanner
gml_TBitmapfConnexerMap
 outpout of the fconnexer, step 1
gml_TConnexer * fConnexer
 analyzer used to pre- and post-process the bitmap
gml_TBitmapfFingerMap
 output of the finger-finding scanner
gml_TBitmapfConnexerMap
 outpout of the fconnexer, step 1

Member Function Documentation

gml_TError Setup ( Float64  reqViewScale  ) 

Setup the data structures for a given view scale. If the reqViewScale hasn't changed the data structures no allocation or computation will occur.

Parameters:
reqViewScale  requested view scale (meters/pixel)

gml_TError Process ( gml_TBitmap source,
gml_TRect sourceRect,
gml_TBoolean  flagRejectMap,
UInt32  reqTipFillFactor,
UInt16 nbFingers,
gml_TFinger fingers 
)

Process the source bitmap and place in fingers the detected fingertips.

Parameters:
source  [in] source bitmap (binary image)
sourceRect  [in] source region of interest
flagRejectMap  [in] if true, source will be overwritten with a rejection map
reqTipFillFactor  [in] minimal density around a fingertip
nbFingers  [inout] input: maximum number of fingers (size of the finger array); output: actual number of detected fingers
fingers  [out] detected fingertips

gml_TError Setup ( Float64  reqViewScale  ) 

Setup the data structures for a given view scale. If the reqViewScale hasn't changed the data structures no allocation or computation will occur.

Parameters:
reqViewScale  requested view scale (meters/pixel)

gml_TError Process ( gml_TBitmap source,
gml_TRect sourceRect,
gml_TBoolean  flagRejectMap,
UInt32  reqTipFillFactor,
UInt16 nbFingers,
gml_TFinger fingers 
)

Process the source bitmap and place in fingers the detected fingertips.

Parameters:
source  [in] source bitmap (binary image)
sourceRect  [in] source region of interest
flagRejectMap  [in] if true, source will be overwritten with a rejection map
reqTipFillFactor  [in] minimal density around a fingertip
nbFingers  [inout] input: maximum number of fingers (size of the finger array); output: actual number of detected fingers
fingers  [out] detected fingertips


The documentation for this class was generated from the following files:
Generated on Tue Jun 12 14:03:28 2007 for gml by Doxygen 1.5.2.