# US 2025/0220171 A1 · Classifying Samples for Multi-Model Reference Filtering

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

- Number: US 2025/0220171 A1
- Document ID: US20250220171A1
- Status: Published application
- Kind: A1
- Application number: 19/002,160
- Filed: 2024-12-26
- Published: 2025-07-03
- Earliest claimed: 2023-12-27
- Applicants: Ofinno, LLC
- Inventors: Alexey Konstantinovich Filippov; Vasily Alexeevich Rufitskiy; Esmael Hejazi Dinan
- Web page: https://patentgrep.com/patent/US20250220171A1

## CPC

- H04N 19/117: Filters, e.g. for pre-processing or post-processing (sub-band filter banks H04N19/635)
- 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/176: the region being a block, e.g. a macroblock
- 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/82: involving filtering within a prediction loop
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A video coder (encoder or decoder) classifies, based on a first threshold, first samples neighboring a reference block into a first and a second group. The coder classifies, based on a second threshold, second samples corresponding to the first samples and neighboring a current block into the first and second groups. A first filter is determined based on first sample pairs of samples, of the first samples, classified in the first group and corresponding samples, of the second samples, classified in the first group. A second filter is determined based on second sample pairs of samples, of the first samples, classified in the second group and corresponding samples, of the second samples, classified in the second group. The current block is coded based on a prediction block determined by applying at least the first and second filters to the reference block.

## Claims

### Claim 1

A method comprising:
classifying, based on a first threshold, first samples neighboring a reference block into at least a first group and a second group;
classifying, based on a second threshold, second samples corresponding to the first samples and neighboring a current block into at least the first group and the second group;
determining a first filter based on first sample pairs of samples, of the first samples, classified in the first group and corresponding samples, of the second samples, classified in the first group;
determining a second filter based on second sample pairs of samples, of the first samples, classified in the second group and corresponding samples, of the second samples, classified in the second group;
determining a prediction block based on applying at least the first and second filters to the reference block; and
coding the current block based on the prediction block.

### Claim 2 (depends on 1)

The method of claim 1, wherein:
the first sample pairs exclude first non-matching sample pairs of samples, of the first samples, classified in the first group and corresponding samples, of the second samples, classified in the second group; and
the second sample pairs exclude second non-matching sample pairs of samples, of the first samples, classified in the second group and corresponding samples, of the second samples, classified in the first group.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
adjusting an initial first threshold to determine the first threshold that reduces a number of the first and second non-matching sample pairs.

### Claim 4 (depends on 1)

The method of claim 1, wherein:
the first threshold is determined based on:
an average of intensity values of the first samples; or
an average of a minimum intensity value of the first samples and a maximum intensity value of the first samples; and
the second threshold is determined based on:
an average of intensity values of the second samples; or
an average of a minimum intensity value of the second samples and a maximum intensity value of the second samples.

### Claim 5 (depends on 1)

The method of claim 1, wherein:
the first threshold is determined to result in:
a minimum intra-class intensity variance when the first threshold is applied to the first samples; or
a maximum inter-class intensity variance when the first threshold is applied to the first samples; and
the second threshold is determined to result in:
a minimum intra-class intensity variance when the second threshold is applied to the second samples; or
a maximum inter-class intensity variance when the second threshold is applied to the second samples.

### Claim 6 (depends on 1)

The method of claim 1, wherein the determining the prediction block comprises:
applying the first filter to a first portion of the reference block to generate a first portion of the prediction block; and
applying the second filter to a second portion of the reference block to generate a second portion of the prediction block.

### Claim 7 (depends on 6)

The method of claim 6, wherein the first portion of the reference block and the second portion of the reference block are determined based on classifying samples of the reference block according to a reference block threshold that is:
the second threshold;
an average value of intensity values of the samples in the reference block; or
an average value of a minimum intensity value of samples in the reference block and a maximum intensity value of samples in the reference block.

### Claim 8 (depends on 6)

The method of claim 6, wherein the first portion of the reference block and the second portion of the reference block are determined based on a reference block threshold that results in:
a minimum intra-class intensity variance when the reference block threshold is applied to samples in the reference block; or
a maximum inter-class intensity variance when the reference block threshold is applied to samples in the reference block.

### Claim 9

A device comprising one or more processors and memory storing instructions that, when executed by the one or more processors, cause the device to:
classify, based on a first threshold, first samples neighboring a reference block into at least a first group and a second group;
classify, based on a second threshold, second samples corresponding to the first samples and neighboring a current block into at least the first group and the second group;
determine a first filter based on first sample pairs of samples, of the first samples, classified in the first group and corresponding samples, of the second samples, classified in the first group;
determine a second filter based on second sample pairs of samples, of the first samples, classified in the second group and corresponding samples, of the second samples, classified in the second group;
determine a prediction block based on applying at least the first and second filters to the reference block; and
code the current block based on the prediction block.

