# normalized point coordinates in undistortPoints function

In undistortPoints function from OpenCV, the documentations says that

http://docs.opencv.org/2.4/modules/imgproc/doc/geometric_transformations.html#undistortpoints

where undistort() is an approximate iterative algorithm that estimates the normalized original point coordinates out of the normalized distorted point coordinates (“normalized” means that the coordinates do not depend on the camera matrix).

It seems that the normalized point coordinates is obtained by adding 1 to the third coordinate. What does normalized point coordinates means? How can it be used for?

In the above, there are two lines

x" = (u - cx)/fx

y" = (v - cy)/fy

Is there one term for the coordinates(x'', y'')?

1.What does normalized point coordinates means?

In the pinhole camera model $$\begin{bmatrix} x \\ y \\ z \end{bmatrix} = R \begin{bmatrix} X \\ Y \\ Z \end{bmatrix} + t$$ $$x'= x/z$$ $$y'= y/z$$ $$u = f_x * x' + c_x$$ $$v = f_y * x' + c_y$$

so (x', y', 1) is the normalized point, it means two things:

• normalized point does not depends on the camera matrix
• normalized point does not depends on the scale factor

In fact, (x, y, z) are the coordinates of a 3D point in the camera coordinate space

2. How can it be used for?

Before explaining how i use it, i'd like to give you the pinhole camera model with distortion consideration, so the equation above is extended as:

In my application, i use it to do back projection of 2D image point to 3D model point:

• use undistortPoints function to get undistorted normalized point (x', y');

• solve the pinhole camera model equation to get 3D model point. $$z\begin{bmatrix} x' \\ y' \\ 1 \end{bmatrix} = R \begin{bmatrix} X \\ Y \\ Z \end{bmatrix} + t$$ where $Z$ is known.

3. Is there one term for the coordinates(x'', y'')?