Vous êtes sur la page 1sur 11

technology workshop living food play outside

123D Scanner - Home made 3D Scanner


by wavegm on October 7, 2012

Table of Contents

123D Scanner - Home made 3D Scanner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

Intro: 123D Scanner - Home made 3D Scanner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

Step 1: Operation principle (can be skipped) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

Step 2: The chassis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

Step 3: The scanning surface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

Step 4: The rotating arm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

Step 5: Scanner assembly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

Step 6: Arduino controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

Step 7: Operation sequance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

Step 8: Wall painting robot - check my new creation @ http://www.keerbot.com . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

Related Instructables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

Advertisements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

http://www.instructables.com/id/123D-Scanner-Home-made-3D-Scanner/
Intro: 123D Scanner - Home made 3D Scanner
Hey - have a look at my new project HERE

In this project I built a 3D Scanner, that enables generating 3D models of physical objects.

The files can later be viewed in 3D software (GLC Player, Sketchup, Rhino, or sites such as http://3dfile.io)
and even manipulated into .STL file and 3D printed.

The software for this project is completely free, I am using Autodesk's 123D catch, Link:123D catch
The 123D Catch is a great software, it requires taking many photos of an object all around it, and uploading it into the software, and it returns a 3D file.

Since I really liked the solution but did not wanted to take the photos myself - I built an instrument that does that -
description hence.

Please note that this document does not intend to explain how to use 123D catch (this can be found here )

A really nice scan can be seen interactively here:

Step 1: Operation principle (can be skipped)


(This part can be skipped, it explains the logics behind the structure, The scanner will wok without this part...)

The design of the scanner is quite simple, and consists of 3 main parts:

1. Scanner chassis and stage


2. Scanner arm (carries the camera)
3. Scanning surface

Each parts has it roles -

1. The chassis - this is the part that sits on the table and carries the scanning Surface and the scanned object on it
2. Scanner arm - The arm has the camera in the end of it, and a servo motor that presses on the button and take all of the pictures, the arm rotates around the
scanning surface and takes pictures every few degrees. Pay attention that there's a weight to balance the own weight of the camera (*)
3. Scanning surface - a round board, with colored stripes on it, carries the scanned object. (**)

(*) The reason that the arm rotates around the object instead turning the object around is in purpose to make the stitching algorithm work easier, since if the object
rotates, and the surrounding stays the same, the software work becomes complicated and the model doesnt work so well, environment -same as light sources shadows
and all. (I did built one model with turned stage but the results were awful)
(**) The color stripes on the base are also in purpose to help the stitching algorithm - the help (colors, number of lines, orientation) to stitch.

http://www.instructables.com/id/123D-Scanner-Home-made-3D-Scanner/
Step 2: The chassis
The chassis is built from MicroRax (Link ) profiles and parts, which is very easy to use and enables the arm to rotate almost 360 degreed around the object, it also host
the rotation Servo (Full rotation servo - SpringRC SM4303)
It's base is approx rectangular 30x30 [cm]

Step 3: The scanning surface


Made of cardboard, round, placed on the top of the chassis and carries the scanned object, colored stripes are painted on the cardboard (see step 1) approximate

http://www.instructables.com/id/123D-Scanner-Home-made-3D-Scanner/
Step 4: The rotating arm
The role of the arms is to carry the camera and rotate it around the scanned object, it has 3 main components:

Camera (Nikon Coolpix L10), any camera will do as long as its optical features can take photos in approx 10[cm] otherwise the pictures will become blurred and
the 3D model will not be able to built.
Small servo - that pushes the camera button, (any DX.com servo will work) I thought of hacking into the camera, but since it is my wife's - i didn't to it...
Balancer - Metal block that balances the own weight of the camera and the servo and maintain the center of gravity on the axis of the rotation servo

http://www.instructables.com/id/123D-Scanner-Home-made-3D-Scanner/
Step 5: Scanner assembly
Hardware assembly:
This is quite straight forward, assemble the parts as seen in the pictures, ensure that the wires are long enuogh and will not get stuck during operation.

Step 6: Arduino controller


This Step will describe the Arduino setup:

Wiring - As can be seen in the figure - the two servos are connected to the Arduino, They are NOT similar, The full rotation servo (connected to Digital pin 3) is
controlled thru PWM protocol, while the button servo is controlled with Servo object.
Arduino sketch - attached, please pay attention to the delays and their remarks.

----------------
#include <Servo.h>
Servo servo1;
int analogPin = 3;
int pos = 0;

void setup()
{
pinMode(analogPin, OUTPUT); // sets the pin as output

servo1.attach(9);

void loop()
{
for ( int i=1; i<30; i++){ // Rotation clockwise in small steps
analogWrite(analogPin, 125); //rotate
delay(300); // rotation duration
http://www.instructables.com/id/123D-Scanner-Home-made-3D-Scanner/
analogWrite(analogPin, 0); // stop rotation
// Camera servo
delay(1500); //vibration stop
for(pos = 0; pos < 100; pos += 1)
{
servo1.write(pos);
delay(5);
}
delay(3000); //camera shooting time
servo1.write(0);

delay(500); // delay for camera


}
delay(2000);
analogWrite(analogPin, 200); // rotation back to start
delay(1200);
analogWrite(analogPin, 0); // Moving Counter Clockwise
delay(3000);
}

Step 7: Operation sequance


OK,
Now you have everything in place - make sure you have Autodesk 123D catch installed and a login ready.

Put an object to scan on the surface.


Turn on the electricity to the controller. (USB/Direct 5V supply)
Wait until the camera finishes a complete circle.
Turn off electricity.
Extract the acquired photos from the camera (USB/ SD card).
Upload the images into the 123D catch
Get the 3D model

http://www.instructables.com/id/123D-Scanner-Home-made-3D-Scanner/
Step 8: Wall painting robot - check my new creation @ http://www.keerbot.com
Wall painting robot - check my new creation @ http://www.keerbot.com

Related Instructables

Wall drawing
robot - Open Drawbot 1.0
$100 Mural Arduino Learn to Grafitti
Source ! RC Submarine (Photos) by
(KeerBot.com) drawing robot Drawbot by Easy by
(also works as a Hack - Android carolineverellen
(Photos) by controller biomech75 BalintRules
giant etch-a-
wavegm (Arduino,
sketch) by Android,
aggrav8d Submarine,
Bluetooth) by
wavegm

Advertisements

Comments
44 comments Add Comment

R A Shah says: Oct 11, 2014. 11:01 PM REPLY


I believe it is a good idea to rotate the platform rather than moving the camera. It is more accurate and there are less chances of camera shakes spoiling the
final scan.

marios8543 says: Aug 10, 2014. 8:41 AM REPLY


No offense but why don't you just make the stage rotate :/ I mean it's a lot easier this way.

wavegm says: Aug 10, 2014. 11:27 PM REPLY


Hi,

No offense of course - read below for your answer,

BTW - have a look at KeerBot com for additional projects.

stuffdone says: Mar 7, 2014. 8:32 AM REPLY


Most video editing software can output a series of stills from a video. Why not just make a turntable, mount video camera and turn it 360 degrees to capture
video then extract the stills from that? No complicated electronics, just a simple turn table and video cam. For quality I have a Fuji SLR that can connect to
my PC so I have optical zoom, macro etc.

I have not tried this because I just now read this article and this is what came to mind. If someone tries this before I get the chance, please post results here.

Us lazy people make the best inventors...we always look for an easier way !

stuffdone says: Mar 7, 2014. 8:33 AM REPLY


Another thought. It would not be hard to use a lazy susan bearing to make a table that could support a person. With the simpler video method you could
do whole body scans perhaps!

stuffdone says: Mar 7, 2014. 8:36 AM REPLY


Ok...more thoughts. Video at 1 FPS ( time laps setting ), turn table once in 20 seconds. Export frames for 20 frames per 360 degree revolution.
Experiment with different frame rates and RPM of table or course.

alluvian says: Jan 29, 2014. 11:49 AM REPLY


Love the idea, and it seems to produce pretty good results. I am torn about using catch or a laser scan solution. I probably want both, as I plan to tinker in
games and 3d printing. Catch will give better game models since they are wonderfully textured, but I think laser solutions give better mesh/point clouds.

For lasers I would suggest looking into the moedls app for iphone, this thing looks amazing. www.moedls.com too bad the kickstarter failed. The system
uses a green line laser and takes a video of the subject turning on a turntable.

I also love your idea to automate catch. In my head the rig I see is two rings of diffused led lights affixed to a turntable, and then rotate the object and the
turntable with the lights in a dark room or cover the thing in a box maybe during the day? This is effectively MORE complex than your solution, but it sounds
like a fun build to me. Reality states I will never get around to doing this though, heh. Just having the lights on the turntable in the darkness would speed up
the picture taking process immensely though.

Has anyone tried 123d catch with NO shadows on an object? Does it need shadows to function correctly?

http://www.instructables.com/id/123D-Scanner-Home-made-3D-Scanner/
Nyxius says: Sep 5, 2013. 4:59 AM REPLY
Wouldn't it have been simpler to keep the camera stationary and to rotate the platform?

Armagedoom says: Sep 19, 2013. 2:41 PM REPLY


+1

DanW13 says: Sep 10, 2013. 12:47 PM REPLY


Very Cool, I wish I was smart enough to build on, I'm not a Tech Geek kind of Guy but it would take me months & lots of Q & A before I'd get to having a fully
functional 3D scanner…I seen Scanners like this on line sell for $1,000's. Your cost was I'm sure far cheaper maybe a few $100 ? Nice Work.

soilwork says: Apr 8, 2013. 8:18 AM REPLY


the output can be used for a 3d print or cnc job?

wavegm says: Apr 9, 2013. 2:14 AM REPLY


You can export an OBJ file or STL
But you still need to make the corrections.

CrazeUK says: Mar 30, 2013. 7:38 AM REPLY


Hi, i am totally new to this. And thinking of trying your project.

Although i am thinking why not use a webcam? They are quite high quality, and because of the small field of view, it wouldn't need a high MP count?

Additionally, you can totally disassemble it, and only have the actual lens and sensor mounted greatly reducing the weight?

wavegm says: Mar 30, 2013. 9:51 AM REPLY


I did buy a webcam to try and do it - It might have been even better for the images to be on the hard drive instead of on the SD.
The thing is that the webcam wasn't so good - they dont have OPTICAL ZOOM that according to what i found out is the most important part.
the MegaPixel number doesn't matter much (i bought 5 MP webcam by HP that gave bad results and I used 2.3 MP fuji that gave good results) Now I
use Lumix FX90 which is better for many reasons.

Share what you manage to do!

rlaganson1 says: Nov 24, 2012. 5:52 PM REPLY


Does it matter where the lines go?

wavegm says: Feb 28, 2013. 1:25 AM REPLY


Anything new?

Have a look at http://www.keerbot.com

wavegm says: Nov 24, 2012. 11:34 PM REPLY


Nope -
I think that small number of straight lines, colored,
will do the job
(what you do here is "helping" the stitching algorithm)

Do you build it ? I awnt to see !

3D_Laserfreak says: Oct 14, 2012. 7:21 AM REPLY


This website (Wiki) is in German but you will get the picture ;)
http://wiki.fablab-muenchen.de/display/WIKI/3D+Scanner+Wissen+-+Scannen+mit+Autodesk+123D+Catch
Use translate.google if you need it.
It explains how set up a platform to rotate an object and get succesful results.
The secret is to have enough reference point on the objects mat as 123 uses them to align the pictures.
For my old setup I used some Lego blocks, and other stuff for reference but any good pattern should do.
At 3Dsom you can see a similar system used.

rondust says: Oct 11, 2012. 11:58 AM REPLY


I appologise in advance.

Why dont you just use an old record turn table??


Remove anything you do not need from it, centre pin, arm etc.
Mark out lines on cardboard and put onto turn table plater, mark the sides of the plater for consistant positions and put an alignment reference on the base
as well..
Mount the camera in a fixed position, if you used a socket for the arm mount it could be unhooked and packed flat. No wobbles and rigid.

Put item on plater, manually take picture, manually turn to next position and aligh marks, take picture etc etc until done.

Cheap, compact, faster.

http://www.instructables.com/id/123D-Scanner-Home-made-3D-Scanner/
wavegm says: Oct 11, 2012. 1:45 PM REPLY
please read the remarks

rondust says: Oct 11, 2012. 3:14 PM REPLY


I appreciate that if you dont pay attention to it, the lighting would be poor and yes shadows would affect the final product. I assume that would be one
of those "get it right" thoughts when setting up.
A reflective bottom and side surface and good lighting would fix that easy and still be table top.

However if the idea was to ALSO capture the change of background as a movement and/or lighting from a particular direction casting shodows of the
object, then you need to construct a supporting ring or surface with bearings to fix the wobbles on the camera, the bearings need to be set apart on
the rail or surface and use a triangular frame to raise the camera - no wobbles and huge range of adjustment for camera down angle from bottom to
top of the support triangle.
You could even tilt the top of the triangle support towards the object or away for other effects, and even use a servo motor to move the camera up
and down while taking images.

My assumtion was that an item would be well lit from all angles to get the clearest image of it in 3D rotation - easier done by rotating the item infront
of excellent lighting all around the item.

I did appologise in advance.


Please dont think I am putting your project down, your method has great merits for particular effects.

mnpazan says: Oct 12, 2012. 5:50 PM REPLY


My understanding (from reading the stuff on the 123D Catch website), is that the shadows/lighting on the object are a part of how the software
reads surface topography. The shadows/lights need to be consistent relative to the subject across the photo set, or else it gets confused and
reads the topography incorrectly. Hence why the author's experiments with rotating the subject instead of the camera gave bad results.

If that's the case, it wouldn't be enough to rotate the subject under good lighting, you'd also have to rotate the lights in sync with the subject. That
means either affixing small lights to the turntable (easy, but probably not the best kind of lighting for this), or putting your studio lights on computer
controlled motorized circular dolly tracks (completely impractical).

The fact that the process can work using hand held camera (as per the demos on the 123D Catch site) means you don't really need to worry
quite that much about stability with your camera rig. As long as the pictures are sharp and the distance & focal length constant, you probably get
more than enough precision for an accurate model. I'd guess that a little bit of camera wobble between frames probably won't make an
appreciable difference, otherwise handheld would be completely useless.

That said, some kind of sliding mount on the vertical bar of the camera arm so you can take additional series from other elevations would
definitely be good. and a circular bearing or track would be better for getting true 360 degree coverage (this rig only gets maybe 330 because the
stand prevents the camera arm from moving completely around).

wavegm says: Oct 11, 2012. 3:25 PM REPLY


I think I get your point - can you sketch it ?
I though of trying to change the background but it is complicated technically

oldboffin says: Oct 11, 2012. 10:23 PM REPLY


"he said I should write a patent on it..."

I think putting your idea on instructables might be disclosure :-)

