High precision encoding and decoding of video images
First Claim
1. A method for compressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the method including:
- (a) transforming the sequence of frames to a representation in a second color space at a second precision greater than the first precision; and
(b) performing subsequent encoding steps at the second precision to create a compressed output.
5 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and computer programs for improved quality video compression. Image quality from MPEG-style video coding may be improved by preserving a higher number of bits during intermediate encoding and decoding processing steps. Problems of inverse discrete cosine transform (IDCT) mismatch can be eliminated by exactly matching the IDCT function numerical algorithm of the decoder to the IDCT function numerical algorithm used for the decoding portion of the encoder. Also included is an application of high precision compression to wide dynamic range images by extending the range of the “quantization parameter” or “QP”. The extension of QP may be accomplished either by increasing the range of QP directly, or indirectly through a non-linear transformation. Also included is an application of extended intermediate processing precision and an extended QP range to reduced contrast regions of an image to extend the precision with which the low-contrast portions are compression coded.
329 Citations
72 Claims
-
1. A method for compressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the method including:
-
(a) transforming the sequence of frames to a representation in a second color space at a second precision greater than the first precision; and
(b) performing subsequent encoding steps at the second precision to create a compressed output.
-
-
2. A method for compressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the method including:
-
(a) transforming the sequence of frames to a representation in a second color space at a second precision greater than the first precision;
(b) performing a motion compensated discrete cosine transform at the second precision on the sequence of frames to produce a first encoded output;
(c) quantizing the first encoded output at the second precision to create a quantized output; and
(d) performing an inverse discrete cosine transform at the second precision on the quantized output to produce a compressed output at the second precision.
-
- 3. A method for compressing and decompressing a sequence of digitized video images including a sequence of frames represented at a first precision, the method including encoding the sequence of frames at a second precision greater than the first precision to create a compressed bitstream.
-
6. A method for compressing and decompressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the method including:
-
(a) transforming the sequence of frames to a representation in a second color space at a second precision greater than the first precision;
(b) performing subsequent encoding steps at the second precision to create a compressed bitstream; and
(c) decoding the compressed bitstream by;
(1) dequantizing the compressed bitstream at the second precision to create a dequantized output;
(2) applying an inverse discrete cosine transform at the second precision on the dequantized output to produce a decompressed output;
(3) generating image frames at the second precision from the decompressed output. - View Dependent Claims (7, 8, 9)
-
-
10. A method for compressing and decompressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the method including:
-
(a) transforming the sequence of frames to a representation in a second color space at a second precision greater than the first precision;
(b) performing subsequent encoding steps at the second precision to create a compressed bitstream, including applying an inverse discrete cosine transform numerical algorithm; and
(c) performing subsequent decoding steps at the second precision on the compressed bitstream, including applying a matching inverse discrete cosine transform numerical algorithm.
-
- 11. A method for increasing the average compression ratio during compression of a sequence of digitized video images, the digitized video images including a sequence of frames, into a compressed bitstream that includes I frames, the method including encoding the sequence of frames by applying an inverse discrete cosine transform numerical algorithm that matches the inverse discrete cosine transform numerical algorithm applied during a subsequent decoding process, thereby generating a compressed bitstream having increased spacing between I frames.
-
13. A method for compressing a sequence of digitized video images having at least one of a wide dynamic range or wide contrast range, the video images including frames represented at a first precision, each frame including a plurality of macroblocks defining regions, the method including:
-
(a) determining a quantization parameter, QP, having codes that represent either a direct correspondence to possible values or an extended range of possible values;
(b) determining a QP value for each macroblock of each frame;
(c) compressing each frame at a second precision higher than the first precision to create a compressed frame, such compressing including applying the determined QP values for such frame to reduce the number of bits required to encode such frame;
(d) associating QP codes with the determined QP values used during compressing; and
(e) outputting each compressed frame and the associated QP codes.
-
-
25. A computer program, stored on a computer-readable medium, for compressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the computer program comprising instructions for causing a computer to:
-
(a) transform the sequence of frames to a representation in a second color space at a second precision greater than the first precision; and
(b) perform subsequent encoding steps at the second precision to create a compressed output.
-
-
26. A computer program, stored on a computer-readable medium, for compressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the computer program comprising instructions for causing a computer to:
-
(a) transform the sequence of frames to a representation in a second color space at a second precision greater than the first precision;
(b) perform a motion compensated discrete cosine transform at the second precision on the sequence of frames to produce a first encoded output;
(c) quantize the first encoded output at the second precision to create a quantized output; and
(d) perform an inverse discrete cosine transform at the second precision on the quantized output to produce a compressed output at the second precision.
-
-
27. A computer program, stored on a computer-readable medium, for compressing and decompressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the computer program comprising instructions for causing a computer to encode the sequence of frames at a second precision greater than the first precision to create a compressed bitstream.
-
30. A computer program, stored on a computer-readable medium, for compressing and decompressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the computer program comprising instructions for causing a computer to:
-
(a) transform the sequence of frames to a representation in a second color space at a second precision greater than the first precision;
(b) perform subsequent encoding steps at the second precision to create a compressed bitstream; and
(c) decode the compressed bitstream by;
(1) dequantizing the compressed bitstream at the second precision to create a dequantized output;
(2) applying an inverse discrete cosine transform at the second precision on the dequantized output to produce a decompressed output;
(3) generating image frames at the second precision from the decompressed output. - View Dependent Claims (31, 32, 33, 36, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48)
-
-
34. A computer program, stored on a computer-readable medium, for compressing and decompressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the computer program comprising instructions for causing a computer to:
-
(a) transform the sequence of frames to a representation in a second color space at a second precision greater than the first precision;
(b) perform subsequent encoding steps at the second precision to create a compressed bitstream, including applying an inverse discrete cosine transform numerical algorithm; and
(c) perform subsequent decoding steps at the second precision on the compressed bitstream, including applying a matching inverse discrete cosine transform numerical algorithm.
-
-
35. A computer program, stored on a computer-readable medium, for increasing the average compression ratio during compression of a sequence of digitized video images, the digitized video images including a sequence of frames, into a compressed bitstream that includes I frames, the computer program comprising instructions for causing a computer to encode the sequence of frames by applying an inverse discrete cosine transform numerical algorithm that matches the inverse discrete cosine transform numerical algorithm applied during a subsequent decoding process, thereby generating a compressed bitstream having increased spacing between I frames.
-
37. A computer program, stored on a computer-readable medium, for compressing a sequence of digitized video images having at least one of a wide dynamic range or wide contrast range, the video images including frames represented at a first precision, each frame including a plurality of macroblocks defining regions, the computer program comprising instructions for causing a computer to:
-
(a) determine a quantization parameter, QP, having codes that represent either a direct correspondence to possible values or an extended range of possible values;
(b) determine a QP value for each macroblock of each frame;
(c) compress each frame at a second precision higher than the first precision to create a compressed frame, such compressing including applying the determined QP values for such frame to reduce the number of bits required to encode such frame;
(d) associate QP codes with the determined QP values used during compressing; and
(e) output each compressed frame and the associated QP codes.
-
-
49. A system for compressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the system including:
-
(a) means for transforming the sequence of frames to a representation in a second color space at a second precision greater than the first precision; and
(b) means for performing subsequent encoding steps at the second precision to create a compressed output.
-
-
50. A system for compressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the system including:
-
(a) means for transforming the sequence of frames to a representation in a second color space at a second precision greater than the first precision;
(b) means for performing a motion compensated discrete cosine transform at the second precision on the sequence of frames to produce a first encoded output;
(c) means for quantizing the first encoded output at the second precision to create a quantized output; and
(d) means for performing an inverse discrete cosine transform at the second precision on the quantized output to produce a compressed output at the second precision.
-
- 51. A system for compressing and decompressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the system including means for encoding the sequence of frames at a second precision greater than the first precision to create a compressed bitstream.
-
54. A system for compressing and decompressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the system including:
-
(a) means for transforming the sequence of frames to a representation in a second color space at a second precision greater than the first precision;
(b) means for performing subsequent encoding steps at the second precision to create a compressed bitstream; and
(c) means for decoding the compressed bitstream by;
(1) dequantizing the compressed bitstream at the second precision to create a dequantized output;
(2) applying an inverse discrete cosine transform at the second precision on the dequantized output to produce a decompressed output;
(3) generating image frames at the second precision from the decompressed output. - View Dependent Claims (55, 56, 57, 60)
-
-
58. A system for compressing and decompressing a sequence of digitized video images including a sequence of frames represented at a first precision in a first color space, the system including:
-
(a) means for transforming the sequence of frames to a representation in a second color space at a second precision greater than the first precision;
(b) means for performing subsequent encoding steps at the second precision to create a compressed bitstream, including applying an inverse discrete cosine transform numerical algorithm; and
(c) means for performing subsequent decoding steps at the second precision on the compressed bitstream, including applying a matching inverse discrete cosine transform numerical algorithm.
-
-
59. A system for increasing the average compression ratio during compression of a sequence of digitized video images, the digitized video images including a sequence of frames, into a compressed bitstream that includes I frames, the system including means for encoding the sequence of frames by applying an inverse discrete cosine transform numerical algorithm that matches the inverse discrete cosine transform numerical algorithm applied during a subsequent decoding process, thereby generating a compressed bitstream having increased spacing between I frames.
-
61. A system for compressing a sequence of digitized video images having at least one of a wide dynamic range or wide contrast range, the video images including frames represented at a first precision, each frame including a plurality of macroblocks defining regions, the system including:
-
(a) means for determining a quantization parameter, QP, having codes that represent either a direct correspondence to possible values or an extended range of possible values;
(b) means for determining a QP value for each macroblock of each frame;
(c) means for compressing each frame at a second precision higher than the first precision to create a compressed frame, including means for applying the determined QP values for such frame to reduce the number of bits required to encode such frame;
(d) means for associating QP codes with the determined QP values used during compressing; and
(e) means for outputting each compressed frame and the associated QP codes. - View Dependent Claims (62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72)
-
Specification