I am trying to compute the coordinates correspondence of several points between two images.
I have a group of points whose correspondences are known, I use them with OpenCV's findFundamentalMatrix()
in order to find the fundamental matrix.
I verified that x^T * F * x' = (0)
for each point, and the result is always right or very close.
The thing is, now I'd like to use the coordinates of a point on the first image (y
) and the fundamental matrix (F
) in order to find the coordinates of the point on the second image (y'
). I first thought about simply using the equation above, but given only the z
of the y'
point, there can be an infinity of solutions.
How else can I use the fundamental matrix to compute the translations ?
To be more clear: knowing the fundamental matrix "linking" two projections, how can I use it to translate the coordinates of any known point (a, b, 1)
from the first projection to the second projection?
Considering that we know a
, b
and F
in this equation: (a', b", 1)T * F * (a, b, 1) = (0)
I had made a simple drawing as an example: http://i.imgur.com/drNr2.jpg . The idea is to find the coordinates of the red dot (xq, yq)
in projection 2, considering that we know its coordinates in projection 1 and the ones of all other points in both projections (and some other ones as the algorithm to find the fundamental matrix actually requires at least 8 points)
Another precision: in my example, known points are coplanar, but the researched point will not necessarily be.
I hope that made my problem more clear :)