( you can't patent it after you have disclosed the idea without a non-disclosure agreement )

wavegm says: Oct 11, 2012. 10:29 PM REPLY


I don't really think a patent on that idea will work,
I lack the will and the funding for messing with that ...

oldboffin says: Oct 12, 2012. 12:09 AM REPLY


Theres a school of thought that reckons a patent is a waste of time, as you spend months keeping your invention secret as you develop it, then when
you have your patent, you walk the streets showing it to potential customers for months :-)
Plus there are some countries that don't give a hoot about intellectual property !

I love the end result of your photoshoot with the pegs !

436353 says: Oct 11, 2012. 2:54 PM REPLY


Why not rotate the base, rather than the camera arm. I think it would be more stable. Nice work though.

436353 says: Oct 11, 2012. 2:57 PM REPLY


Never mind. Should have read other comments.

http://www.instructables.com/id/123D-Scanner-Home-made-3D-Scanner/
3D_Laserfreak says: Oct 11, 2012. 7:05 AM REPLY
For some set ups it might be useful to turn the camera around the object, but from my experience I can say that a rotating table with some markings in
different colors work well and would keep the setup a bit more compact.
Also most modern cameras offer a remote trigger, eiter using a wired connection or a remot control - might be worth of using it for a more permanent
solution.
One of the biggest problems I encountered so far is the simple problem that not all areas can be made visible to cam from one fixed height.
I was experimenting with a dual cam setup before I started laserscanning.
During that time I noticed that it often makes sense to use a low resolution to build an object and a high resolution to grab the texture of an object where
needed.
Sadly I did not take any pics but I try to describe the rig I used as I think it will make you system easier to replicate:
For the object table I used simple MDF board about 60x60cm.
In the centered I glued two A4 sheets containing random lines and patterns in different colors to give the programm something more to work with.
The main difference to your setup is that I added two boards on each side with a cross section ot top, creating a frame over the center object area with the
cross bar about 50cm over the object table.
In the centre ot that cross bar I added a 10x10cm and 1cm thick steel plate and drilled a 8mm hole through the metal and the cross bar.
For the turning mechanism I used a simple bike rim with one side of the axle going through the cross bar and steel plate.
Being a steel rim it was easy to weld a proper mount for cams on it and it was stable enough to turn without dropping on the cameras side - but adding a
counterweight on the opposite side is better.
I turned the rim by hand and had simple marks on it or every 20° to line up with the cross bar, the trigger was activated using a remote control.
Whole setup took about 3 hours to built and worked fine with 2 cameras attached to it.
If I would biuld it again I would use one cam on each side instead both on the same to make sure the weight is distributed more evenly.

