US2015245033A1PendingUtilityA1

System and method for motion estimation and mode decision for low-complexity h.264 decoder

Assignee: UNIV COLUMBIAPriority: Mar 4, 2005Filed: May 11, 2015Published: Aug 27, 2015
Est. expiryMar 4, 2025(expired)· nominal 20-yr term from priority
H04N 19/52H04N 19/105H04N 19/176H04N 19/14H04N 19/521H04N 19/139H04N 19/156H04N 19/19H04N 19/567H04N 19/103H04N 19/147H04N 19/61
47
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

The present invention relates to systems and methods for motion estimation and mode decision for low-complexity H.264 standard decoders. The present invention includes a method for optimizing the selection of motion vectors and motion compensation block modules in a video encoder in order to decrease the complexity of the video upon decoding. The novel method of the present invention may include novel steps for selecting motion vectors, block modes, and for applying a complexity-control algorithm to encode the received input video data sequence in accordance with the identified target complexity level. The present invention may be implemented in accordance with current and future video decoding standards to optimize decoding by reducing decoding complexity and thereby reducing required resources and power consumption.

Claims

exact text as granted — not AI-modified
1 . A method for optimizing the selection of motion vectors and motion compensation block modules in a video encoder comprising:
 receiving an input video data sequence comprising at least one macroblock;   identifying a target complexity level for the video data sequence;   determining a Lagrange multiplier for the video data sequence;   for each at least one macroblock, calculating at least one motion vector for one or more block modes based on the determined Lagrange multiplier;   for each at least one macroblock, selecting one of the one or more block modes based on the determined Lagrange multiplier;   encoding the received input video data sequence in accordance with the identified target complexity level to produce an encoded bitstream that may be decoded with consistent complexity.   
     
     
         2 . The method of  claim 1 , wherein the step of encoding the received input video data sequence comprises applying a complexity control algorithm. 
     
     
         3 . The method of  claim 1 , wherein the received input video data is data in accordance with the H.264 standard. 
     
     
         4 . The method of  claim 1 , wherein the received input video data is data in accordance with the MPEG-4 standard. 
     
     
         5 . The method of  claim 1 , wherein the received input video data is data in accordance with the Motion Compensated Embedded Zero Block Coding (MC-EZBC) standard. 
     
     
         6 . A method for selecting motion vectors for optimized video encoding comprising:
 receiving an input video data sequence comprising one or more macroblocks;   for each macroblock, enumerating at least one inter-predictive block mode whose one or more motion vectors are to be calculated based on motion estimation;   for each block of each enumerated block mode, selecting the one or more motion vectors that yield minimum rate-distortion-complexity;   storing the selected one or more motion vectors for each block of each enumerated block mode.   
     
     
         7 . The method of  claim 6 , wherein the received video frame data is data in accordance with the H.264 standard. 
     
     
         8 . The method of  claim 6 , wherein the received video frame data is data in accordance with the MPEG-4 standard. 
     
     
         9 . The method of  claim 6 , wherein the received video frame data is data in accordance with the Motion Compensated Embedded Zero Block Coding (MC-EZBC) standard. 
     
     
         10 . A method for selecting a block mode for optimized video encoding comprising:
 receiving an input video data sequence comprising one or more macroblocks;   identifying one or more possible block modes for each macroblock;   retrieving one or more selected motion vectors for each block mode;   using the selected motion vectors, calculating the rate-distortion-complexity cost for each block mode;   selecting, for each macroblock, a block mode that yields a minimum rate-distortion-complexity cost function;   storing at least one of the selected block modes for further processing.   
     
     
         11 . The method of  claim 10 , wherein the received video frame data is data in accordance with the H.264 standard. 
     
     
         12 . The method of  claim 10 , wherein the received video frame data is data in accordance with the MPEG-4 standard. 
     
     
         13 . The method of  claim 10 , wherein the received video frame data is data in accordance with the Motion Compensated Embedded Zero Block Coding (MC-EZBC) standard. 
     
     
         14 . An optimized video encoding system comprising:
 at least one processor;   a memory coupled to the at least one processor and containing instructions which, when executed by the processor, cause the processor to perform the steps of:   receiving an input video data sequence comprising at least one macroblock;   identifying a target complexity level for the video data sequence;   determining a Lagrange multiplier for the video data sequence;   for each at least one macroblock, calculating at least one motion vector for one or more block modes based on the determined Lagrange multiplier;   for each at least one macroblock, selecting one of the one or more block modes based on the determined Lagrange multiplier;   encoding the received input video data sequence in accordance with the identified target complexity level to produce an encoded bitstream that may be decoded with consistent complexity.   
     
     
         15 . The method of  claim 14 , wherein the memory further contains instructions for applying a complexity control algorithm in conjunction with the encoding of the received input video data sequence. 
     
     
         16 . The system of  claim 14 , wherein the received input video data sequence is data in accordance with the H.264 standard. 
     
     
         17 . The system of  claim 14 , wherein the received input video data sequence is data in accordance with the MPEG-4 standard. 
     
     
         18 . The system of  claim 14 , wherein the received input video data sequence is data in accordance with the Motion Compensated Embedded Zero Block Coding (MC-EZBC) standard. 
     
     
         19 . An optimized video encoding system comprising:
 at least one processor;   a memory coupled to the at least one processor and containing instructions which, when executed by the processor, cause the processor to perform the steps of:   receiving an input video data sequence comprising one or more macroblocks;   identifying one or more possible block modes for each macroblock;   retrieving one or more selected motion vectors for each block mode;   using the selected motion vectors, calculating the rate-distortion-complexity cost for each block mode;   selecting, for each macroblock, a block mode that yields a minimum rate-distortion-complexity cost function;   storing at least one of the selected block modes for further processing.   
     
     
         20 . An optimized video encoding system comprising:
 at least one processor;   a memory coupled to the at least one processor and containing instructions which, when executed by the processor, cause the processor to perform the steps of:   receiving an input video data sequence comprising one or more macroblocks;   for each macroblock, enumerating at least one inter-predictive block mode whose one or more motion vectors are to be calculated based on motion estimation;   for each block of each enumerated block mode, selecting the one or more motion vectors that yield minimum rate-distortion-complexity;   storing the selected one or more motion vectors for each block of each enumerated block mode.

Join the waitlist — get patent alerts

Track US2015245033A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.