Apparatus and method for quadtree based variable block size motion estimation
First Claim
1. Method for determining a tree structure for performing variable block size motion estimation for an image frame, where said tree structure has a plurality of blocks organized in a plurality of levels with a parent-child relationship, said method comprising the steps of:
- (a) partitioning the image frame into a plurality of blocks down to a lowest level of the tree structure;
(b) calculating a distortion for encoding each of said plurality of blocks, by selecting a quantizer scale that produces a minimum Lagrangian cost for each of said plurality of blocks;
(c) comparing a sum of said distortions for a set of children blocks with said distortion of a corresponding parent block; and
(d) adjusting a size of said parent block in accordance with a result from said comparing step.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for determining an optimal quadtree structure for quadtree-based variable block size (VBS) motion estimation. The method computes the motion vectors for the entire quadtree from the largest block-size to the smallest block-size. Next, the method may optionally select an optimal quantizer scale for each block. The method then compares from "bottom-up" the sum of the distortion from encoding all sub-blocks or sub-nodes (children) as compared to the distortion from encoding the block or node (parent) from which the subnodes are partitioned from. If the sum of the distortion from encoding the children is greater than that of the parent then the node is "merged". Conversely, if the sum of the distortion from encoding the children is less than that of the parent then the node is "split" and the Lagrangian cost for the parent node is set as the sum of the Lagrangian cost of its children. This step is repeated for the all nodes through every level until an optimal quadtree structure is obtained.
-
Citations
17 Claims
-
1. Method for determining a tree structure for performing variable block size motion estimation for an image frame, where said tree structure has a plurality of blocks organized in a plurality of levels with a parent-child relationship, said method comprising the steps of:
-
(a) partitioning the image frame into a plurality of blocks down to a lowest level of the tree structure; (b) calculating a distortion for encoding each of said plurality of blocks, by selecting a quantizer scale that produces a minimum Lagrangian cost for each of said plurality of blocks; (c) comparing a sum of said distortions for a set of children blocks with said distortion of a corresponding parent block; and (d) adjusting a size of said parent block in accordance with a result from said comparing step. - View Dependent Claims (2, 3, 4, 5, 7, 8, 9, 10, 12)
-
-
6. Method for determining a tree structure for performing variable block size motion estimation for an image frame, where said tree structure has a plurality of blocks organized in a plurality of levels with a parent-child relationship, said method comprising the steps of:
-
(a) partitioning the image frame into a plurality of blocks down to a lowest level of the tree structure; (b) calculating a distortion for encoding each of said plurality of blocks, by selecting a quantizer scale that produces a minimum Lagrangian cost for each of said plurality of blocks; (c) comparing a sum of said distortions for a set of children blocks with said distortion of a corresponding parent block; and (d) adjusting a size of said parent block in accordance with a result from said comparing step, wherein said comparing step (c) and adjusting step (d) are conducted using a top-down search pattern, and wherein said distortion calculating step (b) only calculates a distortion for said plurality of blocks that are grown.
-
-
11. Method for determining a tree structure for performing variable block size motion estimation for an image frame, where said tree structure has a plurality of blocks organized in a plurality of levels with a parent-child relationship, said method comprising the steps of:
-
(a) partitioning the image frame into a plurality of blocks down to a lowest level of the tree structure, wherein said plurality of blocks are affine blocks; (b) calculating a distortion for encoding each of said plurality of blocks by selecting a quantizer scale that produces a minimum Lagrangian cost for each of said plurality of blocks; (c) comparing a sum of said distortions for a set of children blocks with said distortion of a corresponding parent block; and (d) adjusting a size of said parent block in accordance with a result from said comparing step. - View Dependent Claims (13)
-
-
14. Apparatus for encoding an input image which is partitioned in accordance with a tree structure, where said tree structure has a plurality of blocks organized in a plurality of levels with a parent-child relationship, said apparatus comprising:
-
a variable block motion estimation module for computing a plurality of motion vectors for all of said plurality of blocks for the entire tree structure of the input image to obtain an optimal tree structure; a motion compensation module, coupled to said variable block motion estimation module, for generating a predicted image using said plurality of motion vectors for said optimal tree structure; a transform module, coupled to said motion compensation module, for applying a transformation to a difference signal between the input image and said predicted image, where said transformation produces a plurality of coefficients; a quantization module, coupled to said transform module, for quantizing said plurality of coefficients; and a rate control module, coupled to said quantization module, for selecting a quantizer scale that produces a minimum Lagrangian cost for each of said plurality of blocks. - View Dependent Claims (15, 16, 17)
-
Specification