Methods for motion estimation with adaptive motion accuracy
First Claim
1. A fast-search adaptive motion accuracy search method for estimating motion vectors in motion-compensated video coding by finding a best motion vector for a macroblock, said method comprising the steps of:
- (a) searching a first set of motion vector candidates in a grid of sub-pixel resolution of a predetermined square radius centered on V1 to find a best motion vector V2 using a first criteria;
(b) searching a second set of motion vector candidates in a grid of sub-pixel resolution of a predetermined square radius centered on V2 to find a best motion vector V3 using a second criteria;
(c) searching a third set of motion vector candidates in a grid of sub-pixel resolution of a predetermined square radius centered on V3 to find said best motion vector of said macroblock using a third criteria; and
(d) wherein at least one of said first criteria, said second criteria, and said third criteria is a rate-distortion criteria.
0 Assignments
0 Petitions
Accused Products
Abstract
Methods for motion estimation with adaptive motion accuracy of the present invention include several techniques for computing motion vectors of high pixel accuracy with a minor increase in computation. One technique uses fast-search strategies in sub-pixel space that smartly searches for the best motion vectors. An alternate technique estimates high-accurate motion vectors using different interpolation filters at different stages in order to reduce computational complexity. Yet another technique uses rate-distortion criteria that adapts according to the different motion accuracies to determine both the best motion vectors and the best motion accuracies. Still another technique uses a VLC table that is interpreted differently at different coding units, according to the associated motion vector accuracy.
22 Citations
28 Claims
-
1. A fast-search adaptive motion accuracy search method for estimating motion vectors in motion-compensated video coding by finding a best motion vector for a macroblock, said method comprising the steps of:
-
(a) searching a first set of motion vector candidates in a grid of sub-pixel resolution of a predetermined square radius centered on V1 to find a best motion vector V2 using a first criteria; (b) searching a second set of motion vector candidates in a grid of sub-pixel resolution of a predetermined square radius centered on V2 to find a best motion vector V3 using a second criteria; (c) searching a third set of motion vector candidates in a grid of sub-pixel resolution of a predetermined square radius centered on V3 to find said best motion vector of said macroblock using a third criteria; and (d) wherein at least one of said first criteria, said second criteria, and said third criteria is a rate-distortion criteria. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 24)
-
-
9. An adaptive motion accuracy search method for estimating motion vectors in motion-compensated video coding by finding a best motion vector for a macroblock, said method comprising the steps of:
-
(a) searching a first set of motion vector candidates in a grid centered on V1 using a first criteria to find a best motion vector V2 using a first filter to do a first interpolation; (b) searching a second set of motion vector candidates in a grid centered on V2 using a second criteria to find a best motion vector V3 using a second filter to do a second interpolation; and (c) searching a third set of motion vector candidates in a grid centered on V3 using a third criteria to find said best motion vector of said macroblock using a third filter to do a third interpolation; (d) wherein at least one of said first criteria, said second criteria, and said third criteria is a rate-distortion criteria. - View Dependent Claims (10, 11, 12, 13, 14, 15, 25)
-
-
16. An adaptive motion accuracy search method for estimating motion vectors in motion-compensated video coding by finding a best motion vector for a macroblock, said method comprising the steps of:
-
(a) searching at a first motion accuracy for a first best motion vector of said macroblock; (b) encoding said first best motion vector and said first motion accuracy; (c) searching for at least one second best motion vector of said macroblock at an at least one second motion accuracy; (d) encoding said at least one second best motion vector and said at least one second motion accuracy; and (e) selecting the best motion vector of said first and at least one second best motion vectors using rate-distortion criteria. - View Dependent Claims (17, 18, 19)
-
-
20. An adaptive motion accuracy search method for estimating motion vectors in motion-compensated video coding by finding a best motion vector for a macroblock, said method comprising the steps of:
-
(a) searching at a motion accuracy for a best motion vector of said macroblock using rate-distortion criteria; (b) encoding said motion accuracy using a code from a VLC table that is interpreted differently at different coding units according to the associated motion vector accuracy; and (c) encoding said best motion vector in the respective accuracy space.
-
-
21. A system for estimating motion vectors in motion-compensated video coding by finding a best motion vector for a macroblock, said system comprising:
-
(a) a first encoder for searching a first set of motion vector candidates in a grid of sub-pixel resolution of a predetermined square radius centered on V1 using a first criteria to find a best motion vector V2; (b) a second encoder for searching a second set of motion vector candidates in a grid of sub-pixel resolution of a predetermined square radius centered on V2 using a second criteria to find a best motion vector V3; and (c) a third encoder for searching a third set of motion vector candidates in a grid of sub-pixel resolution of a predetermined square radius centered on V3 using a third criteria to find said best motion vector of said macroblock; (d) wherein at least one of said first criteria, said second criteria, and said third criteria is a rate-distortion criteria. - View Dependent Claims (22, 26)
-
-
23. A fast-search adaptive motion accuracy search method for estimating motion vectors in motion-compensated video coding by finding a best motion vector for a macroblock, said method comprising the steps of:
-
(a) searching a first set of motion vector candidates in a grid of sub-pixel resolution of a predetermined square radius centered on V1 to find a best motion vector V2; (b) searching a second set of motion vector candidates in a grid of sub-pixel resolution of a predetermined square radius centered on V2 to find a best motion vector V3; (c) searching a third set of motion vector candidates in a grid of sub-pixel resolution of a predetermined square radius centered on V3 to find said best motion vector of said macroblock, and (d) using V2 as the motion vector for the macroblock if V2 has the smallest rate-distortion cost and skipping step (c).
-
-
27. A motion compensated video coding apparatus comprising:
-
a motion compensation means for compensating a motion, block by block, using the motion vector, that represents an amount of movement from a corresponding position of a reference frame to an objective current block, for each of the blocks divided from a frame of an input image, with two or more fractional accuracy levels expressed by 1/N pel (N is an arbitrary integer); and an encoding means for encoding the fractional accuracy level and the motion vector, wherein encoding the fractional accuracy level is performed separately from encoding the motion vector, encoding the motion vector for each block is performed block by block, the motion compensation is performed by interpolation with a first filter which is selected among a plurality of different interpolation filters corresponding to a first fractional accuracy level of the two or more fractional accuracy levels, the motion compensation is performed by interpolation with a second filter that requires more complicated calculation than that for the first filter and is selected among the plurality of different interpolation filters corresponding to a second fractional accuracy level that is more accurate than the first fractional accuracy level of the two or more fractional accuracy levels, and the fractional accuracy level can be set frame by frame and is fixed for every motion vector within a frame but can be different from the fractional accuracy level used for a different frame.
-
-
28. A motion compensated video decoding apparatus comprising:
-
a decoding means for decoding a motion vector that represents an amount of movement from a corresponding position of a reference frame in an objective current block for each of the blocks included in the coded data obtained by encoding an image frame block by block; a decoding means for decoding a fractional accuracy level of a motion vector with two or more fractional accuracy levels expressed by 1/N pel (N is an arbitrary integer); and a motion compensation means for compensating a motion using the decoded fractional accuracy level and the decoded motion vectors, wherein decoding the fractional accuracy level is performed separately from decoding the motion vector, decoding the motion vector for each block is performed block by block, the motion compensation is performed by interpolation with a first filter which is selected from among a plurality of different interpolation filters corresponding to a first fractional accuracy level of the two or more fractional accuracy levels, the motion compensation is performed by interpolation with a second filter that requires more complicated calculation than that for the first filter and is selected among the plurality of different interpolation filters corresponding to a second fraction accuracy level that is more accurate than the first fractional accuracy level of the two or more fraction accuracy levels, and the fractional accuracy level can be set frame by frame and is fixed for every motion vector within a frame but can be different from the fractional accuracy level used for a different frame.
-
Specification