NVIDIA DRIVE OS Linux SDK API Reference

6.0.3 Release
NvMediaLensDistortion Struct Reference

Detailed Description

Holds distortion coefficients for the lens model.

Distortion coefficients are defined in the following way:

  • k1, k2, k3, k4, k5, k6 are radial distortion coeffcients.
  • p1 and p2 are tangential distortion coeffcients.

Setting any coefficient to 0 implies that it is not used in computation.

If we denote a point without distortion as [x, y, 1] and the corresponding point with distortion as [xd, yd, 1], then the distortion model is defined as follows:

When NvMediaLensModel is NVMEDIA_LDC_MODEL_POLYNOMIAL_DISTORTION, the control parameters are k1, k2, k3, k4, k5, k6, p1, and p2.

  • \(r = sqrt (x ^ 2 + y ^ 2)\)
  • \(kr = (1 + k1 * r^2 + k2 * r^4 + k3 * r^6) / (1 + k4 * r^2 + k5 * r^4 + k6 * r^6)\)
  • \(xd = x * kr + p1 * (2 * x * y) + p2 * (r^2 + 2 * x^2)\)
  • \(yd = y * kr + p1 * (r^2 + 2 * y^2) + p2 * (2 * x * y)\)

When NvMediaLensModel is NVMEDIA_LDC_MODEL_FISHEYE_EQUIDISTANT, NVMEDIA_LDC_MODEL_FISHEYE_EQUISOLID, NVMEDIA_LDC_MODEL_FISHEYE_ORTHOGRAPHIC, or NVMEDIA_LDC_MODEL_FISHEYE_STEREOGRAPHIC, the control parameters are k1, k2, k3, and k4.

  • \(r = sqrt (x ^ 2 + y ^ 2)\)
  • \(theta = atan(r)\)
  • \(theta_d = theta * (1 + k1 * theta^2 + k2 * theta^4 + k3 * theta^6 + k4 * theta^8)\)

Definition at line 171 of file nvmedia_ldc.h.

Data Fields

float_t k1
 Holds the radial distortion coefficient. More...
 
float_t k2
 Holds the radial distortion coefficient. More...
 
float_t k3
 Holds the radial distortion coefficient. More...
 
float_t k4
 Holds the radial distortion coefficient. More...
 
float_t k5
 Holds the radial distortion coefficient. More...
 
float_t k6
 Holds the radial distortion coefficient. More...
 
float_t p1
 Holds the tangential distortion coefficient. More...
 
float_t p2
 Holds the tangential distortion coefficient. More...
 

Field Documentation

◆ k1

float_t NvMediaLensDistortion::k1

Holds the radial distortion coefficient.

Definition at line 173 of file nvmedia_ldc.h.

◆ k2

float_t NvMediaLensDistortion::k2

Holds the radial distortion coefficient.

Definition at line 176 of file nvmedia_ldc.h.

◆ k3

float_t NvMediaLensDistortion::k3

Holds the radial distortion coefficient.

Definition at line 179 of file nvmedia_ldc.h.

◆ k4

float_t NvMediaLensDistortion::k4

Holds the radial distortion coefficient.

Definition at line 182 of file nvmedia_ldc.h.

◆ k5

float_t NvMediaLensDistortion::k5

Holds the radial distortion coefficient.

Definition at line 185 of file nvmedia_ldc.h.

◆ k6

float_t NvMediaLensDistortion::k6

Holds the radial distortion coefficient.

Definition at line 188 of file nvmedia_ldc.h.

◆ p1

float_t NvMediaLensDistortion::p1

Holds the tangential distortion coefficient.

Definition at line 191 of file nvmedia_ldc.h.

◆ p2

float_t NvMediaLensDistortion::p2

Holds the tangential distortion coefficient.

Definition at line 194 of file nvmedia_ldc.h.


The documentation for this struct was generated from the following file: