pycvcam.core.Distortion.distort#

Distortion.distort(normalized_points, *, transpose=False, dx=False, dp=False, **kwargs)[source]#

Alias for the transform method, which applies the distortion transformation to the points.

See also

Note

The normalized_points is converted to a numpy array of dtype=numpy.float64.

Parameters:
  • normalized_points (ArrayLike) – The normalized points to be transformed. Shape (…, 2).

  • transpose (bool, optional) – If True, the input points are assumed to have shape (2, …) instead of (…, 2) and the output points will have shape (2, …). Default is False.

  • dx (bool, optional) – If True, the jacobian with respect to the normalized points is computed. Default is False

  • dp (bool, optional) – If True, the jacobian with respect to the distortion parameters is computed. Default is False

Returns:

The result of the transformation, which includes the distorted_points and the Jacobian matrices if available.

Return type:

TransformResult

Examples

distortion = ... # An instance of a subclass of Distortion

import numpy

normalized_points = numpy.array([[0.0, 0.0], [1.0, 1.0], [2.0, 2.0]]) # shape (n_points, 2)
result = distortion.distort(normalized_points)
distorted_points = result.distorted_points  # shape (n_points, 2)

# SAME AS:
result = distortion.transform(normalized_points)
distorted_points = result.transformed_points  # shape (n_points, 2)