Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Coordinate axis with triangulatePoints

So, I have the projection matrix of the left camera:

image description

and the projection matrix of my right camera:

image description

And when I perform triangulatePoints on the two vectors of corresponding points, I get the collection of points in 3D space. All of the points in 3D space have a negative Z coordinate. I assume that the initial orientation of each camera is directed towards the positive Z axis.

My assumption was that OpenCV uses coordinate axis like this:

image description

So, when I positioned my cameras with projection matrices, the complete picture would look like this:

image description

But my experiment leads me to believe that the coordinate system looks like this:

image description

And that my projection matrices have effectively messed up the left and right concept:

image description

Is everything I've said correct? Is the latter coordinate system really the one that is used by OpenCV?

Coordinate axis with triangulatePoints

So, I have the projection matrix of the left camera:

image description

and the projection matrix of my right camera:

image description

And when I perform triangulatePoints on the two vectors of corresponding points, I get the collection of points in 3D space. All of the points in 3D space have a negative Z coordinate. I assume that the initial orientation of each camera is directed towards in the positive Z axisaxis direction.

My assumption was that OpenCV uses coordinate axis like this:

image description

So, when I positioned my cameras with projection matrices, the complete picture would look like this:

image description

But my experiment leads me to believe that the coordinate system looks like this:

image description

And that my projection matrices have effectively messed up the left and right concept:

image description

Is everything I've said correct? Is the latter coordinate system really the one that is used by OpenCV?

Coordinate axis with triangulatePoints

So, I have the projection matrix of the left camera:

image description

and the projection matrix of my right camera:

image description

And when I perform triangulatePoints on the two vectors of corresponding points, I get the collection of points in 3D space. All of the points in 3D space have a negative Z coordinate. I assume that the initial orientation of each camera is directed in the positive Z axis direction.

My assumption was that OpenCV uses coordinate axis like this:

image description

So, when I positioned my cameras with projection matrices, the complete picture would look like this:

image description

But my experiment leads me to believe that the coordinate system looks like this:

image description

And that my projection matrices have effectively messed up the left and right concept:

image description

Is everything I've said correct? Is the latter coordinate system really the one that is used by OpenCV?

If I assume that it is, everything seems to work fine. But when I want to visualize things using viz module, their WCoordinateSystem widget is oriented as my initial guess was.

Coordinate axis with triangulatePoints

So, I have the projection matrix of the left camera:

image description

and the projection matrix of my right camera:

image description

And when I perform triangulatePoints on the two vectors of corresponding points, I get the collection of points in 3D space. All of the points in 3D space have a negative Z coordinate. I assume that the initial orientation of each camera is directed in the positive Z axis direction.

My assumption was that OpenCV uses Right Hand coordinate axis system like this:

image description image description

So, when I positioned my cameras with projection matrices, the complete picture would look like this:

image description

But my experiment leads me to believe that the OpenCV uses Left Hand coordinate system looks like this:system:

image description

And that my projection matrices have effectively messed up the left and right concept:

image description

Is everything I've said correct? Is the latter coordinate system really the one that is used by OpenCV?

If I assume that it is, everything seems to work fine. But when I want to visualize things using viz module, their WCoordinateSystem widget is oriented as my initial guess was.

Coordinate axis with triangulatePoints

So, I have the projection matrix of the left camera:

image description

and the projection matrix of my right camera:

image description

And when I perform triangulatePoints on the two vectors of corresponding points, I get the collection of points in 3D space. All of the points in 3D space have a negative Z coordinate. I assume that the initial orientation of each camera is directed in the positive Z axis direction.

My assumption was that OpenCV uses Right Hand coordinate system like this:

image description image description

So, when I positioned my cameras with projection matrices, the complete picture would look like this:

image description

But my experiment leads me to believe that OpenCV uses Left Hand coordinate system:

image description

And that my projection matrices have effectively messed up the left and right concept:

image description

Is everything I've said correct? Is the latter coordinate system really the one that is used by OpenCV?

If I assume that it is, everything seems to work fine. But when I want to visualize things using viz module, their WCoordinateSystem widget is oriented as my initial guess was.right handed.