WO2014162849A1 - 画像処理装置及び画像処理方法 - Google Patents

画像処理装置及び画像処理方法 Download PDF

Info

Publication number
WO2014162849A1
WO2014162849A1 PCT/JP2014/056935 JP2014056935W WO2014162849A1 WO 2014162849 A1 WO2014162849 A1 WO 2014162849A1 JP 2014056935 W JP2014056935 W JP 2014056935W WO 2014162849 A1 WO2014162849 A1 WO 2014162849A1
Authority
WO
WIPO (PCT)
Prior art keywords
prediction
image
unit
layer
parameter
Prior art date
Application number
PCT/JP2014/056935
Other languages
English (en)
French (fr)
Inventor
佐藤 数史
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to BR112014029917A priority Critical patent/BR112014029917A2/pt
Priority to RU2014148134A priority patent/RU2665308C2/ru
Priority to US14/397,565 priority patent/US9838716B2/en
Priority to CN201480001387.0A priority patent/CN104380739B/zh
Priority to MX2014014491A priority patent/MX344000B/es
Priority to JP2015509983A priority patent/JP6345650B2/ja
Priority to EP14778912.7A priority patent/EP2843951B1/en
Publication of WO2014162849A1 publication Critical patent/WO2014162849A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder

Definitions

  • the present disclosure relates to an image processing apparatus and an image processing method.
  • JVCVC Joint Collaboration Team-Video Coding
  • ISO / IEC ISO / IEC
  • HEVC High Efficiency Video Coding
  • HEVC provides not only single-layer coding but also scalable coding as well as existing image coding schemes such as MPEG2 and AVC (Advanced Video Coding).
  • HEVC scalable coding technology is also referred to as SHVC (Scalable HEVC) (see, for example, Non-Patent Document 2).
  • Scalable encoding generally refers to a technique for hierarchically encoding a layer that transmits a coarse image signal and a layer that transmits a fine image signal.
  • Typical attributes hierarchized in scalable coding are mainly the following three types. Spatial scalability: Spatial resolution or image size is layered. -Time scalability: Frame rate is layered. -SNR (Signal to Noise Ratio) scalability: SN ratio is hierarchized. In addition, bit depth scalability and chroma format scalability are also discussed, although not yet adopted by the standard.
  • Non-Patent Document 3 discusses color gamut scalability in which the color gamut is hierarchized. For example, in a high-definition (HD) television, an image size of 1920 ⁇ 1080 pixels is usually set, ITU-R BT. A color gamut of 709 and a bit depth of 8 bits are used. On the other hand, in ultra-high definition (UHD) television, an image size of 4000 ⁇ 2000 pixels or 8000 ⁇ 4000 pixels, ITU-R BT. It has been considered that a 2020 color gamut, a bit depth of 10 bits or 12 bits is used. In general, color gamut conversion requires a matrix operation on a three-dimensional pixel vector. However, Non-Patent Document 3 discloses BT.
  • HD high-definition
  • UHD ultra-high definition
  • Non-Patent Document 3 in the adaptive parameter mode in which high prediction accuracy can be achieved, the gain and offset for each color component are encoded for each picture, so the code amount increases. In the bit shift mode and the fixed parameter mode, no additional encoding parameter is generated, but the prediction accuracy is slightly inferior.
  • a decoding unit that decodes a difference from a past value of a prediction parameter used when predicting an image of a second layer having a color gamut different from that of the first layer from the image of the first layer And a prediction unit that predicts the second layer image from the first layer image using the prediction parameter calculated using the difference decoded by the decoding unit.
  • the image processing apparatus can typically be realized as an image decoding apparatus that decodes an image.
  • a difference from a past value of a prediction parameter used when predicting an image of a second layer having a color gamut different from that of the first layer from the image of the first layer is decoded. And predicting the second layer image from the first layer image using the prediction parameter calculated using the decoded difference is provided.
  • the prediction unit that predicts the image of the second layer from the image of the first layer referred to when decoding the image of the second layer having a color gamut different from that of the first layer
  • an encoding unit that encodes a difference from a past value of a prediction parameter used by the prediction unit.
  • the image processing apparatus can typically be realized as an image encoding apparatus that encodes an image.
  • the second layer image is predicted from the first layer image referred to when the second layer image having a color gamut different from that of the first layer is decoded. Encoding a difference from a past value of a prediction parameter used for predicting the image of the second layer is provided.
  • the technique according to the present disclosure can suppress an increase in code amount while achieving high prediction accuracy in color gamut scalability.
  • FIG. 10 is a second explanatory diagram for describing the syntax of a prediction parameter proposed by JCTVC-L0334. It is a block diagram which shows the schematic structure of the image coding apparatus which concerns on one Embodiment. It is a block diagram which shows the schematic structure of the image decoding apparatus which concerns on one Embodiment.
  • FIG. 5 is a block diagram illustrating an example of a configuration of an EL encoding unit illustrated in FIG. 4. It is a block diagram which shows an example of a structure of the color gamut estimation part shown in FIG. It is explanatory drawing for demonstrating an example of the syntax of the encoding parameter for color gamut prediction. It is explanatory drawing for demonstrating the parameter value used as the basis of the difference of a gain and an offset. It is explanatory drawing for demonstrating an example of the use of the encoding of the gain and offset for every slice. It is explanatory drawing for demonstrating the existing syntax of a weighted prediction related parameter. It is explanatory drawing for demonstrating the selective use of the prediction parameter according to the band to which a pixel value belongs.
  • FIG. 19 is an explanatory diagram for describing an example of syntax related to the technique described with reference to FIGS. 18A to 18C. It is a flowchart which shows an example of the schematic process flow at the time of the encoding which concerns on one Embodiment.
  • FIG. 6 is a block diagram illustrating an example of a configuration of an EL decoding unit illustrated in FIG. 5. It is a block diagram which shows an example of a structure of the color gamut prediction part shown in FIG. It is a flowchart which shows an example of the flow of the schematic process at the time of the decoding which concerns on one Embodiment. It is a flowchart which shows the 1st example of the flow of the color gamut prediction process in the decoding process of an enhancement layer. It is a flowchart which shows the 2nd example of the flow of the color gamut prediction process in the decoding process of an enhancement layer. It is a flowchart which shows the 3rd example of the flow of the color gamut prediction process in the decoding process of an enhancement layer.
  • scalable coding In scalable encoding, a plurality of layers each including a series of images are encoded.
  • the base layer is a layer that expresses the coarsest image that is encoded first.
  • the base layer coded stream may be decoded independently without decoding the other layer coded streams.
  • a layer other than the base layer is a layer called an enhancement layer (enhancement layer) that represents a finer image.
  • the enhancement layer encoded stream is encoded using information included in the base layer encoded stream. Accordingly, in order to reproduce the enhancement layer image, both the base layer and enhancement layer encoded streams are decoded.
  • the number of layers handled in scalable coding may be any number of two or more. When three or more layers are encoded, the lowest layer is the base layer, and the remaining layers are enhancement layers.
  • the higher enhancement layer encoded stream may be encoded and decoded using information contained in the lower enhancement layer or base layer encoded stream.
  • FIG. 1 shows three layers L1, L2 and L3 to be scalable encoded.
  • Layer L1 is a base layer
  • layers L2 and L3 are enhancement layers.
  • the ratio of the spatial resolution of the layer L2 to the layer L1 is 2: 1.
  • the ratio of the spatial resolution of layer L3 to layer L1 is 4: 1.
  • the resolution ratio here is only an example, and a non-integer resolution ratio such as 1.5: 1 may be used.
  • the block B1 of the layer L1 is a processing unit of the encoding process in the base layer picture.
  • the block B2 of the layer L2 is a processing unit of the encoding process in the enhancement layer picture that shows a scene common to the block B1.
  • Block B2 corresponds to block B1 of layer L1.
  • the block B3 of the layer L3 is a processing unit for encoding processing in a picture of a higher enhancement layer that shows a scene common to the blocks B1 and B2.
  • the block B3 corresponds to the block B1 of the layer L1 and the block B2 of the layer L2.
  • a decoded image (reconstructed image) of a base layer is used as a reference image for predicting a decoded image of an enhancement layer.
  • a base layer prediction error (residual) image is used as a reference image for predicting an enhancement layer prediction error image.
  • FIG. 709 and BT. 4 is an explanatory diagram for describing a color gamut expressed by 2020.
  • FIG. Referring to FIG. 2, there is shown a color gamut graph in which a three-dimensional color space is mapped to a two-dimensional plane using predetermined constraint conditions. The cross mark in the graph indicates the position where white is mapped. The broken line in the graph indicates BT.
  • Reference numeral 709 denotes a range of colors that can be expressed.
  • the solid line in the graph is BT.
  • the range of colors that 2020 can represent is shown.
  • the dotted lines in the graph indicate the range of colors that human vision can identify.
  • Non-Patent Document 3 proposes a simplified method for reducing the computational complexity and time required for color gamut conversion.
  • FIG. 3A is a table showing prediction modes for color gamut prediction proposed by Non-Patent Document 3.
  • the prediction mode number is any one of “0”, “1”, and “2”, that is, there are three types of prediction mode candidates.
  • the prediction mode number “0”, as shown in the following formulas (1) to (3), the BT. BT.709 pixel values (Y 709 , U 709 , V 709 ) to BT.
  • a pixel value of 2020 (Y 2020 , U 2020 , V 2020 ) is predicted.
  • Such a prediction mode is referred to as a bit shift mode in this specification.
  • six types of prediction parameters three gains and three offsets) are additionally encoded as prediction parameters.
  • FIG. 3B and 3C are explanatory diagrams for explaining the syntax of the prediction parameter proposed by Non-Patent Document 3.
  • FIG. “Pps_extension_flag” in the first line in FIG. 3B is a flag indicating whether or not PPS (Picture Parameter Set) includes an extended syntax for color gamut prediction.
  • “Color_pred_data ()” in the fifth line of FIG. 3B is a function of syntax for color gamut scalability, and its contents are shown in FIG. 3C.
  • “Color_prediction_model” in the first row in FIG. 3C is a parameter indicating the selected prediction mode, and takes one of the values “0”, “1”, and “2” illustrated in FIG. 3A.
  • the number of bits (“numFractionBits”) corresponding to the denominator of the gain in the third row is the numerator of the gain (“color_prediction_gain [ I] ”) is designated in the sixth row as the offset (“ color_prediction_offset [I] ”) for the I-th color component.
  • the adaptive parameter mode is a mode in which the highest prediction accuracy can be expected among the three prediction modes.
  • the prediction parameter described above is encoded for each picture in the adaptive parameter mode, the code amount increases. Therefore, in the embodiment described below, a mechanism for more efficiently encoding these prediction parameters in color gamut scalability in order to suppress an increase in code amount will be described.
  • FIG. 4 is a block diagram illustrating a schematic configuration of an image encoding device 10 according to an embodiment that supports scalable encoding.
  • the image encoding device 10 includes a base layer (BL) encoding unit 1a, an enhancement layer (EL) encoding unit 1b, a common memory 2, and a multiplexing unit 3.
  • BL base layer
  • EL enhancement layer
  • the BL encoding unit 1a encodes a base layer image and generates a base layer encoded stream.
  • the EL encoding unit 1b encodes the enhancement layer image, and generates an enhancement layer encoded stream.
  • the common memory 2 stores information commonly used between layers.
  • the multiplexing unit 3 multiplexes the encoded stream of the base layer generated by the BL encoding unit 1a and the encoded stream of one or more enhancement layers generated by the EL encoding unit 1b. Generate a multiplexed stream.
  • FIG. 5 is a block diagram illustrating a schematic configuration of an image decoding device 60 according to an embodiment that supports scalable coding.
  • the image decoding device 60 includes a demultiplexer 5, a base layer (BL) decoder 6 a, an enhancement layer (EL) decoder 6 b, and a common memory 7.
  • BL base layer
  • EL enhancement layer
  • the demultiplexing unit 5 demultiplexes the multi-layer multiplexed stream into a base layer encoded stream and one or more enhancement layer encoded streams.
  • the BL decoding unit 6a decodes a base layer image from the base layer encoded stream.
  • the EL decoding unit 6b decodes the enhancement layer image from the enhancement layer encoded stream.
  • the common memory 7 stores information commonly used between layers.
  • the configuration of the BL encoding unit 1a for encoding the base layer and the configuration of the EL encoding unit 1b for encoding the enhancement layer are similar to each other. . Some parameters and images generated or acquired by the BL encoder 1a can be buffered using the common memory 2 and reused by the EL encoder 1b. In the next section, the configuration of such an EL encoding unit 1b will be described in detail.
  • the configuration of the BL decoding unit 6a for decoding the base layer and the configuration of the EL decoding unit 6b for decoding the enhancement layer are similar to each other. Some parameters and images generated or acquired by the BL decoding unit 6a can be buffered using the common memory 7 and reused by the EL decoding unit 6b. Further, in the next section, the configuration of such an EL decoding unit 6b will be described in detail.
  • FIG. 6 is a block diagram illustrating an example of the configuration of the EL encoding unit 1b illustrated in FIG.
  • the EL encoding unit 1b includes a rearrangement buffer 11, a subtraction unit 13, an orthogonal transformation unit 14, a quantization unit 15, a lossless encoding unit 16, a storage buffer 17, a rate control unit 18, and an inverse quantization.
  • the rearrangement buffer 11 rearranges images included in a series of image data.
  • the rearrangement buffer 11 rearranges the images according to the GOP (Group of Pictures) structure related to the encoding process, and then subtracts the rearranged image data, the intra prediction unit 30, the inter prediction unit 35, and the color. To the region prediction unit 40.
  • GOP Group of Pictures
  • the subtraction unit 13 is supplied with image data input from the rearrangement buffer 11 and predicted image data input from the intra prediction unit 30 or the inter prediction unit 35 described later.
  • the subtraction unit 13 calculates prediction error data that is the difference between the image data input from the rearrangement buffer 11 and the prediction image data, and outputs the calculated prediction error data to the orthogonal transformation unit 14.
  • the orthogonal transform unit 14 performs orthogonal transform on the prediction error data input from the subtraction unit 13.
  • the orthogonal transformation performed by the orthogonal transformation part 14 may be discrete cosine transformation (Discrete Cosine Transform: DCT) or Karoonen-Labe transformation, for example.
  • DCT Discrete Cosine Transform
  • Karoonen-Labe transformation for example.
  • orthogonal transformation is performed for each block called TU (Transform Unit).
  • a TU is a block formed by dividing a CU (Coding Unit).
  • the orthogonal transform unit 14 outputs transform coefficient data acquired by the orthogonal transform process to the quantization unit 15.
  • the quantization unit 15 is supplied with transform coefficient data input from the orthogonal transform unit 14 and a rate control signal from the rate control unit 18 described later.
  • the quantization unit 15 quantizes the transform coefficient data in a quantization step determined according to the rate control signal.
  • the quantization unit 15 outputs the quantized transform coefficient data (hereinafter referred to as quantized data) to the lossless encoding unit 16 and the inverse quantization unit 21.
  • the lossless encoding unit 16 performs a lossless encoding process on the quantized data input from the quantization unit 15 to generate an enhancement layer encoded stream.
  • the lossless encoding unit 16 encodes various parameters referred to when decoding the encoded stream, and inserts the encoded parameters into the header area of the encoded stream.
  • the parameters encoded by the lossless encoding unit 16 may include information related to intra prediction and information related to inter prediction, which will be described later. Prediction parameters associated with color gamut prediction may also be encoded. Then, the lossless encoding unit 16 outputs the generated encoded stream to the accumulation buffer 17.
  • the accumulation buffer 17 temporarily accumulates the encoded stream input from the lossless encoding unit 16 using a storage medium such as a semiconductor memory. Then, the accumulation buffer 17 outputs the accumulated encoded stream to a transmission unit (not shown) (for example, a communication interface or a connection interface with a peripheral device) at a rate corresponding to the bandwidth of the transmission path.
  • a transmission unit for example, a communication interface or a connection interface with a peripheral device
  • the rate control unit 18 monitors the free capacity of the accumulation buffer 17. Then, the rate control unit 18 generates a rate control signal according to the free capacity of the accumulation buffer 17 and outputs the generated rate control signal to the quantization unit 15. For example, the rate control unit 18 generates a rate control signal for reducing the bit rate of the quantized data when the free capacity of the storage buffer 17 is small. For example, when the free capacity of the accumulation buffer 17 is sufficiently large, the rate control unit 18 generates a rate control signal for increasing the bit rate of the quantized data.
  • the inverse quantization unit 21, the inverse orthogonal transform unit 22, and the addition unit 23 constitute a local decoder.
  • the inverse quantization unit 21 performs the same quantization step as that used by the quantization unit 15 and inversely quantizes the enhancement layer quantization data to restore the transform coefficient data. Then, the inverse quantization unit 21 outputs the restored transform coefficient data to the inverse orthogonal transform unit 22.
  • the inverse orthogonal transform unit 22 restores the prediction error data by performing an inverse orthogonal transform process on the transform coefficient data input from the inverse quantization unit 21. Similar to the orthogonal transform, the inverse orthogonal transform is performed for each TU. Then, the inverse orthogonal transform unit 22 outputs the restored prediction error data to the addition unit 23.
  • the adding unit 23 adds decoded image error data (enhancement layer) by adding the restored prediction error data input from the inverse orthogonal transform unit 22 and the predicted image data input from the intra prediction unit 30 or the inter prediction unit 35. Of the reconstructed image). Then, the adder 23 outputs the generated decoded image data to the loop filter 24 and the frame memory 25.
  • the loop filter 24 includes a filter group for the purpose of improving the image quality.
  • the deblocking filter (DF) is a filter that reduces block distortion that occurs when an image is encoded.
  • a sample adaptive offset (SAO) filter is a filter that adds an adaptively determined offset value to each pixel value.
  • the adaptive loop filter (ALF) is a filter that minimizes an error between the image after SAO and the original image.
  • the loop filter 24 filters the decoded image data input from the adding unit 23 and outputs the decoded image data after filtering to the frame memory 25.
  • the frame memory 25 includes enhancement layer decoded image data input from the adder 23, enhancement layer filtered image data input from the loop filter 24, and base layer reference input from the color gamut prediction unit 40. Image data is stored using a storage medium.
  • the selector 26 reads out the decoded image data before filtering used for intra prediction from the frame memory 25 and supplies the read decoded image data to the intra prediction unit 30 as reference image data.
  • the selector 26 reads out the decoded image data after filtering used for inter prediction from the frame memory 25 and supplies the read out decoded image data to the inter prediction unit 35 as reference image data.
  • the selector 26 supplies the reference image data of the base layer to the intra prediction unit 30 or the inter prediction unit 35.
  • the selector 27 In the intra prediction mode, the selector 27 outputs predicted image data as a result of the intra prediction output from the intra prediction unit 30 to the subtraction unit 13 and outputs information related to the intra prediction to the lossless encoding unit 16. Further, in the inter prediction mode, the selector 27 outputs predicted image data as a result of the inter prediction output from the inter prediction unit 35 to the subtraction unit 13 and outputs information related to the inter prediction to the lossless encoding unit 16. .
  • the selector 27 switches between the intra prediction mode and the inter prediction mode according to the size of the cost function value.
  • the intra prediction unit 30 performs intra prediction processing for each HEVC PU (Prediction Unit) based on the original image data and decoded image data of the enhancement layer. For example, the intra prediction unit 30 evaluates the prediction result of each candidate mode in the prediction mode set using a predetermined cost function. Next, the intra prediction unit 30 selects the prediction mode with the smallest cost function value, that is, the prediction mode with the highest compression rate, as the optimum prediction mode. The intra prediction unit 30 generates enhancement layer predicted image data according to the optimal prediction mode.
  • the intra prediction unit 30 may include intra BL prediction, which is a type of inter layer prediction, in the prediction mode set in the enhancement layer.
  • intra BL prediction a collocated block in the base layer corresponding to a prediction target block in the enhancement layer is used as a reference block, and a prediction image is generated based on a decoded image of the reference block.
  • the intra prediction unit 30 may include intra residual prediction that is a kind of inter-layer prediction.
  • intra residual prediction a prediction error of an intra prediction is predicted based on a prediction error image of a reference block that is a collocated block in the base layer, and a prediction image in which the predicted prediction error is added is generated.
  • the intra prediction unit 30 outputs information related to intra prediction including prediction mode information representing the selected optimal prediction mode, cost function values, and predicted image data to the selector 27.
  • the inter prediction unit 35 performs inter prediction processing for each PU of HEVC based on the original image data and decoded image data of the enhancement layer. For example, the inter prediction unit 35 evaluates the prediction result of each candidate mode in the prediction mode set using a predetermined cost function. Next, the inter prediction unit 35 selects a prediction mode with the smallest cost function value, that is, a prediction mode with the highest compression rate, as the optimum prediction mode. Further, the inter prediction unit 35 generates enhancement layer predicted image data according to the optimal prediction mode.
  • the inter prediction unit 35 may include inter residual prediction, which is a type of inter layer prediction, in the prediction mode set in the enhancement layer.
  • a prediction error of inter prediction is predicted based on a prediction error image of a reference block that is a collocated block in the base layer, and a prediction image in which the predicted prediction error is added is generated.
  • the inter prediction unit 35 outputs information about the inter prediction including the prediction mode information representing the selected optimal prediction mode and the motion information, the cost function value, and the prediction image data to the selector 27.
  • the color gamut prediction unit 40 upsamples the base layer image (decoded image or prediction error image) buffered by the common memory 2 in accordance with the resolution ratio between the base layer and the enhancement layer. In addition, when the enhancement layer image has a color gamut different from that of the base layer image, the color gamut prediction unit 40 changes the color gamut of the up-sampled base layer image to the same color gamut as the enhancement layer image. Convert. In the present embodiment, the color gamut prediction unit 40 presupposes an independent linear relationship for each color component between the color gamuts of the base layer and the enhancement layer, and approximates the enhancement layer image from the base layer image. By predicting, the color gamut is converted.
  • the base layer image whose color gamut is converted by the color gamut prediction unit 40 is stored in the frame memory 25 and can be used as a reference image in the inter layer prediction by the intra prediction unit 30 or the inter prediction unit 35.
  • the color gamut prediction unit 40 generates some parameters used for color gamut prediction.
  • the parameter generated by the color gamut prediction unit 40 includes, for example, a prediction mode parameter indicating a prediction mode.
  • the parameters generated by the color gamut prediction unit 40 include prediction parameters for each color component, that is, gain and offset.
  • the color gamut prediction unit 40 further calculates a difference from the past value of the prediction parameter, and outputs the calculated difference to the lossless encoding unit 16.
  • the difference between the prediction mode parameter and the prediction parameter can be encoded by the lossless encoding unit 16.
  • FIG. 7 is a block diagram illustrating an example of the configuration of the color gamut prediction unit 40 illustrated in FIG. 6.
  • the color gamut prediction unit 40 includes an upsampling unit 41, a prediction mode setting unit 42, a parameter calculation unit 43, and a color gamut conversion unit 44.
  • the upsampling unit 41 upsamples the base layer image acquired from the common memory 2 in accordance with the resolution ratio between the base layer and the enhancement layer. More specifically, the upsampling unit 41 calculates an interpolation pixel value by filtering the base layer image with a predefined filter coefficient for each of the interpolation pixels that are sequentially scanned in accordance with the resolution ratio. Thereby, the spatial resolution of the image of the base layer used as the reference block is increased to a resolution equivalent to that of the enhancement layer.
  • the upsampling unit 41 outputs the image after upsampling to the parameter calculation unit 43 and the color gamut conversion unit 44.
  • the prediction mode setting unit 42 sets, in the color gamut prediction unit 40, a prediction mode that is predefined or dynamically selected from prediction mode candidates for color gamut prediction. Prediction mode candidates may include the bit shift mode, fixed parameter mode, and adaptive parameter mode described above.
  • the prediction mode setting unit 42 may set an optimal prediction mode for each picture.
  • the prediction mode setting unit 42 may set an optimal prediction mode for each slice. A picture may have one or more slices.
  • the prediction mode setting unit 42 may set a prediction mode for each sequence and maintain the same prediction mode across multiple pictures and multiple slices in one sequence.
  • the prediction mode setting unit 42 may evaluate encoding efficiency or prediction accuracy for each prediction mode candidate and select an optimal prediction mode.
  • the prediction mode setting unit 42 outputs a prediction mode parameter indicating the set prediction mode to the lossless encoding unit 16.
  • the parameter calculation unit 43 is used when the adaptive parameter mode is set by the prediction mode setting unit 42, or when the encoding efficiency or prediction accuracy of the adaptive parameter mode is evaluated by the prediction mode setting unit 42. Next, the prediction parameters to be used in the adaptive parameter mode are calculated.
  • the subscript i means each of the three types of color components.
  • Gain g i is the coefficient multiplied to the pixel values of the base layer.
  • the offset o i is a numerical value added to the product of the pixel value of the base layer and the gain g i .
  • the parameter calculation unit 43 for example, sets a gain and an offset that can bring the base layer image after upsampling input from the upsampling unit 41 closest to the original image input from the rearrangement buffer 11 with color components. Can be calculated for each.
  • the parameter calculation unit 43 calculates the difference from the past values of the gain and offset.
  • the past value here may be a value calculated for the previous picture, for example, when gain and offset are calculated for each picture.
  • the gain and offset are calculated for each slice, it may be a value calculated for a slice (co-located slice) at the same position in the previous picture.
  • the parameter calculation unit 43 can use the gain and offset values corresponding to the bit shift amount as the basis of the difference.
  • the parameter calculation unit 43 uses the fixed gain and offset values defined in advance as the basis of the difference when the fixed parameter mode is set to the previous picture or the slice at the same position of the previous picture. Can do.
  • the parameter calculation unit 43 outputs the calculated gain and offset difference to the lossless encoding unit 16.
  • the gain value may include a decimal value. Therefore, the prediction mode setting unit 42 may decompose the gain value into a denominator and a numerator, calculate a difference between the denominator and the numerator, and output the difference to the lossless encoding unit 16. Further, the prediction mode setting unit 42 may limit the value of the denominator of the gain to only an integer power of 2 in order to increase the encoding efficiency and reduce the calculation cost. In this case, the logarithm with the denominator value of 2 as the base may be used as the prediction parameter.
  • the color gamut conversion unit 44 determines the color gamut of the base layer image after upsampling input from the upsampling unit 41 according to the prediction mode set by the prediction mode setting unit 42 as an enhancement layer. Convert to a color gamut equivalent to the image of. For example, when the bit shift mode is set, the gamut conversion unit 44 moves the pixel value of the base layer after upsampling to the left by a predetermined bit shift amount n shift according to the equations (1) to (3). The predicted pixel value is calculated by shifting in the direction.
  • the bit shift amount n shift may be 2 or 4 in the case of conversion from an HD television image to a UHD television image, for example.
  • the color gamut conversion unit 44 multiplies the pixel value of the base layer after upsampling by a fixed gain according to the equations (4) to (6), and A predicted pixel value is calculated by adding a fixed offset.
  • the color gamut conversion unit 44 uses the gain and offset adaptively calculated by the parameter calculation unit 43 instead of the fixed gain and offset to predict the pixel. Calculate the value. Thereby, a reference image for inter-layer prediction is generated.
  • the color gamut conversion unit 44 stores the reference image for base layer prediction thus generated (the image of the base layer whose color gamut has been converted) in the frame memory 25.
  • the syntax shown in FIG. 8 may be included in the PPS, for example, or may be included in the slice header.
  • “Color_gamut_prediction_flag” in the first line of the syntax is a flag indicating whether the PPS or the slice header includes an extended syntax for color gamut prediction.
  • “Color_prediction_model” in the third row is a prediction mode parameter indicating the prediction mode set by the prediction mode setting unit 42. As described using FIG. 3A, when the prediction mode parameter is equal to “0”, the prediction mode is the bit shift mode. When the prediction mode parameter is equal to “1”, the prediction mode is a fixed parameter mode. When the prediction mode parameter is equal to “2”, the prediction mode is an adaptive parameter mode.
  • the prediction parameters after the fifth line are encoded when the prediction mode parameter indicates the adaptive parameter mode.
  • “Delta_luma_log2_gain_denom” in the tenth line is a difference from the past logarithm of the logarithm with the base 2 of the denominator value of the gain of the luminance component.
  • “Delta_luma_gain_color_gamut” in the eleventh row is a difference from the past value of the numerator value of the gain of the luminance component.
  • “Delta_luma_offset_color_gamut” in the twelfth row is a difference from the past value of the offset value of the luminance component.
  • “luma_gain_color_gamut_flag” in the fifth line indicates zero, the encoding of the difference between the prediction parameters of these luminance components may be omitted.
  • the past value of the prediction parameter can be used as it is in the latest picture or slice (that is, the difference is zero).
  • “Delta_chroma_log2_gain_denom” in the fifteenth row is a difference from the past logarithm of the logarithm with the base 2 of the denominator value of the gain of the color difference component.
  • Denominator 8 shows an example in which a common denominator is used for two color difference components, separate denominators may be used for the two color difference components, or the denominator of the luminance component gain and the color difference component may be used.
  • the gain denominator may be shared.
  • “Delta_chroma_offset_color_gamut [j]” in the 18th row is a difference from the past value of the offset value of the j-th color difference component.
  • the prediction mode parameter “color_prediction_model” is encoded for each PPS or slice header.
  • the prediction mode parameter is the adaptive parameter mode for the previous picture or the slice at the same position of the previous picture that is the basis of the difference. It was not always indicated.
  • the difference parameter prefixed with “delta_” in the syntax of FIG. 8 is changed from the latest value (gain or offset) of the prediction parameter to the bit shift amount.
  • the corresponding offset value may be zero.
  • the difference parameter in the syntax of FIG. 8 is changed from the latest value (gain or offset) of the prediction parameter to a fixed parameter value (gain g i_fixed or offset o i_fixed). ) Represents the difference calculated by subtracting.
  • the gain g i_fixed and the offset o i_fixed are not encoded but are stored in advance in the encoder and decoder.
  • the difference parameter in the syntax of FIG. 8 subtracts the previous parameter value (gain g i_prev or offset o i_prev ) from the latest value (gain or offset) of the prediction parameter.
  • FIG. 9 shows the basis of the difference between the gain and the offset explained here in a tabular form.
  • the basis for the difference may be zero or a fixed parameter value (gain g i_fixed or offset o i_fixed ).
  • the prediction mode parameter and the prediction parameter for color gamut prediction are encoded for each picture, Inserted into the PPS.
  • the base layer image IM B1 is divided into four tiles T B1 , T B2 , T B3, and T B4 .
  • the enhancement layer image IM E1 is divided into four tiles T E1 , T E2 , T E3 and T E4 .
  • the four tiles display images captured by different cameras.
  • the base layer image IM B1 may be a low resolution version of a composite video from cameras installed at four points
  • the enhancement layer image IM E1 may be a high resolution version of the same composite video.
  • the tile T E2 and the tile T E4 have BT. 2020, and other base layer and enhancement layer tiles have BT. 709 is used.
  • optimal color gamut prediction can be performed for each tile, and encoding efficiency can be improved. Can do.
  • FIG. 8 The syntax of prediction parameters for color gamut prediction illustrated in FIG. 8 is similar to the syntax of parameters related to weighted prediction introduced in HEVC. .
  • Weighted prediction is a technique introduced to improve the prediction accuracy of inter prediction for video to which effects such as fade-in and fade-out are applied.
  • FIG. 11 shows the syntax defined by Non-Patent Document 1 for the weighted prediction related parameters.
  • the “luma_log2_weight_denom” in the second row and the “delta_chroma_log2_weight_denom” in the fourth row in FIG. 11 are common to the L0 reference frame and the L1 reference frame that can be used in the weighted prediction for the denominator values of the luminance and chrominance component weights, respectively.
  • Lines 5 through 20 identify the remaining weighted prediction related parameters for the L0 reference frame.
  • Lines 21 to 38 specify the remaining weighted prediction related parameters for the L1 reference frame when bi-prediction is possible. The meaning of each parameter is described in Non-Patent Document 1.
  • Table 1 shows an example of mapping between the weighted prediction related parameters shown in FIG. 11 and the color gamut prediction parameters exemplified in FIG.
  • all the parameters other than the extended flag “color_gamut_prediction_flag” and the prediction mode parameter “color_prediction_model” among the parameters of the color gamut prediction illustrated in FIG. Can be mapped.
  • the role of each parameter may differ, for example, in that the value of the weighted prediction related parameter does not necessarily mean a difference from the past value, the types of parameters mapped to each other are the same. Since there is only one reference frame (base layer image) in color gamut prediction, the argument i corresponding to the reference frame number and the variable “num_ref_idx_l0_active_minus1” are unnecessary.
  • the lossless encoding unit 16 may encode the difference between prediction parameters for color gamut prediction in a header (slice header) having a syntax shared with weighted prediction related parameters, for example. .
  • a header slice header
  • weighted prediction related parameters for example.
  • the extension flag “color_gamut_prediction_flag” and the prediction mode parameter “color_prediction_model” may be separately encoded in the SPS, PPS, or slice header. Further, a flag indicating which one of the weighted prediction related parameter and the color gamut prediction parameter is encoded may be additionally encoded.
  • the lossless encoding unit 16 does not encode the weighted prediction related parameter specific to the enhancement layer.
  • the syntax of FIG. 11 defined by Non-Patent Document 1 is not used for weighted prediction in the enhancement layer. Therefore, by encoding the difference between prediction parameters for color gamut prediction using the same syntax instead of the weighted prediction related parameters, the definition of syntax can be used efficiently.
  • the syntax for the parameters of the L1 reference frame may not be used.
  • the value of the variable “num_ref_idx_l0_active_minus1” corresponding to the reference frame number (minus 1) may be regarded as zero (that is, the number of base layer images whose color gamut is to be converted is one).
  • the weighting prediction related parameters may be encoded in the enhancement layer, and a part thereof may be reused for color gamut prediction.
  • the denominator specified by “luma_log2_weight_denom” and “delta_chroma_log2_weight_denom” illustrated in FIG. 11 can be reused as the denominator of the gain of the luminance component and the color difference component.
  • the lossless encoding unit 16 does not encode “delta_luma_log2_gain_denom” and “delta_chroma_log2_gain_denom” illustrated in FIG.
  • the amount of code additionally required for color gamut prediction can be reduced, and the coding efficiency can be increased.
  • the parameter calculation unit 43 may calculate the difference from the past value for the first version of the prediction parameter and the difference from the past value for the second version of the prediction parameter.
  • the lossless encoding unit 16 encodes the difference calculated for the first version into a portion for the L0 reference frame of the syntax shared with the weighted prediction related parameter. Further, the lossless encoding unit 16 encodes the difference calculated for the second version into a portion for the L1 reference frame of the syntax shared with the weighted prediction related parameter.
  • the first version and the second version of the prediction parameter are selectively used according to the band to which the pixel value belongs.
  • the band of pixel values here is not limited, but may correspond to brightness for the luminance component and vividness for the color difference component.
  • FIG. 12 is an explanatory diagram for explaining selective use of a prediction parameter according to a band to which a pixel value belongs.
  • FIG. 12 shows two bars that represent the pixel value ranges of the luminance component (Y) and the color difference component (Cb / Cr). When the bit depth is 8 bits, these ranges are 0. To 255.
  • the range of the luminance component is divided into a lower band Pb11 and an upper band Pb12 based on the boundary value. In the example of FIG. 12, the boundary value of the luminance component is equal to 128 (that is, the center of the range).
  • the color gamut conversion unit 44 calculates the first prediction parameter value when calculating the predicted pixel value from the pixel value. You can use a version. Further, when the pixel value of the luminance component belongs to the band Pb12, the color gamut conversion unit 44 can use the second version of the prediction parameter when calculating the predicted pixel value from the pixel value.
  • the color difference component range is divided into an inner band Pb21 and an outer band Pb22 based on two boundary values. In the example of FIG. 12, the boundary values of the color difference components are 64 and 191 (that is, one of the ranges). / 4 value and 3/4 value).
  • the color gamut conversion unit 44 calculates the first prediction parameter value when calculating the predicted pixel value from the pixel value. You can use a version.
  • the color gamut conversion unit 44 may use the second version of the prediction parameter when calculating the predicted pixel value from the pixel value.
  • the boundary value for switching the version to be used may be known in advance to both the encoder and the decoder. Instead, the lossless encoding unit 16 may further encode boundary information specifying the boundary value.
  • the boundary information may indicate, for example, an adjustment value for the luminance component that is added to the reference value at the center of the range (for example, 128 if the bit depth is 8 bits).
  • the boundary information is an adjustment value for the color difference component that is subtracted from the first reference value equal to 1/4 of the range and added to the second reference value equal to 3/4 of the range. Can show.
  • FIG. 13 is a graph that simply expresses the prediction model realized by the first method with respect to the luminance component.
  • the horizontal axis of the graph in FIG. 13 corresponds to the pixel value of the luminance component of the base layer, and the pixel value is, for example, BT. 709.
  • the vertical axis corresponds to the pixel value of the luminance component of the enhancement layer, and the pixel value is, for example, BT. 2020.
  • the bold line indicates the locus of the predicted pixel value of the enhancement layer predicted from the pixel value of the base layer using the gain and offset of the adaptive parameter mode.
  • This trajectory has a different slope and intercept in the band Pb11 on the left side and the band P12 on the right side of the boundary value Y border on the horizontal axis, and has a broken line shape. If a prediction model that draws such a line-shaped trajectory becomes available, the prediction error of color gamut prediction is reduced compared to existing methods in which the prediction model is completely linear (ie, a linear trajectory) As a result, the encoding efficiency can be improved.
  • the boundary value Y border may be equal to half the maximum value Y max (Y max / 2) of the pixel values of the luminance component of the base layer, or may be equal to a value obtained by adding the adjustment value dY to Y max / 2. .
  • the additional encoding of the adjustment value dY means that the boundary value Y border can be controlled adaptively. In this case, as a result of extending the flexibility of the prediction model for color gamut prediction, the prediction accuracy can be further increased.
  • FIG. 14 is an explanatory diagram for explaining an example of syntax related to the technique described with reference to FIG.
  • the row numbers in the syntax shown in FIG. 14 correspond to the row numbers in the syntax of the weighted prediction related parameter shown in FIG.
  • the part for the parameter of the L1 reference frame in the syntax of the weighted prediction related parameter is omitted from the drawing for the sake of simplicity of explanation.
  • an additional flag “inter_layer_pred_flag” is defined after the second row.
  • the flag “inter_layer_pred_flag” is set to true when this syntax is used for a color gamut prediction parameter.
  • the parameter “delta_pix_value_luma [i]” after the 13th line is the above-described boundary information about the luminance component.
  • the parameter “delta_pix_value_luma [i]” specifies an adjustment value for the luminance component to be added to the reference value at the center of the range for the luminance component.
  • the parameter “delta_pix_value_chroma [i] [j]” after the 18th line is the above-described boundary information about the color difference component.
  • the parameter “delta_pix_value_chroma [i] [j]” is subtracted from the first reference value equal to 1 ⁇ 4 of the range and added to the second reference value equal to 3 ⁇ 4 of the range for the chrominance component.
  • the adjustment value for the color difference component is specified. Note that these additional parameters shown in FIG. 14 may be included in the extension of the slice header instead of the slice header.
  • the first version and the second version of the prediction parameter are selectively used according to the image region to which the pixel belongs.
  • An image area here can correspond to an individual area that can be formed by segmenting a picture, slice or tile.
  • FIG. 15 is an explanatory diagram for explaining selective use of a prediction parameter according to an image region to which a pixel belongs.
  • the image IM 2 is shown.
  • Image IM 2 can be a upsampled image that can be output for example from the up-sampling unit 41.
  • Image IM 2 is segmented over the image area PA1 and below the image area PA2.
  • the color gamut conversion unit 44 uses the first version of the prediction parameter when calculating a predicted pixel value for a pixel belonging to the image area PA1, and predicts when calculating a predicted pixel value for a pixel belonging to the image area PA2.
  • a second version of the parameter may be used.
  • the region boundary for switching the version to be used may be known in advance by both the encoder and the decoder (for example, a boundary that equally divides a picture, slice, or tile into two).
  • the lossless encoding unit 16 may further encode boundary information specifying the region boundary.
  • Boundary information may be information that specifies the first LCU following the region boundaries in raster scan order (LCU L border in the figure).
  • the first LCU following the region boundary may be specified by the number of LCUs counted from a given location in the picture, slice or tile, or may be specified by a flag included in the header of the first LCU. .
  • the predetermined location in the former case may be the beginning of a picture, slice or tile, or their midpoint (eg, exactly half the total number of LCUs).
  • the size information that directly indicates the size of the slice is not encoded. Therefore, the decoder normally does not recognize the size of the slice while decoding the slice (before decoding of the slice is completed). Therefore, additional encoding of boundary information that identifies a region boundary is useful even in a case where the region boundary is fixed (for example, a boundary that equally divides a slice into two).
  • FIG. 16 is an explanatory diagram for explaining an example of syntax related to the technique described with reference to FIG.
  • the line numbers in the syntax shown in FIG. 16 correspond to the line numbers in the syntax of the weighted prediction related parameter shown in FIG.
  • the part for the parameter of the L1 reference frame in the syntax of the weighted prediction related parameter is omitted from the drawing for the sake of simplicity of explanation.
  • an additional flag “inter_layer_pred_flag” similar to that shown in FIG. 14 is defined after the second row.
  • the flag “inter_layer_pred_flag” is set to true when this syntax is used for a color gamut prediction parameter.
  • the parameter “delta_num_ctb” after the flag is the boundary information described above.
  • the parameter “delta_num_ctb” is information that specifies the first LCU that follows the region boundary in the raster scan order by the number of LCUs. If the number of LCUs is counted from the midpoint of a picture, slice or tile, the parameter “delta_num_ctb” may indicate a positive or negative integer. Note that these additional parameters shown in FIG. 16 may also be included in the extension of the slice header instead of the slice header.
  • an optimal prediction model can be applied to color gamut prediction in each image area.
  • the optimum combination of gain and offset differs between a blue sky region and a region other than that in a landscape image.
  • the additional encoding of boundary information specifying the region boundary means that the location of the region boundary can be adaptively controlled. In this case, it is possible to further reduce the prediction error of the color gamut prediction by moving the region boundary according to the content of the image.
  • the method described in this section that provides two versions of the prediction parameter is applied only to the luminance component and may not be applied to the color difference component.
  • the syntax of the weighted prediction related parameter is encoded into the portion for the L0 reference frame and Prediction parameters (typically gain and offset) that can be decoded from this part are used.
  • the parameter for the color difference component included in the portion for the L1 reference frame may be set to an arbitrary value (for example, zero) that can be mapped to the shortest codeword by variable length coding (the value is the value of the color difference component). Can be ignored in color gamut prediction).
  • the contribution of the chrominance component to the subjective image quality is smaller than the contribution of the luminance component.
  • the code amount of the prediction parameter can be reduced only with the sacrifice of the above.
  • the chroma format indicates that the resolution of the chrominance component is equal to the resolution of the luminance component
  • two versions of the prediction parameter are provided for both the luminance component and the chrominance component, and the resolution of the chrominance component is greater than the resolution of the luminance component.
  • the chroma format indicates that it is also lower, only one version of the prediction parameter may be provided for the chrominance component. For example, when the chroma format is 4: 2: 0, the resolution of the color difference component is lower than the luminance component in both the vertical direction and the horizontal direction. When the chroma format is 4: 2: 2, the resolution of the color difference component is lower than the luminance component in the horizontal direction.
  • the influence of the decrease in the prediction accuracy of the color gamut prediction on the encoding efficiency is smaller than that of the luminance component. Therefore, the code amount of the prediction parameter can be effectively reduced by executing the color gamut prediction roughly only for the color difference component in these cases.
  • FIGS. 17A to 17C are explanatory diagrams for explaining the method proposed in JCTVC-O0194.
  • the base layer image size is 2K (for example, 1920 ⁇ 1080 pixels), and the color gamut is BT. 709, the bit depth is 8 bits.
  • the image size of the enhancement layer is 4K (for example, 3840 ⁇ 2160 pixels), and the color gamut is BT. 2020, the bit depth is 10 bits.
  • the upsampling unit 41 performs a bit shift together with the upsampling (Step S1). For example, the addition of two terms in the filter operation can correspond to a left shift of 1 bit, and the addition of four terms can correspond to a left shift of 2 bits.
  • the color gamut conversion unit 44 converts the color gamut of the upsampled image input from the upsampling unit 41 (step S3).
  • the color gamut conversion here may be a linear conversion similar to the weighted prediction.
  • the base layer image size is 2K
  • the color gamut is BT. 709
  • the bit depth is 8 bits.
  • the enhancement layer image size is 2K and the color gamut is BT. 2020, the bit depth is 10 bits.
  • the upsampling unit 41 performs only bit shift because the resolution is the same between layers (step S2).
  • the color gamut conversion unit 44 converts the color gamut of the upsampled image input from the upsampling unit 41 (step S3).
  • the base layer image size is 2K
  • the color gamut is BT. 709
  • the bit depth is 8 bits.
  • the enhancement layer image size is 4K and the color gamut is BT. 709, the bit depth is 10 bits.
  • the upsampling unit 41 performs a bit shift together with the upsampling (Step S1). Since the color gamut is the same between layers, the color gamut conversion unit 44 does not perform color gamut conversion.
  • the color gamut conversion unit 44 can perform a bit shift together with the calculation of the color gamut.
  • the operation of color gamut conversion can be expressed as follows.
  • X k is the pixel value before conversion of the k-th color components
  • X k Pred is a pixel value after the conversion of the k-th color component.
  • w k, n k and o k are applied to the k-th color component, a molecule, the denominator of the logarithm of the weight of the base 2, and the offset of the weight respectively (gain).
  • the bit depth difference between layers is m bits
  • the calculation when the color gamut conversion unit 44 performs bit shift (left shift) for m bits simultaneously with the color gamut conversion is expressed as follows. Can be done.
  • bit shifting can be performed simultaneously with upsampling, or bit shifting can be performed simultaneously with gamut conversion
  • the timing for performing bit shifting is the same between the encoder and decoder (or for decoders with separate implementations). Between them).
  • the lossless encoding unit 16 further encodes a bit shift control flag that controls the execution timing of the bit shift. For example, when the bit depth of the enhancement layer is larger than the bit depth of the base layer, the bit shift control flag should be executed at the same time as the gamut conversion or at the same time as the upsampling. This is a control parameter indicating whether or not.
  • the upsampling unit 41 performs upsampling without performing a bit shift for increasing the bit depth (step S4).
  • the color gamut conversion unit 44 converts the color gamut of the image after upsampling input from the upsampling unit 41 as shown in the above equation (8), and simultaneously performs bit shift (step S6).
  • bit shift control flag indicates “1” (bit shift is executed simultaneously with weighted prediction).
  • the upsampling unit 41 performs neither bit shift nor upsampling.
  • the color gamut conversion unit 44 converts the color gamut of the base layer image as shown in the above equation (8), and simultaneously performs bit shift (step S6).
  • bit shift control flag indicates “0” (bit shift is executed simultaneously with upsampling).
  • the upsampling unit 41 performs bit shift together with the upsampling (Step S5). Since the color gamut is the same between layers, the color gamut conversion unit 44 does not perform color gamut conversion.
  • FIG. 19 is an explanatory diagram for explaining an example of syntax related to the technique described with reference to FIGS. 18A to 18C.
  • the line numbers in the syntax shown in FIG. 19 correspond to the line numbers in the syntax of the weighted prediction related parameter shown in FIG.
  • the part for the parameter of the L1 reference frame in the syntax of the weighted prediction related parameter is omitted from the drawing for the sake of simplicity of explanation.
  • two encoding parameters “weighted_prediction_and_bit_shift_luma_flag” and “weighted_prediction_and_bit_shift_chroma_flag” to be encoded when the layer ID is not zero (that is, the layer is an enhancement layer) are defined. ing.
  • the former is a bit shift control flag for controlling the execution timing of the bit shift of the luminance component.
  • the latter is a bit shift control flag for controlling the execution timing of the bit shift of the color difference component.
  • bit shift control flag may be encoded for both the luminance component and the color difference component.
  • the encoding of the bit shift control flag may be omitted, or the flag may be set to a specific value (for example, zero).
  • the syntax of FIG. 19 is used for weighted prediction in inter prediction within a layer instead of inter layer prediction, the encoding of the bit shift control flag may be omitted, or the flag may be specified. It may be set to a value (eg, zero).
  • FIG. 20 is a flowchart illustrating an example of a schematic processing flow during encoding according to an embodiment. Note that processing steps that are not directly related to the technology according to the present disclosure are omitted from the drawing for the sake of simplicity of explanation.
  • the BL encoding unit 1a performs base layer encoding processing to generate a base layer encoded stream (step S11).
  • the common memory 2 buffers the base layer image (one or both of the decoded image and the prediction error image) generated in the base layer encoding process and the parameters reused between the layers (step S12).
  • Parameters reused between layers may include weighted prediction related parameters.
  • the EL encoding unit 1b performs an enhancement layer encoding process to generate an enhancement layer encoded stream (step S13).
  • the enhancement layer encoding process executed here the base layer image buffered by the common memory 2 is upsampled by the color gamut prediction unit 40, and the color gamut is converted. Then, the base layer image after color gamut conversion can be used as a reference image in inter-layer prediction.
  • the multiplexing unit 3 multiplexes the base layer encoded stream generated by the BL encoding unit 1a and the enhancement layer encoded stream generated by the EL encoding unit 1b, and performs multi-layer multiplexing.
  • a stream is generated (step S14).
  • FIG. 21 is a flowchart illustrating a first example of the flow of color gamut prediction processing in the enhancement layer encoding processing. The color gamut prediction process described here is repeated for each picture or slice.
  • the upsampling unit 41 upsamples the base layer image acquired from the common memory 2 in accordance with the resolution ratio between the base layer and the enhancement layer (step S20).
  • the prediction mode setting unit 42 sets any prediction mode among prediction mode candidates for color gamut prediction to a picture (or slice) (step S22).
  • the prediction mode setting unit 42 may set a prediction mode that is defined in advance, or sets a prediction mode that is dynamically selected based on an evaluation of coding efficiency or prediction accuracy for each prediction mode candidate. May be.
  • the lossless encoding unit 16 encodes a prediction mode parameter indicating the prediction mode set by the prediction mode setting unit 42 (step S25).
  • the prediction mode parameter encoded by the lossless encoding unit 16 is inserted into, for example, a PPS or a slice header.
  • the subsequent processing branches depending on the prediction mode set by the prediction mode setting unit 42 (steps S26 and S28). For example, when the set prediction mode is the adaptive parameter mode, the parameter calculation unit 43 calculates optimum gain and offset values to be used for color gamut prediction (conversion) (step S30). Further, the parameter calculation unit 43 calculates a difference from the past values of the calculated optimum gain and offset values. Then, the lossless encoding unit 16 encodes the gain and offset difference calculated by the parameter calculation unit 43 (step S32). The difference between these prediction parameters encoded by the lossless encoding unit 16 is inserted into, for example, a PPS or a slice header.
  • the color gamut conversion unit 44 adaptively calculates the pixel value of the base layer after upsampling according to the equations (4) to (6).
  • the predicted pixel value of each pixel is calculated by multiplying by a fixed gain and adding an offset (step S34).
  • the color gamut conversion unit 44 moves the pixel value of the base layer after upsampling to the left by a predetermined bit shift amount according to the equations (1) to (3).
  • the predicted pixel value of each pixel is calculated by shifting (step S36).
  • the color gamut conversion unit 44 stores the image of the base layer after the color gamut conversion, that is, the predicted image as a result of the color gamut prediction, in the frame memory. 25 (step S38).
  • step S40 After that, if there is an unprocessed next picture or slice, the process returns to step S20, and the above-described process is repeated for the next picture or slice (step S40).
  • FIG. 22 is a flowchart illustrating a second example of the color gamut prediction process in the enhancement layer encoding process.
  • the prediction mode setting unit 42 sets any prediction mode among prediction mode candidates for color gamut prediction to a sequence (step S21).
  • the lossless encoding part 16 encodes the prediction mode parameter which shows the prediction mode set by the prediction mode setting part 42 (step S23).
  • the prediction mode parameter encoded by the lossless encoding unit 16 is inserted into the SPS.
  • step S24 to step S40 is repeated for each picture or slice in the sequence.
  • the upsampling unit 41 upsamples the base layer image acquired from the common memory 2 according to the resolution ratio between the base layer and the enhancement layer (step S24).
  • the process branches depending on the prediction mode set by the prediction mode setting unit 42 (steps S26 and S28). For example, when the set prediction mode is the adaptive parameter mode, the parameter calculation unit 43 calculates optimum gain and offset values to be used for color gamut prediction (conversion) (step S30). Further, the parameter calculation unit 43 calculates a difference from the past values of the calculated optimum gain and offset values. Then, the lossless encoding unit 16 encodes the gain and offset difference calculated by the parameter calculation unit 43 (step S32). The difference between these prediction parameters encoded by the lossless encoding unit 16 is inserted into, for example, a PPS or a slice header.
  • the color gamut conversion unit 44 adaptively calculates the pixel value of the base layer after upsampling according to the equations (4) to (6).
  • the predicted pixel value of each pixel is calculated by multiplying by a fixed gain and adding an offset (step S34).
  • the color gamut conversion unit 44 moves the pixel value of the base layer after upsampling to the left by a predetermined bit shift amount according to the equations (1) to (3).
  • the predicted pixel value of each pixel is calculated by shifting (step S36).
  • the color gamut conversion unit 44 stores the image of the base layer after the color gamut conversion, that is, the predicted image as a result of the color gamut prediction, in the frame memory. 25 (step S38).
  • step S40 the process returns to step S24, and upsampling and color gamut conversion are repeated for the next picture or slice. Further, when the color gamut conversion has been completed for all the pictures or all the slices in the sequence, it is further determined whether or not the next sequence exists (step S42). If the next sequence exists, the process returns to step S21, and the above-described process is repeated for the next sequence.
  • FIG. 23 is a flowchart illustrating a third example of the flow of the color gamut prediction process in the enhancement layer encoding process.
  • the prediction mode setting unit 42 sets any prediction mode among prediction mode candidates for color gamut prediction to a sequence (step S21).
  • the lossless encoding part 16 encodes the prediction mode parameter which shows the prediction mode set by the prediction mode setting part 42 (step S23).
  • the prediction mode parameter encoded by the lossless encoding unit 16 is inserted into the SPS.
  • step S24 to step S41 is repeated for each slice in the sequence.
  • the upsampling unit 41 upsamples the base layer image acquired from the common memory 2 according to the resolution ratio between the base layer and the enhancement layer (step S24).
  • the upsampling filter operation may or may not include a bit shift for inter-layer prediction.
  • the process branches depending on the prediction mode set by the prediction mode setting unit 42 (steps S26 and S28). For example, when the set prediction mode is the adaptive parameter mode, the parameter calculation unit 43 calculates optimum gain and offset values to be used for color gamut prediction (conversion) (step S30). Further, the parameter calculation unit 43 calculates a difference from the past values of the calculated optimum gain and offset values. Then, the lossless encoding unit 16 encodes the difference between the calculated gain and offset by reusing the syntax of the weighted prediction related parameter (step S33). The difference between these prediction parameters encoded by the lossless encoding unit 16 is inserted into the slice header. If the bit shift control flag described above is employed in the syntax, the encoded bit shift control flag can also be inserted here into the slice header.
  • the color gamut conversion unit 44 adaptively calculates the pixel value of the base layer after upsampling according to the equations (4) to (6).
  • the predicted pixel value of each pixel is calculated by multiplying by a fixed gain and adding an offset (step S34).
  • the bit shift is not performed in step S24, the calculation of the predicted pixel value here may include the bit shift.
  • the color gamut conversion unit 44 moves the pixel value of the base layer after upsampling to the left by a predetermined bit shift amount according to the equations (1) to (3).
  • the predicted pixel value of each pixel is calculated by shifting (step S36).
  • the color gamut conversion unit 44 stores the base layer image after the color gamut conversion, that is, the prediction image as a result of the color gamut prediction, in the frame memory 25. Store (step S38).
  • step S41 If there is an unprocessed next slice in the sequence, the process returns to step S24, and upsampling and color gamut conversion are repeated for the next slice (step S41). If the color gamut conversion has been completed for all slices in the sequence, it is further determined whether or not the next sequence exists (step S42). If the next sequence exists, the process returns to step S21, and the above-described process is repeated for the next sequence.
  • FIG. 24 is a flowchart illustrating a fourth example of the flow of color gamut prediction processing in the enhancement layer encoding processing.
  • the prediction mode setting unit 42 sets any prediction mode among prediction mode candidates for color gamut prediction to a sequence (step S21).
  • the lossless encoding part 16 encodes the prediction mode parameter which shows the prediction mode set by the prediction mode setting part 42 (step S23).
  • the prediction mode parameter encoded by the lossless encoding unit 16 is inserted into the SPS.
  • step S24 to step S41 is repeated for each slice in the sequence.
  • the upsampling unit 41 upsamples the base layer image acquired from the common memory 2 according to the resolution ratio between the base layer and the enhancement layer (step S24).
  • the upsampling filter operation may or may not include a bit shift for inter-layer prediction.
  • the process branches depending on the prediction mode set by the prediction mode setting unit 42 (steps S26 and S28). For example, when the set prediction mode is the adaptive parameter mode, the parameter calculation unit 43 calculates the first version of the gain and offset to be used for color gamut prediction (conversion) (step S31a). Similarly, the parameter calculation unit 43 calculates the second version of the gain and offset (step S31b). These first and second versions may each include a set of optimal values to use for the first and second bands of the range of pixel values. Instead, the first version and the second version may include an optimal set of values to be used for the first image area and the second image area, respectively. Further, the parameter calculation unit 43 calculates the difference from the past values of the gain and offset values for the first version and the second version, respectively.
  • the lossless encoding unit 16 calculates the difference between the prediction parameters calculated for the first version and the second version to the L0 reference frame part and the L1 reference frame part of the syntax of the weighted prediction related parameter. Each is encoded (step S33b). The difference between these prediction parameters encoded by the lossless encoding unit 16 is inserted into the slice header. If the bit shift control flag described above is employed in the syntax, the encoded bit shift control flag can also be inserted here into the slice header.
  • step S34 the prediction parameter version can be switched in step S34 according to the band to which the pixel value belongs or the image region to which the pixel belongs. It may be the same.
  • the lossless encoding unit 16 converts the boundary value between the bands for switching the prediction parameter version or the boundary information for specifying the region boundary between the image regions into, for example, the extension of the slice header or the slice header. Further, encoding may be performed.
  • the color gamut prediction unit 40 converts the color gamut of the base layer image after converting the color gamut of the base layer image when the spatial resolution (image size) of the enhancement layer is higher than the spatial resolution of the base layer.
  • An enhancement layer image may be predicted by upsampling the image.
  • FIG. 25A is an explanatory diagram for describing an example of an existing inter-layer prediction processing order.
  • FIG. 25A shows two processing steps similar to those in FIG. 17A as an example.
  • the image size and bit depth (for example, 2K / 8 bits) of an image included in the slice data of the base layer are increased (for example, to 4K / 10 bits) by upsampling and bit shift, respectively.
  • the color gamut of the image after upsampling is converted into the color gamut of the enhancement layer according to the prediction parameter.
  • FIG. 25B is an explanatory diagram for describing an example of a processing order of a new inter-layer prediction in one modified example.
  • the color gamut prediction unit 40 converts the color gamut of the image included in the slice data of the base layer into the color gamut of the enhancement layer according to the prediction parameter.
  • the color gamut prediction unit 40 increases the image size (for example, 2K) of the image after the color gamut conversion by upsampling (for example, to 4K).
  • the bit shift may be performed simultaneously with the color gamut conversion or may be performed simultaneously with the upsampling.
  • the timing for executing the bit shift may be specified by the bit shift control flag. According to such a new processing order, the number of pixels to be converted and the bit depth of the color gamut conversion are reduced as compared with the case of the existing processing order, so that the processing cost of inter-layer prediction is further suppressed. .
  • the EL decoding unit 6b includes an accumulation buffer 61, a lossless decoding unit 62, an inverse quantization unit 63, an inverse orthogonal transform unit 64, an addition unit 65, a loop filter 66, a rearrangement buffer 67, a D / A ( Digital to Analogue) conversion unit 68, frame memory 69, selectors 70 and 71, intra prediction unit 80, inter prediction unit 85, and color gamut prediction unit 90.
  • the EL decoding unit 6b includes an accumulation buffer 61, a lossless decoding unit 62, an inverse quantization unit 63, an inverse orthogonal transform unit 64, an addition unit 65, a loop filter 66, a rearrangement buffer 67, a D / A ( Digital to Analogue) conversion unit 68, frame memory 69, selectors 70 and 71, intra prediction unit 80, inter prediction unit 85, and color gamut prediction unit 90.
  • the accumulation buffer 61 temporarily accumulates the enhancement layer encoded stream input from the demultiplexer 5 using a storage medium.
  • the lossless decoding unit 62 decodes enhancement layer quantized data from the enhancement layer encoded stream input from the accumulation buffer 61 according to the encoding method used for encoding. In addition, the lossless decoding unit 62 decodes information inserted in the header area of the encoded stream. The information decoded by the lossless decoding unit 62 may include, for example, information related to intra prediction and information related to inter prediction. Parameters for color gamut prediction may also be decoded in the enhancement layer.
  • the lossless decoding unit 62 outputs the quantized data to the inverse quantization unit 63. Further, the lossless decoding unit 62 outputs information related to intra prediction to the intra prediction unit 80. In addition, the lossless decoding unit 62 outputs information on inter prediction to the inter prediction unit 85. Further, the lossless decoding unit 62 outputs a parameter for color gamut prediction to the color gamut prediction unit 90.
  • the inverse quantization unit 63 inversely quantizes the quantized data input from the lossless decoding unit 62 in the same quantization step as that used for encoding, and restores enhancement layer transform coefficient data.
  • the inverse quantization unit 63 outputs the restored transform coefficient data to the inverse orthogonal transform unit 64.
  • the inverse orthogonal transform unit 64 generates prediction error data by performing inverse orthogonal transform on the transform coefficient data input from the inverse quantization unit 63 in accordance with the orthogonal transform method used at the time of encoding.
  • the inverse orthogonal transform unit 64 outputs the generated prediction error data to the addition unit 65.
  • the addition unit 65 adds the prediction error data input from the inverse orthogonal transform unit 64 and the prediction image data input from the selector 71 to generate decoded image data. Then, the addition unit 65 outputs the generated decoded image data to the loop filter 66 and the frame memory 69.
  • the loop filter 66 is a deblocking filter that reduces block distortion, a sample adaptive offset filter that adds an offset value to each pixel value, and an adaptation that minimizes an error from the original image. Includes a loop filter.
  • the loop filter 66 filters the decoded image data input from the adding unit 65 and outputs the filtered decoded image data to the rearrangement buffer 67 and the frame memory 69.
  • the rearrangement buffer 67 generates a series of time-series image data by rearranging the images input from the loop filter 66. Then, the rearrangement buffer 67 outputs the generated image data to the D / A conversion unit 68.
  • the D / A converter 68 converts the digital image data input from the rearrangement buffer 67 into an analog image signal. Then, the D / A conversion unit 68 displays an enhancement layer image, for example, by outputting an analog image signal to a display (not shown) connected to the image decoding device 60.
  • the frame memory 69 receives the decoded image data before filtering input from the addition unit 65, the decoded image data after filtering input from the loop filter 66, and the reference image data of the base layer input from the color gamut prediction unit 90. Store using a storage medium.
  • the selector 70 switches the output destination of the image data from the frame memory 69 between the intra prediction unit 80 and the inter prediction unit 85 for each block in the image according to the mode information acquired by the lossless decoding unit 62. .
  • the selector 70 outputs the decoded image data before filtering supplied from the frame memory 69 to the intra prediction unit 80 as reference image data.
  • the selector 70 outputs the decoded image data after filtering to the inter prediction unit 85 as reference image data.
  • the selector 70 supplies the reference image data of the base layer to the intra prediction unit 80 or the inter prediction unit 85.
  • the selector 71 switches the output source of the predicted image data to be supplied to the adding unit 65 between the intra prediction unit 80 and the inter prediction unit 85 according to the mode information acquired by the lossless decoding unit 62. For example, the selector 71 supplies the prediction image data output from the intra prediction unit 80 to the adding unit 65 when the intra prediction mode is designated. Further, when the inter prediction mode is designated, the selector 71 supplies the predicted image data output from the inter prediction unit 85 to the addition unit 65.
  • the intra prediction unit 80 performs the intra prediction process of the enhancement layer based on the information related to the intra prediction input from the lossless decoding unit 62 and the reference image data from the frame memory 69, and generates predicted image data.
  • the intra prediction process is executed for each PU.
  • intra BL prediction or intra residual prediction is designated as the intra prediction mode
  • the intra prediction unit 80 uses a collocated block in the base layer corresponding to the prediction target block as a reference block.
  • the intra prediction unit 80 generates a predicted image based on the decoded image of the reference block.
  • the intra prediction unit 80 predicts the prediction error of intra prediction based on the prediction error image of the reference block, and generates a prediction image in which the predicted prediction errors are added.
  • the intra prediction unit 80 outputs the generated predicted image data of the enhancement layer to the selector 71.
  • the inter prediction unit 85 performs the inter prediction process (motion compensation process) of the enhancement layer based on the information related to the inter prediction input from the lossless decoding unit 62 and the reference image data from the frame memory 69, and generates predicted image data. To do.
  • the inter prediction process is executed for each PU.
  • inter residual prediction is designated as the inter prediction mode
  • the inter prediction unit 85 uses a collocated block in the base layer corresponding to the prediction target block as a reference block.
  • the inter prediction unit 85 predicts the prediction error of inter prediction based on the prediction error image of the reference block, and generates a prediction image in which the predicted prediction errors are added.
  • the inter prediction unit 85 outputs the generated prediction image data of the enhancement layer to the selector 71.
  • the color gamut prediction unit 90 upsamples the base layer image (decoded image or prediction error image) buffered by the common memory 7 in accordance with the resolution ratio between the base layer and the enhancement layer. In addition, when the enhancement layer image has a color gamut different from that of the base layer image, the color gamut prediction unit 90 changes the color gamut of the up-sampled base layer image to the same color gamut as the enhancement layer image. Convert. In this embodiment, the color gamut prediction unit 90 presupposes an independent linear relationship for each color component between the color gamuts of the base layer and the enhancement layer, and approximates the enhancement layer image from the base layer image. By predicting, the color gamut is converted.
  • the base layer image whose color gamut is converted by the color gamut prediction unit 90 is stored in the frame memory 69 and can be used as a reference image in the inter layer prediction by the intra prediction unit 80 or the inter prediction unit 85.
  • the color gamut prediction unit 90 acquires a prediction mode parameter indicating a prediction mode for color gamut prediction from the lossless decoding unit 62. Further, when the prediction mode parameter indicates the adaptive parameter mode, the color gamut prediction unit 90 further acquires a difference from the past value of the prediction parameter from the lossless decoding unit 62. Then, the color gamut prediction unit 90 predicts an enhancement layer image from the base layer image after upsampling using these parameters acquired from the lossless decoding unit 62.
  • FIG. 27 is a block diagram illustrating an example of a configuration of the color gamut prediction unit 90 illustrated in FIG.
  • the color gamut prediction unit 90 includes an upsampling unit 91, a prediction mode setting unit 92, a parameter calculation unit 93, and a color gamut conversion unit 94.
  • the upsampling unit 91 upsamples the base layer image acquired from the common memory 7 in accordance with the resolution ratio between the base layer and the enhancement layer. More specifically, the upsampling unit 91 calculates an interpolated pixel value by filtering the base layer image with a predefined filter coefficient for each interpolated pixel that is sequentially scanned according to the resolution ratio. Thereby, the spatial resolution of the image of the base layer used as the reference block is increased to a resolution equivalent to that of the enhancement layer. The upsampling unit 91 outputs the upsampled image to the color gamut conversion unit 94.
  • the prediction mode setting unit 92 selects a prediction mode indicated by a prediction mode parameter decoded by the lossless decoding unit 62 from among prediction mode candidates for color gamut prediction.
  • Prediction mode candidates may include the bit shift mode, fixed parameter mode, and adaptive parameter mode described above.
  • the prediction mode setting unit 92 may set the prediction mode according to the prediction mode parameter decoded from the PPS.
  • the prediction mode setting unit 92 may set the prediction mode according to the prediction mode parameter decoded from the slice header.
  • the prediction mode setting unit 92 may set the prediction mode according to the prediction mode parameter decoded from the SPS. If the prediction mode parameters are decoded from the SPS, the same prediction mode can be maintained within one sequence.
  • the parameter calculation unit 93 decodes the prediction parameter to be used for color gamut prediction by the lossless decoding unit 62 when the adaptive parameter mode is set by the prediction mode setting unit 92. Calculation is performed using the difference between the prediction parameters.
  • the parameter calculation unit 93 adds the gain and offset difference acquired from the lossless decoding unit 62 to the past values of the gain and offset, respectively, thereby obtaining the gain and offset. Calculate the latest value.
  • the past value here may be a value calculated for the previous picture, for example, when gain and offset are calculated for each picture.
  • gain and offset are calculated for each slice, the values may be calculated for slices at the same position in the previous picture.
  • the parameter calculation unit 93 corresponds the difference decoded by the lossless decoding unit 62 to the bit shift amount. Add to the prediction parameter value.
  • the parameter calculation unit 93 predefines the difference decoded by the lossless decoding unit 62 when the latest prediction mode parameter indicates the adaptive parameter mode and the previous prediction mode parameter indicates the fixed parameter mode. Add to the fixed prediction parameter value.
  • FIG. 9 shows the past values (that is, the basis of the difference) to which the gain and offset differences should be added.
  • the parameter calculation unit 93 outputs the latest calculated gain and offset values to the color gamut conversion unit 94. Since the gain value can include a decimal value, the denominator and numerator difference can be decoded separately. Accordingly, the parameter calculation unit 93 can calculate the denominator and numerator of the gain from the decoded difference.
  • the multiplication of the gain by the color gamut conversion unit 94 can actually be performed by a multiplication of a numerator that is an integer and a shift operation corresponding to a division by a denominator.
  • the range of the value of the denominator of the gain may be limited to only an integer power of 2 in order to reduce the calculation cost.
  • the logarithm with the denominator value of 2 as the base may be used as the prediction parameter.
  • the color gamut conversion unit 94 converts the color gamut of the base layer image after upsampling input from the upsampling unit 91 according to the prediction mode set by the prediction mode setting unit 92 to the enhancement layer. Convert to a color gamut equivalent to the image of. For example, when the bit shift mode is set, the color gamut conversion unit 94 sets the pixel value of the base layer after upsampling to the left by a predetermined bit shift amount n shift according to Expressions (1) to (3). The predicted pixel value is calculated by shifting in the direction.
  • the color gamut conversion unit 94 multiplies the pixel value of the base layer after the upsampling by a fixed gain according to the equations (4) to (6), and A predicted pixel value is calculated by adding a fixed offset.
  • the color gamut conversion unit 94 uses the gain and offset adaptively calculated by the parameter calculation unit 93 instead of the fixed gain and offset to predict pixel Calculate the value. Thereby, a reference image for inter-layer prediction is generated.
  • the color gamut conversion unit 94 stores the reference image (base layer image with the color gamut converted) generated in this way for inter-layer prediction in the frame memory 69.
  • FIG. 8 An example of the syntax of the difference between the prediction mode parameter and the prediction parameter (gain and offset for each color component) decoded by the lossless decoding unit 62 is shown in FIG. These parameters can be decoded from the enhancement layer encoded stream by the lossless decoding unit 62.
  • the syntax shown in FIG. 8 may be included in the PPS, for example, or may be included in the slice header.
  • the example in which the difference between the prediction mode parameter and the prediction parameter is decoded from the slice header is useful in an application where a different color gamut is used for each partial region of the image.
  • the extension flag “color_gamut_prediction_flag” and the prediction mode parameter “color_prediction_model” may be decoded from the SPS for each sequence. In this case, the same prediction mode is maintained within one sequence.
  • the lossless decoding unit 62 decodes a difference in prediction parameters for color gamut prediction from a header (slice header) having a syntax shared with weighted prediction related parameters according to the mapping shown in Table 1. May be.
  • the extension flag “color_gamut_prediction_flag” and the prediction mode parameter “color_prediction_model” may be separately decoded from the SPS, PPS, or slice header.
  • the lossless decoding unit 62 decodes a flag indicating which one of the weighted prediction related parameter and the color gamut prediction parameter is encoded, and sets the parameter for the color gamut prediction according to the decoded flag. You may decode.
  • the lossless decoding unit 62 does not decode the enhancement layer specific weighted prediction related parameters, but instead uses the same syntax for the difference between the prediction parameters of the color gamut prediction. Can be decrypted. In this case, the syntax for the parameters of the L1 reference frame (lines 21 to 38 in FIG. 11) may not be used. Further, the value of the variable “num_ref_idx_l0_active_minus1” corresponding to the reference frame number (minus 1) may be regarded as zero (that is, the number of base layer images whose color gamut is to be converted is one).
  • the lossless decoding unit 62 may reuse a part of the weighted prediction related parameters for color gamut prediction.
  • the denominator specified by “luma_log2_weight_denom” and “delta_chroma_log2_weight_denom” illustrated in FIG. 11 can be reused as the denominator of the gain of the luminance component and the color difference component.
  • the lossless decoding unit 62 does not decode “delta_luma_log2_gain_denom” and “delta_chroma_log2_gain_denom” shown in FIG.
  • the lossless decoding unit 62 decodes the difference of the first version of the prediction parameter of the color gamut prediction from the portion for the L0 reference frame of the syntax shared with the weighted prediction related parameter, and You may decode the difference of the 2nd version of the prediction parameter of color gamut prediction from the part for L1 reference frames of syntax.
  • the parameter calculation unit 93 calculates the first version of the prediction parameter of the color gamut prediction using the difference decoded for the first version, and calculates the second version of the prediction parameter of the color gamut prediction. The second version is calculated using the decoded difference.
  • the color gamut conversion unit 94 selectively uses the first version and the second version of the prediction parameter to predict an enhancement layer image, that is, to generate a reference image for inter-layer prediction. use.
  • the color gamut conversion unit 94 may select a version to be used from the first version and the second version of the prediction parameter, for example, according to the band to which the pixel value belongs.
  • the boundary value corresponding to the boundary between bands for switching the version to be used may be known in advance for both the encoder and the decoder, or may be set adaptively.
  • the color gamut conversion unit 94 determines the band to which the pixel value belongs according to the boundary value specified by the boundary information that can be further decoded by the lossless decoding unit 62. And the color gamut conversion part 94 can select the version which should be used among the 1st version of a prediction parameter, or a 2nd version based on the determination result.
  • the color gamut conversion unit 94 may select a version to be used from the first version and the second version of the prediction parameter, for example, according to the image region to which the pixel belongs. Good.
  • the region boundary for switching the version to be used may be known in advance for both the encoder and the decoder, or may be set adaptively.
  • the color gamut conversion unit 94 determines the image region to which the pixel belongs according to the region boundary specified by the boundary information that can be further decoded by the lossless decoding unit 62. And the color gamut conversion part 94 can select the version which should be used among the 1st version of a prediction parameter, or a 2nd version based on the determination result.
  • the prediction error of the color gamut prediction is reduced as compared with the existing method, and the code amount of the prediction error data is reduced. As a result, encoding efficiency is increased.
  • the method of providing two versions of the prediction parameter is applied only to the luminance component and may not be applied to the color difference component.
  • the color gamut conversion unit 94 performs a bit shift when predicting an enhancement layer image simultaneously with the color gamut conversion when the bit depth of the enhancement layer is larger than the bit depth of the base layer. It is possible.
  • the lossless decoding unit 62 decodes, as an enhancement layer control parameter, a bit shift control flag indicating whether a bit shift in inter-layer prediction should be performed simultaneously with color gamut conversion.
  • the color gamut conversion unit 94 executes the bit shift simultaneously with the color gamut conversion when the bit shift control flag indicates that the bit shift should be performed simultaneously with the color gamut conversion, and otherwise performs the bit shift. Shifting is performed simultaneously with upsampling, for example.
  • the lossless decoding unit 62 may decode the bit shift control flag separately for the luminance component and the color difference component. In this case, more flexible control according to the setting for each color component (setting of image size and bit depth) is possible.
  • the bit shift control flag can typically be decoded from the slice header as illustrated in FIG. However, the present invention is not limited to this example, and the bit shift control flag may be decoded from other places such as SPS or PPS.
  • FIG. 28 is a flowchart illustrating an example of a schematic processing flow at the time of decoding according to an embodiment. Note that processing steps that are not directly related to the technology according to the present disclosure are omitted from the drawing for the sake of simplicity of explanation.
  • the demultiplexing unit 5 demultiplexes the multi-layer multiplexed stream into the base layer encoded stream and the enhancement layer encoded stream (step S60).
  • the BL decoding unit 6a executes base layer decoding processing to reconstruct a base layer image from the base layer encoded stream (step S61).
  • the common memory 7 buffers the base layer image (one or both of the decoded image and the prediction error image) generated in the base layer decoding process and the parameters reused between the layers (step S62).
  • Parameters reused between layers may include weighted prediction related parameters.
  • the EL decoding unit 6b executes enhancement layer decoding processing to reconstruct the enhancement layer image (step S63).
  • the enhancement layer decoding process executed here the base layer image buffered by the common memory 7 is upsampled by the color gamut prediction unit 90, and the color gamut is converted. Then, the base layer image after color gamut conversion can be used as a reference image in inter-layer prediction.
  • FIG. 29 is a flowchart illustrating a first example of the flow of color gamut prediction processing in enhancement layer decoding processing. The color gamut prediction process described here is repeated for each picture or slice.
  • the upsampling unit 91 upsamples the base layer image acquired from the common memory 7 in accordance with the resolution ratio between the base layer and the enhancement layer (step S70).
  • the lossless decoding unit 62 decodes a prediction mode parameter indicating a prediction mode to be set for color gamut prediction from the PPS or the slice header (step S72). Then, the prediction mode setting unit 92 sets the prediction mode indicated by the decoded prediction mode parameter to a picture (or slice) (step S75).
  • the subsequent processing branches depending on the prediction mode set by the prediction mode setting unit 92 (steps S76 and S78).
  • the lossless decoding unit 62 decodes the difference from the past values of the gain and offset values from the PPS or slice header (step S80).
  • the parameter calculation unit 93 calculates the gain and offset to be used for the latest picture or slice by adding the decoded gain and offset difference to the past values of the gain and offset (step S82).
  • the color gamut conversion unit 94 is adaptively calculated to the pixel value of the base layer after the upsampling according to the equations (4) to (6).
  • the predicted pixel value of each pixel is calculated by multiplying the fixed gain or adding an offset (step S84).
  • the color gamut conversion unit 94 moves the pixel value of the base layer after upsampling to the left by a predetermined bit shift amount according to the equations (1) to (3).
  • the predicted pixel value of each pixel is calculated by shifting (step S86).
  • the color gamut conversion unit 94 stores the image of the base layer after the color gamut conversion, that is, the predicted image as a result of the color gamut prediction, in the frame memory. 69 (step S88).
  • step S90 After that, if there is an unprocessed next picture or slice, the process returns to step S70, and the above-described process is repeated for the next picture or slice (step S90).
  • FIG. 30 is a flowchart illustrating a second example of the flow of color gamut prediction processing in enhancement layer decoding processing.
  • the lossless decoding unit 62 decodes a prediction mode parameter indicating a prediction mode to be set for color gamut prediction from the SPS (step S71). Then, the prediction mode setting unit 92 sets the prediction mode indicated by the decoded prediction mode parameter in the sequence (step S73).
  • step S74 to step S90 is repeated for each picture or slice in the sequence.
  • the upsampling unit 91 upsamples the base layer image acquired from the common memory 7 in accordance with the resolution ratio between the base layer and the enhancement layer (step S74).
  • the process branches depending on the prediction mode set by the prediction mode setting unit 92 (steps S76 and S78).
  • the lossless decoding unit 62 decodes the difference from the past values of the gain and offset values from the PPS or slice header (step S80).
  • the parameter calculation unit 93 calculates the gain and offset to be used for the latest picture or slice by adding the decoded gain and offset difference to the past values of the gain and offset, respectively (step S82). .
  • the color gamut conversion unit 94 is adaptively calculated to the pixel value of the base layer after the upsampling according to the equations (4) to (6).
  • the predicted pixel value of each pixel is calculated by multiplying the fixed gain or adding an offset (step S84).
  • the color gamut conversion unit 94 moves the pixel value of the base layer after upsampling to the left by a predetermined bit shift amount according to the equations (1) to (3).
  • the predicted pixel value of each pixel is calculated by shifting (step S86).
  • the color gamut conversion unit 94 stores the image of the base layer after the color gamut conversion, that is, the predicted image as a result of the color gamut prediction, in the frame memory. 69 (step S88).
  • step S92 it is further determined whether or not the next sequence exists (step S92). If the next sequence exists, the process returns to step S71, and the above-described process is repeated for the next sequence.
  • FIG. 31 is a flowchart illustrating a third example of the flow of the color gamut prediction process in the enhancement layer decoding process.
  • the lossless decoding unit 62 decodes a prediction mode parameter indicating a prediction mode to be set for color gamut prediction from the SPS (step S71). Then, the prediction mode setting unit 92 sets the prediction mode indicated by the decoded prediction mode parameter in the sequence (step S73).
  • step S74 to step S91 is repeated for each slice in the sequence.
  • the upsampling unit 91 upsamples the base layer image acquired from the common memory 7 in accordance with the resolution ratio between the base layer and the enhancement layer (step S74).
  • the process branches depending on the prediction mode set by the prediction mode setting unit 92 (steps S76 and S78).
  • the lossless decoding unit 62 re-uses the syntax of the weighted prediction related parameter from the past values of the gain and offset values encoded. The difference is decoded from the slice header (step S81).
  • the parameter calculation unit 93 calculates the gain and offset to be used for the latest slice by adding the decoded gain and offset differences to the past values of the gain and offset, respectively (step S82).
  • the color gamut conversion unit 94 is adaptively calculated to the pixel value of the base layer after the upsampling according to the equations (4) to (6).
  • the predicted pixel value of each pixel is calculated by multiplying the fixed gain or adding an offset (step S84).
  • the calculation of the predicted pixel value here may include a bit shift for inter-layer prediction. The bit shift may be included in the upsampling filter operation in step S74.
  • the color gamut conversion unit 94 moves the pixel value of the base layer after upsampling to the left by a predetermined bit shift amount according to the equations (1) to (3).
  • the predicted pixel value of each pixel is calculated by shifting (step S86).
  • the color gamut conversion unit 94 stores the base layer image after the color gamut conversion, that is, the predicted image as a result of the color gamut prediction, in the frame memory 69. Store (step S88).
  • step S91 If there is an unprocessed next slice in the sequence, the process returns to step S74, and upsampling and color gamut conversion are repeated for the next slice (step S91). If the color gamut conversion has been completed for all slices in the sequence, it is further determined whether the next sequence exists (step S92). If the next sequence exists, the process returns to step S71, and the above-described process is repeated for the next sequence.
  • FIG. 32 is a flowchart illustrating a fourth example of the flow of color gamut prediction processing in enhancement layer decoding processing.
  • the lossless decoding unit 62 decodes a prediction mode parameter indicating a prediction mode to be set for color gamut prediction from the SPS (step S71). Then, the prediction mode setting unit 92 sets the prediction mode indicated by the decoded prediction mode parameter in the sequence (step S73).
  • step S74 to step S91 is repeated for each slice in the sequence.
  • the upsampling unit 91 upsamples the base layer image acquired from the common memory 7 in accordance with the resolution ratio between the base layer and the enhancement layer (step S74).
  • the process branches depending on the prediction mode set by the prediction mode setting unit 92 (steps S76 and S78).
  • the lossless decoding unit 62 calculates the first prediction parameter from the portion for the L0 reference frame and the portion for the L1 reference frame in the syntax of the weighted prediction related parameter.
  • the difference between the version and the second version is decoded (step S81b).
  • the parameter calculation unit 93 adds the difference between the gain and the offset decoded for the first version to the past values of the gain and the offset, respectively, so that the first version of the prediction parameter to be used for the latest slice Is calculated (step S83a).
  • the parameter calculation unit 93 adds the difference between the gain and the offset decoded for the second version to the past values of the gain and the offset, respectively, so that the second prediction parameter to be used for the latest slice is obtained.
  • the version is calculated (step S83b).
  • These first and second versions may each include a set of optimal values to use for the first and second bands of the range of pixel values.
  • the first version and the second version may include an optimal set of values to be used for the first image area and the second image area, respectively.
  • step S84 the prediction parameter version can be switched in step S84 according to the band to which the pixel value belongs or the image region to which the pixel belongs. It may be the same.
  • the lossless decoding unit 62 obtains boundary information for identifying a boundary value between bands or a region boundary between image areas for switching the version of a prediction parameter, for example, from an extension of a slice header or a slice header. You may additionally decode.
  • FIGS. 29 to 32 show an example in which color gamut conversion is executed after upsampling is executed.
  • the color gamut prediction unit 90 uses the base layer when the spatial resolution (image size) of the enhancement layer is higher than the spatial resolution of the base layer.
  • the enhancement layer image may be predicted by upsampling the converted image. According to such a processing order, the number of pixels to be converted and the bit depth of the color gamut conversion are reduced as compared with the case of the existing processing order, so that the processing cost of the inter-layer prediction can be further suppressed. .
  • the image encoding device 10 and the image decoding device 60 are a transmitter or a receiver in satellite broadcasting, cable broadcasting such as cable TV, distribution on the Internet, and distribution to terminals by cellular communication,
  • the present invention can be applied to various electronic devices such as a recording device that records an image on a medium such as an optical disk, a magnetic disk, and a flash memory, or a playback device that reproduces an image from these storage media.
  • a recording device that records an image on a medium such as an optical disk, a magnetic disk, and a flash memory
  • a playback device that reproduces an image from these storage media.
  • FIG. 33 illustrates an example of a schematic configuration of a television device to which the above-described embodiment is applied.
  • the television apparatus 900 includes an antenna 901, a tuner 902, a demultiplexer 903, a decoder 904, a video signal processing unit 905, a display unit 906, an audio signal processing unit 907, a speaker 908, an external interface 909, a control unit 910, a user interface 911, And a bus 912.
  • Tuner 902 extracts a signal of a desired channel from a broadcast signal received via antenna 901, and demodulates the extracted signal. Then, the tuner 902 outputs the encoded bit stream obtained by the demodulation to the demultiplexer 903. In other words, the tuner 902 serves as a transmission unit in the television apparatus 900 that receives an encoded stream in which an image is encoded.
  • the demultiplexer 903 separates the video stream and audio stream of the viewing target program from the encoded bit stream, and outputs each separated stream to the decoder 904. In addition, the demultiplexer 903 extracts auxiliary data such as EPG (Electronic Program Guide) from the encoded bit stream, and supplies the extracted data to the control unit 910. Note that the demultiplexer 903 may perform descrambling when the encoded bit stream is scrambled.
  • EPG Electronic Program Guide
  • the decoder 904 decodes the video stream and audio stream input from the demultiplexer 903. Then, the decoder 904 outputs the video data generated by the decoding process to the video signal processing unit 905. In addition, the decoder 904 outputs audio data generated by the decoding process to the audio signal processing unit 907.
  • the video signal processing unit 905 reproduces the video data input from the decoder 904 and causes the display unit 906 to display the video.
  • the video signal processing unit 905 may cause the display unit 906 to display an application screen supplied via a network.
  • the video signal processing unit 905 may perform additional processing such as noise removal on the video data according to the setting.
  • the video signal processing unit 905 may generate a GUI (Graphical User Interface) image such as a menu, a button, or a cursor, and superimpose the generated image on the output image.
  • GUI Graphic User Interface
  • the display unit 906 is driven by a drive signal supplied from the video signal processing unit 905, and displays a video or an image on a video screen of a display device (for example, a liquid crystal display, a plasma display, or an OLED).
  • a display device for example, a liquid crystal display, a plasma display, or an OLED.
  • the audio signal processing unit 907 performs reproduction processing such as D / A conversion and amplification on the audio data input from the decoder 904, and outputs audio from the speaker 908.
  • the audio signal processing unit 907 may perform additional processing such as noise removal on the audio data.
  • the external interface 909 is an interface for connecting the television apparatus 900 to an external device or a network.
  • a video stream or an audio stream received via the external interface 909 may be decoded by the decoder 904. That is, the external interface 909 also has a role as a transmission unit in the television apparatus 900 that receives an encoded stream in which an image is encoded.
  • the control unit 910 has a processor such as a CPU (Central Processing Unit) and a memory such as a RAM (Random Access Memory) and a ROM (Read Only Memory).
  • the memory stores a program executed by the CPU, program data, EPG data, data acquired via a network, and the like.
  • the program stored in the memory is read and executed by the CPU when the television device 900 is activated, for example.
  • the CPU controls the operation of the television device 900 according to an operation signal input from the user interface 911, for example, by executing the program.
  • the user interface 911 is connected to the control unit 910.
  • the user interface 911 includes, for example, buttons and switches for the user to operate the television device 900, a remote control signal receiving unit, and the like.
  • the user interface 911 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 910.
  • the bus 912 connects the tuner 902, the demultiplexer 903, the decoder 904, the video signal processing unit 905, the audio signal processing unit 907, the external interface 909, and the control unit 910 to each other.
  • the decoder 904 has the function of the image decoding apparatus 60 according to the above-described embodiment. Therefore, when the television apparatus 900 performs color gamut prediction for layers having different color gamuts, it is possible to suppress an increase in code amount while achieving high prediction accuracy.
  • FIG. 34 illustrates an example of a schematic configuration of a mobile phone to which the above-described embodiment is applied.
  • a cellular phone 920 includes an antenna 921, a communication unit 922, an audio codec 923, a speaker 924, a microphone 925, a camera unit 926, an image processing unit 927, a demultiplexing unit 928, a recording / reproducing unit 929, a display unit 930, a control unit 931, an operation A portion 932 and a bus 933.
  • the antenna 921 is connected to the communication unit 922.
  • the speaker 924 and the microphone 925 are connected to the audio codec 923.
  • the operation unit 932 is connected to the control unit 931.
  • the bus 933 connects the communication unit 922, the audio codec 923, the camera unit 926, the image processing unit 927, the demultiplexing unit 928, the recording / reproducing unit 929, the display unit 930, and the control unit 931 to each other.
  • the mobile phone 920 has various operation modes including a voice call mode, a data communication mode, a shooting mode, and a videophone mode, and is used for sending and receiving voice signals, sending and receiving e-mail or image data, taking images, and recording data. Perform the action.
  • the analog voice signal generated by the microphone 925 is supplied to the voice codec 923.
  • the audio codec 923 converts an analog audio signal into audio data, A / D converts the compressed audio data, and compresses it. Then, the audio codec 923 outputs the compressed audio data to the communication unit 922.
  • the communication unit 922 encodes and modulates the audio data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. In addition, the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • the communication unit 922 demodulates and decodes the received signal to generate audio data, and outputs the generated audio data to the audio codec 923.
  • the audio codec 923 expands the audio data and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
  • the control unit 931 generates character data constituting the e-mail in response to an operation by the user via the operation unit 932.
  • the control unit 931 causes the display unit 930 to display characters.
  • the control unit 931 generates e-mail data in response to a transmission instruction from the user via the operation unit 932, and outputs the generated e-mail data to the communication unit 922.
  • the communication unit 922 encodes and modulates email data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921.
  • the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • the communication unit 922 demodulates and decodes the received signal to restore the email data, and outputs the restored email data to the control unit 931.
  • the control unit 931 displays the content of the electronic mail on the display unit 930 and stores the electronic mail data in the storage medium of the recording / reproducing unit 929.
  • the recording / reproducing unit 929 has an arbitrary readable / writable storage medium.
  • the storage medium may be a built-in storage medium such as a RAM or a flash memory, or an externally mounted storage medium such as a hard disk, a magnetic disk, a magneto-optical disk, an optical disk, a USB memory, or a memory card. May be.
  • the camera unit 926 images a subject to generate image data, and outputs the generated image data to the image processing unit 927.
  • the image processing unit 927 encodes the image data input from the camera unit 926 and stores the encoded stream in the storage medium of the recording / playback unit 929.
  • the demultiplexing unit 928 multiplexes the video stream encoded by the image processing unit 927 and the audio stream input from the audio codec 923, and the multiplexed stream is the communication unit 922. Output to.
  • the communication unit 922 encodes and modulates the stream and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921.
  • the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
  • These transmission signal and reception signal may include an encoded bit stream.
  • the communication unit 922 demodulates and decodes the received signal to restore the stream, and outputs the restored stream to the demultiplexing unit 928.
  • the demultiplexing unit 928 separates the video stream and the audio stream from the input stream, and outputs the video stream to the image processing unit 927 and the audio stream to the audio codec 923.
  • the image processing unit 927 decodes the video stream and generates video data.
  • the video data is supplied to the display unit 930, and a series of images is displayed on the display unit 930.
  • the audio codec 923 decompresses the audio stream and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
  • the image processing unit 927 has the functions of the image encoding device 10 and the image decoding device 60 according to the above-described embodiment. Therefore, when the mobile phone 920 performs color gamut prediction for layers having different color gamuts, it is possible to suppress an increase in code amount while achieving high prediction accuracy.
  • FIG. 35 shows an example of a schematic configuration of a recording / reproducing apparatus to which the above-described embodiment is applied.
  • the recording / reproducing device 940 encodes audio data and video data of a received broadcast program and records the encoded data on a recording medium.
  • the recording / reproducing device 940 may encode audio data and video data acquired from another device and record them on a recording medium, for example.
  • the recording / reproducing device 940 reproduces data recorded on the recording medium on a monitor and a speaker, for example, in accordance with a user instruction. At this time, the recording / reproducing device 940 decodes the audio data and the video data.
  • the recording / reproducing apparatus 940 includes a tuner 941, an external interface 942, an encoder 943, an HDD (Hard Disk Drive) 944, a disk drive 945, a selector 946, a decoder 947, an OSD (On-Screen Display) 948, a control unit 949, and a user interface. 950.
  • Tuner 941 extracts a signal of a desired channel from a broadcast signal received via an antenna (not shown), and demodulates the extracted signal. Then, the tuner 941 outputs the encoded bit stream obtained by the demodulation to the selector 946. That is, the tuner 941 has a role as a transmission unit in the recording / reproducing apparatus 940.
  • the external interface 942 is an interface for connecting the recording / reproducing apparatus 940 to an external device or a network.
  • the external interface 942 may be, for example, an IEEE 1394 interface, a network interface, a USB interface, or a flash memory interface.
  • video data and audio data received via the external interface 942 are input to the encoder 943. That is, the external interface 942 serves as a transmission unit in the recording / reproducing device 940.
  • the encoder 943 encodes video data and audio data when the video data and audio data input from the external interface 942 are not encoded. Then, the encoder 943 outputs the encoded bit stream to the selector 946.
  • the HDD 944 records an encoded bit stream in which content data such as video and audio is compressed, various programs, and other data on an internal hard disk. Also, the HDD 944 reads out these data from the hard disk when playing back video and audio.
  • the disk drive 945 performs recording and reading of data to and from the mounted recording medium.
  • the recording medium loaded in the disk drive 945 may be, for example, a DVD disk (DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD + R, DVD + RW, etc.) or a Blu-ray (registered trademark) disk. .
  • the selector 946 selects an encoded bit stream input from the tuner 941 or the encoder 943 when recording video and audio, and outputs the selected encoded bit stream to the HDD 944 or the disk drive 945. In addition, the selector 946 outputs the encoded bit stream input from the HDD 944 or the disk drive 945 to the decoder 947 during video and audio reproduction.
  • the decoder 947 decodes the encoded bit stream and generates video data and audio data. Then, the decoder 947 outputs the generated video data to the OSD 948. The decoder 904 outputs the generated audio data to an external speaker.
  • the OSD 948 reproduces the video data input from the decoder 947 and displays the video. Further, the OSD 948 may superimpose a GUI image such as a menu, a button, or a cursor on the video to be displayed.
  • a GUI image such as a menu, a button, or a cursor
  • the control unit 949 includes a processor such as a CPU and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, and the like.
  • the program stored in the memory is read and executed by the CPU when the recording / reproducing apparatus 940 is activated, for example.
  • the CPU controls the operation of the recording / reproducing device 940 according to an operation signal input from the user interface 950, for example, by executing the program.
  • the user interface 950 is connected to the control unit 949.
  • the user interface 950 includes, for example, buttons and switches for the user to operate the recording / reproducing device 940, a remote control signal receiving unit, and the like.
  • the user interface 950 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 949.
  • the encoder 943 has the function of the image encoding apparatus 10 according to the above-described embodiment.
  • the decoder 947 has the function of the image decoding device 60 according to the above-described embodiment.
  • FIG. 36 illustrates an example of a schematic configuration of an imaging apparatus to which the above-described embodiment is applied.
  • the imaging device 960 images a subject to generate an image, encodes the image data, and records it on a recording medium.
  • the imaging device 960 includes an optical block 961, an imaging unit 962, a signal processing unit 963, an image processing unit 964, a display unit 965, an external interface 966, a memory 967, a media drive 968, an OSD 969, a control unit 970, a user interface 971, and a bus. 972.
  • the optical block 961 is connected to the imaging unit 962.
  • the imaging unit 962 is connected to the signal processing unit 963.
  • the display unit 965 is connected to the image processing unit 964.
  • the user interface 971 is connected to the control unit 970.
  • the bus 972 connects the image processing unit 964, the external interface 966, the memory 967, the media drive 968, the OSD 969, and the control unit 970 to each other.
  • the optical block 961 includes a focus lens and a diaphragm mechanism.
  • the optical block 961 forms an optical image of the subject on the imaging surface of the imaging unit 962.
  • the imaging unit 962 includes an image sensor such as a CCD or a CMOS, and converts an optical image formed on the imaging surface into an image signal as an electrical signal by photoelectric conversion. Then, the imaging unit 962 outputs the image signal to the signal processing unit 963.
  • the signal processing unit 963 performs various camera signal processing such as knee correction, gamma correction, and color correction on the image signal input from the imaging unit 962.
  • the signal processing unit 963 outputs the image data after the camera signal processing to the image processing unit 964.
  • the image processing unit 964 encodes the image data input from the signal processing unit 963 and generates encoded data. Then, the image processing unit 964 outputs the generated encoded data to the external interface 966 or the media drive 968. The image processing unit 964 also decodes encoded data input from the external interface 966 or the media drive 968 to generate image data. Then, the image processing unit 964 outputs the generated image data to the display unit 965. In addition, the image processing unit 964 may display the image by outputting the image data input from the signal processing unit 963 to the display unit 965. Further, the image processing unit 964 may superimpose display data acquired from the OSD 969 on an image output to the display unit 965.
  • the OSD 969 generates a GUI image such as a menu, a button, or a cursor, for example, and outputs the generated image to the image processing unit 964.
  • the external interface 966 is configured as a USB input / output terminal, for example.
  • the external interface 966 connects the imaging device 960 and a printer, for example, when printing an image.
  • a drive is connected to the external interface 966 as necessary.
  • a removable medium such as a magnetic disk or an optical disk is attached to the drive, and a program read from the removable medium can be installed in the imaging device 960.
  • the external interface 966 may be configured as a network interface connected to a network such as a LAN or the Internet. That is, the external interface 966 has a role as a transmission unit in the imaging device 960.
  • the recording medium mounted on the media drive 968 may be any readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory. Further, a recording medium may be fixedly attached to the media drive 968, and a non-portable storage unit such as an internal hard disk drive or an SSD (Solid State Drive) may be configured.
  • a non-portable storage unit such as an internal hard disk drive or an SSD (Solid State Drive) may be configured.
  • the control unit 970 includes a processor such as a CPU and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, and the like.
  • the program stored in the memory is read and executed by the CPU when the imaging device 960 is activated, for example.
  • the CPU controls the operation of the imaging device 960 according to an operation signal input from the user interface 971, for example, by executing the program.
  • the user interface 971 is connected to the control unit 970.
  • the user interface 971 includes, for example, buttons and switches for the user to operate the imaging device 960.
  • the user interface 971 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 970.
  • the image processing unit 964 has the functions of the image encoding device 10 and the image decoding device 60 according to the above-described embodiment. Thereby, when the imaging device 960 performs color gamut prediction for layers having different color gamuts, it is possible to suppress an increase in code amount while achieving high prediction accuracy.
  • the data transmission system 1000 includes a stream storage device 1001 and a distribution server 1002.
  • Distribution server 1002 is connected to several terminal devices via network 1003.
  • Network 1003 may be a wired network, a wireless network, or a combination thereof.
  • FIG. 37 shows a PC (Personal Computer) 1004, an AV device 1005, a tablet device 1006, and a mobile phone 1007 as examples of terminal devices.
  • PC Personal Computer
  • the stream storage device 1001 stores, for example, stream data 1011 including a multiplexed stream generated by the image encoding device 10.
  • the multiplexed stream includes a base layer (BL) encoded stream and an enhancement layer (EL) encoded stream.
  • the distribution server 1002 reads the stream data 1011 stored in the stream storage device 1001, and at least a part of the read stream data 1011 is transmitted via the network 1003 to the PC 1004, the AV device 1005, the tablet device 1006, and the mobile phone 1007. Deliver to.
  • the distribution server 1002 selects a stream to be distributed based on some condition such as the capability of the terminal device or the communication environment. For example, the distribution server 1002 may avoid the occurrence of delay, overflow, or processor overload in the terminal device by not distributing an encoded stream having a high image quality that exceeds the image quality that can be handled by the terminal device. . The distribution server 1002 may avoid occupying the communication band of the network 1003 by not distributing an encoded stream having high image quality. On the other hand, the distribution server 1002 distributes all of the multiplexed streams to the terminal device when there is no risk to be avoided or when it is determined to be appropriate based on a contract with the user or some condition. Good.
  • the distribution server 1002 reads the stream data 1011 from the stream storage device 1001. Then, the distribution server 1002 distributes the stream data 1011 as it is to the PC 1004 having high processing capability. Also, since the AV device 1005 has low processing capability, the distribution server 1002 generates stream data 1012 including only the base layer encoded stream extracted from the stream data 1011, and distributes the stream data 1012 to the AV device 1005. To do. Also, the distribution server 1002 distributes the stream data 1011 as it is to the tablet device 1006 that can communicate at a high communication rate. Further, since the cellular phone 1007 can communicate only at a low communication rate, the distribution server 1002 distributes the stream data 1012 including only the base layer encoded stream to the cellular phone 1007.
  • the multiplexed stream By using the multiplexed stream in this way, the amount of traffic to be transmitted can be adjusted adaptively.
  • the code amount of the stream data 1011 is reduced as compared with the case where each layer is individually encoded, even if the entire stream data 1011 is distributed, the load on the network 1003 is suppressed. Is done. Furthermore, memory resources of the stream storage device 1001 are also saved.
  • the hardware performance of terminal devices varies from device to device.
  • the communication capacity of the network 1003 also varies.
  • the capacity available for data transmission can change from moment to moment due to the presence of other traffic. Therefore, the distribution server 1002 transmits terminal information regarding the hardware performance and application capability of the terminal device, the communication capacity of the network 1003, and the like through signaling with the distribution destination terminal device before starting the distribution of the stream data. And network information may be acquired. Then, the distribution server 1002 can select a stream to be distributed based on the acquired information.
  • extraction of a layer to be decoded may be performed in the terminal device.
  • the PC 1004 may display a base layer image extracted from the received multiplexed stream and decoded on the screen. Further, the PC 1004 may extract a base layer encoded stream from the received multiplexed stream to generate stream data 1012, store the generated stream data 1012 in a storage medium, or transfer the stream data 1012 to another device. .
  • the configuration of the data transmission system 1000 shown in FIG. 37 is merely an example.
  • the data transmission system 1000 may include any number of stream storage devices 1001, a distribution server 1002, a network 1003, and terminal devices.
  • the data transmission system 1100 includes a broadcast station 1101 and a terminal device 1102.
  • the broadcast station 1101 broadcasts a base layer encoded stream 1121 on the terrestrial channel 1111.
  • the broadcast station 1101 transmits an enhancement layer encoded stream 1122 to the terminal device 1102 via the network 1112.
  • the terminal device 1102 has a reception function for receiving a terrestrial broadcast broadcast by the broadcast station 1101, and receives a base layer encoded stream 1121 via the terrestrial channel 1111. Also, the terminal device 1102 has a communication function for communicating with the broadcast station 1101 and receives the enhancement layer encoded stream 1122 via the network 1112.
  • the terminal device 1102 receives the base layer encoded stream 1121 in accordance with an instruction from the user, decodes the base layer image from the received encoded stream 1121, and displays the base layer image on the screen. Good. Further, the terminal device 1102 may store the decoded base layer image in a storage medium or transfer it to another device.
  • the terminal device 1102 receives, for example, an enhancement layer encoded stream 1122 via the network 1112 in accordance with an instruction from the user, and generates a base layer encoded stream 1121 and an enhancement layer encoded stream 1122. Multiplexed streams may be generated by multiplexing. Also, the terminal apparatus 1102 may decode the enhancement layer image from the enhancement layer encoded stream 1122 and display the enhancement layer image on the screen. In addition, the terminal device 1102 may store the decoded enhancement layer image in a storage medium or transfer it to another device.
  • the encoded stream of each layer included in the multiplexed stream can be transmitted via a different communication channel for each layer. Accordingly, it is possible to distribute the load applied to each channel and suppress the occurrence of communication delay or overflow.
  • the communication channel used for transmission may be dynamically selected according to some condition. For example, a base layer encoded stream 1121 having a relatively large amount of data is transmitted via a communication channel having a wide bandwidth, and an enhancement layer encoded stream 1122 having a relatively small amount of data is transmitted via a communication channel having a small bandwidth. Can be transmitted. Also, the communication channel for transmitting the encoded stream 1122 of a specific layer may be switched according to the bandwidth of the communication channel. Thereby, the load applied to each channel can be more effectively suppressed.
  • the configuration of the data transmission system 1100 shown in FIG. 38 is merely an example.
  • the data transmission system 1100 may include any number of communication channels and terminal devices.
  • the system configuration described here may be used for purposes other than broadcasting.
  • the data transmission system 1200 includes an imaging device 1201 and a stream storage device 1202.
  • the imaging device 1201 performs scalable coding on image data generated by imaging the subject 1211 and generates a multiplexed stream 1221.
  • the multiplexed stream 1221 includes a base layer encoded stream and an enhancement layer encoded stream. Then, the imaging device 1201 supplies the multiplexed stream 1221 to the stream storage device 1202.
  • the stream storage device 1202 stores the multiplexed stream 1221 supplied from the imaging device 1201 with different image quality for each mode. For example, in the normal mode, the stream storage device 1202 extracts the base layer encoded stream 1222 from the multiplexed stream 1221 and stores the extracted base layer encoded stream 1222. On the other hand, the stream storage device 1202 stores the multiplexed stream 1221 as it is in the high image quality mode. Thereby, the stream storage device 1202 can record a high-quality stream with a large amount of data only when video recording with high quality is desired. Therefore, it is possible to save memory resources while suppressing the influence of image quality degradation on the user.
  • the imaging device 1201 is assumed to be a surveillance camera.
  • the monitoring target for example, an intruder
  • the normal mode is selected.
  • the video is recorded with low image quality (that is, only the base layer coded stream 1222 is stored).
  • the monitoring target for example, the subject 1211 as an intruder
  • the high image quality mode is selected. In this case, since the captured image is likely to be important, priority is given to the high image quality, and the video is recorded with high image quality (that is, the multiplexed stream 1221 is stored).
  • the mode is selected by the stream storage device 1202 based on the image analysis result, for example.
  • the imaging device 1201 may select a mode. In the latter case, the imaging device 1201 may supply the base layer encoded stream 1222 to the stream storage device 1202 in the normal mode and supply the multiplexed stream 1221 to the stream storage device 1202 in the high image quality mode.
  • the selection criteria for selecting the mode may be any standard.
  • the mode may be switched according to the volume of sound acquired through a microphone or the waveform of sound. Further, the mode may be switched periodically. Further, the mode may be switched according to an instruction from the user.
  • the number of selectable modes may be any number as long as the number of layers to be layered does not exceed.
  • the configuration of the data transmission system 1200 shown in FIG. 39 is merely an example.
  • the data transmission system 1200 may include any number of imaging devices 1201. Further, the system configuration described here may be used in applications other than the surveillance camera.
  • the multi-view codec is a kind of multi-layer codec, and is an image encoding method for encoding and decoding so-called multi-view video.
  • FIG. 40 is an explanatory diagram for describing the multi-view codec. Referring to FIG. 40, a sequence of frames of three views captured at three viewpoints is shown. Each view is given a view ID (view_id). Any one of the plurality of views is designated as a base view. Views other than the base view are called non-base views. In the example of FIG. 40, a view with a view ID “0” is a base view, and two views with a view ID “1” or “2” are non-base views.
  • each view may correspond to a layer.
  • the non-base view image is encoded and decoded with reference to the base view image (other non-base view images may also be referred to).
  • FIG. 41 is a block diagram illustrating a schematic configuration of an image encoding device 10v that supports a multi-view codec.
  • the image encoding device 10v includes a first layer encoding unit 1c, a second layer encoding unit 1d, a common memory 2, and a multiplexing unit 3.
  • the function of the first layer encoding unit 1c is equivalent to the function of the BL encoding unit 1a described with reference to FIG. 4 except that it receives a base view image instead of the base layer image as an input.
  • the first layer encoding unit 1c encodes the base view image and generates an encoded stream of the first layer.
  • the function of the second layer encoding unit 1d is the same as the function of the EL encoding unit 1b described with reference to FIG. 4 except that a non-base view image is received instead of the enhancement layer image as an input.
  • the second layer encoding unit 1d encodes the non-base view image and generates a second layer encoded stream.
  • the common memory 2 stores information commonly used between layers.
  • the multiplexing unit 3 multiplexes the encoded stream of the first layer generated by the first layer encoding unit 1c and the encoded stream of the second layer generated by the second layer encoding unit 1d. A multiplexed stream of layers is generated.
  • FIG. 42 is a block diagram illustrating a schematic configuration of an image decoding device 60v that supports a multi-view codec.
  • the image decoding device 60v includes a demultiplexing unit 5, a first layer decoding unit 6c, a second layer decoding unit 6d, and a common memory 7.
  • the demultiplexer 5 demultiplexes the multi-layer multiplexed stream into the first layer encoded stream and the second layer encoded stream.
  • the function of the first layer decoding unit 6c is equivalent to the function of the BL decoding unit 6a described with reference to FIG. 5 except that it receives an encoded stream in which a base view image is encoded instead of a base layer image as an input. It is.
  • the first layer decoding unit 6c decodes the base view image from the encoded stream of the first layer.
  • the function of the second layer decoding unit 6d is the same as the function of the EL decoding unit 6b described with reference to FIG. 5 except that it receives an encoded stream in which a non-base view image is encoded instead of an enhancement layer image. It is equivalent.
  • the second layer decoding unit 6d decodes the non-base view image from the second layer encoded stream.
  • the common memory 7 stores information commonly used between layers.
  • the conversion of the color gamut between views may be controlled according to the technique according to the present disclosure.
  • the technique according to the present disclosure As a result, as in the case of scalable coding, even in a multi-view codec, it is possible to suppress an increase in code amount while achieving high prediction accuracy of color gamut prediction.
  • the technology according to the present disclosure may be applied to a streaming protocol.
  • a streaming protocol For example, in MPEG-DASH (Dynamic Adaptive Streaming over HTTP), a plurality of encoded streams having different parameters such as resolution are prepared in advance in a streaming server. Then, the streaming server dynamically selects appropriate data to be streamed from a plurality of encoded streams in units of segments, and distributes the selected data.
  • prediction of a color gamut between encoded streams may be controlled according to the technique according to the present disclosure.
  • the embodiments of the technology according to the present disclosure have been described in detail with reference to FIGS. 1 to 42.
  • the difference from the past value of the parameter is decoded from the encoded stream.
  • the prediction parameter is calculated using the decoded difference, and the second layer image is predicted using the calculated prediction parameter.
  • the optimal prediction parameter for the prediction (conversion) of the color gamut changes dynamically, it is considered that the change of the parameter value for each frame is small. Therefore, as compared with the method of encoding the prediction parameter value itself, the method of encoding and decoding the difference described above can suppress an increase in the code amount while achieving high prediction accuracy in color gamut scalability.
  • the prediction parameter used for color gamut prediction includes a gain multiplied by a pixel value for each color component of the first layer, and an offset.
  • the optimum values of these gains and offsets do not change greatly from frame to frame. Therefore, it is beneficial to apply the technique for encoding and decoding the difference described above to these gains and offsets.
  • the present invention is not limited to this example, and the difference may be encoded and decoded only for one of the gain and the offset. Also, the difference may be calculated for one of the denominator and numerator corresponding to the gain, or the difference may be calculated for both.
  • the prediction mode parameter indicates the adaptive parameter mode
  • the second layer image is predicted using the prediction parameter calculated using the difference. Therefore, the technology according to the present disclosure can be applied not only to the case where only the adaptive parameter mode is used, but also to the case where the prediction mode is selected from a plurality of prediction mode candidates including the bit shift mode and the fixed parameter mode. It is.
  • a prediction parameter value corresponding to a bit shift amount or a fixed prediction parameter value is used as a basis for the difference even when the prediction mode is different between the previous frame and the latest frame. Can be done. Therefore, the difference between the prediction parameters can be encoded in all the frames other than the head frame while selecting an optimal prediction mode for each frame.
  • prediction mode parameters can be encoded and decoded for each sequence.
  • the complexity of the difference calculation can be reduced.
  • the device can be easily mounted.
  • the amount of codes for the prediction mode parameter can be reduced.
  • the difference between the prediction parameters can be decoded for each slice.
  • optimal color gamut prediction can be performed for each partial area, and encoding efficiency can be increased.
  • the difference between the prediction parameters is decoded from a header having a syntax shared with the weighted prediction related parameters.
  • the redundancy of syntax is reduced, and it becomes easy to ensure compatibility when the encoder and decoder are mounted and upgraded.
  • two versions of the prediction parameter for color gamut prediction are obtained by using both the L0 reference frame portion and the L1 reference frame portion of the syntax of the weighted prediction related parameter. Can be encoded and decoded. In this case, since it is possible to use a color gamut prediction model that is more flexible and has high prediction accuracy, it is possible to improve the coding efficiency of color gamut scalability.
  • a control parameter indicating whether or not the bit shift in the inter-layer prediction should be performed simultaneously with the color gamut conversion can be encoded and decoded.
  • color gamut conversion can be performed before upsampling is performed. In this case, since the number of pixels to be converted by the color gamut conversion decreases, the processing cost of the color gamut conversion can be further reduced.
  • CU, PU, and TU described in this specification mean a logical unit including a syntax associated with each block in HEVC.
  • CB Coding Block
  • PB Prediction Block
  • TB Transform Block
  • the CB is formed by hierarchically dividing a CTB (Coding Tree Block) into a quad-tree shape. An entire quadtree corresponds to CTB, and a logical unit corresponding to CTB is called CTU (Coding Tree Unit).
  • CTB and CB in HEVC are H.264 and H.B. It has a role similar to a macroblock in H.264 / AVC.
  • CTB and CB differ from macroblocks in that their sizes are not fixed (the size of macroblocks is always 16 ⁇ 16 pixels).
  • the CTB size is selected from 16 ⁇ 16 pixels, 32 ⁇ 32 pixels, and 64 ⁇ 64 pixels, and is specified by a parameter in the encoded stream.
  • the size of the CB can vary depending on the division depth of the CTB.
  • the method for transmitting such information is not limited to such an example.
  • these pieces of information may be transmitted or recorded as separate data associated with the encoded bitstream without being multiplexed into the encoded bitstream.
  • the term “associate” means that an image (which may be a part of an image such as a slice or a block) included in the bitstream and information corresponding to the image can be linked at the time of decoding. Means. That is, information may be transmitted on a transmission path different from that of the image (or bit stream).
  • Information may be recorded on a recording medium (or another recording area of the same recording medium) different from the image (or bit stream). Furthermore, the information and the image (or bit stream) may be associated with each other in an arbitrary unit such as a plurality of frames, one frame, or a part of the frame.
  • An image processing apparatus comprising: (2) The image processing apparatus according to (1), wherein the prediction parameter includes a gain multiplied by a pixel value of the first layer and an offset.
  • the decoding unit further decodes a prediction mode parameter indicating a prediction mode, The prediction unit predicts the image of the second layer using the prediction parameter when the prediction mode parameter indicates an adaptive parameter mode;
  • the said decoding part is an image processing apparatus as described in said (3) which decodes the said difference of the said prediction parameter for every slice.
  • the prediction unit predicts the difference decoded by the decoding unit corresponding to the bit shift amount.
  • the prediction unit is configured to determine the difference decoded by the decoding unit as a fixed
  • the decoding unit decodes the difference from a header having a syntax shared with a weighted prediction related parameter.
  • the decoding unit does not decode the weighted prediction related parameter in the second layer, The weighted prediction related parameters of the first layer are reused in the second layer;
  • the image processing apparatus according to (8).
  • a first version of the prediction parameter is calculated using a difference decoded from a portion for the L0 reference frame of the syntax shared with the weighted prediction related parameter;
  • a second version of the prediction parameter is calculated using a difference decoded from a portion for the L1 reference frame of the syntax shared with the weighted prediction related parameter;
  • the prediction unit selectively uses the first version of the prediction parameter and the second version of the prediction parameter to predict an image of the second layer;
  • the image processing apparatus according to (8) or (9).
  • the prediction unit according to (10), wherein a version to be used is selected from the first version of the prediction parameter and the second version of the prediction parameter according to a band to which a pixel value belongs. Image processing device. (12) The image processing apparatus according to (11), wherein the decoding unit further decodes boundary information specifying a boundary value for switching the version to be used. (13) The prediction unit selects a version to be used from among the first version of the prediction parameter and the second version of the prediction parameter according to an image region to which a pixel belongs, according to (10), Image processing device. (14) The image processing apparatus according to (13), wherein the decoding unit further decodes boundary information that specifies an area boundary for switching the version to be used.
  • the decoding unit indicates whether to perform a bit shift for predicting the image of the second layer simultaneously with color gamut conversion Further decoding the control parameters, When the control parameter indicates that the bit shift for predicting the image of the second layer should be performed simultaneously with the color gamut conversion, the prediction unit performs the bit shift instead of upsampling. Run simultaneously with the conversion, The image processing apparatus according to any one of (1) to (14). (16) The image processing apparatus according to (15), wherein the decoding unit decodes the control parameter separately for a luminance component and a color difference component.
  • the prediction unit converts the color gamut of the image of the first layer using the prediction parameter when the spatial resolution of the second layer is higher than the spatial resolution of the first layer.
  • the image processing device according to any one of (1) to (16), wherein the image of the second layer is predicted by upsampling the image.
  • An image processing method including: (19) A prediction unit that predicts the image of the second layer from the image of the first layer referred to when decoding the image of the second layer having a color gamut different from that of the first layer; An encoding unit that encodes a difference from a past value of a prediction parameter used by the prediction unit; An image processing apparatus comprising: (20) The image processing device according to (19), wherein the prediction parameter includes a gain multiplied by a pixel value of the first layer and an offset.
  • the encoding unit further encodes a prediction mode parameter indicating an adaptive parameter mode as a prediction mode when the image of the second layer is predicted based on the difference, (19) or (20) An image processing apparatus according to 1.
  • the image processing device according to (21), wherein the encoding unit encodes the difference of the prediction parameter for each slice.
  • the encoding unit when the latest prediction mode parameter indicates the adaptive parameter mode and the previous prediction mode parameter indicates the bit shift mode, the parameter value corresponding to the bit shift amount from the latest value of the prediction parameter.
  • the encoding unit is configured to use a fixed parameter defined in advance from the latest value of the prediction parameter.
  • the image processing apparatus according to any one of (21) to (23), wherein the difference calculated by subtracting a value is encoded.
  • the image processing device according to (21) or (22), wherein the encoding unit encodes the prediction mode parameter for each sequence.
  • the encoding unit encodes the difference in a header having a syntax shared with a weighted prediction related parameter.
  • the encoding unit does not encode the weighted prediction related parameter in the second layer, The weighted prediction related parameters of the first layer are reused in the second layer;
  • the image processing apparatus according to (26).
  • the prediction unit selectively uses the first version of the prediction parameter and the second version of the prediction parameter to predict the image of the second layer;
  • the encoding unit encodes the difference calculated for the first version of the prediction parameter into a portion for the L0 reference frame of the syntax shared with the weighted prediction related parameter, and Encoding the difference calculated for the second version into a portion for the L1 reference frame of the syntax shared with the weighted prediction related parameters;
  • the image processing apparatus according to (26) or (27).
  • the prediction unit selects a version to be used from the first version of the prediction parameter and the second version of the prediction parameter according to a band to which a pixel value belongs, according to (28), Image processing device.
  • Image processing device (32) The image processing device according to (31), wherein the encoding unit further encodes boundary information for specifying a region boundary for switching the version to be used.
  • the encoding unit should perform a bit shift for predicting the image of the second layer simultaneously with a color gamut conversion when the bit depth of the second layer is larger than the bit depth of the first layer.
  • the image processing apparatus according to any one of (19) to (32), wherein the control parameter indicated is further encoded.
  • the encoding unit encodes the control parameter separately for a luminance component and a color difference component.
  • the prediction unit converts the color gamut of the image of the first layer using the prediction parameter when the spatial resolution of the second layer is higher than the spatial resolution of the first layer.
  • the image processing device according to any one of (19) to (34), wherein the image of the second layer is predicted by up-sampling the image.
  • An image processing method including:

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Image Processing (AREA)