Of course it is just a suggestion and you should decide on the frame/plate dimensions depending on the rim and object size you intent to use.

wavegm says: Oct 11, 2012. 11:39 AM REPLY


Thanks for the detailed reply,
any drawings/pics would help for sure to understand ...

What cameras do you use ? I searched a lot for remote controlled cameras in a reasonable price and found nothing

I even thought of building an android app for that...

jrd210 says: Oct 11, 2012. 7:08 AM REPLY


Great idea, but a more detailed parts list would be helpful to those of us living a long way from stores and are you saying MicroRax is the only way to go--still
need parts list please.

wavegm says: Oct 11, 2012. 11:35 AM REPLY


have a look at the pictures -
I think that you can make it much cheaper then the microrax - wooden platform or any other bars will work.

Improvise !

sarveshk says: Oct 11, 2012. 8:33 AM REPLY


Great!

I have also tried similar thing. I added different pattern for background. But that did not worked as expected. For me, 123D catch gave better results when I
used abstract backgrounds. I have also read somewhere about a user's experience, which was similar to mine.

However your project came out pretty well! Now I'm gonna try with your setup!

Thank you for the great project!

wavegm says: Oct 11, 2012. 11:33 AM REPLY


I am glad you liked it - please share whenever you have anything new I would like to see!

