Classes | Namespaces | Functions
Metric

Classes

class  sal3d::Metric::Config
 Configuration associated with a camera/laser set used to convert acquired data to 3D data. More...

Namespaces

namespace  sal3d::Metric
 

Namespace for the Metric Calibration Tool functions.


Functions

Config sal3d::Metric::calibrate (const RangeMap &rangeMap, const PatternLPPoints &points, int left, int top, int right, int bottom, const LensDistortion::Model &dm, float gFactor=1.f)
 Calculates a metric calibration configuration using a cropped range map of the linear pattern and correcting the lens distortion.
Config sal3d::Metric::calibrate (const RangeMap &rangeMap, const PatternLPPoints &points, int left, int top, int right, int bottom)
 Calculates a metric calibration configuration using a cropped range map of the linear pattern.
Config sal3d::Metric::calibrate (const RangeMap &rangeMap, const PatternLPPoints &points)
 Calculates a metric calibration configuration using a range map of the linear pattern.
Config sal3d::Metric::calibrate (const Profile &profile, const PatternSPPoints &points, int left, int right, const LensDistortion::Model &model=LensDistortion::Model(), float xStep=0, float gFactor=1.f)
 Calculates a metric calibration configuration using a cropped profile of the static pattern, and correcting lens distortion.
Config sal3d::Metric::calibrate (const Profile &profile, const PatternSPPoints &points, const LensDistortion::Model &model=LensDistortion::Model(), float xStep=0, float gFactor=1.f)
 Calculates a metric calibration configuration using a cropped profile of the static pattern, and correcting lens distortion.
Config sal3d::Metric::calibrate (const Profile &profile, const PatternSPPoints &points, int left, int right, float xStep=0)
 Calculates a metric calibration configuration using a cropped profile of the static pattern.
Config sal3d::Metric::calibrate (const Profile &profile, const PatternSPPoints &points, float xStep=0)
 Calculates a metric calibration configuration using a profile of the static pattern.
Config sal3d::Metric::calibrate (const Profile &profile, const PatternSTPPoints &points, int left, int right, const LensDistortion::Model &model=LensDistortion::Model(), float xStep=0, float gFactor=1.f)
 Calculates a metric calibration configuration using a cropped profile of the static STEP pattern, and correcting lens distortion.
Config sal3d::Metric::calibrate (const Profile &profile, const PatternSTPPoints &points, const LensDistortion::Model &model=LensDistortion::Model(), float xStep=0, float gFactor=1.f)
 Calculates a metric calibration configuration using a cropped profile of the static STEP pattern, and correcting lens distortion.
Config sal3d::Metric::calibrate (const Profile &profile, const PatternSTPPoints &points, int left, int right, float xStep=0)
 Calculates a metric calibration configuration using a cropped profile of the static STEP pattern, and correcting lens distortion.
Config sal3d::Metric::calibrate (const Profile &profile, const PatternSTPPoints &points, float xStep=0)
 Calculates a metric calibration configuration using a cropped profile of the static STEP pattern, and correcting lens distortion.

Function Documentation

Config sal3d::Metric::calibrate ( const RangeMap &  rangeMap,
const PatternLPPoints &  points,
int  left,
int  top,
int  right,
int  bottom,
const LensDistortion::Model &  dm,
float  gFactor = 1.f 
) [inline]

Calculates a metric calibration configuration using a cropped range map of the linear pattern and correcting the lens distortion.

This function requires linking with metric.lib (import library for metric.dll).

Provided a RangeMap of the linear calibration pattern (see the Description of the linear calibration pattern) and a set of 3D points defining it, this function calculates the configuration needed to later transform any Profile or RangeMap acquired with the same set of camera/laser into a COP.

This function also requires a set of limits to crop the RangeMap before attempting to calibrate, in order to remove parts not belonging to the pattern which could interfere with the pattern recognition performed in the calibration.

Parameters:
[in]rangeMapThe RangeMap of the pattern scanned with the acquisition system we want the metric calibration configuration for.
[in]pointsThe 12 (x,y,z) points of the linear pattern in metric coordinates.
[in]leftThe leftmost point of the range map to crop from.
[in]topThe first profile to be taken in the cropped region.
[in]rightThe rightmost point of the range map to crop from.
[in]bottomThe last profile to be included in the cropped region.
[in]dmLens distortion model. The range map values are taken as the Y coordinates from the camera 2D image, referred to the top row downwards.
[in]gFactorThe rangemap multiplicative factor to compensate the subpixel represented in integer values.
Returns:
The Config associated with this acquisition system.
Exceptions:
sal3d::ErrorOn error

