documentation

IntrinsicDataWrapper

Functions for managing IntrinsicDataWrapper objects. More...

Functions

VL_SDK_API void VL_CALLINGCONVENTION vlDelete_IntrinsicDataWrapper (vlIntrinsicDataWrapper_t *intrinsicDataWrapper)
 Deletes an IntrinsicDataWrapper object. More...
 
VL_SDK_API vlIntrinsicDataWrapper_t *VL_CALLINGCONVENTION vlIntrinsicDataWrapper_Clone (vlIntrinsicDataWrapper_t *intrinsicDataWrapper)
 Creates a copy of the IntrinsicDataWrapper object and returns a pointer to it. More...
 
VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetCalibrated (vlIntrinsicDataWrapper_t *intrinsicDataWrapper)
 Returns whether the intrinsic parameters are valid. More...
 
VL_SDK_API double VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetCalibrationError (vlIntrinsicDataWrapper_t *intrinsicDataWrapper)
 Returns the calibration error. More...
 
VL_SDK_API double VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetCxNorm (vlIntrinsicDataWrapper_t *intrinsicDataWrapper)
 Returns the normalized x-component of the principal point. More...
 
VL_SDK_API double VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetCyNorm (vlIntrinsicDataWrapper_t *intrinsicDataWrapper)
 Returns the normalized y-component of the principal point. More...
 
VL_SDK_API double VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetFxNorm (vlIntrinsicDataWrapper_t *intrinsicDataWrapper)
 Returns the normalized focal length of the intrinsic camera calibration in x direction. More...
 
VL_SDK_API double VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetFyNorm (vlIntrinsicDataWrapper_t *intrinsicDataWrapper)
 Returns the normalized focal length of the intrinsic camera calibration in y direction. More...
 
VL_SDK_API unsigned int VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetHeight (vlIntrinsicDataWrapper_t *intrinsicDataWrapper)
 Returns the height of the intrinsic camera calibration. More...
 
VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetProjectionMatrix (vlIntrinsicDataWrapper_t *intrinsicDataWrapper, float nearFact, float farFact, unsigned int screenWidth, unsigned int screenHeight, unsigned int renderRotation, unsigned int mode, float matrix[], unsigned int matrixElementCount)
 Computed the projection matrix from the intrinsic camera parameters. More...
 
VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetRadialDistortion (vlIntrinsicDataWrapper_t *intrinsicDataWrapper, double k[], unsigned int elementCount)
 Retrieves the radial distortion parameters. More...
 
VL_SDK_API double VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetSkewNorm (vlIntrinsicDataWrapper_t *intrinsicDataWrapper)
 Returns the normalized skew of the intrinsic camera calibration. More...
 
VL_SDK_API unsigned int VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetWidth (vlIntrinsicDataWrapper_t *intrinsicDataWrapper)
 Returns the width of the intrinsic camera calibration. More...
 
VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetCalibrated (vlIntrinsicDataWrapper_t *intrinsicDataWrapper, bool value)
 Sets the calibrated flag of the given IntrinsicDataWrapper object to the given value. More...
 
VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetCxNorm (vlIntrinsicDataWrapper_t *intrinsicDataWrapper, double value)
 Sets the normalized x-component of the principal point of the given IntrinsicDataWrapper object to the given value. More...
 
VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetCyNorm (vlIntrinsicDataWrapper_t *intrinsicDataWrapper, double value)
 Sets the normalized y-component of the principal point of the given IntrinsicDataWrapper object to the given value. More...
 
VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetFxNorm (vlIntrinsicDataWrapper_t *intrinsicDataWrapper, double value)
 Sets the normalized focal length in x direction of the given IntrinsicDataWrapper object to the given value. More...
 
VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetFyNorm (vlIntrinsicDataWrapper_t *intrinsicDataWrapper, double value)
 Sets the normalized focal length in y direction of the given IntrinsicDataWrapper object to the given value. More...
 
VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetHeight (vlIntrinsicDataWrapper_t *intrinsicDataWrapper, unsigned int value)
 Sets height of the given IntrinsicDataWrapper object to the given value. More...
 
VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetRadialDistortion (vlIntrinsicDataWrapper_t *intrinsicDataWrapper, const double k[], unsigned int elementCount)
 Sets the radial distortion parameters. More...
 
VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetSkewNorm (vlIntrinsicDataWrapper_t *intrinsicDataWrapper, double value)
 Sets the normalized skew of the given IntrinsicDataWrapper object to the given value. More...
 
VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetWidth (vlIntrinsicDataWrapper_t *intrinsicDataWrapper, unsigned int value)
 Sets width of the given IntrinsicDataWrapper object to the given value. More...
 
VL_SDK_API vlIntrinsicDataWrapper_t *VL_CALLINGCONVENTION vlNew_IntrinsicDataWrapper ()
 Creates a new IntrinsicDataWrapper object and returns a pointer to it. More...
 

Detailed Description

Functions for managing IntrinsicDataWrapper objects.

The IntrinsicDataWrapper is a wrapper for an IntrinsicData object. IntrinsicData objects represent the intrinsic camera parameters (focal length, principal point, skew and distortion parameters).

