Method and device for video encoding using predicted residuals
AssigneeBlackBerry Limited
InventorsXun Shi, Xiang Yu, Dake He, En-Hui Yang
Life of this patent
Estimating the term…
Abstract
An encoder for encoding a video by performing motion estimation using predicted residuals in the rate-distortion cost expression. The predicted residuals are determined by finding a predicted motion vector with respect to the original reference frame and calculating the corresponding residual values. The actual motion vector is then selected based on minimization of the rate-distortion cost expression with respect to the reconstructed reference frame, where the rate-distortion cost expression includes the predicted residuals. In particular, the cost expression includes reconstructed predicted residuals within the distortion term.
Claims21
A method of encoding a video in a video encoder, the video including a plurality of frames including a target frame, the target frame including an inter-coded partition, the method comprising:
- encoding and decoding one of the plurality of frames other than the target frame to produce a reconstructed reference frame;
- selecting a predicted motion vector for the inter-coded partition;
- calculating predicted residual values from the difference between the inter-coded partition and a reference block in said one of the plurality of frames, wherein the reference block is identified by the predicted motion vector;
- and
- determining an actual motion vector with reference to the reconstructed reference frame using a rate-distortion expression incorporating the predicted residual values
- wherein said selecting the predicted motion vector includes selecting a candidate motion vector that minimizes a rate-distortion cost equation with respect to said one of the plurality of frames within a first search area,
- wherein the rate-distortion cost equation is:
- J
- pre
-
-
- _
-
-
- me
-
-
- _
-
-
- min
- =
- min
- v
- i
-
-
- x
- i
- -
- p
- i
- ′
-
- (
- m
- i
- ,
- v
- i
- ,
- x
- i
- -
- 1
- )
-
- +
- λ
-
-
- r
- v
- and wherien vi is the candidate motion vector, xi is the target frame, xi-1 is said one of the plurality of frames, mi is the coding mode, rv is the coding rate for the motion vector vi, λ is the Lagrangian multiplier, and p′i is the reference block in said one of the plurality of frames xi-1 identified by the motion vector vi.
A method of encoding a video in a video encoder, the video including a plurality of frames including a target frame, the target frame including an inter-coded partition, the method comprising:
- encoding and decoding one of the plurality of frames other than the target frame to produce a reconstructed reference frame;
- selecting a predicted motion vector for the inter-coded partition;
- calculating predicted residual values from the difference between the inter-coded partition and a reference block in said one of the plurality of frames, wherein the reference block is identified by the predicted motion vector;
- and
- determining an actual motion vector with reference to the reconstructed reference frame so as to minimize a rate-distortion expression that incorporates the predicted residual values after reconstruction, wherein the minimization is within a second search area,
- wherein the reconstructed predicted residual values are determined by transforming and quantizing the predicted residual values to create quantized transform domain coefficients, and dequantizing and inverse transforming the quantized transform domain coefficients to create the reconstructed predicted residual values,
- wherein the rate-distortion expression comprises:
- J
- me_min
- ′
- =
- min
-
-
- x
- i
- -
- (
- p
- i
-
- (
- m
- i
- ,
- v
- i
- ,
- x
- l
- -
- 1
- _
- )
- +
- z
- -
- 1
-
- z
-
- (
- u
- i
- ′
- ,
- q
- i
- )
- )
-
- +
- λ
-
-
- r
- v
- ,
- z
- and wherein vi is the actual motion vector, xi is the target frame, xi-1 is the reconstructed reference frame, mi is the coding mode, rv,z is the coding rate for the motion vector vi and the quantized transform domain coefficients, λis the Lagrangian multiplier, and pi is the reference block in the reconstructed reference frame xi-1 identified by the motion vector vi, and wherein u′i are the predicted residual values, qi is the quantization step size, z represents the transform and quantization operations, and is the z−1 represents the inverse operations, and wherein the reconstructed predicted residual values are given by (z−1z(u′i, qi)).
An encoder for encoding a video, the video including a plurality of frames including a target frame, the target frame including an inter-coded partition, the encoder comprising:
- a processor;
- a memory;
- a communications system for outputting an encoded video;
- and
- an encoding application stored in memory and containing instructions for configuring the processor to encode the video by
- encoding and decoding one of the plurality of frames other than the target frame to produce a reconstructed reference frame;
- selecting a predicted motion vector for the inter-coded partition;
- calculating predicted residual values from the difference between the inter-coded partition and a reference block in said one of the plurality of frames, wherein the reference block is identified by the predicted motion vector;
- and
- determining an actual motion vector with reference to the reconstructed reference frame using a rate-distortion expression incorporating the predicted residual values
- wherein said selecting the predicted motion vector includes selecting a candidate motion vector that minimizes a rate-distortion cost equation with respect to said one of the plurality of frames within a first search area,
- wherein the rate-distortion cost equation is:
- J
- pre
-
-
- _
-
-
- me
-
-
- _
-
-
- min
- =
- min
- v
- i
-
-
- x
- i
- -
- p
- i
- ′
-
- (
- m
- i
- ,
- v
- i
- ,
- x
- i
- -
- 1
- )
-
- +
- λ
-
-
- r
- v
- and wherien vi is the candidate motion vector, xi is the target frame, x,i-1 is said one of the plurality of frames, mi is the coding mode, rv is the coding rate for the motion vector vi, λis the Lagrangian multiplier, and p′i is the reference block in said one of the plurality of frames xi-1 identified by the motion vector vi.
An encoder for encoding a video, the video including a plurality of frames including a target frame, the target frame including an inter-coded partition, the encoder comprising:
- a processor;
- a memory;
- a communications system for outputting an encoded video;
- and
- an encoding application stored in memory and containing instructions for configuring the processor to encode the video by
- encoding and decoding one of the plurality of frames other than the target frame to produce a reconstructed reference frame;
- selecting a predicted motion vector for the inter-coded partition;
- calculating predicted residual values from the difference between the inter-coded partition and a reference block in said one of the plurality of frames, wherein the reference block is identified by the predicted motion vector;
- and
- determining an actual motion vector with reference to the reconstructed reference frame using a rate-distortion expression incorporating the predicted residual values,
- wherein said selecting the predicted motion vector includes selecting a candidate motion vector that minimizes a rate-distortion cost equation with respect to said one of the plurality of frames within a first search area,
- wherein the rate-distortion expression comprises:
- J
- me_min
- ′
- =
- min
-
-
- x
- i
- -
- (
- p
- i
-
- (
- m
- i
- ,
- v
- i
- ,
- x
- l
- -
- 1
- _
- )
- +
- z
- -
- 1
-
- z
-
- (
- u
- i
- ′
- ,
- q
- i
- )
- )
-
- +
- λ
-
-
- r
- v
- ,
- z
- wherein vi is the actual motion vector, xi is the target frame, xi-1 is the reconstructed reference frame, mi is the coding mode, rv,z is the coding rate for the motion vector vi and the quantized transform domain coefficients, λis the Lagrangian multiplier, and pi is the reference block in the reconstructed reference frame xi-1 identified by the motion vector vi, and wherein u′i are the predicted residual values, qi is the quantization step size, z represents the transform and quantization operations, and is the z−1 represents the inverse operations, and wherein the reconstructed predicted residual values are given by ((z−1z(u′i, qi)).
Dependencies are inferred from the claim text.