Build a Rotisserie Scanner With Legos
WalkingBear writes "All you 3d geeks out there should take a look at this. This guy has built a 3d scanner (scans 3d objects resulting in a 2d cylindrical image map) out of a flat bed scanner and Lego. Also has a turntable style for use with digital cameras."
This user has no right to alter the use of this scanner in such a manner without a license. I will be informing the proper authorities of this illegal violation - Cmdr Taco
I thought the plural for lego is lego... not legos???
Couldn't that be done with a regular 2d scanner?
autopr0n is like, down and stuff.
Well I know there will be people out there who will moan about things like this, but you got to say this i pretty f'ing cool.
This touches two vital "geek nerves" - Hack value and use of Lego.
...the guy didn't spend a little less time on the scanner and a little more time on that animated .gif. Whew, that's amazingly cheesy-looking.
+ G to tha Izzo, A to tha Tizee, Talking Giz-oat, Ya'll Bettah Feel Me... +
Why am I not surprised?
What's the point of this post?
He uses windows software for this project!
Start your bashing engines, gentlemen!
He could have used Linux, The Gimp, and SANE and his project would have been so much more cooler.
That inner page of his is like 660KB all in, so I can see this guy's server taking a crunch real soon. His JPEGs were uber-unoptimized, so I've optimized them and put up a temporary mirror so you can all see the joy that is the rotissery scanner :-) It will disappear in a few hours or so.
Rotissery Scanner Mirror
Are you kidding me?
:)
The scanner
The lego
The skull
aaaaa common
I was genuinely interested in this story, as I'm an indie game programmer, and any easy way to generate 3D art is welcome. However, what this guy has created is not a 3D scanner. It's a 2D cylindrical scanner. Someone correct me if I'm wrong here, but I can't see any way to convert the resulting image into a 3D mesh, at least not without some very clever software which the inventor has neglected to write.
I'm impressed. He built a very cool system. I'd be more impressed if he could devise a means in which his web page displayed in the fullness of my browser, instead of being limited to a tiny window in the center. I'm telling you, once someone conquers the "fit to window" problem this World Wide Web thing is really going to take off. Mark my words, someone will make money off it.
How else are you going to ge a seamless scan around an object? Useless would be using Linux and The GIMP to do this, as you'd never get anything done.
The funny thing is, if you read the article you'll see that he's gotten better results by just stitching digital photos together. The scanner has actually given him rather poor images (he's got a nasty light leak), and you need to be able to put the thing you're scanning on a spit...
1. Install Mozilla
2. Right click inside a frame
3. Select "Show only this frame"
A proper and qualified commercial developer will save the day. You will get your software.
Us OSX and Windows people have no such problems.
This is great for skinning i'd like to see people finish it up with some software that will mesh the images together in a batch proccess. Then you can get as detail as you'd like (1 pixel width per shot anyone?)
But what I really would like is some info on how to make meshes. I've heard about people using lamp projectors with grids on them, shine that one the persons face and then the software can follow the gridpoints making a mesh.
Then use a similar technique to follow body movements (flashlights at all the joints/tips on a body in a dark room)
Exciting times..
With a mesh and skinning proccess simplified and cheap enough for anone interested.
That's the only one I know of.
err.... shouldnt that be 'lego', not legos. Hate to be pedantic, but the plural of lego is lego.
I.O.U One Sig.
First a "bone printer" and now a lego scanner. What's next, a cardboard monitor???
"Armed forces abroad are of little value unless there is prudent counsel at home" - Cicero
Apparently the answer is: "Correct my diction."
Cool hack, though.
-Peter
[Insert obligitory perverse comment] But seriously... I'de love to see a lego vibrator... custom tailored to you're passion ;)
"Victory means exit strategy, and it's important for the President to explain to us what the exit strategy is." G.W.Bush
alright, the tech is cool and all. but what i'm really interested in is a 3D model of that skull thing with lumps on the sides for my dorm room. chicks dig that kind of stuff...
With all due respect (none) to out neighbors to the South, at the University of Utah, building a scanner out of legos is an undergrad assignment. Is this all you got BYU? Your are light years from hangin with us.
As I was reading the article it took me a minute to really notice the picture of the skull. Well to notice that it was showing the back of the skull at the same time.
With that being said... Imagine what this could do for game skinners. Now using an old scanner and some legos you can easily skin in your own face to UT2k3 and other games.
Until I noticed the DivX movie, I didn't realise how it actually worked, now I see, it seems that this wouldn't work with objects of different shape and size, so now I understand the camera approach, it seems that the scanner idea neede a little more innovation and work though.
Comment removed based on user account deletion
And you did this before posting? That has to be a Slashdot first.
Bonus - export the frames back as an mpeg or other format. Stop animation, it's not exactly film gimp. Come to think of it, this woud make capturing turntable images much easier. If only cameras use a free movie format so that the images could be taken out automatically without signing a fucking NDA.
Friends don't help friends install M$ junk.
Expect to see Ron Popeil selling this soon...
"Just scan it, and forget it!"
All the geeks I know are 3d geeks, though some are guilty of being one-dimensional at times.
I thought he made a sort of depth sensor, for building a 3d model from a real object.
autopr0n is like, down and stuff.
...what this guy did, after Reading The Fucking Summary. That why you should Read The Fucking Article. This guy rigged something that will scan ALL AROUND THE FUCKING OBJECT! You typical 2D scanner just sits there, it sure as doesn't rotate around the object itself.
Idiot.
The spinning part and a mounted camera is a good start. What is missing is a set of sensors that measure distance to the spinning object, at various heights.
This is actually not completely impossible to do (but a royal pain), I have heard of guys who did it in lab classes in college. The most troublesome part is suppose to be converting all the distance readings into a useful data format.
Tor
...could deproject the scanned image to represent the object from an arbitrary angle, or create an ultra-smooth animation of it rotating about the scanned axis. It's the exact analog of the way a QTVR cylindrical panorama is rendered into a window, only there you're inside the object instead of outside.
This technique could be incredibly useful for creating photorealistic views of 3D objects from any angle about one axis.
Wish I'd thought of it. Now how long until IPIX patents it?
Next Lego post on Slashdot, I want to see something that will cook a chicken!
Anyone out there know Latin? I'm thinking of having that translated and placed on my Coat of Arms. Come to think of it, it probably wouldn't look that bad as my epitath, either.
"Prepare for the worst - hope for the best."
What this needs is structured light in order to be able to actually create a 3D model from the scans. Do one scan with the structured light to get the model, then another normal scan to get the texture to map onto it.
lego... legos... lego... lego's... WHO CARES
im going to go have sex now.
I am getting flashbacks to when I saw H.R. Giger's work when I saw that deformed skull on th left! It's Aliens all over again! http://www.hrgiger.com/
Until it stiches the images automatically and looks good I won't be impressed.
He says he is having problems with lighting, that's because the lighting and the person have to remain stationary while the camera goes around the object. That way the shadows will stay the same. Spot the funky shadows in my images.
at this link. Check his mathematical lego sculptures. It was covered in a slashdot article too.
Wait - this wasn't another BattleBots thread?
Okay, to be (relatively) serious - it's a fun adaptation, and goes far beyond the usual motorized crane / walking dinosaur constructions. It needs to be tweaked (i.e. fixing the light leak, and a few other things) before it is really usable in a practical** sense, but it gets all kinds of kudos in the "nifty idea; let's see if it works" department.
Now, if he can find a way to build a genuine 3D cylindrical scanner out of Lego(s), that would elevate him to uber-geek status in a heartbeat!
**not that practical usage ever had anything to do with building wonderful toys...
Doing my level best to piss off the religious right wing...
Another way to get a realy fine scan like this would be to mount your digicam on one of these, or a lathe.
That's enough activity for me. Good night.
Friends don't help friends install M$ junk.
All in all, however, I prefer the Dilbert and Escher interpretations. Fun stuff!
Doing my level best to piss off the religious right wing...
Funny as hell
I would be more impressed if somebody made a Rotisserie BBQ out of lego. Works with real gas and cooks real chicken!
:)
To make it a real trick give it a linux box to control the heat and cooking time
Better yet, put the linux box inside and cook that!
soooo, this doesnt give you an image of a spit roasted chicken?
yeah, that was pretty cool... so when does it go into production? (yes that first closed tag was a trick to get you to read this other lame joke, i admit it... i'm sorry)
Sure you could wrap the image around a perfect cylinder, but without knowing the "stetch factor" at the top and bottom, you wouldn't know how close to the center of the cylinder to render that point.
:)
Think of it like rendering a sky in games like doom/quake/half-life/etc. The sky is really just a very large box with a sky texture applied to the inside. You as a player are inside the box so you don't realize it's a box. Once you go outside the box, it becomes painfully obvious that there is no sky, just a box.
QTVR is inside the cylinder, but with the scanned image, you're outside
no comment
If you look all the way to the bottom, he takes that creepy warped skull image and wraps it on a 3D model to make something that almost looks like a 3D skull. It looks kind of crummy, but it's decent for a start, and much better than anything I've done in the same field (absolutely nothing).
He never explicitly says what his purpose in all this was (although he claims inspiration from the Matrix), but I guess he's wanting to use this to make it easier to get textures for 3D objects based on actual objects.
The scanner in no way reads depths though... the 3D model he uses in the end is NOT determined by the scanner. That would take a hell of a lot more work, and probably lots of those 2x1 blocks that always seem to run out.
-"One machine can do the work of fifty ordinary men. No machine can do the work of one extraordinary man." -EH
Yeah, he admits all that. His problem was that the scanner does a calibration every time, which requires motion of the scanning element relative to the bed. It's got some patern in there. It turned out to be easier to make this amusing rig that rides along and spins the object than it was to try to mount the cal patern on a rotiserie made from the servo that moves the scan element. If the cal paternd noes not read, the device sends an error message and that's it. I'm impressed that the cal worked despite the light leaks.
The whole reason he tried this to begin with was that his hand rotation of the skull was very impressive. I imagine it took much less work than all of that stitching and editing.
It was nice of him to share the experience. We all now know what problems to expect when you take apart a scanner and can imagine solutions.
Friends don't help friends install M$ junk.
Direct link to the content, bypassing the obnoxious iframe.
...is to get those images from a continual reference point that will enable seamless stitching.
Such software exists. It is called Rotomapper, and can be found here, hosted on my website. I did not make the original application, and google turns up nothing on the filenames or application title. I just uploaded it now. I don't remember where I found it.
A home-made 3d scanner does not seem unfeasible. It would require having a computer-controllable laser range finder mounted on a vertical post, which is connected to a horizontal post. The laser could slide vertically on its post while the vertical post could slide horizontally on the horizontal post. Motors/pulleys/pistons would be integrated where necessary. In this way the laser would be able to move in a local XY plane.
All of these electronic components would be computer controlled, with the software controlling the laser's XY position. The software would increment the laser's position in both the X and Y directions, and find the distance (using the laser range finder) between the XY position and a point perpindicular to the XY plane on the object being scanned. That distance would provide the Z coordinate. The computer would store each set of XYZ coordinates and then generate a mesh from it.
why on earth is this so freaking cool to me? i mean it's just a scanner that uses legos to rotate. this is so increibly awesomse. that movie was so cool to watch too i nearly crapped my pants... speaking of which
WTPOUAWYHTTOTWPA
What's the point of using acronyms when you have to type out the whole phrase anyways?
Hehe, I just send him an email stating how the frame is crap...
In dental radiology this procedure of converting a 3D skull into a 2D flat picture is very common and most of you must have been subordinated to such imaging. Images look almost the same - the only difference is that you get x-rays instead of real photos. An example of a dental X-ray looking exactly like this image can be seen here.
The exact way such images are made is described here
For you digital freaks: digital radiology becomes common more and more... every digital alteration you might think of is possible nowadays.
I'm reporting him to someone
Okay, if you want a 3D mesh, here's what I would do:
(1) Encase the thing in a black box [or work at night], and put a light on the y-axis of the scanner, and a red light on the axis of the rotisserie, near it, but not inside it [of course]
For your lights, use a good small fluorescent bulb.
(2) Run a normal scan.
(3) Light the thing from the North with blue light, and from the west with red light. Keep each light as *close* to the rotisserie as possible, and on the scanner side [of course].
(4) Run another normal scan.
Now, let's just take the blue light as an example. The intensity of the light decreases with the square of the distance from the light as it impinges on the skull's surface. So the brighter the blue-shift of the colors, the closer the point is to the blue light. Same goes for the red light. [The distance from the point to the scanner is not constant, and will affect this, but can be calculated.]
So align your pictures, and then you subtract off the previous exposure, leaving your "red/blue intensity map."
Now you have to modify the result of this by the reflectivity of the model -- but that information is contained in the original scan. Base Intensity * Reflectivity = Color intensity, so the reverse applies: calculate the distance to and from the model [start with an estimate: the rotisserie height, but recursively refine] to get the Base Intenisty, read the Color Intensity from the original scan, and that will give you the local reflectivity. Divide your red-blue map by the reflectivity, of each particular point, and you get back the Base Intensity of your red-blue map.
Take this intensity map to a png file, and then using some known values [based on the geometry of your setup, and some basic measurements] calculate the xyz coordinates of each point.
Run this routine recursively 2-3 times to get better ("good enough") accuracy.
For even better accuracy, you could use white light, but vary the intensity of your x-axis and y-axis bulb, and read the differences. Use that information to calculate the distance from the bulb to the model to the scanner.
Correct Horse Battery Staple: 72 bits of entropy. Enter "Correct H" into google. When it generates the phrase, that's
just set it and forget it ?
In addition to the others, there is one that has yet to be mentioned, and it is the one i think you are referring to. It's got a funny name so perhaps it's hard to remember.
It's called Canoma and is impressive in the hands of those who use it. Same concept as the others; using 2D pictures, identify object points to build a mesh.
From their webpage: "Canoma is Mac/Win software that allows fast creation of photorealistic 3D models from one or more photographs."
Mac/Win only (for now) but it is pretty cool stuff. Check out the quicktimes of the flythroughs!
This sig has been appropriated pending Federal investigation.
well most cameras AFAIK use a free movie format, they mostly record in Motion JPEG(MJPEG)(well my 2 do) inside a quicktime container. MJPEG is a well known standard (I have a textbook in front of me that outlines it, and the quicktime container is well known as well (AFAIK i haven't actually looked for the specs).
On an other note does anyone know if it would be possible to put MJPEG streams into an ogg container
It will disappear in a few hours or so.
:-)
Thanks for your patronage.
Thank You!
I would like to add to this that lego is a creative toy that encourages people of all ages to explore and create.... a manufacturer of bricks has no control over your home, nor does a steel maufacturer take creative royalties for your car..
bah!*@%!
Back in the late 80's, I was at the Naval Postgraduate School in Monterey, CA. The computer graphics lab was doing a lot of work in low cost 3D simulators. They had terrain data, stereoscopic imaging from aircraft overflights, etc. to make the terrain realistic. The problem was getting good 3D models of the ships, planes, missles, jeeps, trucks, etc.
Turned out, a local company called Cyberware had developed a number of 3D scanners. Our idea was to scan a toy or model from the hobby shop and use the data set as the basis for the models.
The scanners produced cylindrical data sets of 100K and up, which was too much for the SGI workstations of the time to render in real time. So I wrote software to reduce the polygon count. For example, the side of a ship or truck is relatively flat, so it can be represented by a few large polygons instead of the many small polygons from the scanner. I had a scan of Spock (from 2nd or 3rd movie) that I could reduce from ~120K polygons down to ~12K or so (IIRC).
Of course, there is much better hardware and software available now.
The Cyberware web site has more information, including sample data sets (human heads, bodies, statues, etc.). Check it out.
I don't work for Cyberware, just used their hardware for my thesis work.
Saw from another site that the Japanes have a cardboard based case that works like a regular tower PC case. No joke.
First of all - this is definately one of the cooler home-brewed inventions I've seen in the last while. Yes, it uses lego, but the actual result is quite impressive.
It seems that the developer used a scanning bar from a flatbed scanner to make this work though. It also mentions that calibration is a problem do to the issue with the scanner's initial alignment routine.
I have in my possession an old LogiTech hand-scanner, you just scan it over the paper onto the screen (slowly). I am wonder if this would be better, since it requires no such calibration - just has a roller which tells it when movement occurs.
I'm not sure how powerful these scanners are though - never tried them on anything non-flat - so how far away can an object be before the scanning depth goes to crap?
Yes, as a matter of fact, I do.
};^P
What were you expecting?
So that's what it looks like from the other side...hehe.
Well, as far as I can tell, the server didn't melt. Hope everyone enjoyed my kooky little experiment.
Thanks for stopping by!
What were you expecting?
Looks like a good project but, it isn't a particularly novel idea.
Review the archives (including those from the list at its previous home) of the PanoTools maillist (PanoTools@Yahoo.com.) A number of folks on that list have been experimenting with building similar equipment for several years.
Dev
Can be done in HTML...
:-)
:-)
frame tags should support percentages in the size option....
<frame size="5%" blah blah blah>
<frame size="90%" blah blah blah>
<frame size="5%" blah blah blah>
nice 5% border around page
1. Make page with rezising frames
2. ???
3. Make lots of $$$$
Why me? Why not!
BACKUP YOUR PARTITIONS