H04N19/557

IMAGE PROCESSING METHOD AND ASSOCIATED ENCODER
20210337192 · 2021-10-28 ·

An image processing method includes: determining a first block and a second block corresponding to a current block; dividing each of the current block, the first block and the second block into a plurality of clusters; for a cluster having a corresponding location within each of the current block, the first block and the second block, performing gradient calculations on pixel values within the cluster of the first block and pixel values within the cluster of the second block, and accordingly determining an adjustment value, wherein a window size of the cluster used in the gradient calculations is one or zero; and for a pixel within the cluster of the current block, referring to a pixel value of the pixel of the first block, a pixel value of the pixel of the second block and the adjustment value to calculate a pixel value of the pixel of the current block.

EARLY DETERMINATION OF HASH-BASED MOTION SEARCHING

Methods, systems and device for hash-based motion estimation in video coding are described. An exemplary method of video processing includes determining, for a conversion between a current block of a video and a bitstream representation of the video, motion information associated with the current block using a hash-based motion search, a size of the current block being M×N, M and N being positive integers and M being not equal to N, applying, based on the motion information and a video picture comprising the current block, a prediction for the current block, and performing, based on the prediction, the conversion.

SIMPLIFICATION OF HASH-BASED MOTION SEARCHING

Methods, systems and device for hash-based motion estimation in video coding are described. An exemplary method of video processing includes determining, for a conversion between a current block of a video and a bitstream representation of the video, motion information associated with the current block using a hash-based motion search, a size of the current block being M×N, M and N being positive integers and M being not equal to N, applying, based on the motion information and a video picture comprising the current block, a prediction for the current block, and performing, based on the prediction, the conversion.

HASH-BASED MOTION SEARCHING

Methods, systems and device for hash-based motion estimation in video coding are described. An exemplary method of video processing includes determining, for a conversion between a current block of a video and a bitstream representation of the video, motion information associated with the current block using a hash-based motion search, a size of the current block being M×N, M and N being positive integers and M being not equal to N, applying, based on the motion information and a video picture comprising the current block, a prediction for the current block, and performing, based on the prediction, the conversion.

DECODER-SIDE MOTION VECTOR REFINEMENT (DMVR) PROCESS METHOD AND APPARATUS

Methods and apparatuses of determining an alignment level between motion compensated reference patches for reducing motion vector refinement steps are provided. According to one method, obtaining, by a decoder, motion compensated interpolated samples based on sub-pixel accurate merge motion vectors from a bilinear motion compensated interpolation; computing, by the decoder, a sum of absolute differences (SAD) between two motion compensated reference patches using a subset of the motion compensated interpolated samples; determining, by the decoder, whether the SAD is less than a coding unit (CU) size-dependent threshold value; when the SAD is less than the CU size-dependent threshold value: skipping remaining decoder-side motion vector refinement (DMVR) process steps; and performing final motion compensation; and when the SAD is not less than the CU size-dependent threshold value: performing the remaining DMVR process steps; and performing the final motion compensation.

DECODER-SIDE MOTION VECTOR REFINEMENT (DMVR) PROCESS METHOD AND APPARATUS

Methods and apparatuses of determining an alignment level between motion compensated reference patches for reducing motion vector refinement steps are provided. According to one method, obtaining, by a decoder, motion compensated interpolated samples based on sub-pixel accurate merge motion vectors from a bilinear motion compensated interpolation; computing, by the decoder, a sum of absolute differences (SAD) between two motion compensated reference patches using a subset of the motion compensated interpolated samples; determining, by the decoder, whether the SAD is less than a coding unit (CU) size-dependent threshold value; when the SAD is less than the CU size-dependent threshold value: skipping remaining decoder-side motion vector refinement (DMVR) process steps; and performing final motion compensation; and when the SAD is not less than the CU size-dependent threshold value: performing the remaining DMVR process steps; and performing the final motion compensation.

Diversified motion using multiple global motion models

An apparatus for encoding a current frame of a video. The apparatus includes a memory and a processor. The processor is configured to execute instructions stored in the memory to generate, for each reference frame of a subset of available reference frames, at least one respective candidate global motion model (GMM); partition the current frame into blocks; generate an aggregated residual frame for the current frame; and encode the respective residual blocks in a compressed bitstream. To generate the aggregated residual frame includes to select, for predicting each block of the blocks, a respective selected GMM, where the respective selected GMM corresponds to the one of the at least one respective candidate GMMs that minimizes a total error associated with the aggregated residual frame; and obtain respective residual blocks for the block.

Motion Estimation Using Collocated Blocks
20210235111 · 2021-07-29 ·

A data processing system for performing motion estimation in a sequence of frames having first and second frames each divided into respective sets of blocks of pixels, includes a vector generator configured to form motion vector candidates representing mappings of pixels between the first and second frames; and a vector processor configured to, for a search block of the first frame, identify a first motion vector candidate ending in a block of the second frame collocated with the search block and form an output vector for the search block which is substantially parallel to the first motion vector candidate and represents a mapping of pixels from the search block to the second frame.

Motion Estimation Using Collocated Blocks
20210235111 · 2021-07-29 ·

A data processing system for performing motion estimation in a sequence of frames having first and second frames each divided into respective sets of blocks of pixels, includes a vector generator configured to form motion vector candidates representing mappings of pixels between the first and second frames; and a vector processor configured to, for a search block of the first frame, identify a first motion vector candidate ending in a block of the second frame collocated with the search block and form an output vector for the search block which is substantially parallel to the first motion vector candidate and represents a mapping of pixels from the search block to the second frame.

Image encoding apparatus, image encoding method and program, image decoding apparatus, and image decoding method and program
11102505 · 2021-08-24 · ·

An index, indicating a vector representing a spatial relationship between a block to be encoded and at least one block spatially at the periphery of the block to be encoded, is encoded in a case where an coding mode to encode the block to be encoded is a first coding mode, and an index, indicating a vector representing a spatial relationship between the block to be encoded and at least one block spatially at the periphery of the block to be encoded, and a vector correlated with a block within an image that is different from the image to be encoded, is encoded in a case where the coding mode to encode the block to be encoded is a second coding mode.