IP Library Granted Patent US 12,726,608
Granted Patent B2
US 12,726,608 · App. 18/521,166 · Granted Sep 1, 2026

Flipped templates for reconstruction-reordered intra block copy

Inventors: Vasily Alexeevich Rufitskiy (Vladimir, RU); Alexey Konstantinovich Filippov (Khimki, RU); Esmael Hejazi Dinan (McLean, VA)
Assignee: Comcast Cable Communications, LLC
H04N19/105H04N19/132H04N19/137H04N19/176
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 12,726,608
App. No.
18/521,166
Granted
Sep 1, 2026
Kind
B2
Abstract

A current block may be encoded/decoded based on a reference block flipped relative to the current block. An indication of whether a value of a parameter (e.g., a block vector difference) indicating the reference block matches a value of a predictor for the parameter (e.g., a block vector difference predictor) may be entropy encoded. The predictor may be selected from among a plurality of candidates based on costs associated with the plurality of candidates associated with candidate reference blocks. The cost of each candidate may be based on comparisons between a template of a current block and templates of the candidate reference blocks, where the templates of the candidate reference blocks have a shape flipped relative to that of the current block.

Claims (56)

1 . A method comprising:

determining, by a computing device, a plurality of candidate templates, for a plurality of reference block (RB) candidates associated with a plurality of block vector differences (BVD) candidates, that are flipped in a direction relative to a current template for a current block (CB) of content;

based on comparisons between the current template and each candidate template of the plurality of candidate templates, determining a plurality of template matching costs associated with the plurality of BVD candidates;

based on the plurality of template matching costs, selecting a BVD candidate, of the plurality of BVD candidates, as a BVD predictor;

decoding an indication of whether a value of a symbol of a BVD matches a value of a symbol of the BVD predictor; and

based on the indication and a value of the symbol of the BVD predictor, determining a value of the symbol of the BVD.

2 . The method of claim 1 , wherein each candidate template has a shape, of the current template, flipped in the direction.

3 . The method of claim 1 , wherein the comparisons between the current template and each candidate template are based on comparisons between samples in the candidate template and corresponding samples in the current template, wherein the samples in the candidate template have locations, relative to associated RB candidates, that are flipped relative to locations of the corresponding samples, relative to the CB.

4 . The method of claim 1 , wherein each candidate template, corresponding to a reference block candidate, comprises:

based on the direction being horizontal, a same quantity of columns of samples to the right of the RB candidate as a quantity of columns of samples, in the current template, to the left of the CB; or

based on the direction being vertical, a same quantity of rows of samples below the RB candidate as a quantity of rows of samples, in the current template, above the CB.

5 . The method of claim 3 , wherein the comparisons between the current template and each candidate template do not include comparisons between samples, in the candidate template that overlap with the current template, and corresponding samples in the current template.

6 . The method of claim 1 , further comprising:

decoding a codeword comprising a subset of symbols indicating the BVD, wherein the subset of symbols exclude the symbol of the BVD; and

determining the plurality of BVD candidates based on the codeword.

7 . The method of claim 1 , wherein the symbol of the BVD is one or more of:

a sign symbol of the BVD, or

a magnitude symbol of the BVD.

8 . The method of claim 1 , wherein the BVD candidate, of the plurality of BVD candidates, is selected as the BVD predictor based on being associated with a smallest template matching cost of the plurality of template matching costs.

9 . The method of claim 1 , further comprising:

determining a RB based on the BVD, wherein the CB or the RB is flipped in the direction relative to the other.

10 . A method comprising:

determining, by a computing device, a block vector difference (BVD) based on a difference between a block vector (BV), of a current block (CB) of content, and a block vector predictor (BVP);

determining a plurality of candidate templates, for a plurality of reference block (RB) candidates associated with a plurality of BVD candidates, that are flipped in a direction relative to a current template for the CB;

