Recursive intra region partitioning
This disclosure relates generally to video coding and particularly to methods, devices, and systems for signaling prediction modes in recursively partitioned video frames. For example, a regional prediction mode flag syntax element may be introduced for indicating whether an entire coding region of a video frame signaled as being of a first predefined prediction mode is entirely coded in a second predefined prediction mode or not. The signaling schemes described in this disclosure facilitate reducing signaling overhead in video frames that employ a mix of different prediction modes.
1 . A method comprising:
receiving a bitstream of a video frame signaled as being coded in an inter prediction mode; and
only when the video frame is coded in the inter prediction mode:
determining, at a signaling level of a coding region within the video frame, whether the coding region is entirely coded in a first predefined prediction mode among a plurality of prediction modes including the inter prediction mode, an intra prediction mode, and an intra-inter prediction mode, the coding region being indicated as including at least two sub coding regions;
when the coding region is entirely coded in the first predefined prediction mode, skipping parsing the bitstream for purposes of further determining prediction modes in lower partition levels within the coding region; and
when the coding region is not entirely coded in the first predefined prediction mode, continuing parsing the bitstream to further determine prediction modes within the coding region by: for a first subset sub coding regions of the at least two sub coding regions determined as not being entirely coded in the first predefined prediction mode, recursively parsing the bitstream to further determine whether each of the first subset sub coding regions of the at least two sub coding regions is entirely coded in a second predefined prediction mode among the plurality of prediction modes.
2 . The method of claim 1 , wherein the first subset sub coding regions of the at least two sub coding regions is smaller than a full set of the at least two sub coding regions.
3 . The method of claim 1 , wherein determining whether the coding region is entirely coded in the first predefined prediction mode comprises one of:
determine a presence or absence of a regional prediction mode flag syntax element in the bitstream at the signaling level of the coding region as an indication of whether or not the coding region is entirely coded in the first predefined prediction mode, respectively; or
determining a value of the regional prediction mode flag syntax element in the bitstream at the signaling level of the coding region to determine whether the coding region is entirely coded in the first predefined prediction mode or not.
4 . The method of claim 3 , wherein when it is determined that the coding region is entirely coded in the first predefined prediction mode, determining that no regional prediction mode flag syntax element is included in the bitstream for any of the at least two sub coding regions and for any further partitions of the at least two sub coding regions.
5 . The method of claim 3 , wherein when it is determined that the coding region is not entirely coded in the first predefined prediction mode, the method comprises further determining at a signaling level of the at least two sub coding regions whether each of the at least two sub coding regions that is a non-leaf partition is entirely coded in the first predefined prediction mode.
6 . The method of claim 3 , wherein the regional prediction mode flag syntax element, when present at the signaling level of the coding region, is included in the bitstream after a partitioning mode syntax element for the coding region, the partitioning mode syntax element indicating that the coding region is further partitioned into the at least two sub coding regions.
7 . The method of claim 3 , wherein when it is determined that the coding region is not entirely coded in the first predefined prediction mode, and in response to determining that a sub coding region of the at least two sub coding regions is a leaf partition:
skipping parsing the bitstream for any regional prediction mode flag syntax element for the sub coding region; and
parsing the bitstream for a prediction mode indicator syntax element for the sub coding region to determine its prediction mode.
8 . The method of claim 1 , wherein a regional prediction mode flag syntax element indicative of whether the coding region is entirely coded in the second predefined prediction mode is signaled in the bitstream at the signaling level of the coding region only when a size of the coding region is smaller than or equal to a predefined size threshold.
9 . The method of claim 8 , where the size of the coding region comprises a width, a height, a maximum of width and height, or an area of the coding region measured by a number of samples.
10 . The method of claim 9 , wherein the size of the coding region comprises the area of the coding region and the predefined size threshold is 1024.
11 . The method of claim 1 , wherein a size of the coding region is used as a context for entropy coding a regional prediction mode flag syntax element in the bitstream at the signaling level of the coding region for indicating whether the coding region is entirely coded in the first predefined prediction mode.
12 . The method of claim 1 , further comprising determining, at a signaling level higher than the coding region, an regional prediction mode enablement syntax element that indicate whether to a signaling of a regional prediction mode flag syntax element for the coding region in the bitstream is enabled or not, the regional prediction mode flag syntax element being used to indicate whether the coding region is entirely coded in the first predefined prediction mode.
13 . The method of claim 1 , wherein:
the first predefined prediction mode comprises an intra prediction mode; and
when it is determined that the coding region is entirely coded in the intra prediction mode, the method further comprises determining partition modes for luma component and chroma components of the coding region separately, or determining partition modes for luma component and chroma components of the coding region separately in response to a predefined set of conditions.
14 . The method of claim 13 , wherein the partition modes for the luma component and the chroma components of the coding region are signaled separately in the bitstream.
15 . The method of claim 13 , wherein the predefined set of conditions comprise criteria relating to at least one of:
a size of the coding region being less than a predefined size threshold;
a quantization parameter value; and
information related to a temporal layer of the video frame.
16 . A video encoder comprising a memory for storing instructions and a processor configured to execute the instructions to:
determine that a video frame is coded in an inter prediction mode and include in a bitstream of the video frame a first signaling indicating that the video frame is inter predicted; and
only when the video frame is coded in the inter prediction mode:
determine, at a level of a coding region within the video frame, whether the coding region is entirely coded in a first predefined prediction mode among a plurality of prediction modes including the inter prediction mode, an intra prediction mode, and an intra-inter prediction mode, the coding region being indicated in the bitstream as including at least two sub coding regions, and include a second signaling in the bitstream indicating whether the coding region is entirely coded in the first predefined prediction mode;
when the coding region is entirely coded in the first predefined prediction mode, encoding the coding region with the first predefined prediction mode at all lower partition levels without including any further syntax elements in the bitstream for purposes of determining prediction modes of lower level partitions of the coding region; and
when the coding region is not entirely coded in the first predefined prediction mode, for at least a first subset sub coding regions of the at least two sub coding regions, further determine and include a third signaling in the bitstream to indicate whether each of the first subset sub coding regions of the at least two sub coding regions is to be entirely coded in a second predefined prediction mode among the plurality of prediction modes.
17 . The video encoder of claim 16 , wherein:
the first subset sub coding regions of the at least two sub coding regions is smaller than a full set of the at least two sub coding regions.
18 . A non-transitory computer-readable recording medium for storing a video bitstream of a video that is generated by a video encoding method, the video encoding method comprising:
determining that a video frame is coded in an inter prediction mode and include in the video bitstream of the video frame a first signaling indicating that the video frame is inter predicted; and
only when the video frame is coded in the inter prediction mode:
determining, at a level of a coding region within the video frame, whether the coding region is entirely coded in a first predefined prediction mode among a plurality of prediction modes including the inter prediction mode, an intra prediction mode, and an intra-inter prediction mode, the coding region being indicated in the video bitstream as including at least two sub coding regions, and including a second signaling in the video bitstream indicating whether the coding region is entirely coded in the first predefined prediction mode;
when the coding region is entirely coded in the first predefined prediction mode, encoding the coding region with the first predefined prediction mode at all lower partition levels without including any further syntax elements in the video bitstream for purposes of determining prediction modes of lower level partitions of the coding region; and
when the coding region is not entirely coded in the first predefined prediction mode, for at least a first subset sub coding regions of the at least two sub coding regions, further determining and including a third signaling in the video bitstream to indicate whether each of the first subset sub coding regions of the at least two sub coding regions is to be entirely coded in a second predefined prediction mode among the plurality of prediction modes.