Encoder-side options for intra block copy prediction mode for video and image coding
AssigneeMicrosoft Technology Licensing, LLC
InventorsBin Li, Jizheng Xu, Gary J. Sullivan
Life of this patent
Estimating the term…
Abstract
Innovations in encoder-side options for intra block copy (“BC”) prediction mode facilitate intra BC prediction that is more effective in terms of rate-distortion performance and/or computational efficiency of encoding. For example, some of the innovations relate to concurrently performing block vector (“BV”) estimation and making block splitting decisions for a block. Other innovations relate to selectively merging blocks into a larger block during BV estimation.
Claims20
In a computer system that implements a video encoder, a method comprising:
- receiving a current picture of a video sequence;
- encoding the current picture, thereby producing encoded data, the current picture including multiple blocks, wherein the encoding the current picture includes:
- for a first block, among the multiple blocks of the current picture:
- predicting sample values of the first block using inter-picture prediction with one or more motion vectors for the first block, wherein a reference index value indicates a reference picture to use in the inter-picture prediction for the first block;
- and
- determining residual values for the first block using the sample values of the first block and the predicted sample values of the first block;
- and
- for a second block, among the multiple blocks of the current picture:
- predicting sample values of the second block using intra block copy prediction with one or more block vectors for the second block, wherein the intra block copy prediction uses the current picture for reference;
- and
- determining residual values for the second block using the sample values of the second block and the predicted sample values of the second block;
- and
- reconstructing the current picture;
- and
- applying an in-loop deblock filter across at least some boundaries in the reconstructed current picture, including adjusting a filtering strength value for filtering across a boundary between the first block, which was encoded using inter-picture prediction, and the second block, which was encoded using intra block copy prediction, wherein the adjusting the filtering strength value includes:
- checking presence/absence of non-zero transform coefficients for the residual values for the first block and the residual values for the second block;
- determining that at least one non-zero transform coefficient is present for the residual values for the first block and/or the residual values for the second block;
- and
- assigning the filtering strength value to indicate moderate filtering based on the at least one non-zero transform coefficient being present for the residual values for the first block and/or the residual values for the second block;
- and
- outputting the encoded data as part of a bitstream.
A computer system comprising:
- a buffer configured to store encoded data, in a bitstream, for a current picture of a video sequence, the current picture including multiple blocks;
- and
- a video decoder configured to decode the encoded data by performing operations to reconstruct the current picture and apply an in-loop deblock filter across at least some boundaries in the reconstructed current picture, wherein the operations include:
- for a first block, among the multiple blocks of the current picture:
- predicting sample values of the first block using inter-picture prediction with one or more motion vectors for the first block, wherein a reference index value indicates a reference picture to use in the inter-picture prediction for the first block;
- and
- combining the predicted sample values of the first block and residual values, if any, for the first block;
- and
- for a second block, among the multiple blocks of the current picture:
- predicting sample values of the second block using intra block copy prediction with one or more block vectors for the second block, wherein the intra block copy prediction uses the current picture for reference;
- and
- combining the predicted sample values of the second block and residual values, if any, for the second block;
- and
- as part of the applying the in-loop deblock filter, adjusting a filtering strength value for filtering across a boundary between the first block, which was decoded using inter-picture prediction, and the second block, which was decoded using intra block copy prediction, wherein the adjusting the filtering strength value includes:
- checking presence/absence of non-zero transform coefficients for the residual values for the first block and the residual values for the second block;
- determining that at least one non-zero transform coefficient is present for the residual values for the first block and/or the residual values for the second block;
- and
- assigning the filtering strength value to indicate moderate filtering based on the at least one non-zero transform coefficient being present for the residual values for the first block and/or the residual values for the second block.
One or more non-transitory computer-readable media having stored thereon encoded data, in a bitstream, for a current picture of a video sequence, the current picture including multiple blocks, wherein the encoded data is organized to facilitate decoding, with a computer-implemented video decoder, by operations to reconstruct the current picture and apply an in-loop deblock filter across at least some boundaries in the reconstructed current picture, the operations including:
- for a first block, among the multiple blocks of the current picture:
- predicting sample values of the first block using inter-picture prediction with one or more motion vectors for the first block, wherein a reference index value indicates a reference picture to use in the inter-picture prediction for the first block;
- and
- combining the predicted sample values of the first block and residual values, if any, for the first block;
- and
- for a second block, among the multiple blocks of the current picture:
- predicting sample values of the second block using intra block copy prediction with one or more block vectors for the second block, wherein the intra block copy prediction uses the current picture for reference;
- and
- combining the predicted sample values of the second block and residual values, if any, for the second block;
- and
- as part of the applying the in-loop deblock filter, adjusting a filtering strength value for filtering across a boundary between the first block, which was decoded using inter-picture prediction, and the second block, which was decoded using intra block copy prediction, wherein the adjusting the filtering strength value includes:
- checking presence/absence of non-zero transform coefficients for the residual values for the first block and the residual values for the second block;
- determining that at least one non-zero transform coefficient is present for the residual values for the first block and/or the residual values for the second block;
- and
- assigning the filtering strength value to indicate moderate filtering based on the at least one non-zero transform coefficient being present for the residual values for the first block and/or the residual values for the second block.
Dependencies are inferred from the claim text.