CVB++ 15.0
TeachParameters Class Referencefinal

Parameters for teaching a Match3D DNC finder. More...

#include <cvb/dnc/teach_parameters.hpp>

Public Member Functions

 TeachParameters ()=default
 Default teach parameters. More...
 
double HeightSensitivity () const noexcept
 Get the minimum gradient magnitude to accept a local gradient as a feature in the depth images. More...
 
void SetHeightSensitivity (double value)
 Set the minimum gradient magnitude to accept a local gradient as a feature in the depth images. More...
 
int DerivativePatchSize () const noexcept
 Get smoothing area in pixels for gradient and normal calculation. More...
 
void SetDerivativePatchSize (int value)
 Set smoothing area in pixels for gradient and normal calculation. More...
 
int LocalDistributionSize () const noexcept
 Get the size of area in which local features are distributed (in pixels). More...
 
void SetLocalDistributionSize (int value)
 Set the size of area in which local features are distributed (in pixels). More...
 
int NumGradientFeatures () const noexcept
 Get the number of gradient features retained in the classifier. More...
 
void SetNumGradientFeatures (int value)
 Set the number of gradient features retained in the classifier. More...
 
int NumNormalFeatures () const noexcept
 Get the number of normal vector features retained in the classifier. More...
 
void SetNumNormalFeatures (int value)
 Set the number of normal vector features retained in the classifier. More...
 
int ICPShrink () const noexcept
 Get the subsample factor for ICP. More...
 
void SetICPShrink (int value)
 Set the subsample factor for ICP. More...
 
double DistanceKernelSize () const noexcept
 Get the factor for distance transform calculation. More...
 
void SetDistanceKernelSize (double value)
 Set the factor for Distance transform calculation. More...
 

Detailed Description

Parameters for teaching a Match3D DNC finder.

Constructor & Destructor Documentation

◆ TeachParameters()

TeachParameters ( )
default

Default teach parameters.

Exceptions
Doesnot throw any exception.

Member Function Documentation

◆ DerivativePatchSize()

int DerivativePatchSize ( ) const
inlinenoexcept

Get smoothing area in pixels for gradient and normal calculation.

This value controls the local environment in the depth images of the examples which is used to calculate gradients and normals. Minimum is 3. Larger values effectively result in a smoothing of the depth images. This value should be odd. Typical values are in the range 3..9. Smaller values should be favored, since the example images of the CAD object are flawless and free of noise.

The corresponding value of Cvb.Dnc.SearchParameters.DerivativePatchSize of a detection task should be equal, or - in case of sensor noise - bigger.

Returns
The patch size.
Exceptions
Doesnot throw any exception.

◆ DistanceKernelSize()

double DistanceKernelSize ( ) const
inlinenoexcept

Get the factor for distance transform calculation.

A so called Huber kernel is used for the calculation of a distance transform of an example. To some extend a Huber kernel can possibly enlarge the convergence basin of ICP-operations, relative to the Euclidian distance transform (factor = 1). A recommended value is 2. The minimum value is 1.

Returns
The distance kernel size.
Exceptions
Doesnot throw any exception.

◆ HeightSensitivity()

double HeightSensitivity ( ) const
inlinenoexcept

Get the minimum gradient magnitude to accept a local gradient as a feature in the depth images.

This value specifies a threshold (in millimeters) above which local height changes are observed as characteristic features. A typical value is 1 mm. This value is also used implicitly during later search tasks. The minimum value is 0.0. This value is also used implicitly during later search tasks.

Returns
The height sensitivity.
Exceptions
Doesnot throw any exception.

◆ ICPShrink()

int ICPShrink ( ) const
inlinenoexcept

Get the subsample factor for ICP.

To speed up search tasks, a voxel representation of the examples is pre-calculated. The subsample factor determins the amount of data used to perform an ICP-operation. It strongly influences the recognition speed and the amount of memory used. The recommended value is 4. The minimum value is 1, resulting in no subsampling.

Returns
The subsample factor.
Exceptions
Doesnot throw any exception.

◆ LocalDistributionSize()

int LocalDistributionSize ( ) const
inlinenoexcept

Get the size of area in which local features are distributed (in pixels).

To account for the finite and discrete example positions the local features are somewhat smeared out. This value specifies the local active range of a single feature. A typical value is 8. The minimum value is 0.

Returns
The local distribution size.
Exceptions
Doesnot throw any exception.

◆ NumGradientFeatures()

int NumGradientFeatures ( ) const
inlinenoexcept

Get the number of gradient features retained in the classifier.

To speed up the calculation of correspondences during a detection task, the possibly dense gradient features from the examples are thinned out to a minimum necessary number. This number strongly depends on the object itself. Typical values are between 100 and 1000. A value of 0 means that all gradient features should be used.

Returns
The number of gradient features.
Exceptions
Doesnot throw any exception.

◆ NumNormalFeatures()

int NumNormalFeatures ( ) const
inlinenoexcept

Get the number of normal vector features retained in the classifier.

To speed up the calculation of correspondences during a detection task, the dense normal features from the examples are thinned out to a minimum necessary number. This number strongly depends on the object itself. Typical values are between 100 and 1000. A value of 0 means that all normal features should be used.

Returns
The number of normal vector features.
Exceptions
Doesnot throw any exception.

◆ SetDerivativePatchSize()

void SetDerivativePatchSize ( int  value)
inline

Set smoothing area in pixels for gradient and normal calculation.

A detailed description of this parameter can be found at the corresponding getting function DerivativePatchSize.

Parameters
[in]valueThe patch size.
Exceptions
Doesnot throw any exception.

◆ SetDistanceKernelSize()

void SetDistanceKernelSize ( double  value)
inline

Set the factor for Distance transform calculation.

A detailed description of this parameter can be found at the corresponding getting function DistanceKernelSize.

Parameters
[in]valueThe distance kernel size.
Exceptions
Doesnot throw any exception.

◆ SetHeightSensitivity()

void SetHeightSensitivity ( double  value)
inline

Set the minimum gradient magnitude to accept a local gradient as a feature in the depth images.

A detailed description of this parameter can be found at the corresponding getting function HeightSensitivity.

Parameters
[in]valueThe height sensitivity.
Exceptions
Doesnot throw any exception.

◆ SetICPShrink()

void SetICPShrink ( int  value)
inline

Set the subsample factor for ICP.

A detailed description of this parameter can be found at the corresponding getting function ICPShrink.

Parameters
[in]valueThe subsample factor.
Exceptions
Doesnot throw any exception.

◆ SetLocalDistributionSize()

void SetLocalDistributionSize ( int  value)
inline

Set the size of area in which local features are distributed (in pixels).

A detailed description of this parameter can be found at the corresponding getting function LocalDistributionSize.

Parameters
[in]valueThe local distribution size.
Exceptions
Doesnot throw any exception.

◆ SetNumGradientFeatures()

void SetNumGradientFeatures ( int  value)
inline

Set the number of gradient features retained in the classifier.

A detailed description of this parameter can be found at the corresponding getting function NumGradientFeatures.

Parameters
[in]valueThe number of gradient features.
Exceptions
Doesnot throw any exception.

◆ SetNumNormalFeatures()

void SetNumNormalFeatures ( int  value)
inline

Set the number of normal vector features retained in the classifier.

A detailed description of this parameter can be found at the corresponding getting function NumNormalFeatures.

Parameters
[in]valueThe number of normal vector features.
Exceptions
Doesnot throw any exception.