I've been on a couple of mailing lists, including the splinescan list
(http://www.splinescan.co.uk/) and I none of them are really moving
forward. I've also spent some time looking at DIY Book Scanners
(http://www.diybookscanner.org). I have some tools/skills/equipment I
can put towards the project. Namely, I have the resources of a
(reasonably) equipped hackerspace, I have worked in C/C++/Obj-C/Python
for several years, and I did work in Image Processing in college, and
in my last couple of jobs. I'm game, and I plan to drag some of the
Hive76 crew into this project.
As with any awesome project, I'm assuming we can dream and chatter a
bit, then collect some requirements for what we agree to build, and
then just build a dammed thing.
Whoever took the initiative to set this up (Bre?) thanks, great idea.
hack on,
- Far McKon
----
http://www.Hive76.org "Making things awesome, making awesome things!"
http://www.FarMcKon.net "Creatively Maladjusted"
I'm in!
My expertise is most useful on the low end of things - firmware,
electronics, mechanical assembly, and such. I write software, but
mostly C, assembly, Perl, Inform, etc. In no way am I at the expert
level for Python or Java, but I can load stuff up and check over code
for basic functionality.
-ethan
Name's Rich.. Python/Java coder. Not too much HW experience but would
be interested in helping on the software side of things.
Here's a really good primer for you guys, contains a good list of DIY
and commercial scanning projects:
http://mesh.brown.edu/byo3d/links.html
There is also a forum in the UK here:
http://laserscanning.org.uk/forum/
A search for 'scanner' on HackADay gives a couple of interesting links
as well.
Rich!
anomos.info
Great !! a discussion group...
Just so we have these attached in the discussion group, there are two
pages (currently) in the Makerbot wiki about scanner projects.
http://wiki.makerbot.com/makerscan-3d-scanner a starter page
pointing here. good place to keep more permanent records
http://wiki.makerbot.com/laser-scanner-links this is a good place
to note places of interest on the web.
One project I'd like to point out is ProFORMA from Qi Pan, Gerhard
Reitmayr and Tom Drummond
http://mi.eng.cam.ac.uk/~qp202/
This system uses a standard webcam instead of laser or other
structured light system. It can digitize using just the camera in
our laptops instead of requiring a laser scanner + turntable!! I
haven't investigated it in detail yet (i.e. read paper when wide
awake), but if it works as advertised,...!!! also not sure what the
commercial/FOSS status is.
R
R
I'm personally interested in "3D optical mesh reconstruction", getting
the textures was not something I had thought interesting, though of
course it's nice to have thrown in for free.
Bre, oh mighty google group admin, what say you to a rename, or something?
> Also, it seems that 'Laser Scanner' is a really attractive name, but
> the more I look into this, the more it looks like optical scanners are
> actually more effective for DIY purposes, particularly 'Structured
> Lighting' techniques.
Structured Light needs a projector though (the shadow technique isn't
really good...)
IMO the easiest one is the 90deg-wall (30secs of work) + line laser (3$
at dealextreme) + webcam (everybody has one) like David Laserscanner
uses. I'd be interested in creating an open source (and cross platform)
version of this one.
What I like about the line-laser technique is, that you can refine the
scanning quite easily -- structured light usually comes from one source
only, you have to reconfigure the setup etc. But with the line
technique, you can move a laser plane around to scan, and rotate it so
that you get more details in tricky sections, just by pointing the laser.
For higher quality scans, an HD camera could be used, and if the
computer isn't fast enough to process it in real-time, just make a 10min
video of laser-waving, and have it analyzed off-line.
This approach doesn't even need a rotating table, just rotate the object
by hand and merge the meshes from different scans afterwards.
So... anybody know a paper about reconstructing a 3D-plane from its
2D-projection?
That's funny.
Rich Jones
Rich
Hitting the "Edit" button and changing the name.
"Makerscan 3d Scanner" or simply "Makerscan" are names that have been
used in the past on the wiki,
http://wiki.makerbot.com/makerscan-3d-scanner. And which are not
dependent on lasers.
I agree we can continue the discussion with the present name, but one of
the coolest 3D scanning and mesh/texture reconstruction tech many people
have seen recently is, as Jerry Isdale also said:
> One project I'd like to point out is ProFORMA from Qi Pan, Gerhard
> Reitmayr and Tom Drummond
> http://mi.eng.cam.ac.uk/~qp202/
Which only uses a webcam, and no laser.
Russell
bre pettis wrote:
> Changing the name isn't possible, but please carry on your discussion
> of laserless scanning and if it becomes viable and discussion
> overshadows lasers then we'll add another group!
>
> Bre
>
> On Sun, Dec 20, 2009 at 9:57 AM, Russell Hanson
> <russel...@gmail.com <mailto:russel...@gmail.com>> wrote:
>
> I agree! I think it's pretty straightforward to change the Google
> Group name.
>
> I'm personally interested in "3D optical mesh reconstruction",
> getting the textures was not something I had thought interesting,
> though of course it's nice to have thrown in for free.
> Bre, oh mighty google group admin, what say you to a rename, or
> something?
> Rich wrote:
>
> Also, it seems that 'Laser Scanner' is a really attractive
> name, but
> the more I look into this, the more it looks like optical
> scanners are
> actually more effective for DIY purposes, particularly 'Structured
> Lighting' techniques.
>
> R
>
> On Dec 20, 2:06 am, Rich <miser...@gmail.com
> <mailto:miser...@gmail.com>> wrote:
>
>
> Clearly, MakerBot Inc should hire Qi Pan.
>
> R
>
> On Dec 20, 1:39 am, Jerry Isdale <isd...@gmail.com
> <mailto:isd...@gmail.com>> wrote:
>
>
>
> On Dec 19, 4:33 am, Bre Pettis <brepet...@gmail.com
> <mailto:brepet...@gmail.com>> wrote:
>
>
> There are lots of scanning projects out there, but
> the goal is to get
> one that's open source and easy to use! Let's
> share experiences and
> work together to make it happen!
>
>
> Great !! a discussion group...
> Just so we have these attached in the discussion
> group, there are two
> pages (currently) in the Makerbot wiki about scanner
> projects.
> http://wiki.makerbot.com/makerscan-3d-scanner a
> starter page
> pointing here. good place to keep more permanent records
> http://wiki.makerbot.com/laser-scanner-links this is
> a good place
> to note places of interest on the web.
> One project I'd like to point out is ProFORMA
> from Qi Pan, Gerhard
> Reitmayr and Tom Drummond
> http://mi.eng.cam.ac.uk/~qp202/
> <http://mi.eng.cam.ac.uk/%7Eqp202/>
I'm a Mechanical Designer by day and general tinkerer by night willing
to lend a hand however I can, I'm so deep into my DIY makerbot that
I'd love to get involved with a companion 3D Scanner to flush out the
set.
I have played with a David Laser Scanner setup and was impressed by
the results that can be received by a simple web cam and $10 laser.
My primary interest is an automated scanning system that rotates the
object and pans the laser without user interaction. You would then
just have to focus on cleaning upi the mash after the scan.
On Dec 20, 7:18 pm, Russell Hanson <russellhan...@gmail.com> wrote:
> Changing the name is a simple matter of going to:http://groups.google.com/group/laser-scanner/manage_general?hl=en
>
> Hitting the "Edit" button and changing the name.
>
> "Makerscan 3d Scanner" or simply "Makerscan" are names that have been
> used in the past on the wiki,http://wiki.makerbot.com/makerscan-3d-scanner. And which are not
> > http://wiki.makerbot.com/laser-scanner-linksthis is
Is there any way that you can crank out some STEP models? If so, this
project would be an excellent candidate for inclusion in SKDB (it's
like apt-get, but if that doesn't mean anything to you, then think
"downloading hardware over the web").
On Dec 20, 11:50 pm, Bryan Bishop <kanz...@gmail.com> wrote:
> On Sun, Dec 20, 2009 at 11:47 PM, Matthew LaBerge
>
> <george.dun...@gmail.com> wrote:
> > I'm a Mechanical Designer by day and general tinkerer by night willing
> > to lend a hand however I can, I'm so deep into my DIY makerbot that
> > I'd love to get involved with a companion 3D Scanner to flush out the
> > set.
>
> Is there any way that you can crank out some STEP models? If so, this
> project would be an excellent candidate for inclusion in SKDB (it's
> like apt-get, but if that doesn't mean anything to you, then think
> "downloading hardware over the web").
>
> http://designfiles.org/dokuwiki/skdb
>
> - Bryanhttp://heybryan.org/
> 1 512 203 0507
Awesome, that's great. Don't worry about the SKDB part. That's just a
way of packaging up open source hardware and sending it around.. kind
of like metadata on top of STEP. If you have some free time, there was
a presentation on it that I gave earlier this month.. but it's 20min
long.
http://openmanufacturing.org/ should have the videos
- Bryan
It'd be a shame to design a scanner only to have it not work with the
newer Bot.
R
On Dec 22, 7:53 am, bre pettis <brepet...@gmail.com> wrote:
> Ok, name of scanning group changed by popular demand!
>
> Bre
>
> http://brepettis.comhttp://makerbot.com
>
> On Mon, Dec 21, 2009 at 2:18 AM, Russell Hanson <russellhan...@gmail.com>wrote:
>
> > Changing the name is a simple matter of going to:
> >http://groups.google.com/group/laser-scanner/manage_general?hl=en
>
> > Hitting the "Edit" button and changing the name.
> > "Makerscan 3d Scanner" or simply "Makerscan" are names that have been used
> > in the past on the wiki,http://wiki.makerbot.com/makerscan-3d-scanner.
> > And which are not dependent on lasers.
>
> > I agree we can continue the discussion with the present name, but one of
> > the coolest 3D scanning and mesh/texture reconstruction tech many people
> > have seen recently is, as Jerry Isdale also said:
>
> >> One project I'd like to point out is ProFORMA from Qi Pan, Gerhard
> >> Reitmayr and Tom Drummond
> >> http://mi.eng.cam.ac.uk/~qp202/<http://mi.eng.cam.ac.uk/%7Eqp202/>
>
> > Which only uses a webcam, and no laser.
>
> > Russell
>
> > bre pettis wrote:
>
> >> Changing the name isn't possible, but please carry on your discussion of
> >> laserless scanning and if it becomes viable and discussion overshadows
> >> lasers then we'll add another group!
>
> >> Bre
>
> >> http://wiki.makerbot.com/laser-scanner-linksthis is
Should we be designing this to be a product to be produced by MakerBot
Inc, or should this be something people could jank together themselves
with their own lasers and cameras?
R
On Dec 22, 7:53 am, bre pettis <brepet...@gmail.com> wrote:
> Ok, name of scanning group changed by popular demand!
>
> Bre
>
> http://brepettis.comhttp://makerbot.com
>
> On Mon, Dec 21, 2009 at 2:18 AM, Russell Hanson <russellhan...@gmail.com>wrote:
>
> > Changing the name is a simple matter of going to:
> >http://groups.google.com/group/laser-scanner/manage_general?hl=en
>
> > Hitting the "Edit" button and changing the name.
> > "Makerscan 3d Scanner" or simply "Makerscan" are names that have been used
> > in the past on the wiki,http://wiki.makerbot.com/makerscan-3d-scanner.
> > And which are not dependent on lasers.
>
> > I agree we can continue the discussion with the present name, but one of
> > the coolest 3D scanning and mesh/texture reconstruction tech many people
> > have seen recently is, as Jerry Isdale also said:
>
> >> One project I'd like to point out is ProFORMA from Qi Pan, Gerhard
> >> Reitmayr and Tom Drummond
> >> http://mi.eng.cam.ac.uk/~qp202/<http://mi.eng.cam.ac.uk/%7Eqp202/>
>
> > Which only uses a webcam, and no laser.
>
> > Russell
>
> > bre pettis wrote:
>
> >> Changing the name isn't possible, but please carry on your discussion of
> >> laserless scanning and if it becomes viable and discussion overshadows
> >> lasers then we'll add another group!
>
> >> Bre
>
> >> http://wiki.makerbot.com/laser-scanner-linksthis is
R
On Dec 25, 11:35 am, bre pettis <brepet...@gmail.com> wrote:
> Yeah, my first goal is to do portrait scans of my friends!
>
> Bre
>
> http://brepettis.comhttp://makerbot.com
-Trevor
-Matt
R
I will be releasing the software for the scanner next week - and I'll
be rigging it to create STL files directly, so that should save some
time on the conversion front. If anyone wants to get involved with the
scanner, please let me know. I'm interested in creating a version
specifically for the Makerbot. The write up in Make doesn't really
mention the enclosure, but it should be very easy to build an enclosed
MakerScan from Plywood. I also want to change the motor controller
board for an Arduino or similar, to keep in line with the open-source
nature of the project.
Andrew (Splinescan)
http://abarry.org/stereo/
and
http://www.thingiverse.com/thing:1535
I'll be releasing new versions of code and hardware soon.
Andrew -- how do you perform direct-to-STL scans? I've been going
through MeshLab's Poisson Reconstruction feature, but I generally have
to play with it a little by hand to get a good mesh.
Are you using custom code for that?
Andy
Other advantages of using a polar system with CNC turntable are a
naturally increasing resolution for smaller objects, and the
elimination of quantum speckle through spacetime analysis (might not
be implemented next week, I'll see how much time I have). An
additional benefit is the multiple laser approach, which can be used
to eliminate some of the occlusion errors that occur when scanning an
object with a single laser. The principle disadvantage of the system
is that you would need to decapitate all of Bre Pettis' friends in
order to scan their faces. Which is probably a bit of a downer.
Andrew
I think that would be a great advance.
> I will be releasing the software for the scanner next week - and I'll
> be rigging it to create STL files directly, so that should save some
> time on the conversion front.
Since I haven't seen the software, I'm curious what path the images
take from the webcam into the software - i.e., is it a series of still
frames with known orientation to the platform? some format of "movie"
file? One reason I'm curious is I'd like to know how flexible the
system is to a different type of camera (most specifically, a non-USB
camera, with an eye for capture machine that doesn't have a USB host
controller).
> I also want to change the motor controller
> board for an Arduino or similar, to keep in line with the open-source
> nature of the project.
I think that would also be a great advance. From what I could get
from the article, a '168 should be plenty to implement any sort of
platform-control protocol. Can you think of any obvious requirements
that would prevent repurposing an extruder controller? (it has a
ATmega168 on it, DC motor controllers, analog input pins, PWM output
pins (that could drive the lasers), and it has the advantage of being
well understood and already in production.
It's probably too much work to sync pulsed laser spots with the
capture device, or else you could use the PWM to reduce the average
power to the lasers, so there might need to be either an on-board mod
or off-board regulation to allow the PWM channels to safely drive the
lasers, but I think it'd still be easy enough and inexpensive enough
to explore that avenue.
-ethan
On Jan 29, 6:55 pm, Ethan Dicks <ethan.di...@gmail.com> wrote:
> On 1/29/10, Andrew Lewis (Splinescan) <monkeysai...@googlemail.com> wrote:
> > I will be releasing the software for the scanner next week - and I'll
> > be rigging it to create STL files directly, so that should save some
> > time on the conversion front.
>
> Since I haven't seen the software, I'm curious what path the images
> take from the webcam into the software - i.e., is it a series of still
> frames with known orientation to the platform? some format of "movie"
> file? One reason I'm curious is I'd like to know how flexible the
> system is to a different type of camera (most specifically, a non-USB
> camera, with an eye for capture machine that doesn't have a USB host
> controller).
It should be pretty straightforward to change the code. The current
version relies on the camera module of PyGame, but there should be
very little difficulty changing this. Images are not generally stored
by the scanner, although implementing this would require only a
trivial addition to the code. The images are scanned and converted
into a co-ordinate set almost immediately. This reduces the amount of
storage required - 2000 or more 640x480 images can take up quite a bit
of space on disk :)
> > I also want to change the motor controller
> > board for an Arduino or similar, to keep in line with the open-source
> > nature of the project.
>
> I think that would also be a great advance. From what I could get
> from the article, a '168 should be plenty to implement any sort of
> platform-control protocol. Can you think of any obvious requirements
> that would prevent repurposing an extruder controller? (it has a
> ATmega168 on it, DC motor controllers, analog input pins, PWM output
> pins (that could drive the lasers), and it has the advantage of being
> well understood and already in production.
The turntable uses a stepper motor - if you have enough outputs to run
a stepper motor off the unit, then it should be no problem.
>
> It's probably too much work to sync pulsed laser spots with the
> capture device, or else you could use the PWM to reduce the average
> power to the lasers, so there might need to be either an on-board mod
> or off-board regulation to allow the PWM channels to safely drive the
> lasers, but I think it'd still be easy enough and inexpensive enough
> to explore that avenue.
Awesome - I must admit that I just use an LM317 vreg to power the
laser line emitters, not very elegant, but they haven't exploded on me
yet :)
It should be fairly trivial to mod the PWM to drive the lasers. This
all seems to be looking possible, doesn't it?
Andrew
OK. Good to know where to start.
> but there should be
> very little difficulty changing this. Images are not generally stored
> by the scanner, although implementing this would require only a
> trivial addition to the code. The images are scanned and converted
> into a co-ordinate set almost immediately.
I wasn't thinking so much of storage as using a different type of
sensor or interface - for one example, I happen to have ancient
parallel-port webcams lying around that I've been using with a Linux
Router Project-based self-contained webcam box that can capture images
then move them via TCP/IP to an ftp server. I also have
RS-232-interfaced digital cameras that work with gPhoto.
I'm mostly just interested to know that there's nothing inherent in
the system or the environment that mandates a USB-attached camera
device. I do some work with libusb and have written C code that
interfaces to USB devices at a low level, so I know that it's always
good to have options to use something else (USB is rather horribly
in-efficient internally in the name of making it "trivial" to plug
"any" device into a machine).
>> > I also want to change the motor controller
>> > board for an Arduino or similar, to keep in line with the open-source
>> > nature of the project.
>>
>> Can you think of any obvious requirements
>> that would prevent repurposing an extruder controller? (it has a
>> ATmega168 on it, DC motor controllers, analog input pins, PWM output
>> pins (that could drive the lasers), and it has the advantage of being
>> well understood and already in production.\
>
> The turntable uses a stepper motor - if you have enough outputs to run
> a stepper motor off the unit, then it should be no problem.
Yes. An unmodified extruder controller can drive one stepper (or two
simple DC motors).
>> It's probably too much work to sync pulsed laser spots with the
>> capture device, or else you could use the PWM to reduce the average
>> power to the lasers...
>
> Awesome - I must admit that I just use an LM317 vreg to power the
> laser line emitters, not very elegant, but they haven't exploded on me
> yet :)
It's a pretty bullet-proof way of stepping down 12VDC to something the
lasers are likely to want to see (I'm guessing well under 5VDC), then
from there, a simple current-limiting resistor is trivial (since the
LM317 will pass over an amp if you ask it to). They are especially
handy when you want a voltage that's not exactly 3.3VDC or 5.0VDC,
etc. There are plenty of other ways to prevent overdriving
semiconductor lasers, though.
> It should be fairly trivial to mod the PWM to drive the lasers. This
> all seems to be looking possible, doesn't it?
It does. One risk, of course, is that if you turn up the PWM rate too
far is that you _can_ burn out the lasers, but it does provide a
little-to-no-cost way to drive them safely in good times. Knowing
that the source voltage is +12VDC, it's also just as easy to just
calculate a safe current-limiting resistor for the laser (folks drive
single LEDs off of odd voltages all the time) and build that into the
laser design. One possible advantage is that with three "PWM" outputs
on an extruder controller, you could drive the two lasers
independently and still have a spare channel left over for something
else (a lid lock solenoid to keep people from lifting the lid and
staring into the laser?) You could, of course, drive both lasers from
one channel, but the option is there for independent drive.
So far, it seems that barring any pressing issues, the extruder
controller makes a good candidate to become at least a prototype for
an Arduino-based Splinescan, if not the final one.
Here's the link to the Makerbot store for it -
http://store.makerbot.com/electronics/assembled-electronics/extruder-controller-assembled-v2-2.html
The relevant advertised features are:
* Onboard atmega168 - program it just like an Arduino because it is an Arduino.
* 3 x MOSFET drivers for controlling up to 14A @ 12V...
* 2 x H-Bridges capable of up to 2A each. Control 2 motors, or
control one stepper motor.
* A temperature sensor circuit...
* RS485 connection...
* IDC header for connecting a Magnetic Rotary Encoder.
That reminds me - it would be easy to drop an encoder on the turntable
so the controller would know its orientation more precisely than just
counting steps.
The extruder controller runs $45USD assembled, and I'm sure a
purpose-built board could be built with only the required features
that would also cost less, but that brings into play the economics of
two of the same general thing per system vs two specialized things.
-ethan