WO2013161690A1 - 画像復号装置および画像符号化装置 - Google Patents

画像復号装置および画像符号化装置 Download PDF

Info

Publication number
WO2013161690A1
WO2013161690A1 PCT/JP2013/061589 JP2013061589W WO2013161690A1 WO 2013161690 A1 WO2013161690 A1 WO 2013161690A1 JP 2013061589 W JP2013061589 W JP 2013061589W WO 2013161690 A1 WO2013161690 A1 WO 2013161690A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
filter
unit
prediction
layer
Prior art date
Application number
PCT/JP2013/061589
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 シャープ株式会社
Publication of WO2013161690A1 publication Critical patent/WO2013161690A1/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/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/187Methods 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 scalable video layer
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • 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
    • 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/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

Definitions

  • the present invention relates to an image decoding apparatus that decodes encoded data in which image data is hierarchically encoded, and an image encoding apparatus that generates encoded data in which image data is hierarchically encoded.
  • One of information transmitted in a communication system or information recorded in a storage device is an image or a moving image.
  • images hereinafter including moving images
  • hierarchical encoding that encodes images hierarchically according to a required data rate is used.
  • Hierarchical coding methods include ISO / IEC and ITU-T standards as H.264. H.264 / AVC Annex G Scalable Video Coding (SVC).
  • SVC supports spatial scalability, temporal scalability, and SNR scalability. For example, in the case of spatial scalability, an image obtained by down-sampling an original image to a desired resolution is used as a lower layer. It is encoded with H.264 / AVC. Next, the upper layer performs inter-layer prediction in order to remove redundancy between layers.
  • inter-layer prediction there is motion information prediction in which information related to motion prediction is predicted from information in a lower layer at the same time, or texture prediction in which prediction is performed from an image obtained by up-sampling a decoded image in a lower layer at the same time (non-patent document) 1).
  • FIG. 18 is a block diagram showing an example of the hierarchical image encoding apparatus 200.
  • the hierarchical image encoding device 200 includes a lower layer image encoding device 2001, an upper layer image encoding device 2002, an upsampling unit 2003, a switching unit 2004, a downsampling unit 2005, and a switching unit 2006.
  • the lower layer image encoding apparatus 2001 performs encoding in the lower layer by a predetermined encoding method. It is encoded with H.264 / AVC.
  • the lower layer image encoding apparatus 2001 encodes an original image (input image) or an image obtained by down-sampling the original image, and outputs lower layer encoded data.
  • Upper layer image encoding apparatus 2002 encodes an original image using a lower layer decoded image or an image obtained by up-sampling the decoded image, lower layer encoding information (information on motion prediction, etc.), and upper layer encoded data Is output.
  • the upsampling unit 2003 upsamples the decoded image of the lower layer in the case of spatial scalability.
  • the switching unit 2004 performs upsampling in spatial scalability, and switches processing so as to skip upsampling in other cases.
  • the downsampling unit 2005 downsamples the original image in the case of spatial scalability.
  • the switching unit 2006 performs downsampling for spatial scalability, and switches the processing so as to skip downsampling in other cases.
  • FIG. 19 is a block diagram illustrating an example of the hierarchical image decoding apparatus 100.
  • the hierarchical image decoding device 100 includes a lower layer image decoding device 1001, an upper layer image decoding device 1002, an upsampling unit 1003, and a switching unit 1004.
  • the lower layer image decoding apparatus 1001 is for decoding lower layer encoded data by a predetermined encoding method. Decrypt with H.264 / AVC.
  • the lower layer image decoding apparatus 1001 decodes lower layer encoded data and outputs a lower layer decoded image.
  • the upper layer image decoding apparatus 1002 uses the upper layer encoded data, the lower layer decoded image or the image obtained by up-sampling the decoded image, and the lower layer encoded information (information on motion prediction, etc.). Is output.
  • the upsampling unit 1003 and the switching unit 1004 are the same components as the upsampling unit 2003 and the switching unit 2004 in FIG.
  • the loop filter is provided for the purpose of minimizing the difference between the original image and the decoded image obtained by adding the prediction error image to the prediction image (improving objective image quality) or improving the subjective image quality.
  • the decoded image to which the loop filter is applied is used as a reference image used in motion compensation when generating a predicted image, thereby improving the objective / subjective image quality of the reference image, and further encoding using motion compensation.
  • the image quality can be improved.
  • the loop filter include a deblocking filter, a SAO (sample adaptive offset) filter, and an ALF (adaptive loop filter) (Non-Patent Document 2).
  • the decoded image of the lower layer is up-sampled to be a predicted image, and in temporal scalability and SNR scalability, The decoded image is used as it is as a predicted image. Therefore, when the decoded image of the lower layer is a low quality image including a lot of coding distortion (block distortion, quantization noise, etc.), the predicted image of the upper layer referring to this decoded image also becomes low quality, and as a result Therefore, the amount of encoded data in the upper layer is increased.
  • coding distortion block distortion, quantization noise, etc.
  • the present invention improves the encoding efficiency in the upper layer by improving the image quality of the decoded image from the lower layer, and improves the objective and subjective image quality of the decoded image in the upper layer.
  • An image decoding device and an image encoding device are provided.
  • an image decoding device decodes higher layer encoded data included in hierarchically encoded data and generates a reference with reference to a decoded image from the lower layer
  • An image decoding apparatus that restores a decoded image of an upper layer using a predicted image of an upper layer, wherein a filter application determining unit determines a filter to be applied to the decoded image from the lower layer referenced from the upper layer And a filter application unit that applies the filter determined by the filter application determination unit to the decoded image from the lower layer to be referred to.
  • the filter when generating the predicted image of the upper layer, the filter can be applied to the decoded image from the lower layer when referring to the decoded image from the lower layer from the upper layer.
  • determining a filter to apply includes determining not to apply a filter.
  • the objective and subjective image quality of the decoded image from the lower layer can be improved by applying the filter.
  • the decoded image from the lower layer to which the filter is applied for the texture prediction of the upper layer inter-layer prediction in the upper layer can be performed more accurately.
  • the encoding efficiency in the upper layer can be improved, and the objective / subjective image quality of the decoded image in the upper layer can be improved.
  • the difference between the original image and the decoded image of the higher layer obtained by adding the prediction error image to the prediction image can be minimized (improving objective image quality), or the subjective image quality can be improved.
  • the filter application determining unit determines a filter to be applied according to encoding efficiency required for a predetermined index.
  • Filter types include single filters and combinations of multiple filters.
  • the predetermined index includes, for example, a scalability type, a picture type, and a lower layer codec type.
  • scalability indicators it is as follows.
  • ALF with a high image quality improvement width is suitable although the processing amount is large.
  • the above configuration can apply a filter according to a request for image quality for a predetermined index.
  • the filter application determining means determines scalability as the predetermined index, and when the scalability is spatial scalability, the applied filter is more effective in improving the image quality than when the spatial scalability is not applied. It is preferable to determine a high filter.
  • a filter with a high image quality improvement range for example, ALF
  • the processing amount is large.
  • the scalability is the spatial scalability, it is possible to apply a filter having a higher image quality improvement effect.
  • the image quality of the decoded image of the lower layer that is referred to in order to generate the predicted image of the upper layer can be improved.
  • the filter application determining unit determines, as the predetermined index, whether or not an image to be decoded is a reference image that is referred to when decoding a subsequent image, When the image to be decoded is a reference image, it is preferable to determine a filter having a higher image quality improvement effect than the case in which the image to be decoded is not a reference image.
  • a filter with a large image quality improvement range for example, ALF, is suitable although the processing amount is large.
  • the image to be decoded is not a reference image, it does not have to be as high in image quality as the referenced image. Therefore, it is not necessary to apply a filter in terms of processing amount.
  • the filter application determining means determines, as the predetermined index, a coding method used in a lower layer, and determines a filter to apply a filter according to the image quality of the coding method. It is preferable.
  • a filter corresponding to the image quality of the encoding method can be applied.
  • Examples of encoding methods include MPEG-2, H.264, and the like. H.264 / AVC, HEVC, and the like.
  • the image quality is MPEG-2, H.264, or the like. H.264 / AVC and HEVC in this order.
  • a filter having a higher image quality improvement effect can be applied to an encoding method with lower image quality than to an encoding method with higher image quality.
  • the filter application determining unit determines a filter to be applied according to a processing amount related to a predetermined index.
  • the filter to be applied is determined according to the processing amount related to the predetermined index.
  • the predetermined index include resolution and upsampling position (in the case of spatial scalability).
  • the image decoding apparatus includes an upsampling unit that upsamples a lower layer image into an upper layer image in the case of spatial scalability, and the filter application determination unit includes the upsampling unit as the predetermined index, and It is preferable to determine the application order of the filter application means and determine a filter according to the application order as a filter to be applied.
  • the filter When upsampling is performed after applying the filter, the filter is applied to the low-resolution image before the upsampling, whereas when upsampling is performed before applying the filter, the filter is applied to the high-resolution image after the upsampling. Will be applied.
  • the amount of filter processing is larger when upsampling is performed after applying the filter than when upsampling is performed before applying the filter.
  • the filter application determining unit determines the resolution as the predetermined index, and when the resolution is low resolution, the image to be decoded is high resolution as the filter to be applied. It is preferable to determine a filter having a large amount of filter processing.
  • a filter with a larger amount of filter processing can be applied when the amount of decoding processing is low and the resolution is low.
  • the filter application determining unit determines a filter to be applied according to a restriction on a filter processing amount.
  • the restriction on the filter processing amount refers to, for example, the processing capability of the image decoding apparatus with respect to the filter processing amount.
  • the above configuration can improve the image quality of the decoded image from the lower layer that is referred to in order to generate the predicted image of the upper layer by applying a filter according to the allowable amount of the filter processing amount.
  • the parameter of the filter applied by the filter applying unit corresponds to the unit area for each unit area including the area to which the filter is applied in the decoded image from the lower layer.
  • the upper layer unit area may be paired with the upper layer unit data and stored in the encoded data of the upper layer.
  • the filter parameters applied to the decoded image from the lower layer are stored in the upper layer as a pair with the unit area.
  • necessary filter parameters are encoded for each unit area, so that the filter parameters are decoded when the filter parameters are used, and a memory for storing the decoded filter parameters becomes unnecessary. Therefore, memory can be reduced.
  • the unit area is, for example, a CTB (coded tree block).
  • parameters used when decoding a unit area which are commonly used in a plurality of unit areas, can be obtained from among the plurality of unit areas in the encoded data.
  • the group assembled before the unit area that is the foremost is a common group, and the filter parameters applied by the filter application means include the area to which the filter is applied in the decoded image from the lower layer. It may be stored in the common group of the upper layer in which parameters used when decoding the unit area of the upper layer corresponding to the unit area are stored.
  • the parameters of the filter applied to the decoded image from the lower layer are stored in the common group of the upper layer.
  • filter processing can be performed, and throughput can be improved.
  • the filter application unit is restored using a prediction image generated by intra prediction that generates a prediction image using pixels in the same image among decoded images from lower layers.
  • the filter may be applied only to the decoded image area.
  • the filter is applied only to the decoded image region restored using the prediction image generated by the intra prediction, and the filter is not applied to the other decoded image regions. Therefore, it is not necessary to encode unnecessary filter parameters, and encoding efficiency can be improved.
  • the processing amount of the filter can be reduced while maintaining the filter effect.
  • an image encoding apparatus uses a hierarchical code to calculate a residual obtained by subtracting an upper layer predicted image generated by referring to a decoded image from a lower layer from an original image.
  • An image encoding apparatus that generates encoded data of an upper layer by converting to a filter application determining unit that determines a filter to be applied to a decoded image from the lower layer referenced from the upper layer, and the reference referred to above Filter application means for applying the filter determined by the filter application determination means to the decoded image from the lower layer; It is characterized by having.
  • an image encoding device having a configuration corresponding to the image decoding device also falls within the scope of the present invention.
  • the data structure of the encoded image data generated by the image encoding apparatus also falls within the scope of the present invention. According to the image encoding device and the data structure of the image encoded data configured as described above, it is possible to achieve the same effect as the image decoding device according to the present invention.
  • An image decoding apparatus decodes upper layer encoded data included in hierarchically encoded data, and uses an upper layer predicted image generated by referring to a decoded image from the lower layer.
  • An image decoding device that restores a decoded image of an upper layer, comprising: a filter application determining unit that determines a filter to be applied to a decoded image from the lower layer referenced from the upper layer; and Filter application means for applying the filter determined by the filter application determination means to the decoded image.
  • the image encoding apparatus performs hierarchical encoding on a residual obtained by subtracting a predicted image of an upper layer generated by referring to a decoded image from a lower layer from an original image, and encodes data of the upper layer
  • a filter application determining means for determining a filter to be applied to a decoded image from the lower layer referenced from the upper layer, and a decoded image from the lower layer referenced Filter applying means for applying the filter determined by the filter application determining means, It has.
  • the encoding efficiency in the upper layer can be improved, and the objective / subjective image quality of the decoded image in the upper layer can be improved.
  • FIG. 3 is a diagram illustrating a data configuration of encoded data generated by the hierarchical image encoding device and decoded by the hierarchical image decoding device, where (a) to (f) are a picture layer, a slice layer, and a macroblock, respectively.
  • FIG. 1 It is a figure which shows the structure of the prediction parameter of a layer, a macroblock header, the prediction parameter of an inter prediction partition, and an intra prediction partition. It is the figure shown about the structure of the transmitter which mounts the said hierarchy image coding apparatus, and the receiver which mounts the said hierarchy image decoding apparatus.
  • (A) shows a transmission device equipped with a hierarchical image encoding device
  • (b) shows a reception device equipped with a hierarchical image decoding device. It is the figure shown about the structure of the recording device carrying the said hierarchy image coding apparatus, and the reproducing
  • (A) shows a recording device equipped with a hierarchical image encoding device
  • (b) shows a playback device equipped with a hierarchical image decoding device. It is a figure which shows an example of the filter part which switches a process according to the kind of scalability.
  • hierarchical coding data (a) is hierarchical video code
  • (B) is a hierarchical moving image that generates decoded images POUT # A to POUT # C by decoding hierarchically encoded encoded data DATA # A to DATA # C, respectively.
  • (a) is a figure which shows operation
  • (b) is a figure which shows conventional operation
  • (A) is a figure which shows the detailed example of a syntax in the case of storing the filter parameter of the filter applied to the decoded image of a base layer in the slice header of an enhancement layer, or APS.
  • (A), (b), (c) is a figure which shows the detailed example of a syntax in the case of storing the filter parameter of the filter applied to the decoded image of a base layer in the slice header of an enhancement layer, or APS. It is a figure which shows the detailed example of a syntax in the case of storing the filter parameter of the filter applied to the decoded image of a base layer in the slice header of an enhancement layer, or APS. It is a figure for demonstrating operation
  • the present invention is not limited to this, and the lower layer may be encoded by an encoding method such as MPEG-2 or HEVC. Further, the lower layer and the upper layer may be encoded by different encoding methods.
  • the lower layer encoded data and the upper layer encoded data may be supplied to the hierarchical image decoding apparatus 1 via different transmission paths, or may be hierarchically transmitted via the same transmission path. It may be supplied from the image encoding device 1 to the hierarchical image decoding device 2.
  • FIG. 20 is a diagram illustrating a data structure of a lower layer of encoded data.
  • the encoded data includes, for example, a sequence and a plurality of pictures constituting the sequence.
  • the sequence includes a sequence parameter set (SPS) that is a set of encoding parameters referred to by the hierarchical image decoding apparatus 1 in order to decode the sequence.
  • SPS sequence parameter set
  • PPS picture parameter set
  • the PPS is a set of coding parameters referred to by the hierarchical image decoding apparatus 1 in order to decode the corresponding picture, and includes information indicating the SPS referred to by the PPS.
  • FIG. 20 shows the hierarchical structure of the data.
  • FIGS. 20A to 20F show the structures of the sequence, slice layer S, macroblock layer MB, macroblock header MBH, inter prediction partition prediction parameter PP, and intra prediction partition prediction parameter PP, respectively.
  • FIG. 20A to 20F show the structures of the sequence, slice layer S, macroblock layer MB, macroblock header MBH, inter prediction partition prediction parameter PP, and intra prediction partition prediction parameter PP, respectively.
  • the sequence includes SPS, PPS, and slice layers S 1 to S Ns constituting each picture (Ns is the total number of slice layers included in one picture).
  • PPS may not exist.
  • Each slice layer S is a set of data that the hierarchical image decoding device 1 refers to in order to decode the corresponding slice. As shown in FIG. 20B, the slice layer S includes a slice header SH and macroblock layers MB 1 to MB Nm (Nm is the total number of macroblocks included in the slice S).
  • the slice header SH includes a coding parameter group that the hierarchical image decoding apparatus 1 refers to in order to determine a decoding method for the corresponding slice.
  • POC Picture : Order Count
  • the information and (4) the weighting factor designation information for designating the weighting factor used for the prediction by the moving image coding apparatus 2 are examples of coding parameters included in the slice header SH.
  • slice types that can be specified by the slice type specification information, (1) I slice using only intra prediction at the time of encoding, and (2) P using unidirectional prediction or intra prediction at the time of encoding. Slice, (3) B-slice using unidirectional prediction, bidirectional prediction, or intra prediction at the time of encoding.
  • Each macroblock layer MB included in the slice layer S is a set of data that the hierarchical image decoding device 1 refers to in order to decode the corresponding macroblock.
  • the macroblock layer MB includes a skip flag SKIP, a macroblock header MBH, prediction parameters PP 1 to PP Np , and quantized prediction errors QD 1 to QD Nb .
  • Np represents the total number of partitions (prediction units) included in the corresponding macroblock
  • Nb represents the total number of blocks (conversion units) included in the corresponding macroblock.
  • the skip flag SKIP When the value of the skip flag SKIP is 1, that is, when the corresponding macroblock is a skip block, the macroblock header MBH, the prediction parameters PP 1 to PP Np , and the quantized prediction errors QD 1 to QD in that macroblock layer Nb is omitted.
  • the macroblock header MBH includes an encoding parameter that the hierarchical image decoding apparatus 1 refers to in order to determine a decoding method for the corresponding macroblock.
  • macroblock type designation information MBT (mb_type) for designating the macroblock type of the corresponding macroblock
  • CBP coded_block_pattern
  • quantization step Quantization parameter difference ⁇ qp (mb_qp_delta) that specifies the size of.
  • the macroblock type designation information MBT includes prediction unit designation information PT and conversion unit designation information TT.
  • the prediction unit designation information PT includes a division pattern of the corresponding macroblock into partitions (prediction units) and a prediction method (L0 unidirectional prediction, L1) used when the hierarchical image encoding device 2 generates a prediction image in each partition. Unidirectional prediction, bidirectional prediction, etc.).
  • the partition is an area of 16 ⁇ 16 pixels, 16 ⁇ 8 pixels, 8 ⁇ 16 pixels, 8 ⁇ 8 pixels, 8 ⁇ 4 pixels, or 4 ⁇ 8 pixels.
  • the conversion unit designation information TT designates the division pattern of the corresponding macroblock into blocks (conversion units).
  • the block is a square area of 4 ⁇ 4 pixels or 8 ⁇ 8 pixels.
  • the quantization parameter difference ⁇ qp is a difference qp ⁇ qp ′ between the quantization parameter qp in the corresponding macroblock and the quantization parameter qp ′ in the macroblock encoded immediately before the macroblock.
  • Each quantization prediction residual QDn included in the macroblock layer MB is encoded data generated by the hierarchical image encoding device 2 performing the following processes 1 to 3 on the corresponding block.
  • Process 1 DCT transform (Discrete Cosine Transform) of the prediction residual obtained by subtracting the prediction image from the encoding target image;
  • Process 2 Quantize the DCT coefficient obtained in Process 1;
  • Process 3 DCT coefficients quantized in Process 2 are variable length encoded;
  • the prediction parameter PP related to the inter prediction partition in which the prediction image is generated by the inter prediction includes a reference image index RI, an estimated motion vector, as shown in FIG.
  • the index PMVI and the motion vector residual MVD are included.
  • the motion vector residual MVD is encoded data generated by the hierarchical image encoding device 2 executing the following processes 4 to 6.
  • Process 4 A locally decoded image that has been encoded / decoded is selected, and a motion vector mv for the corresponding partition is derived with reference to the selected locally decoded image that has been encoded / decoded (hereinafter also referred to as “reference image”);
  • Process 5 Select an estimation method, and derive an estimated value pmv of a motion vector mv (hereinafter also referred to as “estimated motion vector”) to be assigned to the corresponding partition using the selected estimation method;
  • Process 6 The motion vector residual MVD obtained by subtracting the estimated motion vector pmv derived in Process 5 from the motion vector mv derived in Process 4 is encoded;
  • the above-described reference image index RI designates the encoded / decoded local decoded image (reference image) selected in the process 4, and the estimated motion vector index PMVI described above is the estimation selected in the process 5.
  • the estimation methods that can be selected in the processing 5 include: (1) median of motion vectors assigned to a partition adjacent to a corresponding partition (hereinafter also referred to as “adjacent partition”) in a locally decoded image being encoded / decoded. Or (2) a motion vector assigned to a partition occupying the same position as the corresponding partition (often referred to as a “collocated partition”) in a locally decoded image that has been encoded / decoded. For example, the estimated motion vector pmv may be used.
  • the prediction parameter PP related to the partition for which unidirectional prediction is performed includes one reference image index RI, estimated motion vector index PMVI, and one motion vector residual MVD.
  • the prediction parameters PP for a partition that performs bi-directional prediction include two reference image indexes RI1 and RI2, two estimated motion vector indexes PMVI1 and PMVI2, and two motion vector residuals MVD1. And MVD2.
  • the prediction parameter PP related to the intra prediction partition in which the prediction image is generated by the intra prediction includes the prediction mode flag PMF and the prediction mode code PMC as illustrated in FIG. Including.
  • the prediction mode flag PMF takes the value 1 when the prediction mode in the corresponding partition matches the prediction mode estimated from the adjacent partition, and takes the value 0 otherwise.
  • the prediction mode code PMC is obtained by encoding prediction mode specifying information for specifying a prediction mode in the corresponding partition, and is omitted when the value of the prediction mode flag PMF is 1.
  • Encoded data of upper layer For the encoded data of the upper layer, for example, a data structure substantially similar to that shown in FIG. 20 can be adopted. However, information indicating hierarchical encoding may be encoded in the SPS. In the slice layer, spatial scalability, temporal scalability, and SNR scalability hierarchy identification information (dependency_id, temporal_id, and quality_id, respectively) may be encoded. Filter information and filter on / off information (described later) can be encoded by a PPS, a slice header, a macroblock header, or the like.
  • the motion vector information included in the upper layer the motion vector information that can be derived from the motion vector information included in the lower layer can be omitted from the upper layer.
  • the encoded data of the upper layer may be generated by an encoding method different from the encoding method of the lower layer. That is, the upper layer encoding / decoding processing does not depend on the type of the lower layer codec.
  • the upper layer may be encoded by, for example, MPEG-2 or HEVC (High Efficiency Video Coding).
  • the hierarchical image decoding apparatus in FIG. 2 is an example of the hierarchical image decoding apparatus 1 to which the present invention is applied. As illustrated in FIG. 2, the hierarchical image decoding device 1 includes a lower layer image decoding device 11, an upper layer image decoding device 12, and a filter unit 13.
  • the lower layer image decoding apparatus 11 decodes lower layer encoded data transmitted from the lower layer image encoding apparatus 21 (described later) by a predetermined encoding method.
  • An example of an encoding method used by the lower layer image decoding apparatus 11 for decoding is an H.264 format described with reference to FIG. H.264 / AVC.
  • the present invention is not limited to this, and the lower layer image decoding apparatus 11 may use MPEG-2 or HEVC currently being developed for decoding.
  • the upper layer image decoding device 12 decodes the encoded data of the upper layer, and reproduces the decoded image of the upper layer with reference to the decoded image from the lower layer.
  • the filter unit 13 performs a filtering process to refer to the decoded image from the lower layer from the upper layer.
  • FIG. 3 is a block diagram illustrating a configuration example of the lower layer image decoding device 11.
  • the lower layer image decoding device 11 includes a variable length decoding unit 111, an inverse quantization / inverse transform unit 112, an addition unit 113, a motion compensation unit 114, a memory 115, and a loop filter unit 116.
  • the variable length decoding unit 111 performs variable length decoding on the lower layer encoded data.
  • the variable length decoding unit 111 outputs a quantized transform coefficient (prediction error) decoded from the lower layer encoded data. Further, the variable length decoding unit 111 supplies determination information (described later) decoded from the lower layer encoded data to the filter unit 13.
  • the inverse quantization / inverse transform unit 112 performs inverse quantization and inverse transform on the decoded quantized transform coefficient (prediction error).
  • the addition unit 113 adds the prediction error that is the output of the inverse quantization / inverse transformation unit 112 and the predicted image that is the output of the motion compensation unit 114.
  • the loop filter unit 116 applies a loop filter to the decoded image that is the output of the adding unit 113.
  • the loop filter is provided for the purpose of minimizing the difference between the original image and the decoded image obtained by adding the prediction error image to the prediction image (improving objective image quality) or improving the subjective image quality.
  • the decoded image to which the loop filter is applied as the reference image used in the motion compensation unit 114, the objective / subjective image quality of the reference image is improved, and further, the image quality of the image after encoding using motion compensation is improved. be able to.
  • this loop filter include a deblocking filter, a SAO (sample adaptive offset) filter, and an ALF (adaptive loop filter) as described in Non-Patent Document 2.
  • the loop filter unit 116 is a deblocking filter.
  • the loop filter unit 116 includes three types of filters: a deblocking filter, SAO, and ALF.
  • the memory 115 stores the decoded image to which the loop filter is applied.
  • the motion compensation unit 114 performs motion compensation using the image stored in the memory 115 and outputs a predicted image.
  • FIG. 4 is a block diagram illustrating a configuration example of the upper layer image decoding device 12.
  • the upper layer image decoding device 12 is an image decoding device to which a loop filter is applied.
  • the upper layer image decoding apparatus 12 includes a variable length decoding unit 121, an inverse quantization / inverse conversion unit 122, an addition unit 123, a motion compensation unit 124, a memory 125, a loop filter unit 126, and a switching unit 127. Is provided.
  • the variable length decoding unit 121 performs variable length decoding on the encoded data.
  • the variable length decoding unit 121 outputs the decoded prediction error.
  • the variable length decoding unit 121 supplies the decoded filter on / off information and determination information (described later) to the filter unit 13 and the switching unit 127.
  • the inverse quantization / inverse transform unit 122 to the loop filter unit 126 are the same components as the inverse quantization / inverse transform unit 112 to the loop filter unit 116 in FIG.
  • the switching unit 127 switches between the decoded image from the lower layer and the motion compensated image that is the output of the motion compensation unit 124, and outputs it as a predicted image.
  • the above-described “decoded image from the lower layer” is an image obtained by up-sampling the decoded image from the lower layer.
  • these are hereinafter referred to as “decoded image from the lower layer” without distinction.
  • the switching unit 127 performs the switching process according to information (for example, picture type, slice type, prediction mode information for each processing unit) in the encoded data output from the variable length decoding unit 121.
  • information for example, picture type, slice type, prediction mode information for each processing unit
  • the switching unit 127 receives a signal from an upper layer intra prediction unit (not shown) according to prediction mode information for each processing unit decoded by the variable length decoding unit 121 from the encoded data of the upper layer. A predicted image or a decoded image from a lower layer is selected.
  • the switching unit 127 uses the variable length decoding unit 121 from the encoded data of the higher layer.
  • the motion compensated image output from the motion compensation unit 124 or the decoded image from the lower layer is selected in accordance with the prediction mode information for each processing unit decoded in step S2.
  • the filter unit 13A shown in FIGS. 5A and 5B will be described.
  • the filter unit 13A shown in FIG. 5A includes a filter processing unit 131 that filters the decoded image from the lower layer, and an upsampling unit for returning the lower layer image to the resolution of the upper layer image with respect to its output. 132.
  • a filter for approximating a decoded image from a lower layer to an original image described later in the case of spatial scalability, an image obtained by down-sampling the original image, hereinafter referred to as an original image). Apply the upsampling filter after applying.
  • to be close to the original image means to reduce the difference value between the decoded image and the original image (improve objective image quality) or to improve the subjective image quality of the decoded image. Since the filter is applied at the resolution of the decoded image, there is an advantage that the processing amount necessary for the filter processing is small.
  • the filter unit 13A illustrated in FIG. 5B performs an upsampling unit 132 that performs upsampling to return the decoded image from the lower layer to the resolution of the upper layer image, and filter processing on the output of the upsampling unit 132
  • FIG. 5 (a) The comparison between FIG. 5 (a) and FIG. 5 (b) is as follows.
  • the order of the upsampling unit 132 and the filter processing unit 131 is opposite to that of the filter unit 13A illustrated in FIG.
  • the resolution of the image to which the filter processing unit 131 of the filter unit 13A illustrated in FIG. 5B applies the filter is that after the decoded image from the lower layer is up-sampled, whereas FIG.
  • the resolution of the image to which the filter processing unit 131 of the filter unit 13A shown in a) applies the filter is that of the decoded image from the lower layer.
  • the upsampling unit 132 applies the filter after returning the decoded image from the lower layer to the resolution of the image of the upper layer. It is possible to refer to a decoded image closer to the original image than the filter unit 13A shown.
  • the filter processing unit 131 performs filter processing using filter information (described later) output from the upper layer image decoding device 12 of FIG. Note that the upsampling unit 132 may use the same components as the upsampling unit 1003 in FIG.
  • the filter unit 13A has been described as a two-stage process in which the filter processing is divided into the filter of the filter processing unit 131 and the filter of the upsampling filter unit 132.
  • the present invention is not limited to this. It is also possible to apply as.
  • FIG. 6 shows a filter unit 13B that applies a filter for approximating the original image to the decoded image from the lower layer in the case of temporal scalability or SNR scalability.
  • the filter unit 13B illustrated in FIG. 6 includes a filter processing unit 131.
  • the filter processing unit 131 is as described with reference to FIG.
  • FIG. 23 shows a filter unit 13 that switches a filter to be applied in the case of spatial scalability and in the case of other scalability (that is, temporal scalability or SNR scalability).
  • the filter unit 13 illustrated in FIG. 23 applies a filter for approximating the original image to the decoded image from the lower layer (lower layer image decoding device 11), and applies the filter image to the upper layer (upper layer image decoding device 12).
  • the filter unit 13 includes filter units 13A and 13B and a switching unit 133.
  • the filter unit 13A is the same as that shown in FIG. 5, and the filter unit 13B is the same as that shown in FIG.
  • the switching unit 133 inputs the decoded image from the lower layer to either the filter unit 13A or the filter unit 13B according to the type of scalability.
  • the filter unit 13A sends the filter image obtained by upsampling the decoded image from the lower layer and applying the filter or the filter image obtained by applying the filter to the decoded image from the lower layer and performing the upsampling to the upper layer image decoding device 12. Supply.
  • the filter unit 13B is switched. In this case, the filter unit 13B supplies the filtered image to which the filter is applied without upsampling to the upper layer image decoding device 12.
  • this switching process corresponds to the switching process in the switching unit 26 provided in the later-described hierarchical image encoding device 2.
  • FIG. 1 is a block diagram illustrating a detailed configuration of the filter processing unit 131.
  • the filter processing unit 131 includes a filter application determination unit 1311, a filter application unit 1312, a spatial scalability determination unit 1313, a reference image determination unit 1314, a resolution determination unit 1315, a filter order determination unit 1316, and a codec determination unit. 1317 is provided.
  • the filter application determination unit 1311 determines whether or not to apply a filter and the type of filter to be applied based on filter information, filter on / off information, and determination information indicating an index for determining a filter. It is. Details of the filter information, the filter on / off information, and the determination information will be described later.
  • the filter application unit 1312 applies the filter determined by the filter application determination unit 1311 to the decoded image.
  • the types and combinations of filters that can be applied by the filter application unit 1312 will be described later.
  • the spatial scalability determination unit 1313 determines whether the applied scalability is a spatial scalability.
  • the reference image determination unit 1314 determines whether or not the picture type is a reference from a subsequent image that is decoded in an upper layer.
  • the resolution determination unit 1315 determines the resolution of the upper layer and lower layer images.
  • the filter order determination unit 1316 determines the order of upsampling and filter processing.
  • the codec determination unit 1317 determines the type of the lower layer codec (encoding method).
  • DF Deblocking Filter
  • SAO SAO
  • ALF ALF
  • the deblocking filter is a technique for reducing block distortion that occurs at the boundary of prediction or conversion processing.
  • block boundary type border of prediction process and boundary of transform process
  • prediction mode intra and non-intra
  • presence / absence of non-zero orthogonal transform coefficient reference frame
  • adjacent decoded pixel value motion information
  • block The filter strength to be applied to the boundary and the on / off of the filter are adaptively determined.
  • a filter designated according to the filter strength is applied to the filter-on block boundary where it is determined that block distortion exists, and the pixel values near the block boundary are smoothed.
  • SAO is a technique that compensates for differences between an original image and a decoded image by adding an offset that is adaptively set according to the characteristics of the pixel level.
  • an edge offset EO
  • EO edge offset
  • Type and band offset BO
  • filter information information indicating which type of EO or BO is applied for each processing target unit, information indicating an edge direction in the case of EO, and an offset to be added to each variation amount are notified.
  • an offset to be added is notified according to the pixel value.
  • an offset corresponding to the variation amount calculated from the processing target pixel value and its neighboring pixel values is added according to the type notified for each processing target unit, and in the case of BO, the offset corresponds to the processing target pixel value. Add the offset.
  • ALF is a technique for improving rate distortion performance by calculating a filter coefficient and the number of taps that minimize a difference (average square error) between an original picture and a decoded picture, and performing a filtering process on the decoded picture from a lower layer. is there.
  • a Wiener filter or the like is used as this filter.
  • the calculated filter coefficient and the number of taps are notified as filter information together with the filter on / off information.
  • ALF is applied for each processing target unit using the notified information.
  • the filter information used in SAO and ALF and the filter on / off information for each processing unit as described above are notified from the variable length decoding unit 121 to the filter application determination unit 1311.
  • the filter application determination unit 1311 determines whether the filter is on or off.
  • the filter application unit 1312 executes filter processing using the filter information.
  • filter information and filter on / off information.
  • Such information is encoded as part of the encoded data of the upper layer.
  • Filter processing by the filter application unit 1312 is configured by a single block or a combination of a deblocking filter that removes block distortion, an SAO that adjusts an offset of a processing unit, and an ALF that uses a Wiener filter that minimizes a difference value from the original image. .
  • the filter application determination unit 1311 determines a filter to be applied by the filter application unit 1312 using the determination information notified from the variable length decoding unit 121 or the variable length decoding unit 121.
  • the determination information is information including an index for determining a filter to be applied.
  • the filter application determination unit 1311 determines the type of filter to be applied based on a predetermined correspondence relationship that associates an index for determining a filter with the type of filter to be applied.
  • Table 1 shows an example of a correspondence relationship between an index for determining a filter to be applied and a filter to be applied.
  • the indices (1) to (5) shown in Table 1 are merely examples, and are not limited to these. An index corresponding to the required performance and processing amount can be used.
  • the candidate 1 for the type of filter to be applied in Table 1 indicates a filter to be applied when the restriction on the filter processing amount is large.
  • Filter type candidate 2 to be applied indicates a filter to be applied when the restriction on the filter processing amount is relatively loose (the processing amount may be large).
  • the type of filter to be applied may be notified with a flag. Which index is used to select the filter may be determined in advance between the image encoding device and the image decoding device. Alternatively, which index is used may be notified by a sequence header, SPS (sequence parameter set), or the like.
  • determination information indicating (1) to (5) in Table 1 may be included in the encoded data of the upper layer. Also, the lower layer resolution and image structure (field structure / frame structure) shown in (3) of Table 1 and the determination information showing (5) are used to obtain decoded data obtained by decoding the lower layer encoded data. May be obtained from
  • FIG. 7 shows a flowchart for selecting a filter to be applied by the filter processing unit 131 of FIG. 1 according to the type of scalability such as spatial scalability, temporal scalability, SNR scalability, and the like.
  • the spatial scalability determination unit 1313 determines whether or not the applied scalability is spatial scalability (S101).
  • the filter application determination unit 1311 sets the filter to ALF, and applies the ALF in which the filter application unit 1312 is set (S104).
  • the filter application determination unit 1311 sets the filter as an SAO or deblocking filter, and applies the SAO or deblocking filter in which the filter application unit 1312 is set.
  • the filter application unit 1312 may be configured as shown in FIG. As shown in FIG. 8, in the filter application unit 1312, filters are set in the order of deblocking filter, SAO, and ALF from the input side of the decoded image from the lower layer. Therefore, as shown in FIG.
  • the filter application unit 1312 first applies the deblocking filter to the decoded image from the lower layer, applies SAO to the output, and applies the ALF to the output. Apply three filters. In the case of three filters, the filters are applied in the order shown in FIG. A cascade connection configuration that reduces block boundary distortion with a deblocking filter, then adjusts an offset in pixel units with SAO, and finally minimizes an error with the original image with ALF has good performance in terms of coding efficiency. Because. In addition, it is desirable to use two filters, SAO and deblocking filter, as the filters to be applied for temporal scalability and SNR scalability.
  • FIG. 9 shows a flowchart for selecting a filter to be applied by the filter processing unit 131 of FIG. 1 according to the picture type.
  • the reference image determination unit 1314 determines the picture type of the upper layer image to be decoded (S201).
  • the picture type is a picture type referred to from a subsequent image to be encoded in a higher layer, such as intra (I), unidirectional prediction (P), or bidirectional prediction (B) picture used for reference (in S201) YES
  • the filter application determination unit 1311 sets the filter to ALF, and applies the ALF in which the filter application unit 1312 is set (S204).
  • the picture type is a bi-directional prediction (b) picture that is not used for reference (NO in S201), no filter is applied.
  • the image referenced from the subsequent image has high image quality, accurate prediction is possible. For this reason, ALF with a large processing amount but high image quality improvement width is suitable. In the case of an image that is not referenced from a subsequent image in an upper layer, the image quality may not be as high as that of the referenced image. Therefore, no filter is applied in terms of processing amount.
  • the picture type of the decoded image from the lower layer may be determined.
  • FIG. 10 shows a flowchart for selecting a filter to be applied by the filter processing unit 131 of FIG. 1 according to the resolution.
  • the resolution determination unit 1315 determines the resolution of the upper layer image to be decoded (S301). In the case of a high resolution such as an HD image (YES in S301), the filter application determination unit 1311 sets the filter to ALF (S302), and applies the ALF in which the filter application unit 1312 is set (S304).
  • the filter application determination unit 1311 sets the filters to the deblocking filter, SAO, and ALF (S303), and the filter application unit 1312 sets the set deblocking filter. , SAO, and ALF are applied (S304). This is because it is preferable to apply all of the deblocking filter, SAO, and ALF for the purpose of increasing the image quality improvement width because the processing amount required for the low-resolution image is small.
  • FIG. 11 shows a flowchart for selecting a filter to be applied by the filter processing unit 131 in FIG. 1 according to the order of upsampling and filter processing.
  • the filter order determination unit 1316 determines the order of filter processing (S401).
  • the filter application determination unit 1311 sets the filter to a deblocking filter, SAO, or ALF (S402), and the filter application unit 1312 sets the set deblocking.
  • SAO deblocking filter
  • ALF ALF
  • the filter application determination unit 1311 sets the filter to ALF (S403), and the filter application unit 1312 applies the set ALF (S404). .
  • the amount of processing required for the filter processing is small when the filter is applied before upsampling, for the same reason as when the filter to be applied is determined according to the resolution.
  • FIG. 12 shows a flowchart for selecting a filter to be applied by the filter processing unit 131 in FIG. 1 according to the type of codec used in the lower layer.
  • the codec determination unit 1317 determines the codec used in the lower layer (S501).
  • the filter application determination unit 1311 sets the filter to ALF (S502), and the filter application unit 1312 applies the set ALF (S504).
  • the codec used in the lower layer is H.264.
  • the filter application determination unit 1311 sets the filter to SAO (S503), and the filter application unit 1312 applies the set SAO (S504).
  • the filter is not applied.
  • MPEG-2 has a low image quality compared to other coding methods because it has a small processing amount and does not have a loop filter inside the codec. Therefore, although the amount of processing is large, by applying ALF having a high image quality improvement range, the quality of an image referred to from a higher layer is improved so that accurate prediction can be performed.
  • H. H.264 / AVC performs more complex processing than MPEG-2, and has a deblocking filter as a loop filter inside the codec, and therefore has higher image quality than MPEG-2. Therefore, it is suitable to apply SAO which has a small processing amount and an effect of improving subjective image quality.
  • HEVC High Efficiency Video Coding
  • SAO deblocking filter
  • ALF ALF
  • the filter is not applied to the HEVC decoded image.
  • the present invention is not limited to this.
  • SAO SAO when applying a filter to an image after upsampling in spatial scalability.
  • the hierarchical image decoding apparatus 1 decodes the upper layer encoded data included in the hierarchically encoded data and generates the upper layer generated by referring to the decoded image from the lower layer. The decoded image of the upper layer is restored using the predicted image.
  • the hierarchical image decoding apparatus 1 also includes a filter application determination unit 1311 that determines a filter to be applied to the decoded image from the lower layer referenced from the upper layer, and the decoded image from the lower layer referenced.
  • a filter application unit 1312 that applies the filter determined by the filter application determination unit 1311.
  • the hierarchical image encoding device in FIG. 13 is an example of the hierarchical image encoding device 2 to which the present invention is applied. As illustrated in FIG. 13, the hierarchical image encoding device 2 includes a lower layer image encoding device 21, an upper layer image encoding device 22, a filter selection / processing unit 24, a downsampling unit 25, and a switching unit 26.
  • the lower layer image encoding device 21 encodes a lower layer original image (in the case of spatial scalability, an image obtained by down-sampling the original image, but hereinafter referred to as an original image) by a predetermined encoding method.
  • An example of an encoding method used by the lower layer image encoding device 21 for encoding is an H.264 format described with reference to FIG. H.264 / AVC.
  • the present invention is not limited to this, and the lower layer image encoding device 21 may use MPEG-2 or HEVC currently being developed for encoding.
  • the upper layer image encoding device 22 encodes the original image with reference to the decoded image from the lower layer.
  • the downsampling unit 25 downsamples the original image in the case of spatial scalability.
  • the switching unit 26 down-samples the original image in the case of spatial scalability, and inputs the original image as it is to the lower layer image encoding device 21 in the other scalability cases.
  • the filter selection / processing unit 24 applies a filter to refer to the decoded image from the lower layer as the predicted image of the upper layer.
  • FIG. 14 is a block diagram illustrating a configuration example of the lower layer image encoding device 21.
  • the lower layer image encoding device 21 includes a subtraction unit 211, an orthogonal transformation / quantization unit 212, a variable length coding unit 213, an inverse quantization / inverse transformation unit 214, an addition unit 215, and a loop filter unit 216. , A memory 217, and a motion compensation unit 218.
  • the subtraction unit 211 calculates a difference (prediction error) between the original image and the predicted image.
  • the orthogonal transform / quantization unit 212 performs orthogonal transform and quantization on the prediction error.
  • variable length encoding unit 213 performs variable length encoding on the output of the orthogonal transform / quantization unit 212 and outputs lower layer encoded data.
  • the inverse quantization / inverse transform unit 214 performs inverse quantization and inverse transform on the quantized transform coefficient output from the orthogonal transform / quantization unit 212.
  • the addition unit 215 adds the decoded prediction error, which is the output of the inverse quantization / inverse transformation unit 214, and the prediction image.
  • the loop filter unit 216 applies a loop filter to the decoded image that is the output of the addition unit 215.
  • loop filter unit 216 is omitted when MPEG-2 is adopted as the encoding method.
  • the loop filter unit 216 is a deblocking filter.
  • the loop filter unit 216 includes three types of filters: deblocking filter, SAO, and ALF.
  • the memory 217 stores the decoded image to which the loop filter is applied.
  • the motion compensation unit 218 performs motion compensation using the image stored in the memory 217, and outputs a predicted image.
  • FIG. 15 is a block diagram illustrating a configuration example of the upper layer image encoding device 22.
  • the upper layer image encoding device 22 is an image encoding device to which a loop filter is applied.
  • the upper layer image encoding device 22 includes a subtraction unit 221, an orthogonal transform / quantization unit 222, a variable length encoding unit 223, an inverse quantization / inverse transform unit 224, an addition unit 225, and a loop filter unit 226.
  • the subtraction unit 221 to motion compensation unit 228 are the same components as the subtraction unit 211 to motion compensation unit 218 in FIG.
  • the switching unit 229 switches between the decoded image from the lower layer and the motion compensated image that is the output of the motion compensation unit 228 and outputs it as a predicted image.
  • the switching unit 229 performs the switching process based on a prediction mode, a picture type, and a slice type for each processing unit.
  • the switching unit 229 compares, for example, the difference between the inter-layer prediction image from the original image and the lower layer and the difference between the original image and the intra-prediction image (not shown) of the upper layer, and the difference value is small. Is selected as the predicted image of the encoding target image of the upper layer.
  • the switching unit 229 performs, for example, an inter-layer prediction image from an original image and a lower layer. The difference and the difference between the original image and the motion compensated image are compared, and the smaller difference value is selected as the predicted image of the higher layer encoding target image. Further, the switching unit 229 outputs a flag indicating which prediction has been selected to the variable length coding unit 223 (not illustrated in FIG. 15).
  • FIG. 16 A specific example of the filter selection / processing unit 24 is shown in FIG. As illustrated in FIG. 16, the filter selection / processing unit 24 includes a filter selection / determination unit 241 and a filter processing unit 242.
  • the filter selection / determination unit 241 selects a filter to be applied by the filter unit 242 according to Table 1, and determines whether to apply the filter to the applied filter information (number of taps, filter coefficients, etc.) and the current processing target image. To do. A specific filter information calculation method in the filter selection / determination unit 241 will be described later.
  • the filter unit 242 applies a filter to the decoded image from the lower layer. Moreover, the same component as 13 of FIG. 2 can be employ
  • FIG. 17 is a diagram for explaining an ALF filter calculation method using a winner filter.
  • the filter selection / determination unit 241 performs filter information (filter coefficient, number of taps, etc.) so that the mean square error between the filter image (FilterL) of the decoded image from the lower layer and the original image (Image0) is minimized. ) Is set.
  • the filter selection / determination unit 241 calculates the mean square error between the filter image (FilterL) of the decoded image from the lower layer and the original image (Image0) for each processing unit.
  • the filter selection / determination unit 241 calculates the encoding cost cost_FilterL when the filter is applied and the encoding cost cost_ImageL when the filter is not applied.
  • the filter selection / determination unit 241 compares cost_FilterL and cost_ImageL, and when the encoding cost can be reduced by applying the filter (cost_FilterL ⁇ cost_ImageL), the application (on) of the filter is determined (S606).
  • the filter selection / determination unit 241 does not apply the filter (S607).
  • the filter selection / determination unit 241 executes steps S602 to S607 for all the processing units (S608).
  • the filter information and the filter on / off information for each processing unit are encoded by the variable length encoding unit 223 of FIG. 15 as encoded data of the enhancement layer.
  • the filter selection / determination unit 241 obtains filter information (information indicating type and edge direction, offset, etc.) and filter on / off information for each processing unit.
  • the filter unit 242 processes one entire image, and then outputs one filter image to the upper layer image encoding device 22 or the upper layer image decoding device 12, and the one filter image is output. May be referred to in encoding / decoding processing in an upper layer.
  • the filter unit 242 can apply a filter in an arbitrary processing unit.
  • the filter unit 242 can perform upsampling and filtering in units of slices, macroblocks, LCUs (Large Coding Units), etc., in accordance with the encoding / decoding processing units in the upper layer.
  • the decoded image from the lower layer when used as a reference image for encoding / decoding processing of the upper layer, the decoded image from the lower layer is subjected to filter processing to improve the objective / subjective image quality, This is used as one of the images referred to in.
  • the decoded image from the lower layer is necessary.
  • these data are information that is output to display a lower layer image on the display, and it is not necessary to change the lower layer codec in order to extract such information. Therefore, in implementation, the lower layer is constructed using the hardware and software of the existing codec as they are, and the upper layer hardware and software are added.
  • the encoding / decoding processing of the upper layer of the present invention can be performed without using information of the lower layer other than the above. That is, since the encoding information included in the encoded data of the lower layer is not used, the encoding / decoding process of the upper layer can proceed without depending on the type of the lower layer codec.
  • the hierarchical video decoding device (image decoding device) 1 ′ is encoded using scalable video coding (SVC) by the hierarchical video encoding device (image encoding device) 2 ′. Decrypt the data.
  • Scalable video coding is a coding method that hierarchically encodes moving images from low quality to high quality. Scalable video coding is, for example, H.264. H.264 / AVC Annex G SVC. Note that the quality of a moving image here widely means an element that affects the appearance of a subjective and objective moving image. The quality of the moving image includes, for example, “resolution”, “frame rate”, “image quality”, and “gradation”.
  • the quality of the moving image is different, it means that, for example, “resolution” is different, but it is not limited thereto.
  • the quality of moving images is different from each other.
  • SVC is also classified into (1) spatial scalability, (2) temporal scalability, and (3) SNR (Signal-to-Noise-Ratio) scalability from the viewpoint of the type of information layered.
  • Spatial scalability is a technique for hierarchizing resolution and image size.
  • Time scalability is a technique for layering at a frame rate (the number of frames per unit time).
  • SNR scalability is a technique for hierarchizing in image quality.
  • FIG. 24 is a diagram schematically illustrating a case where a moving image is hierarchically encoded / decoded by three layers of a lower layer L3, a middle layer L2, and an upper layer L1. That is, in the example shown in FIGS. 24A and 24B, of the three layers, the upper layer L1 is the highest layer and the lower layer L3 is the lowest layer.
  • a decoded image corresponding to a specific quality that can be decoded from hierarchically encoded data is referred to as a decoded image of a specific hierarchy (or a decoded image corresponding to a specific hierarchy) (for example, in the upper hierarchy L1).
  • Decoded image POUT # A a decoded image of a specific hierarchy (or a decoded image corresponding to a specific hierarchy) (for example, in the upper hierarchy L1).
  • FIG. 24A shows a hierarchical video encoding device 2 ′ # A-2 ′ that encodes input images PIN # A to PIN # C hierarchically to generate encoded data DATA # A to DATA # C. #C is shown.
  • FIG. 24B shows a hierarchical moving picture decoding apparatus 1 ′ # A that decodes encoded data DATA # A to DATA # C encoded hierarchically to generate decoded pictures POUT # A to POUT # C, respectively. ⁇ 1 '# C are shown.
  • the input images PIN # A, PIN # B, and PIN # C which are inputs on the encoding device side, have the same original image but different moving image quality (resolution, frame rate, image quality, and the like).
  • the quality of the moving image decreases in the order of the input images PIN # A, PIN # B, and PIN # C.
  • the hierarchical image encoding device 2 ′ # C of the lower hierarchy L3 encodes the input image PIN # C of the lower hierarchy L3 to generate encoded data DATA # C of the lower hierarchy L3.
  • Basic information necessary for decoding the decoded image POUT # C is included (indicated by “C” in FIG. 24). Since the lower layer L3 is the lowest layer, the encoded data DATA # C of the lower layer L3 is also referred to as basic encoded data.
  • the hierarchical video encoding device 2 ′ # B of the middle hierarchy L2 encodes the input image PIN # B of the middle hierarchy L2 with reference to the encoded data DATA # C of the lower hierarchy L3, The encoded data DATA # B of the layer L2 is generated.
  • additional data necessary for decoding the decoded image POUT # B of the intermediate hierarchy is added to the encoded data DATA # B of the intermediate hierarchy L2.
  • Information (indicated by “B” in FIG. 24) is included.
  • the hierarchical video encoding apparatus 2 ′ # A of the upper hierarchy L1 receives the input image PIN # A of the upper hierarchy L1, the encoded data DATA # B of the intermediate hierarchy L2, and the encoded data DATA of the lower hierarchy L3.
  • the encoded data DATA # A of the upper layer L1 is generated by encoding with reference to #C.
  • the encoded data DATA # A of the upper layer L1 is used to decode the basic information “C” necessary for decoding the decoded image POUT # C of the lower layer L3 and the decoded image POUT # B of the middle layer L2.
  • additional information indicated by “A” in FIG. 24
  • additional information indicated by “A” in FIG. 24
  • the encoded data DATA # A of the upper layer L1 includes information related to decoded images of a plurality of different qualities.
  • the decoding device side will be described with reference to FIG.
  • the decoding devices 1 ′ # A, 1′B, and 1 ′ # C corresponding to the respective layers of the upper layer L1, the middle layer L2, and the lower layer L3 are encoded data DATA # A, DATA #B and DATA # C are decoded and decoded images POUT # A, POUT # B, and POUT # C are output.
  • the hierarchy video decoding device 1 ′ # B in the middle hierarchy L2 receives information necessary for decoding the decoded picture POUT # B from the hierarchy encoded data DATA # A in the upper hierarchy L1 (ie, hierarchical encoding).
  • the decoded image POUT # B may be decoded by extracting “B” and “C”) included in the data DATA # A.
  • the decoded images POUT # A, POUT # B, and POUT # C can be decoded based on information included in the hierarchically encoded data DATA # A of the upper hierarchy L1.
  • the hierarchical encoded data is not limited to the above three-layer hierarchical encoded data, and the hierarchical encoded data may be hierarchically encoded with two layers or may be hierarchically encoded with a number of layers larger than three. Good.
  • Hierarchically encoded data may be configured as described above. For example, in the example described above with reference to FIGS. 24A and 24B, it has been described that “C” and “B” are referred to for decoding the decoded image POUT # B, but the present invention is not limited thereto. It is also possible to configure the hierarchically encoded data so that the decoded image POUT # B can be decoded using only “B”.
  • Hierarchically encoded data can also be generated so that In that case, the lower layer hierarchical video encoding device generates hierarchical encoded data by quantizing the prediction residual using a larger quantization width than the upper layer hierarchical video encoding device. To do.
  • Upper layer A layer located above a certain layer is referred to as an upper layer.
  • the upper layers of the lower layer L3 are the middle layer L2 and the upper layer L1.
  • the decoded image of the upper layer means a decoded image with higher quality (for example, high resolution, high frame rate, high image quality, etc.).
  • Lower layer A layer located below a certain layer is referred to as a lower layer.
  • the lower layers of the upper layer L1 are the middle layer L2 and the lower layer L3.
  • the decoded image of the lower layer refers to a decoded image with lower quality.
  • Target layer A layer that is the target of decoding or encoding.
  • Reference layer A specific lower layer referred to for decoding a decoded image corresponding to the target layer is referred to as a reference layer.
  • the reference layers of the upper hierarchy L1 are the middle hierarchy L2 and the lower hierarchy L3.
  • the hierarchically encoded data can be configured so that it is not necessary to refer to all of the lower layers in decoding of the specific layer.
  • the hierarchical encoded data can be configured such that the reference layer of the upper hierarchy L1 is either the middle hierarchy L2 or the lower hierarchy L3.
  • Base layer A layer located at the lowest layer is referred to as a base layer.
  • the base layer decoded image is the lowest quality decoded image that can be decoded from the encoded data, and is referred to as the base decoded image.
  • the basic decoded image is a decoded image corresponding to the lowest layer.
  • the partially encoded data of the hierarchically encoded data necessary for decoding the basic decoded image is referred to as basic encoded data.
  • the basic information “C” included in the hierarchically encoded data DATA # A of the upper hierarchy L1 is the basic encoded data.
  • Extension layer The upper layer of the base layer is called the extension layer.
  • the layer identifier is for identifying the hierarchy, and corresponds to the hierarchy one-to-one.
  • the hierarchically encoded data includes a hierarchical identifier used for selecting partial encoded data necessary for decoding a decoded image of a specific hierarchy.
  • a subset of hierarchically encoded data associated with a layer identifier corresponding to a specific layer is also referred to as a layer representation.
  • a layer representation of the layer and / or a layer representation corresponding to a lower layer of the layer is used. That is, in decoding the decoded image of the target layer, layer representation of the target layer and / or layer representation of one or more layers included in a lower layer of the target layer are used.
  • Inter-layer prediction refers to the syntax element value and target layer of the target layer based on the syntax element value included in the layer representation of the reference layer, the value derived from the syntax element value, and the decoded image. Predicting the encoding parameters used for the decoding of. Inter-layer prediction in which information related to motion prediction is predicted from reference layer information (at the same time) may be referred to as motion information prediction. Further, inter-layer prediction that predicts a decoded image of a lower layer (at the same time) from an up-sampled image may be referred to as texture prediction (or inter-layer intra prediction). Note that the hierarchy used for inter-layer prediction is, for example, a lower layer of the target layer. In addition, performing prediction within a target layer without using a reference layer may be referred to as intra-layer prediction.
  • the lower layer and the upper layer may be encoded by different encoding methods.
  • the encoded data of the hierarchy may be supplied to the hierarchical video decoding apparatus 1 ′ via different transmission paths as described above, or the hierarchical video decoding via the same transmission path. It may be supplied to the device 1 ′.
  • the base layer when transmitting ultra-high-definition video (4K video data) with a base layer and one enhancement layer being scalable encoded, the base layer downscales 4K video data and converts interlaced video data into MPEG-2.
  • the enhancement layer may be encoded by H.264 / AVC and transmitted over a television broadcast network, and the enhancement layer may encode 4K video (progressive) with HEVC and transmit over the Internet.
  • FIG. 25 is a diagram illustrating a data structure of encoded data of the base layer (hierarchically encoded data DATA # C in the example of FIG. 24).
  • Hierarchically encoded data DATA # C illustratively includes a sequence and a plurality of pictures constituting the sequence.
  • FIG. 25 shows a hierarchical structure of data in the hierarchical encoded data DATA # C.
  • (A) to (e) of FIG. 25 respectively show a sequence layer that defines the sequence SEQ, a picture layer that defines the picture PICT, a slice layer that defines the slice S, and a tree block that defines the tree block TBLK.
  • sequence layer a set of data referred to by the hierarchical video decoding device 1 ′ for decoding a sequence SEQ to be processed (hereinafter also referred to as a target sequence) is defined.
  • the sequence SEQ includes a sequence parameter set SPS (Sequence Parameter Set), a picture parameter set PPS (Picture Parameter Set), an adaptive parameter set APS (Adaptation Parameter Set), and pictures PICT 1 to PICT. It includes NP (NP is the total number of pictures included in the sequence SEQ) and supplemental enhancement information (SEI).
  • sequence parameter set SPS a set of encoding parameters referred to by the hierarchical video decoding device 1 'for decoding the target sequence is defined.
  • a set of coding parameters referred to by the hierarchical video decoding device 1 'for decoding each picture in the target sequence is defined.
  • a plurality of PPS may exist. In that case, each picture in the target sequence selects one of a plurality of PPSs.
  • the adaptive parameter set APS defines a set of encoding parameters that the hierarchical video decoding device 1 'refers to in order to decode each slice in the target sequence. There may be a plurality of APSs. In that case, each slice in the target sequence selects one of a plurality of APSs.
  • Picture layer In the picture layer, a set of data referred to by the hierarchical video decoding device 1 ′ for decoding a picture PICT to be processed (hereinafter also referred to as a target picture) is defined. As shown in FIG. 25B, the picture PICT includes a picture header PH and slices S 1 to S NS (where NS is the total number of slices included in the picture PICT).
  • the picture header PH includes a coding parameter group that is referred to by the hierarchical video decoding device 1 ′ in order to determine a decoding method of the target picture.
  • the encoding parameter group is not necessarily included directly in the picture header PH, and may be included indirectly, for example, by including a reference to the picture parameter set PPS.
  • slice layer In the slice layer, a set of data referred to by the hierarchical video decoding device 1 ′ for decoding the slice S to be processed (also referred to as a target slice) is defined. As shown in FIG. 25C, the slice S includes a slice header SH and a sequence of tree blocks TBLK 1 to TBLK NC (NC is the total number of tree blocks included in the slice S).
  • the slice header SH includes a coding parameter group referred to by the hierarchical video decoding device 1 'in order to determine a decoding method for the target slice.
  • Slice type designation information (slice_type) for designating a slice type is an example of an encoding parameter included in the slice header SH.
  • I slice that uses only intra prediction at the time of encoding (2) P slice that uses unidirectional prediction or intra prediction at the time of encoding, (3) B-slice using unidirectional prediction, bidirectional prediction, or intra prediction at the time of encoding may be used.
  • the slice header SH may include a reference to the picture parameter set PPS (pic_parameter_set_id) and a reference to the adaptive parameter set APS (aps_id) included in the sequence layer.
  • the slice header SH includes a filter parameter FP that is referred to by an adaptive filter included in the hierarchical video decoding device 1 ′.
  • the filter parameter FP includes a filter coefficient group.
  • the filter coefficient group includes (1) tap number designation information for designating the number of taps of the filter, (2) filter coefficients a 0 to a NT-1 (NT is the total number of filter coefficients included in the filter coefficient group), and , (3) offset is included.
  • Tree block layer In the tree block layer, a set of data referred to by the hierarchical video decoding device 1 ′ for decoding a processing target tree block TBLK (hereinafter also referred to as a target tree block) is defined. Note that the tree block may be referred to as a coding tree block (CTB) or a maximum coding unit (LCU).
  • CTB coding tree block
  • LCU maximum coding unit
  • the tree block TBLK includes a tree block header TBLKH and coding unit information CU 1 to CU NL (NL is the total number of coding unit information included in the tree block TBLK).
  • NL is the total number of coding unit information included in the tree block TBLK.
  • the tree block TBLK is divided into partitions for specifying a block size for each process of intra prediction or inter prediction and conversion.
  • the above partition of the tree block TBLK is divided by recursive quadtree partitioning.
  • the tree structure obtained by this recursive quadtree partitioning is hereinafter referred to as a coding tree.
  • a partition corresponding to a leaf that is a node at the end of the coding tree is referred to as a coding node.
  • the encoding node is also referred to as an encoding unit (CU).
  • the coding node may be called a coding block (CB: Coding Block).
  • coding unit information (hereinafter referred to as CU information)
  • CU 1 to CU NL is information corresponding to each coding node (coding unit) obtained by recursively dividing the tree block TBLK into quadtrees. is there.
  • the root of the coding tree is associated with the tree block TBLK.
  • the tree block TBLK is associated with the highest node of the tree structure of the quadtree partition that recursively includes a plurality of encoding nodes.
  • each encoding node is half the size of the encoding node to which the encoding node directly belongs (that is, the partition of the node one layer higher than the encoding node).
  • the size of the tree block TBLK and the size that each coding node can take are the size specification information of the minimum coding node and the maximum coding node included in the sequence parameter set SPS of the hierarchical coding data DATA # C.
  • the minimum coding node hierarchy depth difference For example, if the size of the minimum coding node is 8 ⁇ 8 pixels and the difference in the hierarchical depth between the maximum coding node and the minimum coding node is 3, if the size of the tree block TBLK is 64 ⁇ 64 pixels, The size of the encoding node can take any of four sizes, namely 64 ⁇ 64 pixels, 32 ⁇ 32 pixels, 16 ⁇ 16 pixels, and 8 ⁇ 8 pixels.
  • the tree block header TBLKH includes an encoding parameter referred to by the hierarchical video decoding device 1 ′ to determine a decoding method of the target tree block. Specifically, as shown in FIG. 25 (d), tree block division information SP_TBLK that designates a division pattern of the target tree block into each CU, and a quantization parameter difference that designates the size of the quantization step. ⁇ qp (qp_delta) is included.
  • the tree block division information SP_TBLK is information representing a coding tree for dividing the tree block. Specifically, the shape and size of each CU included in the target tree block, and the position in the target tree block Is information to specify.
  • the tree block division information SP_TBLK may not explicitly include the shape or size of the CU.
  • the tree block division information SP_TBLK may be a set of flags indicating whether the entire target tree block or a partial region of the tree block is to be divided into four. In that case, the shape and size of each CU can be specified by using the shape and size of the tree block together.
  • the quantization parameter difference ⁇ qp is a difference qp ⁇ qp ′ between the quantization parameter qp in the target tree block and the quantization parameter qp ′ in the tree block encoded immediately before the target tree block.
  • CU layer In the CU layer, a set of data referred to by the hierarchical video decoding device 1 ′ for decoding a CU to be processed (hereinafter also referred to as a target CU) is defined.
  • the encoding node is a node at the root of a prediction tree (PT) and a transformation tree (TT).
  • PT prediction tree
  • TT transformation tree
  • the encoding node is divided into one or a plurality of prediction blocks, and the position and size of each prediction block are defined.
  • the prediction block is one or a plurality of non-overlapping areas constituting the encoding node.
  • the prediction tree includes one or a plurality of prediction blocks obtained by the above division.
  • Prediction processing is performed for each prediction block.
  • a prediction block that is a unit of prediction is also referred to as a prediction unit (PU).
  • PU partitioning There are roughly two types of partitioning in the prediction tree (hereinafter abbreviated as PU partitioning): intra prediction and inter prediction.
  • the division method is 2N ⁇ 2N (the same size as the encoding node), 2N ⁇ N, 2N ⁇ nU, 2N ⁇ nD, N ⁇ 2N, nL ⁇ 2N, nR ⁇ 2N, and N XN etc.
  • the types of PU division will be described later with reference to the drawings.
  • the encoding node is divided into one or a plurality of transform blocks, and the position and size of each transform block are defined.
  • the transform block is one or a plurality of non-overlapping areas constituting the encoding node.
  • the conversion tree includes one or a plurality of conversion blocks obtained by the above division.
  • the division in the transformation tree includes the one in which an area having the same size as the encoding node is assigned as the transformation block, and the one in the recursive quadtree division as in the above-described division of the tree block.
  • transform processing is performed for each conversion block.
  • the transform block which is a unit of transform is also referred to as a transform unit (TU).
  • the CU information CU specifically includes a skip flag SKIP, prediction tree information (hereinafter abbreviated as PT information) PTI, and conversion tree information (hereinafter abbreviated as TT information). Include TTI).
  • PT information prediction tree information
  • TT information conversion tree information
  • the skip flag SKIP is a flag indicating whether or not the skip mode is applied to the target PU.
  • the value of the skip flag SKIP is 1, that is, when the skip mode is applied to the target CU, A part of the PT information PTI and the TT information TTI in the CU information CU are omitted. Note that the skip flag SKIP is omitted for the I slice.
  • the PT information PTI is information related to a prediction tree (hereinafter abbreviated as PT) included in the CU.
  • PT prediction tree
  • the PT information PTI is a set of information regarding each of one or a plurality of PUs included in the PT, and is referred to when the predicted image is generated by the hierarchical video decoding device 1 ′.
  • the PT information PTI includes prediction type information PType and prediction information PInfo.
  • Prediction type information PType is information that specifies whether intra prediction or inter prediction is used as a prediction image generation method for the target PU.
  • the prediction information PInfo includes intra prediction information PP_Intra or inter prediction information PP_Inter depending on which prediction method the prediction type information PType specifies.
  • a PU to which intra prediction is applied is also referred to as an intra PU
  • a PU to which inter prediction is applied is also referred to as an inter PU.
  • the inter prediction information PP_Inter includes a coding parameter referred to when the hierarchical video decoding device 1 ′ generates an inter prediction image by inter prediction. More specifically, the inter prediction information PP_Inter includes inter PU division information that specifies a division pattern of the target CU into each inter PU, and inter prediction parameters for each inter PU.
  • the intra prediction information PP_Intra includes an encoding parameter that is referred to when the hierarchical video decoding device 1 ′ generates an intra predicted image by intra prediction. More specifically, the intra prediction information PP_Intra includes intra PU division information that specifies a division pattern of the target CU into each intra PU, and intra prediction parameters for each intra PU.
  • the intra prediction parameter is a parameter for designating an intra prediction method (prediction mode) for each intra PU.
  • the PU partition information may include information specifying the shape, size, and position of the target PU. Details of the PU partition information will be described later.
  • the TT information TTI is information regarding a conversion tree (hereinafter abbreviated as TT) included in the CU.
  • TT conversion tree
  • the TT information TTI is a set of information regarding each of one or a plurality of TUs included in the TT, and is referred to when the residual data is decoded by the hierarchical video decoding device 1 ′.
  • a TU may be referred to as a block.
  • the TT information TTI includes TT division information SP_TT that designates a division pattern for each transform block of the target CU, and quantized prediction residuals QD 1 to QD NT (NT is the target The total number of blocks included in the CU).
  • TT division information SP_TT is information for determining the shape and size of each TU included in the target CU and the position in the target CU.
  • the TT division information SP_TT can be realized from information (split_transform_unit_flag) indicating whether or not the target node is divided and information (trafoDepth) indicating the depth of the division.
  • each TU obtained by the division can have a size from 32 ⁇ 32 pixels to 4 ⁇ 4 pixels.
  • Each quantized prediction residual QD is encoded data generated by the hierarchical video encoding device 2 'performing the following processes 1 to 3 on a target block that is a processing target block.
  • Process 1 The prediction residual obtained by subtracting the prediction image from the encoding target image is subjected to frequency conversion (for example, DCT conversion (Discrete Cosine Transform) and DST conversion (Discrete Sine Transform));
  • Process 2 Quantize the transform coefficient obtained in Process 1;
  • Process 3 Variable length coding is performed on the transform coefficient quantized in Process 2;
  • the prediction information PInfo includes an inter prediction parameter or an intra prediction parameter.
  • inter prediction parameters examples include a merge flag (merge_flag), a merge index (merge_idx), an estimated motion vector index (mvp_idx), a reference image index (ref_idx), an inter prediction flag (inter_pred_flag), and a motion vector residual (mvd). Is mentioned.
  • examples of the intra prediction parameters include an estimated prediction mode flag, an estimated prediction mode index, and a residual prediction mode index.
  • the PU partition type specified by the PU partition information includes the following eight patterns in total, assuming that the size of the target CU is 2N ⁇ 2N pixels. That is, 4 symmetric splittings of 2N ⁇ 2N pixels, 2N ⁇ N pixels, N ⁇ 2N pixels, and N ⁇ N pixels, and 2N ⁇ nU pixels, 2N ⁇ nD pixels, nL ⁇ 2N pixels, And four asymmetric splittings of nR ⁇ 2N pixels.
  • N 2 m (m is an arbitrary integer of 1 or more).
  • an area obtained by dividing the target CU is also referred to as a partition.
  • FIG. 26 (a) shows a 2N ⁇ 2N PU partition type that does not perform CU partitioning.
  • FIGS. 26B, 26C, and 26D show the partition shapes when the PU partition types are 2N ⁇ N, 2N ⁇ nU, and 2N ⁇ nD, respectively.
  • FIGS. 26 (e), (f), and (g) show the shapes of partitions when the PU partition types are N ⁇ 2N, nL ⁇ 2N, and nR ⁇ 2N, respectively.
  • FIG. 26 (h) shows the shape of the partition when the PU partition type is N ⁇ N.
  • the PU partition type shown in FIGS. 26 (a) and (h) is also referred to as square partition based on the shape of the partition.
  • the PU partition types shown in FIGS. 26B to 26G are also referred to as non-square partitions.
  • the numbers given to the respective regions indicate the region identification numbers, and the regions are processed in the order of the identification numbers. That is, the identification number represents the processing order of the areas.
  • Partition type for inter prediction In the inter PU, seven types other than N ⁇ N (FIG. 26 (h)) are defined among the above eight division types. The six asymmetric partitions are sometimes called AMP (Asymmetric Motion Partition).
  • a specific value of N is defined by the size of the CU to which the PU belongs, and specific values of nU, nD, nL, and nR are determined according to the value of N.
  • a 128 ⁇ 128 pixel inter-CU includes 128 ⁇ 128 pixels, 128 ⁇ 64 pixels, 64 ⁇ 128 pixels, 64 ⁇ 64 pixels, 128 ⁇ 32 pixels, 128 ⁇ 96 pixels, 32 ⁇ 128 pixels, and 96 ⁇ It is possible to divide into 128-pixel inter PUs.
  • Partition type for intra prediction In the intra PU, the following two types of division patterns are defined.
  • the division patterns (a) and (h) can be taken in the example shown in FIG.
  • an 128 ⁇ 128 pixel intra CU can be divided into 128 ⁇ 128 pixel and 64 ⁇ 64 pixel intra PUs.
  • Enhancement layer For the enhancement layer encoded data, for example, a data structure substantially similar to the data structure shown in FIG. 25 can be adopted. However, in the encoded data of the enhancement layer, additional information can be added or parameters can be omitted as follows.
  • Information indicating hierarchical coding may be encoded in the SPS.
  • spatial scalability, temporal scalability, and SNR scalability hierarchy identification information may be encoded.
  • Filter information and filter on / off information can be encoded by a PPS, a slice header, a macroblock header, or the like.
  • a skip flag (skip_flag), a base mode flag (base_mode_flag), and a prediction mode flag (pred_mode_flag) may be encoded.
  • the CU type of the target CU is an intra CU, an inter CU, a skip CU, or a base skip CU.
  • Intra CU and skip CU can be defined in the same manner as in the HEVC method described above. For example, in the skip CU, “1” is set in the skip flag. If it is not a skip CU, “0” is set in the skip flag. In the intra CU, “0” is set in the prediction mode flag.
  • the inter CU may be defined as a CU that applies non-skip and motion compensation (MC).
  • MC non-skip and motion compensation
  • the base skip CU is a CU type that estimates CU or PU information from a reference layer.
  • “1” is set in the skip flag and “1” is set in the base mode flag.
  • the base merge PU is a PU type for estimating PU information from a reference layer. Further, for example, in the PT information PTI, a merge flag and a base mode flag may be encoded, and using these flags, it may be determined whether or not the target PU is a PU that performs base merge. That is, in the base merge PU, “1” is set to the merge flag and “1” is set to the base mode flag.
  • the PU type of the target PU is an intra PU, an inter PU, a merge PU, or a base merge PU.
  • Intra PU, inter PU, and merge PU can be defined in the same manner as in the HEVC method described above.
  • the motion vector information included in the enhancement layer the motion vector information that can be derived from the motion vector information included in the lower layer can be omitted from the enhancement layer.
  • the code amount of the enhancement layer can be reduced, so that the coding efficiency is improved.
  • the encoded data of the enhancement layer may be generated by an encoding method different from the encoding method of the lower layer. That is, the encoding / decoding process of the enhancement layer does not depend on the type of the lower layer codec.
  • the lower layer is, for example, MPEG-2 or H.264. It may be encoded by the H.264 / AVC format.
  • the reference layer parameters are converted to the corresponding parameters of the target layer or similar parameters, so that corresponding compatibility between the layers is achieved.
  • the reference layer parameters can keep.
  • a macroblock in the H.264 / AVC format can be interpreted as a CTB in HEVC.
  • the parameters described above may be encoded independently, or a plurality of parameters may be encoded in combination.
  • an index is assigned to the combination of parameter values, and the assigned index is encoded.
  • the encoding of the parameter can be omitted.
  • FIG. 27 is a functional block diagram showing a schematic configuration of the hierarchical video decoding device 1 ′.
  • the hierarchical moving picture decoding apparatus 1 ′ decodes the hierarchical encoded data DATA supplied from the hierarchical moving picture encoding apparatus 2 ′ by the HEVC method to generate a decoded image POUT # T of the target layer.
  • the hierarchical video decoding device 1 ′ includes a NAL demultiplexing unit 51, a variable length decoding unit 52, a prediction parameter restoration unit 54, a texture restoration unit 55, a base decoding unit 53, and a filter parameter restoration unit 56. Is provided.
  • the NAL demultiplexing unit 51 demultiplexes hierarchically encoded data DATA transmitted in units of NAL units in NAL (Network Abstraction Layer).
  • NAL is a layer provided to abstract communication between a VCL (Video Coding Layer) and a lower system that transmits and stores encoded data.
  • VCL Video Coding Layer
  • VCL is a layer that performs video encoding processing, and encoding is performed in the VCL.
  • the lower system here is H.264.
  • H.264 / AVC and HEVC file formats and MPEG-2 systems are supported.
  • NAL a bit stream generated by VCL is divided into units called NAL units and transmitted to a destination lower system.
  • the NAL unit includes encoded data encoded by the VCL and a header for appropriately delivering the encoded data to the destination lower system. Also, the encoded data in each layer is stored in the NAL unit, is NAL-multiplexed, and is transmitted to the hierarchical video decoding device 1 '.
  • the NAL demultiplexing unit 51 demultiplexes the hierarchical encoded data DATA, and extracts the target layer encoded data DATA # T and the reference layer encoded data DATA # R. Further, the NAL demultiplexing unit 51 supplies the target layer encoded data DATA # T to the variable length decoding unit 52 and also supplies the reference layer encoded data DATA # R to the base decoding unit 16.
  • variable length decoding unit 52 performs a decoding process of information for decoding various syntax values from the binary included in the target layer encoded data DATA # T.
  • variable length decoding unit 52 decodes prediction information, encoding information, transform coefficient information, and filter parameter information from the encoded data DATA # T as follows.
  • variable length decoding unit 52 decodes prediction information related to each CU or PU from the encoded data DATA # T.
  • the prediction information includes, for example, designation of a CU type or a PU type.
  • variable length decoding unit 12 decodes the PU partition information from the encoded DATA # T.
  • variable length decoding unit 52 further converts motion information such as a reference image index RI, an estimated motion vector index PMVI, and a motion vector residual MVD, and mode information as encoded data DATA as prediction information. Decrypt from #T.
  • variable length decoding unit 52 further includes, as prediction information, (1) size designation information that designates the size of a prediction unit, and (2) prediction index designation that designates a prediction index.
  • the intra prediction information including information is decoded from the encoded data DATA # T.
  • variable length decoding unit 12 decodes the encoded information from the encoded data DATA # T.
  • the encoded information includes information for specifying the shape, size, and position of the CU. More specifically, the encoding information includes tree block division information that specifies a division pattern of the target tree block into each CU, that is, the shape, size, and target tree block of each CU included in the target tree block. Contains information that specifies the position within.
  • variable length decoding unit 52 supplies the decoded prediction information and encoded information to the prediction parameter restoration unit 54.
  • variable length decoding unit 52 decodes the quantization prediction residual QD for each block and the quantization parameter difference ⁇ qp for the tree block including the block from the encoded data DATA # T.
  • the variable length decoding unit 52 supplies the decoded quantization prediction residual QD and the quantization parameter difference ⁇ qp to the texture restoration unit 55 as transform coefficient information.
  • variable length decoding unit 52 decodes the filter parameter information for deriving the filter parameter from the encoded data #T and supplies the decoded parameter to the filter parameter restoration unit 56.
  • the base decoding unit 53 decodes base decoding information, which is information on a reference layer that is referred to when decoding a decoded image corresponding to the target layer, from the reference layer encoded data DATA # R.
  • the base decoding information includes a base prediction parameter, a base transform coefficient, and a base decoded image.
  • the base decoding unit 53 supplies the decoded base decoding information to the prediction parameter restoration unit 54 and the texture restoration unit 55.
  • the prediction parameter restoration unit 54 restores the prediction parameter using the prediction information and the base decoding information.
  • the prediction parameter restoration unit 54 supplies the restored prediction parameter to the texture restoration unit 55.
  • the prediction parameter restoration unit 54 can refer to motion information stored in a frame memory 155 (described later) included in the texture restoration unit 15 when restoring the prediction parameter.
  • the filter parameter restoration unit 56 derives a filter parameter using the filter parameter information and supplies it to the texture restoration unit 55.
  • the texture restoration unit 55 generates a decoded image POUT # T using the transform coefficient information, the base decoding information, the prediction parameter, and the filter parameter, and outputs the decoded image POUT # T to the outside.
  • the texture restoration unit 55 stores information on the restored decoded image in a frame memory 155 (described later) provided therein.
  • FIG. 28 is a functional block diagram illustrating the configuration of the prediction parameter restoration unit 54.
  • the prediction parameter restoration unit 54 includes a prediction type selection unit 141, a switch 142, an intra prediction mode restoration unit 143, a motion vector candidate derivation unit 144, a motion information restoration unit 145, a merge candidate derivation unit 146, and A merge information restoration unit 147 is provided.
  • the prediction type selection unit 141 sends a switching instruction to the switch 142 according to the CU type or the PU type, and controls the prediction parameter derivation process. Specifically, it is as follows.
  • the prediction type selection unit 141 controls the switch 142 so that the prediction parameter can be derived using the intra prediction mode restoration unit 143.
  • the prediction type selection unit 141 uses the motion information restoration unit 145 to control the switch 142 so that a prediction parameter can be derived.
  • the prediction type selection unit 141 controls the switch 142 so that the prediction parameter can be derived using the merge information restoration unit 147.
  • the switch 142 supplies the prediction information to any of the intra prediction mode restoration unit 143, the motion information restoration unit 145, and the merge information restoration unit 147 in accordance with an instruction from the prediction type selection unit 141.
  • a prediction parameter is derived at a supply destination of the prediction information.
  • the intra prediction mode restoration unit 143 derives a prediction mode from the prediction information. That is, the intra prediction mode restoration unit 143 restores the prediction parameter in the prediction mode.
  • FIG. 29 shows the definition of the prediction mode.
  • 36 types of prediction modes are defined, and each prediction mode is specified by a number (intra prediction mode index) from “0” to “35”.
  • intra prediction mode index a number (intra prediction mode index) from “0” to “35”.
  • the following names are assigned to the respective prediction modes. That is, “0” is “Intra_Planar (planar prediction mode, plane prediction mode)”, “1” is “Intra DC (intra DC prediction mode)”, and “2” to “34” are “ “Intra Angular (direction prediction)”, and “35” is “Intra From Luma”.
  • “35” is unique to the color difference prediction mode, and is a mode for performing color difference prediction based on luminance prediction.
  • the color difference prediction mode “35” is a prediction mode using the correlation between the luminance pixel value and the color difference pixel value.
  • the color difference prediction mode “35” is also referred to as an LM mode.
  • the number of prediction modes (intraPredModeNum) is “35” regardless of the size of the target block.
  • the motion vector candidate derivation unit 144 uses the base decoding information to derive an estimated motion vector candidate by intra-layer motion information estimation processing or inter-layer motion estimation processing.
  • the motion vector candidate derivation unit 144 supplies the derived motion vector candidates to the motion information restoration unit 145.
  • the motion information restoration unit 145 restores motion information related to each inter PU that is not merged. That is, the motion information restoring unit 145 restores motion information as a prediction parameter.
  • the motion information restoration unit 145 restores motion information from the prediction information when the target CU (PU) is an inter CU and an inter PU. More specifically, the motion information restoration unit 145 acquires a motion vector residual (mvd), an estimated motion vector index (mvp_idx), an inter prediction flag (inter_pred_flag), and a reference image index (refIdx). Then, based on the value of the inter prediction flag, a reference image list use flag is determined for each of the reference image list L0 and the reference image list L1.
  • mvd motion vector residual
  • mvp_idx estimated motion vector index
  • inter_pred_flag inter prediction flag
  • refIdx reference image index
  • the motion information restoration unit 145 derives an estimated motion vector based on the value of the estimated motion vector index, A motion vector is derived based on the motion vector residual and the estimated motion vector.
  • the motion information restoration unit 145 outputs the motion information (motion compensation parameter) together with the derived motion vector, the reference image list use flag, and the reference image index.
  • the merge candidate derivation unit 146 derives various merge candidates using the decoded motion information supplied from the frame memory 155 described later and / or the base decoding information supplied from the base decoding unit 16.
  • the merge candidate derivation unit 146 supplies the derived merge candidates to the merge information restoration unit 147.
  • the merge information restoration unit 147 restores motion information regarding each PU that is merged within a layer or between layers. That is, it is motion information that the merge information restoration unit 147 restores as a prediction parameter.
  • the merge information restoration unit 147 uses the merge candidate list derived by the merge candidate derivation unit 146 by intra-layer merging. Then, the motion information is restored by deriving a motion compensation parameter corresponding to the merge index (merge_idx) included in the prediction information.
  • the merge information merging unit 146 derives a merge index (merge_idx) included in the prediction information from the merge candidate list derived by inter-layer merging.
  • the motion information is restored by deriving the corresponding motion compensation parameter.
  • FIG. 31 is a functional block diagram illustrating the configuration of the texture restoration unit 55.
  • the texture restoration unit 55 includes an inverse orthogonal transform / inverse quantization unit 151, a texture prediction unit 152, an adder 153, a loop filter unit 154, and a frame memory 155.
  • the inverse orthogonal transform / inverse quantization unit 151 (1) inversely quantizes the quantized prediction residual QD included in the transform coefficient information supplied from the variable length decoding unit 52, and (2) obtained by inverse quantization.
  • the DCT coefficient is subjected to inverse orthogonal transform (for example, DCT (Discrete Cosine Transform) transform), and (3) the prediction residual D obtained by the inverse orthogonal transform is supplied to the adder 153.
  • inverse orthogonal transform for example, DCT (Discrete Cosine Transform) transform
  • the inverse orthogonal transform / inverse quantization unit 151 derives a quantization step QP from the quantization parameter difference ⁇ qp included in the transform coefficient information.
  • the texture prediction unit 152 refers to the base decoded image included in the base decoding information or the decoded decoded image stored in the frame memory according to the prediction parameter, and generates a predicted image.
  • the texture prediction unit 152 includes an inter prediction unit 152A, an intra-layer intra prediction unit 152B, and an inter-layer intra prediction unit 152C.
  • the inter prediction unit 152A generates a prediction image related to each inter prediction partition by inter prediction. Specifically, the inter prediction unit 152A generates a prediction image from the reference image using the motion information supplied as a prediction parameter from the motion information restoration unit 145 or the merge information restoration unit 147.
  • the intra-layer intra prediction unit 152B generates a prediction image related to each intra-prediction partition by intra-layer intra prediction. Specifically, the intra-layer intra prediction unit 152B generates a prediction image from the decoded image that has been decoded in the target partition, using the prediction mode supplied from the intra prediction mode restoration unit 143 as a prediction parameter.
  • the inter-layer intra prediction unit 152C generates a prediction image related to each intra prediction partition by inter-layer intra prediction. Specifically, the intra-layer intra prediction unit 152C generates a prediction image based on the base decoded image included in the base decoding information, using the prediction mode supplied from the intra prediction mode restoration unit 143 as a prediction parameter.
  • the base decoded image may be appropriately upsampled according to the resolution of the target layer.
  • the texture prediction unit 152 supplies the predicted image generated by the inter prediction unit 152A, the intra-layer intra prediction unit 152B, or the inter-layer intra prediction unit 152C to the adder 153.
  • the adder 153 generates a decoded image by adding the prediction image generated by the texture prediction unit 152 and the prediction residual D supplied from the inverse orthogonal transform / inverse quantization unit 151.
  • the loop filter unit 154 performs a deblocking process and a filter process using an adaptive filter parameter on the decoded image supplied from the adder 153 using a filter parameter.
  • the frame memory 155 stores the decoded image that has been filtered by the loop filter unit 154.
  • FIG. 32 is a functional block diagram illustrating the configuration of the base decoding unit 53.
  • the base decoding unit 53 includes a variable length decoding unit 161, a base prediction parameter restoration unit 162, a base transform coefficient restoration unit 163, and a base texture restoration unit 164.
  • variable length decoding unit 161 performs a decoding process of information for decoding various syntax values from the binary included in the reference layer encoded data DATA # R.
  • variable length decoding unit 161 decodes prediction information and transform coefficient information from the encoded data DATA # R.
  • the syntax of the prediction information and the transform coefficient decoded by the variable length decoding unit 161 is the same as that of the variable length decoding unit 52, and thus detailed description thereof is omitted here.
  • variable length decoding unit 161 supplies the decoded prediction information to the base prediction parameter restoring unit 162 and also supplies the decoded transform coefficient information to the base transform coefficient restoring unit 163.
  • the base prediction parameter restoration unit 162 restores the base prediction parameter based on the prediction information supplied from the variable length decoding unit 161.
  • the method by which the base prediction parameter restoration unit 162 restores the base prediction parameter is the same as that of the prediction parameter restoration unit 54, and thus detailed description thereof is omitted here.
  • the base prediction parameter restoration unit 162 supplies the restored base prediction parameter to the base texture restoration unit 164 and outputs it to the outside.
  • the base transform coefficient restoration unit 163 restores transform coefficients based on the transform coefficient information supplied from the variable length decoding unit 161.
  • the method by which the base transform coefficient restoration unit 163 restores the transform coefficients is the same as that of the inverse orthogonal transform / inverse quantization unit 151, and thus detailed description thereof is omitted here.
  • the base conversion coefficient restoration unit 163 supplies the restored base conversion coefficient to the base texture restoration unit 164 and outputs it to the outside.
  • the base texture restoration unit 164 uses the base prediction parameter supplied from the base prediction parameter restoration unit 162 and the base transform coefficient supplied from the base transform coefficient restoration unit 163 to generate a decoded image. Specifically, the base texture restoration unit 164 performs the same texture prediction as the texture prediction unit 152 based on the base prediction parameter, and generates a predicted image. Also, the base texture restoration unit 164 generates a prediction residual based on the base conversion coefficient, and generates a base decoded image by adding the generated prediction residual and the predicted image generated by texture prediction.
  • the base texture restoration unit 164 may perform the same filter processing as the loop filter unit 154 on the base decoded image. Further, the base texture restoration unit 164 may include a frame memory for storing the decoded base decoded image, or may refer to the decoded base decoded image stored in the frame memory in texture prediction. Good.
  • FIG. 33 is a functional block diagram showing a schematic configuration of the hierarchical video encoding device 2 ′.
  • the hierarchical moving image encoding device 2 ′ encodes the input image PIN # T of the target layer with reference to the reference layer encoded data DATA # R to generate hierarchical encoded data DATA of the target layer. It is assumed that the reference layer encoded data DATA # R has been encoded in the hierarchical video encoding apparatus corresponding to the reference layer.
  • the hierarchical video encoding device 2 ′ includes a prediction parameter determination unit 61, a prediction information generation unit 62, a base decoding unit 63, a texture information generation unit 64, a variable length encoding unit 65, and a NAL multiplexing unit. 66, and a filter parameter information generation unit 67.
  • the prediction parameter determination unit 61 determines a prediction parameter used for prediction of a prediction image and other encoding settings based on the input image PIN # T.
  • the prediction parameter determination unit 61 performs encoding settings including prediction parameters as follows.
  • the prediction parameter determination unit 61 generates a CU image for the target CU by sequentially dividing the input image PIN # T into slice units, tree block units, and CU units.
  • the prediction parameter determination unit 61 generates encoded information (sometimes referred to as header information) based on the result of the division process.
  • the encoding information includes (1) tree block information that is information about the size and shape of the tree block belonging to the target slice and the position in the target slice, and (2) the size, shape, and target of the CU belonging to each tree block.
  • CU information which is information about the position in the tree block.
  • the prediction parameter determination unit 61 refers to the CU image, the tree block information, and the CU information, and predicts the prediction type of the target CU, the division information of the target CU into the PU, and the prediction parameter (the target CU is an intra CU). If so, the intra prediction mode, and in the case of an inter CU, a motion compensation parameter in each PU is derived.
  • the prediction parameter determination unit 61 includes (1) a prediction type of the target CU, (2) a possible division pattern for each PU of the target CU, and (3) a prediction mode that can be assigned to each PU (if it is an intra CU).
  • the cost is calculated for all combinations of the intra prediction mode and the motion compensation parameter in the case of inter CU), and the prediction type, division pattern, and prediction mode with the lowest cost are determined.
  • the prediction parameter determination unit 61 supplies the encoded information and the prediction parameter to the prediction information generation unit 62 and the texture information generation unit 64. Although not shown for simplicity of explanation, the setting of the encoding information and the like determined by the prediction parameter determination unit 61 can be referred to by each unit of the hierarchical video encoding device 2 '.
  • the prediction information generation unit 62 generates prediction information including a syntax value related to the prediction parameter based on the prediction parameter supplied from the prediction parameter determination unit 61 and the reference layer encoded data DATA # R.
  • the prediction information generation unit 62 supplies the generated prediction information to the variable length encoding unit 65.
  • the prediction information generation unit 62 can refer to motion information stored in a frame memory 277 (described later) included in the texture information generation unit 64 when restoring the prediction parameter.
  • base decoding unit 63 is the same as the base decoding unit 53 of the hierarchical video decoding device 1 ′, description thereof is omitted here.
  • the texture information generation unit 64 generates transform coefficient information including transform coefficients obtained by orthogonal transform / quantization of the prediction residual obtained by subtracting the predicted image from the input image PIN # T.
  • the texture information generation unit 64 supplies the generated transform coefficient information to the variable length encoding unit 65.
  • information on the restored decoded image is stored in a frame memory 277 (described later) provided therein.
  • the texture information generation unit 64 sets filter parameters and supplies them to the filter parameter information generation unit 67.
  • the filter parameter information generation unit 67 generates filter parameter information including syntax values related to the filter parameters supplied from the texture information generation unit 64.
  • the filter parameter information generation unit 67 supplies the generated filter parameter information to the variable length encoding unit 65.
  • the variable length encoding unit 65 variable lengths the prediction information supplied from the prediction information generation unit 62, the transform coefficient information supplied from the texture information generation unit 64, and the filter parameter information supplied from the filter parameter information generation unit 67.
  • the target layer encoded data DATA # T is generated by encoding.
  • the variable length encoding unit 65 supplies the generated target layer encoded data DATA # T to the NAL multiplexing unit 66.
  • the NAL multiplexing unit 66 stores the target layer encoded data DATA # T and the reference layer encoded data DATA # R supplied from the variable length encoding unit 65 in the NAL unit, and thereby performs hierarchical video that has been NAL multiplexed. Image encoded data DATA is generated and output to the outside.
  • FIG. 34 is a functional block diagram illustrating the configuration of the prediction information generation unit 62.
  • the prediction information generation unit 62 includes a prediction type selection unit 261, a switch 262, an intra prediction mode derivation unit 263, a motion vector candidate derivation unit 264, a motion information generation unit 265, a merge candidate derivation unit 266, and A merge information generation unit 267 is provided.
  • the prediction type selection unit 261 sends a switching instruction to the switch 262 according to the CU type or PU type, and controls the prediction parameter derivation process. Specifically, it is as follows.
  • the prediction type selection unit 261 controls the switch 262 so that the prediction information can be derived using the intra prediction mode deriving unit 263.
  • the prediction type selection unit 261 controls the switch 262 so that a prediction parameter can be derived using the motion information generation unit 265.
  • the prediction type selection unit 261 controls the switch 262 so that the prediction parameter can be derived using the merge information generation unit 267.
  • the switch 262 supplies the prediction parameter to any of the intra prediction mode deriving unit 263, the motion information generating unit 265, and the merge information generating unit 267 in accordance with an instruction from the prediction type selecting unit 261.
  • a prediction parameter is derived at a supply destination of the prediction information.
  • the intra prediction mode deriving unit 263 derives a syntax value related to the prediction mode. That is, the intra prediction mode deriving unit 263 generates the syntax value related to the prediction mode as the prediction information.
  • the motion vector candidate derivation unit 264 uses the base decoding information to derive motion vector candidates by intra-layer motion estimation processing or inter-layer motion estimation processing.
  • the motion vector candidate derivation unit 264 supplies the derived motion vector candidates to the motion information generation unit 265.
  • the motion information generation unit 265 generates a syntax value related to motion information in each inter prediction partition that is not merged in the layer. That is, the motion information generation unit 265 generates a syntax value related to motion information as prediction information. Specifically, the motion information generation unit 265 derives corresponding syntax element values inter_pred_flag, mvd, mvp_idx, and refIdx from the motion compensation parameter in each PU.
  • the motion information generation unit 265 derives the syntax value based on the motion vector candidates supplied from the motion vector candidate derivation unit 264. To do.
  • the motion information generation unit 265 derives the syntax value based on the motion information included in the prediction parameter.
  • the merge candidate derivation unit 266 uses motion information similar to the motion compensation parameter in each PU using decoded motion information supplied from the frame memory 277 described later and / or base decoding information supplied from the base decoding unit 63, and the like. A merge candidate having a compensation parameter is derived. The merge candidate derivation unit 266 supplies the derived merge candidates to the merge information generation unit 267. Since the configuration of the merge candidate derivation unit 266 is the same as the configuration of the merge candidate derivation unit 146 included in the hierarchical video decoding device 1 ′, description thereof is omitted.
  • the merge information generation unit 267 generates a syntax value related to motion information regarding each inter prediction partition to be merged in the layer. That is, the merge information generation unit 267 generates a syntax value related to motion information as prediction information. Specifically, the merge information generation unit 267 outputs a syntax element value merge_idx that designates a merge candidate having a motion compensation parameter similar to the motion compensation parameter in each PU.
  • FIG. 34 is a functional block diagram illustrating the configuration of the texture information generation unit 64.
  • the texture information generation unit 64 includes a texture prediction unit 271, a subtractor 272, an orthogonal transformation / quantization unit 273, an inverse orthogonal transformation / inverse quantization unit 274, an adder 275, a loop filter unit 276, A frame memory 277 and a filter parameter deriving unit 278 are provided.
  • the subtractor 272 generates a prediction residual D by subtracting the prediction image supplied from the texture prediction unit 271 from the input image PIN # T.
  • the subtractor 272 supplies the generated prediction residual D to the orthogonal transform / quantization unit 273.
  • the orthogonal transform / quantization unit 273 generates a quantized prediction residual by performing orthogonal transform and quantization on the prediction residual D.
  • the orthogonal transform refers to an orthogonal transform from the pixel region to the frequency region. Examples of orthogonal transformation include DCT transformation (DiscretecreCosine Transform), DST transformation (Discrete Sine Transform), and the like.
  • DCT transformation DiscretecreCosine Transform
  • DST transformation Discrete Sine Transform
  • the specific quantization process is as described above, and the description thereof is omitted here.
  • the orthogonal transform / quantization unit 273 supplies the generated transform coefficient information including the quantized prediction residual to the inverse orthogonal transform / inverse quantization unit 274 and the variable length coding unit 65.
  • the filter parameter deriving unit 278 derives a filter parameter from the input image PIN # T and the decoded image supplied from the adder 275, and supplies the filter parameter to the loop filter unit 276 and the filter parameter information generating unit 67.
  • the texture prediction unit 271, the inverse orthogonal transform / inverse quantization unit 274, the adder 275, the loop filter unit 276, and the frame memory 277 are respectively included in the texture prediction unit 152 and the inverse orthogonal transform included in the hierarchical video decoding device 1 ′. Since it is the same as the inverse quantization unit 151, the adder 153, the loop filter unit 154, and the frame memory 155, the description thereof is omitted here. However, the texture prediction unit 271 supplies the predicted image not only to the adder 275 but also to the subtracter 272.
  • the processing method of the adaptive filter and the configuration of the encoded data are not determined.
  • an adaptive filter is applied to the base layer image (and its upsampled image), and the adaptive filter parameter is encoded with the encoded data of the enhancement layer.
  • the filter parameter is used when the filter parameter is decoded, it is not necessary to store the decoded filter parameter in the memory, and the memory can be reduced.
  • the filter parameter when decoding a filter parameter with a slice header and APS, it is necessary to store the filter parameter for 1 slice and 1 picture in a memory.
  • FIGS. 36 to 38 show syntax examples when the filter parameters of the adaptive filter applied to the base layer image are interleaved with each CTB for the enhancement layer.
  • the following parameters are encoded in CTB units.
  • SAO parameter base_layer_sao_unit_cabac On / off flag in ALF parameter: base_layer_alf_ctb_enable_flag
  • FIGS. 37A and 37B show syntax examples showing details of the SAO parameter: base_layer_sao_unit_cabac.
  • FIGS. 38A and 38B show syntax examples showing details of ALF filter parameters.
  • the filter coefficients are encoded by APS, and the on / off flag is encoded by CTB as described above.
  • the filter coefficient may be encoded with a slice header.
  • ue (v) indicates that the syntax associated with this descriptor is an unsigned numerical value, and the value is variable-length encoded.
  • se (v) indicates that the syntax associated with this descriptor is a signed numerical value and is variable-length-coded by being divided into a sign and an absolute value.
  • ae (v) indicates that the syntax associated with this descriptor is variable-length encoded using an arithmetic code.
  • U (n) indicates that the syntax associated with this descriptor is an unsigned numerical value, and n-bit fixed-length encoding is used.
  • the inter-layer intra prediction unit 152C includes a block extraction unit, an upsampling unit, an adaptive offset filter unit, and an adaptive spatial filter unit.
  • an adaptive filter among an adaptive offset filter part and an adaptive space filter part may be sufficient. That is, a configuration including only an adaptive offset filter as an adaptive filter (block extraction unit, upsampling unit, adaptive offset filter unit) may be used, or a configuration including only an adaptive spatial filter as an adaptive filter (block extraction unit, upsampling unit, adaptive) (Spatial filter unit).
  • the inter-layer intra prediction unit 152C generates a prediction image related to each intra prediction partition by inter-layer intra prediction.
  • the block (PU) of the predicted image is generated in units of PUs or CTBs.
  • the prediction image is generated in units of PUs.
  • the intra-layer intra prediction unit 152C can perform the prediction image derivation process including the adaptive filter process not only in the PU unit but also in the CTB unit.
  • the block extraction unit derives an area (basic layer reference block) on the base layer necessary for generating a prediction block.
  • the range of the enhancement layer block is derived by the following procedure.
  • the range of the enhancement layer block is a block range of an image generated by the block extraction unit and the upsampling unit. When a predicted image to which an adaptive filter is applied is generated, a larger range than the prediction block (PU in PU unit processing) is required in consideration of the reference range of the adaptive filter.
  • the width of the prediction block is expressed by nPSW and the height by nPSH.
  • Enhancement layer block range prediction block range.
  • the range of the enhancement layer block is expanded by the reference range of the adaptive filter (left and right ALFW pixels, upper and lower ALFH pixels).
  • the range of the enhancement layer block is expanded by the reference range of the adaptive filter (left and right pixels, upper and lower pixels).
  • the upsampling unit performs upsampling on the base layer reference block and generates an extension layer block when the resolutions of the base layer and the extension layer are different.
  • the base layer reference block is set as the enhancement layer block.
  • the adaptive offset filter unit performs adaptive offset filter processing on the enhancement layer block.
  • the adaptive spatial filter unit performs adaptive spatial filter processing on the output of the adaptive offset filter unit.
  • the inter-layer intra prediction unit performs the upsampling of the base layer reference block, thereby extending the (nPSW + ALFWx2 + 1) x (nPSH + ALFHx2 + 1) enhancement layer reference block and To do.
  • An adaptive offset filter is applied to the enhancement layer reference block to obtain a block of (nPSW + ALFWx2) x (nPSH + ALFHx2).
  • an adaptive spatial filter is applied to generate a predicted image of nPSW x nPSH.
  • the inter-layer intra prediction unit having the conventional configuration includes only a block extraction unit and an upsampling unit as shown in FIG. 39B, and no filtering process is performed.
  • ⁇ Prediction image generation in CTB unit (b)> The operation of generating a predicted image in CTB units is the same as the operation of generating a predicted image in PU units. Then, the operation is performed by replacing the width nPSW and height nPSH of the prediction block with the width and height of the CTB. Further, each PU cuts out only the necessary predicted image range from the block derived in CTB units when generating the predicted image.
  • the adaptive filter processing performed in the prediction image generation can be performed before the parameters necessary for the prediction image generation are decoded.
  • the filter parameter of the adaptive filter applied to the base layer image is encoded by an enhancement layer slice header or a parameter set (for example, APS).
  • the slice header and the parameter set are decoded before decoding the slice data encoded in units of CTB including the prediction parameter and the residual.
  • the intra-layer intra prediction unit performs any of the following processes (a), (b), and (c).
  • A When a PU is generated, block extraction processing, upsampling processing, and adaptive filter processing are performed in units of PUs.
  • B At the time of decoding CTB, block extraction processing, upsampling processing, and adaptive filter processing are performed in CTB units.
  • C When the base layer image is decoded, up-sampling processing and adaptive filter processing are performed.
  • adaptive filter processing can be performed not only when a PU is generated and when a CTB is decoded, but also when a base layer image is decoded. Therefore, it is not necessary to put an adaptive filter process into the pipeline such as variable length decoding of encoded data for each CTB, inverse transform, and prediction image generation. Therefore, it is possible to avoid an adaptive filter process that causes a delay in the pipeline, and the overall throughput is improved.
  • up-sampling and adaptive filter processing may be performed only in necessary areas in units (slices, pictures) larger than PU units and CTB units. The amount of processing can be reduced.
  • 41 to 44 show syntax examples when the filter parameters of the adaptive filter applied to the base layer image are encoded by the APS header of the enhancement layer.
  • adaptive filter parameters are encoded by APS.
  • the encoding may be performed using a sequence parameter set, a picture parameter set, and a slice header.
  • FIG. 43 shows syntax examples showing the configuration of the SAO parameter base_layer_aps_sao_param.
  • FIG. 44 shows a syntax example showing details of the ALF parameter base_layer_alf_picture_info encoded by APS.
  • the inter-layer intra prediction unit 152C includes a block extraction unit, an upsampling unit, an adaptive offset filter unit, and an adaptive spatial filter unit.
  • the inter-layer intra prediction unit 152C performs any of the following processes (a) to (c).
  • A When a PU is generated, block extraction processing, upsampling processing, and adaptive filter processing are performed in units of PUs.
  • B At the time of decoding CTB, block extraction processing, upsampling processing, and adaptive filter processing are performed in CTB units.
  • C When the base layer image is decoded, up-sampling processing and adaptive filter processing are performed.
  • the block extraction unit extracts base layer reference blocks in slice units or picture units.
  • the up-sampling unit up-samples the base layer reference block to obtain an enhancement layer reference block when the resolution of the base layer and the enhancement layer is different. Further, when the resolutions of the base layer and the enhancement layer are the same, the base layer reference block is set as the enhancement layer reference block.
  • the adaptive offset filter unit performs adaptive offset filter processing on the enhancement layer reference block.
  • the adaptive spatial filter unit performs adaptive spatial filter processing on the output of the adaptive offset filter unit.
  • the parameters of the filter applied to the decoded image from the lower layer are stored in the upper layer parameter set or slice header.
  • Filter processing can be performed before decoding the slice data of the upper layer, that is, at the time when the image from the lower layer is decoded, and throughput can be improved.
  • Intra-layer prediction is selected in units of PUs, and the filter parameters of the adaptive filter are encoded in units of CTBs. Since each CTB selects whether to perform intra prediction or inter prediction in units of PUs, only inter prediction may be used for all PUs included in the CTB. Moreover, also when using intra prediction, direction prediction etc. are used and intra-layer prediction may not be used.
  • a filter parameter used in intra-layer prediction such as a flag (on / off flag) indicating whether or not to apply an adaptive filter
  • a useless flag Will be encoded, and the encoding efficiency will be reduced.
  • adaptive filter processing for the base layer is limited to intra slices only.
  • an intra slice is a slice in which all of the CTBs included in the slice are generated as predicted images by intra prediction.
  • Intra prediction is used in all PUs included in the CTB, and inter-layer prediction is used in the CTB in many cases because of the high ratio of intra-layer prediction in intra-layer prediction. Therefore, useless encoding of flags is avoided.
  • the adaptive filter processing for the base layer is limited to only intra slices, so that it is possible to avoid encoding adaptive filter parameters with CTB that does not use inter-layer prediction. This improves the encoding efficiency.
  • the amount of adaptive filter processing for the base layer can be reduced while maintaining the effect of the adaptive filter processing. Can do.
  • the processing load can be reduced by reducing the processing amount.
  • FIG. 46 shows a syntax example of a configuration in which adaptive filter processing for the base layer is limited to intra slices only. As shown in the syntax example of FIG. 46, the following parameters are encoded using only intra slices. In addition, it is estimated to be 0 except for the intra slice.
  • SAO parameter base_layer_sao_unit_cabac On / off flag in ALF parameter: base_layer_alf_ctb_enable_flag
  • FIGS. 42A and 42B show syntax examples showing the details of the SAO parameter base_layer_sao_unit_cabac encoded by the slice header.
  • Hierarchical image encoding device 2 Hierarchical moving image encoding device 2 ′
  • hierarchical image decoding device 1 Hierarchical moving image decoding device 1 ′
  • the above-described hierarchical image encoding device 2 (hierarchical moving image encoding device 2 ′) and hierarchical image decoding device 1 (hierarchical moving image encoding device 1 ′) are various devices that transmit, receive, record, and reproduce moving images. It can be used on board.
  • the moving image may be a natural moving image captured by a camera or the like, or may be an artificial moving image (including CG and GUI) generated by a computer or the like.
  • the hierarchical image encoding device 2 and the hierarchical image decoding device 1 described above can be used for transmission and reception of moving images.
  • FIG. 21 is a block diagram illustrating a configuration of a transmission device PROD_A in which the hierarchical image encoding device 2 is mounted.
  • the transmission device PROD_A modulates a carrier wave with an encoding unit PROD_A1 that obtains encoded data by encoding a moving image and the encoded data obtained by the encoding unit PROD_A1.
  • a modulation unit PROD_A2 that obtains a modulation signal and a transmission unit PROD_A3 that transmits the modulation signal obtained by the modulation unit PROD_A2 are provided.
  • the above-described hierarchical image encoding device 2 is used as the encoding unit PROD_A1.
  • the transmission device PROD_A is a camera PROD_A4 that captures a moving image, a recording medium PROD_A5 that records the moving image, an input terminal PROD_A6 that inputs the moving image from the outside, as a supply source of the moving image input to the encoding unit PROD_A1.
  • An image processing unit A7 that generates or processes an image may be further provided.
  • FIG. 21A illustrates a configuration in which the transmission apparatus PROD_A includes all of these, but some of them may be omitted.
  • the recording medium PROD_A5 may be a recording of a non-encoded moving image, or a recording of a moving image encoded by a recording encoding scheme different from the transmission encoding scheme. It may be a thing. In the latter case, a decoding unit (not shown) for decoding the encoded data read from the recording medium PROD_A5 according to the recording encoding method may be interposed between the recording medium PROD_A5 and the encoding unit PROD_A1.
  • FIG. 21 is a block diagram illustrating a configuration of the receiving device PROD_B in which the hierarchical image decoding device 1 is mounted.
  • the receiving device PROD_B includes a receiving unit PROD_B1 that receives a modulated signal, a demodulating unit PROD_B2 that obtains encoded data by demodulating the modulated signal received by the receiving unit PROD_B1, and a demodulator.
  • a decoding unit PROD_B3 that obtains a moving image by decoding the encoded data obtained by the unit PROD_B2.
  • the hierarchical image decoding apparatus 1 described above is used as the decoding unit PROD_B3.
  • the receiving device PROD_B has a display PROD_B4 for displaying a moving image, a recording medium PROD_B5 for recording the moving image, and an output terminal for outputting the moving image to the outside as a supply destination of the moving image output by the decoding unit PROD_B3.
  • PROD_B6 may be further provided.
  • FIG. 21B illustrates a configuration in which the reception device PROD_B includes all of these, but a part of the configuration may be omitted.
  • the recording medium PROD_B5 may be used for recording a non-encoded moving image, or may be encoded using a recording encoding method different from the transmission encoding method. May be. In the latter case, an encoding unit (not shown) for encoding the moving image acquired from the decoding unit PROD_B3 according to the recording encoding method may be interposed between the decoding unit PROD_B3 and the recording medium PROD_B5.
  • the transmission medium for transmitting the modulation signal may be wireless or wired.
  • the transmission mode for transmitting the modulated signal may be broadcasting (here, a transmission mode in which the transmission destination is not specified in advance) or communication (here, transmission in which the transmission destination is specified in advance). Refers to the embodiment). That is, the transmission of the modulation signal may be realized by any of wireless broadcasting, wired broadcasting, wireless communication, and wired communication.
  • a terrestrial digital broadcast broadcasting station (broadcasting equipment or the like) / receiving station (such as a television receiver) is an example of a transmitting device PROD_A / receiving device PROD_B that transmits and receives a modulated signal by wireless broadcasting.
  • a broadcasting station (such as broadcasting equipment) / receiving station (such as a television receiver) of cable television broadcasting is an example of a transmitting device PROD_A / receiving device PROD_B that transmits and receives a modulated signal by cable broadcasting.
  • a server workstation etc.
  • Client television receiver, personal computer, smart phone etc.
  • VOD Video On Demand
  • video sharing service using the Internet is a transmitting device for transmitting and receiving modulated signals by communication.
  • PROD_A / reception device PROD_B usually, either a wireless or wired transmission medium is used in a LAN, and a wired transmission medium is used in a WAN.
  • the personal computer includes a desktop PC, a laptop PC, and a tablet PC.
  • the smartphone also includes a multi-function mobile phone terminal.
  • the video sharing service client has a function of encoding a moving image captured by the camera and uploading it to the server. That is, the client of the video sharing service functions as both the transmission device PROD_A and the reception device PROD_B.
  • Hierarchical image encoding device 2 and hierarchical image decoding device 1 can be used for recording and reproduction of moving images.
  • FIG. 22 is a block diagram showing a configuration of a recording device PROD_C in which the above-described hierarchical image encoding device 2 is mounted.
  • the recording device PROD_C has an encoding unit PROD_C1 that obtains encoded data by encoding a moving image, and the encoded data obtained by the encoding unit PROD_C1 on the recording medium PROD_M.
  • a writing unit PROD_C2 for writing.
  • the above-described hierarchical image encoding device 2 is used as the encoding unit PROD_C1.
  • the recording medium PROD_M may be of a type built in the recording device PROD_C, such as (1) HDD (Hard Disk Drive) or SSD (Solid State Drive), or (2) SD memory. It may be of the type connected to the recording device PROD_C, such as a card or USB (Universal Serial Bus) flash memory, or (3) DVD (Digital Versatile Disc) or BD (Blu-ray Disc: registration) Or a drive device (not shown) built in the recording device PROD_C.
  • HDD Hard Disk Drive
  • SSD Solid State Drive
  • SD memory such as a card or USB (Universal Serial Bus) flash memory, or (3) DVD (Digital Versatile Disc) or BD (Blu-ray Disc: registration) Or a drive device (not shown) built in the recording device PROD_C.
  • the recording device PROD_C is a camera PROD_C3 that captures moving images as a supply source of moving images to be input to the encoding unit PROD_C1, an input terminal PROD_C4 for inputting moving images from the outside, and reception for receiving moving images.
  • the unit PROD_C5 and an image processing unit C6 that generates or processes an image may be further provided.
  • FIG. 22A illustrates a configuration in which the recording apparatus PROD_C includes all of these, but a part of the configuration may be omitted.
  • the receiving unit PROD_C5 may receive a non-encoded moving image, or may receive encoded data encoded by a transmission encoding scheme different from the recording encoding scheme. You may do. In the latter case, a transmission decoding unit (not shown) that decodes encoded data encoded by the transmission encoding method may be interposed between the reception unit PROD_C5 and the encoding unit PROD_C1.
  • Examples of such a recording device PROD_C include a DVD recorder, a BD recorder, and an HDD (Hard Disk Drive) recorder (in this case, the input terminal PROD_C4 or the receiving unit PROD_C5 is a main supply source of moving images).
  • a camcorder in this case, the camera PROD_C3 is a main source of moving images
  • a personal computer in this case, the receiving unit PROD_C5 or the image processing unit C6 is a main source of moving images
  • a smartphone is also an example of such a recording device PROD_C.
  • FIG. 22 is a block showing a configuration of the playback device PROD_D in which the above-described hierarchical image decoding device 1 is mounted.
  • the playback device PROD_D reads a moving image by decoding a read unit PROD_D1 that reads encoded data written on the recording medium PROD_M and a coded data read by the read unit PROD_D1. And a decoding unit PROD_D2 to be obtained.
  • the hierarchical image decoding apparatus 1 described above is used as the decoding unit PROD_D2.
  • the recording medium PROD_M may be of the type built into the playback device PROD_D, such as (1) HDD or SSD, or (2) such as an SD memory card or USB flash memory, It may be of a type connected to the playback device PROD_D, or (3) may be loaded into a drive device (not shown) built in the playback device PROD_D, such as DVD or BD. Good.
  • the playback device PROD_D has a display PROD_D3 that displays a moving image, an output terminal PROD_D4 that outputs the moving image to the outside, and a transmission unit that transmits the moving image as a supply destination of the moving image output by the decoding unit PROD_D2.
  • PROD_D5 may be further provided.
  • FIG. 22B illustrates a configuration in which the playback apparatus PROD_D includes all of these, but a part of the configuration may be omitted.
  • the transmission unit PROD_D5 may transmit an unencoded moving image, or transmits encoded data encoded by a transmission encoding method different from the recording encoding method. You may do. In the latter case, it is preferable to interpose an encoding unit (not shown) that encodes a moving image using an encoding method for transmission between the decoding unit PROD_D2 and the transmission unit PROD_D5.
  • Examples of such a playback device PROD_D include a DVD player, a BD player, and an HDD player (in this case, an output terminal PROD_D4 to which a television receiver or the like is connected is a main supply destination of moving images).
  • a television receiver in this case, the display PROD_D3 is a main supply destination of moving images
  • a digital signage also referred to as an electronic signboard or an electronic bulletin board
  • the display PROD_D3 or the transmission unit PROD_D5 is the main supply of moving images.
  • Desktop PC (in this case, the output terminal PROD_D4 or the transmission unit PROD_D5 is the main video image supply destination), laptop or tablet PC (in this case, the display PROD_D3 or the transmission unit PROD_D5 is a moving image)
  • a smartphone which is a main image supply destination
  • a smartphone in this case, the display PROD_D3 or the transmission unit PROD_D5 is a main moving image supply destination
  • the like are also examples of such a playback device PROD_D.
  • Each block of the above-described hierarchical image decoding device 1, 1 ′ and hierarchical image encoding device 2, 2 ′ may be realized in hardware by a logic circuit formed on an integrated circuit (IC chip). However, it may be realized by software using a CPU (Central Processing Unit).
  • IC chip integrated circuit
  • CPU Central Processing Unit
  • each device includes a CPU that executes instructions of a program that realizes each function, a ROM (Read (Memory) that stores the program, a RAM (Random Memory) that expands the program, the program, and various types
  • a storage device such as a memory for storing data is provided.
  • An object of the present invention is to provide a recording medium in which a program code (execution format program, intermediate code program, source program) of a control program for each of the above devices, which is software that realizes the above-described functions, is recorded in a computer-readable manner This can also be achieved by supplying each of the above devices and reading and executing the program code recorded on the recording medium by the computer (or CPU or MPU).
  • Examples of the recording medium include tapes such as magnetic tapes and cassette tapes, magnetic disks such as floppy (registered trademark) disks / hard disks, CD-ROMs (Compact Disc-Read-Only Memory) / MO discs (Magneto-Optical discs).
  • tapes such as magnetic tapes and cassette tapes
  • magnetic disks such as floppy (registered trademark) disks / hard disks
  • CD-ROMs Compact Disc-Read-Only Memory
  • MO discs Magnetic-Optical discs
  • IC cards including memory cards
  • Cards such as optical cards
  • each of the above devices may be configured to be connectable to a communication network, and the program code may be supplied via the communication network.
  • the communication network is not particularly limited as long as it can transmit the program code.
  • the Internet intranet, extranet, LAN (Local Area Network), ISDN (Integrated Services Digital Network), VAN (Value-Added Network), CATV (Community Area Antenna / Cable Television) communication network, Virtual Private Network (Virtual Private Network) Network), telephone line network, mobile communication network, satellite communication network, and the like.
  • the transmission medium constituting the communication network may be any medium that can transmit the program code, and is not limited to a specific configuration or type.
  • the present invention can also be realized in the form of a computer data signal embedded in a carrier wave in which the program code is embodied by electronic transmission.
  • the present invention is suitable for a hierarchical image decoding device that decodes encoded data in which image data is hierarchically encoded, and a hierarchical image encoding device that generates encoded data in which image data is hierarchically encoded. Can be applied to. Further, the present invention can be suitably applied to the data structure of hierarchically encoded data that is generated by a hierarchical image encoding device and referenced by the hierarchical image decoding device.
  • Hierarchical image decoding device (moving image decoding device) 1 'Hierarchical video decoding device (video decoding device) DESCRIPTION OF SYMBOLS 11 Lower layer image decoding apparatus 12 Upper layer image decoding apparatus 13 Filter part 131 Filter processing part 132 Upsampling part (upsampling means) 1311 Filter application determination unit (filter application determination means) 1312 Filter application unit (filter application means) 1313 Spatial scalability determination unit 1314 Reference image determination unit 1315 Resolution determination unit 1316 Filter order determination unit 1317 Codec determination unit 51 NAL demultiplexing unit 52 Variable length decoding unit 53 Base decoding unit 54 Prediction parameter restoration unit 55 Texture restoration unit (filter application) means) 2 layer image encoding device 2 'layer moving image encoding device 21 lower layer image encoding device 22 upper layer image encoding device 24 filter selection / processing unit 241 filter selection / determination unit 242 filter unit

