Kyle McDonald sends us a hacked-together 3D scanner. I love that it’s slightly inaccurate in aesthetically-pleasing ways, I love that it’s something you can put together using stuff you already have at the ready, and I love that it’s powered by Processing. The applications could range from 3D models to motion graphics and animation to assistance in mapping projections to 3D objects. Kyle writes:
I put together a 3D scanner yesterday that uses a camera, projector, and Processing. Mostly I just wanted to see if it’s possible to do DIY 3D stop-motion animation at faster than one frame per minute, and this proof of concept shows it can be done at a reasonable resolution at 1 fps. This technique might be of special interest to the visualists working with mapping on 3D surfaces.
From the video description:
The first 18 frames show the images used for generating the 3D model. Syncing the projector to a webcam would yield a theoretical 3 3D frames per second (more practically, around 1 fps).
Inspired by Lisa Parra and Sophie Kahn’s work with the DAVID Laser scanning system. (Approximately 1 3D frame per minute)
Use of gray codes to determine a pixel-pixel correspondence between the camera and projector image planes inspired by Johnny Chung Lee’s projector calibration work cs.cmu.edu/~johnny/projects/thesis/
Now, we of course wanted to see some source code, and Kyle was nice enough to oblige.
The 3D geometry isn’t completely “correct”, but it works fine for this camera/projector setup — so here’s some code that is open source but still fairly setup-dependent:
I think this could really develop into some other interesting projects, so hopefully we’ll get to work with Kyle documenting and extending this. Stay tuned, same 3D hack time, same 3D hack channel.