Method and apparatus for real time compression and decompression of a digital motion video signal using a fixed Huffman table
First Claim
1. A method for forming in real time a compressed digital video signal representative of a plurality of compressed digital video images from an analog video signal representative of a plurality of uncompressed digital video images, said compressed digital signal being formed from a bitstream representing a plurality of encoded digital video images, said plurality of uncompressed digital video images being formed from arrays of pixels representing a plurality of motion video images, comprising the steps of:
- (a) selecting a training set formed of a plurality of video training images;
(b) determining a set of variable-length codes in accordance with said training set and forming a single fixed lookup table in accordance with said set of variable-length codes;
(c) converting said analog video signal to said plurality of uncompressed digital video images;
(d) selecting a plurality of pixels from said plurality of uncompressed digital video images for compression;
(e) determining a plurality of locations within said single fixed lookup table by applying information representative of said plurality of pixels to said single fixed lookup table; and
(f) converting information representative of said plurality of locations into said bitstream and forming said compressed digital video signal representative of said plurality of compressed digital video images from said bitstream.
0 Assignments
0 Petitions
Accused Products
Abstract
A bitstream representative of at least one digital video image is decoded in real time by providing a code-book index from the bitstream, applying the code-book index to an index table to determine an index value, and comparing the index value to a first predetermined threshold. A single fixed statistical table is used for a plurality of images. If the index value is greater than the predetermined threshold, then at least one current pixel is determined by copying a corresponding previous pixel into the location of at least one current pixel; otherwise the index value is applied to a vector table to determine at least one vector value and a current pixel is determined from the vector value and a corresponding previous pixel. A digital video image is encoded in real time by selecting at least one pixel for encoding and determining at least one difference value between the selected pixel and at least one corresponding previous pixel. An index value corresponding to the location in a table of the difference value is calculated. If the index value is equal to a first predetermined value then a run-length counter is incremented by a second predetermined value and the process is repeated until the index value is not equal to the first predetermined value. The run-length counter is then encoded. If the index value is not equal to the first predetermined value then the index value is encoded.
-
Citations
46 Claims
-
1. A method for forming in real time a compressed digital video signal representative of a plurality of compressed digital video images from an analog video signal representative of a plurality of uncompressed digital video images, said compressed digital signal being formed from a bitstream representing a plurality of encoded digital video images, said plurality of uncompressed digital video images being formed from arrays of pixels representing a plurality of motion video images, comprising the steps of:
-
(a) selecting a training set formed of a plurality of video training images; (b) determining a set of variable-length codes in accordance with said training set and forming a single fixed lookup table in accordance with said set of variable-length codes; (c) converting said analog video signal to said plurality of uncompressed digital video images; (d) selecting a plurality of pixels from said plurality of uncompressed digital video images for compression; (e) determining a plurality of locations within said single fixed lookup table by applying information representative of said plurality of pixels to said single fixed lookup table; and (f) converting information representative of said plurality of locations into said bitstream and forming said compressed digital video signal representative of said plurality of compressed digital video images from said bitstream. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for forming an analog motion video signal representative of a plurality of decompressed digital video images from a compressed digital video signal formed from a bitstream representing a plurality of encoded digital video images, said plurality of decompressed digital video images being formed from arrays of pixels representing a plurality of motion video images, comprising the steps of:
-
(a) determining a set of variable-length codes in accordance with a training set formed of a plurality of video training images and forming a single fixed lookup table in accordance with said set of variable-length codes; (b) applying bits from said bitstream to said single fixed lookup table until a code-book index is recognized; (c) determining the value of at least one decompressed pixel in accordance with said code-book index; (d) forming said plurality of decompressed digital video images by repeating steps (b)-(c); and (e) converting said plurality of decompressed digital video images into said analog motion video signal. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. An apparatus for forming in real time a compressed digital video signal representative of a plurality of compressed digital video images from an analog video signal representative of a plurality of uncompressed digital video images, said compressed digital signal being formed from a bitstream representing a plurality of encoded digital video images, said plurality of uncompressed digital video images being formed from arrays of pixels representing a plurality of motion video images, comprising:
- a digital processor, said digital processor being adapted for coupling to a converter for converting said analog motion video signal into said plurality of uncompressed digital video images, said digital processor including;
(a) means for selecting a training set formed of a plurality of video training images; (b) means for determining a set of variable-length codes in accordance with said training set and means for forming a single fixed lookup table in accordance with said set of variable-length codes; (c) means for selecting a plurality of pixels from said plurality of uncompressed digital video images for compression; (d) means for determining a plurality of locations within said single fixed lookup table by applying information representative of said plurality of pixels to said single fixed lookup table; and
;(e) means for converting information representative of said plurality of locations into said bitstream and means for forming said compressed digital video signal representative of said plurality of compressed digital video images from said bitstream. - View Dependent Claims (19, 20, 21, 22, 23, 24)
- a digital processor, said digital processor being adapted for coupling to a converter for converting said analog motion video signal into said plurality of uncompressed digital video images, said digital processor including;
-
25. An apparatus for forming an analog video signal representative of a plurality of decompressed digital video images from a compressed digital video signal formed from a bitstream representing a plurality of encoded digital video images, said plurality of decompressed digital video images being formed from arrays of pixels representing a plurality of motion video images, comprising:
- a digital processor, said digital processor including;
(a) means for determining a set of variable-length codes in accordance with a training set formed of a plurality of video training images and means for forming a single fixed lookup table in accordance with said set of variable-length codes; (b) means for applying bits from said bitstream to said single fixed lookup table until a code-book index is recognized; (c) means, coupled to said means for applying, for determining the values of a plurality of decompressed pixels in accordance with a plurality of code-book index values; and (d) means for forming said plurality of decompressed digital video images from said decompressed pixels, wherein said digital processor is adapted for coupling to a converter for converting said plurality of decompressed digital video images into said analog motion video signal. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32)
- a digital processor, said digital processor including;
-
33. A system for forming an output digital video signal representative of one or more decompressed digital video images for an input digital video signal representative of one or more compressed digital video images comprising:
-
(a) means for providing a single fixed lookup table in accordance with a training set formed of a plurality of video training images, said single fixed lookup table being representative of the video training images of said training set; (b) input means for receiving said input digital video signal; (c) a digital processor coupled to said input means, said digital processor having decompressing means for forming said one or more decompressed digital video images from said one or more compressed digital video images, said decompressing means including; (1) means for acquiring a code-book index from said input digital video signal in accordance with said single fixed lookup table; (2) means for obtaining an index value by looking up said code-book index in an index table; (3) means for determining one or more current pixels by copying one or more corresponding previous pixels into the location of said one or more current pixels if said index value is greater than a predetermined threshold; (4) means for obtaining at least one vector value by looking up said index value in a first table if said index value is not greater than said predetermined threshold; and (5) means for forming one or more current pixels from said at least one vector value and one or more corresponding previous pixels if said index value is not greater than said predetermined threshold; (6) means for forming said one or more decompressed digital video images from said one or more current pixels; and (C) output means, coupled to said processor, for forming said output digital video signal in accordance with said one or more decompressed digital video images. - View Dependent Claims (34, 35, 36, 37, 38, 39)
-
-
40. A system for forming an output digital video signal representative of one or more decompressed digital video images in real time from an input digital video signal representative of one or more decompressed digital video images comprising:
-
(a) means for providing a single fixed lookup table in accordance with a training set formed of a plurality of video training images, said single fixed lookup table being representative of the video training images of said training set; (b) input means for receiving said input digital video signal; (c) a digital processor coupled to said input means, said digital processor having decompressing means for forming said one or more decompressed digital video images in real time from said one or more decompressed digital video images, said compressing means including; (1) means for selecting from said one or more decompressed digital video images at least one pixel for compression; (2) means for determining at least one difference value between said at least one selected pixel and at least one corresponding previous pixel; (3) means for determining an index value corresponding to the location in a first table of said at least one difference value; (4) means for comparing said index value to a first predetermined value; (5) means for incrementing a run-length counter by a second predetermined value if said index value is equal to said first predetermined value; (6) means for encoding said run-length counter in accordance with said single fixed lookup table; (7) means for encoding said index value in accordance with said single fixed lookup table if said index value is not equal to said first predetermined value; (8) means for forming a compressed digital video image from said encoded run-length counter and said encoded index value; (d) output means, coupled to said digital processor, for forming said output digital video signal from said one or more compressed digital video images. - View Dependent Claims (41, 42, 43, 44, 45, 46)
-
Specification