A 4-Tap Motion Compensation Interpolation Filter with 16-bit Implementation
Original Publication Date: 2008-May-02
Included in the Prior Art Database: 2008-May-02
Chengie Tu: INVENTOR [+4]
Abstract The present design is a 4-tap filter that reduces computational complexity and can be implemented by a programmer utilizing 16-bit arithmetic. Coding performance is comparable to current 6-tap filter and outperforms the H.241 RCDO interpolation method for 4CIF sequences. The present 4-tap filter can be to adopted for luma (achromatic image without any color) in Scalable Video Coding high resolution videos, such as standard definition and higher, or 720p and higher, enhancement layers. The present design can also be utilized as an optional interpolation filter for low resolution videos.
Motion compensation is a key component of video compression for describing an image in terms of a transformation of a reference image to a current image. Compression efficiency can be improved when images are accurately predicted from reference images, which may be earlier or later in time. An interpolation process is utilized to construct an intermediate image for a new intervening frame for a motion picture, showing a moving object in an intermediate position between positions shown in two original consecutive frames. The complexity of an interpolation process for generating predictions for sample values can be determined by the amount of prediction error and how much computation is involved in generating a prediction value. Scalable Video Coding (SVC) is an extension of the H.264 video compression standard, which was developed by the Joint Video Team (JVT). SVC standardization enables encoding of a high-quality video bitstream containing one or more subset bitstreams that can themselves be decoded with a complexity and reconstruction quality similar to that achieved using existing H.264 design.
In a current design of SVC extension for H.264, the motion compensation interpolation filter is 6-tap. This design has left a need to shorten the SVC interpolation filters in order to reduce computational complexity. This need is greater for CPU-demanding high resolution videos that require real-time decoding, and also for mobile devices that require ample battery power. To overcome the aforementioned drawback, others have proposed to use the H.241 Reduced-Complexity Decoding Operation (RCDO) interpolation method of Annex B/H.241 at enhancement layers. H.241 RCDO uses a 6-tap filter for horizontal interpolation and a 4-tap filter for vertical interpolation. Although the complexity is marginally lower, the performance penalty is noticeable. Another problem associated with prior designs of interpolation is that different fractional pixel locations are interpolated very differently, requiring multiple code paths and increasing software and hardware complexity. Additionally, for 8-bit data, the prior interpolation process does not fit in 16-bit arithmetic.
Due to the aforementioned problems, a need exists to provide a filter design that reduces computational complexity while maintaining good quality. Thus, a 4-tap filter for SVC enhancement layer motion compensation interpolation was designed. The design shortens SVC motion compensation interpolation filters from 6 taps to 4 taps in order to reduce computational complexity. The 4-tap filter can also be implemented using 16-bit arithmetic for 8-bit input. The interpolation process is uniform for all p...