# US 10,873,757 B2 · Method of encoding video data

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

- Number: US 10,873,757 B2
- Document ID: US10873757B2
- Status: Granted
- Kind: B2
- Application number: 16/242,546
- Filed: 2019-01-08
- Published: 2019-05-09
- Granted: 2020-12-22
- Earliest claimed: 2011-11-07
- Assignees: Infobridge Pte. Ltd.
- Applicants: Infobridge Pte. Ltd.
- Inventors: Soo Mi Oh; Moonock Yang
- Web page: https://patentgrep.com/patent/US10873757B2

## CPC

- H04N 19/52: by predictive encoding
- H04N 19/105: Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
- H04N 19/117: Filters, e.g. for pre-processing or post-processing (sub-band filter banks H04N19/635)
- H04N 19/119: Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
- H04N 19/122: Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
- H04N 19/126: Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
- H04N 19/13: Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
- H04N 19/139: Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
- H04N 19/159: Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N 19/182: the unit being a pixel
- H04N 19/196: being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters (processing of motion vectors H04N19/513)
- H04N 19/463: by compressing encoding parameters before transmission
- H04N 19/521: {for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors}
- H04N 19/523: with sub-pixel accuracy
- H04N 19/587: involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
- H04N 19/61: in combination with predictive coding
- H04N 19/615: using motion compensated temporal filtering [MCTF]
- H04N 19/635: characterised by filter definition or implementation details
- H04N 19/80: Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation (H04N19/635, H04N19/86 take precedence)
- H04N 19/157: Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N 19/172: the region being a picture, frame or field
- H04N 19/517: by encoding
- H04N 19/56: Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
- H04N 19/82: involving filtering within a prediction loop
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A method of decoding video data in uni-directional prediction by a decoding apparatus can include deriving, by the decoding apparatus, a reference picture index and a motion vector of a current prediction unit; generating, by the decoding apparatus, a prediction block of the current prediction unit using the reference picture index and the motion vector; generating, by the decoding apparatus, a quantized block by inversely scanning quantized coefficient components; generating, by the decoding apparatus, a transformed block by inversely quantizing the quantized block using a quantization parameter; generating, by the decoding apparatus, a residual block by inversely transforming the transformed block; and generating, by the decoding apparatus, reconstructed pixels using the prediction block and the residual block, in which prediction pixels of the prediction block are generated using an interpolation filter selected based on the motion vector, the interpolation filter being a 7-tap filter if the motion vector indicates a quarter pixel position, the interpolation filter being an 8-tap filter if the motion vector indicates a half pixel position.

## Claims

### Claim 1

A method of decoding video data in uni-directional prediction by a decoding apparatus, the method comprising:
deriving, by the decoding apparatus, a reference picture index and a motion vector of a current prediction unit;
generating, by the decoding apparatus, a prediction block of the current prediction unit using the reference picture index and the motion vector;
generating, by the decoding apparatus, a quantized block by inversely scanning quantized coefficient components;
generating, by the decoding apparatus, a transformed block by inversely quantizing the quantized block using a quantization parameter;
generating, by the decoding apparatus, a residual block by inversely transforming the transformed block; and
generating, by the decoding apparatus, reconstructed pixels using the prediction block and the residual block,
wherein prediction pixels of the prediction block are generated using an interpolation filter selected based on the motion vector where the number of taps of the interpolation filter is determined by the prediction pixel position indicated by the motion vector, the interpolation filter being a 7-tap filter if the motion vector indicates a quarter pixel position, the interpolation filter being an 8-tap filter if the motion vector indicates a half pixel position,
wherein the quantization parameter is derived by adding a differential quantization parameter and a quantization parameter predictor, when only one of a left quantization parameter and an above quantization parameter is available, the quantization parameter predictor is an average of a previous quantization parameter and the available one of the left quantization parameter and the above quantization parameter, and when both of the left quantization parameter and the above quantization parameter are unavailable, the previous quantization parameter is set as the quantization parameter predictor,
wherein the differential quantization parameter is restored using a bin string indicating an absolute value of the differential quantization parameter and a bin indicating a sign of the differential quantization parameter, and
wherein the quantization parameter is derived per quantization unit, and a size of the quantization unit is one of allowable sizes of a coding unit.

### Claim 2 (depends on 1)

The method of claim 1, wherein the reference picture index of the current prediction unit is a reference picture index of a spatial or temporal merge candidate specified by a merge index and the motion vector of the current prediction unit is a motion vector of the spatial or temporal merge candidate specified by the merge index, and
if the current prediction unit is a second prediction unit partitioned by asymmetric partitioning, the spatial merge candidate corresponding to a first prediction unit partitioned by the asymmetric partitioning is set as unavailable.

