Four Pi Zeros, Four Cameras, One Really Neat 3D Scanner

Sometimes when you walk into a hackerspace you will see somebody’s project on the table that stands so far above the norm of a run-of-the-mill open night on a damp winter’s evening, that you have to know more. If you are a Hackaday scribe you have to know more, and you ask the person behind it if they have something online about it to share with the readership.

[Jolar] was working on his 3D scanner project on just such an evening in Oxford Hackspace. It’s a neatly self-contained unit in the form of a triangular frame made of aluminium extrusions, into which are placed a stack of Raspberry Pi Zeros with attached cameras, and a very small projector which needed an extra lens from a pair of reading glasses to help it project so closely.

The cameras are arranged to have differing views of the object to be scanned, and the projector casts an array of randomly created dots onto it to aid triangulation from the images. A press of a button, and the four images are taken and, uploaded to a cloud drive in this case, and then picked up by his laptop for processing.

A Multi-view Stereo (MVS) algorithm does the processing work, and creates a 3D model. Doing the processing is VisualSFM, and the resulting files can then be viewed in MeshLab or imported into a CAD package. Seeing it in action the whole process is quick and seamless, and could easily be something you’d see on a commercial product. There is more to come from this project, so it is definitely one to watch.

Four Pi boards may seem a lot, but it is nothing to this scanner with 39 of them.

24 thoughts on “Four Pi Zeros, Four Cameras, One Really Neat 3D Scanner

      1. You can actually adjust the focus of RPi cameras, either using pliers carefully, or better by 3D printing a small tool (designs are available on Thingiverse). This way it can be focused on really closed objects too.

  1. As a concept this is a working model of a 3D camera for moving objects.

    The Pi3 does not have enough memory to snap 4 pics before the object has moved on and distorted the image.

    Imagination Dan, Imagination

    1. Why do you think the object would be moving? There’s no indication this device is for scanning moving objects. In fact, it seems like the multiple cameras are specifically for scanning without the object moving, as otherwise you could just have one camera and rotate the object like more “traditional” scanners.

  2. as far as i know, from using it in the past, few years back, VisualSFM only outputs a point-cloud, not a mesh with faces like in the meshlab screenshot in the article. Surface reconstruction (in meshlab) can be quite a challenge for some objects. Meshlab has gotten quite a bit better at not crashing in recent years, but for large point clouds it’s still a serious challenge.

    1. From the VisualSFM website:
      “The SfM output of VisualSFM works with several additional tools, including CMP-MVS by Michal Jancosek, MVE by Michael Goesele’s research group, SURE by Mathias Rothermel and Konrad Wenzel, and MeshRecon by Zhuoliang Kang.”
      Is the source code for VisualSFM available ?

  3. You could have some neat effects with different wave lengths of light and pulsing the lights at different angles to see if you can change the detail. I seem to remember and article about that kind of stuff. Long time ago.

    1. Exactly, it’s 2018 and the few shops that carry Pi Zeros or Pi Zero Ws are still out of stock or only send you one per order and warn you not to make multiple orders. And the shipping costs are 3x or 4x the actual board (at least in EU). Pi Zero Ws seems slightly easier to source though, perhaps because there’s more margin for the shop and less need to come up with silly kits to inflate the price. The short camera ribbon cable can’t be ordered at all other than with a kit.

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.