4dvideo Save

Capturing volumetric videos with Google Tango, RealSense R200 and Delaunay triangulation

Project README

4dvideo

Capturing volumetric videos with Google Tango, RealSense R200 and fast Delaunay triangulation.

O(nlogn) triangulation algorithm based on Guibas-Stolfi paper:

Delaunay triangulation

4D clip rendered by OpenGL viewer (clickable):

4D clip rendered by OpenGL viewer

4D clip in WebGL: https://skfb.ly/6snzt

To download 3rd party submodules:

git submodule update --init --recursive

CMake command line for Visual Studio 2015:

cmake -G"Visual Studio 14 2015 Win64" -DOpenCV_DIR=C:/all/projects/libs/opencv-3.2.0/build/install -DGLFW_ROOT_DIR=C:/all/projects/libs/glfw-3.2.1.bin.WIN64 -DGLEW_LIBRARY=C:/all/projects/libs/glew-2.0.0/lib/Release/x64/glew32.lib -DGLEW_INCLUDE_DIR=C:/all/projects/libs/glew-2.0.0/include -DRSSDK_DIR="C:/Program Files (x86)/Intel/RSSDK" ../..

Add RSSDK_DIR part only if you need RealSense grabbing support. Theoretically the code should also build for Linux and Mac (maybe with a couple of adjustment here and there). Just replace paths to libraries with the appropriate ones for your system.

Project structure:

  • src/libs: reusable library modules
    • lib4d: library module with utilities for 4d content processing, including dataset reading and writing, rendering, meshing and filtering
    • librealsense: Intel RealSense functionality, including the grabbing code
    • libtri: Delaunay triangulation implementation
    • libutil: various utilities, including logging, profiling, geometric primitives, .ply IO etc.
  • src/apps: all the apps
    • 4d_player_app <4dv-dataset-path> Playbacks 4D "movies" in .4dv binary format
    • animation_writer_app <4dv-dataset-path> <timeframe-anim-directory> Converts binary .4dv movie into a series of .ply meshes for every frame. Once zipped this can be uploaded to Sketchfab (this format is called "timeframe animation"). The directory must exist beforehand.
    • realsense_grabber_app <output-4dv-file> Captures 4D movie from Intel RealSense in .4dv format.
    • triangulation_visualizer_app: the app I used to generate GIF visualizations of Delaunay triangulation algorithm. Must enable WITH_VIS preprocessor variable for it to work.
  • src/test: some unit tests created with awesome GTest library.
  • android_src: all the Java code for Google Tango, mostly an unfinished binary grabber for Tango

If you happen to use my code in any of your projects, I would really appreciate if you write me a letter. If you have any questions or problems with the code please also feel free to reach me: [email protected]

Open Source Agenda is not affiliated with "4dvideo" Project. README Source: alex-petrenko/4dvideo
Stars
40
Open Issues
0
Last Commit
6 years ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating