# Homework Help: How to triangulate two 3d lines

Tags:
1. Feb 21, 2016

### assafMOCAP

Hi guys,
I am working on an computer vision project.
the project uses two cameras to triangulate an object in front of the cameras.

1. The problem statement, all variables and given/known data
Express the object's location in 3d coordinates relative to the cameras.

2. Relevant equations
From the software i can get two line equations.
The line equations are for lines going through the centers of the lens and the center of the object itself
1: a1x1+b1y1+c1=0
2: a2x2+b2y2+c2=0
Known parameters are the a1,a2,b1,b2,c1,c2
Also know is the relation between the two cameras (The Fundamental matrix 3X3)
Also, the object coordinates in 2d on a projection plane from each camera is known (i.e. x1,y1 and x2,y2 )

Sadly, the lines do not meet, so its also needed to calculate the shortest line that connects both lines and treat its middle as the object's center.

3. The attempt at a solution
how to calculate a vector that originates from the middle of the two cameras, to the object.

2. Feb 21, 2016

### geoffrey159

Let's say that your original coordinate system is $(O,\vec i,\vec j,\vec k)$
You want to set a camera in $O'$ and $O''$, and set a coordinate system in $O'$ and $O''$.

If $M$ has coordinates $(x,y,z)$ in the original coordinate system, its coordinates $(x',y',z')$ in $(O',\vec I,\vec J,\vec K)$ satisfy

$\begin{pmatrix} x \\ y \\ z \end{pmatrix} = \vec{OO'} + P . \begin{pmatrix} x' \\ y' \\ z' \end{pmatrix}$

where $P$ is the change of basis matrix from $(\vec i,\vec j,\vec k)$ to $(\vec I,\vec J,\vec K)$. Similarly for the other camera.