Reply To: Model Export

Home Forums AR Sandbox Forum Model Export Reply To: Model Export

#101178
Oliver Kreylos
Keymaster

There is no export functionality built into the AR Sandbox itself, but the Kinect package contains an (unsupported) utility to convert a previously saved 3D video stream to a sequence of 3D mesh files in Lightwave Object (.lwo) format, which in turn can be read by most 3D modeling software. This is not the same as exporting from inside the AR Sandbox, as that contains special filter algorithms to ensure a watertight surface.

Unfortunately, I have not maintained that utility, and it fell prey to some API changes. I am currently packaging an updated version of the Kinect package which will fix those issues.

With the new package, here is the sequence to build the utility, called LWOWriter:

  1. Change into the Kinect package’s source directory.
  2. Build the LWOWriter utility:
    $ make PACKAGES=MYKINECT LWOWriter
  3. Run KinectViewer and save a stretch of 3D video data via the main menu’s “Save Streams…” entry.
  4. Exit KinectViewer, locate the saved video stream (a pair of files with .color and .depth extension), and run it through LWOWriter:

    $ ./bin/LWOWriter <video stream base name> <first exported frame> <last exported frame>

    This will create one Lightwave Object file for each video frame between the given start and end indices. Base name is just the name of the video stream files without the .depth/.color extension.

If you don’t want to wait for Kinect-2.8-002, you can fix LWOWriter.cpp yourself: Change line 304 from
projector.setFilterDepthFrames(true);
to
projector.setFilterDepthFrames(false,true);
and replace line 325,
const Kinect::MeshBuffer& mesh=projector.processDepthFrame(depth);
with

Kinect::MeshBuffer mesh;
projector.processDepthFrame(depth,mesh);

Comments are closed.