# US 12,120,304 B2 · Use restrictions for cross-component prediction

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

- Number: US 12,120,304 B2
- Document ID: US12120304B2
- Status: Granted
- Kind: B2
- Application number: 17/968,553
- Filed: 2022-10-18
- Published: 2023-03-02
- Granted: 2024-10-15
- Earliest claimed: 2020-04-18
- Assignees: Beijing Bytedance Network Technology Co., Ltd.; Bytedance Inc.
- Applicants: Beijing Bytedance Network Technology Co., Ltd.; Bytedance Inc.
- Inventors: Yang Wang; Li Zhang; Kai Zhang; Hongbin Liu; Yue Wang
- Web page: https://patentgrep.com/patent/US12120304B2

## CPC

- H04N 19/132: Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
- 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/11: among a plurality of spatial predictive coding modes
- H04N 19/124: Quantisation
- H04N 19/136: Incoming video signal characteristics or properties
- H04N 19/176: the region being a block, e.g. a macroblock
- H04N 19/186: the unit being a colour or a chrominance component
- H04N 19/593: involving spatial prediction techniques
- H04N 19/70: characterised by syntax aspects related to video coding, e.g. related to compression standards
- H04N 19/80: Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation (H04N19/635, H04N19/86 take precedence)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A method of video processing is provided. The method includes determining, for a conversion between a video comprising a video unit and a bitstream of the video, whether a first coding tool is enabled for the video unit according to a rule. The rule specifies that the first coding tool and a second coding tool are mutually exclusively enabled. The first coding tool or the second coding tool comprises a sign data hiding tool. The method also includes performing the conversion according to the determining.

## Claims

### Claim 1

A method for processing video data, comprising:
determining, for a conversion between a chroma block of a video and a bitstream of the video, a parameter of a cross-component linear model for the chroma block according to a rule; and
performing the conversion based on the determining,
wherein the rule specifies that the parameter of the cross-component linear model is determined based on neighbouring chroma samples of the chroma block and down-sampled collocated luma samples derived based on variables representing neighbouring luma samples of a luma block corresponding to the chroma block,
wherein the rule further specifies that when a color format of the chroma block is 4:2:0, the down-sampled collocated luma samples is derived further based on at least one of a value of a first syntax element and a value of a first variable, wherein the first syntax element is included in the bitstream indicating whether chroma sample positions are vertically shifted relative to corresponding luma sample position, and the first variable indicates whether the chroma block locates at a boundary of a coding tree unit comprising the chroma block,
wherein the rule further specifies that when the color format of the chroma block is 4:2:2, the down-sampled collocated luma samples is derived without considering the value of the first syntax element,
wherein the rule further specifies that when the value of the first variable indicates that the chroma block locates at the boundary of the coding tree unit comprising the chroma block, the down-sampled collocated luma samples is derived using a same filter, regardless of the value of the first syntax element, for the chroma block having the color format of 4:2:0 and the chroma block having the color format of 4:2:2, and
wherein the rule further specifies that when the value of the first variable indicates that the chroma block does not locate at the boundary of the coding tree unit comprising the chroma block and the color format of the chroma block is 4:2:0, the down-sampled collocated luma samples are obtained using different filters in response to the first syntax element having different values.

### Claim 2 (depends on 1)

The method of claim 1, wherein the rule further specifies that when the color format of the chroma block is 4:2:2, the down-sampled collocated luma samples are obtained using a fixed filter regardless of the value of the first syntax element, wherein the fixed filter is a 3-tap horizontal filter.

### Claim 3 (depends on 2)

The method of claim 2, wherein when using the fixed filter, pSelDsY[i]=(pY[SubWidthC*x−1][−1]+2*pY[SubWidthC*x][−1]+pY[SubWidthC*x+1][−1]+2)>>2, where pSelDsY[i] denotes a down-sampled collocated luma sample with an index of i, and pY[m][n] denotes a neighbouring luma sample with a location of (m, n).

### Claim 4 (depends on 1)

The method of claim 1, wherein the rule further specifies that when the value of the first variable indicates that the chroma block does not locate at the boundary of the coding tree unit comprising the chroma block and the color format of the chroma block is 4:2:0, pSelDsY[i] is equal to (pY[SubWidthC*x][−3]+pY[SubWidthC*x−1][−2]+4*pY[SubWidthC*x][−2]+pY[SubWidthC*x+1][−2]+pY[SubWidthC*x][−1]+4)>>3 in response to the first syntax element having a value of 1, where pSelDsY[i] denotes a down-sampled collocated luma sample with an index of i, and pY[m][n] denotes a neighbouring luma sample with a location of (m, n).

### Claim 5 (depends on 1)

The method of claim 1, wherein the rule further specifies that when the value of the first variable indicates that the chroma block does not locate at the boundary of the coding tree unit comprising the chroma block and the color format of the chroma block is 4:2:0, pSelDsY[i] is equal to (pY[SubWidthC x−1][−1]+pY[SubWidthC*x−1][−2]+2*pY[SubWidthC*x][−1]+2*pY[SubWidthC*x][−2]+pY[SubWidthC*x+1][−1]+pY[SubWidthC*x+1][−2]+4)>>3 in response to the first syntax element having a value of 0, where pSelDsY[i] denotes a down-sampled collocated luma sample with an index of i, and pY[m][n] denotes a neighbouring luma sample with a location of (m, n).

