﻿IntrinsicCameraParameters.Undistort Method (PointF[], Matrix(Double), Matrix(Double))
http://www.emgu.com
Similar to cvInitUndistortRectifyMap and is opposite to it at the same time. The functions are similar in that they both are used to correct lens distortion and to perform the optional perspective (rectification) transformation. They are opposite because the function cvInitUndistortRectifyMap does actually perform the reverse transformation in order to initialize the maps properly, while this function does the forward transformation.

Namespace: Emgu.CV
Assembly: Emgu.CV (in Emgu.CV.dll) Version: 2.4.10.1935 (2.4.10.1935)

# Syntax

C#
```public PointF[] Undistort(
PointF[] src,
Matrix<double> R,
Matrix<double> P
)```
Visual Basic
```Public Function Undistort (
src As PointF(),
R As Matrix(Of Double),
P As Matrix(Of Double)
) As PointF()```
Visual C++
```public:
array<PointF>^ Undistort(
array<PointF>^ src,
Matrix<double>^ R,
Matrix<double>^ P
)```
F#
```member Undistort :
src : PointF[] *
R : Matrix<float> *
P : Matrix<float> -> PointF[]
```

#### Parameters

src
Type: array<System.Drawing..::..PointF>[]()[][]
The observed point coordinates
R
Type: Emgu.CV..::..Matrix<(Of <(<'Double>)>)>
Optional rectification transformation in object space (3x3 matrix). R1 or R2, computed by cvStereoRectify can be passed here. If null, the identity matrix is used.
P
Type: Emgu.CV..::..Matrix<(Of <(<'Double>)>)>
Optional new camera matrix (3x3) or the new projection matrix (3x4). P1 or P2, computed by cvStereoRectify can be passed here. If null, the identity matrix is used.

#### Return Value

Type: array<PointF>[]()[][]

[Missing <returns> documentation for "M:Emgu.CV.IntrinsicCameraParameters.Undistort(System.Drawing.PointF[],Emgu.CV.Matrix{System.Double},Emgu.CV.Matrix{System.Double})"]