### Claim 10 (depends on 9)

The device of claim 9, wherein:
the first sample pairs exclude first non-matching sample pairs of samples, of the first samples, classified in the first group and corresponding samples, of the second samples, classified in the second group; and
the second sample pairs exclude second non-matching sample pairs of samples, of the first samples, classified in the second group and corresponding samples, of the second samples, classified in the first group.

### Claim 11 (depends on 9)

The device of claim 9, wherein:
the first threshold is determined based on:
an average of intensity values of the first samples; or
an average of a minimum intensity value of the first samples and a maximum intensity value of the first samples; and
the second threshold is determined based on:
an average of intensity values of the second samples; or
an average of a minimum intensity value of the second samples and a maximum intensity value of the second samples.

### Claim 12 (depends on 9)

The device of claim 9, wherein:
the first threshold is determined to result in:
a minimum intra-class intensity variance when the first threshold is applied to the first samples; or
a maximum inter-class intensity variance when the first threshold is applied to the first samples; and
the second threshold is determined to result in:
a minimum intra-class intensity variance when the second threshold is applied to the second samples; or
a maximum inter-class intensity variance when the second threshold is applied to the second samples.

### Claim 13 (depends on 9)

The device of claim 9, wherein to determine the prediction block, the device is further caused to:
apply the first filter to a first portion of the reference block to generate a first portion of the prediction block; and
apply the second filter to a second portion of the reference block to generate a second portion of the prediction block.

### Claim 14 (depends on 13)

The device of claim 13, wherein the first portion of the reference block and the second portion of the reference block are determined based on classifying samples of the reference block according to a reference block threshold that is:
the second threshold;
an average value of intensity values of the samples in the reference block; or
an average value of a minimum intensity value of samples in the reference block and a maximum intensity value of samples in the reference block.

### Claim 15 (depends on 13)

The device of claim 13, wherein the first portion of the reference block and the second portion of the reference block are determined based on a reference block threshold that results in:
a minimum intra-class intensity variance when the reference block threshold is applied to samples in the reference block; or
a maximum inter-class intensity variance when the reference block threshold is applied to samples in the reference block.

### Claim 16

A non-transitory computer-readable medium comprising instructions that, when executed by one or more processors of a device, cause the device to:
classify, based on a first threshold, first samples neighboring a reference block into at least a first group and a second group;
classify, based on a second threshold, second samples corresponding to the first samples and neighboring a current block into at least the first group and the second group;
determine a first filter based on first sample pairs of samples, of the first samples, classified in the first group and corresponding samples, of the second samples, classified in the first group;
determine a second filter based on second sample pairs of samples, of the first samples, classified in the second group and corresponding samples, of the second samples, classified in the second group;
determine a prediction block based on applying at least the first and second filters to the reference block; and
code the current block based on the prediction block.

### Claim 17 (depends on 16)

The non-transitory computer-readable medium of claim 16, wherein:
the first sample pairs exclude first non-matching sample pairs of samples, of the first samples, classified in the first group and corresponding samples, of the second samples, classified in the second group; and
the second sample pairs exclude second non-matching sample pairs of samples, of the first samples, classified in the second group and corresponding samples, of the second samples, classified in the first group.

### Claim 18 (depends on 16)

The non-transitory computer-readable medium of claim 16, wherein:
the first threshold is determined based on:
an average of intensity values of the first samples; or
an average of a minimum intensity value of the first samples and a maximum intensity value of the first samples; and
the second threshold is determined based on:
an average of intensity values of the second samples; or
an average of a minimum intensity value of the second samples and a maximum intensity value of the second samples.

### Claim 19 (depends on 16)

The non-transitory computer-readable medium of claim 16, wherein:
the first threshold is determined to result in:
a minimum intra-class intensity variance when the first threshold is applied to the first samples; or
a maximum inter-class intensity variance when the first threshold is applied to the first samples; and
the second threshold is determined to result in:
a minimum intra-class intensity variance when the second threshold is applied to the second samples; or
a maximum inter-class intensity variance when the second threshold is applied to the second samples.

### Claim 20 (depends on 16)

The non-transitory computer-readable medium of claim 16, wherein to determine the prediction block, the device is further caused to:
apply the first filter to a first portion of the reference block to generate a first portion of the prediction block; and
apply the second filter to a second portion of the reference block to generate a second portion of the prediction block.
