Reputation: 487
I'm using OpenCV's findHomography function (with RANSAC) in Python to find the transformation between two sets of points.
Looking at the documentation, the output is a mask and a transformation matrix.
The documentation is not clear about what the mask represents, and how the matrix is structured.
Is a 1 in the output mask a point that fits the found transformation or a point that was ignored? And could you explain the makeup of the 3x3 output transformation matrix?
Thanks in advance and sorry if I missed some documentation which explains this.
Upvotes: 17
Views: 27152
Reputation: 1821
Based on my limited search, mask
returned by findHomography() has status of inliers and outliers, i.e. it's a matrix representing matches after finding the homography of an object.
This answer addresses your first question.
This answer addresses what a mask is and what are its dimensions.
Upvotes: 5
Reputation: 2686
Well what do you need to do with the mask? Because that field is not needed so you don't have to put any mask.
As for the resulting matrix. It is called a homography
matrix, or H
matrix and it represents the transformation of one point in an image plane to the same point in another image plane.
X1 = H * X2
The point X1
is the same point (X2
) in a different plane.
So the H matrix is basically the description of how one point in, lets say, image 1 matches 1 point in image2.
Upvotes: 2