Algorithm behind findHomography() and the kind of homography returned by it

asked 2017-08-02 09:23:45 -0600

Conundraah gravatar image

Hi folks!

I am dealing with the estimation and decomposition of homographies for a couple of days now and the very moment I think I got it I stumble upon new and even more mind-boggling questions. What I would like to understand is how a homography can be decomposed into parameters R and t how to estimate the camera path with the aforementioned parameters. I am well aware of the plethora of different algorithms to do that but I have a few questions that I could not answer after hours of googling and literature research.

As far as I know homographies are transformations which transform one set of points from one image plane to another and that they are the most general kind of transformation containing rotation, translation and non-linear scaling parameters. Today I read that there are two kinds of homographies: projective and euclidean homographies. From what I've read thus far, Euclidean homographies directly express the reconstruction of the relative motion between the views and the normal of the plane.

  • Is that correct?
  • Is it save to assume that a Euclidean homography can be thought of as a "real world" homography which describes my rotation and translation from one camera position to the next?
  • Are there any other important differences between projective and Euclidean homographies?
  • Which algorithm is used in findHomography() in OpenCV 2.4.13?
  • Does findHomography() in OpenCV 2.4.13 return a projective or euclidean homography?
  • When do I need a projective or a euclidean homography?

Your help is deeply appreciated!!!

Thank you


edit retag flag offensive close merge delete


I think what you are looking for is described in this paper (p 10/94). In my opinion, "Euclidean homography" deals with transformation in the normalized camera frame (z=1) whereas "projective homography" deals with transformation in the image plane using the intrinsic parameters.

Anyway, the answer is probably in the linked paper (Deeper understanding of the homography decomposition for vision-based control) or in the literature at the end.

Eduardo gravatar imageEduardo ( 2017-08-02 10:07:56 -0600 )edit

Hi Eduardo,

thank you for your answer. I already know the paper you mentioned and read it again and in addition the referenced literature. Unfortunately it didn't help me answering my questions. :-(

Best regards


Conundraah gravatar imageConundraah ( 2017-08-04 01:19:03 -0600 )edit