References sal3d::LensDistortion::Model::c_lens_distortion(), and sal3d::RangeMap::c_range_map().

Referenced by sal3d::Metric::calibrate().

Config sal3d::Metric::calibrate ( const RangeMap &  rangeMap,
const PatternLPPoints &  points,
int  left,
int  top,
int  right,
int  bottom 
) [inline]

Calculates a metric calibration configuration using a cropped range map of the linear pattern.

This function requires linking with metric.lib (import library for metric.dll).

Provided a RangeMap of the linear calibration pattern (see the Description of the linear calibration pattern) and a set of 3D points defining it, this function calculates the configuration needed to later transform any Profile or RangeMap acquired with the same set of camera/laser into a COP.

This function also requires a set of limits to crop the RangeMap before attempting to calibrate, in order to remove parts not belonging to the pattern which could interfere with the pattern recognition performed in the calibration.

Parameters:
[in]rangeMapThe RangeMap of the pattern scanned with the acquisition system we want the metric calibration configuration for.
[in]pointsThe 12 (x,y,z) points of the linear pattern in metric coordinates.
[in]leftThe leftmost point of the range map to crop from.
[in]topThe first profile to be taken in the cropped region.
[in]rightThe rightmost point of the range map to crop from.
[in]bottomThe last profile to be included in the cropped region.
Returns:
The Config associated with this acquisition system.
Exceptions:
sal3d::ErrorOn error

References sal3d::Metric::calibrate().

Config sal3d::Metric::calibrate ( const RangeMap &  rangeMap,
const PatternLPPoints &  points 
) [inline]

Calculates a metric calibration configuration using a range map of the linear pattern.

This function requires linking with metric.lib (import library for metric.dll).

Provided a RangeMap of the linear calibration pattern (see the Description of the linear calibration pattern) and a set of 3D points defining it, this function calculates the configuration needed to later transform any Profile or RangeMap acquired with the same set of camera/laser into a COP.

Parameters:
[in]rangeMapThe RangeMap of the pattern scanned with the acquisition system we want the metric calibration configuration for.
[in]pointsThe 12 (x,y,z) points of the linear pattern in metric coordinates.
Returns:
The Config associated with this acquisition system.
Exceptions:
sal3d::ErrorOn error

References sal3d::Metric::calibrate(), sal3d::RangeMap::countProfiles(), and sal3d::RangeMap::profilesLength().

Config sal3d::Metric::calibrate ( const Profile &  profile,
const PatternSPPoints &  points,
int  left,
int  right,
const LensDistortion::Model &  model = LensDistortion::Model(),
float  xStep = 0,
float  gFactor = 1.f 
) [inline]

Calculates a metric calibration configuration using a cropped profile of the static pattern, and correcting lens distortion.

This function requires linking with metric.lib (import library for metric.dll).

Provided a Profile of the static calibration pattern (see the Description of the static calibration pattern) and a set of 2D points defining it, this function calculates the configuration needed to later transform any Profile or RangeMap acquired with the same set of camera/laser into a COP. It also uses a TsaiModel to correct the lens distortion.

This function also requires a set of limits to crop the Profile before attempting to calibrate, in order to remove parts not belonging to the pattern which could interfere with the pattern recognition performed in the calibration.

As no information along the X axis can be obtained with this calibration, there is the possibility to specify an xStep, which is the metric difference on the X coordinate that two converted points from consecutive profiles will have.

Warning:
Notice that if no xStep is specified, the default of zero is used. This has no effect when converting a Profile to a COP. However, when creating a COP from a RangeMap, all the profiles will be overlapped at coordinate x = 0;
Parameters:
[in]profileThe Profile of the pattern scanned with the acquisition system we want the metric calibration configuration for.
[in]pointsThe 4 (y,z) points of the static pattern in metric coordinates.
[in]leftThe leftmost point of the profile to crop from.
[in]rightThe rightmost point of the profile to crop from.
[in]modelLens distortion model. The profile values are taken as the Y coordinates from the camera 2D image, referred to the top row downwards.
[in]xStepThe distance that separates two reconstructed points from two consecutive profiles along the X axis.
[in]gFactorThe rangemap multiplicative factor to compensate the subpixel represented in integer values.
Returns:
The Config associated with this acquisition system.
Exceptions:
sal3d::ErrorOn error

References sal3d::Profile::c_profile().

