Reciprocal Subpixel Motion Estimation: Video Coding With Limited Hardware Resources
Conventional block-based video coding with subpixel motion compensation, requires a large pool of memory for storing up-sampled reference frames. The size of this memory for many applications, especially for encoding high definition source materials is a major design consideration. In this paper, the concept of reciprocal block matching is introduced based on the relativity of motion, especially, the translational motion. As one of the main applications for this technique, subpixel motion estimation is revisited to achieve efficient video coding when the underlying hardware only provides a small size of memory. A byproduct of the proposed algorithm is an encoding-speed boost when the encoder is to be deployed on a hardware platform with general-purpose data-caching features. This includes almost all personal computers which happen to be the main platform for desktop publishing applications. Analysis of direct (conventional) and reciprocal (proposed) subpixel motion estimation is provided to identify the sources of discrepancies between these two techniques. Finally, experimental results are provided to show the efficiency of proposed block matching scheme. All simulations are done within the frame work of reference H.264/AVC video coder