Abstract

階層画像復号装置1は、参照する下位レイヤからの復号画像に対して、フィルタ適用判定部1311が決定したフィルタを適用するフィルタ適用部1312と、を備えている。

Description

画像復号装置および画像符号化装置
 本発明は、画像データが階層的に符号化された符号化データを復号する画像復号装置、および、画像データが階層的に符号化された符号化データを生成する画像符号化装置に関する。
 通信システムで伝送される情報、あるいは蓄積装置に記録される情報の1つに画像あるいは動画像がある。これらの画像(以降、動画像を含む)の伝送・蓄積においては、必要なデータレートに従って、画像を階層的に符号化する階層符号化が用いられる。
 階層符号化の方式としては、ISO/IECとITU-Tの標準としてH.264/AVC Annex G Scalable Video Coding(SVC)が挙げられる。SVCでは空間スケーラビリティ、時間スケーラビリティ、SNRスケーラビリティをサポートする。例えば空間スケーラビリティの場合、原画像から所望の解像度にダウンサンプリングした画像を下位レイヤとしてH.264/AVCで符号化する。次に上位レイヤではレイヤ間の冗長性を除去するためにレイヤ間予測を行う。レイヤ間予測としては、動き予測に関する情報を同時刻の下位レイヤの情報から予測する動き情報予測、あるいは同時刻の下位レイヤの復号画像をアップサンプリングした画像から予測するテクスチャ予測がある(非特許文献1)。
 図18は階層画像符号化装置200の一例を示すブロック図である。図18に示すように階層画像符号化装置200は、下位レイヤ画像符号化装置2001、上位レイヤ画像符号化装置2002、アップサンプリング部2003、切り替え部2004、ダウンサンプリング部2005、切り替え部2006を備える。
 下位レイヤ画像符号化装置2001は、所定の符号化方式により下位レイヤにおける符号化を行うものであり、例えばSVCの場合はH.264/AVCで符号化する。下位レイヤ画像符号化装置2001は原画(入力画像)あるいは原画をダウンサンプリングした画像を符号化して、下位レイヤ符号化データを出力する。
 上位レイヤ画像符号化装置2002は、原画を、下位レイヤの復号画像あるいは復号画像をアップサンプリングした画像、下位レイヤの符号化情報(動き予測に関する情報等)を用いて符号化し、上位レイヤ符号化データを出力する。
 アップサンプリング部2003は空間スケーラビリティの場合に、下位レイヤの復号画像をアップサンプリングする。
 切り替え部2004は空間スケーラビリティではアップサンプリングし、それ以外の場合はアップサンプリングをスキップするよう処理を切り替える。
 ダウンサンプリング部2005は空間スケーラビリティの場合に原画をダウンサンプリングする。
 切り替え部2006は空間スケーラビリティではダウンサンプリングし、それ以外の場合はダウンサンプリングをスキップするよう処理を切り替える。
 図19は階層画像復号装置100の一例を示すブロック図である。図19に示すように階層画像復号装置100は、下位レイヤ画像復号装置1001、上位レイヤ画像復号装置1002、アップサンプリング部1003、および、切り替え部1004を備える構成である。
 下位レイヤ画像復号装置1001は、下位レイヤ符号化データを所定の符号化方式により復号するものであり、例えばSVCの場合はH.264/AVCで復号する。下位レイヤ画像復号装置1001は下位レイヤ符号化データを復号して下位レイヤの復号画像を出力する。上位レイヤ画像復号装置1002は、上位レイヤ符号化データ、下位レイヤの復号画像あるいは復号画像をアップサンプリングした画像、および下位レイヤの符号化情報(動き予測に関する情報等)を用いて、上位レイヤ復号画像を出力する。アップサンプリング部1003、切り替え部1004は、それぞれ図18のアップサンプリング部2003、切り替え部2004と同じ構成要素であるため、説明を省略する。
 また近年、画像符号化あるいは復号処理のループの中でフィルタ処理を施すループフィルタ技術が提案されている。
 ループフィルタは、原画と、予測画像に予測誤差画像を加算した復号画像との差分を最小にする(客観画質を向上させる)、あるいは主観画質を向上させることを目的として設けられる。ループフィルタを適用した復号画像を、予測画像を生成するときの動き補償で用いる参照画像とすることで、参照画像の客観・主観画質を向上させ、さらには動き補償を用いて符号化する以降の画像の画質を向上させることができる。このループフィルタの例としては、デブロッキングフィルタ、SAO(サンプル適応オフセット)フィルタ、ALF(適応ループフィルタ)が挙げられる(非特許文献2)。
