High-Speed Video Using a Dense Camera Array
karvind writes "Researchers at Stanford have demonstrated multi-thousand frame-per-second (fps) video using a dense array of cheap 30fps CMOS image sensors. A benefit of using a camera array to capture high speed video is that we can scale to higher speeds by simply adding more cameras. Even at extremely high frame rates, our array architecture supports continuous streaming to disk from all of the cameras. Now we know where to use 100TB tape drives and what to expect in the next sci-fi movie."
This is a very interesting development. If you watch the movies (especially the movie with balloon popping, I think its the third movie), you will see that this is an extremely accurate capture of the event. I would be interested to see how this could present itself in a regular consumer atmosphere...multiple cameras would not exactly make the cut. But yes, it does give a good idea on how to use the 100TB tape drives
How do they put all the footage together in the correct 'order', that is to say where each frame is in sequence.
How can they be sure that none of the cameras capture the same instant of the action?
To be honest, for the examples given, the image quality is somewhat lacking.
I can imagine this working REALLY well for crash simulation studies where the subject is a greater distance from the camera array.
The baloon popping movie needs quite severe modification to the captured images, and doesn't do much justice.
The effect has already been used in bullet time type fx effects anyway, they used an array of cameras firing in a sequence whilst laid around a subject.
The effect with bullet time is a lot cleaner because the captured images are not expected to be spatially aligned, and instead are made to give the effect of moving the camera around a subject.
liqbase
T think "cheap 30fps CMOS image sensors" simply refer to webcams. From the quality i've seen, they might be in the order of 20$ per unit, which makes to whole camera array about 1000$. Also those webcams do not produce thousand of megabytes, even at rates of 1MB/min you can get decent quality, which makes the video stream to be about 50MB/min.
I don't think so.
The more I look at this, the more I think they are making life difficult for themselves, and the resultant image quality shows.
Since making my first postings on this discussion, I decided to have a look around at how the professionals handle high speed photography and came up with some nice results.
Theres a company called Photron that have a range of single digital cameras capable of megapixel images at 2000fps.
In their gallery, they even have an example of a water filled baloon popping, and tbh it looks a lot better than this multi camera version.
Agreed, this is a way to do it on the cheap, but because of the spatial issues and timing complexities, it may be more trouble than its worth, and may well be wise to buy a camera from the professionals.
liqbase
So do we have any wagers for how much one of these puppies goes for? 5 digits?
One tradeoff is that these high speed cameras are typically event driven - Once you start them, they record onto local memory (Since there is no way of bursting megapixel*kilohertz => gigabytes/second. With the camera array, it is possible to get a continuous stream. Dunno if it is worth anything to anybody though.
Yeah, they mention Photron in their paper. As nice as that camera is, it can only store a few seconds at 800x600. The system you are looking at will run till you run out of space. The paper is a well written 320kB pdf and more worth your download time than the movies themselves.
Now, here are a few thoughts of my own. Some of the image quality problems you notice might be a side effect of reducing the movie to something that can be downloaded and played by the average web surfer. Higher quality image capture devices will become cheaper and this method will improve with that. More importantly, this system seems to not take any non free software to use. A wizzbang camera soon becomes a big pain in the ass if it's tied to special drivers that tie you to a specific operating system on a specific computer. it may be more trouble than its worth, and may well be wise to buy a camera from the professionals.
What you use is up to you and your needs, but these people are NOT making their life difficult in a pointless exercise. They have met their needs in a real way and could have kept it to themselves. I'm happy they decided to share and realize that much of the difficult work is now simply done. The authors, by the way, are members of the EE and CS departments of Stanford University. That makes them pros to me, and I'm about as well off reading their manual as I am reading one from a camera maker.
Friends don't help friends install M$ junk.
Sure, it's a lot more expensive, but there's dedicated camera systems that'll do a million frames per second - and more.
:
One of the bigger problems, especially with this 'array', though has been noted above : exposure time.
This might be correctible post-shooting, though. As each frame's exposure will overlap the next, whatever is similar in both could be presumed a no-motion area. Gets quite tricky, though.
And of course the array posted about has parallax issues, etc. etc.
Here's a fun high-end-ish camera
http://www.cordin.com/productsie.html
The 510 at 25,000,000 fps for example. Only captures 48 frames, but that should be enough for something fun...
Light travels at ~300,000,000m/s
In the delta between frames*, light should thus travel 12 meters.
Over 48 frames, it should travel 576 meters.
In other words... if you set this camera up, hooked the shutter to a flash so that the flash fires the exact moment the camera starts its run, then you should be able to see the light travel down, say, a hallway.
Better yet...if the flash is short enough, you should see a 'shelled sphere' sort of shape pass through the hallway, and bounced light bounce off the walls to other objects where the direct light from the flash wouldn't reach.
Can't say I've seen any real-life animations of this, though. There's a few temporal raytracers that can do this.
* again: exposure time means there's some blurring. You don't take a picture of a single moment in time. If you did, you would likely get no picture at all as no photon / electron / film-state change would occur to be recorded.