GPU (Graphics Processing Unit) acceleration method used for hierarchical searching motion estimation

A technology of layered search and motion estimation, applied in the field of video processing, can solve problems such as inability to meet actual needs, limited search range, etc., to reduce communication, avoid thread idling, and improve processing speed.

CN102647588BActive Publication Date: 2014-09-24PEKING UNIV SHENZHEN GRADUATE SCHOOL
3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Publication Date
2014-09-24

Smart Images

  • Figure 1
    Figure 1
  • Figure 2
    Figure 2
  • Figure 3
    Figure 3
Patent Text Reader

Abstract

The invention discloses a hierarchical searching motion estimation method used by utilizing GPU (Graphics Processing Unit) parallel computing capability acceleration, and the method comprises the following steps: generating images of different image layers in a hierarchical searching algorithm; self-adaptively carrying out threading distribution; carrying out SAD computation on each search image block at each search point in parallel; and utilizing a CPU (Central Processing Unit) to cooperatively look for the smallest SAD in parallel. The self-adaptive threading distribution scheme provided by the invention can satisfy the requirement of the resolution ratios of different searched images and the size of a searching area, the image downsapling is processed by the GPU in parallel to obtain better acceleration speed and reduce data communication between the CPU and the GPU, and the GPU can be effectively prevented from idling with a smallest SAD value lookup method cooperatively carried out by the GPU / CPU.
Need to check novelty before this filing date? Find Prior Art

Description

technical field

[0001] The invention relates to a motion estimation method in the field of video processing, in particular to a layered search motion estimation acceleration method using a GPU to assist a CPU. technical background

[0002] Motion estimation is an important technology in the field of video processing, and plays an important role in applications such as hybrid video coding based on block matching, motion detection, and object tracking. The motion estimation algorithm calculates the SAD values ​​of all or part of the possible search points within the search range for each block, and obtains the best or near-best motion vector by finding the smallest SAD value. The full search motion estimation algorithm calculates the SAD of each possible point within the search range, and finally obtains the best motion vector. The full search motion estimation algorithm has a high computational load. Therefore, there are many fast search algorithms, such as three-step searc...

Examples

Embodiment Construction

[0034] The present invention will be described in detail below in conjunction with the accompanying drawings and embodiments. This embodiment is only an embodiment of the present invention but not all embodiments.

[0035] Layered search motion estimation is performed on a video sequence with a resolution of 1920×1080. The search image block size on the original image layer is 8×8, and the search area should cover an area centered on the current block with a width and a height of 256 pixels. A thread block of the used GPU can have 512 threads, and the warp size in the thread block is 16 threads.

[0036] In this application scenario, the following embodiment can be adopted to divide three image layers: the first image layer is the original image layer, the size of the search image block is 8×8, and the search area is an 8×8 area centered on the current block; The second image layer is a 960×540 resolution image downsampled from the original image, the search image block size ...