In-loop block-based image reshaping in high dynamic range video coding
AssigneeDolby Laboratories Licensing Corporation
InventorGuan-Ming SU
Life of this patent
Estimating the term…
Abstract
Systems and methods are disclosed for in-loop, region-based, reshaping for the coding of high-dynamic range video. Using a high bit-depth buffer to store input data and previously decoded reference data, forward and backward, in-loop, reshaping functions allow video coding and decoding to be performed at a target bit depth lower than the input bit depth. Methods for the clustering of the reshaping functions to reduce data overhead are also presented.
Claims15
A method for in-loop converting image data between an input bit depth and a target bit depth in an encoder, the method comprising:
- accessing an input image in the input bit depth;
- dividing the input image into coding regions;
- for each coding region of the input image in the input bit depth:
- generating or selecting a forward reshaping function and a backward reshaping function for the coding region, wherein the forward reshaping function is configured to convert image data in the input bit depth to the target bit depth, wherein the backward reshaping function is configured to convert image data in the target bit depth to the input bit depth, and wherein the target bit depth is lower or equal to the input bit depth;
- accessing reference data in the input bit depth, the reference data being pixel data from a previously coded region;
- applying the forward reshaping function to the reference data and to pixel data of the coding region to generate second reference data and second coding region pixel data in the target bit depth;
- encoding with an encoder the second reference data and the second coding region pixel data to generate a coded bit stream in the target bit depth;
- generating, using the encoder, reconstructed data based on an in-loop decoding of the coded bit stream;
- and
- applying the backward reshaping function to the reconstructed data to generate future reference data in the input bit depth, the future reference data being stored in a frame buffer to be used as reference data in the coding of future coding regions.
A method for backward in-loop converting image data between a target bit depth and an output bit depth in a decoder, the method comprising:
- accessing a coded bitstream in the target bit depth;
- accessing data characterizing a forward reshaping function and/or a backward reshaping function for each coded region in the coded bitstream, wherein the forward reshaping function is configured to convert image data in the output bit depth to the target bit depth, wherein the backward reshaping function is configured to convert image data in the target bit depth to the output bit depth, and wherein the target bit depth is lower or equal to the output bit depth;
- for each coded region in the coded bitstream:
- assigning a forward reshaping function and a backward reshaping function for the coded region;
- accessing reference data in the output bit depth, wherein the output bit depth is larger or equal to the target bit depth, the reference data being pixel data from a previously decoded region;
- applying the forward reshaping function to the reference data to generate second reference data in the target bit depth;
- generating, using a decoder, decoded pixel data in the target bit depth for the coded region based on the coded bitstream data and the second reference data;
- and
- applying the backward reshaping function to the decoded pixel data to generate output data and future reference data in the output bit depth, the future reference data being stored in a frame buffer to be used as reference data in the decoding of future coded regions.
Dependencies are inferred from the claim text.