Skip to content

HonglingLei/3D-Object-Reconstruction-Based-on-2D-Images

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 

Repository files navigation

3D Object Reconstruction Based on 2D Images

In this project, I reconstructed 3D objects from stereoscopic image pairs using triangulation and the eight-point algorithm. More specifically, I derived the depth of each point on the object by computing the essential matrix and fundamental matrix. These are then used to reconstruct the 3D point cloud that shows the object from different angles. This technology can be fairly useful in 3D printing and animation modeling. Since this is a class assignment, my code is not published on GitHub.

For this task, two slightly different images are given as input. They are taken from different angles.

Proof of Mirror Reflection

Suppose that a camera views an object and its reflection in a plane mirror. It can be proven that this situation is equivalent to having two images of the object which are related by a skew-symmetric fundamental matrix. Proof is as below.

Formula Derivation: the Eight-Point Algorithm

Aw = 0, where A is a 4x4 matrix and w is a 4x1 vector of the 3D coordinates in the homogeneous form.

Epipolar Lines

Below is the visualization of the epipolar lines. I selected some points on the left image, and the corresponding epipolar lines are shown on the right image.

3D Reconostruction

After computing the fundamental matrix, essential matrix, and epipolar correspondence using RANSAC searching, I got the following reconstruction results.

We can clearly see the 3D shape of this temple. Even though we couldn't really observe the back of the temple in the given 2D images, the reconstructed 3D graphs help us see it from all angles.

About

3D object reconstruction from stereoscopic image pairs using triangulation and the eight-point algorithm

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published