31#ifndef DW_CALIBRATION_CAMERAMODEL_CAMERAMODEL_H_
32#define DW_CALIBRATION_CAMERAMODEL_CAMERAMODEL_H_
106DW_DEPRECATED(
"OCam support will be removed from Driveworks in an upcoming release. Use FTheta instead.")
NVIDIA DriveWorks API: Rig Configuration
NVIDIA DriveWorks API: Core Types
NVIDIA DriveWorks API: Core Methods
NVIDIA DriveWorks API: Core Exports
DW_API_PUBLIC dwStatus dwCameraModel_getInversePolynomial(float32_t *invPoly, size_t *size, dwCameraModelHandle_t obj)
Returns the inverse polynomial used for the inverse distortion model.
DW_API_PUBLIC dwStatus dwCameraModel_initializeOCam(dwCameraModelHandle_t *obj, const dwOCamCameraConfig *config, dwContextHandle_t context)
Creates and initializes a calibrated omnidirectional camera.
struct dwCameraModelObject * dwCameraModelHandle_t
A pointer to the handle representing a calibrated camera model.
DW_API_PUBLIC dwStatus dwCameraModel_initializeFTheta(dwCameraModelHandle_t *obj, const dwFThetaCameraConfig *config, dwContextHandle_t context)
Creates and initializes a calibrated camera for the F-Theta distortion model.
DW_API_PUBLIC dwStatus dwCameraModel_initialize(dwCameraModelHandle_t *camera, uint32_t sensorId, dwConstRigHandle_t obj)
Creates a calibrated camera model polymorphically for a compatible sensor.
struct dwCameraModelObject const * dwConstCameraModelHandle_t
A pointer to the handle representing a const calibrated camera.
DW_API_PUBLIC dwStatus dwCameraModel_getHorizontalFOV(float32_t *hfov, dwConstCameraModelHandle_t obj)
Gets the horizontal Field of View (FOV) of the calibrated camera, in radians.
DW_API_PUBLIC dwStatus dwCameraModel_initializeStereographic(dwCameraModelHandle_t *obj, const dwStereographicCameraConfig *config, dwContextHandle_t context)
Creates and initializes a calibrated stereographic camera.
DW_API_PUBLIC dwStatus dwCameraModel_ray2Pixel(float32_t *u, float32_t *v, float32_t x, float32_t y, float32_t z, dwConstCameraModelHandle_t obj)
Projects a 3D point in camera coordinates to a 2D pixel position.
DW_API_PUBLIC dwStatus dwCameraModel_pixel2Ray(float32_t *x, float32_t *y, float32_t *z, float32_t u, float32_t v, dwConstCameraModelHandle_t obj)
Back-projects a 2D point in pixel coordinates to a 3D optical ray direction.
DW_API_PUBLIC dwStatus dwCameraModel_initializeFThetaNew(dwCameraModelHandle_t *obj, const dwFThetaCameraConfigNew *config, dwContextHandle_t context)
Creates and initializes a calibrated camera for the F-Theta distortion model.
DW_API_PUBLIC dwStatus dwCameraModel_release(dwCameraModelHandle_t obj)
Releases the calibrated camera.
DW_API_PUBLIC dwStatus dwCameraModel_applyImageTransform(const dwMatrix3f *transform, dwVector2ui newSize, dwCameraModelHandle_t obj)
Sets a new origin for the image and adjusts image scales.
DW_API_PUBLIC dwStatus dwCameraModel_initializePinhole(dwCameraModelHandle_t *obj, const dwPinholeCameraConfig *config, dwContextHandle_t context)
Creates and initializes a calibrated pinhole camera.
DW_API_PUBLIC dwStatus dwCameraModel_isRayInsideFOV(bool *isInsideMaxFOV, float32_t x, float32_t y, float32_t z, dwConstCameraModelHandle_t obj)
Checks if the angle of a ray with the camera's optical center is below the maximum possible angle of ...
DW_API_PUBLIC dwStatus dwCameraModel_getImageSize(uint32_t *width, uint32_t *height, dwConstCameraModelHandle_t obj)
Gets the width and height of the calibrated camera, in pixels.
struct dwContextObject * dwContextHandle_t
Context handle.
#define DW_DEPRECATED(msg)
dwStatus
Status definition.
float float32_t
Specifies POD types.
Defines a 3x3 matrix of floating point numbers by using only one array.
Defines a two-element unsigned-integer vector.
struct dwRigObject const * dwConstRigHandle_t
DEPRECATED: Configuration parameters for a calibrated FTheta camera.
Configuration parameters for a calibrated FTheta camera.
DEPRECATED: Configuration parameters for a calibrated ominidirectional (OCam) sphere camera.
Configuration parameters for a calibrated pinhole camera.
Configuration parameters for a calibrated stereographic camera.