IP Library › Granted Patent US 8,724,704
Granted Patent B2
US 8,724,704 · App. 12/962,091 · Granted May 13, 2014

Apparatus and method for motion estimation and image processing apparatus

Inventor: Kwang-Yuel Ryu (Gyeonggi-do, KR)
Assignee: Samsung Electronics Co., Ltd.
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 8,724,704
App. No.
12/962,091
Granted
May 13, 2014
Kind
B2
Abstract

A motion estimation apparatus and method for quickly performing video encoding based on a user input through a user input device are provided. The motion estimation apparatus includes an input receiver for receiving a user input, an input pattern analysis unit for analyzing the received user input and determining a user input pattern according to the analyzed user input, a storage for storing history information of a motion vector according to the user input pattern, and a motion estimator for initially estimating a motion vector of a motion estimation block of a current frame with reference to history information of a motion vector corresponding to the user input pattern stored in the storage, deciding a search location of a block matching the motion estimation block from a reference frame, and performing motion estimation on the motion estimation block using the decided search location.

Claims (38)

1. A motion estimation apparatus comprising:

an input receiver for receiving a user input;

an input pattern analysis unit for analyzing the received user input and determining a user input pattern according to the analyzed user input;

a storage for storing history information of a motion vector according to the user input pattern; and

a motion estimator for initially estimating a motion vector of a motion estimation block of a current frame with reference to the history information of the motion vector corresponding to the user input pattern stored in the storage, deciding a search location of a block matching the motion estimation block from a reference frame using the initially estimated motion vector, and performing motion estimation on the motion estimation block using the decided search location.

2. The motion estimation apparatus of claim 1 , wherein the user input pattern analysis unit analyzes the user input pattern based on a type of a user input device and an input value according to the type of the user input device.

3. The motion estimation apparatus of claim 1 , wherein the storage comprises:

a local motion vector history information storage for storing local motion vector history information which represents histories of motion vectors for individual blocks; and

a global motion vector history information storage for storing global motion vector history information that represents histories of global motion vectors for individual frames.

4. The motion estimation apparatus of claim 3 , wherein the motion estimator estimates motion vectors for a predetermined number of blocks of the current frame and, when a standard deviation between the estimated motion vectors is less than a threshold value, the motion estimator determines that a global motion vector exists in the current frame, and performs initial motion estimation with reference to the global motion vector history information.

5. The motion estimation apparatus of claim 3 , wherein, when a predetermined pattern is found between a plurality of motion vector values included in local motion vector history information for the block matching the motion estimation block, the motion estimator performs the initial motion estimation using the local motion vector history information.

6. The motion estimation apparatus of claim 3 , wherein the motion estimator performs the initial motion estimation by assigning weights to a plurality of motion vector values included in the motion vector history information in such that larger weights are assigned to more recently updated motion vector values, and then averaging the motion vector values to which the weights have been assigned.

7. The motion estimation apparatus of claim 1 , wherein the motion estimator performs motion estimation on the motion estimation block based on the search location decided from the reference frame, creates a motion vector of the motion estimation block, and stores the created motion vector as an updated motion vector in the storage.

8. The motion estimation apparatus of claim 1 , wherein, when motion vector history information stored in the storage is accumulated to exceed a predetermined threshold amount, the motion estimator deletes old motion vector information from the motion vector history information.

9. An image processing apparatus comprising:

a communication unit for communicating with a terminal through a network;

a virtualized user input unit for receiving a user input transmitted from the terminal through the communication unit;

an application execution unit for executing an application according to the user input and creating a plurality of image frames; and

an encoder for encoding the plurality of image frames, and performing motion estimation on each block of a current frame by analyzing the user input, determining a user input pattern according to the analyzed user input, initially estimating a motion vector of a motion estimation block of the current frame using history information of a motion vector corresponding to the user input pattern, and deciding a search location of a block matching the motion estimation block from a reference frame using the initially estimated motion vector.

10. The image processing apparatus of claim 9 , wherein the communication unit transmits the plurality of encoded image frames to the terminal.

11. The image processing apparatus of claim 9 , wherein the encoder comprises a storage for storing local motion vector history information that represents histories of motion vectors for individual blocks and global motion vector history information that represents histories of global motion vectors for individual frames.

12. The image processing apparatus of claim 11 , wherein the encoder estimates motion vectors for a predetermined number of blocks of the current frame and, when a standard deviation between the estimated motion vectors is less than a threshold value, the encoder determines that a global motion vector exists in the current frame, and initially estimates a motion vector of the motion estimation block with reference to the global motion vector history information.

13. The image processing apparatus of claim 11 , wherein when an amount of changes between a plurality of motion vector values included in local motion vector history information of the block matching the motion estimation block is less than a threshold value, the encoder initially estimates a motion vector of the motion estimation block using the local motion vector history information.

14. The image processing apparatus of claim 9 , wherein the encoder performs motion estimation on the motion estimation block based on the search location decided from the reference frame, creates a motion vector of the motion estimation block, and stores the created motion vector as an updated motion vector in the storage.

15. The image processing apparatus of claim 9 , wherein, when motion vector history information stored in the storage is accumulated to exceed a predetermined threshold amount, the encoder deletes old motion vector information from the motion vector history information.

16. A motion estimation method comprising:

receiving a user input;

analyzing the received user input;

determining a user input pattern according to the analyzed user input;

initially estimating a motion vector of a motion estimation block of a current frame with reference to history information of a motion vector corresponding to the user input pattern, wherein the user input pattern is stored in a storage that stores motion vector history information according to user input patterns;

deciding a search location of a block matching the motion estimation block from a reference frame, using the initially estimated motion vector; and

performing motion estimation on the motion estimation block using the decided search location.

17. The motion estimation method of claim 16 , wherein analyzing of the user input pattern comprises analyzing the user input pattern based on a type of a user input device and an input value according to the type of the user input device.

18. The motion estimation method of claim 16 , further comprising:

storing local motion vector history information which represents histories of motion vectors for individual blocks, in the storage; and

storing global motion vector history information that represents histories of global motion vectors for individual frames, in the storage.

19. The motion estimation method of claim 18 , wherein the initial estimating of the motion estimation bock comprises estimating motion vectors for a predetermined number of blocks of the current frame and determines, when a standard deviation between the estimated motion vectors is less than a threshold value, that a global motion vector exists in the current frame, and performs initial motion estimation with reference to the global motion vector history information.

20. The motion estimation method of claim 18 , wherein the initial estimating of the motion estimation block comprises performing, when a predetermined pattern is found between a plurality of motion vector values included in local motion vector history information for the block corresponding to the motion estimation block, initial motion estimation using the local motion vector history information.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2010
From: RYU, KWANG-YUEL
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 025524/0255 →
Priority Claims (1)
KR 10-2010-0014373 · Feb 17, 2010 · national
Continuity (1)
Related Publication 20110200107A1 · Aug 18, 2011