Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Epipolar lines for divergent cameras

Everywhere I read about epipolar lines and stereo vision I see the same picture:

enter image description here

Always convergent cameras.

I can imagine having an epipolar line even if the cameras are divergent (looking a little bit away from each other).

But I can't seem to figure out quite exactly how it should be positioned.

Any help?

EDIT

The cameras are capturing a lot of the same area. But they are simply slightly turned away from each other.

I understand that when they are slightly convergent, I make a line between two centers of projection. Where this line intersects projection planes, these are my epipoles. When cameras are perfectly parallel, epipoles are in infinity. But when cameras are slightly divergent, using the same method for constructing epipoles would return them back from infinity and coming back closer together as the divergence angle increases.

Using the picture I already presented. If I start rectifying the two blue planes, the epipole eL would move all the way to the right to infinity. If I then rotate blue projection planes a bit too far, eL would transfer from the left infinity to the right infinity.

Is this the proper way of seeing this? Or do some special rules apply when the cameras are divergent?

like image 504
ancajic Avatar asked Jan 07 '23 18:01

ancajic


2 Answers

The math is identical, it is just a bit harder to visualize such a case. I tried to draw what it would look like:

enter image description here enter image description here

If you look at the black line in the "perspective view", you can see that the set of 2D points projected in the right image from points on the 3D segment [X,Ol] forms a 2D segment, going from the projection of X in the right image to the image point at infinity along the direction of the epipolar line, then back from the other image point at infinity to the epipole er.

Indeed, if you look at the "top view", you can see that there is a point (which I called X//), which projects in the image plane at infinity along the direction of the epipolar line. 3D points between X and X// project on the segment connected to the projection of X, while those between Ol and X// project on the segment connected to er.

The remaining part of the epipolar line (drawn in black dashed style in the "perspective view") correspond to points beyond X and before Ol along the ray joining X and Ol.

Such a case is a bit difficult to draw, although not that much, but there exists a lot of equivalent and realistic cases (e.g. the one below), for which epipolar geometry is perfectly defined.

enter image description here

like image 60
BConic Avatar answered Jan 17 '23 11:01

BConic


An epilpolar line of Xl in the right image is the line through Xr and any other point of the line Ol-X. Since Ol is not in front of the right camera you cannot use that point. However, you can pick another point of the line Ol-X. I expect that under the conditions that Ol is not front of the right camera, and X also is in front of the right camera that the point X2: X + (X-Ol) (= 2X -Ol) also will be in front of the right camera. So the line through Xr (projection of X in right camera) and X2r (project os X2 in the camera camera) is the epipolar line of Xl (projection of X in the left camera.)

like image 22
Klamer Schutte Avatar answered Jan 17 '23 12:01

Klamer Schutte