/3DVision

Primary LanguagePython

Assignment 1 Overview

Here is the checklist for the assignment:

  • Loop subdivision.
  • Implement Quadratic Error based mesh decimation.
  • Write up your project, details of data structure, algorithms, reporting runtime, and visualizations of results with different parameters.
  • Extra credit: Analyze corner cases (failure cases) and find solutions to prevent them.
  • Extra credit: Implement Loop subdivision using two different data structures.
  • Extra credit: Preserve the original vertices after decimation.

Note: I use the OpenMesh library for the halfedge data structure. Please install OpenMesh before running the code. Please note that the OpenMesh library only supports Python version no later than 3.9.

Additional results can be found in the folder: assets/assignment1.

Open assignment1.html to see the writeup report.

Assignment 2 Overview

Here is the checklist for the assignment:

  • Implement the structure-from-motion algorithm with the start code.
  • Write up your project, algorithms, reporting results (reprojection error) and visualisations (point cloud and camera pose), compare your reconstruction with open source software Colmap.
  • Extra credit: Experiment with outlier filtering techniques.

Additional results can be found in the folder: assets/assignment2.

Open assignment2.html to see the writeup report.

Assignment 3 Overview

Here is the checklist for the assignment:

  • Complete the training using your own data.
  • Write up your project, algorithms, reporting results and visualisations, compare your reconstruction with open source software Colmap.
  • Extra credit: Present results with your own captured data.
  • Extra credit: Train your models with both Nerf and 3DGS.

Additional results can be found in the folder: assets/assignment3.

Open assignment3.html to see the writeup report.