IP Library Granted Patent US 10,395,375
Granted Patent B2
US 10,395,375 · App. 15/611,973 · Granted Aug 27, 2019

Device and method for motion estimation and compensation

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,395,375
App. No.
15/611,973
Granted
Aug 27, 2019
Kind
B2
Abstract

A device for motion estimation in video image data is provided. The device comprises a motion estimation unit ( 11, 21 ) for estimating a current motion vector for an area of a current image by determining a set of temporal and/or spatial candidate motion vectors and selecting a best motion vector from the set of candidate motion vectors. The motion estimation unit ( 11, 21 ) is further adapted for substantially doubling one or more of the candidate motion vectors and for including the one or more substantially doubled candidate motion vectors in the set of candidate motion vectors.

Claims (40)

1. A system for motion estimation, comprising:

a memory operable to store a plurality of candidate motion vectors associated with a temporal distance; and

a processor comprising hardware, wherein the processor is operable to:

receive a current image and a previous image;

determine a motion vector between the current image and the previous image;

generate an estimated motion vector and an estimated temporal distance according to the previous image and a temporal distance history,

increase the magnitude of a candidate motion vector in the plurality of candidate motion vectors by a scale factor to produce a scaled candidate motion vector, the scale factor being a non-integer determined according a comparison between the temporal distance and the estimated temporal distance,

select an updated motion vector according to a match error between the scaled candidate motion vector and the estimated motion vector,

decrease the magnitude of the updated motion vector by the scale factor, and

store the updated motion vector with a decreased magnitude as a candidate motion vector in the plurality of candidate motion vectors.

2. The system of claim 1 , wherein the processor is operable to analyze a number of scaled candidate motion vectors that are selected as the updated motion vector for a respective area of the current image.

3. The system of claim 1 , wherein the processor is operable to select the scaled candidate motion vector as the updated motion vector according to the estimated temporal distance.

4. The system of claim 1 , wherein the processor is operable to generate the estimated temporal distance according to a comparison of a length of the motion vector for a respective area of the current image with one or more lengths of previous motion vectors for related areas of the previous image.

5. The system of claim 4 , wherein the processor is operable to select the scaled candidate motion vector as the updated motion vector according to the estimated temporal distance.

6. The system of claim 1 , wherein the processor is operable to compensate for motion between an area of the current image and a corresponding area of the previous image using the scaled candidate motion vector according to the temporal distance.

7. The system of claim 1 , wherein the temporal distance corresponds to a missing image between the current image and the previous image.

8. The system of claim 1 , wherein the scale factor is between 1.7 and 2.

9. A method for motion estimation, the method comprising:

storing, in a memory, a plurality of candidate motion vectors associated with a temporal distance;

detecting, using a processor comprising hardware, the current temporal distance between the current image and the previous image according to a temporal distance history;

estimating, using the processor, a current motion vector and a current temporal distance according to a current image and a previous image;

increasing, using the processor, the magnitude of a candidate motion vector in the plurality of candidate motion vectors by a scale factor to produce a scaled candidate motion vector, the scale factor being a non-integer determined according a comparison between the temporal distance and the estimated current temporal distance;

selecting, using the processor, an updated motion vector according to a match error between the scaled candidate motion vector and the estimated current motion vector;

decreasing, using the processor, the magnitude of the updated motion vector by the scale factor; and

storing, in the memory, the updated motion vector with a decreased magnitude as a candidate motion vector in the plurality of candidate motion vectors.

10. The method of claim 9 , wherein the method comprises detecting whether one or more images between the current image and the previous image are missing.

11. The method of claim 9 , wherein estimating the current temporal distance comprises analyzing a number of scaled candidate motion vectors that are selected as the updated motion vector for a respective area of the current image.

12. The method of claim 9 , wherein selecting the updated motion vector comprises selecting the scaled candidate motion vector as the updated motion vector according to the estimated current temporal distance.

13. The method of claim 9 , wherein the method comprises estimating the current temporal distance according to a comparison of a length of the current motion vector for a respective area of the current image with one or more lengths of previous motion vectors for related areas of the previous image.

14. The method of claim 9 , wherein the method comprises compensating for motion between an area of the current image and a corresponding area of the previous image using the scaled candidate motion vector according to the temporal distance.

15. The method of claim 9 , wherein the temporal distance corresponds to a missing image between the current image and the previous image.

16. The method of claim 9 , wherein the scale factor is between 1.7 and 2.

17. A computer program stored on a non-transitory, computer-readable, tangible memory device, that when executed by a processor, cause the processor to perform a method comprising:

storing a plurality of candidate motion vectors associated with a temporal distance;

detecting the current temporal distance between the current image and the previous image according to a temporal distance history;

estimating a current motion vector and a current temporal distance according to a current image and a previous image;

increasing the magnitude of a candidate motion vector in the plurality of candidate motion vectors by a scale factor to produce a scaled candidate motion vector, the scale factor being a non-integer determined according a comparison between the temporal distance and the estimated current temporal distance;

selecting an updated motion vector according to a match error between the scaled candidate motion vector and the estimated current motion vector; and

decreasing the magnitude of the updated motion vector by the scale factor; and

storing the updated motion vector with a decreased magnitude as a candidate motion vector in the plurality of candidate motion vectors.

Assignments (1)
SECURITY AGREEMENT Recorded Jul 9, 2021
From: MAXLINEAR, INC.; MAXLINEAR COMMUNICATIONS, LLC; EXAR CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 056816/0089 →