Abstract:
A method and apparatus of image data compression and decompression are disclosed. According to an embodiment of the present invention, the compression method partitions the image data into access units and encodes each access unit into a bitstream according to a target bit budget. Each access unit is encoded using first data compression to generate a first bitstream and the residual data is further encoded using second data compression to generate a second bitstream if the first bitstream is smaller than the target bit budget. In one example, the second data compression comprises bit plane coding applied to bit plane-ordered data, wherein the bit plane-ordered data is generated by scanning from a most significant bit to a least significant bit of the residual data in a bit plane-wise order. The decompression method comprises steps to recover reconstructed data from the first and second bitstreams.
Abstract:
An image compression method has at least the following steps: receiving source pixel data of a plurality of blocks of a frame; when a lossless compression mode is enabled for the frame, bypassing a source quantization operation and applying a lossless compression kernel to source pixel data of each of the blocks; and when a lossy compression mode is enabled for the frame, applying the source quantization operation to the source pixel data of each of the blocks to generate input pixel data of each of the blocks, and applying the lossless compression kernel to the input pixel data of each of the blocks. For example, the source quantization operation employs an adaptive quantization parameter for each of the blocks such that a size of compressed data of the frame generated under the lossy compression mode does not exceed a bit budget.
Abstract:
A video encoding method includes: during a first period, performing an encoding process upon a first block group of a current frame to generate a first block group bitstream; and during a second period, transmitting a second block group bitstream derived from encoding a second block group of the current frame, wherein the second period overlaps the first period. The encoding process includes: during a first time segment of the first period, performing a first in-loop filtering process upon a first group of pixels; and during a second time segment of the first period, performing a second in-loop filtering process upon a second group of pixels, wherein the second time segment overlaps the first time segment, and a non-zero pixel distance exists between a first edge pixel of the first group of pixels and a second edge pixel of the second group of pixels in a filter direction.
Abstract:
A method and apparatus of image coding including a no-residue prediction mode are disclosed. At the encoder side, current predictors for a current coding unit are determined according to a target prediction process associated with a target prediction mode. The current predictors are determined based on pixel data including reconstructed pixels in the current slice or the current image. The target prediction process is applied to the current coding unit using the current predictors to generate prediction residues. A distortion condition or a cost measure for the prediction residues is determined. If the distortion condition is satisfied or the cost measure favors coding without the prediction residues, the current coding unit is encoded into current compressed bits of the current coding unit without compressed data associated with the prediction residues. A corresponding decoding method and apparatus are also disclosed.
Abstract:
An encoding method is used for encoding an image. The image includes a plurality of blocks each having a plurality of pixels. The encoding method includes: encoding a plurality of data partitions of block data of a block in the image to generate a plurality of compressed bitstream segments, respectively; and combining the compressed bitstream segments to generate an output bitstream of the block. A bit group based interleaving process is involved in generating the output bitstream. According to the bit group based interleaving process, each of the compressed bitstream segments is divided into a plurality of bit groups each having at least one bit, and the output bitstream includes consecutive bit groups belonging to different compressed bitstream segments, respectively.
Abstract:
A video encoder includes a video encoding circuit and a slice decision circuit. The video encoding circuit encodes a first slice in a frame according to a first coding unit boundary between an end of the first slice and a start of a second slice in the frame, and outputs a first bitstream of the first slice. The slice decision circuit predicts the first coding unit boundary before a bitstream of a last coding unit of the first slice is generated by the video encoding circuit, and informs the video encoding circuit of the first coding unit boundary. The video encoding circuit refers to the first coding unit boundary predicted by the slice decision circuit to ensure that a bitstream size of the first bitstream is constrained by a predetermined bitstream size threshold.
Abstract:
A buffer device is used by a compressor/decompressor with block prediction for storing information needed to encode/decode a pixel line. Vector information (e.g., final block prediction vector information and/or partial block prediction vector information) of at least one later pixel group is computed while a current pixel group is being encoded/decoded. The buffer device does not need to store vector information of all pixel groups of one pixel line at the same time. For example, one pixel line is composed of M pixel groups; and when the compressor/decompressor is encoding/decoding the current pixel line, final/partial vector information sets of at most K pixel groups are allowed to be stored in the buffer device simultaneously, where K is a positive integer smaller than M.
Abstract:
An image processing method includes at least the following steps: partitioning a picture into a plurality of slices, wherein each slice row in the picture includes at least one slice; generating a compressed picture by encoding each of the slices; and controlling at least one of start of transmission of encoded data of a slice row and end of the transmission of encoded data of the slice row according to a transmission synchronization event.
Abstract:
One exemplary image encoding method for encoding an image includes following steps: calculating a mean value of each color channel of a plurality of reconstructed pixels; determining a first predictor used by a first candidate coding mode of a current coding block according to mean values of color channels of the reconstructed pixels; determining a second predictor used by a second candidate coding mode of the current coding block according to the mean values of the color channels of the reconstructed pixels, wherein determining the first predictor and determining the second predictor are performed in a parallel manner; determining a coding mode selected from candidate coding modes including at least the first candidate coding mode and the second candidate coding mode; and encoding the current coding block into a part of a bitstream according to at least the determined coding mode.
Abstract:
An entropy encoding method includes following steps: receiving symbols of a pixel group; entropy encoding data derived from the symbols of the pixel group to generate a first bitstream portion and a second bitstream portion, wherein the first bitstream portion includes encoded magnitude data of the symbols of the pixel group, and the second bitstream portion includes encoded sign data of at least a portion of the symbols of the pixel group; and generating a bitstream segment of the pixel group by combining at least the first bitstream portion and the second bitstream portion. The pixel group includes a plurality of pixels, and the symbols of the pixel group have a plurality of symbol values of the pixels, respectively. When a first symbol value has a zero magnitude value, a sign value of the first symbol value is not entropy encoded into the second bitstream portion.