loading

UPDATE: Check out step 8 for the latest version of my scanner and a download link for the python scripts.

Hi,

I am a big Arduino and Raspberry PI fan and also love 3D printing. I wanted to be able to make a 3d model of my kids and started investigating how to build a 3d scanner. I found a lot of solutions out there, but the problem with most of them is that the subject would have to sit still for a while... well I think it would be easier for me to invent a spaceship that can fly to mars then inventing a solution for my 2-year old son to sit still :-( So none of those solutions where going to work.

I knew I had to come up with a way to instantly take many images at the same time. So I first started to research what cheap digital cameras exists. If I could find a cheap model, I probably could make an automated trigger system using arduinos. But then I would have all the images on many separate SD cards and I was not able to find a cheap good digital camera.

Then I noticed the Raspberry PI and PI camera combination. A "fairly" affordable module, that already is ethernet connected, so I could do the triggering of the cameras using the network and an easy way to download all the images to a centralized place. So my Project (and investment) started.

I bought for this project:
- 40 Raspberry Pies for this project and 40 PI cameras.
- 40 8Gb SD cards
- 1 single 60A 5v power supply to power all the raspberry Pies
- Led Strips and a powerful 12v power supply to power them on

As I am an impatient person I did not build the whole setup at once, I started of with 12 cameras, and was already seriously impressed with the results. So you DO NOT need 40 cameras, especially not if you just want to catch just the front of a persons face.

Here a result output:

UPDATE:
I have included a photo of Britt (the model in the video) being printed in full color by shapeways.

UPDATE2:

I finally was able to make a scan of my little son Hugo (2years old). It was made using 47 Raspberries and using my new softboxes with permanent lights. This allows me to shoot the images with no shadow. Can't wait to receive the printed model from shapeways :-)

    Step 1: Setting up the hardware

    So I first needed a rig to hold the Raspberry Pies. I initially did some testing with a big round circle I made out of wood, but this was really impractical to work with and hard to walk in and out of. So after some testing, I went with an "individual pole" design. Most programs that turn images into a 3D model need the images to be shoot from different angles. So I settled for each pole to hold 3 Raspberry Pies cameras.

    I made the poles out of fairly cheap multiplex wood using a 2mm cutting bit on my CNC machine. This allowed me to pre-drill 2mm mounting holes for the Raspberry, so I just needed 2.5mm screws that would instantly fix the raspberry to my frame. 

    For the PI Camera, I designed a small and easy to print bracket (as I need 40 of them, so it needed to be small) that can hold the camera securely and would easily allow me to change the angle the camera would be pointing at.

    To fancy up the poles I also added a 1meter strip of 60 LEDs to each one, to provide some extra light for the photos and just because it looked cool :-)



     
      <p>Richard,</p><p>I finally got the script to trigger a three camera wifi setup. It seems to work pretty well. I'm using the Model A, Cam, Edimax Wifi, 8 gb. I'm considering going for 24 (12 x 2) to capture people (15 ft diameter). Is this overkill? What have you settled on for your shooting configuration? Also, have you done any more experimentation with agisoft photoscan? </p><p>Thanks again for your creative thinking and tenacious making.</p>
      <p>Hi, There is never overkill (well unless you use 200+ cameras) :-)</p><p>I can not capture a full body adult with just 24 cameras. I currently have 47 working and upgrading this week to 70 to enable full adult scanning. </p>
      <p>Kool Richard.. Very impressive setup... But I have few basic doubts... </p><p>How many people you can scan with your current setup ? I need a setup which can scan single,couple or family... can we achieve using 64 or 100 camera setup ?</p><p>does your setup directly push all images to a laptop/computer connected in network for post processing..?? or we need to copy from each SD card ?</p><p>if we can use continuos light why not use LEDs ..?? which can be more cost effective and powerful ?</p>
      <p>Could you also wire these up with just a router instead of using the gpio pins, assuming you are not using 50+Pis?</p>
      <p>Hello! Could you please email me the correct code to tcirilao@gmail.com</p><p>I tried do run the code, but it is without identation. Thank you!</p>
      <p>Hi Richard,</p><p>I made the network cables using 4 wires and sparing the other 4 wires for power. I managed to power up the pi this way but the pi cannot connect to network although the network cable works when I don't plug in the power wires. I am using the AC to DC convertor power source of desktops.</p><p>Any guess what the problem might be?</p><p>Thanks,</p><p>Azadeh</p>
      Do you control your raspberry pi's with a laptop or by another pi?
      you can do either. I have written windows software to easy control everything and manage the preview and downloading. You can find it on my website in the download section. www.pi3dscan.com
      Ok thanks
      <p>This is terrifc higher performance solution for a very low budget price.<br> <br>My first thought was the<br> <br>PiScan can make a 1:1 scale 3D model of a face in about an hour.<br> <br>Use this a mould to make a latex mask.<br> <br>Paint it up in line with the images and you can make a look-alike in a few hours.</p>
      <p>Hi Richard, </p><p>It is a great and very appreciable effort. I am also facing same problem. Can you tell me the name and cost of your power source/ supply used for 12 units....</p>
      <p>May I ask what printer you used to make that color print above? I've been considering affordable options for full color 3d printers and I was wondering what you used to make that model.</p>
      <p>Hi Richard, this is a great project, appreciate if you could give me the Python scripts, my email address is chwlvideo@gmail.com. thank you!</p>
      <p>Scrips are now available for download on www.pi3dscan.com</p>
      <p>Hi Richard, I would like the Python scripts as well my address is <a href="mailto:andang_resmana@yahoo.com" rel="nofollow">andang_resmana@yahoo.com</a>, Thanks. Great project BTW</p>
      <p>Scrips are now available for download on www.pi3dscan.com</p>
      <p>Hi Richard, I also have two kids. That's a great project that I started thanks to you. In terms of power requirements, that's about 100 amps, right? How do you manage that? I was hoping to make a portable kit, but here in canada we're running at 120v/15a so powering a rig like that couldn't be done in a normal room.</p><p> I, too, would love to learn from your scripts. Could you post them somewhere? </p>
      <p>Scrips are now available for download on www.pi3dscan.com</p>
      <p>getting closer. Substituted </p><p>&lt;print 'ID: ' + ip4&gt;</p><p>for &lt; print &quot;ID&quot; ip[caret underneath]4 &quot;-&quot;&gt;</p><p>now I get:</p><p>&lt;print &quot;optons: &quot;optio[caret underneath]n</p><p>SyntaxError: invalid syntax.</p><p>sorry to be so clueless. Noticed that maybe optons should be spelled options, however this is obviously not the syntax error. Tried single quotes same report.</p>
      <p>The instructables page does not allow me to post the code correctly i noticed. Python needs idents for certain segments in the code. Send me a mail with your email and I will email you the code.</p>
      <p>Richard,</p><p>I pm you with my email addressing regarding emailing the properly formated python scripts.</p><p> Thanks</p><p>John Ang</p>
      <p>Scrips are now available for download on www.pi3dscan.com</p>
      <p>Hi Richard, I would like the Python scripts as well my address is marksart_2002@yahoo.com, Thanks. Great project BTW</p>
      <p>Hallo Richard,</p><p>gro&szlig;artiges Projekt - klasse ;-)<br>W&uuml;rde mich sehr freuen, wenn Du mir auch die Python-Scripte per Email zusendest. Meine Emailadresse lautet: jshandy@t-online.de Vielen Dank Richard. Gru&szlig; J&uuml;rgen</p>
      <p>Scrips are now available for download on www.pi3dscan.com</p>
      <p>Scrips are now available for download on www.pi3dscan.com</p>
      <p>Hi Richard, I would like the Python scripts as well my address is info@armadillotaller.com, Thanks. super Great project !!!!</p><p>I try to do anything similar but have many dudes , perhaps could talk about.</p><p>thanks a lot and best regards</p><p>fernando </p>
      <p>Scrips are now available for download on www.pi3dscan.com</p>
      <p>Code please :) banquo_ws@hotmail.com</p>
      <p>Scrips are now available for download on www.pi3dscan.com</p>
      <p>Hi Richard. Thx for this great tuto! Would you be so kind to provide me with your python scripts, or are the ones in the downloadable file the right ones?</p><p>clifford@clifford.be</p><p>And a second question. To manage all your Rasp/cams, I suppose you need a central computer, your Mac I guess. So you've installed Python on your mac and launch your program with it, right? Thx in advance. </p>
      <p>Scrips are now available for download on www.pi3dscan.com</p>
      <p>Scrips are now available for download on www.pi3dscan.com</p>
      <p>Hi Richard, I would like the Python scripts, too.<br>ygreck@aol.com<br>Thanks!!</p>
      <p>Scrips are now available for download on www.pi3dscan.com</p>
      <p>Hi I would also love the code. Thanks</p><p>calvin@remotesupportservices.co.nz</p>
      <p>Scrips are now available for download on www.pi3dscan.com</p>
      <p>I love your project! I would like the Python scripts too, cheers!</p><p>aaronsollesse@gmail.com</p>
      <p>Scrips are now available for download on www.pi3dscan.com</p>
      This is a cool project. Have you tried to run the image processing software on the server and automate everything?
      I currently have automated that the images are automatically uploaded to dropbox so they can easily be shared. I am in contact with autodesk about recap. They promised me that soon they will have an API to do this kind of automation. So the entire process can be set in motion by just a single click and (after a wait) get a full 3d model :-)
      <p>Hi anykey...fantastic project!!!</p><p>I want to do anything similar but have many problems....</p><p>im really stupid with programing.....</p><p>i have not much money for this project so im thinking forst at 2 pole with 6 pi each and a rotary platform... can do many shoots, 15 or 20 grade ...</p><p>Would like if you could help me to control the ip cameras...dont have the code and really dont know how need do...</p><p>I would like recibe any more info about your project, think that now you will have at leat 80 or 100 ip cameras working!!!!</p><p>Best regards</p><p>fernando</p><p>info@armadillotaller.com</p>
      <p>Awesome contribution. Is the code on github at all? Would love to take a peak!</p>
      <p>Really excellent quality of the 3d model. Could you also share one set of pictures from one session. Would be interesting to see the single photos and i would like to test them with my SW Agisoft Photscan. I am doing something similar with small objects. For this i have made a turntable which is triggering my Canon DSLR. With just 15-20 pictures i get pretty good results. Would be great if you could share some pictures to see how it works with Agisoft and how much effort i need to spend to get good results. Thanks for sharing !!! </p>
      <p>I am trying to create a rig like this for creating game characters, I would also like to get a hold of some of these images to test in Agisoft Photoscan as well. We are currently working with one camera and a turntable but the movement makes its almost impossible to get a good looking mesh.</p>
      <p>Hi Richard,</p><p>This is great work. I am trying to build such a rig. What was the resolution for the raspberry pi cameras? Did you use the standard 5mp camera boards that are available? Is 5mp enough resolution for a whole body scan? If you used a better resolution camera, how to build\get that board for raspberry pi? I would appreciate your help regarding this. Thanks in advance.</p><p>Regards,</p><p>Vinod</p>
      <p>Hi Richard, <br>High Five, this is a great project you've put together. If things fall into to place I will be building something with your concept and have a cracking budget. Would you share the distance your cameras ended up from the subject and if you experimented with different distances from initial to your Version2? I would be looking at doing full body length scans, how important do you believe the different angles on different camera sharing the same vertical plane? I noticed you dropped the arc in V2. <br>I imagine angled would assist the software calculate 3D depth somewhat more than just multiple rings of cameras facing directly inward? <br>Im less than 24hrs into my research (triggered by my father in law request :)) Do you recommend any where in particular I can research the topic also read about high end systems I imagine are used with a Hollywood budget? (Ive noticed the Ten24 link provided by another commenter)</p><p>I am thinking I would trigger the script from a mobile webpage sitting on my qnap (with maybe a sleep and photo directory count with display feedback afterward) or even a use a Nintendo Wii remote?</p><p>Kind Regards, <br><br>Chris <br>ps Ive kindly inboxed you a request for your scripts (reading instrutables website modifies them)</p>
      <p>Hi Richard,<br>High Five, this is a great project you've put <br>together. If things fall into to place I will be building something with <br> your concept and have a cracking budget. Would you share the distance <br> your cameras ended up from the subject and if you experimented with <br>different distances from initial to your Version2? I would be looking <br>at doing full body length scans, how important do you believe the <br>different angles on different camera sharing the same vertical plane? I <br> noticed you dropped the arc in V2.<br> I imagine angled would assist <br>the software calculate 3D depth somewhat more than just multiple rings <br>of cameras facing directly inward?<br>Im less than 24hrs into my <br>research (triggered by my father in law request :)) Do you recommend <br>any where in particular I can research the topic also read about high <br>end systems I imagine are used with a Hollywood budget? (Ive noticed <br>the Ten24 link provided by another commenter) </p><p><br>I am thinking I <br> would trigger the script from a mobile webpage sitting on my qnap <br>(with maybe a sleep and photo directory count with display feedback <br>afterward) or even a use a Nintendo Wii remote?<br><br><br>Kind Regards,<br>Chris<br>ps Ive kindly inboxed you a request for your scripts (reading instrutables website modifies them)</p>
      <p>Hi Richard,<br>High Five, this is a great project you've put together. If things fall into to place I will be building something with your concept and have a cracking budget. Would you share the distance your cameras ended up from the subject and if you experimented with different distances from initial to your Version2? I would be looking at doing full body length scans, how important do you believe the different angles on different camera sharing the same vertical plane? I noticed you dropped the arc in V2.<br> I imagine angled would assist the software calculate 3D depth somewhat more than just multiple rings of cameras facing directly inward?<br>Im less than 24hrs into my research (triggered by my father in law request :)) Do you recommend any where in particular I can research the topic also read about high end systems I imagine are used with a Hollywood budget? (Ive noticed the Ten24 link provided by another commenter)</p><p><br>I am thinking I would trigger the script from a mobile webpage sitting on my qnap (with maybe a sleep and photo directory count with disply feedback afterward) or even a use a Nintendo Wii remote?<br><br><br>Kind Regards,<br>Chris<br>ps Ive kindly inboxed you a request for your scripts (reading instrutables website modifies them)</p>

      About This Instructable

      239,793views

      1,011favorites

      License:

      Bio: Hi, I am Richard, Father of 1 son + 2 step sons, so we have a house full of Lego. I have had lego for decades ... More »
      More by the_anykey:Russian Alphabet PuzzleFunny Stackable PeopleMultiple Raspberry PI 3D Scanner
      Add instructable to: