Building 3D Models On the Fly With a Webcam
blee37 writes "Here is an excellent video demonstration of a new program developed by Qi Pan, a graduate student, and other researchers at the University of Cambridge. The 'ProFORMA' software constructs a 3D model of an object in real time from (commodity) webcam video. The user can watch the program deduce more pieces of the 3D model as the object is moved and rotated. The resulting graphics are of high quality."
With open-source rendering images already well established and continually improving that only leaves the content areas under-developed. This method will allow anyone with an object to digitize it. This will enable people to take that content and then mix it in virtual environments. Throw in some voice-synthesis software, some directing software, and a million monkeys hammering away at plots then Hollywood as an institution is dead. This is another piece, the others will fall into line as well. It is ironic in that in one of the Civilization games, discovering the Internet invalidates the Hollywood Wonder.
Shh.
Is it just me or is there no download link?
I s there any open source software that can generate a 3D model from photos? As far as I can see the source code of proforma is closed. http://mi.eng.cam.ac.uk/~qp202/my_papers/BMVC09/
Did the Slashdot contributor discover TFA with a spider?
Are you referring to Star Wreck: In the Pirkinning? /nokarma
http://www.imdb.com/title/tt0472566/
( yes, it has an imdb entry )
I can just see it now -- anyone who can get a bit of video of you can create a 3-D models of your face and body, and then do anything with the likeness. When rendering gets really good, this could be a bit embarrassing. Instead of 2D retouched photos of celebrities and politicians, we'll be seeing hacked up 'animated' (but realistic) video of them doing all sorts of wild stuff. Well, it might be a boon to the porn industry, at least in the short-term before the rendering software becomes available to consumers.
It may help the modeling process if chroma keying could be used to make the camera ignore supporting objects like a turn table or a hand that's holding the object. Another improvement could be to automatically cut out excess vectors and triangles. It wouldn't be too difficult (for someone who can make this type of software) to determine that the plane that makes up the side of the demo building is virtually flat and reduce the complexity to two triangles.
One of the key limiting factors to amateurs making mods for popular games is the expense and complexity of 3D modeling software. Few good coders are also artists. And few good artists are also coders.
Back in the day anyone could put Barney in DooM or Wolf3D. Now it takes expensive software and a lot of time to shoot up your favorite character you love to hate.
Work Safe Porn
flame me for being off-topic if you like... What's with the kid and the goat in the ad at the top of /. today? He's an "orphan" who says the goat saved the family - not his family, it would seem - - cause he's an orphan. Non-profiteering rears its ugly head... Not a nickel!
I rest my case.
Which knob modded this up? C'mon own up.
There's one born every minute.
This post contains benzene, nitrosamines, formaldehyde and hydrogen cyanide.
Yeah and the Video Toaster "took the power out of the hands of the Networks and put it in the hands of the People"
Blah Blah Blah
Get off my lawn.
Ah but in the near future you will need to get a copyright license to make a picture with a model taken from a real object.
Try using a glass Coke bottle, a Rubik's Cube or an Igloo cooler in your flick and see what happens.
There's another project in a similar field that researchers at Imperial College have been working on.
Take a look at http://www.doc.ic.ac.uk/~ajd/ and you'll see what I'm talking about.
This technique seems to work in a similar manner, but works based off the motion of the camera... so less limited.
It's not directly designed for the same purpose, but a couple of years back I spoke to the researchers when we were thinking of making use of the technology for modelling London Underground stations, and with a little development, they were pretty sure it could do the same thing as was being demonstrated.
I was thinking about robots one day and I was wondering why those who work on computer vision didn't do something like this. Instead of trying to get the machine to understand the analog world, why wouldn't it be better for the machine to have an internal representation of the world by making a 3d map? Quake 3 CoffeeShop, if you will.
The idea I had was that the vision system creates a 3d map with entities, mapped from the vision system as well, inside. The AI works within the 3d representation of the world. If the AI wants to move from A to B, it signals the body controlling subsystem to start walking. When the 3d representation, being informed by the vision system, tells the AI that it is at point B, then the AI signals to stop walking.
Hardware constraints not withstanding, is this model any good?
I'm just a lowly, early middle aged novice C programmer who has never actually done anything with robotics, so if what I said made no sense or is obviously idiotic, I do understand that my ideas are comin' outta my ass.
There seems to be a huge gap between these kind of academic projects and the commercial available programs. I have come across several commenrcial applications that can do these kind of things, but these applications cost at least a 1000 dollars or even more. And then there are all these academic projects (going on for at least two decades), which present nice video's and papers, and sometimes release some software. But when you look at the software, you discover that you first have to download nine other package and compile the whole thing and what you get is some kind of script you have to run, with all sorts of command line options. But sofar, I have never found an application with a solid interface on the level of the Gimp or Blender for the matter of the fact. I find this rather strange. I am almost getting the impression that some of the results are sold to the developers of the commercial packages.
Or their research is funded by the developers or tech companies indirectly. Academia receives a lot of support and funds from private industry. Intel, IBM, you name it, throws money at research institutions all the time. It may not be a direct tit for tat kind of transaction, but yes, many commercial products benefit from the publicly available research papers published by graduate and post-graduate research.
Academia takes care of the R in R&D. Not necessarily the D.
In the 2002 Science Fair at UGA, I swear this exact same project was there and won overall.
The major reason that these types of programs don't get expanded into commercial products or bought and integrated into existing products is that they are cute tech demos but not particularly real-world interesting.
Almost without exception anything simple enough for these types of reconstruction programs to handle is too simple to bother with. The paper church in the demo video for instance. The final wire-frame product is, sadly, crap. Neat and interesting crap but still crap. There are at least 3 times the polys that the form needs and almost all of the significant edges are in the wrong place. In the time it would take to clean up the data into something worth using I could build a better model form scratch including textures.
There are perhaps some very niche uses for this in terms of augmented reality. It could be integrated into a game or chat program to give a more realistic version of those make-an-avatar-from-your-webcam gimmicks that seem to gain attention every once and a while. If this guy has developed some very good algorithms he might get the interest of some of the match-moving software companies like Syntheyes.
But the reason this kind of this never shows up in profesional 3D packages is that if you are good enough to be using the software professionally you are good enough not to need these kinds of crutches. It's the 3D equivalent of Dreamweaver's auto-generated spaghetti code.
Is there any beginner-friendly 3d modelling software that doesn't require you to pay thousands of dollars even for non-commercial use?
I haven't read the article yet, but there's already a program doing this with cheap cameras, version 1.0 was free:
http://www.david-laserscanner.com/
There seems to be a huge gap between these kind of academic projects and the commercial available programs.
Indeed. Check out the work of Volker Blanz . He was producing amazing 3D models of celebrities from photographs a decade ago. Yet you can't get anything remotely that good today (I've used Facegen etc).
That's called "simultaneous location and mapping", and in the last five years, good algorithms have been developed and quite a few systems are more or less working. Search for "Visual SLAM".
The Samsung Hauzen vacuum cleaner uses Visual SLAM. There's a video. This is way ahead of the blundering Roomba.
Sadly anything useful from academia (not implying that this is) is spun off into private companies, 9 times out of 10. This despite the fact that it's mostly developed on public money.
Simplification is easy: answer "if this point was missing, what's the angular difference lost?" and if it's below a threshold then do it.
Then area thresholds could be set, or more logic to do it for you.
Science & open-source build trust from peer review. Learn systems you can trust.
People interested in this area may find the 'Motion Capture' Yahoo group useful.
Its website is located here:
http://movies.groups.yahoo.com/group/motioncapture/
A recent interesting message from the group (edited to evade ./ Junk filter):
---------- Forwarded message ----------
From: Brad Friedman
Date: Sun, Nov 15, 2009 at 9:35 AM
Subject: [motioncapture] releasing some optitrack open source software and code
To: mocap list
Hey all.
Been a while. I've been rather busy with other things.
I'm releasing some OptiTrack related open source software and code.
Two simple modules have been released. One is LGPL and one is BSD.
http://www.fie.us/kinearx
Its all alpha level stuff. But its working well enough for me to move on to other things. I feel its worth open sourcing something that runs, and does useful things. Even if its not feature complete and production tested.
Its really for developers more than end users for now. But this list is about developing tools. So there you go.
My theory is simple: This particular part of working with OT cameras is kinda generic and somewhat dull. I'd rather have an open source backend that we can all maintain together, than have to maintain it completely by myself. The windows app is LGPL. The example client, is BSD. Therefore, it should be good for open source and commercial developers who, like me, also want to collaborate on the dull backend and spend more time on other aspects of mocap systems. The projects are separated by a nice simple binary data stream layer to make sure their licenses don't conflict.
Two main features of interest:
1. Cameras operating on different computers can be synchronized by looping the sync cable through. The existing Arena and PointCloud tools from NP don't do this on their backend.
2. Development is jail broken out of the PC environment by the binary protocol. The example script is written in python and runs on OSX and linux, for example.
Further work to be done:
1. Better support of OT cameras other than the V100r1. That's the only camera I have, so that's what I know is supported. C120 and V100r2 are something I can't really confirm function of. But I'd like to.
2. Occasional sending of a GMT timestamp from the 2d servers, interleaved with the frames, for sanity checking purposes and helping with situations where the sync cable may not be working fully.
3. Switch between the mass marker mode, and COM object mode. This should make the grayscale and masking features of the camera work again (I think being in mass object mode disables them).
Feel free to e-mail me with questions or queries.
Brad Friedman
VFX - Consultant - Mocap
http://www.fie.us/
"Genius is one percent inspiration and 99 percent perspiration." Thomas Edison
I think that the 99% percent is often the problem with these projects. You come up with something, make a proof of concept, but it takes a lot more work to perfect it.
Ceterum censeo Microsoft esse delendam.
If you are not good enough to be using CAD software professionally than you are 99% of the new market this thing just created.