CPC H04N 19/12 (2014.11) [H04N 19/159 (2014.11); H04N 19/167 (2014.11); H04N 19/176 (2014.11); H04N 19/18 (2014.11); H04N 19/46 (2014.11); H04N 19/61 (2014.11)] | 33 Claims |
1. A method for encoding a picture into a data stream using block-based prediction and block-based residual coding, the method comprising:
determining a set of transform candidates for a current residual block out of a set of transforms based on a height and a width of the current residual block and positions of significant transform coefficients, the determined set including a primary transform, the set of transforms including a plurality of multi-stage transforms and the primary transform, each of the multi-stage transforms including the primary transform and a respective non-separable secondary transform applied to primary transform coefficients resulting in respective secondary transform coefficients;
wherein determining the set of transform candidates includes:
determining whether at least one transform coefficient outside a sub-group of transform coefficient positions is significant;
in response to a determination that no transform coefficient outside the sub-group is significant, including the plurality of multi-stage transforms in the determined set; and
in response to a determination that at least one transform coefficient outside the sub-group is significant, omitting the plurality of multi-stage transforms from the determined set;
selecting a transform out of the determined set of transform candidates;
encoding a prediction residual for the current residual block using the selected transform;
selectively signaling the selected transform in the data stream,
wherein selectively signaling the selected transform includes:
when the determined set of transform candidates includes the plurality of multi-stage transforms, signaling an index in the data stream; and
when the plurality of multi-stage transforms is excluded from the determined set of transform candidates, not signaling the index in the data stream.
|