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.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A method for optimizing the selection of motion vectors and motion compensation block modules in a video encoder comprising: receiving, by the video encoder, an input video data sequence comprising at least one macroblock; identifying, by the video encoder, a target decoding complexity level for the video data sequence; determining, by the video encoder, a Lagrange multiplier for the video data sequence; for each at least one macroblock, calculating, by the video encoder, at least one motion vector for one or more block modes based on the determined Lagrange multiplier; for each at least one macroblock, selecting, by the video encoder, one of the one or more block modes based on the determined Lagrange multiplier; and encoding, by the video encoder, the received input video data sequence in accordance with the identified target decoding complexity level by applying a complexity control algorithm to produce an encoded bitstream that can be decoded with consistent complexity.
2. The method of claim 1 , wherein the received input video data is data in accordance with the H.264 standard.
3. The method of claim 1 , wherein the received input video data is data in accordance with the MPEG-4 standard.
4. 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.
5. Non-transitory computer-readable media comprising a set of instructions to direct a processor to perform the steps recited in one or more of method claims 1 , 2 , 3 or 4 .
6. The method of claim 1 , further comprising: identifying, by the video encoder, a target data rate for the video data sequence; and wherein encoding, by the video encoder, the received input video data sequence further comprises applying a data rate control algorithm to produce the encoded bitstream at the target data rate.
7. The method of claim 1 , wherein calculating the at least one motion vector comprises selecting the at least one motion vector based on an interpolation complexity.
8. 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 decoding 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; and encoding the received input video data sequence in accordance with the identified target decoding complexity level by applying a complexity control algorithm to produce an encoded bitstream that can be decoded with consistent complexity.
9. The system of claim 8 , wherein the received input video data sequence is data in accordance with the H.264 standard.
10. The system of claim 8 , wherein the received input video data sequence is data in accordance with the MPEG-4 standard.
11. The system of claim 8 , wherein the received input video data sequence is data in accordance with the Motion Compensated Embedded Zero Block Coding (MC-EZBC) standard.
12. The system of claim 8 , wherein the processor is further configured to: identify a target data rate for the video data sequence; and encode the received input video data sequence by further applying a data rate control algorithm to produce the encoded bitstream at the target data rate.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
August 28, 2007
June 16, 2015
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.