Abstract

【課題】色域スケーラビリティにおいて、高い予測精度を達成しながら符号量の増加を抑制すること。 【解決手段】第1レイヤとは異なる色域を有する第2レイヤの画像を前記第1レイヤの画像から予測する際に使用される予測パラメータの過去の値からの差分を復号する復号部と、前記復号部により復号される前記差分を用いて計算される前記予測パラメータを用いて、前記第1レイヤの画像から前記第2レイヤの画像を予測する予測部と、を備える画像処理装置を提供する。

Description

画像処理装置及び画像処理方法
 本開示は、画像処理装置及び画像処理方法に関する。
 現在、H.264/AVCよりも符号化効率をさらに向上することを目的として、ITU-TとISO/IECとの共同の標準化団体であるJCTVC(Joint Collaboration Team-Video Coding)により、HEVC(High Efficiency Video Coding)と呼ばれる画像符号化方式の標準化が進められている(例えば、非特許文献1参照)。
 HEVCは、MPEG2及びAVC(Advanced Video Coding)などの既存の画像符号化方式と同様、シングルレイヤの符号化のみならず、スケーラブル符号化をも提供する。HEVCのスケーラブル符号化技術を、SHVC(Scalable HEVC)ともいう(例えば、非特許文献2参照)。
 スケーラブル符号化とは、一般には、粗い画像信号を伝送するレイヤと精細な画像信号を伝送するレイヤとを階層的に符号化する技術をいう。スケーラブル符号化において階層化される典型的な属性は、主に次の3種類である。
  -空間スケーラビリティ:空間解像度あるいは画像サイズが階層化される。
  -時間スケーラビリティ:フレームレートが階層化される。
  -SNR(Signal to Noise Ratio)スケーラビリティ:SN比が階層化される。