### Claim 6 (depends on 1)

The method of claim 1, wherein the variables representing neighbouring luma samples are derived based on at least one of the following: neighbouring above luma samples of the luma block, neighbouring left luma samples of the luma block, or samples in the luma block.

### Claim 7 (depends on 1)

The method of claim 1, wherein the rule further specifies, in case that the first syntax element is not present, the value of the first syntax element is inferred to be equal to 1.

### Claim 8 (depends on 1)

The method of claim 1, wherein the conversion includes encoding the video into the bitstream.

### Claim 9 (depends on 1)

The method of claim 1, wherein the conversion includes decoding the video from the bitstream.

### Claim 10

An apparatus for processing video data comprising a processor and a non-transitory memory with instructions thereon, wherein the instructions upon execution by the processor, cause the processor to:
determine, for a conversion between a chroma block of a video and a bitstream of the video, a parameter of a cross-component linear model for the chroma block according to a rule; and
perform the conversion based on the determining,
wherein the rule specifies that the parameter of the cross-component linear model is determined based on neighbouring chroma samples of the chroma block and down-sampled collocated luma samples derived based on variables representing neighbouring luma samples of a luma block corresponding to the chroma block,
wherein the rule further specifies that when a color format of the chroma block is 4:2:0, the down-sampled collocated luma samples is derived further based on at least one of a value of a first syntax element and a value of a first variable, wherein the first syntax element is included in the bitstream indicating whether chroma sample positions are vertically shifted relative to corresponding luma sample position, and the first variable indicates whether the chroma block locates at a boundary of a coding tree unit comprising the chroma block,
wherein the rule further specifies that when the color format of the chroma block is 4:2:2, the down-sampled collocated luma samples is derived without considering the value of the first syntax element,
wherein the rule further specifies that when the value of the first variable indicates that the chroma block locates at the boundary of the coding tree unit comprising the chroma block, the down-sampled collocated luma samples is derived using a same filter, regardless of the value of the first syntax element, for the chroma block having the color format of 4:2:0 and the chroma block having the color format of 4:2:2, and
wherein the rule further specifies that when the value of the first variable indicates that the chroma block does not locate at the boundary of the coding tree unit comprising the chroma block and the color format of the chroma block is 4:2:0, the down-sampled collocated luma samples are obtained using different filters in response to the first syntax element having different values.

### Claim 11 (depends on 10)

The apparatus of claim 10, wherein the rule further specifies that when the value of the first variable indicates that the chroma block does not locate at the boundary of the coding tree unit comprising the chroma block and the color format of the chroma block is 4:2:0, pSelDsY[i] is equal to (pY[SubWidthC*x][−3]+pY[SubWidthC*x−1][−2]+4*pY[SubWidthC*x][−2]+pY[SubWidthC*x+1][−2]+pY[SubWidthC*x][−1]+4)>>3 in response to the first syntax element having a value of 1, where pSelDsY[i] denotes a down-sampled collocated luma sample with an index of i, and pY[m][n] denotes a neighbouring luma sample with a location of (m, n), or
wherein the rule further specifies that when the value of the first variable indicates that the chroma block does not locate at the boundary of the coding tree unit comprising the chroma block and the color format of the chroma block is 4:2:0, pSelDsY[i] is equal to (pY[SubWidthC x−1][−1]+pY[SubWidthC*x−1][−2]+2*pY[SubWidthC*x][−1]+2*pY[SubWidthC*x][−2]+pY[SubWidthC*x+1][−1]+pY[SubWidthC*x+1][−2]+4)>>3 in response to the first syntax element having a value of 0, where pSelDsY[i] denotes a down-sampled collocated luma sample with an index of i, and pY[m][n] denotes the neighbouring luma sample with a location of (m, n).

### Claim 12

A non-transitory computer-readable storage medium storing instructions that cause a processor to:
determine, for a conversion between a chroma block of a video and a bitstream of the video, a parameter of a cross-component linear model for the chroma block according to a rule; and
perform the conversion based on the determining,
wherein the rule specifies that the parameter of the cross-component linear model is determined based on neighbouring chroma samples of the chroma block and down-sampled collocated luma samples derived based on variables representing neighbouring luma samples of a luma block corresponding to the chroma block,
wherein the rule further specifies that when a color format of the chroma block is 4:2:0, the down-sampled collocated luma samples is derived further based on at least one of a value of a first syntax element and a value of a first variable, wherein the first syntax element is included in the bitstream indicating whether chroma sample positions are vertically shifted relative to corresponding luma sample position, and the first variable indicates whether the chroma block locates at a boundary of a coding tree unit comprising the chroma block,
wherein the rule further specifies that when the color format of the chroma block is 4:2:2, the down-sampled collocated luma samples is derived without considering the value of the first syntax element,
wherein the rule further specifies that when the value of the first variable indicates that the chroma block locates at the boundary of the coding tree unit comprising the chroma block, the down-sampled collocated luma samples is derived using a same filter, regardless of the value of the first syntax element, for the chroma block having the color format of 4:2:0 and the chroma block having the color format of 4:2:2, and
wherein the rule further specifies that when the value of the first variable indicates that the chroma block does not locate at the boundary of the coding tree unit comprising the chroma block and the color format of the chroma block is 4:2:0, the down-sampled collocated luma samples are obtained using different filters in response to the first syntax element having different values.