ITU-T H.264 「Advanced video coding for generic audiovisual services」(2007年11月公開) 「JCTVC-H1003_dk High efficiency video coding (HEVC) text specification draft6」, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 6th Meeting: San Jose, US, 1-10 Feburary, 2012(2012年2月17日公開)
 ところで階層符号化においては、上位レイヤの画像を下位レイヤの画像からテクスチャ予測する場合、空間スケーラビリティにおいては下位レイヤの復号画像をアップサンプリングして予測画像とし、時間スケーラビリティやSNRスケーラビリティにおいては下位レイヤの復号画像をそのまま予測画像として用いていた。そのため、下位レイヤの復号画像が多くの符号化歪(ブロック歪、量子化雑音等)を含む低品質画像であった場合、この復号画像を参照した上位レイヤの予測画像も低品質となり、結果的に上位レイヤの符号化データ量の増加を招くことになる。
 本発明はこのような課題を解決するために、下位レイヤからの復号画像の画質を向上させることで、上位レイヤにおける符号化効率を向上させ、上位レイヤの復号画像の客観・主観画質を向上させる画像復号装置および画像符号化装置を提供する。
 上記の課題を解決するために、本発明に係る画像復号装置は、階層符号化された符号化データに含まれる上位レイヤの符号化データを復号し、下位レイヤからの復号画像を参照して生成した上位レイヤの予測画像を用いて上位レイヤの復号画像を復元する画像復号装置であって、上記上位レイヤから参照する上記下位レイヤからの復号画像に対して適用するフィルタを決定するフィルタ適用決定手段と、参照する上記下位レイヤからの復号画像に対して、上記フィルタ適用決定手段が決定したフィルタを適用するフィルタ適用手段と、を備えていることを特徴とする。
 上記構成によれば、上位レイヤの予測画像を生成する際、上位レイヤから下位レイヤからの復号画像を参照する際に、下位レイヤからの復号画像に対してフィルタを適用することができる。なお、“適用するフィルタを決定する”ことには、フィルタを適用しないことを決定することが含まれる。
 このため上記構成によれば、フィルタの適用により下位レイヤからの復号画像の客観・主観画質を向上させることができる。フィルタを適用した下位レイヤからの復号画像を上位レイヤのテクスチャ予測に利用することで、上位レイヤでのレイヤ間予測をより正確に行うことができる。
 その結果、下位レイヤからの復号画像の画質を向上させることで、上位レイヤにおける符号化効率を向上させ、上位レイヤの復号画像の客観・主観画質を向上させることができるという効果を奏する。
 さらにいえば、原画と、予測画像に予測誤差画像を加算した上位レイヤの復号画像との差分を最小にする(客観画質を向上させる)こと、あるいは、主観画質を向上させることができる。
 本発明に係る画像復号装置では、上記フィルタ適用決定手段は、所定の指標に関し要求される符号化効率に応じて、適用するフィルタを決定することが好ましい。
 上記構成によれば、所定の指標に関し、要求される符号化効率に応じた種類のフィルタを適用することができる。フィルタの種類には、単一のフィルタおよび複数のフィルタの組み合わせが含まれる。
 所定の指標としては、例えば、スケーラビリティの種類、ピクチャタイプ、および下位レイヤのコーデックの種類などが挙げられる。
 所定の指標に関し、高画質が求められる場合、高い符号化効率が要求される。また、所定の指標に関し、それほど高画質でなくても構わない場合、符号化効率は、高画質が求められる場合よりも低くても構わない。
 例えば、スケーラビリティの指標に関して言えば、次のとおりである。空間スケーラビリティの場合、上位レイヤの画像と下位レイヤの画像の解像度が異なるため、処理量は多いが、画質向上幅の高いALFが適している。
 また、それ以外のスケーラビリティの場合、上位レイヤの画像と下位レイヤの画像の解像度が同じであるため、空間スケーラビリティほど高い画質向上効果を持つフィルタを適用しなくても構わない。
 上記構成は、所定の指標について、画質に対する要求に応じたフィルタを適用することができる。
 本発明に係る画像復号装置では、上記フィルタ適用決定手段は、上記所定の指標として、スケーラビリティを判定し、スケーラビリティが空間スケーラビリティであった場合、適用するフィルタとして、空間スケーラビリティでない場合より画質向上効果の高いフィルタを決定することが好ましい。
 空間スケーラビリティの場合、上位レイヤの画像の解像度と下位レイヤの画像の解像度とが異なるため、処理量は多いが、画質向上幅の高いフィルタ、例えばALFが適している。それ以外のスケーラビリティの場合、上位レイヤの画像の解像度と下位レイヤの画像の解像度とが同じであるため、空間スケーラビリティほど高い画質向上効果を持つフィルタを適用しなくても構わない。従って処理量が小さく、主観画質向上効果のあるフィルタ、例えば、SAOあるいはデブロッキングフィルタ単体での適用が適している。
 上記構成によれば、スケーラビリティが空間スケーラビリティであった場合、より画質向上効果の高いフィルタを適用することができる。
 これにより、上位レイヤの画像の解像度と下位レイヤの画像の解像度が異なるようなときに、上位レイヤの予測画像を生成するために参照する下位レイヤの復号画像の画質を向上させることができる。
 本発明に係る画像復号装置では、上記フィルタ適用決定手段は、上記所定の指標として、復号対象となる画像が後続の画像の復号の際に参照される参照画像であるか否かを判定し、復号対象となる画像が参照画像である場合、適用するフィルタとして、復号対象となる画像が参照画像でない場合よりも画質向上効果の高いフィルタを決定することが好ましい。
 上位レイヤで後続の画像から参照される画像が、高画質であれば後続の画像を復号する際に正確な予測ができる。
 そのため、復号対象となる画像が参照画像である場合、処理量は多いが、画質向上幅の高いフィルタ、例えば、ALFが適している。
 また、復号対象となる画像が参照画像でない場合、参照される画像ほど高画質でなくてもよい。そのため処理量の点からフィルタを適用しなくてもよい。
 上記構成によれば、復号対象となる画像が参照画像である場合、より画質向上効果の高いフィルタを適用することができる。
 これにより、高画質が要求される参照画像の画質を向上させることができる。
 本発明に係る画像復号装置では、上記フィルタ適用決定手段は、上記所定の指標として、下位レイヤで使用する符号化方式を判定し、符号化方式の画質に応じたフィルタを適用するフィルタとして決定することが好ましい。
 上記構成によれば、符号化方式の画質に応じたフィルタを適用することができる。符号化方式としては、例えば、MPEG-2、H.264/AVC、およびHEVCなどが挙げられる。また、一般的に、画質は、MPEG-2、H.264/AVC、およびHEVCの順に高くなる。
 上記構成によれば、画質がより低い符号化方式の場合、画質がより高い符号化方式の場合よりも、画質向上効果が高いフィルタを適用することができる。
 本発明に係る画像復号装置では、上記フィルタ適用決定手段は、所定の指標に関する処理量に応じて、適用するフィルタを決定することが好ましい。
 画像復号装置における復号処理の処理量が多くなるような場合、過負荷を防ぐためフィルタ処理の処理量を抑えることが望ましい。
 これに対して、画像復号装置における復号処理の処理量が少なくなるような場合、画質および処理効率の向上のため処理量の多いフィルタ処理を適用することが望ましい。
 上記構成によれば、所定の指標に関する処理量に応じて、適用するフィルタを決定する。所定の指標としては、例えば、解像度、アップサンプリングの位置(空間スケーラビリティの場合)が挙げられる。
 上記構成により、復号処理およびフィルタ処理の処理量に応じたフィルタを適用することができ、これにより過負荷を防ぎ、画質および処理効率の向上を図ることができる。
 本発明に係る画像復号装置では、空間スケーラビリティの場合に下位レイヤの画像を上位レイヤの画像にアップサンプリングするアップサンプリング手段を備え、上記フィルタ適用決定手段は、上記所定の指標として、アップサンプリング手段およびフィルタ適用手段の適用順序を判定し、適用するフィルタとして、上記適用順序に応じたフィルタを決定することが好ましい。
 フィルタ適用後にアップサンプリングを行う場合、アップサンプリング前の低解像度の画像にフィルタを適用することになるのに対して、フィルタ適用前にアップサンプリングを行う場合、アップサンプリング後の高解像度の画像にフィルタを適用することになる。
 よって、フィルタ適用後にアップサンプリングを行う場合のほうが、フィルタ適用前にアップサンプリングを行う場合よりも、フィルタ処理量が多くなる。
 上記構成によれば、フィルタ適用後にアップサンプリングを行う場合、すなわちフィルタ処理量が比較的小さくなる場合、よりフィルタ処理量が高く画質向上効果の高いフィルタ処理を行うことができる。
 これにより、復号処理およびフィルタ処理の処理量に応じたフィルタを適用することができる。よって、過負荷を防ぎ、画質および処理効率の向上を図ることができる。
 本発明に係る画像復号装置では、上記フィルタ適用決定手段は、上記所定の指標として解像度を判定し、解像度が低解像度である場合、適用するフィルタとして、復号対象となる画像が高解像度である場合よりも、フィルタ処理量が多いフィルタを決定することが好ましい。
 解像度が低解像度である場合、復号処理の処理量が小さいため、画像復号装置の処理能力の範囲で、よりフィルタ処理量が多いフィルタを適用することが、画質や処理効率の面で好ましい。
 上記構成によれば、復号処理の処理量が小さい低解像度である場合において、よりフィルタ処理量が多いフィルタを適用することができる。
 これにより、復号処理およびフィルタ処理の処理量に応じたフィルタを適用することができる。よって、過負荷を防ぎ、画質および処理効率の向上を図ることができる。
 本発明に係る画像復号装置では、上記フィルタ適用決定手段は、フィルタ処理量に対する制約に応じて、適用するフィルタを決定することが好ましい。
 上記構成によれば、フィルタ処理量に対する制約に応じた種類のフィルタを決定することができる。フィルタ処理量に対する制約とは、例えば、フィルタ処理量に対する画像復号装置の処理能力のことをさす。
 アプリケーションや搭載する機器によっては、フィルタ処理量に対する制約が緩く、処理量が大きくても画質が良い方が好ましい場合もある。このような場合には、よりフィルタ処理量が大きく、かつ、画質向上効果がより高いフィルタを用いることが望ましい。
 上記構成は、フィルタ処理量の許容量に応じたフィルタを適用し、上位レイヤの予測画像を生成するために参照する下位レイヤからの復号画像の画質を向上させることができる。
 本発明に係る画像復号装置では、上記フィルタ適用手段が適用するフィルタのパラメータは、上記下位レイヤからの復号画像における上記フィルタの適用対象となる領域が含まれる単位領域毎に、当該単位領域と対応する上記上位レイヤの単位領域と一対となって該上位レイヤの符号化データに格納されているものであってもよい。
 上記の構成によれば、下位レイヤからの復号画像に適用するフィルタのパラメータが上位レイヤに、単位領域と一対となって格納される。これにより、単位領域毎に必要なフィルタパラメータが符号化されるので、フィルタパラメータの復号時が、フィルタパラメータの使用時となり、復号したフィルタパラメータを格納するためのメモリが不要となる。よって、メモリを削減することができる。なお、単位領域とは、例えば、CTB(coded tree block)である。
 本発明に係る画像復号装置では、単位領域を復号する際に用いられるパラメータであって、複数の単位領域で共通して用いられるパラメータを、符号化データの中で当該複数の単位領域のうちの最も前にある単位領域よりも前に集合させた群を共通群とし、上記フィルタ適用手段が適用するフィルタのパラメータは、上記下位レイヤからの復号画像における上記フィルタの適用対象となる領域が含まれる単位領域と対応する上記上位レイヤの単位領域を復号する際に用いられるパラメータが格納されている上記上位レイヤの上記共通群に格納されているものであってもよい。
 上記の構成によれば、下位レイヤからの復号画像に適用するフィルタのパラメータが上位レイヤの共通群に格納される。下位レイヤからの画像を復号した時点で、フィルタ処理を行うことが可能となり、スループットを向上させることができる。
 また、フィルタの適用を予測画像よりも大きな単位で行うことが可能となり、フィルタ処理を簡略化することができる。
 上記共通群が、スライスヘッダの場合、上述した効果を奏することができる。
 上記共通群が、APS(adaptation parameter set)の場合、上述した効果を奏することができる。
 本発明に係る画像復号装置では、上記フィルタ適用手段は、下位レイヤからの復号画像のうち、同じ画像内の画素を用いて予測画像を生成するイントラ予測によって生成された予測画像を用いて復元された復号画像の領域についてのみ、フィルタを適用するものであってもよい。
 上記の構成によれば、イントラ予測により生成された予測画像を用いて復元された復号画像の領域についてのみ、フィルタが適用され、これ以外の復号画像の領域に対しては、フィルタが適用されない。よって、不要なフィルタパラメータを符号化する必要がなくなり、符号化効率を向上させることができる。
 また、イントラ予測により生成された予測画像を用いて復元された復号画像の領域については、フィルタが適用されるので、フィルタの効果を維持したまま、フィルタの処理量を削減することができる。
 上記の課題を解決するために、本発明に係る画像符号化装置は、原画像から下位レイヤからの復号画像を参照して生成した上位レイヤの予測画像を減算して得られる残差を階層符号化して上位レイヤの符号化データを生成する画像符号化装置であって、上記上位レイヤから参照する上記下位レイヤからの復号画像に対して適用するフィルタを決定するフィルタ適用決定手段と、参照する上記下位レイヤからの復号画像に対して、上記フィルタ適用決定手段が決定したフィルタを適用するフィルタ適用手段と、