さらに、標準規格で未だ採用されていないものの、ビット深度スケーラビリティ及びクロマフォーマットスケーラビリティもまた議論されている。
 さらに、非特許文献3において、色域(Color Gamut)を階層化する色域スケーラビリティが議論されている。例えば、高精細(HD)テレビジョンでは、通常、1920×1080画素の画像サイズ、ITU-R BT.709の色域、8ビットのビット深度が使用される。これに対し、超高精細(UHD)テレビジョンでは、4000×2000画素又は8000×4000画素の画像サイズ、ITU-R BT.2020の色域、10ビット又は12ビットのビット深度が使用されることが検討されている。一般には、色域の変換は3次元の画素ベクトルに対する行列演算を要する。しかし、非特許文献3は、BT.709とBT.2020との間の関係を色成分ごとに独立した線型的な関係に近似できることに着目し、ベースレイヤにおいてBT.709、エンハンスメントレイヤにおいてBT.2020がそれぞれ使用される場合に、簡略的な手法でベースレイヤの画素値からエンハンスメントレイヤの画素値を予測することを提案している。
Benjamin Bross, Woo-Jin Han, Gary J. Sullivan, Jens-Rainer Ohm, Gary J. Sullivan, Ye-Kui Wang, Thomas Wiegand, "High Efficiency Video Coding (HEVC) text specification draft 10 (for FDIS & Consent)"(JCTVC-L1003_v4, 2013年1月14-23日) Jianle Chen, el. al, "Description of scalable video coding technology proposal by Qualcomm (configuration 2)"(JCTVC-K0036, 2012年10月10-19日) Louis Kerofsky, el. al, "Color Gamut Scalable Video Coding: New Results"(JCTVC-L0334, 2013年1月14-23日)
 しかしながら、非特許文献3において提案されている手法では、高い予測精度を達成可能な適応パラメータモードにおいて、各色成分についてのゲイン及びオフセットがピクチャごとに符号化されるため、符号量が増加する。ビットシフトモード及び固定パラメータモードでは、追加的な符号化パラメータは発生しないが、予測精度がやや劣る。
 従って、色域スケーラビリティにおいて高い予測精度を達成しながら符号量の増加を抑制することのできる新たな仕組みが提供されることが望ましい。
 本開示によれば、第1レイヤとは異なる色域を有する第2レイヤの画像を前記第1レイヤの画像から予測する際に使用される予測パラメータの過去の値からの差分を復号する復号部と、前記復号部により復号される前記差分を用いて計算される前記予測パラメータを用いて、前記第1レイヤの画像から前記第2レイヤの画像を予測する予測部と、を備える画像処理装置が提供される。
 上記画像処理装置は、典型的には、画像を復号する画像復号装置として実現され得る。
 また、本開示によれば、第1レイヤとは異なる色域を有する第2レイヤの画像を前記第1レイヤの画像から予測する際に使用される予測パラメータの過去の値からの差分を復号することと、復号される前記差分を用いて計算される前記予測パラメータを用いて、前記第1レイヤの画像から前記第2レイヤの画像を予測することと、を含む画像処理方法が提供される。
 また、本開示によれば、第1レイヤとは異なる色域を有する第2レイヤの画像を復号する際に参照される前記第1レイヤの画像から、前記第2レイヤの画像を予測する予測部と、前記予測部により使用される予測パラメータの過去の値からの差分を符号化する符号化部と、を備える画像処理装置が提供される。
 上記画像処理装置は、典型的には、画像を符号化する画像符号化装置として実現され得る。
 また、本開示によれば、第1レイヤとは異なる色域を有する第2レイヤの画像を復号する際に参照される前記第1レイヤの画像から、前記第2レイヤの画像を予測することと、前記第2レイヤの画像を予測するために使用される予測パラメータの過去の値からの差分を符号化することと、を含む画像処理方法が提供される。
 本開示に係る技術によれば、色域スケーラビリティにおいて、高い予測精度を達成しながら符号量の増加を抑制することができる。
