Slashdot Mirror


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."

32 of 123 comments (clear)

  1. Interesting study by Omniscientist · · Score: 4, Interesting

    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

    1. Re:Interesting study by balloonhead · · Score: 2, Informative

      But you could cheaply get intermediate quality video. The multiple CMOS give a rolling image (look at the guys' shoulders and you'll notice the rotation from the multiple POV) and gives slow-mo without (as another poster points out) having a quick enough shutter time for high-speed analysis. But these 30fps things that make up webcams are usually pretty low quality.

      With these you can get more detail than the shitty webcams without shelling out on high end equipment. This has remarkably few uses, but with this theory working in practice opens up other avenues - like using higher quality CMOS sensors, which are improving all the time (think digital cameras), so that rather than 50 CMOS giving a crappy picture you either use 20 higher fps/quality ones for the same/better output with less roll, or 50 for more fps/higher quality.

      Still, there are only a few applications, but the software to run it should be pretty easy to manage - then all you need to do is plug in X number of cameras depending on your needs.

      I think.

      --
      This idea was invented by Shampoo.
    2. Re:Interesting study by balloonhead · · Score: 2, Interesting

      Sorry to reply to my own post, but as an e.g. - put two CMOS in the same housing with this software and you suddenly doubled the fps on your low-end camera. With the right engineering you wouldn't notice the two adjacent POV.

      These things are cheap as hell, it's much easier to double them up than produce one of twice the quality.

      --
      This idea was invented by Shampoo.
    3. Re:Interesting study by dsginter · · Score: 2, Informative

      I would be interested to see how this could present itself in a regular consumer atmosphere...

      It is funny that you used the word "atmosphere" but that might be one of the applications: combustion research.

      A friend of mine works at General Motors doing combustion chamber research. Basically, with a high-speed camera, he films the combustion in what basically amounts to an engine with a glass block and cylinder head. They currently film at 900fps with an industrial film based camera. This is quite expensive so it takes a lot of paperwork to run the thing.

      This new digital unit would be ideal. Ultimately, it will probably allow reduced emmissions from automobiles. Diesel is the next big thing but we've got to reduce emmissive levels on those before they become widely accepted.

      So yes, this will present itself to the consumer atmosphere. Just indirectly. Oh, and when you watch that balloon popping, just imagine Keanu saying, "whoa!" and you get another application.

      --
      More
    4. Re:Interesting study by iNetRunner · · Score: 2, Funny

      Consumers eh.. So the 100TB would fill up of 1000fps pr0n?

      --
      Store with salt
  2. Nothing to see here by LiquidCoooled · · Score: 3, Funny

    Nothing to see here.

    Quite convenient for a story about a slashdotted camera.

    --
    liqbase :: faster than paper
  3. Questions by Anonymous Coward · · Score: 3, Interesting

    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?

    1. Re:Questions by conteXXt · · Score: 3, Informative

      time pulse code. (SMTPE? or something like that)

      Same way they sync audio and video in sound studios.

      Video track (or a seperate track) carry a pulse carrier. Audio track syncs to that.

      --
      The truth about Led Zep should never be told on /. (Karma suicide ensues)
    2. Re:Questions by eclectro · · Score: 3, Funny

      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?

      You know, there might be a reason why those people are at Stanford.

      --
      Take the cheese to sickbay, the doctor should see it as soon as possible - B'Elanna Torres, "Learning Curve"
    3. Re:Questions by Anonymous Coward · · Score: 3, Insightful

      If you were to capture at 1000fps, then each camera would ideally have a sample window within that 1/1000 sec.

      Are the CMOS sensors designed for 30fps sensitive enough to capture a picture without having long exposure time? i.e. Can it handle the 1/1000 sec exposure time without a very dark image that is destroyed by the noise floor.

      Would the sensor analog circuits have fast enough rise/fall time to have bandwidth(1) for that type of frequence response? The overall system bandwidth & sampling rate limits the time resolution and accuracy of such a system. (2)

      The parent post is asking for the time uncertainty of when the accuracy sampling occurs. Nothing to do with time coding. Time coding is meaningless when you trigger is not accurate.

      Note:
      1. bandwidth = frequence bandwidth not data transfer rate in this context
      2. This is reason why you have to use a scope (A/D) & probe (sensor) that are a few time faster than the rising/fall edge of the signal you are trying to measure. In a digital sampling scope, the A/D works very slowly by repeatly sampling on the repetitive waveform by introducing a time delay in each capture cycle to build up the information. The scope still need good frequence response to do so accurately.

  4. Re:Haha! by LiquidCoooled · · Score: 4, Interesting

    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 :: faster than paper
  5. Question... by Jace+of+Fuse! · · Score: 2, Insightful

    It's not that I don't think this is cool, because I can see all kinds of uses for this sort of thing.

    But my question is this...

    Are there any uses for high speed video capture that existing technologies weren't already well suited for, or is this just a cheaper and more readily available option?

    --

    "Everything you know is wrong. (And stupid.)"

    Moderation Totals: Wrong=2, Stupid=3, Total=5.
    1. Re:Question... by LiquidCoooled · · Score: 5, Interesting

      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 :: faster than paper
    2. Re:Question... by Anonymous Coward · · Score: 2, Interesting

      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.

    3. Re:Question... by Woogiemonger · · Score: 2, Insightful

      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.

      First off, that water balloon video, which is 4000fps instead of the ~1600fps camera array video, is really awesome. However, if, for some deranged scientific experiment/research, 4000fps isn't good enough, perhaps you can build an array of 52 professional 4000fps cameras to achieve a whopping 208,000fps :)

    4. Re:Question... by jolshefsky · · Score: 2, Insightful
      I can see this as being an option for small video producers who'd like to create good looking slow-motion video. For instance, if you're a local producer of television commercials (or an independent filmmaker who shoots on video) and would like to record something in slow motion without resorting to a studdering sub-20fps image (from 30fps video) this might be an inexpensive alternative.

      I've always wondered how half-speed video from football games looks so damn good. I assume they're using expensive double frame rate cameras. To mimic this effect cheaply would be handy.

      Now the need for 1000fps plus ... well, I'm not sure. Maybe science classes ...

      --
      --- Jason Olshefsky

      Karma: Poser (mostly affected by adding this line long after everyone else did)

  6. Possible storage solution by eclectro · · Score: 2, Funny


    If you are hard up for disk space for this, may I suggest emailing frames to this free email account

    I know it's a hack, but whatever gets the job done, right??

    --
    Take the cheese to sickbay, the doctor should see it as soon as possible - B'Elanna Torres, "Learning Curve"
  7. Next SciFi Movie by Anonymous Coward · · Score: 2, Funny

    will be a 2 hour long film of a pin dropping.

  8. Possible application by GrAfFiT · · Score: 4, Funny

    ..ultra slow motion capture of a melting /.ed server. Hey I can see the individual /.ers GET / packets flowing through the fast ethernet port !

  9. Sensors by sendorm · · Score: 3, Interesting

    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.

  10. Porn for the Aware Consumer by KrunZ · · Score: 2, Funny

    And now we know what the quality aware consumer as a minimum should expect from our beloved video producers:

    No less than 1000 fps facials.

  11. Paralax issue by GrAfFiT · · Score: 4, Insightful

    Instead of having a hawkwardly swinging background, why wouldn't they use a set of rotating mirrors to sequentially distribute the light to the different sensors from a single entry point ?

    1. Re:Paralax issue by Narphorium · · Score: 2, Insightful
      I was think of something very similar, except instead of rotating the mirrors, why not just set them up to provide some sort of kaleidoscope effect.

      Either way, its still some pretty cool tech.

    2. Re:Paralax issue by Anonymous+Custard · · Score: 3, Funny

      Instead of having a hawkwardly swinging background, why wouldn't they use a set of rotating mirrors to sequentially distribute the light to the different sensors from a single entry point ?

      Duh! Because obviously it'd take some kind of super-genius to reconfigurize the franglehum reflectus so as to porta-pride the whoozimotron without disrupting the stratus field generator.

  12. Re:What's the big deal? by moriya · · Score: 3, Informative

    I believe the point in producing this is to show that instead of purchasing expensive high-framerate cameras that has some sky-high pricetag, one can use an alternate and cheaper solution by using CMOS sensors. So let's try placing a couple of things into perspective.

    Say you require a camera that can record say 90fps. To a manufacturer of electronic parts, this can be achieved with a little bit of engineering. Basically, take 3 of those 30fps CMOS sensors, pack them together, set a uniform color correction setting, and an interface to send the captured information to. All this would probably costs lots less than a specialized camera that can capture 100fps or so.

    If you were to walk around in a computer shop or your local Best Buy, CompUSA, Microcenter, Circuit City, or Fry's, you might have noticed that there are quite a few webcams around, all of which uses the same 30fps CMOS described at the link. The CMOS themselves are likely cheap enough that, in theory, you can assemble a few together and have a 90fps camera. I would assume that the spatial distortion would be next to nil since 3 sensors are closely together.

    Please correct me on any points. I believe the concept is interesting and would have some useful uses out there (ie. spectator sports, research, film).

  13. ..but why bother by Anonymous Coward · · Score: 3, Insightful

    Reading between the lines, they seem to have custom hardware and (maybe?) an MPEG encoder behind each camera, and a huge amount of software and general hassle to get an unwieldy and inflexible system to work at all. The upper limit on frame rate is about 5K/sec due to the integration time, but they would need about 160 cameras to achieve this continuously, and a hell of a lot of processing to produce sensible output. A lot of effort for something that isn't actually very useful.
    For the same or less money/effort I have no doubt they could have either bought a purpose-made high-speed cam, or built one using something like This chip from Micron, which costs less than $2K and does 500 full-frame megapixel images per second, faster for partial frames. One neat feature is that it can effectively image individual lines at arbitary places in the frame at 500,000 per second - I'm sure these academic types could do some interesting interpolaty stuff with this to synthesise full-frame-like images at pretty high rates instead of messing with a system that doesn't have any realistic practical use.

  14. Re:shutter speed by Kiryat+Malachi · · Score: 5, Informative

    All of the CCDs run at 30 FPS. So, yes, they can scale this almost endlessly (until the parallax variation from non-colocated image captures becomes extreme, basically, or until the trigger timing required becomes too hard to achieve and jitter begins to be large enough to significantly alter your frame timing/sequencing).

    The trick is that A runs on 0.000, 1.000, 2.000, etc. while B runs on 0.001, 1.001, 2.001, etc., C is on 0.002, 1.002, 2.002, etc. (units are frames relative to a starting time), and then the frames are sequenced appropriately (ABCABCABC etc.). This gives a very high frame rate while using relatively low-cost sensors - effectively, they're exploiting parallelism as a way to increase the array's effective sampling rate.

    Basically, if you have N sensors capable of sampling X times per second each, and are capable of accurately triggering each sensor to a high degree of time accuracy, your effective sampling rate can be NX. Neat trick.

    --

    ---
    Mod me down, you fucking twits. Go ahead. I dare you.
    (I read with sigs off.)
  15. Too slow .. by BESTouff · · Score: 5, Funny

    I downloaded their sample videos, but they keep playing really too slowly. I'm affraid their technology isn't quite ready yet ..

  16. Stanford invented motion photography by peter303 · · Score: 2, Informative

    California Governor Leland Stanford employed Eadweard Muybridge to settle a bet whether a horse gallopss with all four feet off the ground. Muybridge took the first motion picture by chaining 16 cameras together. The horse farm of this experiment is tucked away in a corner of the Stanford college campus which was founded ten years later.

  17. Questions answered in their paper. by twitter · · Score: 2, Interesting
    The more I look at this, the more I think they are making life difficult for themselves, and the resultant image quality shows.

    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.

  18. millions of frames per second by Animaether · · Score: 2, Interesting

    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.

  19. Author's Comments on Camera Arrays by bennettw · · Score: 5, Insightful
    I'm glad to see so much discussion of our (the Stanford Graphics Lab) work here! After reading through the discussion, I have a couple points that I'd like to make.

    First, this work is part of a larger research effort. In the past several years, cameras have become cheap, commodity devices, and you still get more processing power for the buck every year. I designed the Stanford Multiple Camera Array (http://graphics.stanford.edu/projects/array) not to be a high-speed camera, but to be a research tool for exploring the potential of large numbers of cheap image sensors and plentiful processing. High-speed video is one example of high-performance imaging using an array of cameras. We have also used our array for synthetic aperture photography, using many cameras to simulate a camera with a very large aperture. Such a camera has a very narrow depth of field, a property we exploit to look through partially occluding foreground objects like foliage. We are interested in view interpolation (Matrix-like effects, but with user control over the virtual camera viewpoint), too. If you want to learn more about the array and these applications, check out the links to our papers and my dissertation on the camera array website.

    About the high-speed video work in particular, there are plenty of commercial high-speed cameras that run at higher frame rates than our camera array. If you want high-speed video camera, I recommend buying one of them. Using an array of cheap cameras has its disadvantages. You have to geometrically and radiometrically calibrate the data from all the different sensors, and in our case, we had to deal with the electronic rolling shutter. One benefit of this work for us was developing accurate and automatic (very important for 100 cameras) calibration methods for our array. An interesting property of the camera array approach is that parallel compression reduces the bandwidth so we can stream continuously. By contrast, as frame rate increase, most high-speed cameras are limited to recording durations that will fit in memory at the camera, usually well under one minute. That said, one could certainly design architectures to compress high-speed video in real-time.

    What's most interesting to me about the high speed work is combining it with other multiple camera methods. One example is spatiotemporal view interpolation--capturing a bunch of images of a scene from different positions and times, then generating new views from positions and times not in the captured data. Think Matrix again, but with user control over the virtual camera view position and time. While the BulletTime setup from Manex captured one specific space-time camera trajectory, my goal is to capture images in a way that would let us create many different virtual camera paths later on. Traditional view interpolation methods use arrays of cameras synchronized to trigger simultaneously so they can reason about shape of the "frozen" scene, then infer how the scene is moving. In my thesis, I discuss how using the high-speed approach of staggered trigger times increases our temporal sampling resolution (effective frame rate) and can enable simpler interpolation methods. The interpolation algorithm I describe is also exactly the correction needed to eliminate the jitter due to parallax in the high-speed video sequences.

    I've described just a few of the applications we've investigated using our camera array, but we hope this is just the tip of the iceberg. We're hard at work on new uses for the cameras, so stay tuned.