3DUNDERWORLD-SLS
github.com
What it is
3DUNDERWORLD-SLS is a free Linux project that reconstructs point clouds from camera image sequences illuminated by patterned light. Its structured-light process has CPU and GPU implementations, and the command-line program can save reconstructed models as PLY or OBJ files. Version 4.x requires two or more cameras and provides a generic camera interface that programmers can extend. Camera acquisition is not implemented, so users must supply a camera class through the provided interfaces. The project accepts camera image folders, calibration files, and a patterned-light projector as inputs. It does not provide real-time capture or mesh reconstruction. Libraries are included for integration into other projects, with CPU and GPU examples, and an API was included in OpenCV 3.1 for a stereo approach using time-multiplexing Gray encoding. The repository supplies demo binaries, example data, and CMake build instructions. Dependencies are OpenCV 2, CUDA 6.0 or later, and glm. CUDA detection enables CPU and GPU constructors; without CUDA, only the CPU constructor is generated.
Spec sheet
- Purpose
- The software reconstructs point clouds from series of images lit by patterned light.Read 8 Oct 2026 · github.com
- Intended users
- The lab describes its work as research and notes collaborations with industry and other external partners.Read 8 Oct 2026 · theictlab.org
- License
- The GitHub repository identifies its license as LGPL-3.0.Read 8 Oct 2026 · github.com
- Headquarters
- Montreal, QuebecRead 28 Sep 2026 · github.com
- Founded
- 2011Read 28 Sep 2026 · github.com
- Build
- The repository includes demo binaries and data, and a CMake script to compile the binaries and libraries.Read 7 Oct 2026 · github.com
- Build requirements
- The listed dependencies are OpenCV 2, CUDA 6.0 or later, and glm.Read 8 Oct 2026 · github.com
- Camera acquisition
- Camera acquisition is not implemented, though the project provides interfaces for users to implement a camera class.Read 7 Oct 2026 · github.com
- Camera limitation
- Camera acquisition is not implemented; the project provides interfaces for users to implement a camera class.Read 8 Oct 2026 · github.com
- CPU and GPU
- The reconstruction process is implemented for both CPU and GPU, with CUDA-enabled builds generating both CPU and GPU executables when CUDA is detected.Read 8 Oct 2026 · github.com
- Data size
- The repository notes that its included example data makes the repository about 300 MB.Read 7 Oct 2026 · github.com
- Dependencies
- The listed dependencies are OpenCV 2, CUDA 6.0 or later, and glm.Read 7 Oct 2026 · github.com
- Download and build
- The repository includes demo binaries and data and provides CMake instructions to build the binaries and libraries.Read 8 Oct 2026 · github.com
- GPU support
- If CUDA is detected, the default build creates CPU and GPU constructors; otherwise, it generates only the CPU constructor.Read 7 Oct 2026 · github.com
- Integration
- The project provides libraries intended for integration into other projects, with CPU and GPU application examples in the repository.Read 8 Oct 2026 · github.com
- Intended use
- The project's technical report describes the system as an open-source structured-light scanner for rapid geometry acquisition.Read 7 Oct 2026 · theictlab.org
- Library
- The project includes libraries intended for integration into other projects, with CPU and GPU application examples.Read 7 Oct 2026 · github.com
- Output
- The command-line program can export reconstructed models in PLY or OBJ format.Read 7 Oct 2026 · github.com
- Outputs
- The demo accepts camera image folders and calibration files and can save output as PLY or OBJ.Read 8 Oct 2026 · github.com
- Processing
- Image processors use images, projector parameters, and camera calibration parameters to produce data that the reconstructor combines into a point cloud.Read 8 Oct 2026 · github.com
- Project status
- The lab's software page lists GPU-based structured-light scanning software V4.0 under “Under Active Development.”Read 8 Oct 2026 · theictlab.org
- Publication requirement
- The repository says users must cite specified publications in any resulting publication.Read 8 Oct 2026 · github.com
- Research use
- The project asks users to cite the listed publications when using the software in resulting publications.Read 7 Oct 2026 · github.com
- Scanning setup
- Version 4.x requires two or more cameras and provides a generic camera interface that programmers can extend.Read 7 Oct 2026 · theictlab.org
Strong points and limits
Strong points
- Free software for Linux
- Provides CPU and GPU reconstruction paths
- Exports PLY and OBJ models
- Includes libraries and integration API
- CMake build instructions and demo data included
Limits
- Camera acquisition is not implemented
- Requires two or more cameras
- No real-time capture or mesh reconstruction
- CUDA is needed for GPU constructors
Who it suits
This project suits developers and researchers building structured-light scanning systems or integrating reconstruction libraries. It is intended for Linux environments where camera acquisition can be implemented separately.
Verdict
3DUNDERWORLD-SLS provides a focused reconstruction core with command-line, library, and API options. Expect to supply camera acquisition and the required dependencies before building a complete scanning setup.
Where Specifiction places it
- 3D Scanning Software#15 of 297.7