I am studying Projective Geometry in 3D for Computer Vision. I am confused on the high-level rationale behind our need to map from heterogeneous to homogeneous coordinates, and I would like to confirm whether my understanding is correct.

My understanding

Projecting a 3D Cartesian coordinate to a 2D plane in the Euclidean space is not a linear mapping. This is not ideal, as we can convert a 3D coordinate to its 2D projection, but not the reverse. Therefore, we define a 3D Cartesian coordinate (heterogeneous?) as a 4D homogeneous coordinate by increasing its dimensionality and multiplying by a constant. So, $(x, y, z) \rightarrow [X, Y, Z, 1]^T$. In the homogeneous space, we are able to define a linear mapping between a 4D homogenous coordinate and a 3D homogeneous coordinate. Then, by mapping the 3D homogeneous coordinate into a 2D Cartesian coordinate, we are effectively able to linearly map a 3D Cartesian coordinate into its 2D projection and the reverse.

If my understanding is correct, Cartesian coordinates are mapped to corresponding homogeneous coordinates to allow a linear mapping between 3D points and their projections. Is this correct? Thank you

  • $\begingroup$ The projection from 3D to 2D is a linear mapping. Perhaps you want to say that it is not bijective. The reason for considering homogeneous coordinates is not to facilitate bijective mappings between spaces that would otherwise not be possible. It is rather the study of $\mathbb R^n$ when you say that only the direction of a vector matters and not its length. $\endgroup$
    – Kurt G.
    Jul 6 at 16:08


You must log in to answer this question.