based on comparisons between the current template and each of the candidate templates of the RB candidates associated with the BVD candidates, determining a plurality of template matching costs for the plurality of BVD candidates;

based on the plurality of template matching costs, selecting a BVD candidate, of the BVD candidates, as a BVD predictor; and

encoding an indication of whether a value of a symbol of the BVD matches a value of a symbol of the BVD predictor.

11 . The method of claim 10 , wherein each candidate template has a shape, of the current template, flipped in the direction.

12 . The method of claim 10 , wherein the determining the plurality of template matching costs is based on, for each candidate template of the plurality of candidate templates, comparisons between samples in the candidate template and corresponding samples in the current template, wherein the samples in the candidate template are at locations, relative to a corresponding RB candidate, corresponding to locations, of the corresponding samples in the current template relative to the CB, flipped in the direction.

13 . The method of claim 10 , wherein the RB candidates are displaced relative to the CB by a sum of the respective BVD candidates and the BVP.

14 . The method of claim 10 , wherein:

the BVD candidates comprise a first BVD candidate and a second BVD candidate; and

a value of the symbol of the first BVD candidate is different from a value of the symbol of the second BVD candidate, wherein the first BVD candidate is selected as the BVD predictor.

15 . The method of claim 10 , wherein the encoding the indication further comprises arithmetically encoding the indication based on a probability model indicating:

a probability of a least probable symbol for the indication; and

a value of a most probable symbol for the indication.

16 . The method of claim 10 , wherein the RB candidates are located in a reference region corresponding to the direction.

17 . The method of claim 10 , wherein the CB is coded in a reconstruction-reordered intra block copy mode.

18 . A method comprising:

determining, by a computing device, a plurality of candidate templates, for a plurality of reference block (RB) candidates associated with a plurality of block vector differences (BVD) candidates, and based on a current template for a current block (CB) of content,

wherein each candidate template, of the plurality of candidate templates, has a shape, of the current template, flipped in a direction;

based on comparisons between the current template and each candidate template of the plurality of candidate templates, determining a plurality of template matching costs corresponding to the plurality of BVD candidates;

based on the plurality of template matching costs, selecting a BVD candidate, of the plurality of BVD candidates, as a BVD predictor;

decoding information based on a BVD and the BVD predictor; and

determining, based on the decoded information, a value of a symbol of the BVD.

19 . The method of claim 18 , wherein the decoded information comprises an indication of whether a value of a symbol of the BVD matches a value of a corresponding symbol of the BVD predictor.

20 . The method of claim 18 , wherein the current template comprises:

a first portion comprising a first quantity of rows of samples above the CB; and

a second portion comprising a second quantity of columns of samples to the left of the CB, and

wherein each candidate template, of the plurality of candidate templates, corresponding to a RB candidate of the plurality of RB candidates, comprises:

based on the direction being a horizontal direction:

a first portion comprising the first quantity of rows of samples above the RB candidate; and

a second portion comprising the second quantity of columns of samples to the right of the RB candidate, or

based on the direction being a vertical direction:

a first portion comprising the first quantity of rows of samples below the RB candidate; and

