Create your own super hi-tech 3-D laser scanner. Using just a laser pointer, wine glass, rotating platform, and a digital video camera, you can make accurate 3-D models of an object or person.

Now on Know How! Click on the steps above for more details.

Do you like this Instructable? Then check out episodes one, two, four, five, six, and
seven!

## Step 1: Position Camera, Laser, and Cylindrical Lens

Align the laser so that its beam passes through the cylindrical lens, creating a vertical line rather than a point, and projects onto your target. Initially, the lens was the stem of a wine glass, but in this picture I use a cylindrical piece of acrylic. Position the video camera at a small angle (~15 degrees) from the laser.

## Step 2: Position Target on Rotating Platform

Create a platform which rotates at a constant angular velocity. Record players, for example, are perfect for small objects. Position your target at the center of rotation. And make sure your target closes her eyes!

## Step 3: Lights, Camera, Action!

Turn off the lights. To make the image processing easier, it's very helpful to get the room as dark as possible so that only the reflected laser light is visible. Rotate your target at a constant angular velocity. Record the video. Notice how protruding features displace the laser line.

## Step 4: Process the Video

Convert the video to an avi. Use an edge detection algorithm to find the location of the laser line. Reconstruct your 3-D model. I've included an early, uncommented MATLAB script, which was used to generate this image.
<p><br> <br>i was<br> just browsing along and came upon your blog. just wanted to say good blog and<br> this article really helped me.&lt;a<br> href=&quot;http://tolehousecrafts.com/&quot;&gt;hcg injections&lt;/a&gt;</p>
<p>Good!</p>
<p>hello how do use the program ?, I refer to the arguments of the program. It is that I get errors . Could give an example. Thank you.</p>
<p>Hi,</p><p>Why ? I use webcam with laser red ? Not action ?</p><p>help me ?</p>
My email: mehran.zaryoun65@gmail.com
Could anyone seemed me the matlab script?
<p>We are a bunch of volunteers and opening a brand new scheme in our community.</p><p>Your website offered us with helpful info to work on. You&rsquo;ve done an impressive job<br>and our entire community will probably be grateful to you.</p><p><a href="http://crackwindows.com/" rel="nofollow">crackwindows</a></p><p>thans for shear</p><p>God bless you</p>
<p>Check our <a href="http://applications3d.com" rel="nofollow">Site</a> for more examples !</p>
<p>Very nice! Thanks for sharing. While we do industrial grade 3d scanning services, the machines are prohibitively expensive. This seems to be a nice setup that can be affordably used to scan objects that do not require high accuracy or resolution. Our <a href="http://applications3d.com" rel="nofollow">Site</a> has examples of some more advanced stuff. Thanks !</p>
<p>Is the distance between Laser and Camera important? Which one is used here? Because I tried it and the resulting 3-D scan is wrong and I am looking for the reason. </p><p>I scanned a ball and it is looking like this. And I don't know what I did wrong.</p>
<p>also the focal length is not used in the matlab code</p>
Hi everyone, this is really cool, I have used David-laserscan and it pretty sweet.<br>Does anyone know how to scan big Objects, does it need Calibration patterns?<br>Does anyone know how to scan by moving camera and laser, for example scanning big objects.<br><br>Thanks!<br><br>write back!
<p>Hey, did you ever figure out how to make a 3D scan with a moving camera and laser?</p>
<p>This is awesome.</p>
This is truly the post that inspired me to play around with laser scanning. I've been working implementing a DAVID laser scanner setup and I'm going to motorize the stage and laser with Arduino. <br> <br>Is there a sample AVI file you could upload to run through with the MATLAB code to get a better feel for how the code works with the proper setup? I'm looking to gain a better command of MATLAB but in the mean time, it would be helpful to have the ability to poke around with the code without having to setup the laser/video cam. <br> <br>Thanks for your contributions and sharing your great work.
<p>Hi<br>Could you be so kind to direct me to a place where i can aquire a sketch for Arduino, to control the motors for the laser ??</p>
Really nice
Sorry if this was asked before, but what diameter rod are you using for the linear laser trick?
Nice idea, just had to make my own :) The focus for me was on writing the software by myself, which took some hours ^^ Here you can see my first try with a paper ship :D
It`s awesome! Now I`m doing to make own 3d scanner using laser. But It`s very hard to me. Can you give me Matlab source? I want to learn How to programming for my 3d scanner system. please. <br> <br> Thank you
Hey hi, you paper boat model is really cool. Can you please give me your MATLAB code. I want to try this real nice 3D modeling experiment but do not have enough knowledge to write a code in MATLAB. <br> <br>Please help :) <br> <br>Thanking you in advance,
this is really cool
First off , Thank you so much for that awesome instructable !! Second i was wondering in Step 4, you said to use an edge detection algorithmn to find the location of the laser line and reconstruct to a 3D model. How exactly did you do that and is there a matlab code for it too ??Any help would be much appreciated !! Thank you soo much =)
I don't suppose there's a version available for mac xD Oh well. Project for when I get home. Does it matter what color the laser light is? I imagine it is possible to get the entire head with a full rotation, given the hair is tied up nice and tight. Also, do very sharp and sudden protrusions interfere with the interpretation? Say... the scythe arm of a tyranid model lol
ive been researching this quite a bit..but i am stil wondering if u can rotate the object your scanning while keeping the laser and cam in the same place ,while useing the david scanning software....ive got a blue line adjustable focus laser and a monochrome cam on order, and wondering if i should be building a turntable setup.....i want to put it into the ultimaker clone im building so u can scan and print in the same box...!!!<br>
In theory, this would work regardless of which item was doing the actual rotating, so long as the direction is correct according to what the software is looking for.<br><br>After all, rotation is completely relative, without a static reference point, (which this does not have/use) there is no way to tell which item is rotating. Hence the reason the universe was once thought to be geocentric, there was no reference point to know what orbited what.
After rereading your post, I think you might run into some issues with the polar to Cartesian plane conversions, unless you plan to clean up the model manually between the scan and print functions.<br><br>Also, if you plan to scan in the same place you print, you would probably need a pretty sophisticated printing/scanning bed for it to support both Cartesian movement and polar rotation.<br><br>Of course, if your printer is polar, then you have nothing to worry about.
Could you just use a laser level since it already makes the beam a vertical line, or does it have to be green?
web cams have 50% of the sensors green 25% red 25 % blue....so green gets you more pixels...but your best bet is a monochrome cam and a blue laser (due to extreemly thin line compared to red or green). ive seen scans of the surface of a penny with that kind of setup and the david software , that were incredible.
The link for the executable software on the Know How Show site is either not there anymore or gone completely. Could we get a link for that file placed in the comments section here or a link for another good 3D Scanner software? Thanks.
very very ineresting ,how to make it?
EVERYONE, if you want software that does this, go here: http://www.david-laserscanner.com/
thanks very ineresting <br>please send matlab code my email <br>eng_iezzat@hotmail.com
do you know of any alternative software? <br>i don't find the link to the one from matlab(and it lso looks so old and complicated)
Could u pls give more calculation methods on this project? i.e some principles <br>behands, it is not easy for me
somebody plz send me the code or matlab script at rohan.cse08@gmail.com
Can anyone do some sweet things to me ?I have searching on the net over 30 hours.I am from China,maybe you have hear it before,reading in English is rather hard for me.So i sincerely hope anyone to send the C++ code for 3D leaser scanner to me! <br>843296985@qq.com <br>many,many,many,many,many,many thanks!
can anyone send me the matlab code or c++ code for 3D laser scanner? <br>mayhy006@gmail.com <br>thanks
I don't know which software is used?<br>
Hi Argon,<br> I am looking for a scanner for scanning the bottom of the foot, and use the digital data to carve insoles with a cnc system.<br> Can you help with that?<br>
Maybe you could make a mold of the foot and then scan the mold?
When I use this script in Matlab, to give message &quot;Undefined function or variable 'laserColor&quot; <br>How can I use tihs script ? Thanks
Fabulous work! I am involved in creating a low cost 3D scanner for physically challenged ( bio medical application ) can some guys help me out in carrying out..please..
Itz indeed an awesome concept.I am trying to make such a scanner myself.cud u plz help me wid the basic matlab source code. As in from where can I download the matlab code?<br>
Hi I know very little of MATLAB but I want to know if you could explain me how to use it. How do I call the function that throws me the 3D image of my scan.<br><br>thank you
if u wanna save the trouble of building a rig to make a line of the laser u can simple buy a lined laser diode like this 1 here&nbsp;<a href="http://www.dinodirect.com/red-laser-module-focused-line-5mw/AFFID-15.html" rel="nofollow">http://www.dinodirect.com/red-laser-module-focused-line-5mw/AFFID-15.html</a>