スケーラブル符号化について説明するための説明図である。 BT.709及びBT.2020により表現される色域について説明するための説明図である。 JCTVC-L0334により提案されている色域予測のための予測モードを示す表である。 JCTVC-L0334により提案されている予測パラメータのシンタックスについて説明するための第1の説明図である。 JCTVC-L0334により提案されている予測パラメータのシンタックスについて説明するための第2の説明図である。 一実施形態に係る画像符号化装置の概略的な構成を示すブロック図である。 一実施形態に係る画像復号装置の概略的な構成を示すブロック図である。 図4に示したEL符号化部の構成の一例を示すブロック図である。 図6に示した色域予測部の構成の一例を示すブロック図である。 色域予測のための符号化パラメータのシンタックスの一例について説明するための説明図である。 ゲイン及びオフセットの差分の基礎となるパラメータ値について説明するための説明図である。 スライスごとのゲイン及びオフセットの符号化の用途の一例について説明するための説明図である。 重み付け予測関連パラメータの既存のシンタックスについて説明するための説明図である。 画素値が属するバンドに応じた予測パラメータの選択的な使用について説明するための説明図である。 図12を用いて説明した手法によって実現される予測モデルを輝度成分について簡略的に表現するグラフである。 図12を用いて説明した手法に関連するシンタックスの一例について説明するための説明図である。 画素が属する画像領域に応じた予測パラメータの選択的な使用について説明するための説明図である。 図15を用いて説明した手法に関連するシンタックスの一例について説明するための説明図である。 JCTVC-O0194において提案された、インターレイヤ予測の処理コストを抑制するための手法について説明するための第1の説明図である。 JCTVC-O0194において提案された、インターレイヤ予測の処理コストを抑制するための手法について説明するための第2の説明図である。 JCTVC-O0194において提案された、インターレイヤ予測の処理コストを抑制するための手法について説明するための第3の説明図である。 インターレイヤ予測の処理コストを抑制するための新たな手法について説明するための第1の説明図である。 インターレイヤ予測の処理コストを抑制するための新たな手法について説明するための第2の説明図である。 インターレイヤ予測の処理コストを抑制するための新たな手法について説明するための第3の説明図である。 図18A~図18Cを用いて説明した手法に関連するシンタックスの一例について説明するための説明図である。 一実施形態に係る符号化時の概略的な処理の流れの一例を示すフローチャートである。 エンハンスメントレイヤの符号化処理における色域予測処理の流れの第1の例を示すフローチャートである。 エンハンスメントレイヤの符号化処理における色域予測処理の流れの第2の例を示すフローチャートである。 エンハンスメントレイヤの符号化処理における色域予測処理の流れの第3の例を示すフローチャートである。 エンハンスメントレイヤの符号化処理における色域予測処理の流れの第4の例を示すフローチャートである。 既存のインターレイヤ予測の処理順序の一例について説明するための説明図である。 新たなインターレイヤ予測の処理順序の一例について説明するための説明図である。 図5に示したEL復号部の構成の一例を示すブロック図である。 図26に示した色域予測部の構成の一例を示すブロック図である。 一実施形態に係る復号時の概略的な処理の流れの一例を示すフローチャートである。 エンハンスメントレイヤの復号処理における色域予測処理の流れの第1の例を示すフローチャートである。 エンハンスメントレイヤの復号処理における色域予測処理の流れの第2の例を示すフローチャートである。 エンハンスメントレイヤの復号処理における色域予測処理の流れの第3の例を示すフローチャートである。 エンハンスメントレイヤの復号処理における色域予測処理の流れの第4の例を示すフローチャートである。 テレビジョン装置の概略的な構成の一例を示すブロック図である。 携帯電話機の概略的な構成の一例を示すブロック図である。 記録再生装置の概略的な構成の一例を示すブロック図である。 撮像装置の概略的な構成の一例を示すブロック図である。 スケーラブル符号化の用途の第1の例について説明するための説明図である。 スケーラブル符号化の用途の第2の例について説明するための説明図である。 スケーラブル符号化の用途の第3の例について説明するための説明図である。 マルチビューコーデックについて説明するための説明図である。 マルチビューコーデックのための画像符号化装置の概略的な構成を示すブロック図である。 マルチビューコーデックのための画像復号装置の概略的な構成を示すブロック図である。
 以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
 また、以下の順序で説明を行う。
  1.概要
   1-1.スケーラブル符号化
   1-2.色域スケーラビリティ
   1-3.エンコーダの基本的な構成例
   1-4.デコーダの基本的な構成例
  2.一実施形態に係るEL符号化部の構成例
   2-1.全体的な構成
   2-2.色域予測部の詳細な構成
   2-3.シンタックスの例
  3.一実施形態に係る符号化時の処理の流れ
   3-1.概略的な流れ
   3-2.色域予測処理
  4.一実施形態に係るEL復号部の構成例
   4-1.全体的な構成
   4-2.色域予測部の詳細な構成
  5.一実施形態に係る復号時の処理の流れ
   5-1.概略的な流れ
   5-2.色域予測処理
  6.応用例
   6-1.様々な製品への応用
   6-2.スケーラブル符号化の様々な用途
   6-3.その他
  7.まとめ
 <1.概要>
  [1-1.スケーラブル符号化]
 スケーラブル符号化においては、一連の画像をそれぞれ含む複数のレイヤが符号化される。ベースレイヤ(base layer)は、最初に符号化される、最も粗い画像を表現するレイヤである。ベースレイヤの符号化ストリームは、他のレイヤの符号化ストリームを復号することなく、独立して復号され得る。ベースレイヤ以外のレイヤは、エンハンスメントレイヤ(enhancement layer)と呼ばれる、より精細な画像を表現するレイヤである。エンハンスメントレイヤの符号化ストリームは、ベースレイヤの符号化ストリームに含まれる情報を用いて符号化される。従って、エンハンスメントレイヤの画像を再現するためには、ベースレイヤ及びエンハンスメントレイヤの双方の符号化ストリームが復号されることになる。スケーラブル符号化において扱われるレイヤの数は、2つ以上のいかなる数であってもよい。3つ以上のレイヤが符号化される場合には、最下位のレイヤがベースレイヤ、残りの複数のレイヤがエンハンスメントレイヤである。より上位のエンハンスメントレイヤの符号化ストリームは、より下位のエンハンスメントレイヤ又はベースレイヤの符号化ストリームに含まれる情報を用いて符号化され及び復号され得る。
 図1は、スケーラブル符号化される3つのレイヤL1、L2及びL3を示している。レイヤL1はベースレイヤであり、レイヤL2及びL3はエンハンスメントレイヤである。レイヤL2のレイヤL1に対する空間解像度の比は、2:1である。レイヤL3のレイヤL1に対する空間解像度の比は、4:1である。なお、ここでの解像度比は一例に過ぎず、例えば1.5:1などの非整数の解像度比が使用されてもよい。レイヤL1のブロックB1は、ベースレイヤのピクチャ内の符号化処理の処理単位である。レイヤL2のブロックB2は、ブロックB1と共通するシーンを映したエンハンスメントレイヤのピクチャ内の符号化処理の処理単位である。ブロックB2は、レイヤL1のブロックB1に対応する。レイヤL3のブロックB3は、ブロックB1及びB2と共通するシーンを映したより上位のエンハンスメントレイヤのピクチャ内の符号化処理の処理単位である。ブロックB3は、レイヤL1のブロックB1及びレイヤL2のブロックB2に対応する。
  [1-2.色域スケーラビリティ]
 図1に例示したレイヤ構造において、画像のテクスチャは、共通するシーンを映したレイヤ間で類似する。即ち、レイヤL1内のブロックB1、レイヤL2内のブロックB2、及びレイヤL3内のブロックB3のテクスチャは類似する。従って、例えばブロックB1を参照ブロックとして用いてブロックB2又はブロックB3の画素を予測し、又はブロックB2を参照ブロックとして用いてブロックB3の画素を予測すれば、高い予測精度が得られる可能性がある。このようなレイヤ間の予測を、インターレイヤ予測という。非特許文献2では、インターレイヤ予測のためのいくつかの手法が提案されている。それら手法のうち、イントラBL予測では、ベースレイヤの復号画像(リコンストラクト画像)が、エンハンスメントレイヤの復号画像を予測するための参照画像として使用される。イントラ残差予測及びインター残差予測では、ベースレイヤの予測誤差(残差)画像が、エンハンスメントレイヤの予測誤差画像を予測するための参照画像として使用される。
 ここで、例えばレイヤL1の画像がHDテレビジョン画像であり、レイヤL2の画像がUHDテレビジョン画像であるものとする。図2は、BT.709及びBT.2020により表現される色域について説明するための説明図である。図2を参照すると、所定の拘束条件を用いて3次元の色空間を2次元平面へマッピングした色域グラフが示されている。グラフ中の十字マークは、白色がマッピングされる位置を示す。グラフ中の破線は、BT.709が表現することのできる色の範囲を示す。グラフ中の実線は、BT.2020が表現することのできる色の範囲を示す。グラフ中の点線は、人間の視覚が識別することのできる色の範囲を示す。図2から理解されるように、BT.2020は、BT.709よりも多彩な色を表現することができる。レイヤL1の各画素がBT.709で表現され、レイヤL2の各画素がBT.2020で表現される場合、インターレイヤ予測に際して、参照画像(レイヤL1の画像)についての解像度の変換(即ち、アップサンプリング)及び色域の変換が行われる。通常は、色域の変換は、3次元の画素ベクトルに3行3列の変換行列を乗算することにより行われる。しかし、非特許文献3において説明されているように、BT.709とBT.2020との間の関係を、色成分ごとに独立した線型的な関係に近似することができる。そこで、非特許文献3は、色域の変換に要する計算の複雑性及び時間を低減するための簡略化された手法を提案している。
 図3Aは、非特許文献3により提案されている色域予測のための予測モードを示す表である。図3Aを参照すると、予測モードの番号は「0」、「1」及び「2」のいずれかであり、即ち3種類の予測モードの候補が存在する。予測モード番号=「0」の場合、次の式(1)~式(3)ように、ビットシフト(ビットインクリメント)によって各色成分のBT.709の画素値(Y709,U709,V709)からBT.2020の画素値(Y2020,U2020,V2020)が予測される。このような予測モードを、本明細書ではビットシフトモードという。
Figure JPOXMLDOC01-appb-M000001
 予測モード番号=「1」or「2」の場合、次の式(4)~式(6)のように、ゲインg及びオフセットo(i=1,2,3)を用いた線形的な変換によって、各色成分について、BT.709の画素値からBT.2020の画素値が予測される。