a second portion comprising the second quantity of columns of samples to the left of the RB candidate.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2025
From: RUFITSKIY, VASILY ALEXEEVICH; FILIPPOV, ALEXEY KONSTANTINOVICH; DINAN, ESMAEL HEJAZI
To: COMCAST CABLE COMMUNICATIONS, LLC
Reel/Frame 072256/0211 →
Continuity (2)
Provisional Application 63428393 · Nov 28, 2022
Related Publication 20240179302A1 · May 30, 2024
References Cited (44)
US 10327002B2 · Pang et al. · 2019 [cited by applicant]
US 10523948B2 · Xu et al. · 2019 [cited by applicant]
US 12356004B2 · Chen · 2025 [cited by examiner]
US 12388978B2 · Chen · 2025 [cited by examiner]
US 12445596B2 · Li · 2025 [cited by examiner]
US 20140219356A1 · Nishitani · 2014 [cited by examiner]
US 20150373370A1 · Rapaka et al. · 2015 [cited by applicant]
US 20170195677A1 · Ye et al. · 2017 [cited by applicant]
US 20220256189A1 · Lee · 2022 [cited by examiner]
US 20230217037A1 · Ruiz Coll · 2023 [cited by examiner]
US 20240022711A1 · Li · 2024 [cited by examiner]
US 20240022763A1 · Chen · 2024 [cited by examiner]
US 20240146931A1 · Park · 2024 [cited by examiner]
US 20240179301A1 · Filippov · 2024 [cited by examiner]
US 20240179302A1 · Rufitskiy · 2024 [cited by examiner]
US 20240187613A1 · Filippov · 2024 [cited by examiner]
US 20240223756A1 · Zhang · 2024 [cited by examiner]
US 20240223797A1 · Chen · 2024 [cited by examiner]
US 20240236299A1 · Xu · 2024 [cited by examiner]
US 20240236330A9 · Li et al. · 2024 [cited by applicant]
US 20240236367A1 · Chen · 2024 [cited by examiner]
US 20240244180A1 · Rufitskiy · 2024 [cited by examiner]
US 20240298025A1 · Zhang · 2024 [cited by examiner]
US 20240357080A1 · Zhang · 2024 [cited by examiner]
US 20240357097A1 · Chen · 2024 [cited by examiner]
US 20240364870A1 · Filippov · 2024 [cited by examiner]
US 20240364904A1 · Kang · 2024 [cited by examiner]
US 20240380907A1 · Xu · 2024 [cited by examiner]
US 20240414323A1 · Kang · 2024 [cited by examiner]
US 20250168348A1 · Chernyak · 2025 [cited by examiner]
US 20250193389A1 · Xiu · 2025 [cited by examiner]
US 20250247547A1 · Kim · 2025 [cited by examiner]
US 20250294142A1 · Wang · 2025 [cited by examiner]
US 20250324029A1 · Wang · 2025 [cited by examiner]
US 20250350778A1 · Filippov · 2025 [cited by examiner]
WO 2021056454A1 · 2021 [cited by applicant]
JVET-AA0070-v1, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29 27th Meeting, by teleconference, Jul. 13-22, 2022, Source: Bytedance Inc., Title: EE2-3.2: Reconstruction-Reordered IBC for scr… [cited by applicant]
JVET-AB2025, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29 28th Meeting, Mainz, DE, Oct. 20-28, 2022, Source: Editors, Title: Algorithm Description of Enhanced Compression Model 7 (ECM 7). [cited by applicant]
JVET-Z0159-v1, Joint Video Experts Team (JVET) of ITU-T SG16 WP3, 26th Meeting, by teleconference, Apr. 20-29, 2022, Source: Bytedance Inc., Title: Non-EE2: Reconstruction-Reordered IBC for screen content coding. [cited by applicant]
Jian Cao et al., “Intra Block Copy Mirror Mode for Screen Content Coding in Versatile Video Coding,” published Feb. 19, 2021, IEEE Access, vol. 9, 2021. [cited by applicant]
JVETAA0203-V1, Joint Video Experts Team of ITU-T SG16 WP3, 27th Meeting, by teleconference, Jul. 13-22, 2022, Source: Ofinno, LLC, Title: Crosscheck of JVET-AA0062 (EE2-3.3: Combination of EE2-3.1 and EE2-3.2). [cited by applicant]
JVET-AA2025, Joint Video Experts Team of ITU-T SG16 WP3, 27th Meeting, by teleconference, Jul. 13-22, 2022, Source: Editors, Title: Algorithm description of Enhanced Compression Model 6 (ECM 6). [cited by applicant]
Mar. 21, 2024—International Search Report—App. No. PCT/US2023/081361. [cited by applicant]
May 26, 2026—Japanese Office Action—JP App. 2025-531210. [cited by applicant]