# US 11,310,520 B2 · Method and apparatus of motion-vector rounding unification for video coding system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,310,520 B2
- Document ID: US11310520B2
- Status: Granted
- Kind: B2
- Application number: 16/559,966
- Filed: 2019-09-04
- Published: 2020-03-05
- Granted: 2022-04-19
- Earliest claimed: 2018-09-04
- Assignees: Hfi Innovation Inc.
- Applicants: Mediatek Inc.
- Inventors: Tzu-Der Chuang; Ching-Yeh Chen; Zhi-Yi Lin
- Web page: https://patentgrep.com/patent/US11310520B2

## CPC

- H04N 19/513: Processing of motion vectors
- H04N 19/139: Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N 19/517: by encoding
- H04N 19/54: using feature points or meshes
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Method and apparatus for coding system using Inter coding tools are disclosed. According to one method, a same conversion process is applied to the MVs associated with a current block to generate the converted MVs at the video encoder side or at the video decoder side when the target Inter coding tool belongs to at least two tools of a group, wherein the group comprises at least one of inherited affine Merge candidate derivation and affine sub-block MV derivation. According to another method, a simplified conversion process is applied to the MV to generate a rounded MV, MV_rounded according to MV_rounded=(MV+offset−(MV>=0))>>shift.

## Claims

### Claim 1

A method of video coding performed by a video encoder or a video decoder that utilizes an Inter coding tool, the method comprising:
receiving input data related to a current block in a current picture at a video encoder side or a video bitstream corresponding to compressed data including the current block at a video decoder side;
determining one or more MVs (motion vectors) associated with a target Inter coding tool for the current block at the video encoder side or at the video decoder side;
applying a same conversion process to said one or more MVs to generate one or more converted MVs at the video encoder side or at the video decoder side when the target Inter coding tool belongs to at least two tools of a group, wherein the group comprises at least one of inherited affine Merge candidate derivation and affine sub-block MV derivation, wherein when the target Inter coding tool corresponds to the inherited affine Merge candidate derivation, said one or more MVs corresponds to one or more affine control point MVs;
clipping said one or more affine control point MVs in a clipped MV range, wherein the clipped MV range is in −2{circumflex over ( )}(k−1) to 2{circumflex over ( )}(k−1)−1, and wherein the k is 16 or 18; and
encoding the current block or motion information of the current block using said one more converted MVs at the video encoder side or decoding the current block or the motion information of the current block using said one or more converted MVs at the video decoder side.

### Claim 2 (depends on 1)

The method of claim 1, wherein the same conversion process comprises MV rounding, MV scaling, right-shifting, or a combination thereof.

### Claim 3 (depends on 1)

The method of claim 1, wherein the same conversion process comprises rounding-to-zero process.

### Claim 4 (depends on 3)

The method of claim 3, wherein the rounding-to-zero process is implemented as MV_rounded=(MV+offset−(MV>=0))>>shift, and wherein MV represents a target MV being applied the same conversion process, MV_rounded represents a converted target MV, shift represents an integer corresponding to a number of bits for a right-shift operation, offset is equal to (1<<(shift−1)), and “<<” represent a left-shift operation.

### Claim 5 (depends on 1)

The method of claim 1, wherein the same conversion process comprises rounding-away-from-zero process.

### Claim 6 (depends on 1)

The method of claim 1, wherein when the target Inter coding tool corresponds to the affine sub-block MV derivation, said one or more MVs corresponds to one or more derived affine sub-block MVs.

### Claim 7 (depends on 6)

The method of claim 6, further comprising clipping said derived affine sub-block MVs in a clipped MV range.

### Claim 8 (depends on 7)

The method of claim 7, wherein the clipped MV range is in −2{circumflex over ( )}(k−1) to 2{circumflex over ( )}(k−1)−1, and wherein the k is 16 or 18.

### Claim 9 (depends on 1)

The method of claim 1, wherein the group further comprises pair-wise Merge candidate derivation or Adaptive MV Resolution (AMVR).

### Claim 10

An apparatus for video coding performed by a video encoder or a video decoder that utilizes an Inter coding tool, the apparatus comprising one or more electronic circuits or processors arranged to:
receive input data related to a current block in a current picture at a video encoder side or a video bitstream corresponding to compressed data including the current block at a video decoder side;
determine one or more MVs (motion vectors) associated with a target Inter coding tool for the current block at the video encoder side or at the video decoder side;
apply a same conversion process to said one or more MVs to generate one or more converted MVs at the video encoder side or at the video decoder side when the target Inter coding tool belongs to at least two tools of a group, wherein the group comprises at least one of inherited affine Merge candidate derivation and affine sub-block MV derivation, wherein when the target Inter coding tool corresponds to the inherited affine Merge candidate derivation, said one or more MVs corresponds to one or more affine control point MVs;
clip said one or more affine control point MVs in a clipped MV range, wherein the clipped MV range is in −2{circumflex over ( )}(k−1) to 2{circumflex over ( )}(k−1)−1, and wherein the k is 16 or 18; and
encode the current block or motion information of the current block using said one more converted MVs at the video encoder side or decode the current block or the motion information of the current block using said one or more converted MVs at the video decoder side.

### Claim 11

A method of video coding performed by a video encoder or a video decoder that utilizes an Inter coding tool, the method comprising:
receiving input data related to a current block in a current picture at a video encoder side or a video bitstream corresponding to compressed data including the current block at a video decoder side;
determining one or more MVs (motion vectors) associated with a target Inter coding tool for the current block at the video encoder side or at the video decoder side;
applying a same conversion process to said one or more MVs to generate one or more converted MVs at the video encoder side or at the video decoder side when the target Inter coding tool belongs to at least two tools of a group, wherein the group comprises at least one of inherited affine Merge candidate derivation and affine sub-block MV derivation, wherein the same conversion process comprises a rounding-to-zero process, and wherein the rounding-to-zero process is implemented as MV_rounded=(MV+offset−(MV>=0))>>shift, and wherein MV represents a target MV being applied the same conversion process, MV_rounded represents a converted target MV, shift represents an integer corresponding to a number of bits for a right-shift operation, offset is equal to (1<<(shift−1)), and “<<” represent a left-shift operation; and
encoding the current block or motion information of the current block using said one more converted MVs at the video encoder side or decoding the current block or the motion information of the current block using said one or more converted MVs at the video decoder side.

### Claim 12 (depends on 11)

The method of claim 11, wherein the same conversion process comprises MV rounding, MV scaling, right-shifting, or a combination thereof.
