Application Number: AU 2026202168
Filtering Across the Seams in a Video Frame Three Flags That Decide Whether a Tile Boundary Gets Smoothed
Claim 1 is a method of decoding an image. It obtains a reconstructed picture of a current picture, determines whether to perform filtering on a boundary of a current division unit based on a predetermined flag, and performs filtering on that boundary in response to the determination. A wherein clause defines each of the division
View the Filtering Across the Seams in a Video Frame PDF
Download the PDF version of this Application Open to Public Inspection
This application claims a video decoding method that does one narrow thing: it decides whether the smoothing filter inside a codec is allowed to reach across the internal seams of a picture. Modern codecs cut a frame into sub-pictures, slices and tiles so the pieces can be decoded separately, and claim 1 makes the filtering of those piece boundaries a signalled choice governed by a picture-level flag, a per-unit flag, and a third flag belonging to the unit next door. It was filed by B1 Institute of Image Technology, Inc. of South Korea with Ki Baek Kim as sole inventor, and it is a divisional of Australian application 2020351524.
The Problem
A video frame is not decoded as one object. Before anything else happens, the picture is divided. The specification sets out the hierarchy it works with: a picture may be split into tiles, which are rectangular groups of coding tree blocks formed from one or more tile rows and columns; tiles may be split into bricks, which are rows or columns of blocks within a tile; a slice may contain one or more tiles or bricks, in either a raster-scan mode or a rectangular mode selected by a signalled flag; and a sub-picture contains one or more slices covering a rectangular area. The worked figures show the scale of the cutting. One example has 18 by 12 blocks arranged as 24 tiles and 9 slices. Another has 11 bricks, 4 tiles and 4 slices in a single picture.
The reason for all this dividing is stated plainly in one sentence of the specification: the division unit may be supported for purposes such as parallel processing and partial decoding. If each unit is coded without looking at its neighbours, a decoder can hand each one to a different core, and a streaming client can fetch and decode only the region a viewer is actually looking at, which is how viewport-dependent 360 degree video delivery works. The specification goes further and describes a flag, subpic_treated_as_pic_flag, that makes a sub-picture behave as an independent picture for purposes such as reference picture lists in inter prediction.
Independence has a cost, and it appears at the seams. The specification puts it directly: one of the reasons for filtering between division units is to reduce deterioration between division units caused by individual encoding and decoding between them. Two tiles coded in isolation will have made different decisions about quantisation and prediction, and where they meet, the pixels do not agree. That mismatch is visible as a straight line running through the picture, an ordinary compression artefact made worse by the fact that it sits in exactly the same place on every frame.
The obvious fix is to run the in-loop filters over the seam. The specification names the three in this family, applied in order: a deblocking filter, then a sample adaptive offset, then an adaptive loop filter. But a filter that smooths across a boundary has to read pixels from both sides of it, and reading across the boundary is precisely what the division was meant to prevent. The specification treats the two questions as separate and both as adjustable. It describes division units of type A, where cross-reference is allowed and boundary filtering is performed; type B, where both are prohibited; type C, where cross-reference is prohibited but filtering is still performed; and types D and E, where one or both are decided by flag information. Filtering across a division unit boundary is not a default, it is a trade, and the codec has to be told which way to make it.
What This Invention Does
Claim 1 is a method of decoding an image. It obtains a reconstructed picture of a current picture, determines whether to perform filtering on a boundary of a current division unit based on a predetermined flag, and performs filtering on that boundary in response to the determination. A wherein clause defines each of the division units as including at least one of a sub-picture, a slice, or a tile. That much is the frame. The invention is in the clauses that follow.
The flag is not one flag. Claim 1 requires at least one of a first flag indicating whether filtering is performed on the boundaries of the division units within the current picture, or a second flag indicating whether filtering is performed on the boundary of the current division unit. It then adds a requirement that the claim itself calls out as additional: whether to perform filtering on the boundary of the current division unit is determined by further considering a third flag indicating whether filtering is performed on a boundary of a neighbouring division unit adjacent to the current one.
The last two clauses set the logic. When the first flag is a first value, it is restricted so that filtering is not performed on the boundaries of the division units within the current picture. When the first flag is a second value, that restriction is not imposed, which the specification is careful to say means filtering may be performed or may not be performed. And the second flag is decoded only when the restriction is not imposed according to the first flag. That is a conditional parse, not just a conditional behaviour: if the picture-level flag forbids boundary filtering outright, the per-unit flag is never read from the bitstream at all, and costs nothing.
The neighbour clause is the part worth slowing down on. The specification explains what a neighbour means in this context: for a vertical boundary, the division unit to the left or right; for a horizontal boundary, the unit above or below. Claim 2 turns that into a dependent limitation. The problem it addresses is what happens when two adjacent units disagree. The specification works through the case where the flag for unit X is 1 and the flag for unit Y is 0, and offers both resolutions. In one, filtering may be performed on the shared boundary or may be allowed, so that even where the flag for the current division unit is 0, if the flag for the left division unit is 1, filtering may be performed on the left boundary of the current block. In the other, the same disagreement resolves the opposite way and filtering is not performed or not allowed. The specification’s stated reason for taking the second route is blunt: applying filtering only to the boundary of one of the division regions may not be effective in removing image quality deterioration.
The specification also names the syntax elements it has in mind, one per type of division unit. They are loop_filter_across_subpic_enabled_flag for sub-pictures, loop_filter_across_slices_enabled_flag for slices, loop_filter_across_tiles_enabled_flag for tiles, and loop_filter_across_bricks_enabled_flag for bricks. It then abbreviates all four to loop_filter_across_enabled_flag for the rest of the description, and says any subset of the four may be supported, with some explicit and others derived implicitly from the ones that are. Other described variants signal direction rather than a single value, with separate flags for the right and bottom boundaries of each unit, or attach the flag to a boundary line rather than to a unit, indexed across the whole picture.
Claim 3 is where the filtering itself is specified, and it maps onto the deblocking method the description works through. It requires specifying a block boundary for deblocking filtering, deriving a decision value for that boundary, determining a filter type based on the decision value, and filtering accordingly. The description fills in the numbers. The reconstructed picture is partitioned onto an N by M sample grid, with N and M set to 4 for a luminance component and 8 for a chrominance component. A decision variable dSam is derived for the first and fourth pixel lines either side of the edge, using pixel value linearity and gradient measures over three or six pixels, against thresholds derived from the quantisation parameter and a boundary strength value. Boundary strength is set to 2 when at least one of the two blocks is intra coded, and to 1 when at least one contains a non-zero transform coefficient or when the blocks use different inter prediction modes, with a fixed block vector threshold of 4, 8 or 16. If both dSam values are 1 the decision value is 3 and the long filter is used; otherwise it is 1 or 2 and a short or middle filter is used. The filtering region for the long filter runs 8, 10, 12, 14 or more pixels wide, and can be split unevenly, 5 pixels each side or 3 and 7 or 7 and 3, so the filter may be applied asymmetrically about the edge.
Claim 4 is the encoder mirror of claim 1 and claim 7 covers a non-transitory computer-readable storage medium storing a bitstream generated by that encoding method, which is the standard way of reaching a stored or transmitted file rather than a machine.
Key Features
- Boundary filtering treated as a signalled decision. Rather than always smoothing internal seams or never smoothing them, claim 1 makes the choice explicit in the bitstream, applied to the boundary of a sub-picture, slice or tile.
- A picture-level flag that restricts rather than commands. When the first flag takes its first value, no filtering is performed on any division unit boundary in the picture, and the specification describes that as treating every division unit boundary the same way as the boundary of the picture itself.
- A second flag that is only parsed when it can matter. The per-unit flag is decoded only if the picture-level flag has not already imposed the restriction, so a picture that has switched boundary filtering off entirely carries no per-unit signalling overhead.
- A third flag belonging to the neighbouring unit. The operative limitation of this claim is that the decision for the current unit’s boundary further considers the flag of the unit on the other side, which resolves the case where two adjacent units disagree about whether their shared edge should be filtered.
- Neighbour position derived from boundary orientation. Claim 2 defines the neighbour as the unit left or right for a vertical boundary and above or below for a horizontal one, so the same flag structure works in both directions without extra signalling.
- Deblocking with a length chosen per edge. Claim 3 pulls in the deblocking method described in the body, where a decision value computed from pixel linearity and gradient selects between long, middle and short filters covering filtering regions of 8 to 14 or more pixels.
Who Is Behind It
The applicant is B1 Institute of Image Technology, Inc., a South Korean company whose published portfolio is video coding and almost nothing else, with Ki Baek Kim named as inventor on nearly all of it. He is the sole inventor here. The shape of that portfolio, a large number of codec filings attached to one named engineer and no product line, is characteristic of a research and licensing operation rather than a manufacturer.
The specification states the chain in full in its incorporation by reference paragraph. AU 2026202168 is a divisional of Australian application 2020351524, which is the Australian national phase of PCT/KR2020/012252 filed on 10 September 2020, which claims the benefit of Korean patent application 10-2019-0115073 filed on 18 September 2019. The priority country is South Korea and the priority date is 18 September 2019.
That matters because this application is not from the same family as the four B1 filings already published from the same journal issue. Those, covering intra sub-partitions, residual signalling, the inverse transform and quantisation, all descend from Australian application 2019247240 and a Korean priority of 1 April 2018. This one is a separate lineage with a separate priority a year and a half later, and it sits at a completely different layer of the codec. The earlier four are about how a block is predicted and how its error is coded. This one never touches a prediction. It operates after reconstruction, on the picture as a whole, and its subject is the geometry of the partitioning rather than the arithmetic of the compression.
Why It Matters
The syntax element names in this specification are not invented. loop_filter_across_subpic_enabled_flag, loop_filter_across_slices_enabled_flag and loop_filter_across_tiles_enabled_flag are the names used in H.266/VVC, the standard that was in draft at the ITU and ISO when this family’s Korean priority application was filed in September 2019 and that was published in 2020. Filing into a standard while it is being written is ordinary practice for a codec licensing business, and the vocabulary of the specification makes no attempt to disguise what it is aimed at.
Against that background, the interesting question is what claim 1 adds to a mechanism that already existed in draft form. The answer is the third flag. A per-unit enable flag on its own leaves an obvious gap: the boundary between two units is one boundary, not two, and if the units disagree about it the codec has to break the tie somehow. Claim 1 requires that the tie-break exists and that it looks at the neighbour’s flag, and claim 2 requires that which neighbour to look at follows from whether the edge is vertical or horizontal. The specification declines to fix which way the tie breaks, describing both the permissive resolution and the restrictive one, which is a broadening move at drafting time and a point an examiner may well push back on.
The practical stakes are ordinary rather than dramatic. Sub-picture partitioning is what makes it possible to stream a high resolution immersive video and decode only the part in front of the viewer, and to splice independently coded regions together without re-encoding them. Every one of those uses depends on the pieces staying independent, and every one of them produces a picture with internal seams that a viewer can see. Whether the filter is permitted to cross a given seam is a decision with a real cost on both sides, and a bitstream that cannot express the decision per boundary has to apply the same answer everywhere. The value of a claim like this one is not in a new filter. It is in owning the signalling that lets an encoder make the choice edge by edge.
Related Concepts
- Versatile Video Coding – the H.266 standard whose sub-picture, slice and tile partitioning and loop filter flags this specification is written against.
- Coding tree unit – the block unit that tiles, bricks and slices are assembled from in the division scheme described here.
- Deblocking filter – the in-loop filter whose application to a division unit boundary claim 3 specifies in detail.
- Compression artifact – the visible defect, in this case a seam along a tile or slice edge, that boundary filtering exists to reduce.
- Parallel computing – the reason pictures are divided into independently decodable units in the first place, and the thing cross-boundary filtering puts at risk.
AU 2026202168 was published in the Australian Official Journal of Patents on 9 April 2026 and is open for public inspection. Patent applications represent inventions that are sought to be protected and do not necessarily reflect commercially available products.
Related Patents Open to Public Inspections
See related Patents open to public inspection.
The Step Where a Video Actually Loses Detail
Turning a Prediction Error Into Frequencies
The Residual Arrives as Bits
Disclaimer
The information presented in this article is provided for general informational and illustrative purposes only.
Content on this page may be derived from publicly available intellectual property records, including patent documentation and related materials. While reasonable care is taken in compiling and summarising this information, ATMOSS does not guarantee the accuracy, completeness, currency, or reliability of any content presented.
This article is not a substitute for reviewing the original source documents. Patent applications, specifications, claims, and related records may contain detailed technical, legal, and contextual information that is not fully represented in this summary.
ATMOSS does not provide legal, technical, or commercial advice. Users should not rely on this content for decision-making purposes.
For authoritative and up-to-date information, users should refer directly to the official records available via IP Australia and other relevant intellectual property databases. Links to these official sources are provided where applicable.
ATMOSS accepts no liability for any loss, damage, or consequences arising from the use of, or reliance on, the information contained in this article.