Function Documentation

◆ vlDelete_IntrinsicDataWrapper()

VL_SDK_API void VL_CALLINGCONVENTION vlDelete_IntrinsicDataWrapper ( vlIntrinsicDataWrapper_t intrinsicDataWrapper)

Deletes an IntrinsicDataWrapper object.

Call this function if you used the vlNew_IntrinsicDataWrapper function to create the object and you are now done using it.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.

◆ vlIntrinsicDataWrapper_Clone()

VL_SDK_API vlIntrinsicDataWrapper_t* VL_CALLINGCONVENTION vlIntrinsicDataWrapper_Clone ( vlIntrinsicDataWrapper_t intrinsicDataWrapper)

Creates a copy of the IntrinsicDataWrapper object and returns a pointer to it.

This pointer must be released using vlDelete_IntrinsicDataWrapper.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
Returns
A pointer to the new IntrinsicDataWrapper object.

◆ vlIntrinsicDataWrapper_GetCalibrated()

VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetCalibrated ( vlIntrinsicDataWrapper_t intrinsicDataWrapper)

Returns whether the intrinsic parameters are valid.

A intrinsic camera calibration used for tracking should always be valid.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
Returns
true, if the intrinsic calibration is valid; false otherwise.

◆ vlIntrinsicDataWrapper_GetCalibrationError()

VL_SDK_API double VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetCalibrationError ( vlIntrinsicDataWrapper_t intrinsicDataWrapper)

Returns the calibration error.

The reprojection error in pixel. This is interesting for evaluating the quality of a camera calibration.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
Returns
The reprojection error in pixel.

◆ vlIntrinsicDataWrapper_GetCxNorm()

VL_SDK_API double VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetCxNorm ( vlIntrinsicDataWrapper_t intrinsicDataWrapper)

Returns the normalized x-component of the principal point.

The x-component was normalized through a division by the width of the camera calibration.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
Returns
Normalized x-component of the principal point.

◆ vlIntrinsicDataWrapper_GetCyNorm()

VL_SDK_API double VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetCyNorm ( vlIntrinsicDataWrapper_t intrinsicDataWrapper)

Returns the normalized y-component of the principal point.

The y-component was normalized through a division by the height of the camera calibration.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
Returns
Normalized y-component of the principal point.

◆ vlIntrinsicDataWrapper_GetFxNorm()

VL_SDK_API double VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetFxNorm ( vlIntrinsicDataWrapper_t intrinsicDataWrapper)

Returns the normalized focal length of the intrinsic camera calibration in x direction.

The focal length in x direction was normalized through a division by the width of the camera calibration.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
Returns
Normalized focal length in x direction.

◆ vlIntrinsicDataWrapper_GetFyNorm()

VL_SDK_API double VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetFyNorm ( vlIntrinsicDataWrapper_t intrinsicDataWrapper)

Returns the normalized focal length of the intrinsic camera calibration in y direction.

The focal length in y direction was normalized through a division by the height of the camera calibration.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
Returns
Normalized focal length in y direction.

◆ vlIntrinsicDataWrapper_GetHeight()

VL_SDK_API unsigned int VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetHeight ( vlIntrinsicDataWrapper_t intrinsicDataWrapper)

Returns the height of the intrinsic camera calibration.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
Returns
The height in pixels.

◆ vlIntrinsicDataWrapper_GetProjectionMatrix()

VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetProjectionMatrix ( vlIntrinsicDataWrapper_t intrinsicDataWrapper,
float  nearFact,
float  farFact,
unsigned int  screenWidth,
unsigned int  screenHeight,
unsigned int  renderRotation,
unsigned int  mode,
float  matrix[],
unsigned int  matrixElementCount 
)

Computed the projection matrix from the intrinsic camera parameters.

The returned matrix is stored in the following order (column-major order):

\[ \begin{bmatrix} 0 & 4 & 8 & 12\\ 1 & 5 & 9 & 13\\ 2 & 6 & 10 & 14\\ 3 & 7 & 11 & 15\\ \end{bmatrix} \]

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
nearFactValue for the near clipping plane.
farFactValue for the far clipping plane.
screenWidthWidth of the screen.
screenHeightHeight of the screen.
renderRotationHow the rendering is rotated relative to the orientation of the images received from the VisionLib. E.g., if the image will be rendered in landscape-left mode and the images are also in landscape-left mode, then ::VL_RENDER_ROTATION_CCW_0 should be used. If the image will be rendered in portrait mode, but the images are in landscape-left mode, then VL_RENDER_ROTATION_CCW_270 should be used.
modeThe mode defines how to handle mismatching aspect ratios. Use VL_FITTING_MODE_COVER to scale the projection surface so that it covers the whole screen. Use VL_FITTING_MODE_CONTAIN to scale the projection surface so that it is completely contained inside the screen.
matrixFloat array with 16 elements for storing the projection matrix.
matrixElementCountNumber of elements in the given array. This should be 16.
Returns
true, on success; false otherwise.