Figure JPOXMLDOC01-appb-M000002
 予測モード番号=「1」の場合、ゲイン及びオフセットの値として予め仕様化される固定値が使用される。予測モード番号=「1」の予測モードを、本明細書では固定パラメータモードという。予測モード番号=「2」の場合、ゲイン及びオフセットの値として適応的に指定される可変値が使用される。予測モード番号=「2」の予測モードを、本明細書では適応パラメータモードという。適応パラメータモードが選択される場合、6種類の予測パラメータ(3つのゲイン及び3つのオフセット)が予測パラメータとして追加的に符号化される。
 図3B及び図3Cは、非特許文献3より提案されている予測パラメータのシンタックスについて説明するための説明図である。図3Bの第1行の“pps_extension_flag”は、PPS(Picture Parameter Set)が色域予測のための拡張されたシンタックスを含むか否かを示すフラグである。図3Bの第5行の“color_pred_data()”は、色域スケーラビリティ用のシンタックスの関数であり、その内容は図3Cに示されている。図3Cの第1行の“color_prediction_model”は選択される予測モードを示すパラメータであり、図3Aに例示した「0」、「1」及び「2」のいずれかの値をとる。適応パラメータモード(“color_prediction_model=2”)の場合、第3行においてゲインの分母に対応するビット数(“numFractionBits”)が、第5行においてI番目の色成分についてのゲインの分子(“color_prediction_gain[I]”)が、第6行においてI番目の色成分についてのオフセット(“color_prediction_offset[I]”)がそれぞれ指定される。
 適応パラメータモードは、3通りの予測モードの中で、最も高い予測精度を期待することのできるモードである。しかしながら、適応パラメータモードにおいてピクチャごとに上述した予測パラメータが符号化されるとすれば、符号量が増加する。そこで、以下に説明する実施形態において、符号量の増加を抑制するために、色域スケーラビリティにおけるこれら予測パラメータをより効率的に符号化するための仕組みを説明する。
  [1-3.エンコーダの基本的な構成例]
 図4は、スケーラブル符号化をサポートする、一実施形態に係る画像符号化装置10の概略的な構成を示すブロック図である。図4を参照すると、画像符号化装置10は、ベースレイヤ(BL)符号化部1a、エンハンスメントレイヤ(EL)符号化部1b、共通メモリ2及び多重化部3を備える。
 BL符号化部1aは、ベースレイヤ画像を符号化し、ベースレイヤの符号化ストリームを生成する。EL符号化部1bは、エンハンスメントレイヤ画像を符号化し、エンハンスメントレイヤの符号化ストリームを生成する。共通メモリ2は、レイヤ間で共通的に利用される情報を記憶する。多重化部3は、BL符号化部1aにより生成されるベースレイヤの符号化ストリームと、EL符号化部1bにより生成される1つ以上のエンハンスメントレイヤの符号化ストリームとを多重化し、マルチレイヤの多重化ストリームを生成する。
  [1-4.デコーダの基本的な構成例]
 図5は、スケーラブル符号化をサポートする、一実施形態に係る画像復号装置60の概略的な構成を示すブロック図である。図5を参照すると、画像復号装置60は、逆多重化部5、ベースレイヤ(BL)復号部6a、エンハンスメントレイヤ(EL)復号部6b及び共通メモリ7を備える。
 逆多重化部5は、マルチレイヤの多重化ストリームをベースレイヤの符号化ストリーム及び1つ以上のエンハンスメントレイヤの符号化ストリームに逆多重化する。BL復号部6aは、ベースレイヤの符号化ストリームからベースレイヤ画像を復号する。EL復号部6bは、エンハンスメントレイヤの符号化ストリームからエンハンスメントレイヤ画像を復号する。共通メモリ7は、レイヤ間で共通的に利用される情報を記憶する。
 図4に例示した画像符号化装置10において、ベースレイヤの符号化のためのBL符号化部1aの構成と、エンハンスメントレイヤの符号化のためのEL符号化部1bの構成とは、互いに類似する。BL符号化部1aにより生成され又は取得されるいくつかのパラメータ及び画像は、共通メモリ2を用いてバッファリングされ、EL符号化部1bにより再利用され得る。次節では、そのようなEL符号化部1bの構成について詳細に説明する。
 同様に、図5に例示した画像復号装置60において、ベースレイヤの復号のためのBL復号部6aの構成と、エンハンスメントレイヤの復号のためのEL復号部6bの構成とは、互いに類似する。BL復号部6aにより生成され又は取得されるいくつかのパラメータ及び画像は、共通メモリ7を用いてバッファリングされ、EL復号部6bにより再利用され得る。さらに次の節では、そのようなEL復号部6bの構成について詳細に説明する。
 <2.一実施形態に係るEL符号化部の構成例>
  [2-1.全体的な構成]
 図6は、図4に示したEL符号化部1bの構成の一例を示すブロック図である。図6を参照すると、EL符号化部1bは、並び替えバッファ11、減算部13、直交変換部14、量子化部15、可逆符号化部16、蓄積バッファ17、レート制御部18、逆量子化部21、逆直交変換部22、加算部23、ループフィルタ24、フレームメモリ25、セレクタ26及び27、イントラ予測部30、インター予測部35並びに色域予測部40を備える。
 並び替えバッファ11は、一連の画像データに含まれる画像を並び替える。並び替えバッファ11は、符号化処理に係るGOP(Group of Pictures)構造に応じて画像を並び替えた後、並び替え後の画像データを減算部13、イントラ予測部30、インター予測部35及び色域予測部40へ出力する。
 減算部13には、並び替えバッファ11から入力される画像データ、及び後に説明するイントラ予測部30又はインター予測部35から入力される予測画像データが供給される。減算部13は、並び替えバッファ11から入力される画像データと予測画像データとの差分である予測誤差データを計算し、計算した予測誤差データを直交変換部14へ出力する。
 直交変換部14は、減算部13から入力される予測誤差データについて直交変換を行う。直交変換部14により実行される直交変換は、例えば、離散コサイン変換(Discrete Cosine Transform:DCT)又はカルーネン・レーベ変換などであってよい。HEVCにおいて、直交変換は、TU(変換単位:Transform Unit)と呼ばれるブロックごとに実行される。TUは、CU(符号化単位:Coding Unit)を分割することにより形成されるブロックである。直交変換部14は、直交変換処理により取得される変換係数データを量子化部15へ出力する。
 量子化部15には、直交変換部14から入力される変換係数データ、及び後に説明するレート制御部18からのレート制御信号が供給される。量子化部15は、レート制御信号に従って決定される量子化ステップで変換係数データを量子化する。量子化部15は、量子化後の変換係数データ(以下、量子化データという)を可逆符号化部16及び逆量子化部21へ出力する。
 可逆符号化部16は、量子化部15から入力される量子化データについて可逆符号化処理を行うことにより、エンハンスメントレイヤの符号化ストリームを生成する。また、可逆符号化部16は、符号化ストリームを復号する際に参照される様々なパラメータを符号化して、符号化されたパラメータを符号化ストリームのヘッダ領域に挿入する。可逆符号化部16により符号化されるパラメータは、後に説明するイントラ予測に関する情報及びインター予測に関する情報を含み得る。色域の予測に関連する予測パラメータもまた符号化され得る。そして、可逆符号化部16は、生成した符号化ストリームを蓄積バッファ17へ出力する。
 蓄積バッファ17は、可逆符号化部16から入力される符号化ストリームを半導体メモリなどの記憶媒体を用いて一時的に蓄積する。そして、蓄積バッファ17は、蓄積した符号化ストリームを、伝送路の帯域に応じたレートで、図示しない伝送部(例えば、通信インタフェース又は周辺機器との接続インタフェースなど)へ出力する。
 レート制御部18は、蓄積バッファ17の空き容量を監視する。そして、レート制御部18は、蓄積バッファ17の空き容量に応じてレート制御信号を生成し、生成したレート制御信号を量子化部15へ出力する。例えば、レート制御部18は、蓄積バッファ17の空き容量が少ない時には、量子化データのビットレートを低下させるためのレート制御信号を生成する。また、例えば、レート制御部18は、蓄積バッファ17の空き容量が十分大きい時には、量子化データのビットレートを高めるためのレート制御信号を生成する。
 逆量子化部21、逆直交変換部22及び加算部23は、ローカルデコーダを構成する。逆量子化部21は、量子化部15により使用されたものと同じ量子化ステップで、エンハンスメントレイヤの量子化データを逆量子化し、変換係数データを復元する。そして、逆量子化部21は、復元した変換係数データを逆直交変換部22へ出力する。
 逆直交変換部22は、逆量子化部21から入力される変換係数データについて逆直交変換処理を行うことにより、予測誤差データを復元する。直交変換と同様、逆直交変換は、TUごとに実行される。そして、逆直交変換部22は、復元した予測誤差データを加算部23へ出力する。
 加算部23は、逆直交変換部22から入力される復元された予測誤差データとイントラ予測部30又はインター予測部35から入力される予測画像データとを加算することにより、復号画像データ(エンハンスメントレイヤのリコンストラクト画像)を生成する。そして、加算部23は、生成した復号画像データをループフィルタ24及びフレームメモリ25へ出力する。
 ループフィルタ24は、画質の向上を目的とするフィルタ群を含む。デブロックフィルタ(DF)は、画像の符号化時に生じるブロック歪みを軽減するフィルタである。サンプル適応オフセット(SAO)フィルタは、各画素値に適応的に決定されるオフセット値を加えるフィルタである。適応ループフィルタ(ALF)は、SAO後の画像と原画像との誤差を最小化するフィルタである。ループフィルタ24は、加算部23から入力される復号画像データをフィルタリングし、フィルタリング後の復号画像データをフレームメモリ25へ出力する。
 フレームメモリ25は、加算部23から入力されるエンハンスメントレイヤの復号画像データ、ループフィルタ24から入力されるエンハンスメントレイヤのフィルタリング後の復号画像データ、及び色域予測部40から入力されるベースレイヤの参照画像データを記憶媒体を用いて記憶する。
 セレクタ26は、イントラ予測のために使用されるフィルタリング前の復号画像データをフレームメモリ25から読み出し、読み出した復号画像データを参照画像データとしてイントラ予測部30に供給する。また、セレクタ26は、インター予測のために使用されるフィルタリング後の復号画像データをフレームメモリ25から読み出し、読み出した復号画像データを参照画像データとしてインター予測部35に供給する。さらに、イントラ予測部30又はインター予測部35においてインターレイヤ予測が実行される場合、セレクタ26は、ベースレイヤの参照画像データをイントラ予測部30又はインター予測部35へ供給する。
 セレクタ27は、イントラ予測モードにおいて、イントラ予測部30から出力されるイントラ予測の結果としての予測画像データを減算部13へ出力すると共に、イントラ予測に関する情報を可逆符号化部16へ出力する。また、セレクタ27は、インター予測モードにおいて、インター予測部35から出力されるインター予測の結果としての予測画像データを減算部13へ出力すると共に、インター予測に関する情報を可逆符号化部16へ出力する。セレクタ27は、イントラ予測モードとインター予測モードとを、コスト関数値の大きさに応じて切り替える。
 イントラ予測部30は、エンハンスメントレイヤの原画像データ及び復号画像データに基づいて、HEVCのPU(予測単位:Prediction Unit)ごとにイントラ予測処理を行う。例えば、イントラ予測部30は、予測モードセット内の各候補モードによる予測結果を所定のコスト関数を用いて評価する。次に、イントラ予測部30は、コスト関数値が最小となる予測モード、即ち圧縮率が最も高くなる予測モードを、最適な予測モードとして選択する。また、イントラ予測部30は、当該最適な予測モードに従ってエンハンスメントレイヤの予測画像データを生成する。イントラ予測部30は、エンハンスメントレイヤにおける予測モードセットに、インターレイヤ予測の一種であるイントラBL予測を含めてもよい。イントラBL予測では、エンハンスメントレイヤ内の予測対象ブロックに対応するベースレイヤ内のコロケーテッドブロックが参照ブロックとして使用され、当該参照ブロックの復号画像に基づいて予測画像が生成される。また、イントラ予測部30は、インターレイヤ予測の一種であるイントラ残差予測を含めてもよい。イントラ残差予測では、ベースレイヤ内のコロケーテッドブロックである参照ブロックの予測誤差画像に基づいてイントラ予測の予測誤差が予測され、予測された予測誤差の加算された予測画像が生成される。イントラ予測部30は、選択した最適な予測モードを表す予測モード情報を含むイントラ予測に関する情報、コスト関数値、及び予測画像データを、セレクタ27へ出力する。
 インター予測部35は、エンハンスメントレイヤの原画像データ及び復号画像データに基づいて、HEVCのPUごとにインター予測処理を行う。例えば、インター予測部35は、予測モードセット内の各候補モードによる予測結果を所定のコスト関数を用いて評価する。次に、インター予測部35は、コスト関数値が最小となる予測モード、即ち圧縮率が最も高くなる予測モードを、最適な予測モードとして選択する。また、インター予測部35は、当該最適な予測モードに従ってエンハンスメントレイヤの予測画像データを生成する。インター予測部35は、エンハンスメントレイヤにおける予測モードセットに、インターレイヤ予測の一種であるインター残差予測を含めてもよい。インター残差予測では、ベースレイヤ内のコロケーテッドブロックである参照ブロックの予測誤差画像に基づいてインター予測の予測誤差が予測され、予測された予測誤差の加算された予測画像が生成される。インター予測部35は、選択した最適な予測モードを表す予測モード情報と動き情報とを含むインター予測に関する情報、コスト関数値、及び予測画像データを、セレクタ27へ出力する。
 色域予測部40は、共通メモリ2によりバッファリングされるベースレイヤの画像(復号画像又は予測誤差画像)を、ベースレイヤとエンハンスメントレイヤとの間の解像度比に従ってアップサンプリングする。また、色域予測部40は、ベースレイヤの画像とは異なる色域をエンハンスメントレイヤの画像が有する場合に、アップサンプリングしたベースレイヤの画像の色域を、エンハンスメントレイヤの画像と同等の色域に変換する。本実施形態において、色域予測部40は、ベースレイヤ及びエンハンスメントレイヤの色域の間の色成分ごとに独立した線型的な関係を前提とし、ベースレイヤの画像からエンハンスメントレイヤの画像を近似的に予測することにより、色域を変換する。色域予測部40により色域の変換されたベースレイヤの画像は、フレームメモリ25に格納され、イントラ予測部30又はインター予測部35により、インターレイヤ予測において参照画像として使用され得る。また、色域予測部40は、色域の予測のために使用されるいくつかのパラメータを生成する。色域予測部40により生成されるパラメータは、例えば、予測モードを示す予測モードパラメータを含む。また、予測モードとして適応パラメータモードが選択される場合には、色域予測部40により生成されるパラメータは、色成分ごとの予測パラメータ、即ちゲイン及びオフセットを含む。色域予測部40は、さらに予測パラメータの過去の値からの差分を計算し、計算した差分を可逆符号化部16へ出力する。予測モードパラメータ及び予測パラメータの差分は、可逆符号化部16により符号化され得る。
  [2-2.色域予測部の詳細な構成]
 図7は、図6に示した色域予測部40の構成の一例を示すブロック図である。図7を参照すると、色域予測部40は、アップサンプリング部41、予測モード設定部42、パラメータ計算部43及び色域変換部44を有する。
   (1)アップサンプリング部
 アップサンプリング部41は、共通メモリ2から取得されるベースレイヤの画像を、ベースレイヤとエンハンスメントレイヤとの間の解像度比に従ってアップサンプリングする。より具体的には、アップサンプリング部41は、解像度比に応じて順に走査される補間画素の各々について、予め定義されるフィルタ係数でベースレイヤの画像をフィルタリングすることにより補間画素値を計算する。それにより、参照ブロックとして使用されるベースレイヤの画像の空間解像度が、エンハンスメントレイヤと同等の解像度まで高められる。アップサンプリング部41は、アップサンプリング後の画像をパラメータ計算部43及び色域変換部44へ出力する。
   (2)予測モード設定部
 予測モード設定部42は、色域予測のための予測モードの候補のうち、予め定義され又は動的に選択される予測モードを、色域予測部40に設定する。予測モードの候補は、上述したビットシフトモード、固定パラメータモード及び適応パラメータモードを含み得る。ある実施例において、予測モード設定部42は、ピクチャごとに最適な予測モードを設定し得る。他の実施例において、予測モード設定部42は、スライスごとに最適な予測モードを設定し得る。1つのピクチャは、1つ以上のスライスを有し得る。また別の実施例において、予測モード設定部42は、シーケンスごとに予測モードを設定し、1つのシーケンス内の複数のピクチャ及び複数のスライスにわたって同じ予測モードを維持し得る。予測モード設定部42は、予測モードの各候補について符号化効率又は予測精度を評価し、最適な予測モードを選択してもよい。予測モード設定部42は、設定した予測モードを示す予測モードパラメータを、可逆符号化部16へ出力する。
   (3)パラメータ計算部
 パラメータ計算部43は、予測モード設定部42により適応パラメータモードが設定された場合に、又は予測モード設定部42により適応パラメータモードの符号化効率若しくは予測精度が評価される場合に、適応パラメータモードにおいて使用されるべき予測パラメータを計算する。当該予測パラメータは、式(4)~式(6)に示したゲインg及びオフセットo(i=1,2,3)を含む。ここで、下付き文字のiは、3種類の色成分の各々を意味する。ゲインgは、ベースレイヤの画素値に乗算される係数である。オフセットoは、ベースレイヤの画素値とゲインgとの積に加算される数値である。パラメータ計算部43は、例えば、アップサンプリング部41から入力されるアップサンプリング後のベースレイヤの画像を並び替えバッファ11から入力される原画像に最も近付けることのできるようなゲイン及びオフセットを、色成分ごとに計算し得る。
 さらに、パラメータ計算部43は、予測モード設定部42により予測モードとして適応パラメータモードが設定された場合に、ゲイン及びオフセットの過去の値からの差分を計算する。ここでの過去の値とは、例えば、ピクチャごとにゲイン及びオフセットが計算される場合には、前回のピクチャについて計算された値であってよい。スライスごとにゲイン及びオフセットが計算される場合には、前回のピクチャの同じ位置のスライス(co-located slice)について計算された値であってよい。パラメータ計算部43は、前回のピクチャ又は前回のピクチャの同じ位置のスライスにビットシフトモードが設定された場合には、ビットシフト量に対応するゲイン及びオフセットの値を差分の基礎として使用し得る。また、パラメータ計算部43は、前回のピクチャ又は前回のピクチャの同じ位置のスライスに固定パラメータモードが設定された場合には、予め定義される固定的なゲイン及びオフセットの値を差分の基礎として使用し得る。パラメータ計算部43は、計算したゲイン及びオフセットの差分を、可逆符号化部16へ出力する。なお、ゲインの値は、小数値を含み得る。そこで、予測モード設定部42は、ゲインの値を分母及び分子に分解し、分母及び分子の差分をそれぞれ計算して可逆符号化部16へ出力してよい。また、予測モード設定部42は、符号化効率を高め及び計算コストを低減するために、ゲインの分母の値を2の整数乗のみに制限してもよい。この場合、分母の値の2を底とする対数が、予測パラメータとして使用されてもよい。
   (4)色域変換部
 色域変換部44は、予測モード設定部42により設定される予測モードに従って、アップサンプリング部41から入力されるアップサンプリング後のベースレイヤの画像の色域を、エンハンスメントレイヤの画像と同等の色域に変換する。例えば、色域変換部44は、ビットシフトモードが設定された場合には、式(1)~式(3)に従って、アップサンプリング後のベースレイヤの画素値を所定のビットシフト量nshiftだけ左方へシフトさせることにより、予測画素値を計算する。ビットシフト量nshiftは、例えばHDテレビジョン画像からUHDテレビジョン画像への変換の場合には、2又は4であってよい。また、色域変換部44は、固定パラメータモードが設定された場合には、式(4)~式(6)に従って、アップサンプリング後のベースレイヤの画素値に固定的なゲインを乗算し、さらに固定的なオフセットを加算することにより、予測画素値を計算する。また、色域変換部44は、適応パラメータモードが設定された場合には、固定的なゲイン及びオフセットの代わりに、パラメータ計算部43により適応的に計算されるゲイン及びオフセットを用いて、予測画素値を計算する。それにより、インターレイヤ予測のための参照画像が生成される。色域変換部44は、このように生成されるインターレイヤ予測のための参照画像(色域の変換されたベースレイヤの画像)を、フレームメモリ25に格納する。
  [2-3.シンタックスの例]
   (1)基本的な例
 予測モード設定部42から出力される予測モードパラメータ及びパラメータ計算部43から出力される予測パラメータ(色成分ごとのゲイン及びオフセット)の差分は、図6に示した可逆符号化部16により符号化され、エンハンスメントレイヤの符号化ストリームに挿入され得る。図8は、色域予測のためのこれら符号化パラメータのシンタックスの一例について説明するための説明図である。
 図8に示したシンタックスは、例えばPPSに含まれてもよく、又はスライスヘッダに含まれてもよい。シンタックスの第1行の“color_gamut_prediction_flag”は、当該PPS又は当該スライスヘッダが色域予測のための拡張されたシンタックスを含むか否かを示すフラグである。第3行の“color_prediction_model”は、予測モード設定部42により設定された予測モードを示す予測モードパラメータである。図3Aを用いて説明したように、予測モードパラメータが「0」に等しい場合、予測モードはビットシフトモードである。予測モードパラメータが「1」に等しい場合、予測モードは固定パラメータモードである。予測モードパラメータが「2」に等しい場合、予測モードは適応パラメータモードである。なお、これら例に限定されず、他の種類の予測モードが採用されてもよい。第5行以降の予測パラメータは、予測モードパラメータが適応パラメータモードを示す場合に符号化される。第10行の“delta_luma_log2_gain_denom”は、輝度成分のゲインの分母の値の2を底とする対数の、過去の値からの差分である。第11行の“delta_luma_gain_color_gamut”は、輝度成分のゲインの分子の値の、過去の値からの差分である。第12行の“delta_luma_offset_color_gamut”は、輝度成分のオフセットの値の、過去の値からの差分である。なお、第5行の“luma_gain_color_gamut_flag”がゼロを示す場合、これら輝度成分の予測パラメータの差分の符号化は省略されてよい。この場合、予測パラメータの過去の値がそのまま最新のピクチャ又はスライスにおいても使用され得る(即ち、差分ゼロ)。第15行の“delta_chroma_log2_gain_denom”は、色差成分のゲインの分母の値の2を底とする対数の、過去の値からの差分である。なお、図8では2つの色差成分について共通の分母が使用される例を示しているが、2つの色差成分について別個の分母が使用されてもよく、又は輝度成分のゲインの分母と色差成分のゲインの分母とが共通化されてもよい。第17行の“delta_chroma_gain_color_gamut[j]”は、j番目(j=1,2)の色差成分のゲインの分子の値の、過去の値からの差分である。第18行の“delta_chroma_offset_color_gamut[j]”は、j番目の色差成分のオフセットの値の、過去の値からの差分である。なお、第7行の“chroma_gain_color_gamut_flag”がゼロを示す場合、これら色差成分の予測パラメータの差分の符号化は省略されてよい。この場合、予測パラメータの過去の値がそのまま最新のピクチャ又はスライスにおいても使用され得る(即ち、差分ゼロ)。
 図8の例では、PPS又はスライスヘッダごとに予測モードパラメータ“color_prediction_model”が符号化される。この場合、最新のピクチャ又はスライスの予測モードパラメータが適応パラメータモードを示す場合であっても、差分の基礎となる前回のピクチャ又は前回のピクチャの同じ位置のスライスについて、予測モードパラメータが適応パラメータモードを示していたとは限らない。例えば、前回の予測モードパラメータがビットシフトモードを示す場合、図8のシンタックスにおいて“delta_”というプレフィックスの付された差分パラメータは、予測パラメータの最新の値(ゲイン又はオフセット)からビットシフト量に対応するパラメータ値を減算することにより計算される差分をそれぞれ表す。例えば、ビットシフト量nshiftが2に等しい場合には、対応するゲインの値は、2=4である。ビットシフト量nshiftに関わらず、対応するオフセットの値はゼロであってよい。また、前回の予測モードパラメータが固定パラメータモードを示す場合、図8のシンタックスにおける差分パラメータは、予測パラメータの最新の値(ゲイン又はオフセット)から固定的なパラメータ値(ゲインgi_fixed又はオフセットoi_fixed)を減算することにより計算される差分をそれぞれ表す。ゲインgi_fixed及びオフセットoi_fixedは、符号化されず、エンコーダ及びデコーダにおいて予め記憶される。前回の予測モードパラメータが適応パラメータモードを示す場合、図8のシンタックスにおける差分パラメータは、予測パラメータの最新の値(ゲイン又はオフセット)から前回のパラメータ値(ゲインgi_prev又はオフセットoi_prev)を減算することにより計算される差分をそれぞれ表す。図9は、ここで説明したゲイン及びオフセットの差分の基礎を、表形式で示している。なお、シーケンスの先頭などにおいて、過去の値が存在しない場合には、差分の基礎は、ゼロであってもよく又は固定的なパラメータ値(ゲインgi_fixed若しくはオフセットoi_fixed)であってもよい。
   (2)シーケンスごとの予測モードパラメータの符号化
 なお、図8の第1行の拡張フラグ“color_gamut_prediction_flag”及び第3行の予測モードパラメータ“color_prediction_model”は、シーケンスごとに符号化され、SPS(Sequence Parameter Set)に挿入されてもよい。この場合、1つのシーケンス内では同じ予測モードが維持される。1つのシーケンス内で予測モードが変更されなければ、図9に例示したような前回の予測モードに依存する差分の基礎の切替えが不要となるため、差分計算の複雑さが緩和され、装置の実装が容易となる。また、拡張フラグ及び予測モードパラメータのための符号量を削減することもできる。
   (3)スライスごとの予測パラメータの符号化
 図3B及び図3Cを用いて説明したように、既存の手法において、色域予測のための予測モードパラメータ及び予測パラメータは、ピクチャごとに符号化され、PPSへ挿入される。しかし、画像の部分領域ごとに異なる色域が使用される用途を想定すると、予測モードパラメータ及び予測パラメータの差分をスライスごとに符号化することが有益である。例えば、図10に示した例において、ベースレイヤ画像IMB1は、4つのタイルTB1、TB2、TB3及びTB4に分割される。エンハンスメントレイヤ画像IME1は、4つのタイルTE1、TE2、TE3及びTE4に分割される。4つのタイルは、それぞれ異なるカメラにより撮像される映像を映し出す。例えば、ベースレイヤ画像IMB1は4つの地点に設置されるカメラからの合成映像の低解像度バージョンであり、エンハンスメントレイヤ画像IME1は同じ合成映像の高解像度バージョンであり得る。そして、例えばタイルTE2及びタイルTE4は色域としてBT.2020を使用し、その他のベースレイヤ及びエンハンスメントレイヤのタイルは色域としてBT.709を使用するものとする。この場合、タイルTE2及びタイルTE4に相当するスライスのスライスヘッダにおいてそれぞれ予測モードパラメータ及び予測パラメータを符号化することにより、タイルごとに最適な色域予測を可能とし、符号化効率を高めることができる。
   (4)重み付け予測のためのシンタックスの再利用
 図8に例示した色域予測の予測パラメータのシンタックスは、HEVCにおいて導入される重み付け予測(Weighted Prediction)に関連するパラメータのシンタックスに類似する。重み付け予測は、フェードイン及びフェードアウトなどのエフェクトが適用される映像についてインター予測の予測精度を改善するために導入される技術である。図11は、重み付け予測関連パラメータについて非特許文献1により定義されているシンタックスを示している。
 図11の第2行の“luma_log2_weight_denom”及び第4行の“delta_chroma_log2_weight_denom”は、それぞれ輝度成分及び色差成分の重みの分母の値を、重み付け予測において使用され得るL0参照フレーム及びL1参照フレームについて共通的に特定する。第5行から第20行は、L0参照フレームについての残りの重み付け予測関連パラメータを特定する。第21行から第38行は、双予測(bi-prediction)が可能である場合に、L1参照フレームについての残りの重み付け予測関連パラメータを特定する。なお、個々のパラメータの意味は非特許文献1に記載されている。
 次の表1は、図11に示した重み付け予測関連パラメータと、図8に例示した色域予測のパラメータとの間のマッピングの一例を示している。表1から理解されるように、図8に例示した色域予測のパラメータのうち、拡張フラグ“color_gamut_prediction_flag”及び予測モードパラメータ“color_prediction_model”以外の全てのパラメータは、重み付け予測のためのいずれかのパラメータにマッピング可能である。個々のパラメータの役割は例えば重み付け予測関連パラメータの値が必ずしも過去の値からの差分を意味しない点で相違し得るものの、互いにマッピングされるパラメータの型は同等である。色域予測では参照フレームが1つのみ(ベースレイヤ画像)であるため、参照フレーム番号に相当する引数i及び変数“num_ref_idx_l0_active_minus1”は不要となる。
Figure JPOXMLDOC01-appb-T000003
 そこで、ある実施例において、可逆符号化部16は、例えば、重み付け予測関連パラメータと共用されるシンタックスを有するヘッダ(スライスヘッダ)内に、色域予測の予測パラメータの差分を符号化してもよい。それにより、新たなシンタックスを定義することが不要となり、シンタックスの冗長性が低減され、エンコーダ及びデコーダの実装及びバージョンアップの際の互換性の確保が容易となる。なお、拡張フラグ“color_gamut_prediction_flag”及び予測モードパラメータ“color_prediction_model”は、SPS、PPS又はスライスヘッダにおいて別途符号化され得る。また、重み付け予測関連パラメータ及び色域予測のためのパラメータのいずれが符号化されているかを示すフラグが追加的に符号化されてもよい。
 なお、フェードイン及びフェードアウトなどのエフェクトは、通常、ベースレイヤ及びエンハンスメントレイヤの双方に同じように適用される。従って、符号化効率を高めるために、レイヤ間で重み付け予測関連パラメータを再利用することが有益である。エンハンスメントレイヤにおいてベースレイヤの重み付け予測関連パラメータが再利用される場合、可逆符号化部16は、エンハンスメントレイヤ固有の重み付け予測関連パラメータを符号化しない。この場合、非特許文献1により定義されている図11のシンタックスは、エンハンスメントレイヤにおいて重み付け予測のために使用されない。そこで、重み付け予測関連パラメータの代わりに、同じシンタックスで色域予測の予測パラメータの差分を符号化することにより、シンタックスの定義を効率的に活用することができる。この場合、L1参照フレームのパラメータのためのシンタックス(図11の第21行から第38行)は使用されなくてよい。また、参照フレーム数(マイナス1)に対応する変数“num_ref_idx_l0_active_minus1”の値は、ゼロである(即ち、色域を変換すべきベースレイヤ画像の数が1である)と見なされてよい。
 また、別の実施例において、エンハンスメントレイヤでも重み付け予測関連パラメータが符号化され、その一部が色域予測のために再利用されてもよい。例えば、輝度成分及び色差成分のゲインの分母として、図11に示した“luma_log2_weight_denom”及び“delta_chroma_log2_weight_denom”により特定される分母が再利用され得る。この場合、可逆符号化部16は、図8に示した“delta_luma_log2_gain_denom”及び“delta_chroma_log2_gain_denom”を符号化しない。それにより、色域予測のために追加的に必要とされる符号量を削減し、符号化効率を高めることができる。
   (5)予測パラメータの2つのバージョンの提供
 前項では、重み付け予測関連パラメータのシンタックスを色域予測の予測パラメータのために再利用する際に、L1参照フレームのパラメータのためのシンタックスは使用されなくてもよいと説明した。しかしながら、ある変形例において、L0参照フレームの及びL1参照フレームのパラメータのためのシンタックスの双方を再利用して、色域予測の予測パラメータの2つのバージョンが提供されてもよい。
 例えば、色域予測部40のパラメータ計算部43は、予測モード設定部42により適応パラメータモードが設定され又は適応パラメータモードの符号化効率若しくは予測精度が評価される場合に、ゲインg及びオフセットo(i=1,2,3)の第1のバージョンを計算する。また、パラメータ計算部43は、ゲインg及びオフセットo(i=1,2,3)の第2のバージョンも計算する。そして、色域変換部44は、エンハンスメントレイヤの画像を予測するために、即ちインターレイヤ予測のための参照画像を生成するために、これら予測パラメータの第1のバージョン及び第2のバージョンを選択的に使用する。さらに、パラメータ計算部43は、予測パラメータの第1のバージョンについての過去の値からの差分と、予測パラメータの第2のバージョンについての過去の値からの差分とを計算してもよい。可逆符号化部16は、第1のバージョンについて計算される差分を、重み付け予測関連パラメータと共用されるシンタックスのL0参照フレーム用の部分へ符号化する。また、可逆符号化部16は、第2のバージョンについて計算される差分を、重み付け予測関連パラメータと共用されるシンタックスのL1参照フレーム用の部分へ符号化する。
 以下、エンハンスメントレイヤの画像を予測する際に使用すべきバージョンを切り替えるための2つの例示的な手法について説明する。
    (5-1)第1の手法
 第1の手法において、予測パラメータの第1のバージョン及び第2のバージョンは、画素値が属するバンドに応じて選択的に使用される。ここでの画素値のバンドとは、限定ではないものの、輝度成分については明るさ、色差成分については鮮やかさに相当し得る。
 図12は、画素値が属するバンドに応じた予測パラメータの選択的な使用について説明するための説明図である。図12には、輝度成分(Y)及び色差成分(Cb/Cr)の画素値のレンジを表現する2本のバーが示されており、ビット深度が8ビットである場合にはこれらレンジは0から255までである。輝度成分のレンジは、境界値を基準に下側のバンドPb11及び上側のバンドPb12に区分されており、図12の例では輝度成分の境界値は128(即ち、レンジの中央)に等しい。そして、色域変換部44は、(例えば、アップサンプリング画像の)輝度成分の画素値がバンドPb11に属する場合には、当該画素値から予測画素値を計算する際に、予測パラメータの第1のバージョンを使用し得る。また、色域変換部44は、輝度成分の画素値がバンドPb12に属する場合には、当該画素値から予測画素値を計算する際に、予測パラメータの第2のバージョンを使用し得る。また、色差成分のレンジは、2つの境界値を基準に内側のバンドPb21及び外側のバンドPb22に区分されており、図12の例では色差成分の境界値は64及び191(即ち、レンジの1/4の値及び3/4の値)に等しい。そして、色域変換部44は、(例えば、アップサンプリング画像の)色差成分の画素値がバンドPb21に属する場合には、当該画素値から予測画素値を計算する際に、予測パラメータの第1のバージョンを使用し得る。また、色域変換部44は、色差成分の画素値がバンドPb22に属する場合には、当該画素値から予測画素値を計算する際に、予測パラメータの第2のバージョンを使用し得る。
 使用すべきバージョンの切替えのための上記境界値は、予めエンコーダ及びデコーダの双方にとって既知であってもよい。その代わりに、可逆符号化部16は、上記境界値を特定する境界情報をさらに符号化してもよい。境界情報は、例えば、輝度成分について、レンジの中央の基準値(例えば、ビット深度が8ビットであれば128)に加算される輝度成分用の調整値を示し得る。また、境界情報は、色差成分について、レンジの1/4に等しい第1の基準値から減算され及びレンジの3/4に等しい第2の基準値に加算される、色差成分用の調整値を示し得る。
 図13は、第1の手法によって実現される予測モデルを輝度成分について簡略的に表現するグラフである。図13のグラフの横軸はベースレイヤの輝度成分の画素値に対応し、当該画素値は例えばBT.709で表現される。縦軸はエンハンスメントレイヤの輝度成分の画素値に対応し、当該画素値は例えばBT.2020で表現される。太線は、ベースレイヤの画素値から適応パラメータモードのゲイン及びオフセットを用いて予測されるエンハンスメントレイヤの予測画素値の軌跡を示している。この軌跡は、横軸上の境界値Yborderの左側のバンドPb11及び右側のバンドP12において、異なる傾きと切片とを有し、折れ線状を呈する。このような折れ線状の軌跡を描く予測モデルが利用可能となれば、予測モデルが完全に線形(即ち、直線状の軌跡)である既存の手法と比較して、色域予測の予測誤差を低減し、符号化効率を向上させることが可能となる。境界値Yborderは、ベースレイヤの輝度成分の画素値の最大値Ymaxの半分(Ymax/2)に等しくてもよく、Ymax/2に調整値dYを加算した値に等しくてもよい。調整値dYの追加的な符号化は、境界値Yborderが適応的に制御され得ることを意味する。この場合、色域予測の予測モデルの柔軟性が拡張される結果として、予測精度を一層高めることが可能となる。
 図14は、図12を用いて説明した手法に関連するシンタックスの一例について説明するための説明図である。図14に示したシンタックスにおける行番号は、図11に示した重み付け予測関連パラメータのシンタックスの行番号に対応する。なお、重み付け予測関連パラメータのシンタックスのうちのL1参照フレームのパラメータのための部分は、説明の簡明さのために図から省略されている。図14を参照すると、第2行の後に、追加的なフラグ“inter_layer_pred_flag”が定義されている。当該フラグ“inter_layer_pred_flag”は、このシンタックスが色域予測パラメータのために利用される場合に真(True)に設定される。第13行の後のパラメータ“delta_pix_value_luma[i]”は、輝度成分についての上述した境界情報である。一例として、パラメータ“delta_pix_value_luma[i]”は、輝度成分について、レンジの中央の基準値に加算される輝度成分用の調整値を特定する。第18行の後のパラメータ“delta_pix_value_chroma[i][j]”は、色差成分についての上述した境界情報である。一例として、パラメータ“delta_pix_value_chroma[i][j]”は、色差成分について、レンジの1/4に等しい第1の基準値から減算され及びレンジの3/4に等しい第2の基準値に加算される、色差成分用の調整値を特定する。なお、図14に示したこれら追加的なパラメータは、スライスヘッダではなくスライスヘッダの拡張(extension)に含まれてもよい。
    (5-2)第2の手法
 第2の手法において、予測パラメータの第1のバージョン及び第2のバージョンは、画素が属する画像領域に応じて選択的に使用される。ここでの画像領域とは、ピクチャ、スライス又はタイルをセグメント化することにより形成され得る個々の領域に相当し得る。
 図15は、画素が属する画像領域に応じた予測パラメータの選択的な使用について説明するための説明図である。図15を参照すると、画像IMが示されている。画像IMは、例えばアップサンプリング部41から出力され得るアップサンプリング画像であってよい。画像IMは、上方の画像領域PA1及び下方の画像領域PA2にセグメント化されている。色域変換部44は、例えば画像領域PA1に属する画素について予測画素値を計算する際に予測パラメータの第1のバージョンを使用し、画像領域PA2に属する画素について予測画素値を計算する際に予測パラメータの第2のバージョンを使用し得る。
 使用すべきバージョンの切替えのための領域境界は、予めエンコーダ及びデコーダの双方にとって既知であってもよい(例えば、ピクチャ、スライス又はタイルを2つに等分する境界、など)。その代わりに、可逆符号化部16は、上記領域境界を特定する境界情報をさらに符号化してもよい。境界情報は、例えば、ラスタスキャン順で領域境界の後に続く最初のLCU(図中のLCU Lborder)を指定する情報であってもよい。領域境界の後に続く最初のLCUは、ピクチャ、スライス又はタイルの所定の場所からカウントされるLCUの数で指定されてもよく、又は当該最初のLCUのヘッダに含められるフラグで指定されてもよい。前者の場合における所定の場所とは、ピクチャ、スライス若しくはタイルの先頭であってもよく、又はそれらの中間点(例えば、総LCU数のちょうど半分の場所)であってもよい。後者の場合には、1ビットのフラグのみを符号化パラメータに追加するだけで、2つのバージョンの予測パラメータの切替えのための領域境界を適応的に制御することが可能となる。なお、HEVCの既存の仕様において、スライスのサイズを直接的に示すサイズ情報は符号化されない。よって、デコーダは、通常、スライスを復号している最中に(当該スライスの復号が完了する前に)当該スライスのサイズを認識しない。従って、領域境界を特定する境界情報を追加的に符号化することは、領域境界が固定的(例えば、スライスを2つに等分する境界、など)であるケースでも有益である。
 図16は、図15を用いて説明した手法に関連するシンタックスの一例について説明するための説明図である。図16に示したシンタックスにおける行番号は、図11に示した重み付け予測関連パラメータのシンタックスの行番号に対応する。なお、重み付け予測関連パラメータのシンタックスのうちのL1参照フレームのパラメータのための部分は、説明の簡明さのために図から省略されている。図16を参照すると、第2行の後に、図14に示したものと同様の追加的なフラグ“inter_layer_pred_flag”が定義されている。当該フラグ“inter_layer_pred_flag”は、このシンタックスが色域予測パラメータのために利用される場合に真(True)に設定される。当該フラグの後のパラメータ“delta_num_ctb”は、上述した境界情報である。パラメータ“delta_num_ctb”は、ラスタスキャン順で領域境界の後に続く最初のLCUを、LCUの数で指定する情報である。LCUの数がピクチャ、スライス又はタイルの中間点からカウントされる場合には、パラメータ“delta_num_ctb”は正又は負の整数を示し得る。なお、図16に示したこれら追加的なパラメータもまた、スライスヘッダではなくスライスヘッダの拡張(extension)に含まれてもよい。
 このように画像領域ごとに異なるバージョンの予測パラメータが利用可能となれば、それぞれの画像領域において最適な予測モデルを色域予測に適用することが可能となる。例えば風景画像中の青空領域とそれ以外の領域とで、ゲイン及びオフセットの最適な組合せは異なる。そのような場合に、領域ごとに最適化されたゲイン及びオフセットを色域予測のために使用することで、色域予測の予測誤差を低減し、符号化効率を向上させることができる。領域境界を特定する境界情報の追加的な符号化は、領域境界の場所が適応的に制御され得ることを意味する。この場合、画像の内容に合わせて領域境界を移動させて色域予測の予測誤差をより一層低減することが可能となる。
    (5-3)色成分ごとの制御
 一変形例において、予測パラメータの2つのバージョンを提供するという本項で述べた手法は、輝度成分にのみ適用され、色差成分には適用されなくてもよい。この場合、色差成分の色域予測のために、画素値が属するバンド又は画素が属する画像領域に関わらず、重み付け予測関連パラメータのシンタックスのうちのL0参照フレームのための部分に符号化され及び当該部分から復号され得る予測パラメータ(典型的には、ゲイン及びオフセット)が利用される。L1参照フレームのための部分に含まれる色差成分についてのパラメータは、可変長符号化によって最も短い符号語にマッピングされ得る任意の値(例えばゼロ)に設定されてよい(その値は、色差成分の色域予測において無視され得る)。一般的に、主観的な画質への色差成分の寄与は輝度成分の寄与と比較してより小さいため、このように色差成分の色域予測の精度を選択的に抑制することで、わずかな画質の犠牲を伴うだけで予測パラメータの符号量を削減することができる。
 また、色差成分の解像度が輝度成分の解像度と等しいことをクロマフォーマットが示す場合には輝度成分及び色差成分の双方について予測パラメータの2つのバージョンが提供され、色差成分の解像度が輝度成分の解像度よりも低いことをクロマフォーマットが示す場合には色差成分について予測パラメータの1つのバージョンのみが提供されてもよい。例えば、クロマフォーマットが4:2:0の場合、色差成分の解像度は、垂直方向及び水平方向の双方において輝度成分よりも低い。クロマフォーマットが4:2:2の場合、色差成分の解像度は、水平方向において輝度成分よりも低い。これらケースでは、色域予測の予測精度の低下が符号化効率に与える影響は、輝度成分と比較してより小さい。よって、これらケースにおいて色差成分についてのみ色域予測をより粗く実行することで、予測パラメータの符号量を効果的に低減することができる。
   (6)ビットシフトを実行するタイミングの制御
 上述したように、高精細(HD)テレビジョンと超高精細(UHD)テレビジョンとの間では、画像サイズ、色域及びビット深度が異なる。これら3つの属性を変換する処理がそれぞれ別個に実行されるとすれば、インターレイヤの処理全体のために要する処理コストは非常に大きくなる。そこで、JCTVC-O0194(“SCE4: Test 5.1 results on bit-depth and color-gamut scalability”,Alireza Aminlou, el. al, 2013年10月23-11月1日)は、アップサンプリングのフィルタ演算の中にビットシフト演算を組み込むことで、処理コストを抑制することを提案している。
 図17A~図17Cは、JCTVC-O0194において提案された手法について説明するための説明図である。図17Aの例において、ベースレイヤの画像サイズは2K(例えば、1920×1080画素)、色域はBT.709、ビット深度は8ビットである。エンハンスメントレイヤの画像サイズは4K(例えば、3840×2160画素)、色域はBT.2020、ビット深度は10ビットである。インターレイヤ予測において、アップサンプリング部41は、アップサンプリングと共にビットシフトを実行する(ステップS1)。例えば、フィルタ演算における2つの項の加算は1ビット分の左シフトに、4つの項の加算は2ビット分の左シフトに相当し得る。従って、ビットシフトは、実質的にはアップサンプリングと同時に行われ得る。その後、色域変換部44は、アップサンプリング部41から入力されるアップサンプリング後の画像の色域を変換する(ステップS3)。ここでの色域の変換は、重み付け予測に類似する線形的な変換であってよい。
 図17Bの例において、ベースレイヤの画像サイズは2K、色域はBT.709、ビット深度は8ビットである。エンハンスメントレイヤの画像サイズは2K、色域はBT.2020、ビット深度は10ビットである。インターレイヤ予測において、アップサンプリング部41は、レイヤ間で解像度が同じであるため、ビットシフトのみを実行する(ステップS2)。その後、色域変換部44は、アップサンプリング部41から入力されるアップサンプリング後の画像の色域を変換する(ステップS3)。
 図17Cの例において、ベースレイヤの画像サイズは2K、色域はBT.709、ビット深度は8ビットである。エンハンスメントレイヤの画像サイズは4K、色域はBT.709、ビット深度は10ビットである。インターレイヤ予測において、アップサンプリング部41は、アップサンプリングと共にビットシフトを実行する(ステップS1)。レイヤ間で色域は同じであるため、色域変換部44は、色域変換を実行しない。
 図17A及び図17Cのケースでは、アップサンプリングとビットシフトとが同時に実行されるため、これらが別個に実行されるケースと比較して、インターレイヤ予測のために要する処理コストが抑制される。一方で、図17Bのケースでは、色域変換自体がビットシフトに類似する演算を含んでいるにも関わらず、ビットシフトが色域変換から独立して実行されるため、処理コストの観点で改善の余地がある。
 そこで、一実施例において、色域変換部44が色域変換の演算においてビットシフトを併せて実行することを可能とする。特に重み付け予測のためのシンタックスが再利用されることを想定すると、色域変換の演算は、次のように表現され得る。
