Back to results
US 9,794,569 B2Granted
Content adaptive partitioning for prediction and coding for next generation video
AssigneeIntel Corporation
InventorsAtul Puri, Neelesh N. Gokhale
Life of this patent
Estimating the term…
Abstract
Techniques related to content adaptive partitioning for prediction and coding are described.
Claims22
A computer-implemented method for partitioning in video coding, comprising:
- receiving a video frame;
- segmenting the video frame into a plurality of tiles, coding units or super-fragments;
- determining a chosen partitioning technique for at least one tile, coding unit, or super-fragment for prediction or coding partitioning, comprising:
- choosing the partitioning technique depending, at least in part, on the picture type of the video frame so that an I-picture is partitioned by using a k-d tree partitioning technique, and a P-picture is partitioned by using a bi-tree partitioning technique;
- wherein the chosen partitioning technique comprises a structured partitioning technique comprising at least one of the bi-tree partitioning technique, the k-d tree partitioning technique, a codebook representation of the bi-tree partitioning technique, or a codebook representation of the k-d tree partitioning technique;
- partitioning the at least one tile, coding unit, or super-fragment into a plurality of prediction partitions using the chosen partitioning technique;
- and
- coding partitioning indicators defining the location and direction of the cuts forming the partitions, and indicated by at least one symbol from a codebook and for individual partitions of the plurality of prediction partitions into a bitstream.
5 more elements
A video encoder comprising:
- an image buffer;
- and
- a graphics processing unit comprising prediction partitions generator logic circuitry, wherein the graphics processing unit is communicatively coupled to the image buffer and wherein the prediction partitions generator logic circuitry is configured to:
- receive a video frame;
- segment the video frame into a plurality of tiles, coding units, or super-fragments;
- determine a chosen prediction partitioning technique for at least one tile, coding unit, or super-fragment, comprising:
- choosing the partitioning technique depending, at least in part, on the expected amount of intra-blocks in the video frame so that a k-d tree partitioning technique is chosen when the expected amount of intra-blocks is greater than a threshold, and a bi-tree partitioning technique is chosen when the expected amount of intra-blocks is less than a threshold
- wherein the chosen partitioning technique comprises a structured partitioning technique comprising at least one of a codebook representation of the bi-tree partitioning technique, or a codebook representation of the k-d tree partitioning technique, wherein each codebook defines the location and direction of the cuts forming the partitions, and indicated by at least one symbol for individual partitions;
- and
- partition the at least one tile, coding unit, or super-fragment into a plurality of prediction partitions using the chosen partitioning technique.
7 more elements
A decoder system comprising:
- a video decoder configured to decode an encoded bitstream, wherein the video decoder is configured to:
- entropy decode the encoded bitstream to determine inter-prediction data associated with a first prediction partition, data defining the first prediction partition, intra-prediction data associated with a second prediction partition, and data defining the second prediction partition, wherein the first prediction partition comprises a bi-tree partition and the second prediction partition comprises a k-d tree partition prediction or coding partitioning,
- wherein the partitioning technique was chosen depending, at least in part, on the picture type of the video frame so that an I-picture is partitioned by using a k-d tree partitioning technique, and a P-picture is partitioned by using a bi-tree partitioning technique;
- perform motion compensation for the first prediction partition based at least in part on the inter-prediction data;
- perform intra-prediction for the second individual partition based at least in part on the intra-prediction data;
- generate a first decoded video frame based at least in part on the motion compensation;
- generate a second decoded video frame in the same video sequence as the first video frame and based at least in part on the intra-prediction;
- and
- transmit the first and second decoded video frames for presentment via a display device.
6 more elements
At least one non-transitory machine readable medium comprising a plurality of instructions that in response to being executed on a computing device, cause the computing device to provide video coding by:
- determining a chosen partitioning technique comprising determining the chosen partitioning technique based at least in part on a characteristic of the at least one tile, coding unit, or super-fragment, wherein the characteristic comprises an expected amount of intra-blocks in the at least one tile, coding unit, or super-fragment, wherein the chosen partitioning technique comprises the k-d tree partitioning technique when the expected amount of intra-blocks is greater than a threshold, and wherein the chosen partitioning technique comprises the bi-tree partitioning technique when the expected amount of intra-blocks is less than a threshold;
- receiving a prediction error data partition for transform coding;
- partitioning the prediction error data partition to generate a plurality of coding partitions of the prediction error data partition;
- performing a content adaptive transform on a first subset of the plurality of coding partitions comprising performing a parametric transform to allow locally optimal transform coding;
- and performing a fixed transform on a second subset of the plurality of coding partitions comprising performing more globally stable and lower overhead transform coding than the content adaptive transform;
- wherein the content adaptive or fixed transform is applied depending on partition size.
3 more elements
Dependencies are inferred from the claim text.