Abstract:
A method for coding spatial and quality enhancement information in scalable video coding using variable length codes. Conventional systems have been capable of using variable length codes only with nonscalable video coding, In the present invention, the coded block pattern for each block of information, significance passes, and refinement passes can all be coded with different types of variable length codes. The present invention also provides for a variable length encoder/decoder that dynamically adapts to the actual symbol probability. The encoder/decoder of the present invention counts the number of times each symbol is coded. Based upon these counts, the encoder/decoder selects how many symbols to group when forming a code word- The encoder also uses these counts to select the specific codeword that should be used.
Abstract:
A method and apparatus for encoding video frames is described, In one embodiment, an encoding method includes identifying a set of similar pixels that includes at least one reference pixel and multiple predicted pixels, and jointly transforming the set of similar pixels into a set of coefficients using an orthonormal transform (702).
Abstract:
The present invention relates generally to systems, methods, and computer program products for optimally allocating a fixed number of bits among a plurality of multi-media data channels. The optimal number of bits is determined by preprocessing each channel to calculate complexity data, and then the complexity data is used to determine the optimal number of bits to assign to each channel. The optimal number of bits may be determined by a closed loop controller in communication with one or more channel encoders, and the multimedia channels may contain video data conforming to the MPEG2 video format.
Abstract:
A method, program product and apparatus for decoding from a scalable bit stream the binarization results of a video sequence by selectively decoding syntax elements and avoidin redundancy in coding. The result is a decrease in the size of the compressed bit stream of an enhancement layer bit stream. One method includes determining whether a skipping flag in the base layer macro block of the video data is set, and decoding a skipping flag from an enhancement layer macro block of the video data, corresponding to the base layer macro block, only if the base layer macro block skipping flag is set. Another method includes determining which of a plurality of blocks in a base layer macro block contain zero coefficients, decoding an abbreviated coded block pattern (CBP) of an enhancement layer macro block, where the CBP includes a number of digits equal to the number of blocks in said base layer macro block containing only zero coefficients, and then generating a complete CBP for the enhancement layer based on the results of said decoding. Yet another method includes decoding a CBP value of a base layer macro block and differentially decoding a CBP value for an enhancement layer macro block relative to the CBP of the base layer macro block. An additional method includes determining the zero-value coefficients in a block of a base layer, decoding a coded block flag for a corresponding block in an enhancement layer, acid determining, based on the value of said encoded block flag, whether any of the zero-coefficients become non-zero coefficients in said enhancement block.
Abstract:
A data structure defining a high dynamic range image comprises a tone map having a reduced dynamic range and HDR information. The high dynamic range image can be reconstructed from the tone map and the HDR information. The data structure can be backwards compatible with legacy hardware or software viewers. The data structure may comprise a JFIF file having the tone map encoded as a JPEG image with the HDR information in an application extension or comment field of the JFIF file, or a MPEG file having the tone map encoded as a MPEG image with the HDR information in a video or audio channel of the MPEG file. Apparatus and methods for encoding or decoding the data structure may apply pre- or post correction to compensate for lossy encoding of the high dynamic range information.
Abstract:
A method and apparatus for encoding video frames is described. In one embodiment, an encoding method includes identifying a set of similar pixels that includes at least one reference pixel and multiple predicted pixels, and jointly transforming the set of similar pixels into a set of coefficients using an orthonormal transform.
Abstract:
A method for encoding a digital signal into a scalable bitstream comprising quantizing the digital signal, and encoding the quantized signal to form a core-layer bitstream, performing an error mapping based on the digital signal and the core-layer bitstream to remove information that has been encoded into the core-layer bitstream, resulting in an error signal, bit-plane coding the error signal based on perceptual information of the digital signal, resulting in an enhancement-layer bitstream, wherein the perceptual information of the digital signal is determined using a perceptual model, and multiplexing the core-layer bitstream and the enhancement-layer bitstream, thereby generating the scalable bitstream. A method for decoding a scalable bitstream into a digital signal comprising de-multiplexing the scalable bitstream into a core-layer bitstream and an enhancement-layer bitstream, decoding and de-quantizing the core-layer bitstream to generate a core-layer signal, bit-plane decoding the enhancement-layer bitstream based on perceptual information of the digital signal, and performing an error mapping based on the bit-plane decoded enhancement-layer bitstream and the de-quantized core-layer signal, resulting in an reconstructed transformed signal, wherein the reconstructed transformed signal is the digital signal.
Abstract:
In one aspect, an encoder/decoder receives information for four field motion vectors for a macroblock in an interlaced frame-coded, forward-predicted picture and processes the macroblock using the four field motion vectors. In another aspect, a decoder decodes skipped macroblocks of an interlaced frame. Skipped macroblocks use exactly one motion vector and have no motion vector differential information, and lack residual information. The skipped macroblock signal indicates one-motion-vector coding. In another aspect a decoder receives luma motion vector information for plural luma motion vectors for a macroblock (e.g., a 4:2:0 macroblock) and derives a chroma motion vector for each luma motion vector by performing at least one calculation on the luma motion vector information, maintaining a 1:1 ratio of chroma motion vectors to luma motion vectors for the macroblock. For example, the decoder receives four luma field motion vectors for a macroblock and derives four chroma motion vectors for the macroblock.
Abstract:
Methods, apparatus and computer readable medium are described that compress and/or decompress a digital image in a lossless or a lossy manner. In some embodiments, a display controller may compress a digital image by generating a symbol for each pel of the digital image. In particular, the symbol may represent a pel via a match vector and a channel error vector. The match vector may indicate which quantized channels of the pel matched quantized channels of a previous pel. Further, the channel error vector may comprise a lossless or lossy channel for each quantized channel of the pel that did not match a corresponding quantized channel of the previous pel. The channel error may also comprise a lossless or lossy channel error for each quantized channel of the pel that matched a corresponding quantized channel of the previous pel.
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 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" (502). 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 (506) to reduced constrast regions of an image to extend the precision with which the low contrast portions are compression coded.