を備えていることを特徴とする。
 このように、上記画像復号装置に対応する構成を備える画像符号化装置も本発明の範疇に入る。また、当該画像符号化装置によって生成される画像符号化データのデータ構造も本発明の範疇に入る。上記のように構成された画像符号化装置および画像符号化データのデータ構造によれば、本発明に係る画像復号装置と同様の効果を奏することができる。
 本発明に係る画像復号装置は、階層符号化された符号化データに含まれる上位レイヤの符号化データを復号し、下位レイヤからの復号画像を参照して生成した上位レイヤの予測画像を用いて上位レイヤの復号画像を復元する画像復号装置であって、上記上位レイヤから参照する上記下位レイヤからの復号画像に対して適用するフィルタを決定するフィルタ適用決定手段と、参照する上記下位レイヤからの復号画像に対して、上記フィルタ適用決定手段が決定したフィルタを適用するフィルタ適用手段と、を備えている。
 本発明に係る画像符号化装置は、原画像から、下位レイヤからの復号画像を参照して生成した上位レイヤの予測画像を減算して得られる残差を階層符号化して上位レイヤの符号化データを生成する画像符号化装置であって、上記上位レイヤから参照する上記下位レイヤからの復号画像に対して適用するフィルタを決定するフィルタ適用決定手段と、参照する上記下位レイヤからの復号画像に対して、上記フィルタ適用決定手段が決定したフィルタを適用するフィルタ適用手段と、
を備えている。
 よって、本発明によれば、上位レイヤにおける符号化効率を向上させ、上位レイヤの復号画像の客観・主観画質を向上させることができる。
本発明の一実施形態に係る階層画像復号装置に含まれるフィルタ処理部131の構成例を示すブロック図である。 本発明の一実施形態に係る階層画像復号装置の一構成例を示すブロック図である。 上記階層画像復号装置が備える下位レイヤ画像復号装置の一構成例を示すブロック図である。 上記階層画像復号装置が備える上位レイヤ画像復号装置の一構成例を示すブロック図である。 空間スケーラビリティを実現するためのフィルタ部の一例を示す図である。 時間スケーラビリティ、SNRスケーラビリティを実現するためのフィルタ部の一例を示す図である。 スケーラビリティの種類によって適用するフィルタを選択するフローチャートである。 デブロッキングフィルタ、SAO、ALFのカスケード接続を示す図である。 ピクチャタイプによって適用するフィルタを選択するフローチャートである。 解像度によって適用するフィルタを選択するフローチャートである。 アップサンプリングの位置によって適用するフィルタを選択するフローチャートである。 下位レイヤのコーデックの種類によって適用するフィルタを選択するフローチャートである。 本発明の階層画像符号化装置の一例である。 上記階層画像符号化装置が備える下位レイヤ画像符号化装置の一構成例を示すブロック図である。 上記階層画像符号化装置が備える上位レイヤ画像符号化装置の一構成例を示すブロック図である。 上記階層画像符号化装置が備えるフィルタ選択・処理部の一例を示す図である。 フィルタ情報の算出方法の一例を示すフローチャートである。 従来の階層画像符号化装置の一例を示す図である。 従来の階層画像復号装置の一例を示す図である。 上記階層画像符号化装置によって生成され、上記階層画像復号装置によって復号される符号化データのデータ構成を示す図であり、(a)~(f)は、それぞれ、ピクチャレイヤ、スライスレイヤ、マクロブロックレイヤ、マクロブロックヘッダ、インター予測パーティションの予測パラメータ、及び、イントラ予測パーティションの予測パラメータの構造を示す図である。 上記階層画像符号化装置を搭載した送信装置、および、上記階層画像復号装置を搭載した受信装置の構成について示した図である。(a)は、階層画像符号化装置を搭載した送信装置を示しており、(b)は、階層画像復号装置を搭載した受信装置を示している。 上記階層画像符号化装置を搭載した記録装置、および、上記階層画像復号装置を搭載した再生装置の構成について示した図である。(a)は、階層画像符号化装置を搭載した記録装置を示しており、(b)は、階層画像復号装置を搭載した再生装置を示している。 スケーラビリティの種類によって処理を切り替えるフィルタ部の一例を示す図である。 階層符号化データについての説明図であり、(a)は、入力画像PIN#A~PIN#Cをそれぞれ階層的に符号化して符号化データDATA#A~DATA#Cを生成する階層動画像符号化装置を示す図であり、(b)は、階層的に符号化された符号化データDATA#A~DATA#Cをそれぞれ復号して復号画像POUT#A~POUT#Cを生成する階層動画像復号装置示す図である。 基本レイヤにおいて採用することができる符号化データのデータ構造について例示する図である。 CUにおけるPU分割の境界の位置を具体的に示す図である。 階層動画像復号装置の概略構成を示す図である。 予測パラメータ復元部の詳細構成を示す図である。 予測モードの定義を示す図である。 各予測モードに割り当てられている名称を示す図である。 テクスチャ復元部の詳細構成を示す図である。 ベース復号部の詳細構成を示す図である。 階層動画像符号化装置の概略構成を示す図である。 予測パラメータ符号化部の詳細構成を示す図である。 テクスチャ符号化部の詳細構成を示す図である。 基本レイヤの復号画像に適用するフィルタのフィルタパラメータを拡張レイヤに、CTB単位で格納する場合のシンタクス例を示す図である。 (a)、(b)は、基本レイヤの復号画像に適用するフィルタのフィルタパラメータを拡張レイヤに、CTB単位で格納する場合の詳細なシンタクス例を示す図である。 基本レイヤの復号画像に適用するフィルタのフィルタパラメータを拡張レイヤに、CTB単位で格納する場合の詳細なシンタクス例を示す図である。 レイヤ間イントラ予測部の動作を説明するための図であり、(a)はレイヤ間イントラ予測部の動作を示す図であり、(b)は従来の動作を示す図である。 参照ブロックにフィルタを適用する状態を説明するための図である。 基本レイヤの復号画像に適用するフィルタのフィルタパラメータを拡張レイヤのスライスヘッダ、またはAPSに格納する場合のシンタクス例を示す図である。 (a)、(b)は、基本レイヤの復号画像に適用するフィルタのフィルタパラメータを拡張レイヤのスライスヘッダ、またはAPSに格納する場合の詳細なシンタクス例を示す図である。 (a)、(b)、(c)は、基本レイヤの復号画像に適用するフィルタのフィルタパラメータを拡張レイヤのスライスヘッダ、またはAPSに格納する場合の詳細なシンタクス例を示す図である。 基本レイヤの復号画像に適用するフィルタのフィルタパラメータを拡張レイヤのスライスヘッダ、またはAPSに格納する場合の詳細なシンタクス例を示す図である。 レイヤ間イントラ予測部の動作を説明するための図である。 基本レイヤの復号画像に適用するフィルタのフィルタパラメータを拡張レイヤのイントラスライスのみに格納する場合のシンタクス例を示す図である。
 以下、図面を参照して本発明の実施の形態を説明する。
