Abstract:
Video compression encoding includes intra and inter prediction to reduce spatial and temporal redundancies in video. Prediction results or residuals represent differences between original video pixel values and predicted pixel values. The prediction residuals may be transformed into coefficients, referred to as transform coefficients, in the frequency domain. The transform coefficients may be quantized and entropy encoded. The transform coefficients can be sub-sampled prior to quantization to reduce their number. For example, sub-sampling may reduce more high frequency components than low frequency components represented in the transform coefficients. Therefore, sub-sampling reduces the number of transform coefficients that need to be quantized, reduces quantization complexity, and correspondingly increases throughput in the encoding.
Abstract:
Systems, devices and methods for performing luma-based chroma ultra prediction are described. Down-sample filters may be applied to luma values of luma pixel positions to generate reconstructed luma values for chroma pixel positions in a prediction unit of an intra frame. The down-sampled reconstructed luma values may then be used to predict chroma values for the chroma pixel positions. In some implementations, a reconstructed luma value of a chroma position may be used to predict that position's chroma value. In other implementations, reconstructed luma values of neighboring chroma pixel positions may be analyzed to adaptively predict a chroma value for a chroma pixel position.
Abstract:
Techniques are described that can be used to either compress or expand video. Color compression techniques are described that can be used to compress the wide color gamut content into lower color gamut for inclusion in a baseline layer. Color expansion techniques are described that convert lower color gamut data into wider color gamut format for inclusion in an enhancement layer. Both of the baseline video stream and enhancement layer video streams may be transmitted through a channel or stored in a memory device to be viewed later. Accordingly, both baseline and enhancement video layers are available so that either lower or higher quality displays can be used to display video.
Abstract:
Systems and methods for choosing whether to select either a spatial interpolation value or a motion compensation interpolation value for deinterlacing an interlaced frame. A minimal sum of absolute differences (SAD) may be determined for a current pixel. Depending on the magnitude of the minimal SAD relative to two threshold values, different checks may be applied. The outcome of the checks may determine whether the spatial interpolation value or the motion compensation interpolation value may be used in deinterlacing. Generally, the magnitude of the minimal SAD may determine the reliability of the SAD and the consequent trustworthiness of the associated motion vector (MV). Greater reliability of the minimal SAD may suggest that the motion compensation interpolation value may be used for purposes of deinterlacing. Less reliability in the minimal SAD may motivate additional checks to further evaluate whether the motion compensation interpolation value should be used. A less reliable minimal SAD and/or failure of some of the checks may suggest that the motion compensation interpolation value should not be used.
Abstract:
Adaptive control can use hierarchical motion estimation (HME) and/or multiple reference motion estimation (MRME) for the motion estimation of current encoding blocks. Both HME and MRME are allowed in the motion estimation to achieve a high coding gain. Control consists of slice level control and macro-block (MB) level control. A slice is one or more contiguous macroblocks. In slice level control, it is decided to use only one reference frame or use multiple reference frames to coding current slice based on the motion vectors obtained in coarse level motion estimation. In MB level control, it is decided to perform MRME or perform HME for the MB and its subblocks based on the coarse level motion vectors of the MB.
Abstract:
Methods and systems to manipulate color processing parameters to allow the detection of an arbitrary color of interest. Such reconfigurations may enable general point-of-interest color processing. Color mapping curves may also be configured, to accomplish the tasks of color correction, enhancement, de-saturation, and color compression.
Abstract:
A method includes selecting a target pixel and comparing a value of the target pixel with a respective value of each of a plurality of pixels located in an area that includes the target pixel. Further, for each pixel of the plurality of pixels that has a value different by at least a threshold amount from the value of the target pixel, the value of such pixel is replaced by the value of the target pixel. A filter function is applied to a set of pixels which includes the value of the target pixel and current values, after the selective replacement step, of the plurality of pixels.
Abstract:
A system, apparatus, method, and article to process a flexible macroblock ordering and arbitrary slice ordering are described. The apparatus may include a video decoder. The video decoder includes a processor to store coding parameters of one or more neighboring macroblocks in a data buffer. The neighboring macroblocks are previously decoded macroblocks and are adjacent to a current macroblock. The processor is to store control parameters for each of the one or more neighboring macroblocks in the data buffer. The processor is to reconstruct coding parameters for the current macroblock using availability information associated with the neighboring macroblocks.
Abstract:
A system, apparatus, method and article to perform buffering techniques are described. The apparatus may include a buffer having a fixed number of storage slots that store reconstructed picture representations received from an image processing module. Also, the apparatus may include a buffer status unit to store a multiple information items to indicate one or more buffer characteristics of the buffer. Further, the apparatus may include a buffer control module to manage storage within the buffer.
Abstract:
A method of filtering noise from a picture may include determining a set of pixel noise metrics for a set of selected pixels in the picture based solely on information from the set of selected pixels in the picture. The method may also designate as valid a subset of pixel noise metrics in the set of pixel noise metrics those associated pixels are not located at an edge or are not located in a complicated area of the picture. A set of block noise metrics may be calculated from the valid subset of pixel noise metrics, and a global noise metric for the picture may be ascertained from the set of block noise metrics. The picture may be filtered using the global noise metric to generate a filtered picture.