H04N19/533

Memory access window for sub prediction block motion vector derivation

The present disclosure relates to means to enable reduction of memory access in motion vector determination and/or refinement for a prediction block. In particular, the present disclosure relates to means to enable reduction of memory access in motion vector determination and/or refinement performed on a sub prediction block basis. In other words, a prediction block is split into sub prediction blocks for which at least the motion vector refinement is performed individually. The memory access window which limits the samples accessible during the motion vector determination and refinement of the sub prediction blocks does not exceed the memory access window for performing the motion vector determination and/or refinement for the prediction block.

IMAGE DECODING DEVICE, IMAGE DECODING METHOD, AND PROGRAM
20220312024 · 2022-09-29 · ·

An image decoding device (200) includes: a motion vector decoding unit (241B) configured to decode a motion vector from coded data; and a refinement unit (241C) configured to search for the motion vector with a value of the motion vector decoded by the motion vector decoding unit (241B) as an initial value, and set the decoded motion vector as a final motion vector in a case where a searching cost at an initial searched point is larger than a predetermined threshold value or in a case where the searching cost at the initial searched point is equal to or larger than the threshold value.

Method for refining a motion vector derived under a merge mode using a difference vector
11457235 · 2022-09-27 · ·

An image decoding method according to the present invention comprises: a step of acquiring an initial motion vector of a current block; a step of deriving a refined motion vector for each of a plurality of search points on the basis of the initial motion vector; and a step of acquiring a motion vector of the current block on the basis of the refined motion vector of any one of the plurality of search points.

Efficient low-complexity video compression

Disclosed is a low-complexity and yet efficient lossy method to compress distortion information for motion estimation, resulting in significant reduction in needed storage capacity. A system for implementing the method and a computer-readable medium for storing the method are also disclosed. The method includes determining and storing a distortion value for each trial motion vector in a plurality of trial motion vectors. Each trial motion vector specifies a position of a search region relative to a reference frame. The method further includes compressing each of the distortion values as a fixed number of bits based upon a minimum distortion value amongst the stored distortion values, and re-storing each compressed distortion value in place of its uncompressed value.

OPTIMIZATION OF INTERFRAME PREDICTION ALGORITHMS BASED ON HETEROGENEOUS COMPUTING

In at least one embodiment, a motion estimation method may include dividing a first video frame to be estimated into a plurality of macroblocks, in which each of the macroblocks includes a plurality of sub-blocks. The method may further include determining a sampling pattern for each sub-block based on visual data of the sub-block, and determining a prediction motion vector for each sub-block by performing a pre-search based on the sampling pattern of the sub-block. The method may further include determining a search template for each macroblock based on the prediction motion vector of each sub-block within the macroblock, and determining a prediction motion vector for each macroblock by performing a secondary search based on the search template of the macroblock.

OPTIMIZATION OF INTERFRAME PREDICTION ALGORITHMS BASED ON HETEROGENEOUS COMPUTING

In at least one embodiment, a motion estimation method may include dividing a first video frame to be estimated into a plurality of macroblocks, in which each of the macroblocks includes a plurality of sub-blocks. The method may further include determining a sampling pattern for each sub-block based on visual data of the sub-block, and determining a prediction motion vector for each sub-block by performing a pre-search based on the sampling pattern of the sub-block. The method may further include determining a search template for each macroblock based on the prediction motion vector of each sub-block within the macroblock, and determining a prediction motion vector for each macroblock by performing a secondary search based on the search template of the macroblock.

Low complexity real-time video coding

In a first exemplary media implementation, one or more processor-accessible media include processor-executable instructions that, when executed, direct a device to perform actions including: comparing an accuracy indicator to at least one threshold, the accuracy indicator corresponding to a reference macroblock selected for a target macroblock; ascertaining a refinement case from multiple refinement cases based on the comparing, each refinement case of the multiple refinement cases defining multiple test points in relation to the reference macroblock; and analyzing the ascertained refinement case with regard to the target macroblock. In a second exemplary media implementation, one or more media include processor-executable instructions that, when executed, direct a device to perform actions including: determining if two chrominance sums have magnitudes that are each less than a first product and four luminance sums have magnitudes that are each less than a second product; and if so, forwarding all zero values for a macroblock.

Low complexity real-time video coding

In a first exemplary media implementation, one or more processor-accessible media include processor-executable instructions that, when executed, direct a device to perform actions including: comparing an accuracy indicator to at least one threshold, the accuracy indicator corresponding to a reference macroblock selected for a target macroblock; ascertaining a refinement case from multiple refinement cases based on the comparing, each refinement case of the multiple refinement cases defining multiple test points in relation to the reference macroblock; and analyzing the ascertained refinement case with regard to the target macroblock. In a second exemplary media implementation, one or more media include processor-executable instructions that, when executed, direct a device to perform actions including: determining if two chrominance sums have magnitudes that are each less than a first product and four luminance sums have magnitudes that are each less than a second product; and if so, forwarding all zero values for a macroblock.

MOTION VECTOR REFINEMENT FOR MULTI-REFERENCE PREDICTION
20220046274 · 2022-02-10 ·

The present invention relates to the performance of motion vector refinement in a search space for multi-reference inter-prediction. Two or more reference pictures are selected, one of those used for motion vector refinement. Based on an initial estimate of a motion vector to the reference picture for motion vector refinement, a search space in this reference image is constructed. Using template matching, the first motion vector is refined. The second motion vector to another reference picture is calculated using its initial estimate, the initial estimate of the first motion vector and the refined first motion vector.

MOTION VECTOR REFINEMENT FOR MULTI-REFERENCE PREDICTION
20220046274 · 2022-02-10 ·

The present invention relates to the performance of motion vector refinement in a search space for multi-reference inter-prediction. Two or more reference pictures are selected, one of those used for motion vector refinement. Based on an initial estimate of a motion vector to the reference picture for motion vector refinement, a search space in this reference image is constructed. Using template matching, the first motion vector is refined. The second motion vector to another reference picture is calculated using its initial estimate, the initial estimate of the first motion vector and the refined first motion vector.