if ou have any questions - feel free.

Gilad.

kennethagiusmosta says: Oct 9, 2012. 9:05 AM REPLY


Nice. I would rather make the object turn other than the camera.
Good job. I love your idea

leo_p says: Oct 11, 2012. 9:00 AM REPLY


If you rotated the object, the lighting would change relative to the object and the shadows would move ruining the 3D.

wavegm says: Oct 11, 2012. 11:31 AM REPLY


you are right - I even had the re-approved by Autodesk in the 123D facebook page

http://www.instructables.com/id/123D-Scanner-Home-made-3D-Scanner/
___ says: Oct 9, 2012. 4:26 PM REPLY
Because of the way 123D Catch works, you usually get better results by moving the camera.

Jayefuu says: Oct 11, 2012. 6:28 AM REPLY


+1, the results are terrible if you turn the object not the camera.

captain Jack says: Oct 11, 2012. 9:40 AM REPLY


That's one wobbly camera arm! If you could stabilize it better, you would create your images much faster. How long currently does it take to do a full "scan?"

wavegm says: Oct 11, 2012. 11:30 AM REPLY


The arm is quite flexible that I know - any change into it will probobly result increase in the weight, That will make the rotation servo work harder.

I let it rest for 1 sec and it is enough.


the complete scan takes less then 2 minutes.

rimar2000 says: Oct 8, 2012. 12:28 PM REPLY


Interesting. I think would be easier to turn the object instead of the cam. You would avoid the trembling and end of displacement.

wavegm says: Oct 8, 2012. 12:37 PM REPLY


The method of turning the camera certainly gives better 3D model,
the down is the complicated mechanism that needs to be built.

KD5NRH says: Oct 11, 2012. 10:22 AM REPLY


What about putting wireless strobes or LED lighting on a rotating stage as well as the object? That way the lighting stays constant relative to the
object. (Assuming, of course, no external light overpowering the moving ones.)
For a small subject, a couple of Sunpak strobes or a few LED booklights shoudl be plenty.

http://www.instructables.com/id/123D-Scanner-Home-made-3D-Scanner/

Vous aimerez peut-être aussi