Figure JPOXMLDOC01-appb-M000004
 式(7)において、Xはk番目の色成分の変換前の画素値、Xk,Predはk番目の色成分の変換後の画素値である。w、n及びoは、k番目の色成分に適用される、それぞれ重み(ゲイン)の分子、2を底とする重みの分母の対数、及びオフセットである。ここで、レイヤ間のビット深度の差をmビットとすると、色域変換部44がmビット分のビットシフト(左シフト)を色域変換と同時に実行する際の演算は、次のように表現され得る。
Figure JPOXMLDOC01-appb-M000005
 ビットシフトをアップサンプリングと同時に実行することも、ビットシフトを色域変換と同時に実行することも可能である場合、ビットシフトを実行するタイミングがエンコーダとデコーダとで(又は別々の実装を有するデコーダの間で)異なってしまう可能性が生じる。例えば、エンコーダが色域変換と同時にビットシフトを実行したにも関わらず、デコーダがアップサンプリングと同時にビットシフトを実行すると、インターレイヤ予測の精度が低下する。そこで、本実施例において、可逆符号化部16は、ビットシフトの実行タイミングを制御するビットシフト制御フラグをさらに符号化する。ビットシフト制御フラグは、例えば、エンハンスメントレイヤのビット深度がベースレイヤのビット深度よりも大きい場合に、インターレイヤ予測の際のビットシフトを色域変換と同時に実行すべきか、又はアップサンプリングと同時に実行すべきか、を示す制御パラメータである。
 図18A~図18Cは、インターレイヤ予測の処理コストを抑制するための新たな手法について説明するための説明図である。図18Aの例におけるベースレイヤ及びエンハンスメントレイヤの属性は、図17Aと同様である。但し、ビットシフト制御フラグは“1”(重み付け予測と同時にビットシフトを実行)を示す。この場合、インターレイヤ予測において、アップサンプリング部41は、ビット深度を高めるためのビットシフトを行うことなく、アップサンプリングを実行する(ステップS4)。その後、色域変換部44は、上の式(8)のように、アップサンプリング部41から入力されるアップサンプリング後の画像の色域を変換すると同時に、ビットシフトを実行する(ステップS6)。
 図18Bの例におけるベースレイヤ及びエンハンスメントレイヤの属性は、図17Bと同様である。但し、ビットシフト制御フラグは“1”(重み付け予測と同時にビットシフトを実行)を示す。この場合、インターレイヤ予測において、アップサンプリング部41は、ビットシフトもアップサンプリングも実行しない。色域変換部44は、上の式(8)のように、ベースレイヤの画像の色域を変換すると同時に、ビットシフトを実行する(ステップS6)。
 図18Cの例におけるベースレイヤ及びエンハンスメントレイヤの属性は、図17Cと同様である。但し、ビットシフト制御フラグは“0”(アップサンプリングと同時にビットシフトを実行)を示す。この場合、インターレイヤ予測において、アップサンプリング部41は、アップサンプリングと共にビットシフトを実行する(ステップS5)。レイヤ間で色域は同じであるため、色域変換部44は、色域変換を実行しない。
 図17A~図17Cと図18A~図18Cとを対比すると、特に画像サイズがレイヤ間で変化しない第2の例(図17B及び図18B)に関し、新たな手法で処理ステップが削減されていることが理解される。また、新たな手法では、ビットシフト制御フラグの存在が、ビットシフトを実行するタイミングを適応的に切り替えてインターレイヤ予測の処理ステップ数を最小化することを可能としている。
 図19は、図18A~図18Cを用いて説明した手法に関連するシンタックスの一例について説明するための説明図である。図19に示したシンタックスにおける行番号は、図11に示した重み付け予測関連パラメータのシンタックスの行番号に対応する。なお、重み付け予測関連パラメータのシンタックスのうちのL1参照フレームのパラメータのための部分は、説明の簡明さのために図から省略されている。図19を参照すると、第1行の後に、レイヤIDがゼロでない(即ち、当該レイヤがエンハンスメントレイヤである)場合に符号化される、2つの符号化パラメータ“weighted_prediction_and_bit_shift_luma_flag”及び“weighted_prediction_and_bit_shift_chroma_flag”が定義されている。このうち、前者は、輝度成分のビットシフトの実行タイミングを制御するためのビットシフト制御フラグである。後者は、色差成分のビットシフトの実行タイミングを制御するためのビットシフト制御フラグである。これらフラグは、ビットシフトを色域変換と同時に実行すべき場合には真(True)に、ビットシフトをアップサンプリングと同時に実行すべき場合には偽(False)に設定される。画像サイズ及びビット深度は色成分ごとに異なるように定義され得るため、輝度成分及び色差成分について別々にビットシフト制御フラグを符号化することで、それら属性の定義に合せてビットシフトの実行タイミングを柔軟に制御することが可能となる。なお、ここでの例に限定されず、輝度成分及び色差成分の双方について単一のビットシフト制御フラグが符号化されてもよい。また、レイヤ間でビット深度が同じである場合には、ビットシフト制御フラグの符号化は省略されてもよく、又はフラグが特定の値(例えば、ゼロ)に設定されてもよい。また、インターレイヤ予測ではなくレイヤ内のインター予測における重み付け予測のために図19のシンタックスが利用される場合にも、ビットシフト制御フラグの符号化は省略されてもよく、又はフラグが特定の値(例えば、ゼロ)に設定されてもよい。
 <3.一実施形態に係る符号化時の処理の流れ>
  [3-1.概略的な流れ]
 図20は、一実施形態に係る符号化時の概略的な処理の流れの一例を示すフローチャートである。なお、説明の簡明さのために、本開示に係る技術に直接的に関連しない処理ステップは、図から省略されている。
 図20を参照すると、まず、BL符号化部1aは、ベースレイヤの符号化処理を実行し、ベースレイヤの符号化ストリームを生成する(ステップS11)。
 共通メモリ2は、ベースレイヤの符号化処理において生成されるベースレイヤの画像(復号画像及び予測誤差画像の一方又は双方)及びレイヤ間で再利用されるパラメータをバッファリングする(ステップS12)。レイヤ間で再利用されるパラメータは、重み付け予測関連パラメータを含んでもよい。
 次に、EL符号化部1bは、エンハンスメントレイヤの符号化処理を実行し、エンハンスメントレイヤの符号化ストリームを生成する(ステップS13)。ここで実行されるエンハンスメントレイヤの符号化処理において、共通メモリ2によりバッファリングされているベースレイヤの画像は、色域予測部40によりアップサンプリングされ、その色域は変換される。そして、色域変換後のベースレイヤの画像は、インターレイヤ予測において参照画像として使用され得る。
 次に、多重化部3は、BL符号化部1aにより生成されるベースレイヤの符号化ストリームと、EL符号化部1bにより生成されるエンハンスメントレイヤの符号化ストリームとを多重化し、マルチレイヤの多重化ストリームを生成する(ステップS14)。
  [3-2.色域予測処理]
   (1)第1の例
 図21は、エンハンスメントレイヤの符号化処理における色域予測処理の流れの第1の例を示すフローチャートである。ここで説明する色域予測処理は、ピクチャ又はスライスごとに繰り返される。
 図21を参照すると、まず、アップサンプリング部41は、共通メモリ2から取得されるベースレイヤの画像を、ベースレイヤとエンハンスメントレイヤとの間の解像度比に従ってアップサンプリングする(ステップS20)。
 次に、予測モード設定部42は、色域予測のための予測モードの候補のうちのいずれかの予測モードを、ピクチャ(又はスライス)に設定する(ステップS22)。予測モード設定部42は、予め定義される予測モードを設定してもよく、又は予測モードの各候補についての符号化効率若しくは予測精度の評価に基づいて動的に選択される予測モードを設定してもよい。
 次に、可逆符号化部16は、予測モード設定部42により設定された予測モードを示す予測モードパラメータを符号化する(ステップS25)。可逆符号化部16により符号化された予測モードパラメータは、例えばPPS又はスライスヘッダへ挿入される。
 その後の処理は、予測モード設定部42により設定された予測モードに依存して分岐する(ステップS26、S28)。例えば、設定された予測モードが適応パラメータモードである場合、パラメータ計算部43は、色域の予測(変換)のために使用すべき最適なゲイン及びオフセットの値を計算する(ステップS30)。また、パラメータ計算部43は、計算した最適なゲイン及びオフセットの値の過去の値からの差分を計算する。そして、可逆符号化部16は、パラメータ計算部43により計算されたゲイン及びオフセットの差分を符号化する(ステップS32)。可逆符号化部16により符号化されたこれら予測パラメータの差分は、例えばPPS又はスライスヘッダへ挿入される。
 設定された予測モードが適応パラメータモード又は固定パラメータモードである場合、色域変換部44は、式(4)~式(6)に従って、アップサンプリング後のベースレイヤの画素値に適応的に計算された又は固定的なゲインを乗算し、さらにオフセットを加算することにより、各画素の予測画素値を計算する(ステップS34)。
 設定された予測モードがビットシフトモードである場合、色域変換部44は、式(1)~式(3)に従って、アップサンプリング後のベースレイヤの画素値を所定のビットシフト量だけ左方へシフトさせることにより、各画素の予測画素値を計算する(ステップS36)。
 処理対象のピクチャ又はスライス内の全ての予測画素値が計算されると、色域変換部44は、色域変換後のベースレイヤの画像、即ち色域予測の結果としての予測画像を、フレームメモリ25に格納する(ステップS38)。
 その後、未処理の次のピクチャ又はスライスが存在する場合には、処理はステップS20へ戻り、次のピクチャ又はスライスについて上述した処理が繰り返される(ステップS40)。
   (2)第2の例
 図22は、エンハンスメントレイヤの符号化処理における色域予測処理の流れの第2の例を示すフローチャートである。
 図22を参照すると、まず、予測モード設定部42は、色域予測のための予測モードの候補のうちのいずれかの予測モードを、シーケンスに設定する(ステップS21)。次に、可逆符号化部16は、予測モード設定部42により設定された予測モードを示す予測モードパラメータを符号化する(ステップS23)。可逆符号化部16により符号化された予測モードパラメータは、SPSへ挿入される。
 ステップS24~ステップS40の処理は、シーケンス内のピクチャ又はスライスごとに繰り返される。
 アップサンプリング部41は、共通メモリ2から取得されるベースレイヤの画像を、ベースレイヤとエンハンスメントレイヤとの間の解像度比に従ってアップサンプリングする(ステップS24)。
 さらに、予測モード設定部42により設定された予測モードに依存して、処理は分岐する(ステップS26、S28)。例えば、設定された予測モードが適応パラメータモードである場合、パラメータ計算部43は、色域の予測(変換)のために使用すべき最適なゲイン及びオフセットの値を計算する(ステップS30)。また、パラメータ計算部43は、計算した最適なゲイン及びオフセットの値の過去の値からの差分を計算する。そして、可逆符号化部16は、パラメータ計算部43により計算されたゲイン及びオフセットの差分を符号化する(ステップS32)。可逆符号化部16により符号化されたこれら予測パラメータの差分は、例えばPPS又はスライスヘッダへ挿入される。
 設定された予測モードが適応パラメータモード又は固定パラメータモードである場合、色域変換部44は、式(4)~式(6)に従って、アップサンプリング後のベースレイヤの画素値に適応的に計算された又は固定的なゲインを乗算し、さらにオフセットを加算することにより、各画素の予測画素値を計算する(ステップS34)。
 設定された予測モードがビットシフトモードである場合、色域変換部44は、式(1)~式(3)に従って、アップサンプリング後のベースレイヤの画素値を所定のビットシフト量だけ左方へシフトさせることにより、各画素の予測画素値を計算する(ステップS36)。
 処理対象のピクチャ又はスライス内の全ての予測画素値が計算されると、色域変換部44は、色域変換後のベースレイヤの画像、即ち色域予測の結果としての予測画像を、フレームメモリ25に格納する(ステップS38)。
 その後、シーケンス内に未処理の次のピクチャ又はスライスが存在する場合には、処理はステップS24へ戻り、次のピクチャ又はスライスについてアップサンプリング及び色域変換が繰り返される(ステップS40)。また、シーケンス内の全てのピクチャ又は全てのスライスについて色域変換が終了した場合には、次のシーケンスが存在するかがさらに判定される(ステップS42)。そして、次のシーケンスが存在する場合には、処理はステップS21へ戻り、次のシーケンスについて上述した処理が繰り返される。
   (3)第3の例
 図23は、エンハンスメントレイヤの符号化処理における色域予測処理の流れの第3の例を示すフローチャートである。
 図23を参照すると、まず、予測モード設定部42は、色域予測のための予測モードの候補のうちのいずれかの予測モードを、シーケンスに設定する(ステップS21)。次に、可逆符号化部16は、予測モード設定部42により設定された予測モードを示す予測モードパラメータを符号化する(ステップS23)。可逆符号化部16により符号化された予測モードパラメータは、SPSへ挿入される。
 ステップS24~ステップS41の処理は、シーケンス内のスライスごとに繰り返される。
 アップサンプリング部41は、共通メモリ2から取得されるベースレイヤの画像を、ベースレイヤとエンハンスメントレイヤとの間の解像度比に従ってアップサンプリングする(ステップS24)。ここでのアップサンプリングのフィルタ演算は、インターレイヤ予測のためのビットシフトを含んでもよく、又は含まなくてもよい。
 さらに、予測モード設定部42により設定された予測モードに依存して、処理は分岐する(ステップS26、S28)。例えば、設定された予測モードが適応パラメータモードである場合、パラメータ計算部43は、色域の予測(変換)のために使用すべき最適なゲイン及びオフセットの値を計算する(ステップS30)。また、パラメータ計算部43は、計算した最適なゲイン及びオフセットの値の過去の値からの差分を計算する。そして、可逆符号化部16は、計算されたゲイン及びオフセットの差分を、重み付け予測関連パラメータのシンタックスを再利用することにより符号化する(ステップS33)。可逆符号化部16により符号化されたこれら予測パラメータの差分は、スライスヘッダへ挿入される。上述したビットシフト制御フラグがシンタックスにおいて採用される場合には、符号化されたビットシフト制御フラグもまた、ここでスライスヘッダへ挿入され得る。
 設定された予測モードが適応パラメータモード又は固定パラメータモードである場合、色域変換部44は、式(4)~式(6)に従って、アップサンプリング後のベースレイヤの画素値に適応的に計算された又は固定的なゲインを乗算し、さらにオフセットを加算することにより、各画素の予測画素値を計算する(ステップS34)。ステップS24においてビットシフトが行われていない場合には、ここでの予測画素値の計算がビットシフトを含んでもよい。
 設定された予測モードがビットシフトモードである場合、色域変換部44は、式(1)~式(3)に従って、アップサンプリング後のベースレイヤの画素値を所定のビットシフト量だけ左方へシフトさせることにより、各画素の予測画素値を計算する(ステップS36)。
 処理対象のスライス内の全ての予測画素値が計算されると、色域変換部44は、色域変換後のベースレイヤの画像、即ち色域予測の結果としての予測画像を、フレームメモリ25に格納する(ステップS38)。
 その後、シーケンス内に未処理の次のスライスが存在する場合には、処理はステップS24へ戻り、次のスライスについてアップサンプリング及び色域変換が繰り返される(ステップS41)。また、シーケンス内の全てのスライスについて色域変換が終了した場合には、次のシーケンスが存在するかがさらに判定される(ステップS42)。そして、次のシーケンスが存在する場合には、処理はステップS21へ戻り、次のシーケンスについて上述した処理が繰り返される。
   (4)第4の例
 図24は、エンハンスメントレイヤの符号化処理における色域予測処理の流れの第4の例を示すフローチャートである。
 図24を参照すると、まず、予測モード設定部42は、色域予測のための予測モードの候補のうちのいずれかの予測モードを、シーケンスに設定する(ステップS21)。次に、可逆符号化部16は、予測モード設定部42により設定された予測モードを示す予測モードパラメータを符号化する(ステップS23)。可逆符号化部16により符号化された予測モードパラメータは、SPSへ挿入される。
 ステップS24~ステップS41の処理は、シーケンス内のスライスごとに繰り返される。
 アップサンプリング部41は、共通メモリ2から取得されるベースレイヤの画像を、ベースレイヤとエンハンスメントレイヤとの間の解像度比に従ってアップサンプリングする(ステップS24)。ここでのアップサンプリングのフィルタ演算は、インターレイヤ予測のためのビットシフトを含んでもよく、又は含まなくてもよい。
 さらに、予測モード設定部42により設定された予測モードに依存して、処理は分岐する(ステップS26、S28)。例えば、設定された予測モードが適応パラメータモードである場合、パラメータ計算部43は、色域の予測(変換)のために使用すべきゲイン及びオフセットの第1のバージョンを計算する(ステップS31a)。同様に、パラメータ計算部43は、ゲイン及びオフセットの第2のバージョンを計算する(ステップS31b)。これら第1のバージョン及び第2のバージョンは、それぞれ、画素値のレンジのうちの第1のバンド及び第2のバンドのために使用すべき最適な値のセットを含んでもよい。その代わりに、これら第1のバージョン及び第2のバージョンは、それぞれ、第1の画像領域及び第2の画像領域のために使用すべき最適な値のセットを含んでもよい。また、パラメータ計算部43は、第1のバージョン及び第2のバージョンについて、ゲイン及びオフセットの値の過去の値からの差分をそれぞれ計算する。そして、可逆符号化部16は、重み付け予測関連パラメータのシンタックスのL0参照フレーム用の部分及びL1参照フレーム用の部分へ、第1のバージョン及び第2のバージョンについて計算された予測パラメータの差分をそれぞれ符号化する(ステップS33b)。可逆符号化部16により符号化されたこれら予測パラメータの差分は、スライスヘッダへ挿入される。上述したビットシフト制御フラグがシンタックスにおいて採用される場合には、符号化されたビットシフト制御フラグもまた、ここでスライスヘッダへ挿入され得る。
 その後の処理の流れは、画素値が属するバンド又は画素が属する画像領域に応じた予測パラメータのバージョンの切替えがステップS34において行われ得ることを除き、図23を用いて説明した第3の例と同様であってよい。なお、可逆符号化部16は、ステップS33bにおいて、予測パラメータのバージョンの切替えのためのバンド間の境界値又は画像領域間の領域境界を特定する境界情報を、例えばスライスヘッダ又はスライスヘッダの拡張へ、追加的に符号化してもよい。
   (5)処理順序の変形例
 既存の手法によれば、インターレイヤ予測において、色域変換は、アップサンプリング(及び必要に応じてビットシフト)が実行された後に実行される。図21~図24のフローチャートも、そのような処理順序を踏襲している。しかしながら、色域変換の処理コストは変換対象の画素数に比例するため、アップサンプリングによって増加した画素を対象として色域変換を実行することは、処理コストの観点で最適とは言えない。また、ビットシフト後の拡張されたビット深度を有する画素を対象として色域変換を実行することは、色域変換の演算に要する処理リソース(例えば、レジスタの所要ビット数)もより多くなることを意味する。そこで、一変形例として、色域予測部40は、エンハンスメントレイヤの空間解像度(画像サイズ)がベースレイヤの空間解像度よりも高い場合に、ベースレイヤ画像の色域を変換した後、変換された当該画像をアップサンプリングすることにより、エンハンスメントレイヤ画像を予測してもよい。
 図25Aは、既存のインターレイヤ予測の処理順序の一例について説明するための説明図である。図25Aには、一例として図17Aと同様の2つの処理ステップが示されている。まず、ベースレイヤのスライスデータに含まれる画像の画像サイズ及びビット深度(例えば、2K/8ビット)は、アップサンプリング及びビットシフトによってそれぞれ(例えば、4K/10ビットに)高められる。次に、アップサンプリング後の画像の色域が、予測パラメータに従ってエンハンスメントレイヤの色域に変換される。
 図25Bは、一変形例における新たなインターレイヤ予測の処理順序の一例について説明するための説明図である。本変形例において、まず、色域予測部40は、ベースレイヤのスライスデータに含まれる画像の色域を、予測パラメータに従ってエンハンスメントレイヤの色域に変換する。次に、色域予測部40は、色域変換後の画像の画像サイズ(例えば、2K)を、アップサンプリングによって(例えば、4Kに)高める。ビットシフトは、色域変換と同時に実行されてもよく、又はアップサンプリングと同時に実行されてもよい。ビットシフトを実行すべきタイミングが、ビットシフト制御フラグによって指定されてもよい。このような新たな処理順序によれば、色域変換の変換対象の画素数及びビット深度が既存の処理順序のケースと比較して低減されるため、インターレイヤ予測の処理コストが一層抑制される。
 <4.一実施形態に係るEL復号部の構成例>
  [4-1.全体的な構成]
 図26は、図5に示したEL復号部6bの構成の一例を示すブロック図である。図26を参照すると、EL復号部6bは、蓄積バッファ61、可逆復号部62、逆量子化部63、逆直交変換部64、加算部65、ループフィルタ66、並び替えバッファ67、D/A(Digital to Analogue)変換部68、フレームメモリ69、セレクタ70及び71、イントラ予測部80、インター予測部85並びに色域予測部90を備える。
 蓄積バッファ61は、逆多重化部5から入力されるエンハンスメントレイヤの符号化ストリームを記憶媒体を用いて一時的に蓄積する。
 可逆復号部62は、蓄積バッファ61から入力されるエンハンスメントレイヤの符号化ストリームから、符号化の際に使用された符号化方式に従ってエンハンスメントレイヤの量子化データを復号する。また、可逆復号部62は、符号化ストリームのヘッダ領域に挿入されている情報を復号する。可逆復号部62により復号される情報は、例えば、イントラ予測に関する情報及びインター予測に関する情報を含み得る。色域予測のためのパラメータもまた、エンハンスメントレイヤにおいて復号され得る。可逆復号部62は、量子化データを逆量子化部63へ出力する。また、可逆復号部62は、イントラ予測に関する情報をイントラ予測部80へ出力する。また、可逆復号部62は、インター予測に関する情報をインター予測部85へ出力する。また、可逆復号部62は、色域予測のためのパラメータを色域予測部90へ出力する。
 逆量子化部63は、可逆復号部62から入力される量子化データを、符号化の際に使用されたものと同じ量子化ステップで逆量子化し、エンハンスメントレイヤの変換係数データを復元する。逆量子化部63は、復元した変換係数データを逆直交変換部64へ出力する。
 逆直交変換部64は、符号化の際に使用された直交変換方式に従い、逆量子化部63から入力される変換係数データについて逆直交変換を行うことにより、予測誤差データを生成する。逆直交変換部64は、生成した予測誤差データを加算部65へ出力する。
 加算部65は、逆直交変換部64から入力される予測誤差データと、セレクタ71から入力される予測画像データとを加算することにより、復号画像データを生成する。そして、加算部65は、生成した復号画像データをループフィルタ66及びフレームメモリ69へ出力する。
 ループフィルタ66は、EL符号化部1bのループフィルタ24と同様、ブロック歪みを軽減するデブロックフィルタ、各画素値にオフセット値を加えるサンプル適応オフセットフィルタ、及び原画像との誤差を最小化する適応ループフィルタを含む。ループフィルタ66は、加算部65から入力される復号画像データをフィルタリングし、フィルタリング後の復号画像データを並び替えバッファ67及びフレームメモリ69へ出力する。
 並び替えバッファ67は、ループフィルタ66から入力される画像を並び替えることにより、時系列の一連の画像データを生成する。そして、並び替えバッファ67は、生成した画像データをD/A変換部68へ出力する。
 D/A変換部68は、並び替えバッファ67から入力されるデジタル形式の画像データをアナログ形式の画像信号に変換する。そして、D/A変換部68は、例えば、画像復号装置60と接続されるディスプレイ(図示せず)にアナログ画像信号を出力することにより、エンハンスメントレイヤの画像を表示させる。
 フレームメモリ69は、加算部65から入力されるフィルタリング前の復号画像データ、ループフィルタ66から入力されるフィルタリング後の復号画像データ、及び色域予測部90から入力されるベースレイヤの参照画像データを記憶媒体を用いて記憶する。
 セレクタ70は、可逆復号部62により取得されるモード情報に応じて、画像内のブロックごとに、フレームメモリ69からの画像データの出力先をイントラ予測部80とインター予測部85との間で切り替える。例えば、セレクタ70は、イントラ予測モードが指定された場合には、フレームメモリ69から供給されるフィルタリング前の復号画像データを参照画像データとしてイントラ予測部80へ出力する。また、セレクタ70は、インター予測モードが指定された場合には、フィルタリング後の復号画像データを参照画像データとしてインター予測部85へ出力する。さらに、イントラ予測部80又はインター予測部85においてインターレイヤ予測が実行される場合、セレクタ70は、ベースレイヤの参照画像データをイントラ予測部80又はインター予測部85へ供給する。
 セレクタ71は、可逆復号部62により取得されるモード情報に応じて、加算部65へ供給すべき予測画像データの出力元をイントラ予測部80とインター予測部85との間で切り替える。例えば、セレクタ71は、イントラ予測モードが指定された場合には、イントラ予測部80から出力される予測画像データを加算部65へ供給する。また、セレクタ71は、インター予測モードが指定された場合には、インター予測部85から出力される予測画像データを加算部65へ供給する。
 イントラ予測部80は、可逆復号部62から入力されるイントラ予測に関する情報とフレームメモリ69からの参照画像データとに基づいてエンハンスメントレイヤのイントラ予測処理を行い、予測画像データを生成する。イントラ予測処理は、PUごとに実行される。イントラ予測部80は、イントラ予測モードとしてイントラBL予測又はイントラ残差予測が指定された場合には、予測対象ブロックに対応するベースレイヤ内のコロケーテッドブロックを参照ブロックとして使用する。イントラBL予測の場合、イントラ予測部80は、参照ブロックの復号画像に基づいて予測画像を生成する。イントラ残差予測の場合、イントラ予測部80は、参照ブロックの予測誤差画像に基づいてイントラ予測の予測誤差を予測し、予測した予測誤差の加算された予測画像を生成する。イントラ予測部80は、生成したエンハンスメントレイヤの予測画像データをセレクタ71へ出力する。
 インター予測部85は、可逆復号部62から入力されるインター予測に関する情報とフレームメモリ69からの参照画像データとに基づいてエンハンスメントレイヤのインター予測処理(動き補償処理)を行い、予測画像データを生成する。インター予測処理は、PUごとに実行される。インター予測部85は、インター予測モードとしてインター残差予測が指定された場合には、予測対象ブロックに対応するベースレイヤ内のコロケーテッドブロックを参照ブロックとして使用する。インター残差予測の場合、インター予測部85は、参照ブロックの予測誤差画像に基づいてインター予測の予測誤差を予測し、予測した予測誤差の加算された予測画像を生成する。インター予測部85は、生成したエンハンスメントレイヤの予測画像データをセレクタ71へ出力する。
 色域予測部90は、共通メモリ7によりバッファリングされるベースレイヤの画像(復号画像又は予測誤差画像)を、ベースレイヤとエンハンスメントレイヤとの間の解像度比に従ってアップサンプリングする。また、色域予測部90は、ベースレイヤの画像とは異なる色域をエンハンスメントレイヤの画像が有する場合に、アップサンプリングしたベースレイヤの画像の色域を、エンハンスメントレイヤの画像と同等の色域に変換する。本実施形態において、色域予測部90は、ベースレイヤ及びエンハンスメントレイヤの色域の間の色成分ごとに独立した線型的な関係を前提とし、ベースレイヤの画像からエンハンスメントレイヤの画像を近似的に予測することにより、色域を変換する。色域予測部90により色域の変換されたベースレイヤの画像は、フレームメモリ69に格納され、イントラ予測部80又はインター予測部85により、インターレイヤ予測において参照画像として使用され得る。色域予測部90は、色域の予測のための予測モードを示す予測モードパラメータを、可逆復号部62から取得する。また、色域予測部90は、予測モードパラメータが適応パラメータモードを示す場合には、予測パラメータの過去の値からの差分を、可逆復号部62からさらに取得する。そして、色域予測部90は、可逆復号部62から取得されるこれらパラメータを用いて、アップサンプリング後のベースレイヤの画像からエンハンスメントレイヤの画像を予測する。
  [4-2.色域予測部の詳細な構成]
 図27は、図26に示した色域予測部90の構成の一例を示すブロック図である。図27を参照すると、色域予測部90は、アップサンプリング部91、予測モード設定部92、パラメータ計算部93及び色域変換部94を有する。
   (1)アップサンプリング部
 アップサンプリング部91は、共通メモリ7から取得されるベースレイヤの画像を、ベースレイヤとエンハンスメントレイヤとの間の解像度比に従ってアップサンプリングする。より具体的には、アップサンプリング部91は、解像度比に応じて順に走査される補間画素の各々について、予め定義されるフィルタ係数でベースレイヤの画像をフィルタリングすることにより補間画素値を計算する。それにより、参照ブロックとして使用されるベースレイヤの画像の空間解像度が、エンハンスメントレイヤと同等の解像度まで高められる。アップサンプリング部91は、アップサンプリング後の画像を色域変換部94へ出力する。
   (2)予測モード設定部
 予測モード設定部92は、色域予測のための予測モードの候補のうち、可逆復号部62により復号される予測モードパラメータにより示される予測モードを、色域予測部90に設定する。予測モードの候補は、上述したビットシフトモード、固定パラメータモード及び適応パラメータモードを含み得る。ある実施例において、予測モード設定部92は、PPSから復号される予測モードパラメータに従って、予測モードを設定し得る。他の実施例において、予測モード設定部92は、スライスヘッダから復号される予測モードパラメータに従って、予測モードを設定し得る。また別の実施例において、予測モード設定部92は、SPSから復号される予測モードパラメータに従って、予測モードを設定し得る。SPSから予測モードパラメータが復号される場合、1つのシーケンス内で同じ予測モードが維持され得る。
   (3)パラメータ計算部
 パラメータ計算部93は、予測モード設定部92により適応パラメータモードが設定された場合に、色域予測のために使用されるべき予測パラメータを、可逆復号部62により復号される予測パラメータの差分を用いて計算する。ここでの予測パラメータは、式(4)~式(6)に示したゲインg及びオフセットo(i=1,2,3)を含む。
 より具体的には、パラメータ計算部93は、適応パラメータモードにおいて、可逆復号部62から取得されるゲイン及びオフセットの差分を、それぞれゲイン及びオフセットの過去の値に加算することにより、ゲイン及びオフセットの最新の値を計算する。ここでの過去の値とは、例えば、ピクチャごとにゲイン及びオフセットが計算される場合には、前回のピクチャについて計算された値であってよい。スライスごとにゲイン及びオフセットが計算される場合には、前回のピクチャの同じ位置のスライスについて計算された値であってよい。パラメータ計算部93は、最新の予測モードパラメータが適応パラメータモードを示し、前回の予測モードパラメータがビットシフトモードを示す場合には、可逆復号部62により復号される差分を、ビットシフト量に対応する予測パラメータ値に加算する。また、パラメータ計算部93は、最新の予測モードパラメータが適応パラメータモードを示し、前回の予測モードパラメータが固定パラメータモードを示す場合には、可逆復号部62により復号される差分を、予め定義される固定的な予測パラメータ値に加算する。ゲイン及びオフセットの差分をどのような過去の値(即ち、差分の基礎)にそれぞれ加算すべきかは、図9に示されている。パラメータ計算部93は、計算したゲイン及びオフセットの最新の値を、色域変換部94へ出力する。なお、ゲインの値は、小数値を含み得るため、その分母及び分子の差分が別々に復号され得る。従って、パラメータ計算部93は、復号された差分からゲインの分母及び分子をそれぞれ計算し得る。色域変換部94によるゲインの乗算は、実際には、整数である分子の乗算と、分母での除算に相当するシフト演算とにより行われ得る。ゲインの分母の値の範囲は、計算コストを低減するために2の整数乗のみに制限されてもよい。この場合、分母の値の2を底とする対数が、予測パラメータとして使用されてもよい。
   (4)色域変換部
 色域変換部94は、予測モード設定部92により設定される予測モードに従って、アップサンプリング部91から入力されるアップサンプリング後のベースレイヤの画像の色域を、エンハンスメントレイヤの画像と同等の色域に変換する。例えば、色域変換部94は、ビットシフトモードが設定された場合には、式(1)~式(3)に従って、アップサンプリング後のベースレイヤの画素値を所定のビットシフト量nshiftだけ左方へシフトさせることにより、予測画素値を計算する。また、色域変換部94は、固定パラメータモードが設定された場合には、式(4)~式(6)に従って、アップサンプリング後のベースレイヤの画素値に固定的なゲインを乗算し、さらに固定的なオフセットを加算することにより、予測画素値を計算する。また、色域変換部94は、適応パラメータモードが設定された場合には、固定的なゲイン及びオフセットの代わりに、パラメータ計算部93により適応的に計算されるゲイン及びオフセットを用いて、予測画素値を計算する。それにより、インターレイヤ予測のための参照画像が生成される。色域変換部94は、このように生成されるインターレイヤ予測のための参照画像(色域の変換されたベースレイヤの画像)を、フレームメモリ69に格納する。
 可逆復号部62により復号される予測モードパラメータ及び予測パラメータ(色成分ごとのゲイン及びオフセット)の差分のシンタックスの例は、図8に示されている。これらパラメータは、可逆復号部62によりエンハンスメントレイヤの符号化ストリームから復号され得る。図8に示したシンタックスは、例えばPPSに含まれてもよく、又はスライスヘッダに含まれてもよい。上述したように、予測モードパラメータ及び予測パラメータの差分がスライスヘッダから復号される例は、画像の部分領域ごとに異なる色域が使用される用途において有益である。また、拡張フラグ“color_gamut_prediction_flag”及び予測モードパラメータ“color_prediction_model”は、シーケンスごとにSPSから復号されてもよい。この場合、1つのシーケンス内では同じ予測モードが維持される。
 さらに、ある実施例において、可逆復号部62は、表1に示したマッピングに従い、重み付け予測関連パラメータと共用されるシンタックスを有するヘッダ(スライスヘッダ)から、色域予測の予測パラメータの差分を復号してもよい。このようなシンタックスの再利用により、シンタックスの冗長性が低減され、エンコーダ及びデコーダの実装及びバージョンアップの際の互換性の確保が容易となる。但し、拡張フラグ“color_gamut_prediction_flag”及び予測モードパラメータ“color_prediction_model”は、SPS、PPS又はスライスヘッダから別途復号されてよい。また、可逆復号部62は、重み付け予測関連パラメータ及び色域予測のためのパラメータのいずれが符号化されているかを示すフラグを復号し、復号した当該フラグに応じて色域予測のためのパラメータを復号してもよい。レイヤ間で重み付け予測関連パラメータが再利用される場合には、可逆復号部62は、エンハンスメントレイヤ固有の重み付け予測関連パラメータを復号せず、その代わりに同じシンタックスで色域予測の予測パラメータの差分を復号し得る。この場合、L1参照フレームのパラメータのためのシンタックス(図11の第21行から第38行)は使用されなくてよい。また、参照フレーム数(マイナス1)に対応する変数“num_ref_idx_l0_active_minus1”の値は、ゼロである(即ち、色域を変換すべきベースレイヤ画像の数が1である)と見なされてよい。
 また、別の実施例において、可逆復号部62は、重み付け予測関連パラメータの一部を色域予測のために再利用してもよい。例えば、輝度成分及び色差成分のゲインの分母として、図11に示した“luma_log2_weight_denom”及び“delta_chroma_log2_weight_denom”により特定される分母が再利用され得る。この場合、可逆復号部62は、図8に示した“delta_luma_log2_gain_denom”及び“delta_chroma_log2_gain_denom”を復号しない。
 また、ある変形例において、可逆復号部62は、重み付け予測関連パラメータと共用されるシンタックスのL0参照フレーム用の部分から色域予測の予測パラメータの第1のバージョンの差分を復号し、及び当該シンタックスのL1参照フレーム用の部分から色域予測の予測パラメータの第2のバージョンの差分を復号してもよい。この場合、パラメータ計算部93は、色域予測の予測パラメータの第1のバージョンを当該第1のバージョンについて復号された差分を用いて計算し、色域予測の予測パラメータの第2のバージョンを当該第2のバージョンについて復号された差分を用いて計算する。そして、色域変換部94は、予測パラメータの第1のバージョン及び第2のバージョンを、エンハンスメントレイヤの画像を予測するために、即ちインターレイヤ予測のための参照画像を生成するために選択的に使用する。
 上記変形例において、色域変換部94は、例えば、画素値が属するバンドに応じて、予測パラメータの第1のバージョン及び第2のバージョンのうち使用すべきバージョンを選択してもよい。使用すべきバージョンの切替えのためのバンド間の境界に対応する境界値は、予めエンコーダ及びデコーダの双方にとって既知であってもよく、又は適応的に設定されてもよい。境界値が適応的に設定される場合、色域変換部94は、可逆復号部62によりさらに復号され得る境界情報により特定される境界値に従って、画素値が属するバンドを判定する。そして、色域変換部94は、その判定結果に基づいて、予測パラメータの第1のバージョン又は第2のバージョンのうち使用すべきバージョンを選択し得る。
 その代わりに、上記変形例において、色域変換部94は、例えば、画素が属する画像領域に応じて、予測パラメータの第1のバージョン及び第2のバージョンのうち使用すべきバージョンを選択してもよい。使用すべきバージョンの切替えのための領域境界は、予めエンコーダ及びデコーダの双方にとって既知であってもよく、又は適応的に設定されてもよい。領域境界が適応的に設定される場合、色域変換部94は、可逆復号部62によりさらに復号され得る境界情報により特定される領域境界に従って、画素が属する画像領域を判定する。そして、色域変換部94は、その判定結果に基づいて、予測パラメータの第1のバージョン又は第2のバージョンのうち使用すべきバージョンを選択し得る。
 このような変形例によれば、既存の手法と比較して色域予測の予測誤差が低減され、予測誤差データの符号量は減少する。その結果として、符号化効率が高められる。予測パラメータの2つのバージョンを提供するという手法は、上述したように、輝度成分にのみ適用され、色差成分には適用されなくてもよい。
 また、一実施例において、色域変換部94は、エンハンスメントレイヤのビット深度がベースレイヤのビット深度よりも大きい場合に、エンハンスメントレイヤの画像を予測する際のビットシフトを色域変換と同時に実行することを、可能とされる。可逆復号部62は、エンハンスメントレイヤの制御パラメータとして、インターレイヤ予測の際のビットシフトを色域変換と同時に実行すべきかを示すビットシフト制御フラグを復号する。そして、色域変換部94は、ビットシフトを色域変換と同時に実行すべきであることをビットシフト制御フラグが示す場合にはビットシフトを色域変換と同時に実行し、そうでない場合にはビットシフトを例えばアップサンプリングと同時に実行する。それにより、ビットシフトを実行するタイミングを適応的に切り替えて、インターレイヤ予測の処理ステップ数を最小化することが可能となる。その結果、既存の手法と比較して、インターレイヤ予測の処理コストが抑制され得る。可逆復号部62は、輝度成分及び色差成分について別々にビットシフト制御フラグを復号してもよい。この場合、色成分ごとの設定(画像サイズ及びビット深度の設定)に合わせたより柔軟な制御が可能となる。ビットシフト制御フラグは、典型的には、図19に例示したように、スライスヘッダから復号され得る。しかしながら、かかる例に限定されず、ビットシフト制御フラグは、SPS又はPPSなどの他の場所から復号されてもよい。
 <5.一実施形態に係る復号時の処理の流れ>
  [5-1.概略的な流れ]
 図28は、一実施形態に係る復号時の概略的な処理の流れの一例を示すフローチャートである。なお、説明の簡明さのために、本開示に係る技術に直接的に関連しない処理ステップは、図から省略されている。
 図28を参照すると、まず、逆多重化部5は、マルチレイヤの多重化ストリームをベースレイヤの符号化ストリーム及びエンハンスメントレイヤの符号化ストリームに逆多重化する(ステップS60)。
 次に、BL復号部6aは、ベースレイヤの復号処理を実行し、ベースレイヤの符号化ストリームからベースレイヤ画像を再構築する(ステップS61)。
 共通メモリ7は、ベースレイヤの復号処理において生成されるベースレイヤの画像(復号画像及び予測誤差画像の一方又は双方)及びレイヤ間で再利用されるパラメータをバッファリングする(ステップS62)。レイヤ間で再利用されるパラメータは、重み付け予測関連パラメータを含んでもよい。
 次に、EL復号部6bは、エンハンスメントレイヤの復号処理を実行し、エンハンスメントレイヤ画像を再構築する(ステップS63)。ここで実行されるエンハンスメントレイヤの復号処理において、共通メモリ7によりバッファリングされているベースレイヤの画像は、色域予測部90によりアップサンプリングされ、その色域は変換される。そして、色域変換後のベースレイヤの画像は、インターレイヤ予測において参照画像として使用され得る。
  [5-2.色域予測処理]
   (1)第1の例
 図29は、エンハンスメントレイヤの復号処理における色域予測処理の流れの第1の例を示すフローチャートである。ここで説明する色域予測処理は、ピクチャ又はスライスごとに繰り返される。
 図29を参照すると、まず、アップサンプリング部91は、共通メモリ7から取得されるベースレイヤの画像を、ベースレイヤとエンハンスメントレイヤとの間の解像度比に従ってアップサンプリングする(ステップS70)。
 また、可逆復号部62は、色域予測のために設定されるべき予測モードを示す予測モードパラメータを、PPS又はスライスヘッダから復号する(ステップS72)。そして、予測モード設定部92は、復号された予測モードパラメータにより示される予測モードを、ピクチャ(又はスライス)に設定する(ステップS75)。
 その後の処理は、予測モード設定部92により設定された予測モードに依存して分岐する(ステップS76、S78)。例えば、設定された予測モードが適応パラメータモードである場合、可逆復号部62は、PPS又はスライスヘッダからゲイン及びオフセットの値の過去の値からの差分を復号する(ステップS80)。そして、パラメータ計算部93は、復号されたゲイン及びオフセットの差分をゲイン及びオフセットの過去の値に加算することにより、最新のピクチャ又はスライスについて使用すべきゲイン及びオフセットを計算する(ステップS82)。
 設定された予測モードが適応パラメータモード又は固定パラメータモードである場合、色域変換部94は、式(4)~式(6)に従って、アップサンプリング後のベースレイヤの画素値に適応的に計算された又は固定的なゲインを乗算し、さらにオフセットを加算することにより、各画素の予測画素値を計算する(ステップS84)。
 設定された予測モードがビットシフトモードである場合、色域変換部94は、式(1)~式(3)に従って、アップサンプリング後のベースレイヤの画素値を所定のビットシフト量だけ左方へシフトさせることにより、各画素の予測画素値を計算する(ステップS86)。
 処理対象のピクチャ又はスライス内の全ての予測画素値が計算されると、色域変換部94は、色域変換後のベースレイヤの画像、即ち色域予測の結果としての予測画像を、フレームメモリ69に格納する(ステップS88)。
 その後、未処理の次のピクチャ又はスライスが存在する場合には、処理はステップS70へ戻り、次のピクチャ又はスライスについて上述した処理が繰り返される(ステップS90)。
   (2)第2の例
 図30は、エンハンスメントレイヤの復号処理における色域予測処理の流れの第2の例を示すフローチャートである。
 図30を参照すると、まず、可逆復号部62は、色域予測のために設定されるべき予測モードを示す予測モードパラメータを、SPSから復号する(ステップS71)。そして、予測モード設定部92は、復号された予測モードパラメータにより示される予測モードを、シーケンスに設定する(ステップS73)。
 ステップS74~ステップS90の処理は、シーケンス内のピクチャ又はスライスごとに繰り返される。
 アップサンプリング部91は、共通メモリ7から取得されるベースレイヤの画像を、ベースレイヤとエンハンスメントレイヤとの間の解像度比に従ってアップサンプリングする(ステップS74)。
 さらに、予測モード設定部92により設定された予測モードに依存して、処理は分岐する(ステップS76、S78)。例えば、設定された予測モードが適応パラメータモードである場合、可逆復号部62は、PPS又はスライスヘッダからゲイン及びオフセットの値の過去の値からの差分を復号する(ステップS80)。そして、パラメータ計算部93は、復号されたゲイン及びオフセットの差分をゲイン及びオフセットの過去の値にそれぞれ加算することにより、最新のピクチャ又はスライスについて使用すべきゲイン及びオフセットを計算する(ステップS82)。
 設定された予測モードが適応パラメータモード又は固定パラメータモードである場合、色域変換部94は、式(4)~式(6)に従って、アップサンプリング後のベースレイヤの画素値に適応的に計算された又は固定的なゲインを乗算し、さらにオフセットを加算することにより、各画素の予測画素値を計算する(ステップS84)。
 設定された予測モードがビットシフトモードである場合、色域変換部94は、式(1)~式(3)に従って、アップサンプリング後のベースレイヤの画素値を所定のビットシフト量だけ左方へシフトさせることにより、各画素の予測画素値を計算する(ステップS86)。
 処理対象のピクチャ又はスライス内の全ての予測画素値が計算されると、色域変換部94は、色域変換後のベースレイヤの画像、即ち色域予測の結果としての予測画像を、フレームメモリ69に格納する(ステップS88)。
 その後、シーケンス内に未処理の次のピクチャ又はスライスが存在する場合には、処理はステップS74へ戻り、次のピクチャ又はスライスについてアップサンプリング及び色域変換が繰り返される(ステップS90)。また、シーケンス内の全てのピクチャ又は全てのスライスについて色域変換が終了した場合には、次のシーケンスが存在するかがさらに判定される(ステップS92)。そして、次のシーケンスが存在する場合には、処理はステップS71へ戻り、次のシーケンスについて上述した処理が繰り返される。
   (3)第3の例
 図31は、エンハンスメントレイヤの復号処理における色域予測処理の流れの第3の例を示すフローチャートである。
 図31を参照すると、まず、可逆復号部62は、色域予測のために設定されるべき予測モードを示す予測モードパラメータを、SPSから復号する(ステップS71)。そして、予測モード設定部92は、復号された予測モードパラメータにより示される予測モードを、シーケンスに設定する(ステップS73)。
 ステップS74~ステップS91の処理は、シーケンス内のスライスごとに繰り返される。
 アップサンプリング部91は、共通メモリ7から取得されるベースレイヤの画像を、ベースレイヤとエンハンスメントレイヤとの間の解像度比に従ってアップサンプリングする(ステップS74)。
 さらに、予測モード設定部92により設定された予測モードに依存して、処理は分岐する(ステップS76、S78)。例えば、設定された予測モードが適応パラメータモードである場合、可逆復号部62は、重み付け予測関連パラメータのシンタックスを再利用することにより符号化されているゲイン及びオフセットの値の過去の値からの差分を、スライスヘッダから復号する(ステップS81)。そして、パラメータ計算部93は、復号されたゲイン及びオフセットの差分をゲイン及びオフセットの過去の値にそれぞれ加算することにより、最新のスライスについて使用すべきゲイン及びオフセットを計算する(ステップS82)。
 設定された予測モードが適応パラメータモード又は固定パラメータモードである場合、色域変換部94は、式(4)~式(6)に従って、アップサンプリング後のベースレイヤの画素値に適応的に計算された又は固定的なゲインを乗算し、さらにオフセットを加算することにより、各画素の予測画素値を計算する(ステップS84)。なお、符号化ストリームから復号され得るビットシフト制御フラグに従って、ここでの予測画素値の計算が、インターレイヤ予測のためのビットシフトを含んでもよい。また、ビットシフトは、ステップS74におけるアップサンプリングのフィルタ演算に含まれてもよい。
 設定された予測モードがビットシフトモードである場合、色域変換部94は、式(1)~式(3)に従って、アップサンプリング後のベースレイヤの画素値を所定のビットシフト量だけ左方へシフトさせることにより、各画素の予測画素値を計算する(ステップS86)。
 処理対象のスライス内の全ての予測画素値が計算されると、色域変換部94は、色域変換後のベースレイヤの画像、即ち色域予測の結果としての予測画像を、フレームメモリ69に格納する(ステップS88)。
 その後、シーケンス内に未処理の次のスライスが存在する場合には、処理はステップS74へ戻り、次のスライスについてアップサンプリング及び色域変換が繰り返される(ステップS91)。また、シーケンス内の全てのスライスについて色域変換が終了した場合には、次のシーケンスが存在するかがさらに判定される(ステップS92)。そして、次のシーケンスが存在する場合には、処理はステップS71へ戻り、次のシーケンスについて上述した処理が繰り返される。
   (4)第4の例
 図32は、エンハンスメントレイヤの復号処理における色域予測処理の流れの第4の例を示すフローチャートである。
 図32を参照すると、まず、可逆復号部62は、色域予測のために設定されるべき予測モードを示す予測モードパラメータを、SPSから復号する(ステップS71)。そして、予測モード設定部92は、復号された予測モードパラメータにより示される予測モードを、シーケンスに設定する(ステップS73)。
 ステップS74~ステップS91の処理は、シーケンス内のスライスごとに繰り返される。
 アップサンプリング部91は、共通メモリ7から取得されるベースレイヤの画像を、ベースレイヤとエンハンスメントレイヤとの間の解像度比に従ってアップサンプリングする(ステップS74)。
 さらに、予測モード設定部92により設定された予測モードに依存して、処理は分岐する(ステップS76、S78)。例えば、設定された予測モードが適応パラメータモードである場合、可逆復号部62は、重み付け予測関連パラメータのシンタックスのL0参照フレーム用の部分及びL1参照フレーム用の部分から、予測パラメータの第1のバージョン及び第2のバージョンについての差分をそれぞれ復号する(ステップS81b)。そして、パラメータ計算部93は、第1のバージョンについて復号されたゲイン及びオフセットの差分をゲイン及びオフセットの過去の値にそれぞれ加算することにより、最新のスライスについて使用すべき予測パラメータの第1のバージョンを計算する(ステップS83a)。同様に、パラメータ計算部93は、第2のバージョンについて復号されたゲイン及びオフセットの差分をゲイン及びオフセットの過去の値にそれぞれ加算することにより、最新のスライスについて使用すべき予測パラメータの第2のバージョンを計算する(ステップS83b)。これら第1のバージョン及び第2のバージョンは、それぞれ、画素値のレンジのうちの第1のバンド及び第2のバンドのために使用すべき最適な値のセットを含んでもよい。その代わりに、これら第1のバージョン及び第2のバージョンは、それぞれ、第1の画像領域及び第2の画像領域のために使用すべき最適な値のセットを含んでもよい。
 その後の処理の流れは、画素値が属するバンド又は画素が属する画像領域に応じた予測パラメータのバージョンの切替えがステップS84において行われ得ることを除き、図31を用いて説明した第3の例と同様であってよい。なお、可逆復号部62は、ステップS81bにおいて、予測パラメータのバージョンの切替えのためのバンド間の境界値又は画像領域間の領域境界を特定する境界情報を、例えばスライスヘッダ又はスライスヘッダの拡張から、追加的に復号してもよい。
   (5)処理順序の変形例
 図29~図32のフローチャートは、アップサンプリングの実行後に色域変換が実行される例を示している。しかしながら、図25A及び図25Bを用いて説明したように、一変形例として、色域予測部90は、エンハンスメントレイヤの空間解像度(画像サイズ)がベースレイヤの空間解像度よりも高い場合に、ベースレイヤ画像の色域を変換した後、変換された当該画像をアップサンプリングすることにより、エンハンスメントレイヤ画像を予測してもよい。そのような処理順序によれば、色域変換の変換対象の画素数及びビット深度が既存の処理順序のケースと比較して低減されるため、インターレイヤ予測の処理コストを一層抑制することができる。
 <6.応用例>
  [6-1.様々な製品への応用]
 上述した実施形態に係る画像符号化装置10及び画像復号装置60は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。
   (1)第1の応用例
 図33は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース909、制御部910、ユーザインタフェース911、及びバス912を備える。
 チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
 デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
 デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。
 映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
 表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOLEDなど)の映像面上に映像又は画像を表示する。
 音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
 外部インタフェース909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
 制御部910は、CPU(Central Processing Unit)などのプロセッサ、並びにRAM(Random Access Memory)及びROM(Read Only Memory)などのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。
 ユーザインタフェース911は、制御部910と接続される。ユーザインタフェース911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。
 バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース909及び制御部910を相互に接続する。
 このように構成されたテレビジョン装置900において、デコーダ904は、上述した実施形態に係る画像復号装置60の機能を有する。それにより、テレビジョン装置900が色域の互いに異なるレイヤについて色域予測を実行する際に、高い予測精度を達成しながら符号量の増加を抑制することができる。
   (2)第2の応用例
 図34は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
 アンテナ921は、通信部922に接続される。スピーカ924及びマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、及び制御部931を相互に接続する。
 携帯電話機920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
 音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号をアンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
 また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号をアンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929の記憶媒体に記憶させる。
 記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
 また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記録再生部929の記憶媒体に記憶させる。
 また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号をアンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
 このように構成された携帯電話機920において、画像処理部927は、上述した実施形態に係る画像符号化装置10及び画像復号装置60の機能を有する。それにより、携帯電話機920が色域の互いに異なるレイヤについて色域予測を実行する際に、高い予測精度を達成しながら符号量の増加を抑制することができる。
   (3)第3の応用例
 図35は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データ及び映像データを復号する。
 記録再生装置940は、チューナ941、外部インタフェース942、エンコーダ943、HDD(Hard Disk Drive)944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)948、制御部949、及びユーザインタフェース950を備える。
 チューナ941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。即ち、チューナ941は、記録再生装置940における伝送手段としての役割を有する。
 外部インタフェース942は、記録再生装置940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース942は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース942を介して受信される映像データ及び音声データは、エンコーダ943へ入力される。即ち、外部インタフェース942は、記録再生装置940における伝送手段としての役割を有する。
 エンコーダ943は、外部インタフェース942から入力される映像データ及び音声データが符号化されていない場合に、映像データ及び音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。
 HDD944は、映像及び音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラム及びその他のデータを内部のハードディスクに記録する。また、HDD944は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。
 ディスクドライブ945は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVDディスク(DVD-Video、DVD-RAM、DVD-R、DVD-RW、DVD+R、DVD+RW等)又はBlu-ray(登録商標)ディスクなどであってよい。
 セレクタ946は、映像及び音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944又はディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944又はディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。
 デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD948へ出力する。また、デコーダ904は、生成した音声データを外部のスピーカへ出力する。
 OSD948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
 制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース950から入力される操作信号に応じて、記録再生装置940の動作を制御する。
 ユーザインタフェース950は、制御部949と接続される。ユーザインタフェース950は、例えば、ユーザが記録再生装置940を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。
 このように構成された記録再生装置940において、エンコーダ943は、上述した実施形態に係る画像符号化装置10の機能を有する。また、デコーダ947は、上述した実施形態に係る画像復号装置60の機能を有する。それにより、記録再生装置940が色域の互いに異なるレイヤについて色域予測を実行する際に、高い予測精度を達成しながら符号量の増加を抑制することができる。
   (4)第4の応用例
 図36は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
 撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、制御部970、ユーザインタフェース971、及びバス972を備える。
 光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、及び制御部970を相互に接続する。
 光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD又はCMOSなどのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。
 信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。
 画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース966又はメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース966又はメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。
 OSD969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。
 外部インタフェース966は、例えばUSB入出力端子として構成される。外部インタフェース966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース966は、撮像装置960における伝送手段としての役割を有する。
 メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
 制御部970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース971から入力される操作信号に応じて、撮像装置960の動作を制御する。
 ユーザインタフェース971は、制御部970と接続される。ユーザインタフェース971は、例えば、ユーザが撮像装置960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。
 このように構成された撮像装置960において、画像処理部964は、上述した実施形態に係る画像符号化装置10及び画像復号装置60の機能を有する。それにより、撮像装置960が色域の互いに異なるレイヤについて色域予測を実行する際に、高い予測精度を達成しながら符号量の増加を抑制することができる。
  [6-2.スケーラブル符号化の様々な用途]
 上述したスケーラブル符号化の利点は、様々な用途において享受され得る。以下、3つの用途の例について説明する。
   (1)第1の例
 第1の例において、スケーラブル符号化は、データの選択的な伝送のために利用される。図37を参照すると、データ伝送システム1000は、ストリーム記憶装置1001及び配信サーバ1002を含む。配信サーバ1002は、ネットワーク1003を介して、いくつかの端末装置と接続される。ネットワーク1003は、有線ネットワークであっても無線ネットワークであってもよく、又はそれらの組合せであってもよい。図37には、端末装置の例として、PC(Personal Computer)1004、AV機器1005、タブレット装置1006及び携帯電話機1007が示されている。
 ストリーム記憶装置1001は、例えば、画像符号化装置10により生成される多重化ストリームを含むストリームデータ1011を記憶する。多重化ストリームは、ベースレイヤ(BL)の符号化ストリーム及びエンハンスメントレイヤ(EL)の符号化ストリームを含む。配信サーバ1002は、ストリーム記憶装置1001に記憶されているストリームデータ1011を読み出し、読み出したストリームデータ1011の少なくとも一部分を、ネットワーク1003を介して、PC1004、AV機器1005、タブレット装置1006、及び携帯電話機1007へ配信する。
 端末装置へのストリームの配信の際、配信サーバ1002は、端末装置の能力又は通信環境などの何らかの条件に基づいて、配信すべきストリームを選択する。例えば、配信サーバ1002は、端末装置が扱うことのできる画質を上回るほど高い画質を有する符号化ストリームを配信しないことにより、端末装置における遅延、オーバフロー又はプロセッサの過負荷の発生を回避してもよい。また、配信サーバ1002は、高い画質を有する符号化ストリームを配信しないことにより、ネットワーク1003の通信帯域が占有されることを回避してもよい。一方、配信サーバ1002は、これら回避すべきリスクが存在しない場合、又はユーザとの契約若しくは何らかの条件に基づいて適切だと判断される場合に、多重化ストリームの全てを端末装置へ配信してもよい。
 図37の例では、配信サーバ1002は、ストリーム記憶装置1001からストリームデータ1011を読み出す。そして、配信サーバ1002は、高い処理能力を有するPC1004へ、ストリームデータ1011をそのまま配信する。また、AV機器1005は低い処理能力を有するため、配信サーバ1002は、ストリームデータ1011から抽出されるベースレイヤの符号化ストリームのみを含むストリームデータ1012を生成し、ストリームデータ1012をAV機器1005へ配信する。また、配信サーバ1002は、高い通信レートで通信可能であるタブレット装置1006へストリームデータ1011をそのまま配信する。また、携帯電話機1007は低い通信レートでしか通信できないため、配信サーバ1002は、ベースレイヤの符号化ストリームのみを含むストリームデータ1012を携帯電話機1007へ配信する。
 このように多重化ストリームを用いることにより、伝送されるトラフィックの量を適応的に調整することができる。また、個々のレイヤがそれぞれ単独に符号化されるケースと比較して、ストリームデータ1011の符号量は削減されるため、ストリームデータ1011の全体が配信されるとしても、ネットワーク1003に掛かる負荷は抑制される。さらに、ストリーム記憶装置1001のメモリリソースも節約される。
 端末装置のハードウエア性能は、装置ごとに異なる。また、端末装置において実行されるアプリケーションのケイパビリティも様々である。さらに、ネットワーク1003の通信容量もまた様々である。データ伝送のために利用可能な容量は、他のトラフィックの存在に起因して、時々刻々と変化し得る。そこで、配信サーバ1002は、ストリームデータの配信を開始する前に、配信先の端末装置との間のシグナリングを通じて、端末装置のハードウエア性能及びアプリケーションケイパビリティなどに関する端末情報と、ネットワーク1003の通信容量などに関するネットワーク情報とを取得してもよい。そして、配信サーバ1002は、取得した情報に基づいて、配信すべきストリームを選択し得る。
 なお、復号すべきレイヤの抽出は、端末装置において行われてもよい。例えば、PC1004は、受信した多重化ストリームから抽出され復号されるベースレイヤ画像をその画面に表示してもよい。また、PC1004は、受信した多重化ストリームからベースレイヤの符号化ストリームを抽出してストリームデータ1012を生成し、生成したストリームデータ1012を記憶媒体に記憶させ、又は他の装置へ転送してもよい。
 図37に示したデータ伝送システム1000の構成は一例に過ぎない。データ伝送システム1000は、いかなる数のストリーム記憶装置1001、配信サーバ1002、ネットワーク1003、及び端末装置を含んでもよい。
   (2)第2の例
 第2の例において、スケーラブル符号化は、複数の通信チャネルを介するデータの伝送のために利用される。図38を参照すると、データ伝送システム1100は、放送局1101及び端末装置1102を含む。放送局1101は、地上波チャネル1111上で、ベースレイヤの符号化ストリーム1121を放送する。また、放送局1101は、ネットワーク1112を介して、エンハンスメントレイヤの符号化ストリーム1122を端末装置1102へ送信する。
 端末装置1102は、放送局1101により放送される地上波放送を受信するための受信機能を有し、地上波チャネル1111を介してベースレイヤの符号化ストリーム1121を受信する。また、端末装置1102は、放送局1101と通信するための通信機能を有し、ネットワーク1112を介してエンハンスメントレイヤの符号化ストリーム1122を受信する。
 端末装置1102は、例えば、ユーザからの指示に応じて、ベースレイヤの符号化ストリーム1121を受信し、受信した符号化ストリーム1121からベースレイヤ画像を復号してベースレイヤ画像を画面に表示してもよい。また、端末装置1102は、復号したベースレイヤ画像を記憶媒体に記憶させ、又は他の装置へ転送してもよい。
 また、端末装置1102は、例えば、ユーザからの指示に応じて、ネットワーク1112を介してエンハンスメントレイヤの符号化ストリーム1122を受信し、ベースレイヤの符号化ストリーム1121とエンハンスメントレイヤの符号化ストリーム1122とを多重化することにより多重化ストリームを生成してもよい。また、端末装置1102は、エンハンスメントレイヤの符号化ストリーム1122からエンハンスメントレイヤ画像を復号してエンハンスメントレイヤ画像を画面に表示してもよい。また、端末装置1102は、復号したエンハンスメントレイヤ画像を記憶媒体に記憶させ、又は他の装置へ転送してもよい。
 上述したように、多重化ストリームに含まれる各レイヤの符号化ストリームは、レイヤごとに異なる通信チャネルを介して伝送され得る。それにより、個々のチャネルに掛かる負荷を分散させて、通信の遅延若しくはオーバフローの発生を抑制することができる。
 また、何らかの条件に応じて、伝送のために使用される通信チャネルが動的に選択されてもよい。例えば、データ量が比較的多いベースレイヤの符号化ストリーム1121は帯域幅の広い通信チャネルを介して伝送され、データ量が比較的少ないエンハンスメントレイヤの符号化ストリーム1122は帯域幅の狭い通信チャネルを介して伝送され得る。また、特定のレイヤの符号化ストリーム1122が伝送される通信チャネルが、通信チャネルの帯域幅に応じて切り替えられてもよい。それにより、個々のチャネルに掛かる負荷をより効果的に抑制することができる。
 なお、図38に示したデータ伝送システム1100の構成は一例に過ぎない。データ伝送システム1100は、いかなる数の通信チャネル及び端末装置を含んでもよい。また、放送以外の用途において、ここで説明したシステムの構成が利用されてもよい。
   (3)第3の例
 第3の例において、スケーラブル符号化は、映像の記憶のために利用される。図39を参照すると、データ伝送システム1200は、撮像装置1201及びストリーム記憶装置1202を含む。撮像装置1201は、被写体1211を撮像することにより生成される画像データをスケーラブル符号化し、多重化ストリーム1221を生成する。多重化ストリーム1221は、ベースレイヤの符号化ストリーム及びエンハンスメントレイヤの符号化ストリームを含む。そして、撮像装置1201は、多重化ストリーム1221をストリーム記憶装置1202へ供給する。
 ストリーム記憶装置1202は、撮像装置1201から供給される多重化ストリーム1221を、モードごとに異なる画質で記憶する。例えば、ストリーム記憶装置1202は、通常モードにおいて、多重化ストリーム1221からベースレイヤの符号化ストリーム1222を抽出し、抽出したベースレイヤの符号化ストリーム1222を記憶する。これに対し、ストリーム記憶装置1202は、高画質モードにおいて、多重化ストリーム1221をそのまま記憶する。それにより、ストリーム記憶装置1202は、高画質での映像の記録が望まれる場合にのみ、データ量の多い高画質のストリームを記録することができる。そのため、画質の劣化のユーザへの影響を抑制しながら、メモリリソースを節約することができる。
 例えば、撮像装置1201は、監視カメラであるものとする。撮像画像に監視対象(例えば侵入者)が映っていない場合には、通常モードが選択される。この場合、撮像画像は重要でない可能性が高いため、データ量の削減が優先され、映像は低画質で記録される(即ち、ベースレイヤの符号化ストリーム1222のみが記憶される)。これに対し、撮像画像に監視対象(例えば、侵入者である被写体1211)が映っている場合には、高画質モードが選択される。この場合、撮像画像は重要である可能性が高いため、画質の高さが優先され、映像は高画質で記録される(即ち、多重化ストリーム1221が記憶される)。
 図39の例では、モードは、例えば画像解析結果に基づいて、ストリーム記憶装置1202により選択される。しかしながら、かかる例に限定されず、撮像装置1201がモードを選択してもよい。後者の場合、撮像装置1201は、通常モードにおいて、ベースレイヤの符号化ストリーム1222をストリーム記憶装置1202へ供給し、高画質モードにおいて、多重化ストリーム1221をストリーム記憶装置1202へ供給してもよい。
 なお、モードを選択するための選択基準は、いかなる基準であってもよい。例えば、マイクロフォンを通じて取得される音声の大きさ又は音声の波形などに応じて、モードが切り替えられてもよい。また、周期的にモードが切り替えられてもよい。また、ユーザからの指示に応じてモードが切り替えられてもよい。さらに、選択可能なモードの数は、階層化されるレイヤの数を超えない限り、いかなる数であってもよい。
 図39に示したデータ伝送システム1200の構成は一例に過ぎない。データ伝送システム1200は、いかなる数の撮像装置1201を含んでもよい。また、監視カメラ以外の用途において、ここで説明したシステムの構成が利用されてもよい。
  [6-3.その他]
   (1)マルチビューコーデックへの応用
 マルチビューコーデックは、マルチレイヤコーデックの一種であり、いわゆる多視点映像を符号化し及び復号するための画像符号化方式である。図40は、マルチビューコーデックについて説明するための説明図である。図40を参照すると、3つの視点においてそれぞれ撮影される3つのビューのフレームのシーケンスが示されている。各ビューには、ビューID(view_id)が付与される。これら複数のビューのうちいずれか1つのビューが、ベースビュー(base view)に指定される。ベースビュー以外のビューは、ノンベースビューと呼ばれる。図40の例では、ビューIDが“0”であるビューがベースビューであり、ビューIDが“1”又は“2”である2つのビューがノンベースビューである。これらビューが階層的に符号化される場合、各ビューがレイヤに相当し得る。図中に矢印で示したように、ノンベースビューの画像は、ベースビューの画像を参照して符号化され及び復号される(他のノンベースビューの画像も参照されてよい)。
 図41は、マルチビューコーデックをサポートする画像符号化装置10vの概略的な構成を示すブロック図である。図41を参照すると、画像符号化装置10vは、第1レイヤ符号化部1c、第2レイヤ符号化部1d、共通メモリ2及び多重化部3を備える。
 第1レイヤ符号化部1cの機能は、入力としてベースレイヤ画像の代わりにベースビュー画像を受け取ることを除き、図4を用いて説明したBL符号化部1aの機能と同等である。第1レイヤ符号化部1cは、ベースビュー画像を符号化し、第1レイヤの符号化ストリームを生成する。第2レイヤ符号化部1dの機能は、入力としてエンハンスメントレイヤ画像の代わりにノンベースビュー画像を受け取ることを除き、図4を用いて説明したEL符号化部1bの機能と同等である。第2レイヤ符号化部1dは、ノンベースビュー画像を符号化し、第2レイヤの符号化ストリームを生成する。共通メモリ2は、レイヤ間で共通的に利用される情報を記憶する。多重化部3は、第1レイヤ符号化部1cにより生成される第1レイヤの符号化ストリームと、第2レイヤ符号化部1dにより生成される第2レイヤの符号化ストリームとを多重化し、マルチレイヤの多重化ストリームを生成する。
 図42は、マルチビューコーデックをサポートする画像復号装置60vの概略的な構成を示すブロック図である。図42を参照すると、画像復号装置60vは、逆多重化部5、第1レイヤ復号部6c、第2レイヤ復号部6d及び共通メモリ7を備える。
 逆多重化部5は、マルチレイヤの多重化ストリームを第1レイヤの符号化ストリーム及び第2レイヤの符号化ストリームに逆多重化する。第1レイヤ復号部6cの機能は、入力としてベースレイヤ画像の代わりにベースビュー画像が符号化された符号化ストリームを受け取ることを除き、図5を用いて説明したBL復号部6aの機能と同等である。第1レイヤ復号部6cは、第1レイヤの符号化ストリームからベースビュー画像を復号する。第2レイヤ復号部6dの機能は、入力としてエンハンスメントレイヤ画像の代わりにノンベースビュー画像が符号化された符号化ストリームを受け取ることを除き、図5を用いて説明したEL復号部6bの機能と同等である。第2レイヤ復号部6dは、第2レイヤの符号化ストリームからノンベースビュー画像を復号する。共通メモリ7は、レイヤ間で共通的に利用される情報を記憶する。
 マルチビューの画像データを符号化し又は復号する際、ビュー間で色域が異なる場合には、本開示に係る技術に従って、ビュー間の色域の変換が制御されてもよい。それにより、スケーラブル符号化のケースと同様に、マルチビューコーデックにおいても、色域予測の高い予測精度を達成しながら符号量の増加を抑制することができる。
   (2)ストリーミング技術への応用
 本開示に係る技術は、ストリーミングプロトコルに適用されてもよい。例えば、MPEG-DASH(Dynamic Adaptive Streaming over HTTP)では、解像度などのパラメータが互いに異なる複数の符号化ストリームがストリーミングサーバにおいて予め用意される。そして、ストリーミングサーバは、複数の符号化ストリームからストリーミングすべき適切なデータをセグメント単位で動的に選択し、選択したデータを配信する。このようなストリーミングプロトコルにおいて、本開示に係る技術に従って、符号化ストリーム間の色域の予測が制御されてもよい。
 <7.まとめ>
 ここまで、図1~図42を用いて、本開示に係る技術の実施形態について詳細に説明した。上述した実施形態によれば、第1レイヤ(例えば、ベースレイヤ)とは異なる色域を有する第2レイヤ(例えば、エンハンスメントレイヤ)の画像を第1レイヤの画像から予測する際に使用される予測パラメータの過去の値からの差分が、符号化ストリームから復号される。そして、復号された当該差分を用いて上記予測パラメータが計算され、計算された予測パラメータを用いて第2レイヤの画像が予測される。色域の予測(変換)のために最適な予測パラメータが動的に変化するとしても、そのパラメータ値のフレームごとの変化は小さいと考えられる。従って、予測パラメータ値そのものを符号化する手法と比較して、上述した差分を符号化し及び復号する手法により、色域スケーラビリティにおいて高い予測精度を達成しながら符号量の増加を抑制することができる。
 また、上述した実施形態によれば、色域の予測のために使用される上記予測パラメータは、第1レイヤの色成分ごとの画素値に乗算されるゲイン、及びオフセットを含む。これらゲイン及びオフセットの最適値は、フレームごとに大きく変化しない。よって、上述した差分を符号化し及び復号する手法をこれらゲイン及びオフセットに適用することが有益である。なお、かかる例に限定されず、ゲイン及びオフセットの一方についてのみ差分が符号化され及び復号されてもよい。また、ゲインに対応する分母及び分子の一方について差分が計算されてもよく、又はその双方について差分が計算されてもよい。
 また、上述した実施形態によれば、予測モードパラメータが適応パラメータモードを示す場合に、上記差分を用いて計算される予測パラメータを用いて、第2レイヤの画像が予測される。従って、本開示に係る技術は、適応パラメータモードのみが使用されるケースのみならず、ビットシフトモード及び固定パラメータモードなどを含む複数の予測モードの候補から予測モードが選択されるケースにも適用可能である。
 また、ある実施例によれば、前回のフレームと最新のフレームとの間で予測モードが異なる場合にも、差分の基礎としてビットシフト量に対応する予測パラメータ値又は固定的な予測パラメータ値が使用され得る。従って、フレームごとに最適な予測モードを選択しつつ、先頭のフレーム以外の全てのフレームで、上記予測パラメータの差分を符号化することができる。
 また、ある実施例によれば、シーケンスごとに予測モードパラメータが符号化され及び復号され得る。この場合、1つのシーケンス内で予測モードが変化しないため、差分計算の複雑さを緩和することができる。その結果、装置の実装が容易となる。また、予測モードパラメータのための符号量を削減することができる。
 また、ある実施例によれば、スライスごとに上記予測パラメータの差分が復号され得る。この場合、画像の部分領域ごとに異なる色域が使用される用途において、部分領域ごとに最適な色域予測を可能とし、符号化効率を高めることができる。
 また、ある実施例によれば、重み付け予測関連パラメータと共用されるシンタックスを有するヘッダから、上記予測パラメータの差分が復号される。この場合、シンタックスの冗長性が低減され、エンコーダ及びデコーダの実装及びバージョンアップの際の互換性の確保が容易となる。また、ある変形例によれば、重み付け予測関連パラメータのシンタックスのL0参照フレーム用の部分及びL1参照フレーム用の部分の双方を活用して、色域予測のための予測パラメータの2つのバージョンが符号化され及び復号され得る。この場合、より柔軟で予測精度の高い色域予測モデルを用いることが可能となるため、色域スケーラビリティの符号化効率を向上させることができる。
 また、ある実施例によれば、インターレイヤ予測の際のビットシフトを色域変換と同時に実行すべきかを示す制御パラメータが符号化され、及び復号され得る。この場合、ビットシフトを実行するタイミング(例えば、アップサンプリングと同時、又は色域変換と同時)を適応的に切り替えて、インターレイヤ予測の処理コストを抑制することが可能となる。また、一変形例によれば、アップサンプリングの実行前に、色域変換が実行され得る。この場合、色域変換の変換対象の画素数が少なくなるため、色域変換の処理コストが一層低減され得る。
 なお、本明細書に記述したCU、PU及びTUとの用語は、HEVCにおいて、個々のブロックに関連付けられるシンタックスをも含む論理的な単位を意味する。画像の一部分としての個々のブロックのみに着目する場合、これらは、CB(Coding Block)、PB(Prediction Block)及びTB(Transform Block)との用語にそれぞれ置き換えられてもよい。CBは、CTB(Coding Tree Block)を四分木(Quad-Tree)状に階層的に分割することにより形成される。1つの四分木の全体がCTBに相当し、CTBに対応する論理的な単位はCTU(Coding Tree Unit)と呼ばれる。HEVCにおけるCTB及びCBは、符号化処理の処理単位である点でH.264/AVCにおけるマクロブロックに類似する役割を有する。但し、CTB及びCBは、そのサイズが固定的でない点でマクロブロックと異なる(マクロブロックのサイズは常に16×16画素である)。CTBのサイズは16×16画素、32×32画素及び64×64画素から選択され、符号化ストリーム内でパラメータにより指定される。CBのサイズは、CTBの分割の深さによって変化し得る。
 また、本明細書では、色域予測の制御に関する情報が、符号化ストリームのヘッダに多重化されて、符号化側から復号側へ伝送される例について主に説明した。しかしながら、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 なお、以下のような構成も本開示の技術的範囲に属する。
