Computing interpolated frames (also referred to as “in-between” frames) of a video is a task that may be carried out during some types of image and/or video processing. Interpolating frames may be a step in numerous applications such as frame rate conversion (e.g., between broadcast standards), temporal upsampling for generating slow motion video, image morphing, virtual view synthesis, and/or other applications. Some solutions to frame interpolation may include computing pixel correspondences (e.g., by leveraging optical flow, stereo, and/or other methods), correspondence-based image warping, and/or other techniques. Due to inherent ambiguities in computing correspondences, some methods may be heavily dependent on a computationally expensive global optimization and/or may require considerable parameter tuning.
With today's trend in the movie and broadcasting industry toward higher resolution and higher frame rate video (e.g., cameras may support 4k resolution at 120 frames per second and beyond), there may be a need for interpolation techniques that may deal efficiently with this considerably larger data volume. Standard optical flow techniques based on global optimization may become inefficient for interpolating this type of large-scale, densely sampled video.