〔符号化データのデータ構造〕
 本実施形態に係る階層画像符号化装置2及び階層画像復号装置1の詳細な説明に先立って、階層画像符号化装置2によって生成され、階層画像復号装置1によって復号される符号化データのデータ構造について説明を行う。符号化データは、下位レイヤと上位レイヤとから構成される。
 以下、符号化データを生成する符号化方式として、H.264/AVCのSVC技術を用いる場合について例示する。しかしながら、これに限られず、下位レイヤを、MPEG-2や、HEVCなどの符号化方式により符号化してもよい。また、下位レイヤと上位レイヤとが異なる符号化方式によって符号化されていてもよい。
 また、下位レイヤの符号化データと上位レイヤの符号化データとは、互いに異なる伝送路を介して階層画像復号装置1に供給されるものであってもよいし、同一の伝送路を介して階層画像符号化装置1から階層画像復号装置2に供給されるものであってもよい。
 (下位レイヤの符号化データ)
 図20は、符号化データの下位レイヤのデータ構造を示す図である。符号化データは、例示的に、シーケンス、およびシーケンスを構成する複数のピクチャを含む。なお、シーケンスには、当該シーケンスを復号するために階層画像復号装置1が参照する符号化パラメータの集合であるシーケンスパラメータセット(SPS)が含まれる。SPSの後に、ピクチャパラメータセット(PPS)が通知される。PPSは対応ピクチャを復号するために階層画像復号装置1が参照する符号化パラメータの集合であり、PPSが参照するSPSを示す情報を含む。
 データの階層構造を図20に示す。図20(a)~(f)は、それぞれ、シーケンス、スライスレイヤS、マクロブロックレイヤMB、マクロブロックヘッダMBH、インター予測パーティションの予測パラメータPP、及び、イントラ予測パーティションの予測パラメータPPの構造を示す図である。
 シーケンスは、図20(a)に示すように、SPS,PPS、及び、各ピクチャを構成するスライスレイヤS1~SNsを含んでいる(Nsは1ピクチャに含まれるスライスレイヤの総数)。ここでPPSは存在しない場合もありうる。
 各スライスレイヤSは、対応スライスを復号するために階層画像復号装置1が参照するデータの集合である。スライスレイヤSは、図20(b)に示すように、スライスヘッダSH、及び、マクロブロックレイヤMB1~MBNm(NmはスライスSに含まれるマクロブロックの総数)を含んでいる。
 スライスヘッダSHには、対応スライスの復号方法を決定するために階層画像復号装置1が参照する符号化パラメータ群が含まれる。(1)スライスが参照するPPSあるいはSPSを示す情報、(2)スライスタイプを指定するスライスタイプ指定情報、(3)対応スライスを含むピクチャの表示順序(POC:Picture Order Count)を指定するPOC指定情報、及び、(4)動画像符号化装置2が予測に用いた重み係数を指定する重み係数指定情報は、スライスヘッダSHに含まれる符号化パラメータの一例である。
 なお、スライスタイプ指定情報により指定可能なスライスタイプとしては、(1)符号化の際にイントラ予測のみを用いるIスライス、(2)符号化の際に単方向予測、又は、イントラ予測を用いるPスライス、(3)符号化の際に単方向予測、双方向予測、又は、イントラ予測を用いるBスライスなどが挙げられる。
 スライスレイヤSに含まれる各マクロブロックレイヤMBは、対応マクロブロックを復号するために階層画像復号装置1が参照するデータの集合である。マクロブロックレイヤMBは、図20(c)に示すように、スキップフラグSKIP、マクロブロックヘッダMBH、予測パラメータPP1~PPNp、及び、量子化予測誤差QD1~QDNbを含んでいる。ここで、Npは、対応マクロブロックに含まれるパーティション(予測単位)の総数を表し、Nbは、対応マクロブロックに含まれるブロック(変換単位)の総数を表す。スキップフラグSKIPの値が1の場合、すなわち、対応マクロブロックがスキップブロックである場合、そのマクロブロックレイヤにおけるマクロブロックヘッダMBH、予測パラメータPP1~PPNp、及び、量子化予測誤差QD1~QDNbは省略される。
 マクロブロックヘッダMBHには、対応マクロブロックの復号方法を決定するために階層画像復号装置1が参照する符号化パラメータが含まれる。具体的には、図20(d)に示すように、対応マクロブロックのマクロブロックタイプを指定するマクロブロックタイプ指定情報MBT(mb_type)、符号化ブロックパターンを指定するCBP(coded_block_pattern)、量子化ステップの大きさを指定する量子化パラメータ差分Δqp(mb_qp_delta)が含まれる。マクロブロックタイプ指定情報MBTは、予測単位指定情報PTと変換単位指定情報TTとを含む。
 予測単位指定情報PTは、対応マクロブロックのパーティション(予測単位)への分割パターンと、階層画像符号化装置2が各パーティションにおける予測画像を生成する際に用いた予測方法(L0単方向予測、L1単方向予測、双方向予測など)を指定する。パーティションは、16×16画素、16×8画素、8×16画素、8×8画素、8×4画素、又は4×8画素の領域である。一方、変換単位指定情報TTは、対応マクロブロックのブロック(変換単位)への分割パターンを指定する。ブロックは、4×4画素、又は8×8画素の正方形領域である。
 量子化パラメータ差分Δqpは、対応マクロブロックにおける量子化パラメータqpと、そのマクロブロックの直前に符号化されたマクロブロックにおける量子化パラメータqp’との差分qp-qp’である。
 マクロブロックレイヤMBに含まれる各量子化予測残差QDnは、階層画像符号化装置2が以下の処理1~3を対応ブロックに施すことによって生成した符号化データである。
 処理1:符号化対象画像から予測画像を減算した予測残差をDCT変換(Discrete Cosine Transform)する;
 処理2:処理1にて得られたDCT係数を量子化する;
 処理3:処理2にて量子化されたDCT係数を可変長符号化する;
 なお、上述した量子化パラメータqpは、階層画像符号化装置2がDCT係数を量子化する際に用いた量子化ステップQPの大きさを表す(QP=2pq/6)。
 マクロブロックレイヤMBに含まれる予測パラメータPPのうち、インター予測によって予測画像が生成されるインター予測パーティションに関する予測パラメータPPは、図20(e)に示すように、参照画像インデックスRIと、推定動きベクトルインデックスPMVIと、動きベクトル残差MVDとを含んでいる。
 動きベクトル残差MVDは、階層画像符号化装置2が以下の処理4~6を実行することによって生成した符号化データである。
 処理4:符号化/復号済みの局所復号画像を選択し、選択した符号化/復号済みの局所復号画像(以下「参照画像」とも呼称)を参照して対応パーティションに対する動きベクトルmvを導出する;
 処理5:推定方法を選択し、選択した推定方法を用いて対応パーティションに割り付ける動きベクトルmvの推定値(以下「推定動きベクトル」とも呼称)pmvを導出する;
 処理6:処理4にて導出した動きベクトルmvから処理5にて導出した推定動きベクトルpmvを減算した動きベクトル残差MVDを符号化する;
 上述した参照画像インデックスRIは、処理4にて選択した符号化/復号済みの局所復号画像(参照画像)を指定するものであり、上述した推定動きベクトルインデックスPMVIは、処理5にて選択した推定方法を指定するものである。処理5にて選択可能な推定方法としては、(1)符号化/復号中の局所復号画像において、対応パーティションに隣接するパーティション(以下「隣接パーティション」とも呼称する)に割り付けられた動きベクトルのメジアンを推定動きベクトルpmvとする方法や、(2)符号化/復号済みの局所復号画像において、対応パーティションと同じ位置を占めるパーティション(しばしば「コロケートパーティション」と呼称される)に割り付けられた動きベクトルを推定動きベクトルpmvとする方法などが挙げられる。
 なお、単方向予測を行うパーティションに関する予測パラメータPPには、図20(e)に示すように、参照画像インデックスRI、推定動きベクトルインデックスPMVI、及び、動きベクトル残差MVDがそれぞれ1つずつ含まれているが、双方向予測(重み付き予測)を行うパーティションに関する予測パラメータPPには、2つの参照画像インデックスRI1及びRI2、2つの推定動きベクトルインデックスPMVI1及びPMVI2、並びに、2つの動きベクトル残差MVD1及びMVD2が含まれる。
 マクロブロックレイヤMBに含まれる予測パラメータPPのうち、イントラ予測によって予測画像が生成されるイントラ予測パーティションに関する予測パラメータPPは、図20(f)に示すように、予測モードフラグPMFと予測モード符号PMCとを含んでいる。予測モードフラグPMFは、対応パーティションにおける予測モードが隣接パーティションから推定した予測モードと一致する場合に値1を取り、そうでない場合に値0を取る。予測モード符号PMCは、対応パーティションにおける予測モードを指定する予測モード指定情報を符号化したものであり、予測モードフラグPMFの値が1である場合には省略される。
 (上位レイヤの符号化データ)
 上位レイヤの符号化データについても、例えば、図20に示すものとほぼ同様のデータ構造を採用することができる。ただし、SPSには階層符号化を示す情報が符号化されていてもよい。スライスレイヤでは、空間スケーラビリティ、時間スケーラビリティ、および、SNRスケーラビリティの階層の識別情報(それぞれ、dependency_id、temporal_id、および、quality_id)が符号化されていてもよい。フィルタ情報やフィルタのオン/オフ情報(後述)はPPS、スライスヘッダ、マクロブロックヘッダ等で符号化することが可能である。
 なお、上位レイヤに含まれる動きベクトル情報のうち、下位レイヤに含まれる動きベクトル情報から導出可能な動きベクトル情報については、上位レイヤから省略する構成とすることができる。このような構成とすることによって、上位レイヤの符号量を削減することができるので、符号化効率が向上する。
 また、上述のとおり上位レイヤの符号化データを、下位レイヤの符号化方式と異なる符号化方式により生成しても構わない。すなわち、上位レイヤの符号化・復号処理は、下位レイヤのコーデックの種類に依存しない。
 上位レイヤが、例えば、MPEG-2や、HEVC(High Efficiency Video Coding)方式によって符号化されていてもよい。
〔階層画像復号装置〕
 図2の階層画像復号装置は本発明を適用した階層画像復号装置1の一例である。図2に示すように階層画像復号装置1は、下位レイヤ画像復号装置11、上位レイヤ画像復号装置12、およびフィルタ部13を備える。
 下位レイヤ画像復号装置11は、下位レイヤ画像符号化装置21(後述)から送信される下位レイヤの符号化データを所定の符号化方式により復号する。下位レイヤ画像復号装置11が復号に用いる符号化方式の一例は図19を用いて説明したようなH.264/AVCである。しかしながら、これに限らず、下位レイヤ画像復号装置11はMPEG-2や現在規格策定中のHEVCを復号に用いても構わない。
 上位レイヤ画像復号装置12は上位レイヤの符号化データを復号し、下位レイヤからの復号画像を参照して上位レイヤの復号画像を再生する。
 フィルタ部13は下位レイヤからの復号画像を上位レイヤから参照するためにフィルタ処理を施す。
 以下、下位レイヤ画像復号装置11、上位レイヤ画像復号装置12、およびフィルタ部13それぞれの構成例についてより詳しく説明する。
 (下位レイヤ画像復号装置の構成例)
 図3を用いて下位レイヤ画像復号装置11の構成例について説明する。図3は下位レイヤ画像復号装置11の構成例を示すブロック図である。
 より具体的には、下位レイヤ画像復号装置11は、可変長復号部111、逆量子化・逆変換部112、加算部113、動き補償部114、メモリ115、およびループフィルタ部116を備える。
 可変長復号部111は下位レイヤ符号化データを可変長復号する。可変長復号部111は、下位レイヤ符号化データから復号した量子化変換係数(予測誤差)を出力する。また、可変長復号部111は、下位レイヤ符号化データから復号した判定情報(後述)をフィルタ部13に供給する。
 逆量子化・逆変換部112は復号された量子化変換係数(予測誤差)に逆量子化、逆変換を施す。
 加算部113は逆量子化・逆変換部112の出力である予測誤差と、動き補償部114の出力である予測画像とを加算する。
 ループフィルタ部116は加算部113の出力である復号画像にループフィルタを適用する。ループフィルタは、原画と、予測画像に予測誤差画像を加算した復号画像との差分を最小にする(客観画質を向上させる)、あるいは主観画質を向上させることを目的として設けられる。ループフィルタを適用した復号画像を動き補償部114で用いる参照画像とすることで、参照画像の客観・主観画質を向上させ、さらには動き補償を用いて符号化する以降の画像の画質を向上させることができる。このループフィルタの例としては、非特許文献2に記載されているようなデブロッキングフィルタ、SAO(サンプル適応オフセット)フィルタ、ALF(適応ループフィルタ)が挙げられる。
 なお、符号化方式としてMPEG-2を採用する場合、ループフィルタ部116は省略される。
 また、符号化方式としてH.264/AVCを採用する場合、ループフィルタ部116はデブロッキングフィルタである。
 また、符号化方式としてHEVCを採用する場合、ループフィルタ部116には、デブロッキングフィルタ、SAO、ALFの3種類のフィルタが含まれる。
 メモリ115はループフィルタを適用した復号画像を格納する。
 動き補償部114はメモリ115に格納された画像を利用して動き補償を行い、予測画像を出力する。
 (上位レイヤ画像復号装置の構成例)
 図4を用いて、上位レイヤ画像復号装置12の構成例について説明する。図4は上位レイヤ画像復号装置12の構成例を示すブロック図である。図4に示すように、上位レイヤ画像復号装置12は、ループフィルタを適用した画像復号装置である。
 具体的には、上位レイヤ画像復号装置12は、可変長復号部121、逆量子化・逆変換部122、加算部123、動き補償部124、メモリ125、およびループフィルタ部126、および切り替え部127を備える。
 可変長復号部121は符号化データを可変長復号する。可変長復号部121は、復号した予測誤差を出力する。また、可変長復号部121は復号したフィルタのオン/オフ情報および判定情報(後述)をフィルタ部13および切り替え部127に供給する。
 逆量子化・逆変換部122~ループフィルタ部126は図3の逆量子化・逆変換部112~ループフィルタ部116と同じ構成要素であるので、説明を省略する。
 切り替え部127は下位レイヤからの復号画像と、動き補償部124の出力である動き補償画像とを切り替えて予測画像として出力する。なお、空間スケーラビリティの場合、上述した“下位レイヤからの復号画像”は、下位レイヤからの復号画像をアップサンプリングした画像である。しかしながら、下位レイヤからの復号画像と、下位レイヤからの復号画像をアップサンプリングした画像とを特に区別する必要がない場合、以降ではこれらを区別せず単に“下位レイヤからの復号画像”と呼ぶ。
 切り替え部127は、上記切り替え処理を、可変長復号部121から出力される、符号化データ中の情報(例えばピクチャタイプ、スライスタイプ、処理単位毎の予測モード情報等)に従って行う。
 イントラピクチャ、イントラスライスでは、切り替え部127は、上位レイヤの符号化データから可変長復号部121で復号された処理単位毎の予測モード情報等に従って、上位レイヤのイントラ予測部(図示しない)からの予測画像、あるいは下位レイヤからの復号画像を選択する。
 また、P(片方向予測)/B(双方向予測)ピクチャ、P(片方向予測)/B(双方向予測)スライスでは、切り替え部127は、上位レイヤの符号化データから可変長復号部121で復号された処理単位毎の予測モード情報等に従って、動き補償部124からの出力の動き補償画像、あるいは下位レイヤからの復号画像を選択する。
 (フィルタ部の構成例)
 以下、図5、図6および図23を用いて、フィルタ部の構成例を説明する。以下では、図5を用いて上位レイヤと下位レイヤとで画像の解像度が異なる空間スケーラビリティのフィルタ部13Aの構成例について説明する。また、図6を用いて上位レイヤと下位レイヤとで画像の解像度が等しい時間スケーラビリティあるいはSNRスケーラビリティのフィルタ部13Bの構成例について説明する。また、図23を用いて、図5に示すフィルタ部13Aと、図6に示すフィルタ部13Bとを組み合わせたフィルタ部13の構成例について説明する。以下、図5、図6、および図23の順で説明する。
 まず、図5(a)および(b)に示すフィルタ部13Aについて説明する。図5(a)に示すフィルタ部13Aは下位レイヤからの復号画像にフィルタを施すフィルタ処理部131と、その出力に対して下位レイヤの画像を上位レイヤの画像の解像度に戻すためのアップサンプリング部132からなる。図5(a)に示すフィルタ部13Aでは下位レイヤからの復号画像に対し、後述する原画(空間スケーラビリティの場合は原画をダウンサンプリングした画像であるが、以降では原画と呼ぶ)に近づけるためのフィルタを適用してからアップサンプリングフィルタを適用する。ここで原画に近づけるとは、復号画像と原画との差分値を小さくする(客観画質を向上させる)、あるいは復号画像の主観画質を向上させることである。復号画像の解像度においてフィルタを適用するため、フィルタ処理に必要な処理量が小さいというメリットがある。
 図5(b)に示すフィルタ部13Aは下位レイヤからの復号画像に、上位レイヤの画像の解像度に戻すためのアップサンプリングを行うアップサンプリング部132と、アップサンプリング部132の出力に対してフィルタ処理を施すフィルタ処理部131からなる。
 図5(a)および(b)を対比すると次のとおりである。図5(b)に示すフィルタ部13Aでは、図5(a)に示すフィルタ部13Aとはアップサンプリング部132とフィルタ処理部131との順序が逆である。
 また、図5(b)に示すフィルタ部13Aのフィルタ処理部131がフィルタを適用する画像の解像度は、下位レイヤからの復号画像をアップサンプリングした後のものであるのに対して、図5(a)に示すフィルタ部13Aのフィルタ処理部131がフィルタを適用する画像の解像度は、下位レイヤからの復号画像のものである。
 また、図5(b)に示すフィルタ部13Aでは、アップサンプリング部132において、下位レイヤからの復号画像を上位レイヤの画像の解像度に戻した後でフィルタを適用するため、図5(a)に示すフィルタ部13Aより原画に近い復号画像を参照することができる。フィルタ処理部131は図2の上位レイヤ画像復号装置12から出力されたフィルタ情報(後述)等を用いてフィルタ処理を施す。なお、アップサンプリング部132に、図19のアップサンプリング部1003と同じ構成要素を用いても構わない。
 なお上述の説明では、フィルタ部13Aは、フィルタ処理を、フィルタ処理部131のフィルタとアップサンプリングフィルタ部132のフィルタとに分ける2段階処理として説明したが、これに限られず、1回のフィルタ処理として適用することも可能である。
 次に、図6に示すフィルタ部13Bについて説明する。図6は時間スケーラビリティあるいはSNRスケーラビリティの場合に、下位レイヤからの復号画像に対し、原画に近づけるためのフィルタを適用するフィルタ部13Bである。図6に示すフィルタ部13Bは、フィルタ処理部131を備える。フィルタ処理部131については、図5を用いて説明したとおりであるので、その説明を省略する。
 次に、図23に示すフィルタ部13について説明する。図23は、空間スケーラビリティの場合と、それ以外のスケーラビリティ(すなわち、時間スケーラビリティあるいはSNRスケーラビリティ)の場合とで、適用するフィルタを切り替えるフィルタ部13である。
 図23に示すフィルタ部13は、下位レイヤ(下位レイヤ画像復号装置11)からの復号画像に対し、原画に近づけるためのフィルタを適用し、フィルタ画像を上位レイヤ(上位レイヤ画像復号装置12)に供給する。フィルタ部13は、フィルタ部13A、13B、切り替え部133を備える。フィルタ部13Aは、図5に示したものと同様であり、フィルタ部13Bは、図6に示したものと同様であるので、ここではその説明を省略する。
 切り替え部133は、スケーラビリティの種類に応じて、下位レイヤからの復号画像をフィルタ部13Aまたはフィルタ部13Bのいずれかに入力する。
 空間スケーラビリティの場合、フィルタ部13Aにスイッチする。この場合、フィルタ部13Aが、下位レイヤからの復号画像をアップサンプリングしフィルタを適用したフィルタ画像または下位レイヤからの復号画像にフィルタを適用しアップサンプリングしたフィルタ画像を、上位レイヤ画像復号装置12に供給する。
 一方、空間スケーラビリティの以外のスケーラビリティの場合、フィルタ部13Bにスイッチする。この場合、フィルタ部13Bは、アップサンプリングなしでフィルタを適用したフィルタ画像を上位レイヤ画像復号装置12に供給する。
 なお、この切り替え処理は、後述の階層画像符号化装置2が備える切り替え部26における切り替え処理に対応しているということもできる。
 (フィルタ処理部の詳細)
 次に、図1を用いて、図5および図6に示したようなフィルタ処理部131の詳細構成について説明する。図1は、フィルタ処理部131の詳細な構成について例示するブロック図である。
 図1に示すように、フィルタ処理部131は、フィルタ適用判定部1311、フィルタ適用部1312、空間スケーラビリティ判定部1313、参照画像判定部1314、解像度判定部1315、フィルタ順序判定部1316、コーデック判定部1317を備える。
 フィルタ適用判定部1311は、フィルタ情報、フィルタのオン/オフ情報、およびフィルタを決定するための指標を示す判定情報に基づいて、フィルタの適用要否、および、適用するフィルタの種類を決定するものである。フィルタ情報、フィルタのオン/オフ情報、および判定情報の詳細については後述する。
 フィルタ適用部1312は、フィルタ適用判定部1311が決定したフィルタを復号画像に適用するものである。フィルタ適用部1312が適用することができるフィルタの種類や、その組み合わせについては後述する。
 空間スケーラビリティ判定部1313は、適用されているスケーラビリティが、空間スケーラビリティか否かを判定するものである。
 参照画像判定部1314は、ピクチャタイプが上位レイヤで復号する後続の画像から参照されるものであるか否かを判定するものである。
 解像度判定部1315は、上位レイヤおよび下位レイヤの画像の解像度を判定するものである。
 フィルタ順序判定部1316は、アップサンプリングとフィルタ処理の順番を判定するものである。
 コーデック判定部1317は、下位レイヤのコーデック(符号化方式)の種類を判定するものである。
 (フィルタ適用部において適用可能なフィルタおよびその組み合わせ)
 ここで、フィルタ適用部1312において適用可能なデブロッキングフィルタ(DF;Deblocking Filter)、SAO、ALFについて簡単に説明する。
 デブロッキングフィルタは、予測あるいは変換処理の境界で発生するブロック歪を低減する技術である。ブロック境界の種類(予測処理の境界と変換処理の境界)、予測モード(イントラと非イントラ)、非ゼロ直交変換係数の有無、参照フレーム、隣接する復号画素値、動き情報に依存して、ブロック境界に適用するフィルタの強度とフィルタのオン/オフを適応的に決定する。そしてブロック歪が存在すると判定されたフィルタオンのブロック境界には、フィルタの強度に応じて指定されたフィルタを適用し、ブロック境界近傍の画素値を平滑化する。
 SAOは、原画と復号画像の差異を、画素レベルの特性に応じて適応的に設定されたオフセットを加算することで補償する技術である。SAOには処理対象画素値とその近傍の画素値からエッジの方向を検出し、処理対象画素値とその近傍の画素値の差分値(変動量)に応じて加算するオフセットを切り替えるエッジオフセット(EO)タイプと、処理対象画素値に応じて加算するオフセットを切り替えるバンドオフセット(BO)タイプがある。フィルタ情報として、処理対象単位毎にEOとBOのどちらのタイプを適用するかを示す情報、EOの場合はさらにエッジ方向を示す情報、各変動量に対し加算するオフセットを通知する。BOの場合は画素値に応じて加算するオフセットを通知する。処理対象単位毎に通知されたタイプに応じて、EOの場合は処理対象画素値とその近傍画素値から計算した変動量に対応するオフセットを加算し、BOの場合は処理対象画素値に対応するオフセットを加算する。
 ALFは、原画と復号画像との差分(平均2乗誤差)を最小にするフィルタ係数、タップ数を算出し、下位レイヤからの復号画像にフィルタ処理を行うことでレート歪性能を改善する技術である。このフィルタとしてウィナーフィルタ(Wiener Filter)等が用いられる。算出したフィルタ係数、タップ数はフィルタ情報として、フィルタのオン/オフ情報と合わせて通知する。通知された情報を用いて、処理対象単位毎にALFを適用する。
 なお、上述したような、SAO、およびALFで用いられるフィルタ情報、および処理単位毎のフィルタのオン/オフ情報は可変長復号部121からフィルタ適用判定部1311に通知される。デブロッキングフィルタではフィルタ適用判定部1311でフィルタのオン/オフを判定する。また、フィルタオンの処理単位では、フィルタ適用部1312が、フィルタ情報を用いてフィルタ処理を実行する。
 以降ではこれらの通知される情報をまとめて、フィルタ情報およびフィルタのオン/オフ情報と呼ぶ。これらの情報は上位レイヤの符号化データの一部として符号化される。
 次にフィルタ適用部1312におけるフィルタ処理の組み合わせついて説明する。フィルタ適用部1312によるフィルタ処理はブロック歪を除去するデブロッキングフィルタ、処理単位のオフセットを調整するSAO、原画との差分値を最小にするウィナーフィルタを用いたALFを単体、あるいは組み合わせて構成される。
 フィルタ適用判定部1311は、フィルタ適用部1312が適用するフィルタを、可変長復号部121、または、可変長復号部121から通知される判定情報を用いて決定する。判定情報は、適用するフィルタを決定するための指標を含む情報である。例えば、フィルタ適用判定部1311は、フィルタを決定する指標と、適用するフィルタの種類とを対応付ける所定の対応関係に基づいて適用するフィルタの種類を決定する。適用するフィルタを決定するための指標と、適用するフィルタとの対応関係の例を表1に示す。
Figure JPOXMLDOC01-appb-T000001
 表1に示す(1)~(5)の指標は単なる例示であり、これらに限られない。要求される性能や処理量に応じた指標を用いることができる。
 表1において適用するフィルタの種類の候補1は、フィルタ処理量への制約が大きい場合に適用するフィルタを示す。適用するフィルタの種類の候補2は、フィルタ処理量への制約が比較的緩い(処理量が大きくても構わない)場合に適用するフィルタを示す。
 表1の(1)~(5)以外に、適用するフィルタの種類をフラグで通知してもよい。どの指標を用いてフィルタを選択するかは、あらかじめ画像符号化装置と画像復号装置との間で決定しておけばよい。あるいはシーケンスヘッダやSPS(シーケンスパラメータセット)等で、どの指標を用いるかを通知してもよい。
 また、表1の(1)~(5)を示す判定情報が、上位レイヤの符号化データに含まれていてもよい。また、表1の(3)を示す下位レイヤの解像度および画像の構造(フィールド構造/フレーム構造)や(5)を示す判定情報を、下位レイヤの符号化データを復号して得られた復号データから取得してもよい。
 (スケーラビリティの種類によって適用するフィルタを決定する場合)
 図7に空間スケーラビリティ、時間スケーラビリティ、SNRスケーラビリティ等のスケーラビリティの種類によって、図1のフィルタ処理部131で適用するフィルタを選択するフローチャートを示す。
 まず、空間スケーラビリティ判定部1313が、適用されているスケーラビリティが、空間スケーラビリティか否かを判定する(S101)。
 空間スケーラビリティの場合(S101においてYES)、フィルタ適用判定部1311は、フィルタをALFに設定し、フィルタ適用部1312が設定されたALFを適用する(S104)。
 一方、空間スケーラビリティ以外のスケーラビリティの場合(S101においてNO)、フィルタ適用判定部1311は、フィルタをSAOまたはデブロッキングフィルタに設定し、フィルタ適用部1312が設定されたSAOまたはデブロッキングフィルタを適用する。
 空間スケーラビリティの場合、上位レイヤの画像と下位レイヤの画像の解像度が異なるため、処理量は多いが、画質向上幅の高いALFが適している。それ以外のスケーラビリティの場合、上位レイヤの画像と下位レイヤの画像の解像度が同じであるため、空間スケーラビリティほど高い画質向上効果を持つフィルタを適用しなくても構わない。従って処理量が小さく、主観画質向上効果のあるSAOあるいはデブロッキングフィルタ単体での適用が適している。
 なお、アプリケーションや搭載する機器によっては、フィルタ処理量に対する制約が緩く、処理量が大きくても画質が良い方が好ましい場合もある。このような場合には、空間スケーラビリティで適用するフィルタはALF、SAO、デブロッキングフィルタを全て用いることが望ましい。ALF、SAO、デブロッキングフィルタを全て用いる場合、フィルタ適用部1312を図8に示すように構成してもよい。図8に示すように、フィルタ適用部1312では、下位レイヤからの復号画像の入力側から、デブロッキングフィルタ、SAO、およびALFの順でフィルタが設定されている。よって、フィルタ適用部1312は、図8に示すように、下位レイヤからの復号画像に対し、まずデブロッキングフィルタを適用し、その出力に対しSAOを適用し、その出力に対しALFを適用する順番で3つのフィルタを適用する。3フィルタの場合、以降の例でも図8に示す順番にフィルタを適用する。デブロッキングフィルタでブロック境界の歪を低減し、その後SAOで画素単位のオフセットを調整し、最後にALFで原画との誤差を最小にするカスケード接続の構成が、符号化効率の点で性能が良いためである。また時間スケーラビリティやSNRスケーラビリティで適用するフィルタはSAO、デブロッキングフィルタという2つのフィルタを用いることが望ましい。
 (ピクチャタイプによって適用するフィルタを決定する場合)
 図9にピクチャタイプによって図1のフィルタ処理部131で適用するフィルタを選択するフローチャートを示す。
 まず、参照画像判定部1314が、復号対象となる上位レイヤの画像のピクチャタイプを判定する(S201)。ピクチャタイプがイントラ(I)、片方向予測(P)、参照に使用する双方向予測(B)ピクチャのような、上位レイヤで符号化する後続の画像から参照されるピクチャタイプの場合(S201においてYES)、フィルタ適用判定部1311は、フィルタをALFに設定し、フィルタ適用部1312が設定されたALFを適用する(S204)。
 一方、ピクチャタイプが、参照に使用されない双方向予測(b)ピクチャの場合(S201においてNO)、フィルタは適用しない。
 後続の画像から参照される画像が、高画質であれば正確な予測ができる。そのため、処理量は多いが、画質向上幅の高いALFが適している。上位レイヤで後続の画像から参照されない画像の場合、参照される画像ほど高画質でなくてもよい。そのため処理量の点からフィルタを適用しない。
 なお、S201では、下位レイヤからの復号画像のピクチャタイプを判定してもよい。
 また、アプリケーションや搭載する機器によっては、フィルタ処理量に対する制約が緩く、処理量が大きくても画質が良い方が好ましい場合もある。このような場合には、参照される画像に適用するフィルタはALF、SAO、デブロッキングフィルタを全て用いることが望ましい。また参照されない画像にはSAOあるいはデブロッキングフィルタを適用し、現時刻の画像に対応する上位レイヤの画像がより正確に予測できるようにすることが望ましい。ここではピクチャタイプによって適用するフィルタを決定する例を説明したが、スライスタイプによって適用するフィルタを決定してもよい。
 (解像度によって適用するフィルタを決定する場合)
 図10に解像度によって図1のフィルタ処理部131で適用するフィルタを選択するフローチャートを示す。
 まず、解像度判定部1315が、復号対象となる上位レイヤの画像の解像度を判定する(S301)。HD画像のような高解像度の場合(S301においてYES)、フィルタ適用判定部1311は、フィルタをALFに設定し(S302)、フィルタ適用部1312が設定されたALFを適用する(S304)。
 一方、比較的低解像度の場合(S301においてNO)、フィルタ適用判定部1311は、フィルタを、デブロッキングフィルタ、SAO、およびALFに設定し(S303)フィルタ適用部1312が、設定されたデブロッキングフィルタ、SAO、およびALFを適用する(S304)。これは、低解像度の画像に必要な処理量は小さいので、画質向上幅を増やす目的でデブロッキングフィルタ、SAO、ALFをすべて適用することが好ましいためである。
 なお、アプリケーションや搭載する機器によっては、フィルタ処理量に対する制約が緩く、処理量が大きくても画質が良い方が好ましい場合もある。このような場合には、高解像度の画像に対してもALF、SAO、デブロッキングフィルタを全て用いることが望ましい。
 (アップサンプリングの位置によって適用するフィルタを決定する場合)
 空間スケーラビリティの場合、図11にアップサンプリングとフィルタ処理の順番によって図1のフィルタ処理部131で適用するフィルタを選択するフローチャートを示す。
 まず、フィルタ順序判定部1316が、フィルタ処理の順序を判定する(S401)。
 フィルタ処理の後でアップサンプリングする場合(S401においてYES)、フィルタ適用判定部1311は、フィルタを、デブロッキングフィルタ、SAO、ALFに設定し(S402)、フィルタ適用部1312が、設定されたデブロッキングフィルタ、SAO、ALFを適用する(S404)。
 一方、フィルタ処理の前にアップサンプリングする場合(S401においてNO)、フィルタ適用判定部1311は、フィルタをALFに設定し(S403)、フィルタ適用部1312が、設定されたALFを適用する(S404)。これは解像度によって適用するフィルタを決定する場合と同じ理由で、アップサンプリング前にフィルタを適用する場合は、フィルタ処理に必要な処理量は小さいためである。
 なお、アプリケーションや搭載する機器によっては、フィルタ処理量に対する制約が緩く、処理量が大きくても画質が良い方が好ましい場合もある。このような場合には、アップサンプリング後にフィルタを適用する場合でも、ALF、SAO、デブロッキングフィルタを全て用いることが望ましい。
 (下位レイヤのコーデックの種類によって適用するフィルタを決定する場合)
 図12に下位レイヤで使用するコーデックの種類によって図1のフィルタ処理部131で適用するフィルタを選択するフローチャートを示す。
 まず、コーデック判定部1317が、下位レイヤで使用するコーデックを判定する(S501)。
 下位レイヤで使用するコーデックがMPEG-2の場合(S501)、フィルタ適用判定部1311は、フィルタをALFに設定し(S502)、フィルタ適用部1312が、設定されたALFを適用する(S504)。
 また、下位レイヤで使用するコーデックがH.264/AVCの場合(S505においてYES)、フィルタ適用判定部1311は、フィルタをSAOに設定し(S503)、フィルタ適用部1312が、設定されたSAOを適用する(S504)。
 また、下位レイヤで使用するコーデックがHEVCの場合(S505においてNO)、フィルタは適用しない。
 MPEG-2は処理量が小さく、コーデック内部でループフィルタを持たないため、他の符号化方式と較べて低画質である。そのため、処理量は多いが、画質向上幅の高いALFを適用することで、上位レイヤから参照される画像の品質を向上させ、正確な予測ができるようにする。
 また、H.264/AVCはMPEG-2よりは複雑な処理を施しており、コーデック内部にデブロッキングフィルタをループフィルタとして持つため、MPEG-2に比べると高画質である。そのため、処理量が小さく、主観画質向上効果のあるSAOの適用が適している。
 そして、HEVCは処理が複雑で、コーデック内部にデブロッキングフィルタ、SAO、ALFをループフィルタとして持つため、他の符号化方式より高画質である。そのため、処理量の点からフィルタを適用しない。
 なお、アプリケーションや搭載する機器によっては、フィルタ処理量に対する制約が緩く、処理量が大きくても画質が良い方が好ましい場合もある。このような場合には、MPEG-2の復号画像に適用するフィルタはALF、SAO、デブロッキングフィルタを全て用いることが望ましい。またH.264/AVCの復号画像にはSAO、ALFを適用することが望ましい。
 また以上では、HEVCの復号画像に対してはフィルタを適用しない構成について説明したが、これに限られない。HEVCの復号画像に関し、空間スケーラビリティにおいて、アップサンプリング後の画像にフィルタを適用する場合は、SAOを適用することが望ましい。
 (作用・効果)
 以上に示したように、階層画像復号装置1は、階層符号化された符号化データに含まれる上位レイヤの符号化データを復号し、下位レイヤからの復号画像を参照して生成した上位レイヤの予測画像を用いて上位レイヤの復号画像を復元する。また、階層画像復号装置1は、上記上位レイヤから参照する上記下位レイヤからの復号画像に対して適用するフィルタを決定するフィルタ適用判定部1311と、参照する上記下位レイヤからの復号画像に対して、フィルタ適用判定部1311が決定したフィルタを適用するフィルタ適用部1312と、を備えている。
 よって、下位レイヤからの復号画像の画質を向上させることで、上位レイヤにおける符号化効率を向上させ、上位レイヤの復号画像の客観・主観画質を向上させることができるという効果を奏する。