### Claim 13

A non-transitory computer-readable recording medium storing a bitstream of a video which is generated by a method performed by a video processing apparatus, wherein the method comprises:
determining a parameter of a cross-component linear model for a chroma block of the video according to a rule; and
generating the bitstream based on the determining,
wherein the rule specifies that the parameter of the cross-component linear model is determined based on neighbouring chroma samples of the chroma block and down-sampled collocated luma samples derived based on variables representing neighbouring luma samples of a luma block corresponding to the chroma block,
wherein the rule further specifies that when a color format of the chroma block is 4:2:0, the down-sampled collocated luma samples is derived further based on at least one of a value of a first syntax element and a value of a first variable, wherein the first syntax element is included in the bitstream indicating whether chroma sample positions are vertically shifted relative to corresponding luma sample position, and the first variable indicates whether the chroma block locates at a boundary of a coding tree unit comprising the chroma block,
wherein the rule further specifies that when the color format of the chroma block is 4:2:2, the down-sampled collocated luma samples is derived without considering the value of the first syntax element,
wherein the rule further specifies that when the value of the first variable indicates that the chroma block locates at the boundary of the coding tree unit comprising the chroma block, the down-sampled collocated luma samples is derived using a same filter, regardless of the value of the first syntax element, for the chroma block having the color format of 4:2:0 and the chroma block having the color format of 4:2:2, and
wherein the rule further specifies that when the value of the first variable indicates that the chroma block does not locate at the boundary of the coding tree unit comprising the chroma block and the color format of the chroma block is 4:2:0, the down-sampled collocated luma samples are obtained using different filters in response to the first syntax element having different values.

### Claim 14 (depends on 12)

The non-transitory computer-readable storage medium of claim 12, wherein the rule further specifies that when the value of the first variable indicates that the chroma block does not locate at the boundary of the coding tree unit comprising the chroma block and the color format of the chroma block is 4:2:0, pSelDsY[i] is equal to (pY[SubWidthC*x][−3]+pY[SubWidthC*x−1][−2]+4*pY[SubWidthC*x][−2]+pY[SubWidthC*x+1][−2]+pY[SubWidthC*x][−1]+4)>>3 in response to the first syntax element having a value of 1, where pSelDsY[i] denotes a down-sampled collocated luma sample with an index of i, and pY[m][n] denotes a neighbouring luma sample with a location of (m, n), or
wherein the rule further specifies that when the value of the first variable indicates that the chroma block does not locate at the boundary of the coding tree unit comprising the chroma block and the color format of the chroma block is 4:2:0, pSelDsY[i] is equal to (pY[SubWidthC x−1][−1]+pY[SubWidthC*x−1][−2]+2*pY[SubWidthC*x][−1]+2*pY[SubWidthC*x][−2]+pY[SubWidthC*x+1][−1]+pY[SubWidthC*x+1][−2]+4)>>3 in response to the first syntax element having a value of 0, where pSelDsY[i] denotes a down-sampled collocated luma sample with an index of i, and pY[m][n] denotes the neighbouring luma sample with a location of (m, n).

### Claim 15 (depends on 13)

The non-transitory computer-readable recording medium of claim 13, wherein the rule further specifies that when the value of the first variable indicates that the chroma block does not locate at the boundary of the coding tree unit comprising the chroma block and the color format of the chroma block is 4:2:0, pSelDsY[i] is equal to (pY[SubWidthC*x][−3]+pY[SubWidthC*x−1][−2]+4*pY[SubWidthC*x][−2]+pY[SubWidthC*x+1][−2]+pY[SubWidthC*x][−1]+4)>>3 in response to the first syntax element having a value of 1, where pSelDsY[i] denotes a down-sampled collocated luma sample with an index of i, and pY[m][n] denotes a neighbouring luma sample with a location of (m, n), or
wherein the rule further specifies that when the value of the first variable indicates that the chroma block does not locate at the boundary of the coding tree unit comprising the chroma block and the color format of the chroma block is 4:2:0, pSelDsY[i] is equal to (pY[SubWidthC x−1][−1]+pY[SubWidthC*x−1][−2]+2*pY[SubWidthC*x][−1]+2*pY[SubWidthC*x][−2]+pY[SubWidthC*x+1][−1]+pY[SubWidthC*x+1][−2]+4)>>3 in response to the first syntax element having a value of 0, where pSelDsY[i] denotes a down-sampled collocated luma sample with an index of i, and pY[m][n] denotes the neighbouring luma sample with a location of (m, n).
