Slashdot Mirror


Increasing Video Detail Using Super-Resolution?

Cecil Esquivel asks: "I'm looking for ways to increase the quality of video by using super-resolution algorithms which use the visual information across multiple frames of video to increase the resolution of individual frames. I have found very little on the web that can do this effectively for the entire length of video. There is commercial software, VideoFOCUS, which produces hi-res stills from video, but doesn't seem to have a product for producing hi-res video from video. There is a thesis from Duke U. which is 6 years old, monochrome only and is mostly proof of concept.) Anybody out there have more information or is willing to help me develop some software that can do this? Darwin/Mac OS X solution that can work with QuickTime DV, preferred." Typically, super-resolution uses image samples generated from low-resolution and high-resolution samples of the same source, which is then converted into source independent information that can be used to increase detail for other low resolution sources. Has anyone seen programs that use super-resolution techniques for increasing the resolution of your typical digital video clip?

8 of 41 comments (clear)

  1. Some deinterlacers do similar work already by mcgroarty · · Score: 4, Interesting
    Some deinterlacers use the InterCine or Messe filters to approximate the data missing in alternate frames. There are other algorithms as well -- most interpolate the existing data to guess what would have been in the missing area, and some do look at previously known data for the missing area as well as analyzing moving ranges in previous/coming frames to guess where edges or patterns would continue.

    Looking at the state of deinterlacing technology and some of the "detail enhancing" resizing filters would be a good area for study.

    I'd *love* to see this used to help correct data errors in video streams as well. A DirecTV receiver with this built in would be cake++.

  2. Next generation imaging technology from X-10 by VisorGuy · · Score: 3, Funny

    Just imagine, you too could have a Beowulf cluster of X-10 cameras...

    --
    This user account is inactive account replaced by the PDA
  3. Spatial vs. Temporal by Wavy · · Score: 3, Informative

    I imagine increasing the spatial resolution for a frame of footage decreases the temporal resolution of the set of frames. My gut feeling is that you would see more after/pre-image than in the source.

    1. Re:Spatial vs. Temporal by MoOsEb0y · · Score: 3, Interesting

      Yes, typically there would be. However, if you look at the Duke U thesis, it uses MPEG's own motion vectors to determine when there's motion video (vs. a still scene) and compensate for this. Thus, what it will accomplish, is making still shots look a LOT better (and more compressible!), and in the fast-moving scenes it will do very little (but you won't notice it that much, either).

      If my programming skills were better, I've be VERY interested in seeing if this can be done with MPEG-2. Noise originating from the original video has always been my primary gripe with those kinds of sequences. if this could be compensated for and exported to MPEG-4.... MMM that would be tasty.

    2. Re:Spatial vs. Temporal by NanoGator · · Score: 3, Interesting

      "I imagine increasing the spatial resolution for a frame of footage decreases the temporal resolution of the set of frames."

      Not necessarily, though it'd require two passes.

      In the first pass, you generate a high res image by using motion tracking to figure out how far the camera turned. Then, using that motion, it can read the sub-pixel data. That's semi easy to do, it's been done before. Before long, you have a high-resolution image.

      Then, you do the second pass where you take that high resolution image and paste it on top of the low resolution footage using the motion tracking data to move the new pixels around in the right position. As long as the motion tracking data is reasonably accurate, then you could theoretically create a higher resolution video without losing temporal resolution. It's not clear to me, though, that there wouldn't be situations where that would break down.

      Man I hope I expressed that fairly clearly. I've got a little experience with digitally painting video to change the details of a scene.

      --
      "Derp de derp."
  4. Use VideoFocus by nomel · · Score: 2, Insightful
    from the videofocus website:
    http://www.salientstills.com/product/pro duct_intro .html

    Increased editorial choice: VideoFOCUS digitizes every single frame. You choose exactly the right shot from a video sequence to capture the perfect moment.


    So...just run it through video focus, make an avi with all the frames, add the original audio track, then compress them using some video compression...you have yourself a high res video! :)

    I'm guessing something will look strange, like funny blurs, or background motion or something. Who knows. I don't think it would do good with fast moving objects in the video...probably blur it real bad.

    It's worth a try though. :)
  5. Found some more information by MoOsEb0y · · Score: 3, Informative

    Ok, after googling for a little bit (I will never MSN anything!), I found a site who has done just what you were describing with MPEG video.

    http://www.ai.mit.edu/~brussell/research/sres/data /

    Anyways, it seems that without proper filtering, the output looks REALLY weird. (look at they guy walking in a circle in front of the quilt) It seems that the motion vectors from the MPEG get taken in as part of the detected edges somehow! Thus, this would be most useful for uncompressed analog video as an input.

  6. Re:Oh yea. I've seen this. by hawkstone · · Score: 2, Informative

    I realize the root was probably a troll (the AC, not you). Also, the submitter was technically asking about nearby frames. Realizing that, however, I'll respond anyway, because I feel the technique is at least worth a mention:

    There is nevertheless a form of super-resolution which works on standalone single frames. It depends on what you mean by "additional detail". Normally when magnifying images you would use nearest-neighbor, or better yet, bilinear interpolation. But a magnification using these methods will still look blocky.

    Now suppose you first detect the edges in your lo-res image. When you magnify, use that information to determine which pieces of the newly created pixels should be colored what. You can use a similar concept for textured areas without edges. The result? Through some simple assumptions, you get much better magnification than through other schemes.

    If a star in your original image is a 5-pixel plus pattern, a super-resolution image might turn it into a circle. Though not strictly accurate, this is in fact not a bad result in many situations. However, you're right that there is really no more detail; if a star was not visible in the original image, it never will be.