Introduction: 3-D Laser Scanner

Picture of 3-D Laser Scanner

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

Step 1: Position Camera, Laser, and Cylindrical Lens

Picture of 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

Picture of 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!

Picture of 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

Picture of 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.


zubaira22 (author)2016-03-10

i was
just browsing along and came upon your blog. just wanted to say good blog and
this article really helped me.<a
href="">hcg injections</a>

Sunshine boy (author)2016-02-24


FedericoA (author)2015-05-24

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.

vuongbk92 (author)2015-04-14


Why ? I use webcam with laser red ? Not action ?

help me ?

mehranzaryoun65 (author)2015-04-06

My email:

mehranzaryoun65 (author)2015-04-06

Could anyone seemed me the matlab script?

zabi74hashmi (author)2015-02-22

We are a bunch of volunteers and opening a brand new scheme in our community.

Your website offered us with helpful info to work on. You’ve done an impressive job
and our entire community will probably be grateful to you.


thans for shear

God bless you

raminder.bhatia.3 made it! (author)2015-01-23

Check our Site for more examples !

raminder.bhatia.3 made it! (author)2015-01-23

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 Site has examples of some more advanced stuff. Thanks !

Pustekuchen (author)2014-06-03

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.

I scanned a ball and it is looking like this. And I don't know what I did wrong.

Pustekuchen (author)Pustekuchen2014-06-03

also the focal length is not used in the matlab code

rvillamil (author)2010-09-27

Hi everyone, this is really cool, I have used David-laserscan and it pretty sweet.
Does anyone know how to scan big Objects, does it need Calibration patterns?
Does anyone know how to scan by moving camera and laser, for example scanning big objects.


write back!

DoctorV (author)rvillamil2014-05-11

Hey, did you ever figure out how to make a 3D scan with a moving camera and laser?

rimar2000 (author)2014-02-21

This is awesome.

xNerdiusMaximusx (author)2013-01-30

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.

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.

Thanks for your contributions and sharing your great work.

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 ??

Kais Kermani (author)2013-07-16

Really nice

DoctorWoo (author)2013-03-09

Sorry if this was asked before, but what diameter rod are you using for the linear laser trick?

le Cauchemar (author)2010-08-03

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

Jeong-Tae (author)le Cauchemar2012-08-01

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.

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.

Please help :)

Thanking you in advance,

araian (author)2012-04-22

this is really cool

pierceRom (author)2012-02-04

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 =)

Jar Sqwuid (author)2011-12-12

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

ddalleinne (author)2011-12-12

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...!!!

im3733 (author)ddalleinne2011-12-12

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.

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.

im3733 (author)im37332011-12-12

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.

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.

Of course, if your printer is polar, then you have nothing to worry about.

Moo_cow (author)2011-03-05

Could you just use a laser level since it already makes the beam a vertical line, or does it have to be green?

ddalleinne (author)Moo_cow2011-12-12

web cams have 50% of the sensors green 25% red 25 % 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.

roguebard1 (author)2011-09-22

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.

regijin (author)2011-09-20

very very ineresting ,how to make it?

bears0 (author)2011-08-23

EVERYONE, if you want software that does this, go here:

eng_iezzat (author)2011-08-18

thanks very ineresting
please send matlab code my email

ampeyro (author)2011-08-17

do you know of any alternative software?
i don't find the link to the one from matlab(and it lso looks so old and complicated)

yangjun1222 (author)2011-08-04

Could u pls give more calculation methods on this project? i.e some principles
behands, it is not easy for me

rohanbd (author)2011-05-03

somebody plz send me the code or matlab script at

Arulsoban (author)2011-04-28

Buddy can u please send me to?
mail address :

ILOV E_CLASSBELLE (author)2011-04-16

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!
many,many,many,many,many,many thanks!

mayhy006 (author)2011-04-07

can anyone send me the matlab code or c++ code for 3D laser scanner?

mayhy006 (author)2011-04-07

Hi Grcan, I am so interesting about you project, can you e - mail me your matlab code?
Thank you

congnguyen13 (author)2011-03-27

I don't know which software is used?

congnguyen13 (author)2011-03-27

send it to me, please! My e-mail:
thanks a lot!

v.navaneethakannan (author)2011-03-12

I couldn able to download the script...Kindly help me out pls

ronibar02 (author)2011-01-06

Hi Argon,
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.
Can you help with that?

greenjedi (author)ronibar022011-02-08

Maybe you could make a mold of the foot and then scan the mold?

grcan (author)2011-01-19

When I use this script in Matlab, to give message "Undefined function or variable 'laserColor"
How can I use tihs script ? Thanks

v.navaneethakannan (author)2010-11-15

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..

tanmaysane (author)2010-10-31

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?

rvillamil (author)2010-09-30

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.

thank you

tinkerman92 (author)2010-08-30

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

About This Instructable




More by argon:Installing a new water pump on a '95 Ford TaurusBurning visible images onto CD-Rs with data (beta)Two-speed bike without a gear shifter
Add instructable to: