3D scanner with remarkable resolution

diy-3d-scanner

Modeling simple objects in 3D can take some time. Modeling complex items… well you can get your college degree in that sort of thing. This method side-steps the artistic skill necessary to make the real virtual by using a laser and camera to map a three-dimensional object.

[Alessandro Grossi] is breaking the rules by using a 100mW laser for the project. He thinks that the Italian government prohibits anything over 5mW, but also mentions that the lens used to turn the laser dot into a vertical line drops the power dramatically. The beefy diode does still pay off, providing an incredibly intense line of light on the subject being mapped. The high-end DSLR camera mounted on the same arm as the laser captures a detailed image, which can be processed to dump everything other than the laser line itself. Because the two are mounted on different axes, the image provides plenty of perspective.  That translates to the 3D coordinates used in the captured model shown in the inlaid image.

We’ve seen 3D scanners that move the subject; they usually rotate it to map every side. This method only captures one side, but the stepper motor moves in such small increments that the final resolution is astounding. See for yourself in the video after the break.

Comments

  1. samimy says:

    Awesome work, !
    please upload more videos about this project :)

  2. Dax says:

    That camera is going to fall apart mechanically before long. To get roughly 1/10th millimeter accuracy, it takes about an hour to shoot 3600 photos at one frame per second to scan in a foot long object. Suppose the camera shutter lasts 500,000 shots – then the lifetime of the scanner is on the order of 150 objects.

    • Dax says:

      Google says the D7000 shutter lifetime expectancy is 150,000 shots, which gives it a lifetime of just 42 scans.

      And that’s why it’s not a very smart thing to use a reflex camera in a 3D scanner.

      • George Johnson says:

        “Should” be able to use the camera (or one like it) in video mode, live imaging, and just use software to “snap an image”. Just grab a single frame, process it, then get the next frame. I don’t really see any reason you would even need a shutter, other than activating the software in the camera to “take a photo”.

        • Alessandro says:

          typical resolution of a video is at max 1920×1080 pixel (DH). My matlab script with minor modification could use .mov file from the same d7000 camera. but the resolution of the photos is higher, and the precision of Zeta calculation depends on image resolution. tip: The new go pro 3d take 12 pictures per second at 12 Mp ……

      • draeath says:

        You may need something like Magic Lantern to enable it, but reflex digital cameras are able to lock the mirror up and bypass the shutter mechanism entirely, driving the sensor like a cell phone camera.

        • beautifulsmall says:

          You used the best caera you had for the test. It has proved the method, just need to synchronize the jpegs with the laser. how about the RPi, with new 5MP camera.
          I took 1800 shots of a fly with a 450D on a jig with two rotational axis for the fly and z-axis for focal depth . but then I stacked the depth for total focus and animated the rotations into an mpeg ,

  3. squeeky says:

    I like that no components were destroyed in putting all this together.

    Any idea how many pictures it takes per scan? – The cameras only have a limited shutter life, but it can be in the 30k (if you are unlucky!) to a couple 100k mark, but it might be an issue if you scan a lot of items, over the years….

    Also, is the whole lot balanced on a single stepper motor, which is sat on the edge of a table? That would end up sprawled across the floor in minutes at my house.

  4. Alessandro says:

    Hi Dax, yes your are right. at the moment I take about 600 photos for each mesh. at 2.6 seconds per photos it’s about alf an hour. ad, yes. the shutter of a SLR has an estimated life of about 200-500000 click. This will not be a real scanner, but simply a proof of concept or a joke…. :-)

  5. randomdude says:

    12800 steps from a step motor?? they typically have 200 steps per rev

    how did he achieve that ??

  6. Rich C says:

    What happens when you scan a disco ball? Do objects have to have a minimum level of specularity and albedo before they’ll scan accurately with this type of scanner?

  7. Alessandro says:

    randomdude,

    I used this stepper motor simply because…. I found it in a drawer.. :-) A motor with a gearbox (like the one you are talking about) is much more precise.

  8. Chris C. says:

    I know this is just a fun experiment. Just for fun, I wonder if:

    1) Supporting (possibly unbalanced) weight in this fashion is bad for the stepper bearings.
    2) The accuracy is limited by the camera resolution, or the laser line width. Probably the latter, the line seems a bit fat for what’s surely a very high-res camera.
    3) The camera’s depth of focus at this close range is sufficient, or whether it’s blurring the line across a range of depths. Can this be corrected in software, or would a high-res pinhole camera be better?

    And just for fun, I’d be interested in hearing any comments on these.

    • Squirrel says:

      1) I’d agree with that
      2) That may be correctable somewhat in software (averaging the width of the line or something) Otherwise, some block with a small slit cut out of it may do the trick (or maybe polarizers or something. Optics has never been a strong point for me)

  9. Alessandro says:

    1) – yes is bad … for this reason I’ve tried to put the motor axle in the center of mass.
    2) it’s hard to say. accuracy depends on: resolution, arm vibration, laser line width, surface scattering, lens aberration and deformation, but in my experience, in this set up, full resolution images give better accuracy than HD video.
    3) depth of field is a problem…i use f11, but a pin hole could be better (at least for the fixed focal distance, absence of aberration and deformation)

  10. Gert says:

    Awesome work! The detail of that final meshed result is ridiculous…

  11. Hack Man says:

    Looks like a Nextengine scan.

  12. h_2_o says:

    as mentioned above the gopro hd hero 3, it does cinema4k (at slow framerate 12fps) but at a resolution of 3840×2160 it might be a good alternative in-between images and 1080 hd video

  13. steve says:

    there was a company a while back that sold a kit to do this called divinci, but they used a web cam instead.and rotated the item being scanned.

  14. HC says:

    Am I wrong in saying there’s no point in using a high-end camera for this type of project? Aside from the mechanical wear and tear, that is. The biggest performance differences between a multi hundred dollar camera and the one in your cell phone are things like noise, light sensitivity, color accuracy, interchangeable lenses, dynamic range, etc,….which all mean exactly dick when it comes to 3D scanning. A smartphone with an eight megapixel sensor located closer to the object would be far, far more appropriate than that DSLR.

    • Alessandro says:

      are you able to set exposure on a cell phone cam? at ISO 100 and f2.8 (cell phone cam are aperture fixed) you need a 1/4000. and then you need to build an app to sincronize cell to arm rotation. It will be great if an iphone could be used in a scanner! but I’cannot find the way to set the exposure.

  15. Are you able to take the images directly from the camera into the computer as the scans are happening, or are you just collecting the individual images in the camera’s on-board media to be downloaded and processed after the fact.

    I would love to build an automated large-format book scanner using a pair of 16 MP still cameras, but I don’t know how to shop for cameras that have the capability of being used as high-res web cameras, as opposed to throw-backs that have to be triggered independent of the computer and content downloaded manually.

  16. Truth says:

    Wow, never knew that shining a point laser through a Cylinder Lens would yield a line. That is one of the reasons I love HaD – you always learn something new.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s