Paper
8 February 2005 Motion estimation and compensation optimization on IA32 CPU
Yihua Du, Chang Liu
Author Affiliations +
Abstract
Motion estimation (ME) and compensation (MC) is critical to the performance of an encoder, because the procedure is computationally intensive. To reduce the calculation, people work out some kinds of fast search algorithms for motion estimation, and dramatically improve the performance. This paper uses the Intel Pentium CPU's MMX, XMM registers and some Single Instruction Multiple Data (SIMD) instructions to accelerate the calculation, especially, uses PNI (Prescott New Instruction). We could load more pixels' values to a register at the same time. With PNI’s instruction LDDQU, we could load 16 bytes to XMM register even they cross a cache line boundary. Therefore, we could calculate (add, subtract, average, get absolute differences) multiple samples in a single operation. The parallel operations will significantly increase the speed of the ME and MC, irrespective of which kind of search algorithm.
© (2005) COPYRIGHT Society of Photo-Optical Instrumentation Engineers (SPIE). Downloading of the abstract is permitted for personal use only.
Yihua Du and Chang Liu "Motion estimation and compensation optimization on IA32 CPU", Proc. SPIE 5637, Electronic Imaging and Multimedia Technology IV, (8 February 2005); https://doi.org/10.1117/12.574305
Advertisement
Advertisement
RIGHTS & PERMISSIONS
Get copyright permission  Get copyright permission on Copyright Marketplace
KEYWORDS
Motion estimation

Computer programming

Video

Video compression

Multimedia

Algorithm development

C++

RELATED CONTENT

Fast software-only H.263 video codec
Proceedings of SPIE (October 06 1997)
4:1 checkerboard algorithm for motion estimation
Proceedings of SPIE (November 14 1996)
Fast video segmentation using encoding cost data
Proceedings of SPIE (December 17 1998)
Flow estimation for motion analysis on compressed domain
Proceedings of SPIE (December 18 2003)

Back to Top