〔階層画像符号化装置〕
 図13の階層画像符号化装置は本発明を適用した階層画像符号化装置2の一例である。図13に示すように階層画像符号化装置2は、下位レイヤ画像符号化装置21、上位レイヤ画像符号化装置22、フィルタ選択・処理部24、ダウンサンプリング部25、切り替え部26を備える。
 下位レイヤ画像符号化装置21は下位レイヤの原画(空間スケーラビリティの場合は原画をダウンサンプリングした画像であるが、以降では原画と呼ぶ)を所定の符号化方式により符号化する。下位レイヤ画像符号化装置21が符号化に用いる符号化方式の一例は図14を用いて説明したようなH.264/AVCである。しかしながら、これに限らず、下位レイヤ画像符号化装置21はMPEG-2や現在規格策定中のHEVCを符号化に用いても構わない。
 上位レイヤ画像符号化装置22は下位レイヤからの復号画像を参照して原画を符号化する。
 ダウンサンプリング部25は、空間スケーラビリティの場合に原画をダウンサンプリングする。
 切り替え部26は空間スケーラビリティの場合は原画をダウンサンプリングし、それ以外のスケーラビリティの場合は原画をそのまま下位レイヤ画像符号化装置21に入力する。
 フィルタ選択・処理部24は下位レイヤからの復号画像を上位レイヤの予測画像として参照するためにフィルタを適用する。
 以下、下位レイヤ画像符号化装置21、上位レイヤ画像符号化装置22、およびフィルタ選択・処理部24それぞれの構成例についてより詳しく説明する。
 (下位レイヤ画像符号化装置の構成例)
 図14を用いて下位レイヤ画像符号化装置21の構成例について説明する。図14は、下位レイヤ画像符号化装置21の構成例を示すブロック図である。
 具体的には、下位レイヤ画像符号化装置21は、減算部211、直交変換・量子化部212、可変長符号化部213、逆量子化・逆変換部214、加算部215、ループフィルタ部216、メモリ217、および動き補償部218を備える。
 減算部211は原画と予測画像の差分(予測誤差)を計算する。
 直交変換・量子化部212は予測誤差に直交変換、量子化を施す。
 可変長符号化部213は直交変換・量子化部212の出力等を可変長符号化し、下位レイヤ符号化データを出力する。
 逆量子化・逆変換部214は直交変換・量子化部212の出力である量子化変換係数に逆量子化、逆変換を施す。
 加算部215は逆量子化・逆変換部214の出力である復号された予測誤差と予測画像を加算する。
 ループフィルタ部216は加算部215の出力である復号画像にループフィルタを適用する。
 なお、符号化方式としてMPEG-2を採用する場合、ループフィルタ部216は省略される。
 また、符号化方式としてH.264/AVCを採用する場合、ループフィルタ部216はデブロッキングフィルタである。
 また、符号化方式としてHEVCを採用する場合、ループフィルタ部216にはデブロッキングフィルタ、SAO、ALFの3種類のフィルタが含まれる。
 メモリ217はループフィルタを適用した復号画像を格納する。
 動き補償部218はメモリ217に格納された画像を利用して動き補償を行い、予測画像を出力する。
 (上位レイヤ画像符号化装置の構成例)
 図15を用いて、上位レイヤ画像符号化装置22の構成例について説明する。図15は、上位レイヤ画像符号化装置22の構成例を示すブロック図である。図15に示すように上位レイヤ画像符号化装置22は、ループフィルタを適用した画像符号化装置である。
 具体的には、上位レイヤ画像符号化装置22は、減算部221、直交変換・量子化部222、可変長符号化部223、逆量子化・逆変換部224、加算部225、ループフィルタ部226、メモリ227、および動き補償部228、および切り替え部229を備える。
 減算部221~動き補償部228は図14の減算部211~動き補償部218と同じ構成要素であるので、説明を省略する。
 切り替え部229は下位レイヤからの復号画像と、動き補償部228の出力である動き補償画像とを切り替えて予測画像として出力する。
 切り替え部229は、上記切り替え処理を、処理単位毎の予測モードや、ピクチャタイプ、スライスタイプに基づいて行う。
 イントラピクチャ/イントラスライスでは、切り替え部229は、例えば原画と下位レイヤからのレイヤ間予測画像の差分、および原画と上位レイヤのイントラ予測画像(図示しない)との差分を比較し、差分値の小さい方を上位レイヤの符号化対象画像の予測画像として選択する。
 また、P(片方向予測)/B(双方向予測)ピクチャ、P(片方向予測)/B(双方向予測)スライスでは、切り替え部229は、例えば原画と下位レイヤからのレイヤ間予測画像の差分、および原画と動き補償画像との差分を比較し、差分値の小さい方を上位レイヤの符号化対象画像の予測画像として選択する。また、切り替え部229は、どちらの予測を選択したかを示すフラグを可変長符号化部223に出力する(図15では図示していない)。
 (フィルタ選択・処理部の構成例)
 フィルタ選択・処理部24の具体例を図16に示す。図16に示すように、フィルタ選択・処理部24は、フィルタ選択・判定部241、フィルタ処理部242を備える。
 フィルタ選択・判定部241は表1に従ってフィルタ部242で適用するフィルタを選択し、適用するフィルタ情報(タップ数、フィルタ係数等)、現在の処理対象画像に対してフィルタを適用するかどうかを決定する。フィルタ選択・判定部241における具体的なフィルタ情報の算出方法については後述する。
 フィルタ部242は下位レイヤからの復号画像にフィルタを適用する。また、フィルタ部242の構成として、図2の13と同じ構成要素を採用することができる。
  (フィルタ選択・判定部によるフィルタ情報の算出方法)
 フィルタ選択・判定部241での最適なフィルタ情報の算出方法についての一例を、図17のフローチャートで示す。
 図17はウィナーフィルタを用いたALFのフィルタ算出方法を説明する図である。以下で使用する符号化コストはcost=D+λ・R(ここでDは2乗誤差、Rは符号量、λはラグランジェ定数を表す)で計算する。
 S601で、フィルタ選択・判定部241が、下位レイヤからの復号画像のフィルタ画像(FilterL)と、原画(Image0)との平均2乗誤差が最小になるようにフィルタ情報(フィルタ係数、タップ数等)を設定する。
 S602で、フィルタ選択・判定部241が、処理単位毎に、下位レイヤからの復号画像のフィルタ画像(FilterL)と原画(Image0)との平均2乗誤差を計算する。
 S603で処理単位毎に下位レイヤからの復号画像(ImageL)と原画(Image0)との平均2乗誤差を計算する。
 S604で、フィルタ選択・判定部241が、フィルタを適用した場合の符号化コストcost_FilterLと、フィルタを適用しなかった場合の符号化コストcost_ImageLを算出する。
 S605で、フィルタ選択・判定部241が、cost_FilterLとcost_ImageLとを比較し、フィルタの適用で符号化コストが削減できる場合(cost_FilterL<cost_ImageL)は、フィルタの適用(オン)を決定する(S606)。
 フィルタの適用で符号化コストが削減できない場合(cost_FilterL≧cost_ImageL)、フィルタ選択・判定部241は、フィルタを適用しない(S607)。
 フィルタ選択・判定部241は、S602~S607のステップを全ての処理単位に対して実行する(S608)。
 S609でフィルタ情報と処理単位毎のフィルタのオン/オフ情報とが、エンハンスメントレイヤの符号化データとして、図15の可変長符号化部223において符号化される。
 以上はALFの例であるが、SAOにおいてもフィルタ選択・判定部241でフィルタ情報(タイプやエッジ方向を示す情報、オフセット等)と処理単位毎のフィルタのオン/オフ情報を求める。
 なおフィルタ部242は1枚の画像全体を処理した後に、上位レイヤ画像符号化装置22、あるいは上位レイヤ画像復号装置12に対して1枚分のフィルタ画像を出力し、当該1枚分のフィルタ画像を上位レイヤでの符号化・復号処理で参照することができるようにしてもよい。しかしながら、これに限られず、フィルタ部242は、任意の処理単位でフィルタを適用することができる。例えば、フィルタ部242は、上位レイヤでの符号化・復号処理単位に合わせて、スライス、マクロブロック、LCU(Large Coding Unit)等の単位でアップサンプリングおよびフィルタ処理を施すことも可能である。
 本発明では下位レイヤからの復号画像を、上位レイヤの符号化・復号処理の参照画像として用いる時に、下位レイヤからの復号画像にフィルタ処理を施し、客観・主観画質を向上させた後、上位レイヤで参照する画像の1つとして利用する。
 本発明における上位レイヤの符号化・復号処理では、下位レイヤからの復号画像、アップサンプリングをする際に必要な下位レイヤの画像の解像度、ピクチャ構造(フレームストラクチャとフィールドストラクチャ、トップフィールドファーストとボトムフィールドファースト)が必要である。しかしながらこれらのデータは下位レイヤの画像をディスプレイに表示するために出力される情報であり、これらの情報を抽出するために下位レイヤのコーデックを変更する必要はない。従って実装にあたっては、既存のコーデックのハード、ソフトをそのまま利用して下位レイヤを構築し、上位レイヤのハード、ソフトを追加すればよい。
 また本発明の上位レイヤの符号化・復号処理では上述以外の下位レイヤの情報を使用することなく処理することができる。つまり下位レイヤの符号化データに含まれる符号化情報を用いないため、下位レイヤのコーデックの種類に依存せず、上位レイヤの符号化・復号処理を進めることができる。
 〔実施の形態2〕
 本実施の形態では、上述したフィルタ部13で用いられるフィルタパラメータ(FP)の格納方法について説明する。まず、フィルタパラメータの格納方法の説明に先立ち、階層符号化について図24~35を参照して説明する。
 〔階層符号化の概要〕
 本実施の形態に係る階層動画像復号装置(画像復号装置)1’は、階層動画像符号化装置(画像符号化装置)2’によってスケーラブル映像符号化(SVC;Scalable Video Coding)された符号化データを復号する。スケーラブル映像符号化とは、動画像を低品質のものから高品質のものにかけて階層的に符号化する符号化方式のことである。スケーラブル映像符号化は、例えば、H.264/AVC Annex G SVCにおいて標準化されている。なお、ここでいう動画像の品質とは、主観的および客観的な動画像の見栄えに影響する要素のことを広く意味する。動画像の品質には、例えば、“解像度”、“フレームレート”、“画質” 、および“階調”が含まれる。よって、以下、動画像の品質が異なるといえば、例示的には、“解像度”等が異なることを指すが、これに限られない。例えば、異なる量子化ステップで量子化された動画像の場合(すなわち、異なる符号化雑音により符号化された動画像の場合)も互いに動画像の品質が異なるといえる。
 また、SVCは、階層化される情報の種類の観点から、(1)空間スケーラビリティ、(2)時間スケーラビリティ、および(3)SNR(Signal to Noise Ratio)スケーラビリティに分類されることもある。空間スケーラビリティとは、解像度や画像のサイズにおいて階層化する技術である。時間スケーラビリティとは、フレーム・レート(単位時間のフレーム数)において階層化する技術である。また、SNRスケーラビリティは、画質において階層化する技術である。
 本実施形態に係る階層動画像符号化装置2’及び階層動画像復号装置1’の詳細な説明に先立って、まず(1)階層動画像符号化装置2’によって生成され、階層動画像復号装置1’によって復号される階層符号化データのレイヤ構造について説明し、次いで(2)各レイヤで採用するデータ構造の具体例について説明を行う。