◆ vlIntrinsicDataWrapper_GetRadialDistortion()

VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetRadialDistortion ( vlIntrinsicDataWrapper_t intrinsicDataWrapper,
double  k[],
unsigned int  elementCount 
)

Retrieves the radial distortion parameters.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
kDouble array with 5 elements for storing the distortion parameters.
elementCountNumber of elements in the given array. This should be 5.
Returns
true, on success; false otherwise.

◆ vlIntrinsicDataWrapper_GetSkewNorm()

VL_SDK_API double VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetSkewNorm ( vlIntrinsicDataWrapper_t intrinsicDataWrapper)

Returns the normalized skew of the intrinsic camera calibration.

The skew was normalized through a division by the width of the camera calibration.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
Returns
Normalized skew.

◆ vlIntrinsicDataWrapper_GetWidth()

VL_SDK_API unsigned int VL_CALLINGCONVENTION vlIntrinsicDataWrapper_GetWidth ( vlIntrinsicDataWrapper_t intrinsicDataWrapper)

Returns the width of the intrinsic camera calibration.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
Returns
The width in pixels.

◆ vlIntrinsicDataWrapper_SetCalibrated()

VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetCalibrated ( vlIntrinsicDataWrapper_t intrinsicDataWrapper,
bool  value 
)

Sets the calibrated flag of the given IntrinsicDataWrapper object to the given value.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
valueThe new value of the calibrated flag of the intrinsic.
Returns
true, if setting worked; false otherwise

◆ vlIntrinsicDataWrapper_SetCxNorm()

VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetCxNorm ( vlIntrinsicDataWrapper_t intrinsicDataWrapper,
double  value 
)

Sets the normalized x-component of the principal point of the given IntrinsicDataWrapper object to the given value.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
valueThe new normalized x-component of the principal point direction of the intrinsic.
Returns
true, if setting worked; false otherwise

◆ vlIntrinsicDataWrapper_SetCyNorm()

VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetCyNorm ( vlIntrinsicDataWrapper_t intrinsicDataWrapper,
double  value 
)

Sets the normalized y-component of the principal point of the given IntrinsicDataWrapper object to the given value.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
valueThe new normalized y-component of the principal point direction of the intrinsic.
Returns
true, if setting worked; false otherwise

◆ vlIntrinsicDataWrapper_SetFxNorm()

VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetFxNorm ( vlIntrinsicDataWrapper_t intrinsicDataWrapper,
double  value 
)

Sets the normalized focal length in x direction of the given IntrinsicDataWrapper object to the given value.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
valueThe new normalized focal length in x direction of the intrinsic.
Returns
true, if setting worked; false otherwise

◆ vlIntrinsicDataWrapper_SetFyNorm()

VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetFyNorm ( vlIntrinsicDataWrapper_t intrinsicDataWrapper,
double  value 
)

Sets the normalized focal length in y direction of the given IntrinsicDataWrapper object to the given value.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
valueThe new normalized focal length in y direction of the intrinsic.
Returns
true, if setting worked; false otherwise

◆ vlIntrinsicDataWrapper_SetHeight()

VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetHeight ( vlIntrinsicDataWrapper_t intrinsicDataWrapper,
unsigned int  value 
)

Sets height of the given IntrinsicDataWrapper object to the given value.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
valueThe new height of the intrinsic.
Returns
true, if setting worked; false otherwise

◆ vlIntrinsicDataWrapper_SetRadialDistortion()

VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetRadialDistortion ( vlIntrinsicDataWrapper_t intrinsicDataWrapper,
const double  k[],
unsigned int  elementCount 
)

Sets the radial distortion parameters.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
kDouble array with 5 elements, which contains the distortion parameters.
elementCountNumber of elements in the given array. This should be 5.
Returns
true, on success; false otherwise.

◆ vlIntrinsicDataWrapper_SetSkewNorm()

VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetSkewNorm ( vlIntrinsicDataWrapper_t intrinsicDataWrapper,
double  value 
)

Sets the normalized skew of the given IntrinsicDataWrapper object to the given value.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
valueThe new normalized skew of the intrinsic.
Returns
true, if setting worked; false otherwise

◆ vlIntrinsicDataWrapper_SetWidth()

VL_SDK_API bool VL_CALLINGCONVENTION vlIntrinsicDataWrapper_SetWidth ( vlIntrinsicDataWrapper_t intrinsicDataWrapper,
unsigned int  value 
)

Sets width of the given IntrinsicDataWrapper object to the given value.

Parameters
intrinsicDataWrapperPointer to an IntrinsicDataWrapper object.
valueThe new width of the intrinsic
Returns
true, if setting worked; false otherwise

◆ vlNew_IntrinsicDataWrapper()

VL_SDK_API vlIntrinsicDataWrapper_t* VL_CALLINGCONVENTION vlNew_IntrinsicDataWrapper ( )

Creates a new IntrinsicDataWrapper object and returns a pointer to it.

This pointer must be released using vlDelete_IntrinsicDataWrapper.

Returns
A pointer to the new IntrinsicDataWrapper object.