Config sal3d::Metric::calibrate ( const Profile &  profile,
const PatternSPPoints &  points,
const LensDistortion::Model &  model = LensDistortion::Model(),
float  xStep = 0,
float  gFactor = 1.f 
) [inline]

Calculates a metric calibration configuration using a cropped profile of the static pattern, and correcting lens distortion.

This function requires linking with metric.lib (import library for metric.dll).

With the same effect as the similar complete calibrate() method, but setting left and right parameters to the full profile region.

Parameters:
[in]profileThe Profile of the pattern scanned with the acquisition system we want the metric calibration configuration for.
[in]pointsThe 4 (y,z) points of the static pattern in metric coordinates.
[in]modelLens distortion model. The profile values are taken as the Y coordinates from the camera 2D image, referred to the top row downwards.
[in]xStepThe distance that separates two reconstructed points from two consecutive profiles along the X axis.
[in]gFactorThe rangemap multiplicative factor to compensate the subpixel represented in integer values.
Returns:
The Config associated with this acquisition system.
Exceptions:
sal3d::ErrorOn error

References sal3d::Metric::calibrate(), and sal3d::Profile::length().

Config sal3d::Metric::calibrate ( const Profile &  profile,
const PatternSPPoints &  points,
int  left,
int  right,
float  xStep = 0 
) [inline]

Calculates a metric calibration configuration using a cropped profile of the static pattern.

This function requires linking with metric.lib (import library for metric.dll).

Provided a Profile of the static calibration pattern (see the Description of the static calibration pattern) and a set of 2D points defining it, this function calculates the configuration needed to later transform any Profile or RangeMap acquired with the same set of camera/laser into a COP.

This function also requires a set of limits to crop the Profile before attempting to calibrate, in order to remove parts not belonging to the pattern which could interfere with the pattern recognition performed in the calibration.

As no information along the X axis can be obtained with this calibration, there is the possibility to specify an xStep, which is the metric difference on the X coordinate that two converted points from consecutive profiles will have.

Warning:
Notice that if no xStep is specified, the default of zero is used. This has no effect when converting a Profile to a COP. However, when creating a COP from a RangeMap, all the profiles will be overlapped at coordinate x = 0;
Parameters:
[in]profileThe Profile of the pattern scanned with the acquisition system we want the metric calibration configuration for.
[in]pointsThe 4 (y,z) points of the static pattern in metric coordinates.
[in]leftThe leftmost point of the profile to crop from.
[in]rightThe rightmost point of the profile to crop from.
[in]xStepThe distance that separates two reconstructed points from two consecutive profiles along the X axis.
Returns:
The Config associated with this acquisition system.
Exceptions:
sal3d::ErrorOn error

References sal3d::Metric::calibrate().

Config sal3d::Metric::calibrate ( const Profile &  profile,
const PatternSPPoints &  points,
float  xStep = 0 
) [inline]

Calculates a metric calibration configuration using a profile of the static pattern.

This function requires linking with metric.lib (import library for metric.dll).

Provided a Profile of the static calibration pattern (see the Description of the static calibration pattern) and a set of 2D points defining it, this function calculates the configuration needed to later transform any Profile or RangeMap acquired with the same set of camera/laser into a COP.

As no information along the X axis can be obtained with this calibration, there is the possibility to specify an xStep, which is the metric difference on the X coordinate that two converted points from consecutive profiles will have.

Warning:
Notice that if no xStep is specified, the default of zero is used. This has no effect when converting a Profile to a COP. However, when creating a COP from a RangeMap, all the profiles will be overlapped at coordinate x = 0;
Parameters:
[in]profileThe Profile of the pattern scanned with the acquisition system we want the metric calibration configuration for.
[in]pointsThe 4 (y,z) points of the static pattern in metric coordinates.
[in]xStepThe distance that separates two reconstructed points from two consecutive profiles along the X axis.
Returns:
The Config associated with this acquisition system.
Exceptions:
sal3d::ErrorOn error

References sal3d::Metric::calibrate(), and sal3d::Profile::length().

Config sal3d::Metric::calibrate ( const Profile &  profile,
const PatternSTPPoints &  points,
int  left,
int  right,
const LensDistortion::Model &  model = LensDistortion::Model(),
float  xStep = 0,
float  gFactor = 1.f 
) [inline]

Calculates a metric calibration configuration using a cropped profile of the static STEP pattern, and correcting lens distortion.

This function requires linking with metric.lib (import library for metric.dll).

