How to triangulate two 3d lines

In summary, the project involves using two cameras to triangulate the location of an object in front of them. The object's 3D coordinates relative to the cameras can be expressed using two line equations and the Fundamental matrix. Additionally, the object's 2D coordinates on a projection plane from each camera are known. To find the object's center, the shortest line connecting the two lines is calculated and its midpoint is treated as the object's center. The coordinates of the object in the original coordinate system can be found using a change of basis matrix.
  • #1
assafMOCAP
2
0
Hi guys,
I am working on an computer vision project.
the project uses two cameras to triangulate an object in front of the cameras.


Homework Statement


Express the object's location in 3d coordinates relative to the cameras.

Homework 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.

The Attempt at a Solution


how to calculate a vector that originates from the middle of the two cameras, to the object.
 
Physics news on Phys.org
  • #2
assafMOCAP said:

Homework Statement


Express the object's location in 3d coordinates relative to the cameras.

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.
 

1. Can two 3D lines be triangulated in the same way as two 2D lines?

No, triangulation in 3D space involves an additional dimension, making the process more complex than in 2D.

2. What is the purpose of triangulating two 3D lines?

The purpose of triangulating two 3D lines is to find the point of intersection between the two lines, which can be useful in various applications such as computer graphics, navigation systems, and 3D modeling.

3. What information is needed to triangulate two 3D lines?

To triangulate two 3D lines, you need the direction vectors of each line and the coordinates of at least one point on each line. This information can then be used to calculate the point of intersection.

4. Is there a specific formula for triangulating two 3D lines?

Yes, there is a formula known as the "line-line intersection formula" that is commonly used to triangulate two 3D lines. It involves solving a system of equations to find the coordinates of the point of intersection.

5. Are there any limitations to triangulating two 3D lines?

Yes, there are limitations to triangulating two 3D lines. If the two lines are parallel or skew (do not intersect), then triangulation is not possible. Additionally, if the lines are too close together, the calculated point of intersection may not be accurate.

Similar threads

  • Precalculus Mathematics Homework Help
Replies
17
Views
996
Replies
1
Views
865
Replies
11
Views
1K
  • Calculus and Beyond Homework Help
Replies
1
Views
2K
  • Calculus and Beyond Homework Help
Replies
1
Views
5K
  • Programming and Computer Science
Replies
2
Views
1K
  • Calculus and Beyond Homework Help
Replies
11
Views
5K
  • Calculus and Beyond Homework Help
Replies
1
Views
3K
  • Calculus and Beyond Homework Help
Replies
1
Views
7K
Replies
8
Views
3K
Back
Top