LookUp3D: Data-Drive 3D Scanning

1New York University, Courant Institute of Mathematical Sciences, 2New York University, Tandon School of Engineering, 3New York University, Center for Data Science
SIGGRAPH Asia 2025
Five Frames of Dynamic Reconstruction of Bunny Falling using LookUp3D.

LookUp3D is a data-driven structured light scanning that uses a pixel-wise lookup table to bypass explicit projector calibration.

Abstract

We introduce LookUp3D, a method that enables, for the first time, 3D scanning at 450 frames per second at 1 Megapixel, or 1,450 frames per second at 0.4 Megapixel in an environment with controlled lighting. The key idea is to use a per-pixel lookup table that maps colors to depths, which is built using a linear stage. Imperfections, such as lens-distortion and sensor defects are baked into the calibration. We describe our method and test it on a novel hardware prototype. Our results show the system acquiring geometry of objects undergoing high-speed deformations and oscillations and demonstrate the ability to recover physical properties from the reconstructions.

LookUp3D Pipeline

Our scanning method relies on a per-pixel lookup table (LUT) Ci(d) from scene depth d to observed color values at camera pixel i. Once this unique mapping is established during calibration, depth can be inferred at runtime by value lookup.
LookUp3D Pipeline.

LookUp3D Calibration

The goal of calibration is to create the unique dictionary Ci(d) : R+ \to R3 between depth and color for each pixel i. Our calibration procedure uses a planar calibration target (filled with fiduciary markers) moved by an off-the-shelf linear stage. We project a fixed pattern sequence onto the calibration target and record, per-pixel, the color reading and the depth measurement.

We deviate from traditional structured light: to recover depth, we rely solely on the calibration board and the linear stage, without the need to model the projector defocusing, vignetting, intrinsic and extrinsic parameters. We test this hypothesis with a set-up where the quality of the optics of the projector does not alter the results achieved by LookUp3D, whereas a traditional structured light method reliant on triangulation suffers a lot in quality of reconstruction.

LookUp3D Reconstruction

The scanning procedure is as follows: we project the same fixed pattern sequence from calibratioon now onto an object of unknown geometry and capture an image of intensity I. Reconstruction compares each pixel in the measured color image I with the calibrated per-pixel lookup table. In its unoptimized form, the operation is a simple, embarrassingly parallel lookup to find the depth whose color is closest to the observed pixel Ii, or di* = argmind | Ci(d) - Ii | 2 where the search is done offline on a discrete set of depths. The residual ri = | Ci(d) - Ii | 2 provides a per-pixel confidence measure that can be thresholded to filter unreliable points.

Residual Filtering of LookUp3D Reconstruction.

Results

We validate LookUp3D across three hardware configurations: a standard DLP projector, an inexpensive LCD projector, and a custom-built analog projector for high-speed. With the high-speed prototype, we achieve accurate reconstructions at 450 fps and 1 Megapixel resolution. We recover the free-fall of a bunny at 450 fps with relative motion errors below 2%.

Static Results

LookUp3D achieves reconstruction quality comparable to traditional structured light with the DLP projector, and significantly outperforms it with the LCD projector. While the quality of traditional Gray Code reconstruction deteriorates significantly with the low-quality projector -- due to its reliance on accurate triangulation -- LookUp3D remains robust.

Comparison of LookUp3D against Traditional Structured Light with Gray Code patterns.

We show below a chess board, a paint brush, a 3D-printed house, and a monkey statue, all reconstructed with 11 channels. These scenes were captured with our DLP Projector with ceiling lights on.

Four Results of LookUp3D.

Dynamic Results

Since we do not need to explicitly model the projector for scanning, we use a custom analog projector that can flicker LEDs at frequencies above 1kHz. We expose a pattern onto a 35-mm color film slide, develop it, and place in front of one of the LEDs, allowing the projection of an RGB patterm at extremely high frequencies. We can then 3D scan slow-motion scenes.

Acknowledgments

This work was partially supported by the the NSF grants OAC-2411349 and OAC-2411221. Giancarlo Pereira was partially supported by the New York University Tandon School of Engineering Fellowship. We thank NYU IT High Performance Computing services, for help with resources, services, and expertise. We also would like to thank [Professor Christopher Musco](https://www.chrismusco.com) for fruitful discussions on low-rank approximation and would like tos thank [Arvi Gjoka](https://www.arvigjoka.com) for making a silicone bunny.

BibTeX


    @inproceedings{10.1145/3757377.3763986,
    author = {Pereira, Giancarlo and Gao, Yidan and Piadyk, Yurii and Fouhey, David and Silva, Claudio T and Panozzo, Daniele},
    title = {LookUp3D: Data-Driven 3D Scanning},
    year = {2025},
    isbn = {9798400721373},
    publisher = {Association for Computing Machinery},
    address = {New York, NY, USA},
    url = {https://doi.org/10.1145/3757377.3763986},
    doi = {10.1145/3757377.3763986},
    booktitle = {Proceedings of the SIGGRAPH Asia 2025 Conference Papers},
    articleno = {149},
    numpages = {11},
    keywords = {3D Scanning, Geometry Acquisition, Structured Light, Data-Driven, Active Illumination, High-Speed},
    location = {
    },
    series = {SA Conference Papers '25}
    }