Abstract:
A Scalable Video Coding (SVC) process is provided for scalable video coding that takes into account color gamut primaries along with spatial resolution. The process provides for re-sampling using video color data obtained from an encoder or decoder process of a base layer (BL) in a multi-layer system to enable improved encoding and decoding in an enhancement layer (EL) or higher layers taking into account color conversion between layers. Examples of applicable SVC include MPEG-4 Advanced Video Coding (AVC) and High Efficiency Video Coding (HEVC). With the SVC process, video data expressed in one color gamut space can be used for prediction in encoding with a possibly different color space, and accommodation for different spatial resolution and bit-depth can be made as well.

Description:
CROSS REFERENCE TO RELATED APPLICATION 
       [0001]    This application claims priority under 35 U.S.C. §119(e) from earlier filed U.S. Provisional Application Ser. No. 61/955,773 filed on Mar. 19, 2014 and incorporated herein by reference in its entirety. 
     
    
     BACKGROUND 
       [0002]    1. Technical Field 
         [0003]    The present invention relates to the process of using a two layer Scalable Video Coding (SVC) scheme for encoding and decoding of video sequences derived from the same source with differences in resolution. More specifically, it relates to arranging, prediction and reconstruction of video data obtained from an encoder or decoder process during scalable coding. Examples of scalable encoder or decoder processes include MPEG-4 Advanced Video Coding (AVC) and High Efficiency Video Coding (HEVC) that can be labeled Scalable HEVC (SHVC). 
         [0004]    2. Related Art 
         [0005]    An example of a scalable video coding system using two layers where color tone mapping can be applied is shown in  FIG. 1 . In the system of  FIG. 1 , one of the two layers is the Base Layer (BL) where a BL video is encoded in an Encoder E 0 , labeled  100 , and decoded in a decoder D 0 , labeled  102 , to produce a base layer video output BL out. The BL video is typically at a lower quality than the Enhancement Layer (EL) that receives an input y from the Full Resolution (FR) layer. The EL includes an encoder E 1 , labeled  104 , for encoding the FR video, as well as a decoder D 1 , labeled  106 . In encoding in encoder E 1   104  of the full resolution video, cross-layer (CL) information from the BL encoder  100  is used to produce enhancement layer (EL) information. The corresponding EL bitstream of the full resolution layer is then decoded in decoder D 1   106  using the CL information from decoder D 0   102  of the BL to output full resolution video, FR out. By using CL information in a scalable video coding system, the encoded information can be transmitted more efficiently in the EL than if the FR was encoded independently without the CL information. An example of SVC coding that can use two layers shown in  FIG. 1  includes video coding using AVC and HEVC. 
         [0006]    In spatial scalability, the BL is typically at a lower spatial resolution than Full Resolution (FR), as illustrated in  FIG. 1  with a downsampling conversion process is applied from FR to BL.  FIG. 1  shows block  108  with a down-arrow r illustrating a resolution reduction from the FR to the BL to illustrate that the BL can be created by a downsampling of the FR layer data. Overall, the down arrow of block  108  illustrates that for scalability, the base layer BL is typically at a lower spatial resolution than the full resolution FR layer. It is worth noting that the multilayer methods described apply when there are more than two layers. 
         [0007]    The CL information from the BL later can be used after upsampling to enhance the coding of the FR video in the EL. In the system of  FIG. 1  in combination with an upsampler of  FIG. 2 , the CL information includes pixel information derived from the encoding and decoding process of the BL. Because the BL pictures are at a different spatial resolution than the FR pictures, a BL picture needs to be upsampled (or re-sampled) back to the FR picture resolution in order to generate a suitable prediction for the FR picture. 
       SUMMARY 
       [0008]    Embodiments of the present invention provide systems for SVC that account for color gamut conversion between layers as well as spatial resolution conversion in some embodiments. The process provides for re-sampling using video color data obtained from an encoder or decoder process of a base layer (BL) in a multi-layer system to enable improved encoding and decoding in an enhancement layer (EL) or higher layers taking into account color conversion between layers. For example, with the reconstructed data, video data expressed in a lower resolution in one color gamut space can be used to predict a higher resolution video in another color gamut space and can also account for a different bit-depth. 
         [0009]    In one further embodiment, a different color mapping is applied to different regions of a video frame. The mapping to different frame regions can be done by at least one of the following procedures: (a) signaling linear or non-linear 3DLUT color mapping parameters with an adaptive quad-tree structure; (b) signaling mapping parameters in the slice or tile headers to create the same spatial freedom for correcting the color tones; (c) signaling to reuse collocated partitioning and color mapping parameters from previous frames; and (d) using the adaptive quad-tree partitioning to adaptively signal filter parameters in the case that spatial scalability is also applied. 
         [0010]    In a further embodiment, both color tone mapping from a base to a target color gamut and spatial scaling are separately applied in an order where one is applied first and then the other. In one embodiment when the color gamut scaling is applied for a tone mapping function in an encoder side, the tone mapping function occurs after spatial scaling. Then the reverse order of spatial scaling applied first and then tone mapping applied occurs at a decoder side. 
         [0011]    In a further embodiment, the tone mapping is applied as a function mapping from a vector of three color values in one color gamut space to a corresponding vector of three color values in a different gamut space. The mapping can also map to values in the same color space. The mapping at the encoder is then applied on a three-color-component grid that is different than a grid a Base Layer (BL) is on. In this embodiment, a relative location of luma and chroma samples in vertical and horizontal dimensions are signaled to a decoder to enable the decoder to adjust the sample locations to reverse the one used for the tone mapping in a forward direction. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0012]    Further details of the present invention are explained with the help of the attached drawings in which: 
           [0013]      FIG. 1  is a block diagram of components in a scalable video coding system with two layers; 
           [0014]      FIG. 2  illustrates an upsampling process that can be used to convert the base layer data to the full resolution layer data for  FIG. 1 ; 
           [0015]      FIG. 3  shows the downsampler of  FIG. 1  that also allows for color mapping; 
           [0016]      FIG. 4  shows the upsampler of  FIG. 2  that also allows for color mapping; 
           [0017]      FIG. 5  shows a block diagram of components for implementing the upsampling process of  FIG. 4  according to embodiment of the present invention; 
           [0018]      FIG. 6  shows a process for one embodiment of the present invention where during up-sampling spatial resolution conversion is applied first and then the color mapping changes to the color gamut space are applied; and 
           [0019]      FIG. 7  shows an alternative to  FIG. 6 , where the color mapping will be done first and then spatial up-sampling takes place afterward. 
       
    
    
     DETAILED DESCRIPTION 
     Color Tone Mapping Overview 
       [0020]    To properly display a captured picture or video on different displays, in embodiments of the present invention a color mapping is applied to map the video display content from one color space to another, or within a same color space. For this process, in its most common form, color tones from a set of primary color values in one layer for a pixel are mapped in the picture to a different set of color values for another layer, referred to as a target color gamut. The mapping is applied so that the color values for the second layer are suitable for presentation of the content on displays conforming to the target color gamut. The sections below describe features of a Scalable Video Coding (SVC) process that provides for such color tone mapping. 
       I. Scalability Process Accounting for Color Gamut and Bit-depth 
       [0021]    In some embodiments of the present invention, the same capture content needs to be displayed on different displays with a different color gamut specification and possibly with a different bit-per sample and possibly with a different resolution. The process of color mapping takes a triplet sample from one color gamut space and maps it to the corresponding sample in the same spatial location of the other color gamut space. This process can be non-linear and content or region dependent. The process on downsampling that considers color and spatial conversion from the FR to the BL layer is illustrated in  FIG. 3  that can be applied to block  108  of  FIG. 1 . 
         [0022]    The process of upsampling which involves different color gamut spaces and resolutions from BL to EL are shown in  FIG. 4  that can be used in block  200  of  FIG. 2 . The process of  FIG. 4  can be applied at both the encoder and decoder side. For upsampling shown in  FIG. 4 , the data at resolution x is derived from the encoding and decoding process at the BL. A BL picture is processed by a combination of color mapping and upsampling in any known order to generate a y′ output as shown in  FIG. 4  that can be used as a basis for prediction of the original EL input y. 
         [0023]      FIG. 5  shows a more detailed block diagram for implementing the upsampling process of  FIG. 4  for embodiments of the present invention. The upsampling or re-sampling process can be determined to minimize an error E (e.g. mean-squared error) between the upsampled data y′ and the full resolution data y. The system of  FIG. 5  includes a select input samples module  500  that samples an input video signal. The system further includes a select filter and/or color mapping module  502  to select a filter or map from the subsequent filter and/or re-map samples module  504  to upsample the selected input samples from module  500 . 
         [0024]    In module  500 , a set of input samples in a video signal x is first selected. In general, the samples can be a two-dimensional subset of samples in x, and a two-dimensional filter or two dimensional mapping structure can be applied to the samples, depending on the set of input samples. The module  502  receives the data samples in x from module  500  and identifies an appropriate filter or map function in module  504  to direct the samples toward. 
         [0025]    For the case where separate filters are used, a filter h[n; m] is applied along the rows and columns to the selected samples to produce an output value of y′, or in this case y′[m] for each of the columns. Typically, this can be implemented with a set of M filters h, where for the output value y′[m] at output index m, the filter h[n; m mod M] is chosen and is applied to the corresponding input samples x of the rows. The filters h[n; p] where p=m mod M generally correspond to filters with M different phase offsets, for example with phase offsets of p/M, where p=0, 1, . . . , M−1. The total output of the filtering process using the selected filter h[n;m] on the selected input samples produces output value y′. 
         [0026]    In addition to filtering, a color mapping calculation may be applied to convert to a different or the same color space. This mapping operation can be performed to minimize an error cost.  FIG. 5  shows that both the upsampling and color processing operations may be performed in the same prediction process using either filtering or mapping for color conversion. 
         [0027]    The modules in  FIG. 3 ,  4  or  5  can include one or more processors and memory devices that enable the functions described to be accomplished. The memory is configured to store code that when executed by the processor causes the module to function as described to process video signals. The memory can also store data to enable the functions described to be accomplished. In addition to the modules of  FIGS. 3-5 , other components of  FIG. 1  can include such processor and memory components. 
       II. Color Mapping Enhancements 
       [0028]    The following sections describe further features that can be applied in embodiments of the present invention for SVC that better account for color and spatial conversion. 
       A. Signaling the Order of Spatial Scaling and Color Mapping 
       [0029]    In cases that both spatial scaling and color gamut scaling are required, the order in which those processes are done at the encoder can be varied. Since the down-sampling and tone mapping are usually highly non-linear and non-reversible operations, it is proposed in some embodiments to signal the order by which the decoder should reconstruct the prediction for higher resolution at a different color gamut and spatial scaling. 
         [0030]    An example of combined spatial and color gamut scalability is from 1080p BT.709 for BL to 4K BT.2020 for EL. In this case the encoder can have the option of going from 4K BT.2020 to 4K BT.709 first and then down-sample the 4K BT.709 to 1080p BT.709. In another example the down-sampling takes place first to generate 1080p BT.2020 and then the color mapping takes place to create 1080p BT.709 from 1080p BT2020. 
         [0031]    In a further embodiment, a flag in the bitstream would indicate, in a normative manner, the order in which BL reconstructed samples will be processed to generate the EL prediction samples. For example in one case shown in  FIG. 6 , the up-sampling  600  would take place first and then the color mapping  602  occurs to change to the color gamut space. In another example shown in  FIG. 7 , the color mapping  602  will be done first and then spatial up-sampling  600  takes place. The decision on the order of these two processes should be indicated by the encoder in order to minimize some measure of error (e.g. distortion) or cost (e.g. a combination of rate and distortion). 
         [0032]    If a video sequence should be processed to have a desired color gamut at a resolution different than the resolution and color gamut in which the video is captured, then it is proposed to apply the tone mapping functions, in the encoder side, after the spatial scaling takes place. One advantage of this proposed order is to create less interference with the intended colors for the BL video. It is also expected that the proposed order will result in higher coding efficiency of the scalable compression, since the reverse tone mapping (at the decoder) would be more accurate if would be performed before up-sampling and thus avoiding the distortion caused by spatial scaling. 
       B. Signaling Color Mapping Parameters Based on Content in Regions of a Frame 
       [0033]    As color mapping is usually done to maintain the artistic intention of the scene, it is expected that different mappings can be applied to a different region of the frame. Therefore it is proposed to allow the encoder to signal different color mapping parameters for different locality in a given BL picture. 
         [0034]    In one example this can be done by signaling linear or non-linear (e.g. by a 3 dimensional look up table (3DLUT)) color mapping parameters with an adaptive quad-tree structure. In another example color mapping parameters can be signaled in the slice or tile headers to create the same spatial freedom for correcting the color tones. Due to similar artistic modifications in local content among consecutive frames, it is possible to signal to re-use collocated partitioning and color mapping parameters from previous frames. In addition, the adaptive quad-tree partitioning can be used to adaptively signal filter parameters in the case that spatial scalability is also applied. 
       C. Content Dependent Assignment of BL and EL to a Pair of Sequences With Different Color Gamuts 
       [0035]    If there are no other criteria, such as resolution or video quality preference, it is proposed to assign sequences with different color gamuts to BL and EL, such that a cost or error can be minimized. For example, the scalable encoding of two 1080p sequences, one in BT.2020 and the other in BT.709 color spaces can result in different overall bit-rate and average PSNR, if BT.709 be used as BL and BT.2020 is used as EL vs. using BT.2020 as BL and BT.709 as EL. 
       D. Proposed Signaling of Chroma-Luma Alignment for Color Mapping 
       [0036]    In most cases the tone mapping function is a mapping from a vector of three color values in one color gamut space to a corresponding vector of three color values in a different gamut space. There are cases where the color mapping at the encoder has been applied on a three-color-component grid which is different than the grid that the BL is on (e.g. due to color sub-sampling 4:4:4 vs 4:2:0 or spatial scalability). It is proposed that in these cases the relative location of luma and chroma samples (vertically and horizontally) should be signaled so the decoder can adjust the sample locations to reverse the one used for forward tone mapping. 
         [0037]    Although the present invention has been described above with particularity, this was merely to teach one of ordinary skill in the art how to make and use the invention. Many additional modifications will fall within the scope of the invention as that scope is defined by the following claims.