IP Library Granted Patent US 10,992,941
Granted Patent B2
US 10,992,941 · App. 16/619,074 · Granted Apr 27, 2021

Integrated image reshaping and video coding

Inventors: Taoran Lu (Santa Clara, CA); Fangjun Pu (Sunnyvale, CA); Peng Yin (Ithaca, NY); Tao Chen (Palo Alto, CA); Walter J. Husak (Simi Valley, CA)
Assignee: Dolby Laboratories Licensing Corporation
H04N19/159H04N19/124H04N19/182H04N19/45
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,992,941
App. No.
16/619,074
Granted
Apr 27, 2021
Kind
B2
Abstract

Given a sequence of images in a first codeword representation, methods, processes, and systems are presented for integrating reshaping into a next generation video codec for encoding and decoding the images, wherein reshaping allows part of the images to be coded in a second codeword representation which allows more efficient compression than using the first codeword representation. A variety of architectures are discussed, including: an out-of-loop reshaping architecture, an in-loop-for intra pictures only reshaping architecture, an in-loop architecture for prediction residuals, and a hybrid in-loop reshaping architecture. Syntax methods for signaling reshaping parameters, and image-encoding methods optimized with respect to reshaping are also presented.

Claims (53)

1. A method for coding of images with a processor, the method comprising:

accessing with a processor an input image in a first codeword representation;

generating a forward reshaping function mapping pixels of the input image to a second codeword representation, wherein the second codeword representation allows for a more efficient compression than the first codeword representation;

generating an inverse reshaping function based on the forward reshaping function, wherein the inverse reshaping function maps pixels from the second coding representation to the first coding representation;

for an input pixel region in the input image,

computing a predicted region based in pixel data in a reference frame buffer or previously coded spatial neighbors;

generating a reshaped residual region based on the input pixel region, the predicted region, and the forward reshaping function, wherein a reshaped residual sample in the reshaped residual region is derived at least in part from one of: (a) forward reshaping or (b) scaling a respective predicted sample in the predicted region;

generating a quantized residual region based on the reshaped residual region;

generating a dequantized residual region based on the quantized residual region;

generating a reconstructed pixel region based on the dequantized residual region, the predicted region, the forward reshaping function, and the inverse reshaping function; and

generating a reference pixel region to be stored on the reference frame buffer based on the reconstructed pixel region.

2. The method of claim 1 , further comprising:

generating a reshaper signaling bitstream which characterizes the forward reshaping function and/or the inverse reshaping function; and

multiplexing the reshaper bitstream with a coded bitstream generated based on the input image to generate an output bitstream.

3. The method of claim 1 , wherein generating the quantized residual region comprises:

applying a forward coding transform to the reshaped residual region to generate transformed data; and

applying a forward coding quantizer to the transformed data to generate quantized data.

4. The method of claim 3 , wherein generating the dequantized residual region comprises:

applying an inverse coding quantizer to the quantized data to generate inverse-quantized data; and

applying an inverse coding transform to the inverse-quantized data to generate the dequantized residual region.

5. The method of claim 1 , wherein generating the reference pixel region to be stored on the reference frame buffer comprises applying a loop filter to the reconstructed pixel region.

6. The method of claim 1 , wherein generating the reshaped residual region comprises computing:

Res_ r ( i )=Fwd(Orig_sample( i ))−Fwd(Pred_sample( i )),

where Fwd( ) denotes the forward reshaping function, Res_r(i) denotes a pixel of the reshaped residual region, Orig_sample(i) denotes a pixel of the input image region, and Pred_sample(i) denotes a pixel of the predicted region.

7. The method of claim 6 , wherein generating the reconstructed pixel region comprises computing:

Reco_sample( i )=Inv(Res_ d ( i )+Fwd(Pred_sample( i ))),

where Inv( ) denotes the inverse reshaping function, Reco_sample (i) denotes a pixel of the reconstructed pixel region and Res_d(i) denotes a pixel of the dequantized residual region representing a close approximation of the Res_r(i) pixel.

8. The method of claim 6 , wherein generating the reshaped residual region comprises computing:

Res_ r ( i )= a (Pred_sample( i ))*(Orig_sample( i )−Pred_sample( i )),

where a(Pred_sample(i)) denotes a scaling factor based on the value of Pred_sample(i).

9. The method of claim 8 , wherein generating the reconstructed pixel region comprises computing

Reco_sample( i )=Pred_sample( i )+(1/ a (Pred_sample( i )))*Res_ d ( i ).

10. A method for decoding with a processor a coded bitstream to generate an output image in a first codeword representation, the method comprising:

receiving a coded image partially coded in a second codeword representation, wherein the second codeword representation allows for a more efficient compression than the first codeword representation;

receiving reshaping information for the coded image;

generating based on the reshaping information a forward reshaping function mapping pixels from the first codeword representation to the second codeword representation;

generating based on the reshaping information an inverse reshaping function, wherein the inverse reshaping function maps pixels from the second codeword representation to the first codeword representation;

for a region of the coded image,

generating a decoded reshaped residual region;

generating a predicted region based on pixels in a reference pixel buffer or previously decoded spatial neighbors;

generating a reconstructed pixel region based on the decoded reshaped residual region, the predicted region, the forward reshaping function, and the inverse reshaping function wherein a reconstructed sample in the reconstructed pixel region is derived at least in part from forward reshaping a respective predicted sample in the predicted region;

generating an output pixel region for the output image based on the reconstructed pixel region; and

storing the output pixel region in the reference pixel buffer.

11. The method of claim 10 , wherein generating the reconstructed pixel region comprises computing:

Reco_sample( i )=Inv(Res_ d ( i )+Fwd(Pred_sample( i ))),

where Reco_sample (i) denotes a pixel of the reconstructed pixel region, Res_d(i) denotes a pixel of the decoded reshaped residual region, Inv( ) denotes the inverse reshaping function, Fwd( ) denotes the forward reshaping function, and Pred_sample(i) denotes a pixel of the predicted region.

12. The method of claim 10 wherein instead of generating a forward and an inverse reshaping function, the method comprises:

generating a reshaping scaling function based on the reshaping information;

and for the region of the coded image;

generating the reconstructed pixel region based on the decoded reshaped residual region, the predicted region, and the reshaping scaling function, wherein a reconstructed sample in the reconstructed pixel region is derived at least in part from scaling a respective decoded residual sample in the decoded reshaped residual region.

13. The method of claim 12 , wherein generating the reconstructed pixel region comprises computing:

Reco_sample( i )=Pred_sample( i )+(1/ a (Pred_sample( i )))*Res_ d ( i ),

where Reco_sample (i) denotes a pixel of reconstruction pixel region, Res_d(i) denotes a pixel of the decoded reshaped residual region, a( ) denotes the reshaping scaling function, and Pred_sample(i) denotes a pixel of the predicted region.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2020
From: LU, TAORAN; PU, FANGJUN; YIN, PENG; CHEN, TAO; HUSAK, WALTER J.
To: DOLBY LABORATORIES LICENSING CORPORATION
Reel/Frame 051605/0733 →
Continuity (6)
Provisional Application 62526577 · Jun 29, 2017
Provisional Application 62561561 · Sep 21, 2017
Provisional Application 62629313 · Feb 12, 2018
Provisional Application 62680710 · Jun 5, 2018
Provisional Application 62686738 · Jun 19, 2018
Related Publication 20200267392A1 · Aug 20, 2020
Cited By (1)
US 12,309,360