### Claim 3 (depends on 2)

The method of claim 2, wherein if a size of the current prediction unit is (3/2)N×2N, the left spatial merge candidate is set as unavailable.

### Claim 4 (depends on 2)

The method of claim 2, wherein a motion vector of the temporal merge candidate is a motion vector of a temporal merge candidate block within a temporal merge candidate picture, and a position of the temporal merge candidate block is determined depending on a position of the current block within a largest coding unit (LCU).

### Claim 5

A method of encoding video data in uni-directional prediction by an encoding apparatus, the method comprising:
determining, by the encoding apparatus, a reference picture index and a motion vector of a current prediction unit;
generating, by the encoding apparatus, a prediction block with the reference picture index and the motion vector;
generating, by the encoding apparatus, a residual block with the prediction block;
generating, by the encoding apparatus, a transformed block by transforming the residual block;
generating, by the encoding apparatus, a quantized block by quantizing the transformed block using a quantization parameter; and
generating, by the encoding apparatus, quantized coefficient components by scanning the quantized block,
wherein prediction pixels of the prediction block are generated using an interpolation filter selected based on the motion vector where the number of taps of the interpolation filter is determined by the prediction pixel position indicated by the motion vector, the interpolation filter being a 7-tap filter if the motion vector indicates a quarter pixel position, the interpolation filter being an 8-tap filter if the motion vector indicates a half pixel position,
wherein the quantization parameter is derived per quantization unit, and a size of the quantization unit is one of allowable sizes of a coding unit,
wherein a differential quantization parameter is generated by subtracting a quantization parameter predictor from the quantization parameter, when only one of a left quantization parameter and an above quantization parameter is available, the quantization parameter predictor is an average of a previous quantization parameter and the available one of the left quantization parameter and the above quantization parameter, and when both of the left quantization parameter and the above quantization parameter are unavailable, the previous quantization parameter is set as the quantization parameter predictor, and
wherein the differential quantization parameter is encoded into a bin string indicating an absolute value of the differential quantization parameter and a bin indicating a sign of the differential quantization parameter.

### Claim 6 (depends on 5)

The method of claim 5, wherein the reference picture index is a reference picture index of a spatial or temporal merge candidate specified by a merge index and the motion vector is a motion vector of the spatial or temporal merge candidate specified by the merge index, and
if the current prediction unit is a second prediction unit partitioned by asymmetric partitioning, the spatial merge candidate corresponding to a first prediction unit partitioned by the asymmetric partitioning is set as unavailable.

### Claim 7 (depends on 6)

The method of claim 6, wherein if a size of the current prediction unit is (3/2)N×2N, the left spatial merge candidate is set as unavailable.

### Claim 8 (depends on 6)

The method of claim 6, wherein a motion vector of the temporal merge candidate is a motion vector of a temporal merge candidate block within a temporal merge candidate picture, and a position of the temporal merge candidate block is determined depending on a position of the current block within a largest coding unit (LCU).

### Claim 9

A non-transitory computer-readable storage medium storing encoded video information, comprising:
a bit stream stored in the computer-readable storage medium, the bit stream comprising entropy-encoded information on a reference picture index, a motion vector and a quantized coefficients,
wherein the quantized coefficients is generated by quantizing a transformed residual block using a quantization parameter, and the transformed residual block is generated by transforming a residual block which is generated based on a prediction block, and the prediction block is generated using the reference picture index and the motion vector,
wherein prediction pixels of the prediction block are generated using an interpolation filter selected based on the motion vector where the number of taps of the interpolation filter is determined by the prediction pixel position indicated by the motion vector, the interpolation filter being a 7-tap filter if the motion vector indicates a quarter pixel position, the interpolation filter being an 8-tap filter if the motion vector indicates a half pixel position,
wherein the quantization parameter is derived per quantization unit, and a size of the quantization unit is one of allowable sizes of a coding unit,
wherein a differential quantization parameter is generated by subtracting a quantization parameter predictor from the quantization parameter, when only one of a left quantization parameter and an above quantization parameter is available, the quantization parameter predictor is an average of a previous quantization parameter and the available one of the left quantization parameter and the above quantization parameter, and when both of the left quantization parameter and the above quantization parameter are unavailable, the previous quantization parameter is set as the quantization parameter predictor, and
wherein the differential quantization parameter is encoded into a bin string indicating an absolute value of the differential quantization parameter and a bin indicating a sign of the differential quantization parameter.
