IP Library Granted Patent US 12677008
Granted Patent B2
US 12677008 · App. 17/979,025 · Granted Jul 7, 2026

Multi-feature sample offset filtering system for video coding and decoding

Inventors: Yixin Du (Milpitas, CA); Alexandros Tourapis (Los Gatos, CA); Yunfei Zheng (Santa Clara, CA); Jun Xin (San Jose, CA); Alican Nalci (Cupertino, CA); Mei T. Guo (San Jose, CA); Yeqing Wu (Cupertino, CA); Hsi-Jung Wu (San Jose, CA)
Assignee: APPLE INC.
H04N19/82H04N19/132H04N19/176H04N19/186
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12677008
App. No.
17/979,025
Granted
Jul 7, 2026
Kind
B2
Abstract

A filtering system for video coders and decoders is disclosed that includes a feature detector having an input for samples reconstructed from coded video data representing a color component of source video, and having an output for data identifying a feature recognized therefrom, an offset calculator having an input for the feature identification data from the feature detector and having an output for a filter offset, and a filter having an input for the filter offset from the offset calculator and an input for the reconstructed samples, and having an output for filtered samples. The filtering system is expected to improve operations of video coder/decoder filtering systems by selecting filtering offsets from analysis of recovered video data in a common color plane as the samples that will be filtered.

Claims (47)

1 . A filtering system, comprising:

a feature detector having an input for samples reconstructed from coded video data representing a color component of source video, and having an output for data identifying a feature recognized therefrom,

an index calculator having an input for the reconstructed samples and having an output comprising offset indices to be input to an offset calculator,

the offset calculator storing offset values to be indexed by the offset indices, having a first input for the feature identification data from the feature detector and a second input for the offset indices from the index calculator, and having an output for a filter offset, the output from the offset calculator based in part on the offset indices from the index calculator, and

a filter having an input for the filter offset from the offset calculator and an input for the reconstructed samples, and having an output for filtered samples.

2 . The filtering system of claim 1 , wherein the feature identification data from the feature detector represents a classification of a reconstructed sample into one of a plurality of sample intensity bands.

3 . The filtering system of claim 2 , wherein the sample intensity bands are defined by signaling provided by a video encoder that generated the coded video data.

4 . The filtering system of claim 2 , wherein the classification of the reconstructed sample is derived from an intensity value of a co-located sample reconstructed from coded video data representing another color component of the source video.

5 . The filtering system of claim 1 , wherein the feature identification data from the feature detector represents a classification of a block of reconstructed samples into one of a plurality of sample intensity bands.

6 . The filtering system of claim 1 , wherein the feature identification data from the feature detector represents a directionality classification of reconstructed samples.

7 . The filtering system of claim 1 , wherein the feature identification data from the feature detector represents a texture classification of reconstructed samples.

8 . The filtering system of claim 1 , wherein the feature identification data is derived from a prediction mode of a block of coded video data from which the reconstructed sample were reconstructed.

9 . The filtering system of claim 1 , wherein the feature identification data is derived from a coding parameters of a block of coded video data from which the reconstructed sample were reconstructed.

10 . The filtering system of claim 1 , wherein

the reconstructed samples are received from an output of a second filter of a video coding system, and

the feature identification data is derived from a filtering parameter of the second filter.

11 . The filtering system of claim 1 , wherein the offset calculator is a multi-way lookup table having a way corresponding to each of a number of candidate feature identifiers.

12 . The filtering system of claim 11 , wherein at least one entry of the lookup table is provided by a video encoder that generated the coded video data.

13 . The filtering system of claim 1 , wherein the offset calculator is a computer that calculates the filter offset according to a parametric model, and parameters of the parametric model are provided by a video encoder that generated the coded video data.

14 . A method, comprising:

detecting, from input samples reconstructed from coded video data representing a color component of source video and from output identifiers of detected features, a predetermined feature of the input samples,

estimating a filter offset based on the predetermined feature detected from the input samples and from the output identifiers,

generating offset indices based on at least the input samples, the offset indices referencing a stored filter offset value,

looking up the stored filter offset value in response to the offset indices and an identifier of the detected feature, and

filtering the input samples reconstructed from the coded video data according to the filter offset value.

15 . The method of claim 14 , wherein the feature is detected from an intensity of the input samples.

16 . The method of claim 14 , wherein the feature is detected from a classification of a reconstructed sample into one of a plurality of sample intensity bands.

17 . The method of claim 14 , wherein the feature is detected from a classification of a block of reconstructed samples into one of a plurality of sample intensity bands.

18 . The method of claim 14 , wherein the feature is detected from an intensity value of a co-located sample reconstructed from coded video data representing another color component of the source video.

19 . The method of claim 14 , wherein the feature is detected from a directionality classification of reconstructed samples.

20 . The method of claim 14 , wherein the feature is detected from a texture classification of reconstructed samples.

21 . The method of claim 14 , wherein the feature is detected from a prediction mode of a block of coded video data from which the reconstructed sample were reconstructed.

22 . The method of claim 14 , wherein the feature is detected from a coding parameter of a block of coded video data from which the reconstructed sample were reconstructed.

23 . A non-transitory computer readable medium having program instructions stored thereon that, when executed by a processing device, cause the processing device to perform a method, comprising:

detecting, from input samples reconstructed from coded video data representing a color component of source video and from output identifiers of detected features, a predetermined feature of the input samples,

estimating a filter offset based on the predetermined feature detected from the input samples and from the output identifiers,

generating offset indices based on at least the input samples, the offset indices referencing a stored filter offset value,

looking up the stored filter offset value in response to the offset indices and an identifier of the detected feature, and

filtering the input samples reconstructed from the coded video data according to the looked up filter offset value.

24 . The non-transitory computer readable medium of claim 23 , wherein the feature is detected from an intensity of the input samples.

25 . The non-transitory computer readable medium of claim 23 , wherein the feature is detected from a classification of a reconstructed sample into one of a plurality of sample intensity bands.

26 . The non-transitory computer readable medium of claim 23 , wherein the feature is detected from a classification of a block of reconstructed samples into one of a plurality of sample intensity bands.

27 . The non-transitory computer readable medium of claim 23 , wherein the feature is detected from an intensity value of a co-located sample reconstructed from coded video data representing another color component of the source video.

28 . The non-transitory computer readable medium of claim 23 , wherein the feature is detected from a directionality classification of reconstructed samples.

29 . The non-transitory computer readable medium of claim 23 , wherein the feature is detected from a texture classification of reconstructed samples.

30 . The non-transitory computer readable medium of claim 23 , wherein the feature is detected from a prediction mode of a block of coded video data from which the reconstructed sample were reconstructed.

31 . The non-transitory computer readable medium of claim 23 , wherein the feature is detected from a coding parameter of a block of coded video data from which the reconstructed sample were reconstructed.