Provided a Profile of the static STEP calibration pattern (see the Description of the static calibration pattern) and a set of 2D points defining it, this function calculates the configuration needed to later transform any Profile or RangeMap acquired with the same set of camera/laser into a COP. It also uses a TsaiModel to correct the lens distortion.

This function also requires a set of limits to crop the Profile before attempting to calibrate, in order to remove parts not belonging to the pattern which could interfere with the pattern recognition performed in the calibration.

As no information along the X axis can be obtained with this calibration, there is the possibility to specify an xStep, which is the metric difference on the X coordinate that two converted points from consecutive profiles will have.

Warning:
Notice that if no xStep is specified, the default of zero is used. This has no effect when converting a Profile to a COP. However, when creating a COP from a RangeMap, all the profiles will be overlapped at coordinate x = 0;
Parameters:
[in]profileThe Profile of the pattern scanned with the acquisition system we want the metric calibration configuration for.
[in]pointsThe 4 (y,z) points of the static pattern in metric coordinates.
[in]leftThe leftmost point of the profile to crop from.
[in]rightThe rightmost point of the profile to crop from.
[in]modelLens distortion model. The profile values are taken as the Y coordinates from the camera 2D image, referred to the top row downwards.
[in]xStepThe distance that separates two reconstructed points from two consecutive profiles along the X axis.
[in]gFactorThe rangemap multiplicative factor to compensate the subpixel represented in integer values.
Returns:
The Config associated with this acquisition system.
Exceptions:
sal3d::ErrorOn error

References sal3d::Profile::c_profile().

Config sal3d::Metric::calibrate ( const Profile &  profile,
const PatternSTPPoints &  points,
const LensDistortion::Model &  model = LensDistortion::Model(),
float  xStep = 0,
float  gFactor = 1.f 
) [inline]

Calculates a metric calibration configuration using a cropped profile of the static STEP pattern, and correcting lens distortion.

With the same effect as the similar complete calibrate() method, but setting left and right parameters to the full profile region.

Parameters:
[in]profileThe Profile of the pattern scanned with the acquisition system we want the metric calibration configuration for.
[in]pointsThe 4 (y,z) points of the static pattern in metric coordinates.
[in]modelLens distortion model. The profile values are taken as the Y coordinates from the camera 2D image, referred to the top row downwards.
[in]xStepThe distance that separates two reconstructed points from two consecutive profiles along the X axis.
[in]gFactorThe rangemap multiplicative factor to compensate the subpixel represented in integer values.
Returns:
The Config associated with this acquisition system.
Exceptions:
sal3d::ErrorOn error

References sal3d::Metric::calibrate(), and sal3d::Profile::length().

Config sal3d::Metric::calibrate ( const Profile &  profile,
const PatternSTPPoints &  points,
int  left,
int  right,
float  xStep = 0 
) [inline]

Calculates a metric calibration configuration using a cropped profile of the static STEP pattern, and correcting lens distortion.

With the same effect as the similar complete calibrate() method, but without any lens distortion correction associated.

Parameters:
[in]profileThe Profile of the pattern scanned with the acquisition system we want the metric calibration configuration for.
[in]pointsThe 4 (y,z) points of the static pattern in metric coordinates.
[in]leftThe leftmost point of the profile to crop from.
[in]rightThe rightmost point of the profile to crop from.
[in]xStepThe distance that separates two reconstructed points from two consecutive profiles along the X axis.
[in]gFactorThe rangemap multiplicative factor to compensate the subpixel represented in integer values.
Returns:
The Config associated with this acquisition system.
Exceptions:
sal3d::ErrorOn error

References sal3d::Metric::calibrate().

Config sal3d::Metric::calibrate ( const Profile &  profile,
const PatternSTPPoints &  points,
float  xStep = 0 
) [inline]

Calculates a metric calibration configuration using a cropped profile of the static STEP pattern, and correcting lens distortion.

With the same effect as the similar complete calibrate() method, but without any lens distortion correction associated, and taking the full profile region for the calibration.

Parameters:
[in]profileThe Profile of the pattern scanned with the acquisition system we want the metric calibration configuration for.
[in]pointsThe 4 (y,z) points of the static pattern in metric coordinates.
[in]xStepThe distance that separates two reconstructed points from two consecutive profiles along the X axis.
[in]gFactorThe rangemap multiplicative factor to compensate the subpixel represented in integer values.
Returns:
The Config associated with this acquisition system.
Exceptions:
sal3d::ErrorOn error

References sal3d::Metric::calibrate(), and sal3d::Profile::length().