Building Your Own Portable 3D Camera


[Steven] needed to come up with a project for the Computer Vision course he was taking, so he decided to try building a portable 3D camera. His goal was to build a Kinect-like 3D scanner, though his solution is better suited for very detailed still scenes, while the Kinect performs shallow, less detailed scans of dynamic scenes.

The device uses a TI DLP Pico projector for displaying the structured light patterns, while a cheap VGA camera is tasked with taking snapshots of the scene he is capturing. The data is fed into a Beagleboard, where OpenCV is used to create point clouds of the objects he is scanning. That data is then handed off to Meshlab, where the point clouds can be combined and tweaked to create the final 3D image.

As [Steven] points out, the resultant images are pretty impressive considering his rig is completely portable and that it only uses an HVGA projector with a VGA camera. He says that someone using higher resolution equipment would certainly be able to generate fantastically detailed 3D images with ease.

Be sure to check out his page for more details on the project, as well as links to the code he uses to put these images together.

12 thoughts on “Building Your Own Portable 3D Camera

  1. When I read 3D camera I went meh. Looking closer at the project I agree with Joe, this is a 3D scanner. This should be an interesting read. I look forward to following Stevens work on this project.

      1. There was an arduino project I saw a while back that did 3d scanning with just a web cam and 4 white LEDs. The LEDs were placed at random locations and the object was lit up with them (in a dark chamber) and a picture was snapped. And from there, software spent about 10 minutes figuring out what the 3d mesh was supposed to be.

        I think I like the pencil projector idea better though. I’m thinking rotating platform holding the object to be scanned combined with a stationary bright white led, and a stationary pencil (or string or “obstacle” of some kind…) and a webcam. Alternately, the string could move left to right and the platform be stationary (or neither need be stationary, as you may be able to scan in greater detail that way and still get a full 360 degrees.)

  2. Dear Boris

    Don’t listen to the negative talk, your work is fantastic. You beat caltech :)

    I need to talk to you about my project, I have a UAV (a copter) already working I Would like to add beagleboard to it, could you contact me please.

    I would like to Neural Network control software to my UAVs

    I could not find your email


Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.