〔階層符号化データのレイヤ構造〕
 ここで、図24を用いて、階層符号化データの符号化および復号について説明すると次のとおりである。図24は、動画像を、下位階層L3、中位階層L2、および上位階層L1の3階層により階層的に符号化/復号する場合について模式的に表す図である。つまり、図24(a)および(b)に示す例では、3階層のうち、上位階層L1が最上位層となり、下位階層L3が最下位層となる。
 以下において、階層符号化データから復号され得る特定の品質に対応する復号画像は、特定の階層の復号画像(または、特定の階層に対応する復号画像)と称される(例えば、上位階層L1の復号画像POUT#A)。
 図24(a)は、入力画像PIN#A~PIN#Cをそれぞれ階層的に符号化して符号化データDATA#A~DATA#Cを生成する階層動画像符号化装置2’#A~2’#Cを示している。図24(b)は、階層的に符号化された符号化データDATA#A~DATA#Cをそれぞれ復号して復号画像POUT#A~POUT#Cを生成する階層動画像復号装置1’#A~1’#Cを示している。
 まず、図24(a)を用いて、符号化装置側について説明する。符号化装置側の入力となる入力画像PIN#A、PIN#B、およびPIN#Cは、原画は同じだが、動画像の品質(解像度、フレームレート、および画質等)が異なる。動画像の品質は、入力画像PIN#A、PIN#B、およびPIN#Cの順に低くなる。
 下位階層L3の階層画像符号化装置2’#Cは、下位階層L3の入力画像PIN#Cを符号化して下位階層L3の符号化データDATA#Cを生成するが、この中には下位階層L3の復号画像POUT#Cを復号するのに必要な基本情報が含まれる(図24において“C”にて示している)。下位階層L3は、最下層の階層であるため、下位階層L3の符号化データDATA#Cは、基本符号化データとも称される。
 また、中位階層L2の階層動画像符号化装置2’#Bは、中位階層L2の入力画像PIN#Bを、下位階層L3の符号化データDATA#Cを参照しながら符号化して中位階層L2の符号化データDATA#Bを生成する。中位階層L2の符号化データDATA#Bには、符号化データDATA#Cに含まれる基本情報“C”に加えて、中位階層の復号画像POUT#Bを復号するのに必要な付加的情報(図24において“B”にて示している)が含まれる。
 また、上位階層L1の階層動画像符号化装置2’#Aは、上位階層L1の入力画像PIN#Aを、中位階層L2の符号化データDATA#B、および下位階層L3の符号化データDATA#Cを参照しながら符号化して上位階層L1の符号化データDATA#Aを生成する。上位階層L1の符号化データDATA#Aには、下位階層L3の復号画像POUT#Cを復号するのに必要な基本情報“C”および中位階層L2の復号画像POUT#Bを復号するのに必要な付加的情報“B”に加えて、上位階層の復号画像POUT#Aを復号するのに必要な付加的情報(図24において“A”にて示している)が含まれる。
 このように上位階層L1の符号化データDATA#Aは、異なる複数の品質の復号画像に関する情報を含む。
 次に、図24(b)を参照しながら復号装置側について説明する。復号装置側では、上位階層L1、中位階層L2、および下位階層L3それぞれの階層に応じた復号装置1’#A、1’B、および1’#Cが、符号化データDATA#A、DATA#B、およびDATA#Cを復号して復号画像POUT#A、POUT#B、およびPOUT#Cを出力する。
 なお、上位の階層符号化データの一部の情報を抽出して、より下位の特定の復号装置において、当該抽出した情報を復号することで特定の品質の動画像を再生することもできる。
 例えば、中位階層L2の階層動画像復号装置1’#Bは、上位階層L1の階層符号化データDATA#Aから、復号画像POUT#Bを復号するのに必要な情報(すなわち、階層符号化データDATA#Aに含まれる“B”および“C”)を抽出して、復号画像POUT#Bを復号してもよい。言い換えれば、復号装置側では、上位階層L1の階層符号化データDATA#Aに含まれる情報に基づいて、復号画像POUT#A、POUT#B、およびPOUT#Cを復号することができる。
 なお、以上の3階層の階層符号化データに限られず、階層符号化データは、2階層で階層符号化されていてもよいし、3階層よりも多い階層数にて階層符号化されていてもよい。
 また、特定の階層の復号画像に関する符号化データの一部または全部を他の階層とは独立して符号化し、特定の階層の復号の際に、他の階層の情報を参照しなくても済むように階層符号化データを構成してもよい。例えば、図24(a)および(b)を用いて上述した例では、復号画像POUT#Bの復号に“C”および“B”を参照すると説明したが、これに限られない。復号画像POUT#Bが“B”だけを用いて復号できるように階層符号化データを構成することも可能である。
 なお、SNRスケーラビリティを実現する場合、入力画像PIN#A、PIN#B、およびPIN#Cとして同一の原画を用いた上で、復号画像POUT#A、POUT#B、およびPOUT#Cが異なる画質となるよう階層符号化データを生成することもできる。その場合、下位階層の階層動画像符号化装置が、上位階層の階層動画像符号化装置に較べて、より大きい量子化幅を用いて予測残差を量子化することで階層符号化データを生成する。
 本書では、説明の便宜上、次のとおり用語を定義する。以下の用語は、特に断りがなければ、下記の技術的事項のことを表わすのに用いる。
 上位レイヤ : ある階層よりも上位に位置する階層のことを、上位レイヤと称する。例えば、図24において、下位階層L3の上位レイヤは、中位階層L2および上位階層L1である。また、上位レイヤの復号画像とは、より品質の高い(例えば、解像度が高い、フレームレートが高い、画質が高い等)復号画像のことをいう。
 下位レイヤ : ある階層よりも下位に位置する階層のことを、下位レイヤと称する。例えば、図24において、上位階層L1の下位レイヤは、中位階層L2および下位階層L3である。また、下位レイヤの復号画像とは、より品質の低い復号画像のことをいう。
 対象レイヤ : 復号または符号化の対象となっている階層のことをいう。
 参照レイヤ(reference layer) : 対象レイヤに対応する復号画像を復号するのに参照される特定の下位レイヤのことを参照レイヤと称する。
 図24(a)および(b)に示した例では、上位階層L1の参照レイヤは、中位階層L2および下位階層L3である。しかしながら、これに限られず、特定の上記レイヤの復号において、下位レイヤのすべてを参照しなくてもよいように階層符号化データを構成することもできる。例えば、上位階層L1の参照レイヤが、中位階層L2および下位階層L3のいずれか一方となるように階層符号化データを構成することも可能である。
 基本レイヤ(base layer) : 最下層に位置する階層のことを基本レイヤと称する。基本レイヤの復号画像は、符号化データから復号され得るもっとも低い品質の復号画像であり、基本(base)復号画像と呼称される。別の言い方をすれば、基本復号画像は、最下層の階層に対応する復号画像のことである。基本復号画像の復号に必要な階層符号化データの部分符号化データは基本符号化データと呼称される。例えば、上位階層L1の階層符号化データDATA#Aに含まれる基本情報“C”が基本符号化データである。
 拡張レイヤ : 基本レイヤの上位レイヤは、拡張レイヤと称される。
 レイヤ識別子 : レイヤ識別子は、階層を識別するためのものであり、階層と1対1に対応する。階層符号化データには特定の階層の復号画像の復号に必要な部分符号化データを選択するために用いられる階層識別子が含まれる。特定のレイヤに対応するレイヤ識別子に関連付けられた階層符号化データの部分集合は、レイヤ表現とも呼称される。
 一般に、特定の階層の復号画像の復号には、当該階層のレイヤ表現、および/または、当該階層の下位レイヤに対応するレイヤ表現が用いられる。すなわち、対象レイヤの復号画像の復号においては、対象レイヤのレイヤ表現、および/または、対象レイヤの下位レイヤに含まれる1つ以上階層のレイヤ表現が用いられる。
 レイヤ間予測 : レイヤ間予測とは、参照レイヤのレイヤ表現に含まれるシンタックス要素値、シンタックス要素値より導出される値、および復号画像に基づいて、対象レイヤのシンタックス要素値や対象レイヤの復号に用いられる符号化パラメータ等を予測することである。動き予測に関する情報を(同時刻の)参照レイヤの情報から予測するレイヤ間予測のことを動き情報予測と称することもある。また、(同時刻の)下位レイヤの復号画像をアップサンプリングした画像から予測するレイヤ間予測のことをテクスチャ予測(あるいはレイヤ間イントラ予測)と称することもある。なお、レイヤ間予測に用いられる階層は、例示的には、対象レイヤの下位レイヤである。また、参照レイヤを用いず対象レイヤ内で予測を行うことをレイヤ内予測と称することもある。
 なお、以上の用語は、あくまで説明の便宜上のものであり、上記の技術的事項を別の用語にて表現してもかまわない。
〔階層符号化データのデータ構造について〕
 以下、各階層の符号化データを生成する符号化方式として、HEVCおよびその拡張方式を用いる場合について例示する。しかしながら、これに限られず、各階層の符号化データを、MPEG-2や、H.264/AVCなどの符号化方式により生成してもよい。
 また、下位レイヤと上位レイヤとが異なる符号化方式によって符号化されていてもよい。また、階層の符号化データは、上記のように互いに異なる伝送路を介して階層動画像復号装置1’に供給されるものであってもよいし、同一の伝送路を介して階層動画像復号装置1’に供給されるものであってもよい。
 例えば、超高精細映像(4K映像データ)を基本レイヤおよび1つの拡張レイヤによりスケーラブル符号化して伝送する場合、基本レイヤは、4K映像データをダウンスケーリングし、インタレース化した映像データをMPEG-2またはH.264/AVCにより符号化してテレビ放送網で伝送し、拡張レイヤは、4K映像(プログレッシブ)をHEVCにより符号化して、インターネットで伝送してもよい。
 (基本レイヤ)
 図25は、基本レイヤの符号化データ(図24の例でいえば、階層符号化データDATA#C)のデータ構造について例示する図である。階層符号化データDATA#Cは、例示的に、シーケンス、およびシーケンスを構成する複数のピクチャを含む。
 階層符号化データDATA#Cにおけるデータの階層構造を図25に示す。図25の(a)~(e)は、それぞれ、シーケンスSEQを規定するシーケンスレイヤ、ピクチャPICTを規定するピクチャレイヤ、スライスSを規定するスライスレイヤ、ツリーブロック(Tree block)TBLKを規定するツリーブロックレイヤ、ツリーブロックTBLKに含まれる符号化単位(Coding Unit;CU)を規定するCUレイヤを示す図である。
  (シーケンスレイヤ)
 シーケンスレイヤでは、処理対象のシーケンスSEQ(以下、対象シーケンスとも称する)を復号するために階層動画像復号装置1’が参照するデータの集合が規定されている。シーケンスSEQは、図25の(a)に示すように、シーケンスパラメータセットSPS(Sequence Parameter Set)、ピクチャパラメータセットPPS(Picture Parameter Set)、適応パラメータセットAPS(Adaptation Parameter Set)、ピクチャPICT~PICTNP(NPはシーケンスSEQに含まれるピクチャの総数)、及び、付加拡張情報SEI(Supplemental Enhancement Information)を含んでいる。
 シーケンスパラメータセットSPSでは、対象シーケンスを復号するために階層動画像復号装置1’が参照する符号化パラメータの集合が規定されている。
 ピクチャパラメータセットPPSでは、対象シーケンス内の各ピクチャを復号するために階層動画像復号装置1’が参照する符号化パラメータの集合が規定されている。なお、PPSは複数存在してもよい。その場合、対象シーケンス内の各ピクチャは複数のPPSの何れかを選択する。
 適応パラメータセットAPSは、対象シーケンス内の各スライスを復号するために階層動画像復号装置1’が参照する符号化パラメータの集合が規定されている。APSは複数存在してもよい。その場合、対象シーケンス内の各スライスは複数のAPSの何れかを選択する。
  (ピクチャレイヤ)
 ピクチャレイヤでは、処理対象のピクチャPICT(以下、対象ピクチャとも称する)を復号するために階層動画像復号装置1’が参照するデータの集合が規定されている。ピクチャPICTは、図25の(b)に示すように、ピクチャヘッダPH、及び、スライスS1~SNSを含んでいる(NSはピクチャPICTに含まれるスライスの総数)。
 なお、以下、スライスS1~SNSのそれぞれを区別する必要が無い場合、符号の添え字を省略して記述することがある。また、以下に説明する階層符号化データDATA#Cに含まれるデータであって、添え字を付している他のデータについても同様である。
 ピクチャヘッダPHには、対象ピクチャの復号方法を決定するために階層動画像復号装置1’が参照する符号化パラメータ群が含まれている。なお、符号化パラメータ群は、必ずしもピクチャヘッダPH内に直接含まれる必要はなく、例えばピクチャパラメータセットPPSへの参照を含むことで、間接的に含めても良い。
  (スライスレイヤ)
 スライスレイヤでは、処理対象のスライスS(対象スライスとも称する)を復号するために階層動画像復号装置1’が参照するデータの集合が規定されている。スライスSは、図25の(c)に示すように、スライスヘッダSH、及び、ツリーブロックTBLK1~TBLKNC(NCはスライスSに含まれるツリーブロックの総数)のシーケンスを含んでいる。
 スライスヘッダSHには、対象スライスの復号方法を決定するために階層動画像復号装置1’が参照する符号化パラメータ群が含まれる。スライスタイプを指定するスライスタイプ指定情報(slice_type)は、スライスヘッダSHに含まれる符号化パラメータの一例である。
 スライスタイプ指定情報により指定可能なスライスタイプとしては、(1)符号化の際にイントラ予測のみを用いるIスライス、(2)符号化の際に単方向予測、又は、イントラ予測を用いるPスライス、(3)符号化の際に単方向予測、双方向予測、又は、イントラ予測を用いるBスライスなどが挙げられる。
 なお、スライスヘッダSHには、上記シーケンスレイヤに含まれる、ピクチャパラメータセットPPSへの参照(pic_parameter_set_id)、適応パラメータセットAPSへの参照(aps_id)を含んでいても良い。
 また、スライスヘッダSHには、階層動画像復号装置1’の備える適応フィルタによって参照されるフィルタパラメータFPが含まれている。フィルタパラメータFPは、フィルタ係数群を含んでいる。フィルタ係数群には、(1)フィルタのタップ数を指定するタップ数指定情報、(2)フィルタ係数a0~aNT-1(NTは、フィルタ係数群に含まれるフィルタ係数の総数)、および、(3)オフセットが含まれる。
  (ツリーブロックレイヤ)
 ツリーブロックレイヤでは、処理対象のツリーブロックTBLK(以下、対象ツリーブロックとも称する)を復号するために階層動画像復号装置1’が参照するデータの集合が規定されている。なお、ツリーブロックのことを符号化ツリーブロック(CTB:Coding Tree block)、または、最大符号化単位(LCU:Largest Cording Unit)と呼ぶこともある。
 ツリーブロックTBLKは、ツリーブロックヘッダTBLKHと、符号化単位情報CU~CUNL(NLはツリーブロックTBLKに含まれる符号化単位情報の総数)とを含む。ここで、まず、ツリーブロックTBLKと、符号化単位情報CUとの関係について説明すると次のとおりである。
 ツリーブロックTBLKは、イントラ予測またはインター予測、および、変換の各処理ためのブロックサイズを特定するためのパーティションに分割される。
 ツリーブロックTBLKの上記パーティションは、再帰的な4分木分割により分割されている。この再帰的な4分木分割により得られる木構造のことを以下、符号化ツリー(coding tree)と称する。
 以下、符号化ツリーの末端のノードであるリーフ(leaf)に対応するパーティションを、符号化ノード(coding node)として参照する。また、符号化ノードは、符号化処理の基本的な単位となるため、以下、符号化ノードのことを、符号化単位(CU)とも称する。なお、符号化ノードは、符号化ブロック(CB: Coding Block)と呼ぶこともある。
 つまり、符号化単位情報(以下、CU情報と称する)CU~CUNLは、ツリーブロックTBLKを再帰的に4分木分割して得られる各符号化ノード(符号化単位)に対応する情報である。
 また、符号化ツリーのルート(root)は、ツリーブロックTBLKに対応付けられる。換言すれば、ツリーブロックTBLKは、複数の符号化ノードを再帰的に含む4分木分割の木構造の最上位ノードに対応付けられる。
 なお、各符号化ノードのサイズは、当該符号化ノードが直接に属する符号化ノード(すなわち、当該符号化ノードの1階層上位のノードのパーティション)のサイズの縦横とも半分である。
 また、ツリーブロックTBLKのサイズ、および、各符号化ノードのとり得るサイズは、階層符号化データDATA#CのシーケンスパラメータセットSPSに含まれる、最小符号化ノードのサイズ指定情報、および最大符号化ノードと最小符号化ノードの階層深度の差分に依存する。例えば、最小符号化ノードのサイズが8×8画素であって、最大符号化ノードと最小符号化ノードの階層深度の差分が3である場合、ツリーブロックTBLKのサイズが64×64画素ならば、符号化ノードのサイズは、4種類のサイズ、すなわち、64×64画素、32×32画素、16×16画素、および、8×8画素の何れかをとり得る。
  (ツリーブロックヘッダ)
 ツリーブロックヘッダTBLKHには、対象ツリーブロックの復号方法を決定するために階層動画像復号装置1’が参照する符号化パラメータが含まれる。具体的には、図25の(d)に示すように、対象ツリーブロックの各CUへの分割パターンを指定するツリーブロック分割情報SP_TBLK、および、量子化ステップの大きさを指定する量子化パラメータ差分Δqp(qp_delta)が含まれる。
 ツリーブロック分割情報SP_TBLKは、ツリーブロックを分割するための符号化ツリーを表す情報であり、具体的には、対象ツリーブロックに含まれる各CUの形状、サイズ、および、対象ツリーブロック内での位置を指定する情報である。
 なお、ツリーブロック分割情報SP_TBLKは、CUの形状やサイズを明示的に含んでいなくてもよい。例えばツリーブロック分割情報SP_TBLKは、対象ツリーブロック全体またはツリーブロックの部分領域を四分割するか否かを示すフラグの集合であってもよい。その場合、ツリーブロックの形状やサイズを併用することで各CUの形状やサイズを特定できる。
 また、量子化パラメータ差分Δqpは、対象ツリーブロックにおける量子化パラメータqpと、当該対象ツリーブロックの直前に符号化されたツリーブロックにおける量子化パラメータqp’との差分qp-qp’である。
  (CUレイヤ)
 CUレイヤでは、処理対象のCU(以下、対象CUとも称する)を復号するために階層動画像復号装置1’が参照するデータの集合が規定されている。
 ここで、CU情報CUに含まれるデータの具体的な内容の説明をする前に、CUに含まれるデータの木構造について説明する。符号化ノードは、予測ツリー(prediction tree;PT)および変換ツリー(transform tree;TT)のルートのノードとなる。予測ツリーおよび変換ツリーについて説明すると次のとおりである。
 予測ツリーにおいては、符号化ノードが1または複数の予測ブロックに分割され、各予測ブロックの位置とサイズとが規定される。別の表現でいえば、予測ブロックは、符号化ノードを構成する1または複数の重複しない領域である。また、予測ツリーは、上述の分割により得られた1または複数の予測ブロックを含む。
 予測処理は、この予測ブロックごとに行われる。以下、予測の単位である予測ブロックのことを、予測単位(prediction unit;PU)とも称する。
 予測ツリーにおける分割(以下、PU分割と略称する)の種類は、大まかにいえば、イントラ予測の場合と、インター予測の場合との2つがある。
 イントラ予測の場合、分割方法は、2N×2N(符号化ノードと同一サイズ)と、N×Nとがある。
 また、インター予測の場合、分割方法は、2N×2N(符号化ノードと同一サイズ)、2N×N、2N×nU、2N×nD、N×2N、nL×2N、nR×2N、および、N×Nなどがある。PU分割の種類については、後に図面を用いて説明する。
 また、変換ツリーにおいては、符号化ノードが1または複数の変換ブロックに分割され、各変換ブロックの位置とサイズとが規定される。別の表現でいえば、変換ブロックは、符号化ノードを構成する1または複数の重複しない領域のことである。また、変換ツリーは、上述の分割より得られた1または複数の変換ブロックを含む。
 変換ツリーにおける分割には、符号化ノードと同一のサイズの領域を変換ブロックとして割り付けるものと、上述したツリーブロックの分割と同様、再帰的な4分木分割によるものがある。
 変換処理は、この変換ブロックごとに行われる。以下、変換の単位である変換ブロックのことを、変換単位(transform unit;TU)とも称する。
  (CU情報のデータ構造)
 続いて、図25(e)を参照しながらCU情報CUに含まれるデータの具体的な内容について説明する。図25(e)に示すように、CU情報CUは、具体的には、スキップフラグSKIP、予測ツリー情報(以下、PT情報と略称する)PTI、および、変換ツリー情報(以下、TT情報と略称する)TTIを含む。
 スキップフラグSKIPは、対象のPUについて、スキップモードが適用されているか否かを示すフラグであり、スキップフラグSKIPの値が1の場合、すなわち、対象CUにスキップモードが適用されている場合、そのCU情報CUにおけるPT情報PTIの一部、および、TT情報TTIは省略される。なお、スキップフラグSKIPは、Iスライスでは省略される。
  [PT情報]
 PT情報PTIは、CUに含まれる予測ツリー(以下、PTと略称する)に関する情報である。言い換えれば、PT情報PTIは、PTに含まれる1または複数のPUそれぞれに関する情報の集合であり、階層動画像復号装置1’により予測画像を生成する際に参照される。PT情報PTIは、図25(e)に示すように、予測タイプ情報PType、および、予測情報PInfoを含んでいる。
 予測タイプ情報PTypeは、対象PUについての予測画像生成方法として、イントラ予測を用いるのか、または、インター予測を用いるのかを指定する情報である。
 予測情報PInfoは、予測タイプ情報PTypeが何れの予測方法を指定するのかに応じて、イントラ予測情報PP_Intra、または、インター予測情報PP_Interを含む。以下では、イントラ予測が適用されるPUをイントラPUとも呼称し、インター予測が適用されるPUをインターPUとも呼称する。
 インター予測情報PP_Interは、階層動画像復号装置1’が、インター予測によってインター予測画像を生成する際に参照される符号化パラメータを含む。より具体的には、インター予測情報PP_Interは、対象CUの各インターPUへの分割パターンを指定するインターPU分割情報、および、各インターPUについてのインター予測パラメータを含む。
 イントラ予測情報PP_Intraは、階層動画像復号装置1’が、イントラ予測によってイントラ予測画像を生成する際に参照される符号化パラメータを含む。より具体的には、イントラ予測情報PP_Intraには、対象CUの各イントラPUへの分割パターンを指定するイントラPU分割情報、および、各イントラPUについてのイントラ予測パラメータが含まれる。イントラ予測パラメータは、各イントラPUについてのイントラ予測方法(予測モード)を指定するためのパラメータである。
 また、PU分割情報には、対象PUの形状、サイズ、および、位置を指定する情報が含まれていてもよい。PU分割情報の詳細については後述する。
  [TT情報]
 TT情報TTIは、CUに含まれる変換ツリー(以下、TTと略称する)に関する情報である。言い換えれば、TT情報TTIは、TTに含まれる1または複数のTUそれぞれに関する情報の集合であり、階層動画像復号装置1’により残差データを復号する際に参照される。なお、以下、TUのことをブロックと称することもある。
 TT情報TTIは、図25(e)に示すように、対象CUの各変換ブロックへの分割パターンを指定するTT分割情報SP_TT、および、量子化予測残差QD1~QDNT(NTは、対象CUに含まれるブロックの総数)を含んでいる。
 TT分割情報SP_TTは、具体的には、対象CUに含まれる各TUの形状、サイズ、および、対象CU内での位置を決定するための情報である。例えば、TT分割情報SP_TTは、対象となるノードの分割を行うのか否かを示す情報(split_transform_unit_flag)と、その分割の深度を示す情報(trafoDepth)とから実現することができる。
 また、例えば、CUのサイズが、64×64の場合、分割により得られる各TUは、32×32画素から4×4画素までのサイズをとり得る。
 各量子化予測残差QDは、階層動画像符号化装置2’が以下の処理1~3を、処理対象のブロックである対象ブロックに施すことによって生成した符号化データである。
 処理1:符号化対象画像から予測画像を減算した予測残差を周波数変換(例えば、DCT変換(Discrete Cosine Transform)およびDST変換(Discrete Sine Transform)等)する;
 処理2:処理1にて得られた変換係数を量子化する;
 処理3:処理2にて量子化された変換係数を可変長符号化する;
 なお、上述した量子化パラメータqpは、階層動画像符号化装置2’が変換係数を量子化する際に用いた量子化ステップQPの大きさを表す(QP=2qp/6)。
  (予測パラメータ)
 インター予測およびイントラ予測における予測パラメータの詳細について説明する。上述のとおり、予測情報PInfoには、インター予測パラメータまたはイントラ予測パラメータが含まれる。
 インター予測パラメータとしては、例えば、マージフラグ(merge_flag)、マージインデックス(merge_idx)、推定動きベクトルインデックス(mvp_idx)、参照画像インデックス(ref_idx)、インター予測フラグ(inter_pred_flag)、および動きベクトル残差(mvd)が挙げられる。
 一方、イントラ予測パラメータとしては、例えば、推定予測モードフラグ、推定予測モードインデックス、および、残余予測モードインデックスが挙げられる。
  (PU分割情報)
 PU分割情報によって指定されるPU分割タイプには、対象CUのサイズを2N×2N画素とすると、次の合計8種類のパターンがある。すなわち、2N×2N画素、2N×N画素、N×2N画素、およびN×N画素の4つの対称的分割(symmetric splittings)、並びに、2N×nU画素、2N×nD画素、nL×2N画素、およびnR×2N画素の4つの非対称的分割(asymmetric splittings)である。なお、N=2(mは1以上の任意の整数)を意味している。以下、対象CUを分割して得られる領域のことをパーティションとも称する。
 図26(a)~(h)に、それぞれの分割タイプについて、CUにおけるPU分割の境界の位置を具体的に図示している。
 図26(a)は、CUの分割を行わない2N×2NのPU分割タイプを示している。また、図26(b)、(c)、および(d)は、それぞれ、PU分割タイプが、2N×N、2N×nU、および、2N×nDである場合のパーティションの形状について示している。また、図26(e)、(f)、および(g)は、それぞれ、PU分割タイプが、N×2N、nL×2N、および、nR×2Nである場合のパーティションの形状について示している。また、図26(h)は、PU分割タイプが、N×Nである場合のパーティションの形状を示している。
 図26(a)および(h)のPU分割タイプのことを、そのパーティションの形状に基づいて、正方形分割とも称する。また、図26(b)~(g)のPU分割タイプのことは、非正方形分割とも称する。
 また、図26(a)~(h)において、各領域に付した番号は、領域の識別番号を示しており、この識別番号順に、領域に対して処理が行われる。すなわち、当該識別番号は、領域の処理順を表している。
  [インター予測の場合の分割タイプ]
 インターPUでは、上記8種類の分割タイプのうち、N×N(図26(h))以外の7種類が定義されている。なお、上記6つの非対称的分割は、AMP(Asymmetric Motion Partition)と呼ばれることもある。
 また、Nの具体的な値は、当該PUが属するCUのサイズによって規定され、nU、nD、nL、および、nRの具体的な値は、Nの値に応じて定められる。例えば、128×128画素のインターCUは、128×128画素、128×64画素、64×128画素、64×64画素、128×32画素、128×96画素、32×128画素、および、96×128画素のインターPUへ分割することが可能である。
  [イントラ予測の場合の分割タイプ]
 イントラPUでは、次の2種類の分割パターンが定義されている。対象CUを分割しない、すなわち対象CU自身が1つのPUとして取り扱われる分割パターン2N×2Nと、対象CUを、4つのPUへと対称的に分割するパターンN×Nと、である。
 したがって、イントラPUでは、図26に示した例でいえば、(a)および(h)の分割パターンを取ることができる。
 例えば、128×128画素のイントラCUは、128×128画素、および、64×64画素のイントラPUへ分割することが可能である。
 (拡張レイヤ)
 拡張レイヤの符号化データについても、例えば、図25に示すデータ構造とほぼ同様のデータ構造を採用することができる。ただし、拡張レイヤの符号化データでは、以下のとおり、付加的な情報を追加したり、パラメータを省略したりすることができる。
 SPSには階層符号化を示す情報が符号化されていてもよい。
 また、スライスレイヤでは、空間スケーラビリティ、時間スケーラビリティ、および、SNRスケーラビリティの階層の識別情報(それぞれ、dependency_id、temporal_id、および、quality_id)が符号化されていてもよい。フィルタ情報やフィルタのオン/オフ情報(後述)はPPS、スライスヘッダ、マクロブロックヘッダ等で符号化することが可能である。
 また、CU情報CUでは、スキップフラグ(skip_flag)、ベースモードフラグ(base_mode_flag)および予測モードフラグ(pred_mode_flag)が符号化されていてもよい。
 また、これらのフラグにより対象CUのCUタイプが、イントラCU、インターCU、スキップCUおよびベーススキップCUのいずれであるかが指定されていてもよい。
 イントラCUおよびスキップCUは、上述のHEVC方式の場合と同様に定義できる。例えば、スキップCUでは、スキップフラグに“1”が設定される。スキップCUでない場合、スキップフラグに“0”が設定される。また、イントラCUでは、予測モードフラグに“0”が設定される。
 また、インターCUは、非スキップかつ動き補償(MC;Motion Compensation)を適用するCUと定義されていてもよい。インターCUでは、例えば、スキップフラグに“0”が設定され、予測モードフラグに“1”が設定される。
 ベーススキップCUは、CUまたはPUの情報を参照レイヤから推定するCUタイプである。また、ベーススキップCUでは、例えば、スキップフラグに“1”が設定され、ベースモードフラグに“1”が設定される。
 ベースマージPUは、PUの情報を参照レイヤから推定するPUタイプである。また、例えば、PT情報PTIにおいて、マージフラグおよびベースモードフラグを符号化しておき、これらのフラグを用いて、対象PUがベースマージを行うPUであるか否かを判定してもよい。すなわち、ベースマージPUでは、マージフラグに“1”が設定され、ベースモードフラグに“1”が設定される。
 また、PT情報PTIでは、対象PUのPUタイプが、イントラPU、インターPU、マージPU、およびベースマージPUのいずれであるかが指定されていてもよい。
 イントラPU、インターPU、マージPUは、上述のHEVC方式の場合と同様に定義できる。
 なお、拡張レイヤに含まれる動きベクトル情報のうち、下位レイヤに含まれる動きベクトル情報から導出可能な動きベクトル情報については、拡張レイヤから省略する構成とすることができる。このような構成とすることによって、拡張レイヤの符号量を削減することができるので、符号化効率が向上する。
 また、上述のとおり拡張レイヤの符号化データを、下位レイヤの符号化方式と異なる符号化方式により生成しても構わない。すなわち、拡張レイヤの符号化・復号処理は、下位レイヤのコーデックの種類に依存しない。
 下位レイヤが、例えば、MPEG-2や、H.264/AVC方式によって符号化されていてもよい。
 対象レイヤと参照レイヤとが異なる符号化方式によって符号化されている場合、参照レイヤのパラメータを、対象レイヤの対応するパラメータ、または、類似のパラメータに変換することでレイヤ間における相応の互換性を保つことができる。例えば、MPEG-2や、H.264/AVC方式におけるマクロブロックは、HEVCにおけるCTBに読み替えて解釈することが可能である。
 なお、以上に説明したパラメータは、単独で符号化されていてもよいし、複数のパラメータが複合的に符号化されていてもよい。複数のパラメータが複合的に符号化される場合は、そのパラメータの値の組み合わせに対してインデックスが割り当てられ、割り当てられた当該インデックスが符号化される。また、パラメータが、別のパラメータや、復号済みの情報から導出可能であれば、当該パラメータの符号化を省略することができる。
 〔階層動画像復号装置〕
 以下では、本実施形態に係る階層動画像復号装置1’の構成について、図27~32を参照して説明する。
 (階層動画像復号装置の構成)
 図27を用いて、階層動画像復号装置1’の概略的構成について説明すると次のとおりである。図27は、階層動画像復号装置1’の概略的構成について示した機能ブロック図である。階層動画像復号装置1’は、階層動画像符号化装置2’から供給される階層符号化データDATAを、HEVC方式により復号して、対象レイヤの復号画像POUT#Tを生成する。
 図27に示すように階層動画像復号装置1’は、NAL逆多重化部51、可変長復号部52、予測パラメータ復元部54、テクスチャ復元部55、ベース復号部53、およびフィルタパラメータ復元部56を備える。
 NAL逆多重化部51は、NAL(Network Abstraction Layer)におけるNALユニット単位で伝送される階層符号化データDATAを逆多重化する。
 NALは、VCL(Video Coding Layer)と、符号化データを伝送・蓄積する下位システムとの間における通信を抽象化するために設けられる層である。
 VCLは、動画像符号化処理を行う層のことであり、VCLにおいて符号化が行われる。一方、ここでいう、下位システムは、H.264/AVCおよびHEVCのファイルフォーマットや、MPEG-2システムに対応する。
 なお、NALでは、VCLで生成されたビットストリームが、NALユニットという単位で区切られて、宛先となる下位システムへ伝送される。NALユニットには、VCLで符号化された符号化データ、および、当該符号化データが宛先の下位システムに適切に届けられるためのヘッダが含まれる。また、各階層における符号化データは、NALユニットに格納されることでNAL多重化されて階層動画像復号装置1’に伝送される。
 NAL逆多重化部51は、階層符号化データDATAを逆多重化して、対象レイヤ符号化データDATA#Tおよび参照レイヤ符号化データDATA#Rを取り出す。また、NAL逆多重化部51は、対象レイヤ符号化データDATA#Tを可変長復号部52に供給するとともに、参照レイヤ符号化データDATA#Rをベース復号部16に供給する。
 可変長復号部52は、対象レイヤ符号化データDATA#Tに含まれるバイナリから各種のシンタックス値を復号するための情報の復号処理を行う。
 具体的には、可変長復号部52は、以下のように、予測情報、符号化情報、変換係数情報、およびフィルタパラメータ情報を符号化データDATA#Tから復号する。
 すなわち、可変長復号部52は、各CUまたはPUに関する予測情報を、符号化データDATA#Tから復号する。予測情報には、例えば、CUタイプまたはPUタイプの指定が含まれる。
 CUがインターCUである場合、可変長復号部12はPU分割情報を符号化DATA#Tから復号する。加えて、各PUにおいて、可変長復号部52は、さらに、予測情報として、参照画像インデックスRI、推定動きベクトルインデックスPMVI、及び、動きベクトル残差MVD等の動き情報、モード情報を符号化データDATA#Tから復号する。
 一方、CUがイントラCUである場合、可変長復号部52は、さらに、予測情報として、(1)予測単位のサイズを指定するサイズ指定情報、および、(2)予測インデックスを指定する予測インデックス指定情報を含むイントラ予測情報を符号化データDATA#Tから復号する。
 また、可変長復号部12は、符号化情報を符号化データDATA#Tから復号する。符号化情報には、CUの形状、サイズ、位置を特定するための情報が含まれる。より具体的には、符号化情報には、対象ツリーブロックの各CUへの分割パターンを指定するツリーブロック分割情報、すなわち、対象ツリーブロックに含まれる各CUの形状、サイズ、および、対象ツリーブロック内での位置を指定する情報が含まれる。
 可変長復号部52は、復号した予測情報および符号化情報を予測パラメータ復元部54に供給する。
 また、可変長復号部52は、各ブロックに関する量子化予測残差QD、及び、そのブロックを含むツリーブロックに関する量子化パラメータ差分Δqpを符号化データDATA#Tから復号する。可変長復号部52は、復号した量子化予測残差QDおよび量子化パラメータ差分Δqpを変換係数情報としてテクスチャ復元部55に供給する。
 また、可変長復号部52は、フィルタパラメータを導出するためのフィルタパラメータ情報を符号化データ#Tから復号してフィルタパラメータ復元部56に供給する。
 ベース復号部53は、参照レイヤ符号化データDATA#Rから、対象レイヤに対応する復号画像を復号する際に参照される参照レイヤに関する情報であるベース復号情報を復号する。ベース復号情報には、ベース予測パラメータ、ベース変換係数、およびベース復号画像が含まれる。ベース復号部53は、復号したベース復号情報を予測パラメータ復元部54およびテクスチャ復元部55に供給する。
 予測パラメータ復元部54は、予測情報およびベース復号情報を用いて、予測パラメータを復元する。予測パラメータ復元部54は、復元した予測パラメータを、テクスチャ復元部55に供給する。なお、予測パラメータ復元部54は、予測パラメータを復元する際に、テクスチャ復元部15が備えるフレームメモリ155(後述)に格納された動き情報を参照することができる。
 フィルタパラメータ復元部56は、フィルタパラメータ情報を用いて、フィルタパラメータを導出し、テクスチャ復元部55に供給する。
 テクスチャ復元部55は、変換係数情報、ベース復号情報、予測パラメータ、およびフィルタパラメータを用いて、復号画像POUT#Tを生成し、外部に出力する。なお、テクスチャ復元部55では、復元された復号画像に関する情報が、内部に備えるフレームメモリ155(後述)に格納される。
 以下において、ベース復号部53、予測パラメータ復元部54、およびテクスチャ復元部55それぞれの詳細について説明する。
 (予測パラメータ復元部)
 図28を用いて、予測パラメータ復元部54の詳細構成について説明する。図28は、予測パラメータ復元部54の構成について例示した機能ブロック図である。
 図28に示すように、予測パラメータ復元部54は、予測タイプ選択部141、スイッチ142、イントラ予測モード復元部143、動きベクトル候補導出部144、動き情報復元部145、マージ候補導出部146、およびマージ情報復元部147を備える。
 予測タイプ選択部141は、CUタイプまたはPUタイプに応じてスイッチ142に切り替え指示を送り予測パラメータの導出処理を制御する。具体的には以下のとおりである。
 イントラCUまたはイントラPUが指定されている場合、予測タイプ選択部141はイントラ予測モード復元部143を用いて予測パラメータを導出できるようスイッチ142を制御する。
 インターCU(マージなし)およびインターPU(マージなし)のいずれかが指定されている場合、予測タイプ選択部141は動き情報復元部145を用いて予測パラメータを導出できるようスイッチ142を制御する。
 ベーススキップCU、ベースマージCU、スキップCU、およびマージPUのいずれかが指定されている場合、予測タイプ選択部141はマージ情報復元部147を用いて予測パラメータを導出できるようスイッチ142を制御する。
 スイッチ142は、予測タイプ選択部141の指示に応じて、予測情報を、イントラ予測モード復元部143、動き情報復元部145、およびマージ情報復元部147のいずれかに供給する。予測情報の供給先において予測パラメータが導出される。
 イントラ予測モード復元部143は、予測情報から予測モードを導出する。すなわち、イントラ予測モード復元部143が予測パラメータとして復元するのは予測モードである。
 ここで、図29を用いて、予測モードの定義について説明する。図29は、予測モードの定義を示している。同図に示すように、36種類の予測モードが定義されており、それぞれの予測モードは、「0」~「35」の番号(イントラ予測モードインデックス)によって特定される。また、図30に示すように、各予測モードには次のような名称が割り当てられている。すなわち、「0」は、“Intra_Planar(プラナー予測モード、平面予測モード)”であり、「1」は、“Intra DC(イントラDC予測モード)”であり、「2」~「34」は、“Intra Angular(方向予測)”であり、「35」は、“Intra From Luma”である。「35」は、色差予測モード固有のものであり、輝度の予測に基づいて色差の予測を行うモードである。言い換えれば、色差予測モード「35」は、輝度画素値と色差画素値との相関を利用した予測モードである。色差予測モード「35」はLMモードとも称する。予測モード数(intraPredModeNum)は、対象ブロックのサイズによらず「35」である。
 動きベクトル候補導出部144は、ベース復号情報を用いて、レイヤ内動き情報推定処理、またはレイヤ間動き推定処理により推定動きベクトルの候補を導出する。動きベクトル候補導出部144は、導出した動きベクトルの候補を動き情報復元部145に供給する。
 動き情報復元部145は、マージを行わない各インターPUに関する動き情報を復元する。すなわち、動き情報復元部145が予測パラメータとして復元するのは動き情報である。
 動き情報復元部145は、対象CU(PU)がインターCUおよびインターPUである場合、予測情報から、動き情報を復元する。より具体的には、動き情報復元部145は、動きベクトル残差(mvd)、推定動きベクトルインデックス(mvp_idx)、インター予測フラグ(inter_pred_flag)および、参照画像インデックス(refIdx)を取得する。そして、インター予測フラグの値に基づいて、参照画像リストL0と参照画像リストL1各々について参照画像リスト利用フラグを決定する。続いて、対応する参照画像リスト利用フラグが、当該参照画像を利用することを示している場合、動き情報復元部145は、推定動きベクトルインデックスの値に基づいて、推定動きベクトルを導出するとともに、動きベクトル残差と推定動きベクトルとに基づいて動きベクトルを導出する。動き情報復元部145は、導出した動きベクトルと、参照画像リスト利用フラグ、および、参照画像インデックスと合わせて動き情報(動き補償パラメータ)として出力する。
 マージ候補導出部146は、後述するフレームメモリ155から供給される復号済みの動き情報および/またはベース復号部16から供給されるベース復号情報等を用いて、各種のマージ候補を導出する。マージ候補導出部146は、導出したマージ候補をマージ情報復元部147に供給する。
 マージ情報復元部147は、レイヤ内またはレイヤ間でマージを行う各PUに関する動き情報を復元する。すなわち、マージ情報復元部147が予測パラメータとして復元するのは動き情報である。
 具体的には、マージ情報復元部147は、対象CU(PU)がレイヤ内でマージを行うスキップCU(マージPU)である場合、マージ候補導出部146がレイヤ内マージにより導出したマージ候補リストから、予測情報に含まれるマージインデックス(merge_idx)に対応する動き補償パラメータを導出することにより、動き情報を復元する。
 また、マージ情報復元部147は、レイヤ間でマージを行うベーススキップCUである場合、マージ候補導出部146がレイヤ間マージにより導出したマージ候補リストから、予測情報に含まれるマージインデックス(merge_idx)に対応する動き補償パラメータを導出することにより、動き情報を復元する。
 なお、マージ候補導出部146の詳細については後述する。
 (テクスチャ復元部)
 図31を用いて、テクスチャ復元部55の詳細構成について説明する。図31は、テクスチャ復元部55の構成について例示した機能ブロック図である。
 図31に示すように、テクスチャ復元部55は、逆直交変換・逆量子化部151、テクスチャ予測部152、加算器153、ループフィルタ部154、およびフレームメモリ155を備える。
 逆直交変換・逆量子化部151は、(1)可変長復号部52から供給される変換係数情報に含まれる量子化予測残差QDを逆量子化し、(2)逆量子化によって得られたDCT係数を逆直交変換(例えば、DCT(Discrete Cosine Transform)変換)し、(3)逆直交変換によって得られた予測残差Dを加算器153に供給する。なお、量子化予測残差QDを逆量子化する際に、逆直交変換・逆量子化部151は、変換係数情報に含まれる量子化パラメータ差分Δqpから量子化ステップQPを導出する。量子化パラメータqpは、直前に逆量子化/逆直交変換したツリーブロックに関する量子化パラメータqp’に量子化パラメータ差分Δqpを加算することによって導出でき、量子化ステップQPは、量子化パラメータqpからQP=2qp/6によって導出できる。また、逆直交変換・逆量子化部151による予測残差Dの生成は、ブロック(変換単位)を単位として行われる。
 テクスチャ予測部152は、予測パラメータに応じて、ベース復号情報に含まれるベース復号画像またはフレームメモリに格納されている復号済みの復号画像を参照し、予測画像を生成する。
 テクスチャ予測部152は、より詳細には、インター予測部152A、レイヤ内イントラ予測部152B、およびレイヤ間イントラ予測部152Cを備える。
 インター予測部152Aは、各インター予測パーティションに関する予測画像をインター予測により生成する。具体的には、インター予測部152Aは、動き情報復元部145またはマージ情報復元部147から予測パラメータとして供給される動き情報を用いて、参照画像から予測画像を生成する。
 レイヤ内イントラ予測部152Bは、各イントラ予測パーティションに関する予測画像をレイヤ内イントラ予測により生成する。具体的には、レイヤ内イントラ予測部152Bは、イントラ予測モード復元部143から予測パラメータとして供給される予測モードを用いて、対象パーティションにおいて復号済みの復号画像から予測画像を生成する。
 レイヤ間イントラ予測部152Cは、各イントラ予測パーティションに関する予測画像をレイヤ間イントラ予測により生成する。具体的には、レイヤ間イントラ予測部152Cは、イントラ予測モード復元部143から予測パラメータとして供給される予測モードを用いて、ベース復号情報に含まれるベース復号画像に基づいて予測画像を生成する。ベース復号画像は、対象レイヤの解像度に合わせて適宜アップサンプリングされてもよい。
 テクスチャ予測部152は、インター予測部152A、レイヤ内イントラ予測部152Bまたはレイヤ間イントラ予測部152Cが生成した予測画像を加算器153に供給する。
 加算器153は、テクスチャ予測部152が生成した予測画像と、逆直交変換・逆量子化部151から供給された予測残差Dとを加算することによって復号画像を生成する。
 ループフィルタ部154は、加算器153から供給される復号画像に対し、フィルタパラメータを用いて、デブロッキング処理や、適応フィルタパラメータによるフィルタ処理を施すものである。
 フレームメモリ155は、ループフィルタ部154によるフィルタ済み復号画像を格納する。
 (ベース復号部)
 図32を用いて、ベース復号部53の詳細構成について説明する。図32は、ベース復号部53の構成について例示した機能ブロック図である。
 図32に示すように、ベース復号部53は、可変長復号部161、ベース予測パラメータ復元部162、ベース変換係数復元部163、およびベーステクスチャ復元部164を備える。
 可変長復号部161は、参照レイヤ符号化データDATA#Rに含まれるバイナリから各種のシンタックス値を復号するための情報の復号処理を行う。
 具体的には、可変長復号部161は、予測情報および変換係数情報を符号化データDATA#Rから復号する。可変長復号部161が復号する予測情報および変換係数のシンタックスは、可変長復号部52と同様であるのでここではその詳細な説明を省略する。
 可変長復号部161は、復号した予測情報をベース予測パラメータ復元部162に供給するとともに、復号した変換係数情報をベース変換係数復元部163に供給する。
 ベース予測パラメータ復元部162は、可変長復号部161から供給される予測情報に基づいて、ベース予測パラメータを復元する。ベース予測パラメータ復元部162が、ベース予測パラメータを復元する方法については、予測パラメータ復元部54と同様であるので、ここではその詳細な説明を省略する。ベース予測パラメータ復元部162は、復元したベース予測パラメータを、ベーステクスチャ復元部164に供給するとともに、外部に出力する。
 ベース変換係数復元部163は、可変長復号部161から供給される変換係数情報に基づいて、変換係数を復元する。ベース変換係数復元部163が変換係数を復元する方法については、逆直交変換・逆量子化部151と同様であるので、ここではその詳細な説明を省略する。ベース変換係数復元部163は、復元したベース変換係数を、ベーステクスチャ復元部164に供給するとともに、外部に出力する。
 ベーステクスチャ復元部164は、ベース予測パラメータ復元部162から供給されるベース予測パラメータと、ベース変換係数復元部163から供給されるベース変換係数とを用いて、復号画像を生成する。具体的には、ベーステクスチャ復元部164は、ベース予測パラメータに基づき、テクスチャ予測部152と同様のテクスチャ予測を行って、予測画像を生成する。また、ベーステクスチャ復元部164は、ベース変換係数に基づいて予測残差を生成し、生成した予測残差と、テクスチャ予測により生成した予測画像とを加算することでベース復号画像を生成する。
 なお、ベーステクスチャ復元部164は、ベース復号画像に対して、ループフィルタ部154と同様のフィルタ処理を施してもよい。また、ベーステクスチャ復元部164は、復号済みのベース復号画像を格納するためのフレームメモリを備えていてもよく、テクスチャ予測においてフレームメモリに格納されている復号済みのベース復号画像を参照してもよい。
 〔階層動画像符号化装置〕
 次に、本実施形態に係る階層動画像符号化装置2’の構成について、図33~35を参照して説明する。
 (階層動画像符号化装置の構成)
 図33を用いて、階層動画像符号化装置2’の概略的構成について説明すると次のとおりである。図33は、階層動画像符号化装置2’の概略的構成について示した機能ブロック図である。階層動画像符号化装置2’は、対象レイヤの入力画像PIN#Tを、参照レイヤ符号化データDATA#Rを参照しながら符号化して、対象レイヤの階層符号化データDATAを生成する。なお、参照レイヤ符号化データDATA#Rは、参照レイヤに対応する階層動画像符号化装置において符号化済みであるとする。
 図33に示すように階層動画像符号化装置2’は、予測パラメータ決定部61、予測情報生成部62、ベース復号部63、テクスチャ情報生成部64、可変長符号化部65、NAL多重化部66、およびフィルタパラメータ情報生成部67を備える。
 予測パラメータ決定部61は、入力画像PIN#Tに基づいて、予測画像の予測に用いられる予測パラメータおよびその他の符号化の設定を決定する。
 予測パラメータ決定部61は、予測パラメータをはじめとする符号化の設定を、以下のとおり行う。
 まず、予測パラメータ決定部61は、入力画像PIN#Tを、スライス単位、ツリーブロック単位、CU単位に順次分割することにより、対象CUについてのCU画像を生成する。
 また、予測パラメータ決定部61は、分割処理の結果に基づいて、符号化情報(ヘッダ情報とも称されることがある)を生成する。符号化情報は、(1)対象スライスに属するツリーブロックのサイズ、形状および対象スライス内での位置についての情報であるツリーブロック情報と、(2)各ツリーブロックに属するCUのサイズ、形状および対象ツリーブロック内での位置についての情報であるCU情報とを含んでいる。
 さらに、予測パラメータ決定部61は、CU画像、ツリーブロック情報、およびCU情報を参照して、対象CUの予測タイプ、対象CUのPUへの分割情報、および、予測パラメータ(対象CUが、イントラCUであればイントラ予測モード、インターCUである場合には各PUにおける動き補償パラメータ)を導出する。
 予測パラメータ決定部61は、(1)対象CUの予測タイプ、(2)対象CUの各PUへの可能な分割パターン、および、(3)各PUに割り付ける可能な予測モード(イントラCUであればイントラ予測モード、インターCUであれば動き補償パラメータ)、の全ての組み合わせについて、コストを算出し、最低コストの予測タイプ、分割パターン、および、予測モードを決定する。
 予測パラメータ決定部61は、符号化情報および予測パラメータを予測情報生成部62およびテクスチャ情報生成部64に供給する。なお、説明の簡便のため図示しないが、予測パラメータ決定部61において決定された上記の符号化情報等の設定は、階層動画像符号化装置2’の各部において参照可能とする。
 予測情報生成部62は、予測パラメータ決定部61から供給される予測パラメータと、参照レイヤ符号化データDATA#Rとに基づいて予測パラメータに関するシンタックス値を含む予測情報を生成する。予測情報生成部62は、生成した予測情報を可変長符号化部65に供給する。なお、予測情報生成部62は、予測パラメータを復元する際に、テクスチャ情報生成部64が備えるフレームメモリ277(後述)に格納された動き情報を参照することができる。
 ベース復号部63は、階層動画像復号装置1’のベース復号部53と同様であるので、ここではその説明を省略する。
 テクスチャ情報生成部64は、入力画像PIN#Tから予測画像を減算して得られる予測残差を、直交変換・量子化した変換係数を含む変換係数情報を生成する。テクスチャ情報生成部64は、生成した変換係数情報を可変長符号化部65に供給する。なお、テクスチャ情報生成部64では、復元された復号画像に関する情報が、内部に備えるフレームメモリ277(後述)に格納される。
 また、テクスチャ情報生成部64は、フィルタパラメータを設定し、フィルタパラメータ情報生成部67に供給する。
 フィルタパラメータ情報生成部67は、テクスチャ情報生成部64から供給されたフィルタパラメータに関するシンタクス値を含むフィルタパラメータ情報を生成する。フィルタパラメータ情報生成部67は、生成したフィルタパラメータ情報を可変長符号化部65に供給する。
 可変長符号化部65は、予測情報生成部62から供給される予測情報、テクスチャ情報生成部64から供給される変換係数情報、およびフィルタパラメータ情報生成部67から供給されるフィルタパラメータ情報を可変長符号化して対象レイヤ符号化データDATA#Tを生成する。可変長符号化部65は、生成した対象レイヤ符号化データDATA#TをNAL多重化部66に供給する。
 NAL多重化部66は、可変長符号化部65から供給される対象レイヤ符号化データDATA#Tと、参照レイヤ符号化データDATA#RとをNALユニットに格納することでNAL多重化した階層動画像符号化データDATAを生成し、外部に出力する。
 以下において、予測情報生成部62、およびテクスチャ情報生成部64それぞれの詳細について説明する。
 (予測情報生成部)
 図34を用いて、予測情報生成部62の詳細構成について説明する。図34は、予測情報生成部62の構成について例示した機能ブロック図である。
 図34に示すように、予測情報生成部62は、予測タイプ選択部261、スイッチ262、イントラ予測モード導出部263、動きベクトル候補導出部264、動き情報生成部265、マージ候補導出部266、およびマージ情報生成部267を備える。
 予測タイプ選択部261は、CUタイプまたはPUタイプに応じてスイッチ262に切り替え指示を送り予測パラメータの導出処理を制御する。具体的には以下のとおりである。
 イントラCUまたはイントラPUが指定されている場合、予測タイプ選択部261はイントラ予測モード導出部263を用いて予測情報を導出できるようスイッチ262を制御する。
 インターCU(マージなし)およびインターPU(マージなし)のいずれかが指定されている場合、予測タイプ選択部261は動き情報生成部265を用いて予測パラメータを導出できるようスイッチ262を制御する。
 ベーススキップCU、ベースマージCU、スキップCU、およびマージPUのいずれかが指定されている場合、予測タイプ選択部261はマージ情報生成部267を用いて予測パラメータを導出できるようスイッチ262を制御する。
 スイッチ262は、予測タイプ選択部261の指示に応じて、予測パラメータを、イントラ予測モード導出部263、動き情報生成部265、およびマージ情報生成部267のいずれかに供給する。予測情報の供給先において予測パラメータが導出される。
 イントラ予測モード導出部263は、予測モードに関するシンタックス値を導出する。すなわち、イントラ予測モード導出部263が予測情報として生成するのは、予測モードに関するシンタックス値である。
 動きベクトル候補導出部264は、ベース復号情報を用いて、レイヤ内動き推定処理、またはレイヤ間動き推定処理により動きベクトルの候補を導出する。動きベクトル候補導出部264は、導出した動きベクトルの候補を動き情報生成部265に供給する。
 動き情報生成部265は、レイヤ内でマージを行わない各インター予測パーティションにおける動き情報に関するシンタックス値を生成する。すなわち、動き情報生成部265が予測情報として生成するのは動き情報に関するシンタックス値である。具体的には、動き情報生成部265は、各PUにおける動き補償パラメータから、対応するシンタックス要素値であるinter_pred_flag、mvd、mvp_idx、および、refIdxを導出する。
 具体的には、動き情報生成部265は、対象PUがベーススキップCUまたはベースマージPUである場合、動きベクトル候補導出部264から供給される動きベクトルの候補に基づいて、上記シンタックス値を導出する。
 一方、動き情報生成部265は、対象CU(PU)がマージを行わないインターCUおよびインターPUである場合、予測パラメータに含まれる動き情報に基づいて、上記シンタックス値を導出する。
 マージ候補導出部266は、後述するフレームメモリ277から供給される復号済みの動き情報および/またはベース復号部63から供給されるベース復号情報等を用いて、各PUにおける動き補償パラメータと類似の動き補償パラメータを有するマージ候補を導出する。マージ候補導出部266は、導出したマージ候補をマージ情報生成部267に供給する。マージ候補導出部266の構成は、階層動画像復号装置1’に含まれるマージ候補導出部146の構成と同様であるので、その説明を省略する。
 マージ情報生成部267は、レイヤ内でマージを行う各インター予測パーティションに関する動き情報に関するシンタックス値を生成する。すなわち、マージ情報生成部267が予測情報として生成するのは動き情報に関するシンタックス値である。具体的には、マージ情報生成部267は、各PUにおける動き補償パラメータと類似の動き補償パラメータを有するマージ候補を指定するシンタックス要素値merge_idxを出力する。
 (テクスチャ情報生成部)
 図35を用いて、テクスチャ情報生成部64の詳細構成について説明する。図34は、テクスチャ情報生成部64の構成について例示した機能ブロック図である。
 図34に示すように、テクスチャ情報生成部64は、テクスチャ予測部271、減算器272、直交変換・量子化部273、逆直交変換・逆量子化部274、加算器275、ループフィルタ部276、フレームメモリ277、およびフィルタパラメータ導出部278を備える。
 減算器272は、入力画像PIN#Tから、テクスチャ予測部271から供給される予測画像を減算することによって、予測残差Dを生成する。減算器272は、生成した予測残差Dを、直交変換・量子化部273に供給する。
 直交変換・量子化部273は、予測残差Dに対して、直交変換および量子化を行うことで量子化予測残差を生成する。なお、ここで直交変換とは、画素領域から周波数領域への直交変換のことをさす。また、直交変換の例としては、DCT変換(Discrete Cosine Transform)、およびDST変換(Discrete Sine Transform)等が挙げられる。また、具体的な量子化過程については、すでに説明した通りであるので、ここではその説明を省略する。直交変換・量子化部273は、生成した量子化予測残差を含む変換係数情報を逆直交変換・逆量子化部274および可変長符号化部65に供給する。
 フィルタパラメータ導出部278は、入力画像PIN#Tおよび加算器275から供給された復号画像からフィルタパラメータを導出し、ループフィルタ部276、およびフィルタパラメータ情報生成部67に供給する。
 テクスチャ予測部271、逆直交変換・逆量子化部274、加算器275、ループフィルタ部276、およびフレームメモリ277は、それぞれ、階層動画像復号装置1’に含まれるテクスチャ予測部152、逆直交変換・逆量子化部151、加算器153、ループフィルタ部154、およびフレームメモリ155と同様であるので、ここではその説明は省略する。ただし、テクスチャ予測部271は、加算器275だけでなく減算器272にも予測画像を供給する。
 〔フィルタパラメータの格納方法〕
  〔概要〕
 現行の規格の階層符号化(H.264/AVCベースのSVC)では適応フィルタ(例、ALF、SAO)は用いられていない。しかしながら、階層符号化では、適応フィルタ処理がなされていない基本レイヤ画像が用いられる場合や、拡張レイヤと基本レイヤの解像度が異なる場合等があり、これらの場合、基本レイヤ画像に適応フィルタを適用することにより、大きな効果が見込める。
 なお、現行の規格では、適応フィルタの処理方法や符号化データの構成は決められていない。
 そこで、本実施の形態では、基本レイヤ画像(及びそのアップサンプリング画像)に対し、適応フィルタを適用するとともに、適応フィルタパラメータを拡張レイヤの符号化データで符号化する。
  〔フィルタパラメータの格納方法1〕
 基本レイヤ画像に適用する適応フィルタのフィルタパラメータを、拡張レイヤに対し、各CTBでインターリーブすることが考えられる。
 この構成により、フィルタパラメータの復号時が該フィルタパラメータを使用するため、復号したフィルタパラメータをメモリに格納する必要がなくなり、メモリの削減を図ることができる。なお、スライスヘッダ及びAPSでフィルタパラメータを復号する場合、1スライス及び1ピクチャ分のフィルタパラメータをメモリに格納する必要がある。
 基本レイヤ画像に適用する適応フィルタのフィルタパラメータを、拡張レイヤに対し、各CTBでインターリーブする場合のシンタクス例について、図36~38に示す。図36のシンタクス例に示すように、本実施形態では、CTB単位で以下のパラメータが符号化されている。
SAOパラメータ:base_layer_sao_unit_cabac
ALFパラメータの内のオンオフフラグ:base_layer_alf_ctb_enable_flag
 図37(a)、(b)に、SAOパラメータ:base_layer_sao_unit_cabacの詳細を示すシンタクス例を示す。
 また、図38(a)、(b)に、ALFのフィルタパラメータの詳細を示すシンタクス例を示す。図38(a)、(b)に示すシンタクス例のように、ALFのフィルタパラメータについては、フィルタ係数をAPSで符号化し、上述したようにオンオフフラグをCTBで符号化する。なお、フィルタ係数は、スライスヘッダで符号化してもよい。
 なお、シンタクス例において、ue(v)は、この記述子に関連付けられたシンタックスは符号なしの数値であり、値が可変長符号化されることを示している。また、se(v)は、この記述子に関連付けられたシンタックスは符号付きの数値であり、符号と絶対値に分けて可変長符号化されることを示している。また、ae(v)は、この記述子に関連づけられたシンタックスが算術符号を用いて可変長符号化されることを示している。また、u(n)は、この記述子に関連付けられたシンタックスは符号なしの数値であり、nビットの固定長符号化が用いられることを示している。
   〔レイヤ間イントラ予測部における動作〕
 基本レイヤ画像に適用する適応フィルタのフィルタパラメータを、拡張レイヤに対し、各CTBでインターリーブする場合のレイヤ間イントラ予測部における動作について、図39を参照して説明する。
 図39(a)に示すように、レイヤ間イントラ予測部152Cには、ブロック抽出部、アップサンプル部、適応オフセットフィルタ部、適応空間フィルタ部が備えられている。
 なお、適応オフセットフィルタ部、適応空間フィルタ部のうち、何れかの適応フィルタを備える構成でも良い。すなわち、適応フィルタとして適応オフセットフィルタのみを備える構成(ブロック抽出部、アップサンプル部、適応オフセットフィルタ部)でも良いし、適応フィルタとして適応空間フィルタのみを備える構成(ブロック抽出部、アップサンプル部、適応空間フィルタ部)でも良い。
 レイヤ間イントラ予測部152Cは、各イントラ予測パーティションに関する予測画像をレイヤ間イントラ予測により生成する。予測画像のブロック(PU)の生成は、PU単位もしくはCTB単位で行われる。一般に、予測画像の生成はPU単位で行われるが、本構成では、適応フィルタのフィルタパラメータを各CTBの先頭でインタリーブするため、各CTB内で得られるPUのパラメータを導出する前に、適応フィルタ処理を行うことができる。従って、レイヤ間イントラ予測部152Cは、PU単位に限らずCTB単位で適応フィルタ処理を含む予測画像導出処理を行うことができる。
 <PU単位の予測画像生成(a)>
 ブロック抽出部は、予測ブロックを生成するために必要な基本レイヤ上の領域(基本レイヤ参照ブロック)を導出する。まず、以下の手順で、拡張レイヤブロックの範囲を導出する。拡張レイヤブロックの範囲とは、ブロック抽出部およびアップサンプル部により生成される画像のブロックの範囲である。適応フィルタを適用した予測画像を生成する場合には、適応フィルタの参照範囲を考慮して予測ブロック(PU単位処理ではPU)よりも大きな範囲を必要とする。以下、予測ブロックの幅をnPSW、高さをnPSHで表現する。
(1)拡張レイヤブロックの範囲=予測ブロックの範囲とする。
(2)対象PUを含むCTBにおいて、適応空間フィルタがオンの場合には、適応フィルタの参照範囲(左右ALFW画素、上下ALFH画素)だけ、拡張レイヤブロックの範囲を広げる。
(3)対象PUを含むCTBにおいて、適応オフセットフィルタがオンの場合には、適応フィルタの参照範囲(左右1画素、上下1画素)だけ、拡張レイヤブロックの範囲を広げる。
 次に、以下の手順で、基本レイヤ参照ブロックの範囲を導出する。
(1)基本レイヤと拡張レイヤの解像度が等しい場合には、基本レイヤ参照ブロックの範囲=拡張レイヤブロックの範囲とする。
(2)基本レイヤと拡張レイヤの解像度が異なる場合には、拡張レイヤブロックの範囲から基本レイヤ参照ブロックの範囲を求める。
 最後に、基本レイヤ復号画像から基本レイヤ参照ブロックを抽出する。
 アップサンプル部は、基本レイヤと拡張レイヤとの解像度が異なる場合には、基本レイヤ参照ブロックにアップサンプルを施し、拡張レイヤブロックを生成する。一方、基本レイヤと拡張レイヤとの解像度が等しい場合には、基本レイヤ参照ブロックを拡張レイヤブロックとする。
 適応オフセットフィルタ部は、拡張レイヤブロックに、適応オフセットフィルタ処理を行う。
 適応空間フィルタ部は、適応オフセットフィルタ部の出力に、適応空間フィルタ処理を行う。
 換言すれば、レイヤ間イントラ予測部は、図40に示すように、基本レイヤ参照ブロックをアップサンプリングすることにより、(nPSW+ALFWx2+1) x (nPSH+ALFHx2+1)の拡張レイヤ参照ブロックとする。この拡張レイヤ参照ブロックに対し適応オフセットフィルタを適用し、(nPSW+ALFWx2) x (nPSH+ALFHx2)のブロックとする。さらに、適応空間フィルタを適用し、nPSW x nPSHの予測画像を生成する。
 なお、従来の構成のレイヤ間イントラ予測部では、図39(b)に示すように、ブロック抽出部およびアップサンプル部のみを備えており、フィルタ処理は行われていない。
 <CTB単位の予測画像生成(b)>
 CTB単位での予測画像生成の動作は、上記のPU単位の予測画像生成の動作と同じである。そして、予測ブロックの幅nPSW、高さnPSHを、CTBの幅、高さに置き替えて動作させる。また、各PUでは、予測画像を生成する際に、CTB単位で導出されたブロックから、必要となる予測画像の範囲のみを切り取る。
 上記のように、CTBの先頭でフィルタパラメータをインターリーブすることにより、予測画像生成で行われる適応フィルタ処理を、予測画像作成に必要なパラメータを復号する前に行うことができる。
 また、上記のように、CTB内の各PUにおいて共有のフィルタパラメータを用いることにより、PU単位ではなくCTB単位でフィルタ処理を行うことが可能となる。これにより、各PUで独立してフィルタ処理を行う場合に比べ、フィルタ処理の処理量を低減することができる。また、フィルタパラメータの符号量のオーバーヘッドを低減し、符号化効率を高めることができる。
  〔フィルタパラメータの格納方法2〕
 基本レイヤ画像に適用する適応フィルタのフィルタパラメータを、拡張レイヤのスライスヘッダ、またはパラメータセット(例えば、APS)で符号化することが考えられる。スライスヘッダやパラメータセットは、予測パラメータや残差を含むCTB単位で符号化されるスライスデータを復号する前に復号される。
 フィルタパラメータをスライスヘッダ、またはAPSで符号化する場合、レイヤ間イントラ予測部は、以下の(a)、(b)、(c)のいずれかの処理を行う。
(a)PUを生成する時点で、PU単位でブロック抽出処理、アップサンプル処理、適応フィルタ処理を行う。
(b)CTBを復号する時点で、CTB単位でブロック抽出処理、アップサンプル処理、適応フィルタ処理を行う。
(c)基本レイヤ画像を復号した時点で、アップサンプル処理、適応フィルタ処理を行う。
 上記(a)、(b)の処理は、上記、PU単位の予測画像生成(a)で既に説明した処理と同じため説明を省略する。
 本実施形態に係るフィルタパラメータの格納方法2によれば、PUを生成する時点、CTBを復号する時点だけでなく、基本レイヤ画像を復号した時点で、適応フィルタ処理を行うことができる。そのため、CTB毎の符号化データの可変長復号、逆変換、予測画像生成などのパイプラインに適応フィルタ処理を入れる必要がない。よって、パイプラインに遅延が発生するような適応フィルタ処理を避けることができ、全体のスループットが向上する。
 また、復号装置の構成(プロセッサ数、アクセラレータ数、ハード規模、内部メモリ量、メモリバンド幅等)にあわせて、PU単位処理、CTB単位処理に加え、ピクチャ単位、スライス単位、CTBライン単位など、フィルタ処理の単位を変更することができるため、復号装置の設計が容易になる。
 また、基本レイヤを復号する時点で適応フィルタ処理を行う場合には、PU単位およびCTB単位よりも大きい単位(スライス、ピクチャ)で必要な領域のみアップサンプル、適応フィルタ処理を行えばよいため、フィルタ処理の処理量を低減させることができる。
 基本レイヤ画像に適用する適応フィルタのフィルタパラメータを、拡張レイヤのAPSヘッダで符号化する場合のシンタクス例について、図41~44に示す。
 図41のシンタクス例に示すように、本実施形態では、適応フィルタパラメータ(SAO、ALF)がAPSで符号化されている。なお、シーケンスパラメータセット、ピクチャパラメータセット、スライスヘッダで符号化されていてもよい。
 図43(a)、(b)、(c)に、SAOパラメータbase_layer_aps_sao_paramの構成を示すシンタクス例を示す。また、図44に、APSで符号化するALFパラメータbase_layer_alf_picture_infoの詳細を示すシンタクス例を示す。
   〔レイヤ間イントラ予測部における動作〕
 基本レイヤ画像に適用する適応フィルタのフィルタパラメータを、拡張レイヤのスライスヘッダ、またはパラメータセット(例えば、APS)で符号化する場合のレイヤ間イントラ予測部における動作について、図45を参照して説明する。
 図45に示すように、レイヤ間イントラ予測部152Cには、ブロック抽出部、アップサンプル部、適応オフセットフィルタ部、適応空間フィルタ部が備えられている。
 レイヤ間イントラ予測部152Cは、以下の(a)~(c)のいずれかの処理を行う。
(a)PUを生成する時点で、PU単位でブロック抽出処理、アップサンプル処理、適応フィルタ処理を行う。
(b)CTBを復号する時点で、CTB単位でブロック抽出処理、アップサンプル処理、適応フィルタ処理を行う。
(c)基本レイヤ画像を復号した時点で、アップサンプル処理、適応フィルタ処理を行う。
 上記(a)、(b)の場合の処理は、上記フィルタパラメータの格納方法1に記載した処理と同様である。
 また、上記(c)の場合の処理も、上記フィルタパラメータの格納方法2に記載した処理と同様であるが、さらに、詳細を以下に説明する。
 ブロック抽出部は、スライス単位もしくはピクチャ単位で、基本レイヤ参照ブロックを抽出する。アップサンプル部は、基本レイヤと拡張レイヤとの解像度が異なる場合、基本レイヤ参照ブロックをアップサンプルし、拡張レイヤ参照ブロックとする。また、基本レイヤと拡張レイヤとの解像度が同じ場合、基本レイヤ参照ブロックを拡張レイヤ参照ブロックとする。適応オフセットフィルタ部は、拡張レイヤ参照ブロックに、適応オフセットフィルタ処理を行う。適応空間フィルタ部は、適応オフセットフィルタ部の出力に、適応空間フィルタ処理を行う。
 上記の構成によれば、下位レイヤからの復号画像に適用するフィルタのパラメータが上位レイヤのパラメータセット、もしくはスライスヘッダに格納される。上位レイヤのスライスデータを復号する前に、すなわち、下位レイヤからの画像を復号した時点で、フィルタ処理を行うことが可能となり、スループットを向上させることができる。
 また、フィルタの適用を予測画像よりも大きな単位(ピクチャ単位、スライス単位、CTB単位)で行うことが可能となり、フィルタ処理を簡略化することができる。
  〔フィルタパラメータの格納方法3〕
 イントラレイヤ間予測はPU単位で選択され、適応フィルタのフィルタパラメータはCTB単位で符号化されている。各CTBでは、PU単位で、イントラ予測を行うかインター予測を行うかを選択することから、CTBに含まれる全てのPUでインター予測だけが用いられることもある。また、イントラ予測を用いる場合も、方向予測などが用いられ、イントラレイヤ間予測が用いられないこともある。
 このようなイントラレイヤ間予測が用いられないCTBで、適応フィルタを適用するか否かを示すフラグ(オンオフフラグ)などの、イントラレイヤ間予測で用いられるフィルタパラメータを符号化する場合、無駄なフラグを符号化することになり符号化効率が低下してしまう。
 そこで、本実施形態では、基本レイヤに対する適応フィルタ処理は、イントラスライスのみに限定している。ここで、イントラスライスとは、当該スライスに含まれるCTBは、すべてイントラ予測によって予測画像が生成されているスライスである。CTBに含まれる全てのPUでイントラ予測が用いられ、イントラレイヤ予測のうちインターレイヤ間予測が用いられる割合が高いことから、該CTBにおいて多くの場合、インターレイヤ間予測が用いられる。従って、無駄なフラグの符号化がさけられる。
 この構成により、基本レイヤに対する適応フィルタ処理は、イントラスライスのみに限定されるため、イントラレイヤ間予測が用いられないCTBで、適応フィルタパラメータを符号化することを避けることができる。これにより符号化効率が向上する。
 また、基本レイヤに対する適応フィルタ処理を、イントラレイヤ間予測が主に用いられるイントラスライスのみに限定することにより、適応フィルタ処理の効果を維持したまま基本レイヤに対する適応フィルタ処理の処理量を削減することができる。
 特に、基本レイヤに対する適応フィルタ処理は、重い処理であるので、処理量を削減することにより、処理負荷を軽くすることができる。
 図46に、基本レイヤに対する適応フィルタ処理をイントラスライスのみに限定する構成のシンタクス例を示す。図46のシンタクス例に示すように、イントラスライスのみで、以下のパラメータを符号化している。また、イントラスライス以外では0と推測する。
SAOパラメータ:base_layer_sao_unit_cabac
ALFパラメータの内のオンオフフラグ:base_layer_alf_ctb_enable_flag
図42(a)、(b)に、スライスヘッダで符号化するSAOパラメータbase_layer_ sao_unit_cabacの詳細を示すシンタクス例を示す。
  (応用例)
 図21および図22を用いて、上述した階層画像符号化装置2、階層動画像符号化装置2’、階層画像復号装置1、および階層動画像復号装置1’の応用例について説明する。上述した階層画像符号化装置2(階層動画像符号化装置2’)及び階層画像復号装置1(階層動画像符号化装置1’)は、動画像の送信、受信、記録、再生を行う各種装置に搭載して利用することができる。なお、動画像は、カメラ等により撮像された自然動画像であってもよいし、コンピュータ等により生成された人工動画像(CGおよびGUIを含む)であってもよい。
 まず、上述した階層画像符号化装置2及び階層画像復号装置1を、動画像の送信及び受信に利用できることを、図21を参照して説明する。
 図21の(a)は、階層画像符号化装置2を搭載した送信装置PROD_Aの構成を示したブロック図である。図21の(a)に示すように、送信装置PROD_Aは、動画像を符号化することによって符号化データを得る符号化部PROD_A1と、符号化部PROD_A1が得た符号化データで搬送波を変調することによって変調信号を得る変調部PROD_A2と、変調部PROD_A2が得た変調信号を送信する送信部PROD_A3と、を備えている。上述した階層画像符号化装置2は、この符号化部PROD_A1として利用される。
 送信装置PROD_Aは、符号化部PROD_A1に入力する動画像の供給源として、動画像を撮像するカメラPROD_A4、動画像を記録した記録媒体PROD_A5、動画像を外部から入力するための入力端子PROD_A6、及び、画像を生成または加工する画像処理部A7を更に備えていてもよい。図21の(a)においては、これら全てを送信装置PROD_Aが備えた構成を例示しているが、一部を省略しても構わない。
 なお、記録媒体PROD_A5は、符号化されていない動画像を記録したものであってもよいし、伝送用の符号化方式とは異なる記録用の符号化方式で符号化された動画像を記録したものであってもよい。後者の場合、記録媒体PROD_A5と符号化部PROD_A1との間に、記録媒体PROD_A5から読み出した符号化データを記録用の符号化方式に従って復号する復号部(不図示)を介在させるとよい。
 図21の(b)は、階層画像復号装置1を搭載した受信装置PROD_Bの構成を示したブロック図である。図21の(b)に示すように、受信装置PROD_Bは、変調信号を受信する受信部PROD_B1と、受信部PROD_B1が受信した変調信号を復調することによって符号化データを得る復調部PROD_B2と、復調部PROD_B2が得た符号化データを復号することによって動画像を得る復号部PROD_B3と、を備えている。上述した階層画像復号装置1は、この復号部PROD_B3として利用される。
 受信装置PROD_Bは、復号部PROD_B3が出力する動画像の供給先として、動画像を表示するディスプレイPROD_B4、動画像を記録するための記録媒体PROD_B5、及び、動画像を外部に出力するための出力端子PROD_B6を更に備えていてもよい。図21の(b)においては、これら全てを受信装置PROD_Bが備えた構成を例示しているが、一部を省略しても構わない。
 なお、記録媒体PROD_B5は、符号化されていない動画像を記録するためのものであってもよいし、伝送用の符号化方式とは異なる記録用の符号化方式で符号化されたものであってもよい。後者の場合、復号部PROD_B3と記録媒体PROD_B5との間に、復号部PROD_B3から取得した動画像を記録用の符号化方式に従って符号化する符号化部(不図示)を介在させるとよい。
 なお、変調信号を伝送する伝送媒体は、無線であってもよいし、有線であってもよい。また、変調信号を伝送する伝送態様は、放送(ここでは、送信先が予め特定されていない送信態様を指す)であってもよいし、通信(ここでは、送信先が予め特定されている送信態様を指す)であってもよい。すなわち、変調信号の伝送は、無線放送、有線放送、無線通信、及び有線通信の何れによって実現してもよい。
 例えば、地上デジタル放送の放送局(放送設備など)/受信局(テレビジョン受像機など)は、変調信号を無線放送で送受信する送信装置PROD_A/受信装置PROD_Bの一例である。また、ケーブルテレビ放送の放送局(放送設備など)/受信局(テレビジョン受像機など)は、変調信号を有線放送で送受信する送信装置PROD_A/受信装置PROD_Bの一例である。
 また、インターネットを用いたVOD(Video On Demand)サービスや動画共有サービスなどのサーバ(ワークステーションなど)/クライアント(テレビジョン受像機、パーソナルコンピュータ、スマートフォンなど)は、変調信号を通信で送受信する送信装置PROD_A/受信装置PROD_Bの一例である(通常、LANにおいては伝送媒体として無線又は有線の何れかが用いられ、WANにおいては伝送媒体として有線が用いられる)。ここで、パーソナルコンピュータには、デスクトップ型PC、ラップトップ型PC、及びタブレット型PCが含まれる。また、スマートフォンには、多機能携帯電話端末も含まれる。
 なお、動画共有サービスのクライアントは、サーバからダウンロードした符号化データを復号してディスプレイに表示する機能に加え、カメラで撮像した動画像を符号化してサーバにアップロードする機能を有している。すなわち、動画共有サービスのクライアントは、送信装置PROD_A及び受信装置PROD_Bの双方として機能する。
 次に、上述した階層画像符号化装置2及び階層画像復号装置1を、動画像の記録及び再生に利用できることを、図22を参照して説明する。
 図22の(a)は、上述した階層画像符号化装置2を搭載した記録装置PROD_Cの構成を示したブロック図である。図22の(a)に示すように、記録装置PROD_Cは、動画像を符号化することによって符号化データを得る符号化部PROD_C1と、符号化部PROD_C1が得た符号化データを記録媒体PROD_Mに書き込む書込部PROD_C2と、を備えている。上述した階層画像符号化装置2は、この符号化部PROD_C1として利用される。
 なお、記録媒体PROD_Mは、(1)HDD(Hard Disk Drive)やSSD(Solid State Drive)などのように、記録装置PROD_Cに内蔵されるタイプのものであってもよいし、(2)SDメモリカードやUSB(Universal Serial Bus)フラッシュメモリなどのように、記録装置PROD_Cに接続されるタイプのものであってもよいし、(3)DVD(Digital Versatile Disc)やBD(Blu-ray Disc:登録商標)などのように、記録装置PROD_Cに内蔵されたドライブ装置(不図示)に装填されるものであってもよい。
 また、記録装置PROD_Cは、符号化部PROD_C1に入力する動画像の供給源として、動画像を撮像するカメラPROD_C3、動画像を外部から入力するための入力端子PROD_C4、動画像を受信するための受信部PROD_C5、及び、画像を生成または加工する画像処理部C6を更に備えていてもよい。図22の(a)においては、これら全てを記録装置PROD_Cが備えた構成を例示しているが、一部を省略しても構わない。
 なお、受信部PROD_C5は、符号化されていない動画像を受信するものであってもよいし、記録用の符号化方式とは異なる伝送用の符号化方式で符号化された符号化データを受信するものであってもよい。後者の場合、受信部PROD_C5と符号化部PROD_C1との間に、伝送用の符号化方式で符号化された符号化データを復号する伝送用復号部(不図示)を介在させるとよい。
 このような記録装置PROD_Cとしては、例えば、DVDレコーダ、BDレコーダ、HDD(Hard Disk Drive)レコーダなどが挙げられる(この場合、入力端子PROD_C4又は受信部PROD_C5が動画像の主な供給源となる)。また、カムコーダ(この場合、カメラPROD_C3が動画像の主な供給源となる)、パーソナルコンピュータ(この場合、受信部PROD_C5又は画像処理部C6が動画像の主な供給源となる)、スマートフォン(この場合、カメラPROD_C3又は受信部PROD_C5が動画像の主な供給源となる)なども、このような記録装置PROD_Cの一例である。
 図22の(b)は、上述した階層画像復号装置1を搭載した再生装置PROD_Dの構成を示したブロックである。図22の(b)に示すように、再生装置PROD_Dは、記録媒体PROD_Mに書き込まれた符号化データを読み出す読出部PROD_D1と、読出部PROD_D1が読み出した符号化データを復号することによって動画像を得る復号部PROD_D2と、を備えている。上述した階層画像復号装置1は、この復号部PROD_D2として利用される。
 なお、記録媒体PROD_Mは、(1)HDDやSSDなどのように、再生装置PROD_Dに内蔵されるタイプのものであってもよいし、(2)SDメモリカードやUSBフラッシュメモリなどのように、再生装置PROD_Dに接続されるタイプのものであってもよいし、(3)DVDやBDなどのように、再生装置PROD_Dに内蔵されたドライブ装置(不図示)に装填されるものであってもよい。
 また、再生装置PROD_Dは、復号部PROD_D2が出力する動画像の供給先として、動画像を表示するディスプレイPROD_D3、動画像を外部に出力するための出力端子PROD_D4、及び、動画像を送信する送信部PROD_D5を更に備えていてもよい。図22の(b)においては、これら全てを再生装置PROD_Dが備えた構成を例示しているが、一部を省略しても構わない。
 なお、送信部PROD_D5は、符号化されていない動画像を送信するものであってもよいし、記録用の符号化方式とは異なる伝送用の符号化方式で符号化された符号化データを送信するものであってもよい。後者の場合、復号部PROD_D2と送信部PROD_D5との間に、動画像を伝送用の符号化方式で符号化する符号化部(不図示)を介在させるとよい。
 このような再生装置PROD_Dとしては、例えば、DVDプレイヤ、BDプレイヤ、HDDプレイヤなどが挙げられる(この場合、テレビジョン受像機等が接続される出力端子PROD_D4が動画像の主な供給先となる)。また、テレビジョン受像機(この場合、ディスプレイPROD_D3が動画像の主な供給先となる)、デジタルサイネージ(電子看板や電子掲示板等とも称され、ディスプレイPROD_D3又は送信部PROD_D5が動画像の主な供給先となる)、デスクトップ型PC(この場合、出力端子PROD_D4又は送信部PROD_D5が動画像の主な供給先となる)、ラップトップ型又はタブレット型PC(この場合、ディスプレイPROD_D3又は送信部PROD_D5が動画像の主な供給先となる)、スマートフォン(この場合、ディスプレイPROD_D3又は送信部PROD_D5が動画像の主な供給先となる)なども、このような再生装置PROD_Dの一例である。
  (ハードウェア的実現およびソフトウェア的実現)
 また、上述した階層画像復号装置1、1’及び階層画像符号化装置2、2’の各ブロックは、集積回路(ICチップ)上に形成された論理回路によってハードウェア的に実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェア的に実現してもよい。
 後者の場合、上記各装置は、各機能を実現するプログラムの命令を実行するCPU、上記プログラムを格納したROM(Read Only Memory)、上記プログラムを展開するRAM(Random Access Memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである上記各装置の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、上記各装置に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
 上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ類、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD-ROM(Compact Disc Read-Only Memory)/MOディスク(Magneto-Optical disc)/MD(Mini Disc)/DVD(Digital Versatile Disc)/CD-R(CD Recordable)/ブルーレイディスク(Blu-ray Disc:登録商標)等の光ディスクを含むディスク類、ICカード(メモリカードを含む)/光カード等のカード類、マスクROM/EPROM(Erasable Programmable Read-Only Memory)/EEPROM(登録商標)(Electrically Erasable and Programmable Read-Only Memory)/フラッシュROM等の半導体メモリ類、あるいはPLD(Programmable logic device)やFPGA(Field Programmable Gate Array)等の論理回路類などを用いることができる。
 また、上記各装置を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークは、プログラムコードを伝送可能であればよく、特に限定されない。例えば、インターネット、イントラネット、エキストラネット、LAN(Local Area Network)、ISDN(Integrated Services Digital Network)、VAN(Value-Added Network)、CATV(Community Antenna television/Cable Television)通信網、仮想専用網(Virtual Private Network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、この通信ネットワークを構成する伝送媒体も、プログラムコードを伝送可能な媒体であればよく、特定の構成または種類のものに限定されない。例えば、IEEE(Institute of Electrical and Electronic Engineers)1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL(Asymmetric Digital Subscriber Line)回線等の有線でも、IrDA(Infrared Data Association)やリモコンのような赤外線、Bluetooth(登録商標)、IEEE802.11無線、HDR(High Data Rate)、NFC(Near Field Communication)、DLNA(Digital Living Network Alliance)、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
 本発明は、画像データが階層的に符号化された符号化データを復号する階層画像復号装置、および、画像データが階層的に符号化された符号化データを生成する階層画像符号化装置に好適に適用することができる。また、階層画像符号化装置によって生成され、階層画像復号装置によって参照される階層符号化データのデータ構造に好適に適用することができる。
 1    階層画像復号装置(動画像復号装置)
 1’   階層動画像復号装置(動画像復号装置)
 11   下位レイヤ画像復号装置
 12   上位レイヤ画像復号装置
 13   フィルタ部
 131  フィルタ処理部
 132  アップサンプリング部(アップサンプリング手段)
 1311 フィルタ適用判定部(フィルタ適用決定手段)
 1312 フィルタ適用部(フィルタ適用手段)
 1313 空間スケーラビリティ判定部
 1314 参照画像判定部
 1315 解像度判定部
 1316 フィルタ順序判定部
 1317 コーデック判定部
 51   NAL逆多重化部
 52   可変長復号部
 53   ベース復号部
 54   予測パラメータ復元部
 55   テクスチャ復元部(フィルタ適用手段)
 2    階層画像符号化装置
 2’   階層動画像符号化装置
 21   下位レイヤ画像符号化装置
 22   上位レイヤ画像符号化装置
 24   フィルタ選択・処理部
 241  フィルタ選択・判定部
 242  フィルタ部
 

Claims (15)

  1.  階層符号化された符号化データに含まれる上位レイヤの符号化データを復号し、下位レイヤからの復号画像を参照して生成した上位レイヤの予測画像を用いて上位レイヤの復号画像を復元する画像復号装置であって、
     上記上位レイヤから参照する上記下位レイヤからの復号画像に対して適用するフィルタを決定するフィルタ適用決定手段と、
     参照する上記下位レイヤからの復号画像に対して、上記フィルタ適用決定手段が決定したフィルタを適用するフィルタ適用手段と、
    を備えていることを特徴とする画像復号装置。
  2.  上記フィルタ適用決定手段は、所定の指標に関し要求される符号化効率に応じて、適用するフィルタを決定することを特徴とする請求項1に記載の画像復号装置。
  3.  上記フィルタ適用決定手段は、上記所定の指標として、スケーラビリティを判定し、
     スケーラビリティが空間スケーラビリティであった場合、適用するフィルタとして、空間スケーラビリティでない場合より画質向上効果の高いフィルタを決定することを特徴とする請求項2に記載の画像復号装置。
  4.  上記フィルタ適用決定手段は、上記所定の指標として、復号対象となる画像が後続の画像の復号の際に参照される参照画像であるか否かを判定し、
     復号対象となる画像が参照画像である場合、適用するフィルタとして、復号対象となる画像が参照画像でない場合よりも画質向上効果の高いフィルタを決定することを特徴とする請求項2に記載の画像復号装置。
  5.  上記フィルタ適用決定手段は、上記所定の指標として、下位レイヤで使用する符号化方式を判定し、
     符号化方式に応じたフィルタを適用するフィルタとして決定することを特徴とする請求項2に記載の画像復号装置。
  6.  上記フィルタ適用決定手段は、所定の指標に関する処理量に応じて、適用するフィルタを決定することを特徴とする請求項1に記載の画像復号装置。
  7.  空間スケーラビリティの場合に下位レイヤの画像を上位レイヤの画像にアップサンプリングするアップサンプリング手段を備え、
     上記フィルタ適用決定手段は、上記所定の指標として、アップサンプリング手段およびフィルタ適用手段の適用順序を判定し、
     適用するフィルタとして、上記適用順序に応じたフィルタを決定することを特徴とする請求項6に記載の画像復号装置。
  8.  上記フィルタ適用決定手段は、上記所定の指標として解像度を判定し、
     解像度が低解像度である場合、適用するフィルタとして、復号対象となる画像が高解像度である場合よりも、フィルタ処理量が多いフィルタを決定することを特徴とする請求項6に記載の画像復号装置。
  9.  上記フィルタ適用決定手段は、フィルタ処理量に対する制約に応じて、適用するフィルタを決定することを特徴とする請求項1から8の何れか1項に記載の画像復号装置。
  10.  上記フィルタ適用手段が適用するフィルタのパラメータは、上記下位レイヤからの復号画像における上記フィルタの適用対象となる領域が含まれる単位領域毎に、当該単位領域と対応する上記上位レイヤの単位領域と一対となって該上位レイヤの符号化データに格納されていることを特徴とする請求項1に記載の画像復号装置。
  11.  単位領域を復号する際に用いられるパラメータであって、複数の単位領域で共通して用いられるパラメータを、符号化データの中で当該複数の単位領域のうちの最も前にある単位領域よりも前に集合させた群を共通群とし、
     上記フィルタ適用手段が適用するフィルタのパラメータは、上記下位レイヤからの復号画像における上記フィルタの適用対象となる領域が含まれる単位領域と対応する上記上位レイヤの単位領域を復号する際に用いられるパラメータが格納されている上記上位レイヤの上記共通群に格納されていることを特徴とする請求項1に記載の画像復号装置。
  12.  上記共通群は、スライスヘッダであることを特徴とする請求項11に記載の画像復号装置。
  13.  上記共通群は、APS(adaptation parameter set)であることを特徴とする請求項11に記載の画像復号装置。
  14.  上記フィルタ適用手段は、下位レイヤからの復号画像のうち、同じ画像内の画素を用いて予測画像を生成するイントラ予測によって生成された予測画像を用いて復元された復号画像の領域についてのみ、フィルタを適用することを特徴とする請求項1に記載の画像復号装置。
  15.  原画像から下位レイヤからの復号画像を参照して生成した上位レイヤの予測画像を減算して得られる残差を階層符号化して上位レイヤの符号化データを生成する画像符号化装置であって、
     上記上位レイヤから参照する上記下位レイヤからの復号画像に対して適用するフィルタを決定するフィルタ適用決定手段と、
     参照する上記下位レイヤからの復号画像に対して、上記フィルタ適用決定手段が決定したフィルタを適用するフィルタ適用手段と、
    を備えていることを特徴とする画像符号化装置。
PCT/JP2013/061589 2012-04-24 2013-04-19 画像復号装置および画像符号化装置 WO2013161690A1 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2012099295 2012-04-24
JP2012-099295 2012-04-24
JP2012-149983 2012-07-03
JP2012149983A JP2013243636A (ja) 2012-04-24 2012-07-03 画像復号装置および画像符号化装置

Publications (1)

Publication Number Publication Date
WO2013161690A1 true WO2013161690A1 (ja) 2013-10-31

Family

ID=49483011

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/061589 WO2013161690A1 (ja) 2012-04-24 2013-04-19 画像復号装置および画像符号化装置

Country Status (2)

Country Link
JP (1) JP2013243636A (ja)
WO (1) WO2013161690A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014050554A1 (ja) * 2012-09-28 2014-04-03 シャープ株式会社 画像復号装置、および画像符号化装置

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150237376A1 (en) * 2012-09-28 2015-08-20 Samsung Electronics Co., Ltd. Method for sao compensation for encoding inter-layer prediction error and apparatus therefor
JP2021170728A (ja) * 2020-04-15 2021-10-28 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co., Ltd 装置、画像処理装置、撮像装置、移動体、プログラム及び方法
JP2021170727A (ja) * 2020-04-15 2021-10-28 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co., Ltd 装置、画像処理装置、撮像装置、移動体、プログラム及び方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007111292A1 (ja) * 2006-03-27 2007-10-04 Matsushita Electric Industrial Co., Ltd. 画像符号化装置および画像復号化装置
JP2008533908A (ja) * 2005-03-18 2008-08-21 シャープ株式会社 画像アップサンプリング方法およびシステム
WO2012050021A1 (ja) * 2010-10-14 2012-04-19 ソニー株式会社 画像処理装置および方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008533908A (ja) * 2005-03-18 2008-08-21 シャープ株式会社 画像アップサンプリング方法およびシステム
WO2007111292A1 (ja) * 2006-03-27 2007-10-04 Matsushita Electric Industrial Co., Ltd. 画像符号化装置および画像復号化装置
WO2012050021A1 (ja) * 2010-10-14 2012-04-19 ソニー株式会社 画像処理装置および方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DANNY HONG ET AL.: "Scalability Support in HEVC", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 JCTVC-F290, ITU-T, 13 July 2011 (2011-07-13), pages 1 - 15 *
HYOMIN CHOI ET AL.: "Scalable structures and inter-layer predictions for HEVC scalable extension", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IECJTC1/SC29/WG11 JCTVC-F096, ITU-T, 18 July 2011 (2011-07-18), pages 1 - 15 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014050554A1 (ja) * 2012-09-28 2014-04-03 シャープ株式会社 画像復号装置、および画像符号化装置

Also Published As

Publication number Publication date
JP2013243636A (ja) 2013-12-05

Similar Documents

Publication Publication Date Title
JP6284661B2 (ja) 画像符号化装置、および画像符号化方法
JP6456535B2 (ja) 画像符号化装置、画像符号化方法および記録媒体
US10136151B2 (en) Image decoding device and image decoding method
US10841600B2 (en) Image decoding device, an image encoding device and a decoding method
JP6352248B2 (ja) 画像復号装置、および画像符号化装置
US20140198846A1 (en) Device and method for scalable coding of video information
KR20160022345A (ko) 인터-컴포넌트 필터링
KR20180017019A (ko) 스케일러블 비디오 코딩에서의 컬러 개머트 스케일러빌리티 파라미터들 및 테이블들의 도출
WO2015095361A1 (en) Signaling partition information for 3d lookup table for color gamut scalability in multi-layer video coding
WO2013161690A1 (ja) 画像復号装置および画像符号化装置
WO2014007131A1 (ja) 画像復号装置、および画像符号化装置
WO2014104242A1 (ja) 画像復号装置、および画像符号化装置
JP2014013975A (ja) 画像復号装置、符号化データのデータ構造、および画像符号化装置
JP2014176039A (ja) 画像復号装置、および画像符号化装置
WO2013161689A1 (ja) 動画像復号装置、および動画像符号化装置
WO2014050554A1 (ja) 画像復号装置、および画像符号化装置
JP2014082729A (ja) 画像復号装置、および画像符号化装置
JP2014013976A (ja) 画像復号装置、および画像符号化装置
JP2015076807A (ja) 画像復号装置、画像符号化装置、および符号化データのデータ構造

Legal Events

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

Ref document number: 13782185

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13782185

Country of ref document: EP

Kind code of ref document: A1