(1)
 第1レイヤとは異なる色域を有する第2レイヤの画像を前記第1レイヤの画像から予測する際に使用される予測パラメータの過去の値からの差分を復号する復号部と、
 前記復号部により復号される前記差分を用いて計算される前記予測パラメータを用いて、前記第1レイヤの画像から前記第2レイヤの画像を予測する予測部と、
 を備える画像処理装置。
(2)
 前記予測パラメータは、前記第1レイヤの画素値に乗算されるゲイン、及びオフセットを含む、前記(1)に記載の画像処理装置。
(3)
 前記復号部は、予測モードを示す予測モードパラメータをさらに復号し、
 前記予測部は、前記予測モードパラメータが適応パラメータモードを示す場合に、前記予測パラメータを用いて前記第2レイヤの画像を予測する、
 前記(1)又は前記(2)に記載の画像処理装置。
(4)
 前記復号部は、スライスごとに前記予測パラメータの前記差分を復号する、前記(3)に記載の画像処理装置。
(5)
 前記予測部は、最新の予測モードパラメータが前記適応パラメータモードを示し、前回の予測モードパラメータがビットシフトモードを示す場合には、前記復号部により復号される前記差分をビットシフト量に対応する予測パラメータ値に加算することにより、最新の前記予測パラメータを計算する、前記(3)又は前記(4)に記載の画像処理装置。
