Kinect Fusion is a technology that allows for the reconstruction of 3D models of real-world objects and scenes using depth data from a Kinect sensor. The original version of Kinect Fusion has been widely used in various applications, including 3D printing and virtual and augmented reality. However, with advancements in computational techniques and algorithms, it is possible to improve upon the original implementation to create a more accurate and efficient version of the technology. This project aims to re-implement multiple versions of Kinect Fusion through different methods and explore the impact of different implementations on performance. As a re-implementation work, we will still implement the various modules according to the original version of Kinect Fusion.
Packages requirement:
FreeImage
Eigen
OpenCV
CUDA
Structure requirement: `
-
Data folder
Create a
Data/
folder on the top level and add the data file inside.
We use TUM RGB-D Dataset links, please set the dataset on proper location
e.g Data/rgbd_dataset_freiburg1_xyz/.. -
Build directory
Create the
build/
folder and in this case, we can create an out-of-source build. -
Libs folder
Create a
Libs/
folder to store packages. -
results folder
Create a
results/
folder to store generated result.
After all the packages are prepared and structure requirements are met, we run the project:
cd build/
cmake ..
make
./KinectFusion
We provide a series of output to help you track the operation of the program.
So you can see how long KinectFusion takes at each step.
At the end of the execution, the program generates the complete reconstruction result sum_out_mesh.off