Adaptive video coder with dynamic bit allocation
First Claim
1. A method of coding a signal with use of a vector quantization codebook, the codebook comprising a plurality of vectors, the signal comprising a succession of frames, each of the frames comprising one or more frame portions, the method comprising the steps of:
- determining a first provisional coding of a given one or more of said frames wherein each of one or more of the portions of the given one or more of said frames are coded with use of the codebook, the first provisional coding using at most a fixed, predetermined number of bits;
generating a modified codebook by replacing one or more of said vectors in said codebook with one or more substitute vectors;
determining a second provisional coding of the given one or more of said frames, wherein(i) the one or more substitute vectors which replaced the one or more of said vectors in said codebook are coded, and(ii) each of one or more of the portions of the given one or more frames are coded with use of the modified codebook,the second provisional coding using at most the fixed, predetermined number of bits;
determining a first coding error associated with the first provisional coding and a second coding error associated with the second provisional coding; and
selecting the provisional coding having the smaller associated coding error as the coding of the given one or more frames.
4 Assignments
0 Petitions
Accused Products
Abstract
A method of coding a video signal at a fixed bit rate with use of a vector quantization codebook, wherein advantageous codebook updates are determined by comparing a coding error associated with a first provisional coding of a frame with a coding error associated with a second provisional coding of the frame. The first provisional coding uses a fixed available number of bits to code a frame with use of the unmodified codebook, whereas the second provisional coding uses a modified codebook to code the same frame. However, the second provisional coding codes both the frame and the codebook updates with the fixed available number of bits. The provisional coding having the smaller coding error is selected as the coding of the frame which will be adopted. In addition, the codebook may be replaced with the modified codebook when the second provisional coding is selected. In this manner, the coder will adapt the codebook to the characteristics of the scene.
129 Citations
34 Claims
-
1. A method of coding a signal with use of a vector quantization codebook, the codebook comprising a plurality of vectors, the signal comprising a succession of frames, each of the frames comprising one or more frame portions, the method comprising the steps of:
-
determining a first provisional coding of a given one or more of said frames wherein each of one or more of the portions of the given one or more of said frames are coded with use of the codebook, the first provisional coding using at most a fixed, predetermined number of bits; generating a modified codebook by replacing one or more of said vectors in said codebook with one or more substitute vectors; determining a second provisional coding of the given one or more of said frames, wherein (i) the one or more substitute vectors which replaced the one or more of said vectors in said codebook are coded, and (ii) each of one or more of the portions of the given one or more frames are coded with use of the modified codebook, the second provisional coding using at most the fixed, predetermined number of bits; determining a first coding error associated with the first provisional coding and a second coding error associated with the second provisional coding; and selecting the provisional coding having the smaller associated coding error as the coding of the given one or more frames. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. An apparatus for coding a signal with use of a vector quantization codebook, the codebook comprising a plurality of vectors, the signal comprising a succession of frames, each of the frames comprising one or more frame portions, the apparatus comprising:
-
means for determining a first provisional coding of a given one or more of said frames wherein each of one or more of the portions of the given one or more of said frames are coded with use of the codebook, the first provisional coding using at most a fixed, predetermined number of bits; means for generating a modified codebook by replacing one or more of said vectors in said codebook with one or more substitute vectors; means for determining a second provisional coding of the given one or more of said frames, wherein (i) the one or more substitute vectors which replaced the one or more of said vectors in said codebook are coded, and (ii) each of one or more of the portions of the given one or more frames are coded with use of the modified codebook, the second provisional coding using at most the fixed, predetermined number of bits; means for determining a first coding error associated with the first provisional coding and a second coding error associated with the second provisional coding; and means for selecting the provisional coding having the smaller associated coding error as the coding of the given one or more frames. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A video teleconferencing system comprising:
-
a video camera for generating a video input signal; means for coding the video input signal with use of a vector quantization codebook, the codebook comprising a plurality of vectors, the video input signal comprising a succession of frames, each of the frames comprising one or more frame portions, the coding means comprising means for determining a first provisional coding of a given one or more of said frames wherein each of one or more of the portions of the given one or more of said frames are coded with use of the codebook, the first provisional coding using at most a fixed, predetermined number of bits, means for generating a modified codebook by replacing one or more of said vectors in said codebook with one or more substitute vectors, means for determining a second provisional coding of the given one or more of said frames, wherein (i) the one or more substitute vectors which replaced the one or more of said vectors in said codebook are coded, and (ii) each of one or more of the portions of the given one or more frames are coded with use of the modified codebook, the second provisional coding using at most the fixed, predetermined number of bits, means for determining a first coding error associated with the first provisional coding and a second coding error associated with the second provisional coding, and means for selecting the provisional coding having the smaller associated coding error as the coding of the given one or more frames; and means for transmitting the coded video input signal to a video receiver. - View Dependent Claims (32)
-
-
33. A video telephone comprising:
-
video camera means for generating a video input signal; means for coding the video input signal with use of a vector quantization codebook, the codebook comprising a plurality of vectors, the video input signal comprising a succession of frames, each of the frames comprising one or more frame portions, the coding means comprising means for determining a first provisional coding of a given one or more of said frames wherein each of one or more of the portions of the given one or more of said frames are coded with use of the codebook, the first provisional coding using at most a fixed, predetermined number of bits, means for generating a modified codebook by replacing one or more of said vectors in said codebook with one or more substitute vectors, means for determining a second provisional coding of the given one or more of said frames, wherein (i) the one or more substitute vectors which replaced the one or more of said vectors in said codebook are coded, and (ii) each of one or more of the portions of the given one or more frames are coded with use of the modified codebook, the second provisional coding using at most the fixed, predetermined number of bits, means for determining a first coding error associated with the first provisional coding and a second coding error associated with the second provisional coding, and means for selecting the provisional coding having the smaller associated coding error as the coding of the given one or more frames; and means for transmitting the coded video input signal across a telecommunications network. - View Dependent Claims (34)
-
Specification