(6)
 前記予測部は、最新の予測モードパラメータが前記適応パラメータモードを示し、前回の予測モードパラメータが固定パラメータモードを示す場合には、前記復号部により復号される前記差分を予め定義される固定的な予測パラメータ値に加算することにより、最新の前記予測パラメータを計算する、前記(3)~(5)のいずれか1項に記載の画像処理装置。
(7)
 前記復号部は、シーケンスごとに前記予測モードパラメータを復号する、前記(3)又は前記(4)に記載の画像処理装置。
(8)
 前記復号部は、重み付け予測関連パラメータと共用されるシンタックスを有するヘッダから、前記差分を復号する、前記(1)~(7)のいずれか1項に記載の画像処理装置。
(9)
 前記復号部は、前記第2レイヤにおいて前記重み付け予測関連パラメータを復号せず、
 前記第2レイヤにおいて前記第1レイヤの前記重み付け予測関連パラメータが再利用される、
 前記(8)に記載の画像処理装置。
(10)
 前記予測パラメータの第1のバージョンが、前記重み付け予測関連パラメータと共用される前記シンタックスのL0参照フレーム用の部分から復号される差分を用いて計算され、
 前記予測パラメータの第2のバージョンが、前記重み付け予測関連パラメータと共用される前記シンタックスのL1参照フレーム用の部分から復号される差分を用いて計算され、
 前記予測部は、前記予測パラメータの前記第1のバージョン及び前記予測パラメータの前記第2のバージョンを、前記第2レイヤの画像を予測するために選択的に使用する、
 前記(8)又は前記(9)に記載の画像処理装置。
(11)
 前記予測部は、画素値が属するバンドに応じて、前記予測パラメータの前記第1のバージョン及び前記予測パラメータの前記第2のバージョンのうち使用すべきバージョンを選択する、前記(10)に記載の画像処理装置。
(12)
 前記復号部は、前記使用すべきバージョンの切替えのための境界値を特定する境界情報をさらに復号する、前記(11)に記載の画像処理装置。
(13)
 前記予測部は、画素が属する画像領域に応じて、前記予測パラメータの前記第1のバージョン及び前記予測パラメータの前記第2のバージョンのうち使用すべきバージョンを選択する、前記(10)に記載の画像処理装置。
(14)
 前記復号部は、前記使用すべきバージョンの切替えのための領域境界を特定する境界情報をさらに復号する、前記(13)に記載の画像処理装置。
(15)
 前記復号部は、前記第2レイヤのビット深度が前記第1レイヤのビット深度よりも大きい場合に、前記第2レイヤの画像を予測する際のビットシフトを色域変換と同時に実行すべきかを示す制御パラメータ、をさらに復号し、
 前記予測部は、前記第2レイヤの画像を予測する際の前記ビットシフトを色域変換と同時に実行すべきであることを前記制御パラメータが示す場合に、前記ビットシフトをアップサンプリングではなく色域変換と同時に実行する、
 前記(1)~(14)のいずれか1項に記載の画像処理装置。
(16)
 前記復号部は、輝度成分及び色差成分について別々に前記制御パラメータを復号する、前記(15)に記載の画像処理装置。
(17)
 前記予測部は、前記第2レイヤの空間解像度が前記第1レイヤの空間解像度よりも高い場合に、前記第1レイヤの画像の色域を前記予測パラメータを用いて変換した後、変換された当該画像をアップサンプリングすることにより、前記第2レイヤの画像を予測する、前記(1)~(16)のいずれか1項に記載の画像処理装置。
(18)
 第1レイヤとは異なる色域を有する第2レイヤの画像を前記第1レイヤの画像から予測する際に使用される予測パラメータの過去の値からの差分を復号することと、
 復号される前記差分を用いて計算される前記予測パラメータを用いて、前記第1レイヤの画像から前記第2レイヤの画像を予測することと、
 を含む画像処理方法。
(19)
 第1レイヤとは異なる色域を有する第2レイヤの画像を復号する際に参照される前記第1レイヤの画像から、前記第2レイヤの画像を予測する予測部と、
 前記予測部により使用される予測パラメータの過去の値からの差分を符号化する符号化部と、
 を備える画像処理装置。
(20)
 前記予測パラメータは、前記第1レイヤの画素値に乗算されるゲイン、及びオフセットを含む、前記(19)に記載の画像処理装置。
(21)
 前記符号化部は、前記差分に基づいて前記第2レイヤの画像が予測される場合に、予測モードとして適応パラメータモードを示す予測モードパラメータをさらに符号化する、前記(19)又は前記(20)に記載の画像処理装置。
(22)
 前記符号化部は、スライスごとに前記予測パラメータの前記差分を符号化する、前記(21)に記載の画像処理装置。
(23)
 前記符号化部は、最新の予測モードパラメータが前記適応パラメータモードを示し、前回の予測モードパラメータがビットシフトモードを示す場合には、前記予測パラメータの最新の値からビットシフト量に対応するパラメータ値を減算することにより計算される前記差分を符号化する、前記(21)又は前記(22)に記載の画像処理装置。
(24)
 前記符号化部は、最新の予測モードパラメータが前記適応パラメータモードを示し、前回の予測モードパラメータが固定パラメータモードを示す場合には、前記予測パラメータの最新の値から予め定義される固定的なパラメータ値を減算することにより計算される前記差分を符号化する、前記(21)~(23)のいずれか1項に記載の画像処理装置。
(25)
 前記符号化部は、シーケンスごとに前記予測モードパラメータを符号化する、前記(21)又は前記(22)に記載の画像処理装置。
(26)
 前記符号化部は、重み付け予測関連パラメータと共用されるシンタックスを有するヘッダにおいて前記差分を符号化する、前記(19)~(25)のいずれか1項に記載の画像処理装置。
(27)
 前記符号化部は、前記第2レイヤにおいて前記重み付け予測関連パラメータを符号化せず、
 前記第2レイヤにおいて前記第1レイヤの前記重み付け予測関連パラメータが再利用される、
 前記(26)に記載の画像処理装置。
(28)
 前記予測部は、前記予測パラメータの第1のバージョン及び前記予測パラメータの第2のバージョンを、前記第2レイヤの画像を予測するために選択的に使用し、
 前記符号化部は、前記予測パラメータの前記第1のバージョンについて計算される前記差分を、前記重み付け予測関連パラメータと共用される前記シンタックスのL0参照フレーム用の部分へ符号化し、前記予測パラメータの前記第2のバージョンについて計算される前記差分を、前記重み付け予測関連パラメータと共用される前記シンタックスのL1参照フレーム用の部分へ符号化する、
 前記(26)又は前記(27)に記載の画像処理装置。
(29)
 前記予測部は、画素値が属するバンドに応じて、前記予測パラメータの前記第1のバージョン及び前記予測パラメータの前記第2のバージョンのうち使用すべきバージョンを選択する、前記(28)に記載の画像処理装置。
(30)
 前記符号化部は、前記使用すべきバージョンの切替えのための境界値を特定する境界情報をさらに符号化する、前記(29)に記載の画像処理装置。
(31)
 前記予測部は、画素が属する画像領域に応じて、前記予測パラメータの前記第1のバージョン及び前記予測パラメータの前記第2のバージョンのうち使用すべきバージョンを選択する、前記(28)に記載の画像処理装置。
(32)
 前記符号化部は、前記使用すべきバージョンの切替えのための領域境界を特定する境界情報をさらに符号化する、前記(31)に記載の画像処理装置。
(33)
 前記符号化部は、前記第2レイヤのビット深度が前記第1レイヤのビット深度よりも大きい場合に、前記第2レイヤの画像を予測する際のビットシフトを色域変換と同時に実行すべきかを示す制御パラメータ、をさらに符号化する、前記(19)~(32)のいずれか1項に記載の画像処理装置。
(34)
 前記符号化部は、輝度成分及び色差成分について別々に前記制御パラメータを符号化する、前記(33)に記載の画像処理装置。
(35)
 前記予測部は、前記第2レイヤの空間解像度が前記第1レイヤの空間解像度よりも高い場合に、前記第1レイヤの画像の色域を前記予測パラメータを用いて変換した後、変換された当該画像をアップサンプリングすることにより、前記第2レイヤの画像を予測する、前記(19)~(34)のいずれか1項に記載の画像処理装置。
(36)
 第1レイヤとは異なる色域を有する第2レイヤの画像を復号する際に参照される前記第1レイヤの画像から、前記第2レイヤの画像を予測することと、
 前記第2レイヤの画像を予測するために使用される予測パラメータの過去の値からの差分を符号化することと、
 を含む画像処理方法。
 10,10v 画像符号化装置(画像処理装置)
 16     可逆符号化部
 40     色域予測部
 60,60v 画像復号装置(画像処理装置)
 62     可逆復号部
 90     色域予測部

Claims (20)

  1.  第1レイヤとは異なる色域を有する第2レイヤの画像を前記第1レイヤの画像から予測する際に使用される予測パラメータの過去の値からの差分を復号する復号部と、
     前記復号部により復号される前記差分を用いて計算される前記予測パラメータを用いて、前記第1レイヤの画像から前記第2レイヤの画像を予測する予測部と、
     を備える画像処理装置。
  2.  前記予測パラメータは、前記第1レイヤの画素値に乗算されるゲイン、及びオフセットを含む、請求項1に記載の画像処理装置。
  3.  前記復号部は、スライスごとに前記予測パラメータの前記差分を復号する、請求項1に記載の画像処理装置。
  4.  前記復号部は、重み付け予測関連パラメータと共用されるシンタックスを有するヘッダから、前記差分を復号する、請求項1に記載の画像処理装置。
  5.  前記予測パラメータの第1のバージョンが、前記重み付け予測関連パラメータと共用される前記シンタックスのL0参照フレーム用の部分から復号される差分を用いて計算され、
     前記予測パラメータの第2のバージョンが、前記重み付け予測関連パラメータと共用される前記シンタックスのL1参照フレーム用の部分から復号される差分を用いて計算され、
     前記予測部は、前記予測パラメータの前記第1のバージョン及び前記予測パラメータの前記第2のバージョンを、前記第2レイヤの画像を予測するために選択的に使用する、
     請求項4に記載の画像処理装置。
  6.  前記予測部は、画素値が属するバンドに応じて、前記予測パラメータの前記第1のバージョン及び前記予測パラメータの前記第2のバージョンのうち使用すべきバージョンを選択する、請求項5に記載の画像処理装置。
  7.  前記予測部は、画素が属する画像領域に応じて、前記予測パラメータの前記第1のバージョン及び前記予測パラメータの前記第2のバージョンのうち使用すべきバージョンを選択する、請求項5に記載の画像処理装置。
  8.  前記復号部は、前記第2レイヤのビット深度が前記第1レイヤのビット深度よりも大きい場合に、前記第2レイヤの画像を予測する際のビットシフトを色域変換と同時に実行すべきかを示す制御パラメータ、をさらに復号し、
     前記予測部は、前記第2レイヤの画像を予測する際の前記ビットシフトを色域変換と同時に実行すべきであることを前記制御パラメータが示す場合に、前記ビットシフトをアップサンプリングではなく色域変換と同時に実行する、
     請求項1に記載の画像処理装置。
  9.  前記予測部は、前記第2レイヤの空間解像度が前記第1レイヤの空間解像度よりも高い場合に、前記第1レイヤの画像の色域を前記予測パラメータを用いて変換した後、変換された当該画像をアップサンプリングすることにより、前記第2レイヤの画像を予測する、請求項1に記載の画像処理装置。
  10.  第1レイヤとは異なる色域を有する第2レイヤの画像を前記第1レイヤの画像から予測する際に使用される予測パラメータの過去の値からの差分を復号することと、
     復号される前記差分を用いて計算される前記予測パラメータを用いて、前記第1レイヤの画像から前記第2レイヤの画像を予測することと、
     を含む画像処理方法。
  11.  第1レイヤとは異なる色域を有する第2レイヤの画像を復号する際に参照される前記第1レイヤの画像から、前記第2レイヤの画像を予測する予測部と、
     前記予測部により使用される予測パラメータの過去の値からの差分を符号化する符号化部と、
     を備える画像処理装置。
  12.  前記予測パラメータは、前記第1レイヤの画素値に乗算されるゲイン、及びオフセットを含む、請求項11に記載の画像処理装置。
  13.  前記符号化部は、スライスごとに前記予測パラメータの前記差分を符号化する、請求項11に記載の画像処理装置。
  14.  前記符号化部は、重み付け予測関連パラメータと共用されるシンタックスを有するヘッダにおいて前記差分を符号化する、請求項11に記載の画像処理装置。
  15.  前記予測部は、前記予測パラメータの第1のバージョン及び前記予測パラメータの第2のバージョンを、前記第2レイヤの画像を予測するために選択的に使用し、
     前記符号化部は、前記予測パラメータの前記第1のバージョンについて計算される前記差分を、前記重み付け予測関連パラメータと共用される前記シンタックスのL0参照フレーム用の部分へ符号化し、前記予測パラメータの前記第2のバージョンについて計算される前記差分を、前記重み付け予測関連パラメータと共用される前記シンタックスのL1参照フレーム用の部分へ符号化する、
     請求項14に記載の画像処理装置。
  16.  前記予測部は、画素値が属するバンドに応じて、前記予測パラメータの前記第1のバージョン及び前記予測パラメータの前記第2のバージョンのうち使用すべきバージョンを選択する、請求項15に記載の画像処理装置。
  17.  前記予測部は、画素が属する画像領域に応じて、前記予測パラメータの前記第1のバージョン及び前記予測パラメータの前記第2のバージョンのうち使用すべきバージョンを選択する、請求項15に記載の画像処理装置。
  18.  前記符号化部は、前記第2レイヤのビット深度が前記第1レイヤのビット深度よりも大きい場合に、前記第2レイヤの画像を予測する際のビットシフトを色域変換と同時に実行すべきかを示す制御パラメータ、をさらに符号化する、請求項11に記載の画像処理装置。
  19.  前記予測部は、前記第2レイヤの空間解像度が前記第1レイヤの空間解像度よりも高い場合に、前記第1レイヤの画像の色域を前記予測パラメータを用いて変換した後、変換された当該画像をアップサンプリングすることにより、前記第2レイヤの画像を予測する、請求項11に記載の画像処理装置。
  20.  第1レイヤとは異なる色域を有する第2レイヤの画像を復号する際に参照される前記第1レイヤの画像から、前記第2レイヤの画像を予測することと、
     前記第2レイヤの画像を予測するために使用される予測パラメータの過去の値からの差分を符号化することと、
     を含む画像処理方法。
PCT/JP2014/056935 2013-04-05 2014-03-14 画像処理装置及び画像処理方法 WO2014162849A1 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
BR112014029917A BR112014029917A2 (pt) 2013-04-05 2014-03-14 aparelho e método de processamento de imagem.
RU2014148134A RU2665308C2 (ru) 2013-04-05 2014-03-14 Устройство обработки изображений и способ обработки изображений
US14/397,565 US9838716B2 (en) 2013-04-05 2014-03-14 Image processing apparatus and image processing method
CN201480001387.0A CN104380739B (zh) 2013-04-05 2014-03-14 图像处理设备和图像处理方法
MX2014014491A MX344000B (es) 2013-04-05 2014-03-14 Aparato de procesamiento de imagenes y metodo de procesamiento de imagenes.
JP2015509983A JP6345650B2 (ja) 2013-04-05 2014-03-14 画像処理装置及び画像処理方法
EP14778912.7A EP2843951B1 (en) 2013-04-05 2014-03-14 Image processing device and image processing method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2013079140 2013-04-05
JP2013-079140 2013-04-05
JP2013273228 2013-12-27
JP2013-273228 2013-12-27

Publications (1)

Publication Number Publication Date
WO2014162849A1 true WO2014162849A1 (ja) 2014-10-09

Family

ID=51658150

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/056935 WO2014162849A1 (ja) 2013-04-05 2014-03-14 画像処理装置及び画像処理方法

Country Status (8)

Country Link
US (1) US9838716B2 (ja)
EP (1) EP2843951B1 (ja)
JP (1) JP6345650B2 (ja)
CN (1) CN104380739B (ja)
BR (1) BR112014029917A2 (ja)
MX (1) MX344000B (ja)
RU (1) RU2665308C2 (ja)
WO (1) WO2014162849A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016201625A (ja) * 2015-04-08 2016-12-01 ソニー株式会社 撮像装置、撮像システムおよび撮像方法
JP2018515018A (ja) * 2015-04-17 2018-06-07 クアルコム,インコーポレイテッド 高ダイナミックレンジおよび広色域ビデオコーディングのためのダイナミックレンジ調整

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5850214B2 (ja) * 2011-01-11 2016-02-03 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
WO2015005025A1 (ja) * 2013-07-12 2015-01-15 ソニー株式会社 画像処理装置及び画像処理方法
JP6094688B2 (ja) * 2013-12-27 2017-03-15 ソニー株式会社 画像処理装置及び画像処理方法
WO2015143119A1 (en) * 2014-03-19 2015-09-24 Arris Enterprises, Inc. Scalable coding of video sequences using tone mapping and different color gamuts
JP6643368B2 (ja) 2015-07-03 2020-02-12 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 画像処理装置および画像処理方法
WO2017061189A1 (ja) * 2015-10-05 2017-04-13 シャープ株式会社 画像復号装置または画像符号化装置のための画像予測装置
GB2598255B (en) * 2016-02-17 2022-07-27 V Nova Int Ltd Physical adapter, signal processing equipment, methods and computer programs
CA3051660A1 (en) * 2017-02-03 2018-08-09 Sony Corporation Transmission device, transmission method, reception device, and reception method
JP7015639B2 (ja) * 2017-03-16 2022-02-03 株式会社ミマキエンジニアリング 色変換装置、色変換方法、及びインクジェット記録装置
KR20210117327A (ko) 2019-01-25 2021-09-28 미디어텍 인크. 비디오 코딩에서 비선형 적응적 루프 필터링을 위한 방법 및 장치
US11546587B2 (en) 2019-04-11 2023-01-03 Mediatek Inc. Adaptive loop filter with adaptive parameter set
CN111414999B (zh) * 2020-04-27 2023-08-22 新奥新智科技有限公司 一种设备运行状态的监测方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011509536A (ja) * 2008-01-04 2011-03-24 シャープ株式会社 レイヤー間(inter−layer)画像予測パラメータを決定するための方法及び装置
WO2012036467A2 (en) * 2010-09-14 2012-03-22 Samsung Electronics Co., Ltd. Apparatus and method for multilayer picture encoding/decoding

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2420021C2 (ru) * 2009-03-24 2011-05-27 Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." Способ сжатия изображений и видеопоследовательностей
JP2012065081A (ja) * 2010-09-15 2012-03-29 Hitachi Ltd 画像符号化方法、画像復号化方法、画像符号化装置及び画像復号化装置
US8787459B2 (en) * 2010-11-09 2014-07-22 Sony Computer Entertainment Inc. Video coding methods and apparatus
US20140198846A1 (en) * 2013-01-16 2014-07-17 Qualcomm Incorporated Device and method for scalable coding of video information

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011509536A (ja) * 2008-01-04 2011-03-24 シャープ株式会社 レイヤー間(inter−layer)画像予測パラメータを決定するための方法及び装置
WO2012036467A2 (en) * 2010-09-14 2012-03-22 Samsung Electronics Co., Ltd. Apparatus and method for multilayer picture encoding/decoding

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
BENJAMIN BROSS; WOO-JIN HAN; GARY J. SULLIVAN; JENS-RAINER OHM; GARY J. SULLIVAN; YE-KUI WANG; THOMAS WIEGAND: "High Efficiency Video Coding (HEVC) text specification draft 10 (for FDIS & Consent", JCTVC-L1003, vol. 4, 14 January 2013 (2013-01-14)
JIANLE CHEN: "Description of scalable video coding technology proposal by Qualcomm (configuration 2", JCTVC-K0036, 10 October 2012 (2012-10-10)
LOUIS KEROFSKY ET AL.: "Color Gamut Scalable Video Coding: New Results", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 12TH ME ETING, 14 January 2013 (2013-01-14), GENEVA, CH, XP055121596 *
LOUIS KEROFSKY: "Color Gamut Scalable Video Coding: New Results", JCTVC-L0334, 14 January 2013 (2013-01-14)
XIANG LI ET AL.: "Non-SCE4: Weighted Prediction Based Color Gamut Scalability", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 15TH MEETING, 23 October 2013 (2013-10-23), GENEVA, CH, XP030115215 *
YUWEN HE ET AL.: "Non-SCE4/AHG14: Combined bit-depth and color gamut conversion with 3D LUT for SHVC color gamut scalability", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT- VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 15TH MEETING, 23 October 2013 (2013-10-23), GENEVA, CH, XP030115185 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016201625A (ja) * 2015-04-08 2016-12-01 ソニー株式会社 撮像装置、撮像システムおよび撮像方法
US10455205B2 (en) 2015-04-08 2019-10-22 Sony Corporation Imaging apparatus, imaging system, and imaging method
US10944948B2 (en) 2015-04-08 2021-03-09 Sony Corporation Imaging apparatus, imaging system, and imaging method
JP2018515018A (ja) * 2015-04-17 2018-06-07 クアルコム,インコーポレイテッド 高ダイナミックレンジおよび広色域ビデオコーディングのためのダイナミックレンジ調整

Also Published As

Publication number Publication date
CN104380739A (zh) 2015-02-25
US20150103901A1 (en) 2015-04-16
JP6345650B2 (ja) 2018-06-20
CN104380739B (zh) 2018-10-26
EP2843951A4 (en) 2016-01-20
EP2843951B1 (en) 2019-01-02
BR112014029917A2 (pt) 2017-07-25
RU2014148134A3 (ja) 2018-03-13
MX344000B (es) 2016-12-02
US9838716B2 (en) 2017-12-05
EP2843951A1 (en) 2015-03-04
MX2014014491A (es) 2015-03-09
RU2665308C2 (ru) 2018-08-28
JPWO2014162849A1 (ja) 2017-02-16
RU2014148134A (ru) 2016-06-20

Similar Documents

Publication Publication Date Title
JP6094688B2 (ja) 画像処理装置及び画像処理方法
JP6345650B2 (ja) 画像処理装置及び画像処理方法
JP6455434B2 (ja) 画像処理装置及び画像処理方法
WO2015053001A1 (ja) 画像処理装置及び画像処理方法
JP6330507B2 (ja) 画像処理装置及び画像処理方法
WO2015005025A1 (ja) 画像処理装置及び画像処理方法
WO2013164922A1 (ja) 画像処理装置及び画像処理方法
WO2015146278A1 (ja) 画像処理装置及び画像処理方法
WO2015098561A1 (ja) 復号装置および復号方法、並びに、符号化装置および符号化方法
US20150043638A1 (en) Image processing apparatus and image processing method
WO2014148070A1 (ja) 画像処理装置及び画像処理方法
WO2015005024A1 (ja) 画像処理装置及び画像処理方法
WO2015052979A1 (ja) 画像処理装置及び画像処理方法
JPWO2014002900A1 (ja) 画像処理装置および画像処理方法
WO2015098231A1 (ja) 画像処理装置及び画像処理方法
WO2014097703A1 (ja) 画像処理装置及び画像処理方法
WO2015053111A1 (ja) 復号装置および復号方法、並びに、符号化装置および符号化方法
WO2014050311A1 (ja) 画像処理装置及び画像処理方法

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 14397565

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2014778912

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2015509983

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: MX/A/2014/014491

Country of ref document: MX

ENP Entry into the national phase

Ref document number: 2014148134

Country of ref document: RU

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14778912

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112014029917

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 112014029917

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20141128