WO2013129617A1 - 画像処理装置および方法 - Google Patents

画像処理装置および方法 Download PDF

Info

Publication number
WO2013129617A1
WO2013129617A1 PCT/JP2013/055542 JP2013055542W WO2013129617A1 WO 2013129617 A1 WO2013129617 A1 WO 2013129617A1 JP 2013055542 W JP2013055542 W JP 2013055542W WO 2013129617 A1 WO2013129617 A1 WO 2013129617A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
coefficient
matrix
data
image
Prior art date
Application number
PCT/JP2013/055542
Other languages
English (en)
French (fr)
Inventor
田中 潤一
義崇 森上
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to JP2014502389A priority Critical patent/JP5904268B2/ja
Priority to CN201380010491.1A priority patent/CN104170391B/zh
Priority to US14/375,288 priority patent/US10277898B2/en
Publication of WO2013129617A1 publication Critical patent/WO2013129617A1/ja
Priority to US16/258,685 priority patent/US10404985B2/en

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/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/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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/124Quantisation
    • 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
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/18Methods 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 set of transform coefficients
    • 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/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Definitions

  • the present disclosure relates to an image processing apparatus and method.
  • quantization of image data is different for each component of orthogonal transform coefficients when quantization is performed. Steps can be used.
  • the quantization step for each component of the orthogonal transformation coefficient may be set based on a quantization matrix (also referred to as a scaling list) defined with a size equal to the unit of orthogonal transformation and a reference step value.
  • the specified values of the quantization matrix are prepared for each of the prediction mode (intra prediction mode, inter prediction mode) and the size of transform unit (4x4, 8x8). Also, the user can specify a unique quantization matrix different from the default value in the sequence parameter set or the picture parameter set. If a quantization matrix is not used, the quantization steps used during quantization will be equal for all components.
  • HEVC High Efficiency Video Coding
  • CU Coding Unit
  • SCU Smallest Coding Unit
  • one coding unit may be divided into one or more orthogonal transform units, ie, one or more transform units (TUs (Transform Units)).
  • TUs Transform Units
  • any of 4x4, 8x8, 16x16 and 32x32 can be used.
  • the DC component (also referred to as a direct current component) is different from the AC component (also referred to as an alternating current component) for the purpose of reduction of code amount in transmission. Transmitted as That is, the DC component of the scaling list is transmitted as a DC coefficient (also referred to as a DC coefficient) different from each AC coefficient (also referred to as an AC coefficient) that is an AC component of the scaling list.
  • a constant for example, 8 is subtracted from the value of the DC coefficient to reduce the code amount during transmission, and the value (scaling_list_dc_coef_minus8) is signed exponential golomb coding. It is proposed to be made to be (see, for example, Non-Patent Document 1).
  • This indication is proposed in view of such a situation, and it aims at enabling it to control a reduction of coding efficiency.
  • One aspect of the present disclosure relates to a decoding unit that decodes encoded data to generate quantized data, and quantization matrix reference data that identifies a reference destination of the quantization matrix when using a copy mode that copies the quantization matrix.
  • an inverse quantization unit that inversely quantizes the quantized data.
  • the inverse quantization unit parses a syntax in which semantics are set so as to refer to the default quantization matrix when the quantization matrix reference data matches the quantization matrix identification data, and performs the quantization. Data can be dequantized.
  • the inverse quantization unit parses a syntax in which the semantics is set so as to refer to a default quantization matrix when the difference between the quantization matrix reference data and the quantization matrix identification data is 0, Quantized data can be dequantized.
  • the apparatus may further include an up-conversion unit that up-converts the quantization matrix, and the inverse quantization unit may inverse-quantize the quantized data using the quantization matrix up-converted by the up-conversion unit. .
  • the up-conversion unit up-converts the quantization matrix limited to the transmission size or less, which is the maximum size allowed for transmission, by performing nearest neighbor interpolation processing on matrix elements of the quantization matrix. be able to.
  • the transmission size is 8x8, and the upconversion unit can upconvert to a 16x16 sized quantization matrix by performing the nearest neighbor interpolation process on matrix elements of the 8x8 sized quantization matrix. .
  • the up-conversion unit can perform up-conversion to a 32 ⁇ 32 size quantization matrix by performing the nearest neighbor interpolation process on matrix elements of the 8 ⁇ 8 size quantization matrix.
  • a coding unit which is a processing unit at the time of decoding processing
  • a transform unit which is a processing unit at the time of conversion processing
  • the upconversion unit upconverts the quantization matrix from the transmission size, which is the maximum size allowed for transmission, to a transform unit size, which is a processing unit for performing inverse quantization. be able to.
  • Another aspect of the present disclosure is also directed to quantization matrix reference data for decoding a coded data to generate quantization data, and identifying a reference destination of the quantization matrix when using a copy mode for copying the quantization matrix. It is generated by the decoding using a default quantization matrix corresponding to the same size as the block size which is a processing unit in inverse quantization when the quantization matrix identification data for identifying the quantization matrix are identical. This is an image processing method for inversely quantizing quantized data.
  • quantization matrix reference data and a quantum for identifying a reference destination of a quantization matrix when a coded data is decoded to generate quantization data and a copy mode for copying the quantization matrix is used If there is a match with the quantization matrix identification data for identifying the quantization matrix, the default quantization matrix corresponding to the same size as the block size which is the processing unit in inverse quantization is used, and the quantum generated by the decoding is used Data are dequantized.
  • an image can be processed.
  • reduction in coding efficiency can be suppressed.
  • FIG. 7 is a diagram illustrating an example of semantics regarding a default matrix. It is a figure which shows the example of the syntax regarding a scaling list
  • FIG. 18 is a diagram illustrating an example of syntax relating to a scaling list to which the present technology is applied. It is a figure which shows the example of the syntax of the conventional scaling list
  • FIG. 41 illustrates the further another example of the flow of reverse DPCM process.
  • FIG. 41 illustrates the further another example of the syntax of a scaling list.
  • FIG. 41 illustrates the further another example of the syntax of a scaling list.
  • FIG. 24 is a diagram illustrating an example main configuration of a multi-viewpoint image decoding device to which the present technology is applied. It is a figure which shows the example of a hierarchy image coding system. It is a figure which shows the main structural examples of the hierarchy image coding apparatus to which this technique is applied. It is a figure which shows the main structural examples of the hierarchy image decoding apparatus to which this technique is applied. It is a block diagram showing an example of main composition of a computer. It is a block diagram which shows the main structural examples of a television apparatus.
  • the present technology relates to encoding / decoding of a scaling list used for quantization / inverse quantization performed in encoding / decoding of image data.
  • quantization or inverse quantization of coefficient data may be performed. Such quantization / inverse quantization is performed for each block of a predetermined size, and a scaling list (quantization matrix) of a size corresponding to the block size is used. For example, in the case of HEVC (High Efficiency Video Coding), quantization (inverse quantization) is performed with a size of 4x4, 8x8, 16x16, 32x32 and so on. For HEVC, 4x4 and 8x8 sized quantization matrices are provided.
  • FIG. 1 shows an example of an 8x8 scaling list.
  • the scaling list consists of DC coefficients and AC coefficients.
  • the DC coefficient consisting of one value is the (0, 0) coefficient of the quantization matrix, and corresponds to the DC coefficient of discrete cosine transform (DCT (Discrete Cosine Transform)).
  • DCT discrete Cosine Transform
  • AC coefficients are coefficients other than the (0, 0) coefficient of the quantization matrix, and correspond to coefficients other than DC coefficients of the DCT.
  • AC coefficients are represented as a matrix.
  • an AC coefficient when it includes a (0, 0) coefficient (hereinafter, also referred to as an AC coefficient (0, 0)), when it is used for quantization / inverse quantization, the beginning of this quantization matrix
  • the (0, 0) coefficient which is a coefficient located at, is replaced with a DC coefficient.
  • the DC coefficient is also referred to as the permutation coefficient.
  • the AC coefficients form an 8 ⁇ 8 matrix.
  • FIG. 2 shows an example of how an 8x8 scaling list is upconverted to 16x16.
  • nearest neighbor interpolation processing is applied to up-conversion of the scaling list. Details of the nearest neighbor interpolation processing will be described later with reference to, for example, FIG.
  • up-conversion is performed on the AC coefficients of the scaling list. Then, the (0, 0) coefficient of this up-converted AC coefficient is replaced with the DC coefficient.
  • the scaling list used for quantization in encoding is also used for dequantization in decoding (decoder). That is, the scaling list is transmitted from the encoding side (encoder) to the decoding side (decoder) side.
  • An example of the situation is shown in FIG.
  • two types of 8x8 scaling lists are transmitted, one for upconversion to 16x16 size and one for upconversion to 32x32 size as described above.
  • a 4x4 scaling list is also transmitted.
  • the AC coefficients of the 8x8 scaling list for upconversion to the 16x16 size transmitted in this way are upconverted to the 16x16 size by nearest neighbor interpolation processing as described above at the decoding side (decoder), )
  • the coefficients are replaced by DC coefficients and used for dequantization of 16x16 sized blocks.
  • the AC coefficients of the 8x8 scaling list for upconversion to the 32x32 size transmitted in this way are upconverted to the 32x32 size by nearest neighbor interpolation processing as described above at the decoding side (decoder). 0,0) coefficients are replaced by DC coefficients and used for dequantization of 32x32 sized blocks.
  • each difference is transmitted after being signed exponential golomb coding.
  • the difference of (1) is the difference between the AC coefficient (0, 0) and the initial value "8"
  • the value of this AC coefficient (0, 0) is close to the initial value "8" If the value is not a value, the code amount may increase.
  • the value of the AC coefficient (0, 0) is “12”, and the value “4” is exponentially Golomb-encoded as the difference of (1) and transmitted. That is, 7 bits are required for transmission of the difference of (1), and there is a possibility that the coding efficiency may be reduced accordingly. If the value of the difference of (1) is larger, the coding efficiency may be further reduced. This is the same for 8x8 scaling lists for upconversion to 16x16 size and 8x8 scaling lists for upconversion to 32x32 size.
  • the quantization matrix uses smaller values for the DC coefficient and its peripheral coefficients.
  • quantization errors may be subjectively noticeable.
  • continuous values are applied to the DC coefficient and its surrounding coefficients.
  • the (0, 1) coefficient, the (1.0) coefficient, and the (1.1) coefficient after up-conversion correspond to the AC coefficient (0, 0) before the up-conversion. Also, the (0, 0) coefficient after up conversion corresponds to the DC coefficient.
  • the values of the AC coefficient (0, 0) and the values of the DC coefficient are close to each other.
  • the default matrices for MPEG2, AVC, and HEVC are such values.
  • the value of the DC coefficient is “12” which is the same as the AC coefficient (0, 0). Therefore, the difference of (3), that is, the value of the difference between the DC coefficient and the initial value “8” is also “4”.
  • each difference is exponent Golomb encoded and transmitted as an exponent Golomb code.
  • the transmission destination of each difference transmitted as the Exponential Golomb code when receiving the Exponential Golomb code, decodes the received Exponential Golomb code, and the obtained each difference is the reverse process of (1) to (3) described above. To determine each coefficient (DC coefficient and AC coefficient).
  • DPCM of AC coefficient (0, 0) and DC coefficient> The scaling list is transmitted after being differential pulse code modulation (DPCM).
  • DPCM differential pulse code modulation
  • the AC coefficient and the DC coefficient are DPCM independently of each other, whereas one of the features of the present technology is the AC coefficient (0, 0) as in the example of FIG.
  • the DC coefficient also referred to as a substitution difference coefficient
  • the AC coefficient (0, 0) and the DC coefficient have close values. Therefore, the difference between the AC coefficient (0, 0) and the DC coefficient is likely to be smaller than the difference between the AC coefficient (0, 0) and the initial value "8". That is, the code amount is likely to be reduced if the present technology is applied to transmit the permuted difference coefficient, which is the difference between the AC coefficient (0, 0) and the DC coefficient.
  • the value of the difference of (1) is "0".
  • FIG. 6 is a diagram showing an example of signed exponential golomb coding.
  • the code length of the Exponential Golomb code of value "4" is 7 bits, while the code length of the Exponential Golomb code of value "0" is 1 bit. That is, the code amount can be reduced by 6 bits in the case of FIG. 5 as compared to the case of FIG.
  • FIG. 7 shows an example of the syntax of the scaling list.
  • the syntax is as shown in the example of A of FIG. That is, the difference between the AC coefficient (0, 0) and the initial value "8" and the difference between the AC coefficients (scaling_list_delta_coef) are transmitted, and thereafter, the difference between the DC coefficient and the initial value "8" (Scaling_list_dc_coef_minus8) is transmitted.
  • one of the characteristics of the present technology is that the difference between the DC coefficient and the AC coefficient (0, 0) and the difference between the AC coefficients are arranged in this order and collectively transmitted. That is, as shown in FIG. 5, the DC coefficient and each AC coefficient in a predetermined scan order are arranged in one dimension, and after the difference between the DC coefficient and the initial value “8” is determined, the coefficient sequence is The difference between adjacent coefficients of is obtained. Then, the obtained differences (differences between the coefficients) are collectively transmitted in a state in which the obtained differences are one-dimensionally arranged.
  • the syntax in this case is as in the example of B in FIG. That is, first, the difference (scaling_list_dc_coef_minus8) between the DC coefficient and the initial value “8” is transmitted, and then the difference between the DC coefficient and the AC coefficient (0, 0) and the difference between the AC coefficients (scaling_list_delta_coef) It is transmitted. That is, the DC coefficient and the AC coefficient are collectively encoded and transmitted.
  • the decoding side (decoder) of the transmission destination can decode in the order of transmission to obtain the respective coefficients. That is, the DPCM scaled list can be easily decoded. More specifically, the processing load can be reduced. In addition, since the rearrangement of differences is not necessary, the buffer capacity can be reduced. Furthermore, since decoding can be performed in the order of supply of each difference, an increase in processing time can be suppressed.
  • FIG. 8 is a diagram illustrating an example of syntax relating to transmission of a default matrix.
  • the first coefficient DC coefficient
  • the value of the difference scaling_list_dc_coef_minus 8
  • the code length of the Exponential Golomb code of the value "-8" is 9 bits. That is, there is a possibility that the coding efficiency is significantly reduced.
  • it is desirable for the High Level Syntax to be as small as one bit.
  • the syntax is also complicated, which may increase the processing load.
  • scaling_list_pred_matrix_id_delta instead of setting the first coefficient to "0", the semantics of scaling_list_pred_matrix_id_delta is changed. More specifically, the semantics of scaling_list_pred_matrix_id_delta are changed from A in FIG. 9 to B in FIG. That is, conventionally, as shown in A of FIG. 9, when this value is “0”, it is indicated to refer to the immediately preceding matrix (MatrixID-1). As shown in B of FIG. 9, when the value of scaling_list_pred_matrix_id_delta is “0”, it is assumed that a default matrix is meant.
  • the initial value of scaling_list_delta_coef is set as the DC coefficient by substituting the DC coefficient calculated from scaling_list_dc_coef_minus8 into nextCoef.
  • scaling_list_pred_matrix_id_delta is conventionally expressed as “+1” as it is, and the value "0" is treated specially.
  • the number of lines of syntax related to the scaling list can be significantly reduced. Also, you can omit two variables, UseDefaultScalingMatrix and stopNow, which you must have as intermediate data. Furthermore, branching within the for loop as shown in FIG. 10 can be eliminated. Therefore, the processing load on encoding / decoding of the scaling list can be reduced.
  • the encoding / decoding of the scaling list as described above is performed. That is, the image encoding device 10 described later with reference to FIG. 14 encodes and transmits the scaling list, and the image decoding device 300 described later with reference to FIG. 22 receives the encoded scaling list, and decodes the scaling list. Do.
  • the coding of the scaling list is performed by the DPCM unit 192 of the entropy coding unit 164 (FIG. 16) of the matrix processing unit 150 (FIG. 15) of the orthogonal transformation and quantization unit 14 (FIG. 14) of the image coding device 10. And expG section 193 (both as shown in FIG. 16). That is, the DPCM unit 192 obtains the difference between each coefficient (DC coefficient or AC coefficient) of the scaling list, and the expG unit 193 performs exponential Golomb coding on each difference.
  • the DPCM unit 192 has, for example, a configuration example as shown in FIG. 19, and DPCM as in the example shown in FIG. It is sufficient to carry out the processing. Also, the semantics may be as in the example of C in FIG. 44 or C in FIG.
  • the DPCM unit 192 and the expG unit 193 may be used, and the others may have any configuration.
  • a processing unit that performs up-conversion of the scaling list, a processing unit that performs quantization using the scaling list, and the like may be provided with necessary configurations according to the embodiment.
  • decoding of the scaling list is performed by the expG unit of the entropy decoding unit 533 (FIG. 24) of the matrix generation unit 410 (FIG. 23) of the inverse quantization / inverse orthogonal transform unit 313 (FIG. 22) of the image decoding apparatus 300. And 551 (both in FIG. 24). That is, in the expG unit 551, the exponent Golomb code is decoded to obtain a difference, and in the inverse DPCM unit 552, each coefficient (DC coefficient or AC coefficient) of the scaling list is obtained from each difference.
  • the inverse DPCM unit 552 has, for example, a configuration example as shown in FIG. 26, and is shown in FIG. Inverse DPCM processing as in the example may be performed. Also, the semantics may be as in the example of C in FIG. 44 or C in FIG.
  • the expG unit 551 and the inverse DPCM unit 552 may be used, and the others may have any configuration.
  • a processing unit that performs up-conversion of the scaling list, a processing unit that performs inverse quantization using the scaling list, and the like may be provided with necessary configurations according to the embodiment.
  • a of FIG. 12 is the syntax (Scaling list data syntax) regarding scaling list data
  • B of FIG. 12 is the syntax (Scaling list syntax) of the scaling list.
  • Scaling list data syntax As shown in A of FIG. 12, in the syntax related to scaling list data, a flag indicating whether or not a scaling list is provided (scaling_list_present_flag), a flag indicating whether or not it is a copy mode (scaling_list_pred_mode_flag), a copy mode In this case, it is determined that information (scaling_list_pred_matrix_id_delta) or the like indicating which scaling list is to be read is read.
  • (1-2) Scaling list syntax As shown in B of FIG. 12, in the syntax of the scaling list, a DC coefficient (scaling_list_dc_coef_minus8) obtained by subtracting a constant (for example 8) from the value, a difference value of AC coefficients (scaling_list_delta_coef), etc. are read It is decided that coefficients and AC coefficients are restored.
  • a DC coefficient scaling_list_dc_coef_minus8 obtained by subtracting a constant (for example 8) from the value, a difference value of AC coefficients (scaling_list_delta_coef), etc.
  • this difference value is information for calculating the DC coefficient, that is, substantially equivalent to the DC coefficient.
  • the difference is smaller than the DC coefficient itself. That is, the code amount is reduced by transmitting this difference value instead of the DC coefficient.
  • the size of the scaling list (quantization matrix) is 8 ⁇ 8.
  • the size of the scaling list is 8 ⁇ 8.
  • DC coefficients may be considered as the first element of an 8 ⁇ 8 matrix (AC coefficients), and may be transmitted by DPCM (Differential Pulse Code Modulation: differential pulse code modulation) using 65 coefficients (method 1).
  • DPCM Different Pulse Code Modulation: differential pulse code modulation
  • the difference between the predetermined constant and the DC coefficient is calculated, which is taken as the first coefficient of DPCM data.
  • the difference between the DC coefficient and the first AC coefficient is calculated, which is taken as the second coefficient of DPCM data.
  • the difference between the first AC coefficient and the second AC coefficient is calculated, which is taken as the third coefficient of DPCM data.
  • the difference with the AC coefficient one before the same is similarly calculated, and is used as the fourth and subsequent coefficients of DPCM data.
  • DPCM data generated in this way is transmitted sequentially from the first coefficient.
  • the compression rate can be further improved when the (0, 0) coefficient (AC coefficient) of the 8 ⁇ 8 matrix and the DC coefficient are close to each other.
  • AC coefficient also referred to as AC coefficients
  • the image decoding apparatus can process DC coefficients in the same manner as AC coefficients (also referred to as AC coefficients) which are coefficients of AC components (AC components).
  • AC coefficients also referred to as AC coefficients
  • the image decoding apparatus to which this coefficient group is transmitted needs to treat only the first coefficient as special. That is, the image decoding apparatus needs to extract a DC coefficient from the AC coefficient group.
  • FIG. 14 is a block diagram showing an example of the configuration of the image encoding device 10 according to an embodiment of the present disclosure.
  • the image coding apparatus 10 shown in FIG. 14 is an image processing apparatus to which the present technology is applied, which codes input image data and outputs the obtained coded data.
  • the image coding apparatus 10 includes an analog to digital (A / D) converter 11 (A / D), a rearrangement buffer 12, a subtractor 13, an orthogonal transform / quantization unit 14, and lossless encoding.
  • Unit 16 storage buffer 17, rate control unit 18, inverse quantization unit 21, inverse orthogonal transformation unit 22, addition unit 23, deblock filter 24, frame memory 25, selector 26, intra prediction unit 30, motion search unit 40, And a mode selection unit 50.
  • the A / D converter 11 converts an image signal input in an analog format into image data in a digital format, and outputs a series of digital image data to the sorting buffer 12.
  • the rearrangement buffer 12 rearranges the images included in the series of image data input from the A / D converter 11.
  • the reordering buffer 12 reorders the images according to the GOP (Group of Pictures) structure involved in the encoding process, and then sends the reordered image data to the subtraction unit 13, the intra prediction unit 30, and the motion search unit 40. Output.
  • GOP Group of Pictures
  • the subtraction unit 13 is supplied with the image data input from the reordering buffer 12 and predicted image data selected by the mode selection unit 50 described later.
  • Subtraction unit 13 calculates prediction error data, which is the difference between the image data input from reordering buffer 12 and the predicted image data input from mode selection unit 50, and performs orthogonal transform and quantization on the calculated prediction error data. Output to unit 14.
  • the orthogonal transformation / quantization unit 14 performs orthogonal transformation and quantization on the prediction error data input from the subtraction unit 13 and converts the quantized transformation coefficient data (hereinafter referred to as quantization data) into the lossless encoding unit 16 and It is output to the inverse quantization unit 21.
  • quantization data quantized transformation coefficient data
  • the bit rate of the quantized data output from the orthogonal transform / quantization unit 14 is controlled based on the rate control signal from the rate control unit 18. The detailed configuration of the orthogonal transform / quantization unit 14 will be further described later.
  • the lossless encoding unit 16 is selected by the mode selection unit 50 as well as the quantization data input from the orthogonal transformation / quantization unit 14, information for generating a scaling list (quantization matrix) on the decoding side, and Information on intra prediction or inter prediction is provided.
  • the information on intra prediction may include, for example, prediction mode information indicating an optimal intra prediction mode for each block.
  • information on inter prediction may include, for example, prediction mode information for prediction of a motion vector for each block, differential motion vector information, reference image information, and the like.
  • the information for generating the scaling list at the decoding side may include identification information indicating the maximum size of the scaling list to be transmitted (or the difference matrix between the scaling list (quantization matrix) and its prediction matrix).
  • the lossless encoding unit 16 generates an encoded stream by performing lossless encoding processing on the quantized data.
  • the lossless coding by the lossless coding unit 16 may be, for example, variable length coding or arithmetic coding.
  • the lossless encoding unit 16 multiplexes the information for generating the scaling list in the header (for example, the sequence parameter set and the picture parameter set) of the encoded stream.
  • the lossless encoding unit 16 multiplexes the information related to intra prediction or inter prediction described above in the header of the encoded stream. Then, the lossless encoding unit 16 outputs the generated encoded stream to the accumulation buffer 17.
  • the accumulation buffer 17 temporarily accumulates the encoded stream input from the lossless encoding unit 16 using a storage medium such as a semiconductor memory. Then, the accumulation buffer 17 outputs the accumulated encoded stream at a rate according to the band of the transmission path (or the output line from the image encoding device 10).
  • the rate control unit 18 monitors the free space of the accumulation buffer 17. Then, the rate control unit 18 generates a rate control signal according to the free space of the accumulation buffer 17, and outputs the generated rate control signal to the orthogonal transform / quantization unit 14. For example, when the free space of the accumulation buffer 17 is small, the rate control unit 18 generates a rate control signal for reducing the bit rate of the quantized data. Also, for example, when the free space of the accumulation buffer 17 is sufficiently large, the rate control unit 18 generates a rate control signal for increasing the bit rate of the quantized data.
  • the inverse quantization unit 21 performs inverse quantization processing on the quantized data input from the orthogonal transformation / quantization unit 14. Then, the inverse quantization unit 21 outputs the transform coefficient data acquired by the inverse quantization process to the inverse orthogonal transformation unit 22.
  • the inverse orthogonal transform unit 22 restores prediction error data by performing inverse orthogonal transform processing on the transform coefficient data input from the inverse quantization unit 21. Then, the inverse orthogonal transform unit 22 outputs the restored prediction error data to the addition unit 23.
  • the addition unit 23 generates decoded image data by adding the restored prediction error data input from the inverse orthogonal transform unit 22 and the predicted image data input from the mode selection unit 50. Then, the adding unit 23 outputs the generated decoded image data to the deblocking filter 24 and the frame memory 25.
  • the deblocking filter 24 performs a filtering process to reduce block distortion that occurs during image coding.
  • the deblocking filter 24 removes (or at least reduces) block distortion by filtering the decoded image data input from the adding unit 23, and outputs the decoded image data after filtering to the frame memory 25.
  • the frame memory 25 stores the decoded image data input from the adding unit 23 and the decoded image data after filtering input from the deblocking filter 24 using a storage medium.
  • the selector 26 reads the decoded image data before filtering used for intra prediction from the frame memory 25 and supplies the read decoded image data to the intra prediction unit 30 as reference image data. Further, the selector 26 reads the decoded image data after filtering used for inter prediction from the frame memory 25 and supplies the read decoded image data to the motion search unit 40 as reference image data.
  • the intra prediction unit 30 performs intra prediction processing in each intra prediction mode based on the image data to be encoded input from the reordering buffer 12 and the decoded image data supplied via the selector 26. For example, the intra prediction unit 30 evaluates the prediction result in each intra prediction mode using a predetermined cost function. Then, the intra prediction unit 30 selects the intra prediction mode in which the cost function value is the smallest, that is, the intra prediction mode in which the compression rate is the highest, as the optimal intra prediction mode. Furthermore, the intra prediction unit 30 outputs, to the mode selection unit 50, prediction mode information indicating the optimal intra prediction mode, predicted image data, and information related to intra prediction such as a cost function value.
  • the motion search unit 40 performs inter prediction processing (inter-frame prediction processing) based on the image data to be encoded input from the reordering buffer 12 and the decoded image data supplied via the selector 26. For example, the motion search unit 40 evaluates the prediction result in each prediction mode using a predetermined cost function. Next, the motion search unit 40 selects the prediction mode in which the cost function value is the smallest, that is, the prediction mode in which the compression rate is the highest, as the optimal prediction mode. The motion search unit 40 also generates predicted image data according to the optimal prediction mode. Then, the motion search unit 40 outputs, to the mode selection unit 50, information on inter prediction including prediction mode information representing the selected optimum prediction mode, prediction image data, and information on inter prediction such as cost function value. .
  • inter prediction processing inter-frame prediction processing
  • the mode selection unit 50 compares the cost function value for intra prediction input from the intra prediction unit 30 with the cost function value for inter prediction input from the motion search unit 40. Then, the mode selection unit 50 selects a prediction method having a smaller cost function value from intra prediction and inter prediction. When intra prediction is selected, the mode selection unit 50 outputs information on intra prediction to the lossless encoding unit 16 and outputs predicted image data to the subtraction unit 13 and the addition unit 23. In addition, when the inter prediction is selected, the mode selection unit 50 outputs the above-described information on inter prediction to the lossless encoding unit 16 and outputs prediction image data to the subtraction unit 13 and the addition unit 23.
  • FIG. 15 is a block diagram showing an example of a detailed configuration of the orthogonal transform / quantization unit 14 of the image coding device 10 shown in FIG.
  • the orthogonal transform / quantization unit 14 includes a selection unit 110, an orthogonal transform unit 120, a quantization unit 130, a scaling list buffer 140, and a matrix processing unit 150.
  • the selection unit 110 selects a transform unit (TU) used for orthogonal transform of image data to be encoded, from a plurality of transform units having different sizes.
  • candidates for the size of conversion unit that can be selected by the selection unit 110 include 4x4 and 8x8 in H.264 / AVC (Advanced Video Coding), and 4x4, 8x8, 16x16 and 32x32 in High Efficiency Video Coding (HEVC).
  • HEVC High Efficiency Video Coding
  • the selection unit 110 may select one of the conversion units according to, for example, the size or the image quality of the image to be encoded, the performance of the image encoding device 10, or the like.
  • the selection of transform units by the selection unit 110 may be hand-tuned by the user who develops the image coding apparatus 10. Then, the selection unit 110 outputs information for specifying the size of the selected conversion unit to the orthogonal transformation unit 120, the quantization unit 130, the lossless encoding unit 16, and the inverse quantization unit 21.
  • the orthogonal transform unit 120 orthogonally transforms the image data (that is, prediction error data) supplied from the subtraction unit 13 in the transform unit selected by the selection unit 110.
  • the orthogonal transformation performed by the orthogonal transformation unit 120 may be, for example, discrete cosine transformation (DCT) or Karhunen-Loeve transformation. Then, the orthogonal transform unit 120 outputs transform coefficient data acquired by the orthogonal transform process to the quantization unit 130.
  • DCT discrete cosine transformation
  • Karhunen-Loeve transformation Karhunen-Loeve transformation
  • Quantizer 130 quantizes the transform coefficient data generated by the orthogonal transform unit 120 using the scaling list corresponding to the transform unit selected by the selection unit 110. Further, the quantization unit 130 changes the bit rate of the output quantized data by switching the quantization step size based on the rate control signal from the rate control unit 18.
  • the quantization unit 130 causes the scaling list buffer 140 to store sets of scaling lists respectively corresponding to a plurality of transform units that can be selected by the selection unit 110. For example, when there are four types of conversion unit candidates of 4x4, 8x8, 16x16, and 32x32 as in HEVC, a set of four types of scaling lists corresponding to these four types of scaling units is the scaling list buffer 140 Can be stored. In addition, when a default scaling list is used for a certain size, only the flag indicating that the default scaling list is used (do not use the user defined scaling list) is associated with the size and the scaling list is used. It may be stored by the buffer 140.
  • the set of scaling lists that may be used by the quantizer 130 may typically be set for each sequence of the coded stream. Also, the quantization unit 130 may update the set of scaling lists set for each sequence for each picture. Information to control the setting and updating of such a set of scaling lists may, for example, be inserted into the sequence parameter set and the picture parameter set.
  • the scaling list buffer 140 temporarily stores a set of scaling lists respectively corresponding to a plurality of conversion units that can be selected by the selection unit 110 using a storage medium such as a semiconductor memory.
  • the set of scaling lists stored by the scaling list buffer 140 is referred to in processing by the matrix processing unit 150 described below.
  • the matrix processing unit 150 encodes the scaling list used for encoding (quantization). Then, the encoded data of the scaling list generated by the matrix processing unit 150 (hereinafter referred to as scaling list encoded data) may be output to the lossless encoding unit 16 and inserted into the header of the encoded stream.
  • FIG. 16 is a block diagram showing an example of a more detailed configuration of the matrix processing unit 150.
  • the matrix processing unit 150 includes a prediction unit 161, a difference matrix generation unit 162, a difference matrix size conversion unit 163, an entropy coding unit 164, a decoding unit 165, and an output unit 166.
  • the predictor 161 generates a prediction matrix. As illustrated in FIG. 16, the prediction unit 161 includes a copying unit 171 and a prediction matrix generating unit 172.
  • the copying unit 171 duplicates the scaling list transmitted in the past, and uses it as a prediction matrix (prediction of the scaling list of orthogonal transformation units to be processed). More specifically, the copying unit 171 acquires the size of the scaling list transmitted in the past and the list ID (List ID) from the storage unit 202 of the decoding unit 165.
  • the size is information indicating the size of the scaling list (for example, 4 ⁇ 4 to 32 ⁇ 32, etc.).
  • the list ID is information indicating the type of prediction error data to be quantized.
  • the quantization target is prediction error data (IntraLuma) of a luminance component generated using an intra-predicted predicted image, or a color difference generated using an intra-predicted predicted image
  • the prediction error data (IntraCr) of the component (Cr) or the prediction error data (IntraCb) of the color difference component (Cb) generated using the intra-predicted prediction image, or the inter-prediction It includes identification information indicating whether it is prediction error data (InterLuma) of a luminance component generated using an image.
  • the copying unit 171 selects the scaling list transmitted in the past of the same size as the scaling list (the scaling list of the orthogonal transformation unit to be processed) input to the matrix processing unit 150 as the replication target, and the scaling list to be the replication target Is supplied to the output unit 166 and output to the outside of the matrix processing unit 150 (the lossless encoding unit 16 and the inverse quantization unit 21). That is, in this case, only the ListID is transmitted to the decoding side as information indicating a prediction matrix generated by copying the scaling list transmitted in the past, and the image coding apparatus 10 An increase in the amount of code in the scaling list can be suppressed.
  • the prediction matrix generation unit 172 acquires the scaling list transmitted in the past from the storage unit 202 of the decoding unit 165, and generates a prediction matrix using the scaling list (scaling of orthogonal transformation unit to be processed) Predict the list).
  • the prediction matrix generation unit 172 supplies the generated prediction matrix to the difference matrix generation unit 162.
  • the difference matrix generation unit 162 is a difference matrix that is the difference between the prediction matrix supplied from the prediction unit 161 (prediction matrix generation unit 172) and the scaling list input to the matrix processing unit 150. Generate a residual matrix). As illustrated in FIG. 16, the difference matrix generation unit 162 includes a prediction matrix size conversion unit 181, an operation unit 182, and a quantization unit 183.
  • the prediction matrix size conversion unit 181 performs conversion (hereinafter also referred to as conversion) to match the size of the prediction matrix supplied from the prediction matrix generation unit 172 with the size of the scaling list input to the matrix processing unit 150.
  • the prediction matrix size conversion unit 181 performs reduction conversion (hereinafter also referred to as down conversion) of the prediction matrix. More specifically, for example, when the prediction matrix is 16x16 and the scaling list is 8x8, the prediction matrix size conversion unit 181 downconverts the prediction matrix to 8x8.
  • the method of this down conversion is arbitrary.
  • the prediction matrix size conversion unit 181 may reduce the number of elements of the prediction matrix (by calculation) using a filter (hereinafter, also referred to as down sample). Also, for example, as shown in FIG. 17, the prediction matrix size conversion unit 181 thins out some elements (for example, only the even part (two black parts in FIG. 17) of two-dimensional elements) without using a filter. Thus, the number of elements of the prediction matrix may be reduced (hereinafter, also referred to as subsamples).
  • the prediction matrix size conversion unit 181 performs expansion conversion (hereinafter also referred to as up conversion) of the prediction matrix. More specifically, for example, when the prediction matrix is 8x8 and the scaling list is 16x16, the prediction matrix size conversion unit 181 upconverts the prediction matrix to 16x16.
  • the method of this up conversion is arbitrary.
  • the prediction matrix size conversion unit 181 may increase the number of elements of the prediction matrix (by calculation) using a filter (hereinafter, also referred to as up-sampling). Further, for example, the number of elements of the prediction matrix may be increased by duplicating each element of the prediction matrix without using a filter, for example, the prediction matrix size conversion unit 181 (hereinafter also referred to as inverse subsample). ).
  • the prediction matrix size conversion unit 181 supplies the calculation unit 182 with a prediction matrix whose size is matched with the scaling list.
  • the operation unit 182 subtracts the scaling list input to the matrix processing unit 150 from the prediction matrix supplied from the prediction matrix size conversion unit 181 to generate a difference matrix (residual matrix).
  • the calculation unit 182 supplies the calculated difference matrix to the quantization unit 183.
  • the quantization unit 183 quantizes the difference matrix supplied from the calculation unit 182.
  • the quantization unit 183 supplies the quantization result of the difference matrix to the difference matrix size conversion unit 163. Further, the quantization unit 183 supplies information such as the quantization parameter used for the quantization to the output unit 166, and outputs the information to the outside of the matrix processing unit 150 (the lossless encoding unit 16 and the dequantization unit 21). Let Note that this quantization unit 183 may be omitted (that is, quantization of the difference matrix is not performed).
  • the difference matrix size conversion unit 163 is configured to transmit the size of the difference matrix (quantized data) supplied from the difference matrix generation unit 162 (quantization unit 183), as necessary.
  • transmission size the maximum size allowed for (hereinafter also referred to as transmission size). This maximum size is arbitrary but, for example, 8x8.
  • the encoded data output from the image encoding device 10 is transmitted to an image decoding device corresponding to the image encoding device 10 via, for example, a transmission path or a storage medium, and is decoded by the image decoding device.
  • the upper limit (maximum size) of the size of the difference matrix (quantized data) in such transmission, ie, in the encoded data output from the image encoding device 10, is set. .
  • the difference matrix size conversion unit 163 downconverts the difference matrix so that the size is equal to or less than the maximum size.
  • the method of this down conversion is arbitrary similarly to the case of the down conversion of the prediction matrix mentioned above.
  • it may be a down sample using a filter or the like, or it may be a sub sample which thins out elements.
  • the size of the down-conversion difference matrix may be any size smaller than the maximum size.
  • the larger the size difference before and after conversion the larger the error. Therefore, it is desirable to down convert to the maximum size.
  • the difference matrix size conversion unit 163 supplies the down-converted difference matrix to the entropy coding unit 164. Note that if the size of the difference matrix is smaller than the maximum size, this down conversion is unnecessary, so the difference matrix size conversion unit 163 supplies the input difference matrix as it is to the entropy coding unit 164 (that is, the down conversion). Is omitted).
  • the entropy encoding unit 164 encodes the difference matrix (quantized data) supplied from the difference matrix size conversion unit 163 by a predetermined method. As shown in FIG. 16, the entropy encoding unit 164 includes an overlap determination unit (135 degree unit) 191, a differential pulse code modulation (DPCM) unit 192, and an expG unit 193.
  • DPCM differential pulse code modulation
  • the overlap determination unit 191 determines the symmetry of the difference matrix supplied from the difference matrix size conversion unit 163, and if the residual (difference matrix) is a symmetric matrix of 135 degrees, for example, as shown in FIG. , Delete the data (matrix elements) of the symmetrical part which is overlapping data. If the residual is not a symmetric matrix of 135 degrees, the duplication judgment unit 191 omits deletion of this data (matrix element).
  • the overlap determination unit 191 supplies, to the DPCM unit 192, data of the difference matrix from which the symmetrical part has been deleted as necessary.
  • the DPCM unit 192 DPCM codes the data of the difference matrix supplied from the overlap determination unit 191 and from which the symmetrical portion is deleted as necessary, and generates DPCM data.
  • the DPCM unit 192 supplies the generated DPCM data to the expG unit 193.
  • the expG unit 193 performs signed / unsigned exponential golomb code (hereinafter also referred to as “exponential Golomb code”) on DPCM data supplied from the DPCM unit 192.
  • the expG unit 193 supplies the encoding result to the decoding unit 165 and the output unit 166.
  • the decoding unit 165 restores the scaling list from the data supplied from the expG unit 193.
  • the decoding unit 165 supplies the information on the restored scaling list to the prediction unit 161 as the scaling list transmitted in the past.
  • the decoding unit 165 includes a scaling list restoration unit 201 and a storage unit 202.
  • the scaling list restoration unit 201 decodes the exponent Golomb code supplied from the entropy coding unit 164 (expG unit 193), and restores the scaling list input to the matrix processing unit 150.
  • the scaling list reconstruction unit 201 decodes the Exponential Golomb code by a method corresponding to the encoding method of the entropy encoding unit 164, performs inverse conversion of the size conversion by the difference matrix size conversion unit 163, and The scaling list is restored by performing inverse quantization corresponding to quantization and subtracting the obtained difference matrix from the prediction matrix.
  • the scaling list restoration unit 201 supplies the restored scaling list to the storage unit 202, and stores the scaling list in association with the size and the list ID.
  • the storage unit 202 stores information on the scaling list supplied from the scaling list reconstruction unit 201.
  • the information on the scaling list stored in the storage unit 202 is used to generate a prediction matrix of another orthogonal transformation unit to be processed later in time. That is, the storage unit 202 supplies the information on the stored scaling list to the prediction unit 161 as the information on the scaling list transmitted in the past.
  • the storage unit 202 may store the scaling list input to the matrix processing unit 150 in association with the size and the list ID instead of storing the information related to the scaling list restored in this manner.
  • the scaling list reconstruction unit 201 can be omitted.
  • the output unit 166 outputs the various information supplied to the outside of the matrix processing unit 150. For example, in the copy mode, the output unit 166 supplies the list ID of the prediction matrix supplied from the copying unit 171 to the lossless encoding unit 16 and the dequantization unit 21. Also, for example, in the normal case, the output unit 166 outputs the index Golomb code supplied from the expG unit 193 and the quantization parameter supplied from the quantization unit 183 to the lossless encoding unit 16 and the inverse quantization unit 21. Supply to
  • the output unit 166 generates, on the decoding side, the identification information indicating the maximum size (transmission size) permitted for transmission of the scaling list (or the difference matrix between the scaling list and its prediction matrix). It supplies to the lossless encoding part 16 as information for performing.
  • the lossless encoding unit 16 includes information for generating the scaling list in the encoded stream, and provides the information to the decoding side.
  • the identification information indicating the transmission size may be defined in advance by a level, a profile or the like. In that case, since the information on the transmission size is shared in advance between the device on the encoding side and the device on the decoding side, the transmission of the identification information described above can be omitted.
  • FIG. 19 is a block diagram showing an example of a more detailed configuration of the DPCM unit 192.
  • the DPCM unit 192 includes a DC coefficient encoding unit 211 and an AC coefficient DPCM unit 212.
  • the DC coefficient encoding unit 211 obtains a DC coefficient from among the coefficient group supplied from the overlap determination unit 191, subtracts the value of the DC coefficient from a predetermined initial value (for example, 8), and obtains the difference value
  • the AC coefficient DPCM unit 212 obtains an AC coefficient from among the coefficient group supplied from the overlap determination unit 191, subtracts the value of the AC coefficient from the coefficient processed one before, and obtains the difference value (scaling_list_delta_coef). (I> 0)).
  • the DPCM unit 192 can transmit the DC coefficient as the leading element of the scaling list (AC coefficient). Thereby, the coding efficiency of the scaling list can be improved.
  • step S101 the prediction unit 161 acquires a scaling list (quantization matrix) of a current region (also referred to as a region of interest) that is a unit of orthogonal transformation to be processed.
  • step S102 the prediction unit 161 determines whether or not the copy mode is set. If it is determined that the copy mode is not set, the prediction unit 161 advances the process to step S103.
  • step S103 the prediction matrix generation unit 172 acquires the scaling list transmitted in the past from the storage unit 202, and generates a prediction matrix using the scaling list.
  • step S104 the prediction matrix size conversion unit 181 determines whether the size of the prediction matrix generated in step S103 is different from the scaling list of the current region (region of interest) acquired in step S101. If it is determined that the sizes are different, the prediction matrix size conversion unit 181 advances the process to step S105.
  • step S105 the prediction matrix size conversion unit 181 converts the size of the prediction matrix generated in step S103 into the size of the scaling list of the current region acquired in step S101.
  • step S105 the prediction matrix size conversion unit 181 advances the process to step S106.
  • step S104 the prediction matrix size conversion unit 181 omits the process of step S105 (without performing the process of step S105), The process then proceeds to step S106.
  • step S106 the computing unit 182 subtracts the scaling list from the prediction matrix to calculate a difference matrix between the prediction matrix and the scaling list.
  • step S107 the quantization unit 183 quantizes the difference matrix generated in step S106. Note that this process may be omitted.
  • step S108 the difference matrix size conversion unit 163 determines whether the size of the quantized difference matrix is larger than the transmission size (the maximum size allowed for transmission). If it is determined that the size is larger than the transmission size, the difference matrix size conversion unit 163 advances the process to step S109 to down convert the difference matrix to the transmission size or less.
  • step S109 the difference matrix size conversion unit 163 causes the process to proceed to step S110. If it is determined in step S108 that the size of the quantized difference matrix is equal to or smaller than the transmission size, the difference matrix size conversion unit 163 omits the process of step S109 (without performing the process of step S109). The process proceeds to step S110.
  • step S110 the overlap determination unit 191 determines whether the quantized difference matrix has a symmetry of 135 degrees. If it is determined that the symmetry is 135 degrees, the duplication determination unit 191 advances the process to step S111.
  • step S111 the overlap determination unit 191 deletes the overlap portion (overlapped data) of the quantized difference matrix.
  • the duplication determination unit 191 advances the process to step S112.
  • step S110 when it is determined in step S110 that the quantized difference matrix does not have the symmetry of 135 degrees, the duplication determination unit 191 omits the process of step S111 (without performing the process of step S111). The process proceeds to step S112.
  • step S112 the DPCM unit 192 DPCM encodes the difference matrix from which the overlapping portion has been appropriately deleted.
  • step S113 the expG unit 193 determines whether the DPCM data generated in step S112 includes a sign indicating positive or negative. If it is determined that the code is present, the expG unit 193 proceeds with the process to step S114.
  • step S114 the expG unit 193 performs signed exponential Golomb coding on DPCM data.
  • the output unit 166 outputs the generated exponential Golomb code to the lossless encoding unit 16 and the inverse quantization unit 21.
  • the expG unit 193 advances the process to step S116.
  • step S113 determines whether the code does exist. If it is determined in step S113 that the code does not exist, the expG unit 193 proceeds with the process to step S115.
  • step S115 the expG unit 193 performs unsigned Golomb coding on DPCM data.
  • the output unit 166 outputs the generated exponential Golomb code to the lossless encoding unit 16 and the inverse quantization unit 21.
  • the expG unit 193 advances the process to step S116.
  • the copy unit 171 duplicates the scaling list transmitted in the past and sets it as a prediction matrix.
  • the output unit 166 outputs the list ID corresponding to the prediction matrix to the lossless encoding unit 16 and the inverse quantization unit 21 as information indicating the prediction matrix. Then, the copying unit 171 causes the process to proceed to step S116.
  • step S116 the scaling list restoration unit 201 restores the scaling list.
  • step S117 the storage unit 202 stores the scaling list restored in step S116.
  • step S117 the matrix processing unit 150 ends the quantization matrix coding process.
  • the DC coefficient encoding unit 211 obtains the difference between the DC coefficient and the constant in step S131.
  • the AC coefficient DPCM unit 212 obtains the difference between the DC coefficient and the first AC coefficient.
  • step S133 the AC coefficient DPCM unit 212 determines whether all AC coefficients have been processed. If it is determined that there is an unprocessed AC coefficient, the AC coefficient DPCM unit 212 proceeds with the process to step S134.
  • step S134 the AC coefficient DPCM unit 212 sets the next AC coefficient as a processing target.
  • step S135 the AC coefficient DPCM unit 212 obtains the difference between the previously processed AC coefficient and the AC coefficient to be processed.
  • the AC coefficient DPCM unit 212 returns the process to step S133.
  • step S133 the AC coefficient DPCM unit 212 repeatedly executes the processing of steps S133 to S135. If it is determined in step S133 that there is no unprocessed AC coefficient, the AC coefficient DPCM unit 212 ends the DPCM process, and returns the process to FIG.
  • the image encoding device 10 obtains the difference between the DC coefficient and the AC coefficient at the beginning of the AC coefficient group and transmits the difference to the image decoding device instead of the DC coefficient. It is possible to suppress the increase of the code amount of
  • FIG. 22 is a block diagram showing an example of the configuration of the image decoding apparatus 300 according to an embodiment of the present disclosure.
  • An image decoding apparatus 300 illustrated in FIG. 22 is an image processing apparatus to which the present technology is applied, which decodes encoded data generated by the image encoding apparatus 10.
  • the image decoding apparatus 300 includes an accumulation buffer 311, a lossless decoding unit 312, an inverse quantization / inverse orthogonal transformation unit 313, an addition unit 315, a deblocking filter 316, a rearrangement buffer 317, D / A (Digital to analogue) transform unit 318, frame memory 319, selectors 320 and 321, intra prediction unit 330, and motion compensation unit 340.
  • D / A Digital to analogue
  • the accumulation buffer 311 temporarily accumulates the coded stream input through the transmission path using a storage medium.
  • the lossless decoding unit 312 decodes the encoded stream input from the accumulation buffer 311 in accordance with the encoding scheme used during encoding. Also, the lossless decoding unit 312 decodes the information multiplexed in the header area of the encoded stream.
  • the information multiplexed in the header area of the encoded stream may include, for example, the information for generating the scaling list described above, as well as the information on intra prediction in the block header and the information on inter prediction.
  • the lossless decoding unit 312 outputs the quantized data after decoding and information for generating a scaling list to the inverse quantization / inverse orthogonal transform unit 313. Further, the lossless decoding unit 312 outputs information on intra prediction to the intra prediction unit 330. Also, the lossless decoding unit 312 outputs information on inter prediction to the motion compensation unit 340.
  • the inverse quantization / inverse orthogonal transformation unit 313 generates prediction error data by performing inverse quantization and inverse orthogonal transformation on the quantized data input from the lossless decoding unit 312. Then, the inverse quantization / inverse orthogonal transform unit 313 outputs the generated prediction error data to the addition unit 315.
  • the addition unit 315 generates decoded image data by adding the prediction error data input from the inverse quantization / inverse orthogonal transform unit 313 and the prediction image data input from the selector 321. Then, the addition unit 315 outputs the generated decoded image data to the deblocking filter 316 and the frame memory 319.
  • the deblocking filter 316 removes block distortion by filtering the decoded image data input from the adding unit 315, and outputs the decoded image data after filtering to the rearrangement buffer 317 and the frame memory 319.
  • the reordering buffer 317 generates a series of time-series image data by reordering the images input from the deblocking filter 316. Then, the rearrangement buffer 317 outputs the generated image data to the D / A converter 318.
  • the D / A converter 318 converts the digital image data input from the reordering buffer 317 into an analog image signal. Then, the D / A conversion unit 318 displays an image by outputting an analog image signal to a display (not shown) connected to the image decoding apparatus 300, for example.
  • the frame memory 319 stores the decoded image data before filtering input from the adding unit 315 and the decoded image data after filtering input from the deblocking filter 316 using a storage medium.
  • the selector 320 switches the output destination of the image data from the frame memory 319 between the intra prediction unit 330 and the motion compensation unit 340 for each block in the image according to the mode information acquired by the lossless decoding unit 312. .
  • the selector 320 outputs the decoded image data before filtering supplied from the frame memory 319 to the intra prediction unit 330 as reference image data.
  • the selector 320 outputs the decoded image data after filtering supplied from the frame memory 319 to the motion compensation unit 340 as reference image data.
  • the selector 321 outputs an output source of predicted image data to be supplied to the adding unit 315 for each block in the image according to the mode information acquired by the lossless decoding unit 312, between the intra prediction unit 330 and the motion compensation unit 340. Switch between. For example, when the intra prediction mode is designated, the selector 321 supplies the prediction image data output from the intra prediction unit 330 to the addition unit 315. The selector 321 supplies prediction image data output from the motion compensation unit 340 to the addition unit 315 when the inter prediction mode is specified.
  • the intra prediction unit 330 performs intra prediction of pixel values on the basis of the information on intra prediction input from the lossless decoding unit 312 and the reference image data from the frame memory 319 to generate predicted image data. Then, the intra prediction unit 330 outputs the generated predicted image data to the selector 321.
  • the motion compensation unit 340 performs motion compensation processing based on the information on inter prediction input from the lossless decoding unit 312 and the reference image data from the frame memory 319 to generate predicted image data. Then, the motion compensation unit 340 outputs the generated predicted image data to the selector 321.
  • FIG. 23 is a block diagram showing an example of a main configuration of the inverse quantization / inverse orthogonal transform unit 313 of the image decoding apparatus 300 shown in FIG.
  • the inverse quantization / inverse orthogonal transform unit 313 includes a matrix generation unit 410, a selection unit 430, an inverse quantization unit 440, and an inverse orthogonal transform unit 450.
  • the matrix generation unit 410 decodes the scaling list coding data extracted and supplied from the bit stream in the lossless decoding unit 312, and generates a scaling list.
  • the matrix generation unit 410 supplies the generated scaling list to the inverse quantization unit 440.
  • the selection unit 430 selects a transform unit (TU) to be used for inverse orthogonal transform of image data to be decoded, from a plurality of transform units having different sizes.
  • the candidates for the size of the transform unit that can be selected by the selection unit 430 include, for example, 4x4 and 8x8 in H.264 / AVC, and 4x4, 8x8, 16x16, and 32x32 in HEVC.
  • the selection unit 430 may select a transform unit based on, for example, the LCU, the SCU, and the split_flag included in the header of the encoded stream. Then, the selection unit 430 outputs information for specifying the size of the selected conversion unit to the inverse quantization unit 440 and the inverse orthogonal transformation unit 450.
  • the inverse quantizer 440 inversely quantizes the transform coefficient data quantized at the time of image encoding, using the scaling list corresponding to the transform unit selected by the selector 430. Do. Then, the inverse quantization unit 440 outputs the inversely quantized transform coefficient data to the inverse orthogonal transform unit 450.
  • the inverse orthogonal transform unit 450 performs inverse transform of the transform coefficient data inversely quantized by the inverse quantization unit 440 according to the orthogonal transform scheme used in encoding, in the selected transform unit. By performing orthogonal transformation, prediction error data is generated. Then, the inverse orthogonal transform unit 450 outputs the generated prediction error data to the addition unit 315.
  • FIG. 24 is a block diagram showing an example of a detailed configuration of the matrix generation unit 410 shown in FIG.
  • the matrix generation unit 410 includes a parameter analysis unit 531, a prediction unit 532, an entropy decoding unit 533, a scaling list restoration unit 534, an output unit 535, and a storage unit 536.
  • the parameter analysis unit 531 analyzes various flags and parameters related to the scaling list supplied from the lossless decoding unit 312. Further, the parameter analysis unit 531 supplies various information such as the encoded data of the difference matrix supplied from the lossless decoding unit 312 to the prediction unit 532 or the entropy decoding unit 533 according to the analysis result.
  • pred_mode 0
  • the parameter analysis unit 531 determines that the copy mode is set, and supplies pred_matrix_id_delta to the copy unit 541.
  • pred_mode 1
  • the parameter analysis unit 531 determines that the scan mode is the all scan mode (in the normal case), and supplies pred_matrix_id_delta and pred_size_id_delta to the prediction matrix generation unit 542.
  • the parameter analysis unit 531 supplies the encoded data (exponential Golomb code) of the scaling list supplied from the lossless decoding unit 312 to the expG unit 551 of the entropy decoding unit 533. Furthermore, the parameter analysis unit 531 supplies the residual_symmetry_flag to the expG unit 551.
  • parameter analysis unit 531 supplies residual_down_sampling_flag to the difference matrix size conversion unit 562 of the scaling list restoration unit 534.
  • the prediction unit 532 generates a prediction matrix according to the control of the parameter analysis unit 531. As illustrated in FIG. 24, the prediction unit 532 includes a copying unit 541 and a prediction matrix generation unit 542.
  • the copy unit 541 duplicates the scaling list transmitted in the past and uses it as a prediction matrix. More specifically, the copying unit 541 reads from the storage unit 536 the scaling list transmitted in the past, which has the same size as the scaling list of the current region, corresponding to pred_matrix_id_delta, and uses the scaling list as a prediction image, and prediction thereof The image is supplied to the output unit 535.
  • the prediction matrix generation unit 542 generates (predicts) a prediction matrix using the scaling list transmitted in the past. More specifically, the prediction matrix generation unit 542 reads the scaling list transmitted in the past corresponding to pred_matrix_id_delta and pred_size_id_delta from the storage unit 536, and generates a prediction matrix using it. That is, the prediction matrix generation unit 542 generates a prediction matrix similar to the prediction matrix generated by the prediction matrix generation unit 172 (FIG. 16) of the image coding device 10. The prediction matrix generation unit 542 supplies the generated prediction matrix to the prediction matrix size conversion unit 561 of the scaling list restoration unit 534.
  • the entropy decoding unit 533 restores the difference matrix from the Exponential Golomb code supplied from the parameter analysis unit 531. As shown in FIG. 24, the entropy decoding unit 533 includes an expG unit 551, an inverse DPCM unit 552, and an inverse duplication determination unit 553.
  • the expG unit 551 performs signed or unsigned exponential golomb decoding (hereinafter also referred to as exponential Golomb decoding) to restore DPCM data.
  • the expG unit 551 supplies the restored DPCM data to the inverse DPCM unit 552 together with the residual_symmetry_flag.
  • the inverse DPCM unit 552 performs DPCM decoding on the data from which the overlapping part has been deleted, and generates residual data from the DPCM data.
  • the reverse DPCM unit 552 supplies the generated residual data to the reverse duplication determination unit 553 together with the residual_symmetry_flag.
  • the inverse duplicate determination unit 553 Restore data That is, the difference matrix of the symmetric matrix of 135 degrees is restored. Note that if residual_symmetry_flag is not true, that is, if the residual data is a matrix that is not a symmetric matrix of 135 degrees, the inverse duplication judgment unit 553 does not restore the data of the symmetrical part, and Let it be a matrix. The inverse duplication determination unit 553 supplies the difference matrix thus restored to the scaling list restoration unit 534 (difference matrix size conversion unit 562).
  • the scaling list restoration unit 534 restores the scaling list. As illustrated in FIG. 24, the scaling list restoration unit 534 includes a prediction matrix size conversion unit 561, a difference matrix size conversion unit 562, an inverse quantization unit 563, and an operation unit 564.
  • the prediction matrix size conversion unit 561 converts the size of the prediction matrix .
  • the prediction matrix size conversion unit 561 downconverts the prediction matrix. Also, for example, when the size of the prediction matrix is smaller than the size of the scaling list, the prediction matrix size conversion unit 561 upconverts the prediction matrix.
  • the conversion method the same method as that of the prediction matrix size conversion unit 181 (FIG. 16) of the image coding device 10 is selected.
  • the prediction matrix size conversion unit 561 supplies the calculation unit 564 with a prediction matrix whose size is matched with the scaling list.
  • the difference matrix size conversion unit 562 responds to the current area to inversely quantize the size of the difference matrix. Up-convert to another size.
  • the upconversion method is optional.
  • the method may be adapted to the down conversion method performed by the difference matrix size conversion unit 163 (FIG. 16) of the image encoding device 10.
  • the difference matrix size conversion unit 562 may upsample the difference matrix.
  • the difference matrix size conversion unit 562 may inversely subsample the difference matrix.
  • the difference matrix size conversion unit 562 may perform interpolation by nearest neighbor processing (nearest neighbor) as shown in FIG. 25 instead of general linear interpolation. By using this nearest neighbor interpolation process, the memory to be held can be reduced.
  • the difference matrix size conversion unit 562 omits up-conversion of the difference matrix (or 1 ⁇ ). Up-conversion may be performed).
  • the difference matrix size conversion unit 562 supplies the dequantization unit 563 with the difference matrix up-converted as necessary.
  • the inverse quantization unit 563 inversely quantizes and dequantizes the supplied difference matrix (quantized data) by a method corresponding to the quantization of the quantization unit 183 (FIG. 16) of the image coding device 10.
  • the difference matrix is supplied to the calculation unit 564.
  • the quantization unit 183 is omitted, that is, when the difference matrix supplied from the difference matrix size conversion unit 562 is not quantization data, the inverse quantization unit 563 can be omitted.
  • the operation unit 564 adds the prediction matrix supplied from the prediction matrix size conversion unit 561 and the difference matrix supplied from the inverse quantization unit 563 to restore the scaling list of the current region.
  • the operation unit 564 supplies the restored scaling list to the output unit 535 and the storage unit 536.
  • the output unit 535 outputs the supplied information to the outside of the matrix generation unit 410.
  • the output unit 535 supplies the prediction matrix supplied from the copying unit 541 to the inverse quantization unit 440 as a scaling list of the current region.
  • the output unit 535 supplies the scaling list of the current region supplied from the scaling list restoration unit 534 (the operation unit 564) to the inverse quantization unit 440.
  • the storage unit 536 stores the scaling list supplied from the scaling list restoration unit 534 (the operation unit 564) together with the size and the list ID.
  • the information on the scaling list stored in the storage unit 536 is used to generate a prediction matrix of another orthogonal transformation unit to be processed later in time. That is, the storage unit 536 supplies the information on the stored scaling list to the prediction unit 532 as the information on the scaling list transmitted in the past.
  • FIG. 26 is a block diagram showing an example of a detailed configuration of the inverse DPCM unit 552 shown in FIG. Referring to FIG. 26, the inverse DPCM unit 552 includes an initial setting unit 571, a DPCM decoding unit 572, and a DC coefficient extraction unit 573.
  • the initial setting unit 571 acquires sizeID and MatrixID, and sets initial values to various variables.
  • the initial setting unit 571 supplies the obtained or set information to the DPCM decoding unit 572.
  • the DPCM decoding unit 572 obtains each coefficient (DC coefficient and each AC coefficient) from the difference value (scaling_list_delta_coef) of the DC coefficient or the AC coefficient using the initial setting and the like supplied from the initial setting unit 571.
  • the DPCM decoding unit 572 supplies the obtained coefficients to the DC coefficient extraction unit 573 (ScalingList [i]).
  • the DC coefficient extraction unit 573 extracts a DC coefficient from the coefficient group (ScalingList [i]) supplied from the DPCM decoding unit 572.
  • the DC coefficient is placed at the beginning of the AC coefficient group. That is, the first coefficient (ScalingList [0]) of the coefficient group supplied from the DPCM decoding unit 572 is a DC coefficient.
  • the DC coefficient extraction unit 573 extracts the first coefficient as a DC coefficient, and outputs the DC coefficient to the reverse duplication determination unit 553 (DC_coef).
  • the DC coefficient extraction unit 573 outputs the other coefficients (ScalingList [i] (i> 0)) to the inverse overlap determination unit 553 as AC coefficients.
  • the inverse DPCM unit 552 can correctly perform DPCM decoding, and can obtain DC coefficients and AC coefficients. That is, the image decoding apparatus 300 can suppress an increase in the code amount of the scaling list.
  • step S301 the parameter analysis unit 531 reads the quantization values (Qscale0 to Qscale3) of the regions 0 to 3.
  • the parameter analysis unit 531 reads pred_mode in step S302, and determines whether pred_mode is 0 in step S303. If it is determined that pred_mode is 0, the parameter analysis unit 531 determines that the copy mode is set, and the process proceeds to step S304.
  • step S304 the parameter analysis unit 531 reads pred_matrix_id_delta.
  • step S305 the copying unit 541 duplicates the transmitted scaling list and uses it as a prediction matrix. In the copy mode, the prediction matrix is output as a scaling list of the current region.
  • the copying unit 541 ends the quantization matrix decoding process.
  • step S303 If it is determined in step S303 that pred_mode is not 0, the parameter analysis unit 531 determines that the scan mode is the all scan mode (in the normal case), and the process proceeds to step S306.
  • step S306 the parameter analysis unit 531 reads pred_matrix_id_delta, pred_size_id_delta, and residual_flag.
  • step S307 the prediction matrix generation unit 542 generates a prediction matrix from the transmitted scaling list.
  • step S308 the parameter analysis unit 531 determines whether residual_flag is true. If it is determined that the residual_flag is not true, there is no residual matrix, so the prediction matrix generated in step S307 is output as a scaling list of the current region. Therefore, in this case, the parameter analysis unit 531 ends the quantization matrix decoding process.
  • step S308 If it is determined in step S308 that residual_flag is true, the parameter analysis unit 531 advances the process to step S309.
  • step S309 the parameter analysis unit 531 reads the residual_down_sampling_flag and the residual_symmetry_flag.
  • step S310 the expG unit 551 and the inverse DPCM unit 552 decode the Exponential Golomb code of the residual matrix to generate residual data.
  • step S311 the reverse duplication determination unit 553 determines whether or not the residual_symmetry_flag is true. If it is determined that the residual_symmetry_flag is true, the inverse duplication judgment unit 553 advances the process to step S312, and restores the deleted redundant part of the residual data (performs an inverse symmetry process). When the symmetric difference matrix is generated at 135 degrees in this manner, the reverse duplication determination unit 553 advances the process to step S313.
  • step S311 If it is determined in step S311 that residual_symmetry_flag is not true (if the residual data is a difference matrix that is not a symmetric matrix at 135 degrees), the inverse duplication determination unit 553 omits the process of step S312 (inverse symmetry). The process proceeds to step S313).
  • step S313 the difference matrix size conversion unit 562 determines whether residual_down_sampling_flag is true. When it is determined that the residual_down_sampling_flag is true, the difference matrix size conversion unit 562 proceeds with the process to step S314, and up-converts the difference matrix to a size according to the current region to be inversely quantized. After up-converting the difference matrix, the difference matrix size conversion unit 562 advances the process to step S315.
  • step S313 When it is determined in step S313 that residual_down_sampling_flag is not true, the difference matrix size conversion unit 562 omits the process of step S314 (without upconverting the difference matrix), and advances the process to step S315.
  • step S315 the operation unit 564 adds the difference matrix to the prediction matrix to generate a scaling list of the current region.
  • the quantization matrix decoding process ends.
  • the expG unit 551 decodes the exponent Golomb code supplied in step S331.
  • step S332 the inverse DPCM unit 552 performs inverse DPCM processing on DPCM data obtained by decoding in the expG unit 551.
  • the inverse DPCM unit 552 ends the residual signal decoding process and returns the process to FIG.
  • the initial setting unit 571 acquires sizeID and MatrixID in step S351.
  • step S352 the initial setting unit 571 sets coefNum as follows.
  • coefNum min ((1 ⁇ (4+ (sizeID ⁇ 1))), 65)
  • step S354 the DPCM decoding unit 572 determines whether or not variable i ⁇ coefNum. If the variable i is smaller than coefNum, the initial setting unit 571 advances the process to step S355.
  • step S355 the DPCM decoding unit 572 reads DPCM data (scaling_list_delta_coef) of coefficients.
  • step S360 the DPCM decoding unit 572 increments the variable i, changes the process target to the next coefficient, and returns the process to step S354.
  • steps S354 to S360 are repeated until it is determined in step S354 that the variable i is equal to or greater than coefNum. If it is determined in step S354 that the variable i is equal to or greater than coefNum, the DPCM decoding unit 572 ends the inverse DPCM process and returns the process to FIG.
  • the image decoding apparatus 300 can suppress an increase in the code amount of the scaling list. it can.
  • Method 2> As a method of transmitting the difference between the DC coefficient and the other coefficients instead of the DC coefficient, for example, the difference between the DC coefficient and the (0,0) component of the 8x8 matrix, DPCM data different from the DPCM data of the 8x8 matrix May be transmitted (method 2). For example, after DPCM transmission of an 8 ⁇ 8 matrix, the difference between the DC coefficient and the (0, 0) component of the 8 ⁇ 8 matrix may be transmitted.
  • the compression rate can be further improved when the (0, 0) coefficient (AC coefficient) of the 8 ⁇ 8 matrix and the DC coefficient are close values.
  • scaling_list_delta_coef 64 differential values (scaling_list_delta_coef) between coefficients are read, and finally, the difference (scaling_list_dc_coef_delta) between the DC coefficient and the (0, 0) coefficient (AC coefficient) is read, and DC Coefficients are determined.
  • the syntax for decoding of the AC coefficients can be similar to the conventional case shown in FIG. That is, the syntax of method 2 can reduce the change from the conventional example, and is easier to realize than the case of method 1.
  • the image decoding apparatus can not obtain DC coefficients until all coefficients have been received and all DPCMs have been solved, while in the case of method 1, the DC coefficients are received when the first coefficient is received. It is possible to restore
  • the configuration of the image coding apparatus 10 is basically the same as that of method 1 described above. That is, the image coding apparatus 10 is configured as in the example shown in FIG. Also, the orthogonal transform / quantization unit 14 is configured as in the example shown in FIG. Furthermore, the matrix processing unit 150 is configured as in the example shown in FIG.
  • the DPCM unit 192 includes an AC coefficient buffer 611, an AC coefficient encoding unit 612, an AC coefficient DPCM unit 613, and a DC coefficient DPCM unit 614.
  • the AC coefficient buffer 611 stores the first AC coefficient (that is, the (0, 0) coefficient) supplied from the overlap determination unit 191.
  • the AC coefficient buffer 611 stores the first AC coefficient (AC coefficient (0, 0)) stored at a predetermined timing after DPCM processing of all AC coefficients, or according to a request. Supply to 614.
  • the AC coefficient encoding unit 612 obtains the first AC coefficient (AC coefficient (0, 0)) supplied from the overlap determination unit 191, and subtracts the value from a constant (for example, 8).
  • the AC coefficient DPCM unit 613 obtains each AC coefficient supplied from the overlap determination unit 191, obtains a difference (DPCM) from the previous AC coefficient for each of the second and subsequent AC coefficients, and obtains DPCM data (scaling_list_delta_coef).
  • the DC coefficient DPCM unit 614 acquires the DC coefficient supplied from the overlap determination unit 191. Also, the DC coefficient DPCM unit 614 obtains the first AC coefficient (AC coefficient (0, 0)) held by the AC coefficient buffer 611. The DC coefficient DPCM unit 614 subtracts the first AC coefficient (AC coefficient (0, 0)) from the DC coefficient to obtain the difference between them, and the difference is used as the DPCM data (scaling_list_dc_coef_delta) of the DC coefficient, the expG unit 193 Supply to
  • the difference between the DC coefficient and the other coefficients is obtained.
  • the difference is transmitted as DPCM data (scaling_list_dc_coef_delta) of DC coefficients different from DPCM data of AC coefficients after transmission of DPCM data (scaling_list_delta_coef) of AC coefficients which is a difference between AC coefficients.
  • the image coding apparatus 10 performs the quantization matrix coding process in the same manner as in the case of method 1 described with reference to the flowchart of FIG.
  • the AC coefficient buffer 611 holds the first AC coefficient in step S401.
  • step S402 the AC coefficient coding unit 612 subtracts the first AC coefficient from a predetermined constant (for example, 8), and obtains the difference (first DPCM data).
  • a predetermined constant for example, 8
  • steps S403 to S405 are performed by the AC coefficient DPCM unit 613 in the same manner as the processes of steps S133 to S135 of FIG. That is, DPCM data (difference with the immediately preceding AC coefficient) of all AC coefficients is generated by repeatedly executing the processing of steps S403 to S405.
  • step S403 If it is determined in step S403 that all AC coefficients have been processed (that is, there is no unprocessed AC coefficient), the AC coefficient DPCM unit 613 advances the process to step S406.
  • step S406 the DC coefficient DPCM unit 614 subtracts the first AC coefficient held in step S401 from the DC coefficient, and obtains their difference (DPCM data of DC coefficient).
  • step S406 ends, the DC coefficient DPCM unit 614 ends the DPCM process, and returns the process to FIG.
  • the image coding apparatus 10 suppresses an increase in the code amount of the scaling list by obtaining the difference between the DC coefficient and the other coefficients and transmitting the difference as DPCM data to the image decoding apparatus. be able to.
  • the configuration of the image decoding apparatus 300 in the case of method 2 is basically the same as that of method 1. That is, also in the case of method 2, the image decoding apparatus 300 is configured as an example shown in FIG.
  • the inverse quantization / inverse orthogonal transform unit 313 is configured as in the example shown in FIG.
  • the matrix generation unit 410 is configured as in the example shown in FIG.
  • FIG. 33 is a block diagram showing an example of a detailed configuration of the inverse DPCM unit 552 shown in FIG. 24 in the case of method 2.
  • the inverse DPCM unit 552 includes an initial setting unit 621, an AC coefficient DPCM decoding unit 622, an AC coefficient buffer 623, and a DC coefficient DPCM decoding unit 624.
  • the initial setting unit 621 acquires sizeID and MatrixID, and sets initial values to various variables.
  • the initial setting unit 621 supplies the acquired or set information to the AC coefficient DPCM decoding unit 622.
  • the AC coefficient DPCM decoding unit 622 acquires DPCM data (scaling_list_delta_coef) of the AC coefficient supplied from the expG unit 551.
  • the AC coefficient DPCM decoding unit 622 decodes DPCM data of the acquired AC coefficient using the initial setting and the like supplied from the initial setting unit 621 to obtain an AC coefficient.
  • the AC coefficient DPCM decoding unit 622 supplies the determined AC coefficients (ScalingList [i]) to the reverse duplication determination unit 553.
  • the AC coefficient DPCM decoding unit 622 supplies the obtained first AC coefficient (ScalingList [0], that is, the AC coefficient (0, 0)) to the AC coefficient buffer 623 and holds it.
  • the AC coefficient buffer 623 stores the first AC coefficient (ScalingList [0], ie, AC coefficient (0, 0)) supplied from the AC coefficient DPCM decoding unit 622.
  • the AC coefficient buffer 623 supplies the first AC coefficient (ScalingList [0], ie, AC coefficient (0, 0)) to the DC coefficient DPCM decoding unit 624 at a predetermined timing or in response to a request.
  • the DC coefficient DPCM decoding unit 624 acquires DPCM data (scaling_list_dc_coef_delta) of the DC coefficient supplied from the expG unit 551. Also, the DC coefficient DPCM decoding unit 624 obtains the first AC coefficient (ScalingList [0], that is, the AC coefficient (0, 0)) stored in the AC coefficient buffer 623. The DC coefficient DPCM decoding unit 624 decodes DPCM data of the DC coefficient using the first AC coefficient to obtain a DC coefficient. The DC coefficient DPCM decoding unit 624 supplies the obtained DC coefficient (DC_coef) to the reverse duplication determination unit 553.
  • DPCM data scaling_list_dc_coef_delta
  • the inverse DPCM unit 552 can correctly perform DPCM decoding, and can obtain DC coefficients and AC coefficients. That is, the image decoding apparatus 300 can suppress an increase in the code amount of the scaling list.
  • the image decoding apparatus 300 executes the quantization matrix decoding process in the same manner as the method 1 described with reference to the flowchart in FIG. Similarly, the image decoding apparatus 300 executes the residual signal decoding process in the same manner as the method 1 described with reference to the flowchart in FIG.
  • the initial setting unit 621 acquires sizeID and MatrixID in step S421.
  • step S422 the initial setting unit 621 sets coefNum as follows.
  • coefNum min ((1 ⁇ (4+ (sizeID ⁇ 1))), 64)
  • step S424 the DPCM decoding unit 572 determines whether or not variable i ⁇ coefNum. If the variable i is smaller than coefNum, the initial setting unit 621 advances the process to step S425.
  • step S425 the AC coefficient DPCM decoding unit 622 reads DPCM data (scaling_list_delta_coef) of AC coefficients.
  • step S426 the AC coefficient DPCM decoding unit 622 obtains nextcoef as follows using the read DPCM data, and further obtains scalingList [i].
  • the calculated first AC coefficient (ScalingList [0], that is, AC coefficient (0, 0)) is held in the AC coefficient buffer 623.
  • step S427 the AC coefficient DPCM decoding unit 622 increments the variable i, changes the process target to the next coefficient, and returns the process to step S424.
  • steps S424 to S427 are repeated until it is determined in step S424 that the variable i is equal to or greater than coefNum. If it is determined in step S424 that the variable i is equal to or greater than coefNum, the AC coefficient DPCM decoding unit 622 advances the process to step S428.
  • step S428 the DC coefficient DPCM decoding unit 624 determines whether the sizeID is larger than one. If it is determined that the sizeID is larger than 1, the DC coefficient DPCM decoding unit 624 advances the process to step S429, and reads DPCM data (scaling_list_dc_coef_delta) of the DC coefficient.
  • step S430 the DC coefficient DPCM decoding unit 624 obtains the first AC coefficient (ScalingList [0], ie, AC coefficient (0, 0)) held by the AC coefficient buffer 623, and the first AC coefficient
  • the DC coefficient DPCM decoding unit 624 ends the inverse DPCM process and returns the process to FIG.
  • step S428 the DC coefficient DPCM decoding unit 624 ends the inverse DPCM process, and returns the process to FIG.
  • the image decoding apparatus 300 can suppress an increase in the code amount of the scaling list. it can.
  • the DC coefficient may be further limited to a value smaller than the initial AC coefficient (AC coefficient (0, 0)) (method 3).
  • this DPCM data can be encoded by an unsigned Exponential Golomb code. Therefore, in the case of method 3, although the DC coefficient can not be made larger than the first AC coefficient, the code amount can be reduced more than in the methods 1 and 2.
  • DPCM data (scaling_list_dc_coef_delta) of the DC coefficient is limited to a positive value.
  • the syntax of method 3 can be realized by the image coding apparatus 10 similar to that of method 2.
  • the expG unit 193 can encode DPCM data of DC coefficients by unsigned Golomb coding.
  • the image coding apparatus 10 can execute each process such as the quantization matrix coding process and the DPCM process as in the case of method 2.
  • the syntax of method 3 can be realized by the image decoding apparatus 300 similar to that of method 2.
  • the image decoding apparatus 300 can perform the quantization matrix decoding process as in the case of method 2.
  • steps S451 to S459 are performed in the same manner as the processes of steps S421 to S429 of FIG.
  • step S460 the DC coefficient DPCM decoding unit 624 obtains the first AC coefficient (ScalingList [0], ie, AC coefficient (0, 0)) held by the AC coefficient buffer 623, and the first AC coefficient
  • the DC coefficient DPCM decoding unit 624 ends the inverse DPCM process and returns the process to FIG.
  • step S458 If it is determined in step S458 that the sizeID is 1 or less, the DC coefficient DPCM decoding unit 624 ends the inverse DPCM process, and returns the process to FIG.
  • the image decoding apparatus 300 can suppress an increase in the code amount of the scaling list. it can.
  • Method 4> As a method of transmitting the difference between the DC coefficient and the other coefficients instead of the DC coefficient, for example, only DC coefficients of a plurality of scaling lists are collected, and DC coefficients are separated between AC coefficients separately from each scaling list. DPCM may be performed (method 4). In this case, DPCM data of DC coefficients is collected as data of a plurality of scaling lists, and transmitted as data different from DPCM data of AC coefficients of each scaling list.
  • the configuration of the image coding apparatus 10 is basically the same as that of method 1 described above. That is, the image coding apparatus 10 is configured as in the example shown in FIG. Also, the orthogonal transform / quantization unit 14 is configured as in the example shown in FIG. Furthermore, the matrix processing unit 150 is configured as in the example shown in FIG.
  • the DPCM unit 192 includes an AC coefficient DPCM unit 631, a DC coefficient buffer 632, and a DC coefficient DPCM unit 633.
  • the AC coefficient DPCM unit 631 performs DPCM processing of each AC coefficient supplied from the overlap determination unit 191 for each scaling list. That is, the AC coefficient DPCM unit 631 subtracts the first AC coefficient from a predetermined constant (for example, 8) for each scaling list, or subtracts the AC coefficient (current AC coefficient) to be processed from the previous AC coefficient. Do.
  • the AC coefficient DPCM unit 631 supplies the generated DPCM data (scaling_list_delta_coef) to the expG unit 193 for each scaling list.
  • the DC coefficient buffer 632 stores DC coefficients of each scaling list supplied from the overlap determination unit 191.
  • the DC coefficient buffer 632 supplies the stored DC coefficients to the DC coefficient DPCM unit 633 at predetermined timing or based on a request.
  • the DC coefficient DPCM unit 633 obtains the DC coefficient stored in the DC coefficient buffer 632.
  • the DC coefficient DPCM unit 633 obtains DPCM data of each acquired DC coefficient. That is, the DC coefficient DPCM unit 633 subtracts the first DC coefficient from a predetermined constant (for example, 8) or subtracts the DC coefficient to be processed (current DC coefficient) from the previous DC coefficient.
  • the DC coefficient DPCM unit 633 supplies the generated DPCM data (scaling_list_delta_coef) to the expG unit 193.
  • the image coding apparatus 10 can improve the coding efficiency of the scaling list.
  • the image coding apparatus 10 performs the quantization matrix coding process in the same manner as the method 1 described with reference to the flowchart of FIG.
  • steps S481 to S485 are performed by the AC coefficient DPCM unit 631 in the same manner as the processes of steps S401 to S405 of FIG. 32 (process in the case of method 2).
  • step S483 If it is determined in step S483 that all AC coefficients have been processed, the AC coefficient DPCM unit 631 advances the process to step S486.
  • step S 486 the AC coefficient DPCM unit 631 determines whether all scaling lists (or difference matrices) for collectively DPCM encoding the DC coefficients have been processed. If it is determined that there is an unprocessed scaling list (or difference matrix), the AC coefficient DPCM unit 631 returns the process to step S481.
  • step S486 If it is determined in step S486 that all the scaling lists (or difference matrices) have been processed, the AC coefficient DPCM unit 631 advances the process to step S487.
  • the DC coefficient DPCM unit 633 executes the processes of steps S 487 to S 491 for the DC coefficients stored in the DC coefficient buffer 632 in the same manner as the processes of steps S 481 to S 485.
  • step S489 If it is determined in step S489 that all DC coefficients stored in the DC coefficient buffer 632 have been processed, the DC coefficient DPCM unit 633 ends the DPCM processing, and returns the processing to FIG.
  • the image coding apparatus 10 can improve the coding efficiency of the scaling list.
  • the configuration of the image decoding apparatus 300 in the case of the method 4 is basically the same as that of the method 1. That is, also in the case of the method 4, the image decoding apparatus 300 is configured as in the example shown in FIG. In addition, the inverse quantization / inverse orthogonal transform unit 313 is configured as in the example shown in FIG. Furthermore, the matrix generation unit 410 is configured as in the example shown in FIG.
  • FIG. 40 is a block diagram showing an example of a detailed configuration of the inverse DPCM unit 552 shown in FIG. 24 in the case of method 4.
  • the inverse DPCM unit 552 includes an initial setting unit 641, an AC coefficient DPCM decoding unit 642, and a DC coefficient DPCM decoding unit 643.
  • the initial setting unit 641 acquires sizeID and MatrixID, and sets initial values to various variables.
  • the initial setting unit 641 supplies the acquired or set information to the AC coefficient DPCM decoding unit 642 and the DC coefficient DPCM decoding unit 643.
  • the AC coefficient DPCM decoding unit 642 acquires DPCM data (scaling_list_delta_coef (ac)) of the AC coefficient supplied from the expG unit 551.
  • the AC coefficient DPCM decoding unit 642 decodes DPCM data of the acquired AC coefficient using the initial setting and the like supplied from the initial setting unit 641 to obtain an AC coefficient.
  • the AC coefficient DPCM decoding unit 642 supplies the determined AC coefficients (ScalingList [i]) to the reverse duplication determination unit 553.
  • the AC coefficient DPCM decoding unit 642 performs such processing on a plurality of scaling lists.
  • the DC coefficient DPCM decoding unit 643 acquires DPCM data (scaling_list_delta_coef (dc)) of the DC coefficient supplied from the expG unit 551.
  • the DC coefficient DPCM decoding unit 643 decodes DPCM data of the acquired DC coefficient using the initial setting and the like supplied from the initial setting unit 641, and obtains the DC coefficient of each scaling list.
  • the DC coefficient DPCM decoding unit 643 supplies the obtained DC coefficients (scaling_list_dc_coef) to the inverse duplication determination unit 553.
  • the inverse DPCM unit 552 can correctly perform DPCM decoding, and can obtain DC coefficients and AC coefficients. That is, the image decoding apparatus 300 can suppress an increase in the code amount of the scaling list.
  • the image decoding apparatus 300 executes the quantization matrix decoding process in the same manner as the method 1 described with reference to the flowchart in FIG. Similarly, the image decoding apparatus 300 executes the residual signal decoding process in the same manner as the method 1 described with reference to the flowchart in FIG.
  • the initial setting unit 641 and the AC coefficient DPCM decoding unit 642 execute the processes of steps S511 to S517 in the same manner as the processes of steps S421 to S427 of FIG.
  • step S514 If it is determined in step S514 that the variable i is equal to or greater than coefNum, the AC coefficient DPCM decoding unit 642 advances the process to step S518.
  • step S5108 the AC coefficient DPCM decoding unit 642 determines whether all scaling lists (difference matrices) to be subjected to DPCM processing of DC coefficients are processed. If it is determined that there is an unprocessed scaling list (difference matrix), the AC coefficient DPCM decoding unit 642 returns the process to step S511, and repeats the subsequent processes.
  • the AC coefficient DPCM decoding unit 642 proceeds with the process to FIG.
  • step S523 the DC coefficient DPCM decoding unit 643 determines whether or not sizeID ⁇ 4. If it is determined that the sizeID is smaller than 4, the DC coefficient DPCM decoding unit 643 advances the process to step S524.
  • step S525 the DC coefficient DPCM decoding unit 643 reads DPCM data (scaling_list_delta_coef) of DC coefficients.
  • step S526 the DC coefficient DPCM decoding unit 643 obtains nextcoef as follows using the read DPCM data, and further obtains scaling_dc_coef.
  • step S527 the DC coefficient DPCM decoding unit 643 increments MatrixID, changes the target of processing to the next DC coefficient (next scaling list or residual matrix), and returns the processing to step S524.
  • step S528 the DC coefficient DPCM decoding unit 643 increments sizeID, changes the target of processing to the next DC coefficient (next scaling list or residual matrix), and returns the processing to step S523.
  • step S523 If it is determined in step S523 that the sizeID is 4 or more, the DC coefficient DPCM decoding unit 643 ends the inverse DPCM process, and returns the process to FIG.
  • the image decoding apparatus 300 can suppress an increase in the code amount of the scaling list.
  • FIG. 43 shows another example of syntax relating to the scaling list. This figure corresponds to FIG. In the example of FIG. 12, the initial value of nextcoef is set to a predetermined constant (for example, 8), but instead, as shown in FIG. 43, the initial value of nextcoef is DPCM data of DC coefficient (scaling_list_dc_coef_minus8) You may overwrite it with.
  • a predetermined constant for example, 8
  • FIG. 44 shows another example of syntax relating to the scaling list. This figure corresponds to FIG.
  • scaling_list_pred_matrix_id_delta which is information specifying the reference destination in copy mode
  • scaling_list_pred_matrix_id_delta which is information specifying the reference destination in the copy mode
  • FIG. 45 shows another example of syntax relating to the scaling list. This figure corresponds to FIG.
  • the code amount of the first AC coefficient (the AC coefficient of (0, 0)) in the 16x16 scaling list and the 32x32 scaling list can be reduced, and the syntax is simplified. It is possible to reduce the load of DPCM processing and reverse DPCM processing.
  • the value of the predetermined constant is arbitrary. Also, the size of the scaling list is arbitrary.
  • the size conversion process may be a process of actually generating a matrix whose size is converted. However, it may be processing (read control of matrix data) to set how to read each element of the matrix from the memory without actually generating data of the matrix.
  • each element of the matrix after size conversion is configured by any element of the matrix before size conversion. That is, for example, if the elements of the matrix before size conversion stored in the memory are read by a predetermined method such as reading only a part of elements or reading one element a plurality of times, after size conversion Can generate a matrix of In other words, by defining the reading method of each element (performing reading control of matrix data), the above-described size conversion is substantially realized. By using such a method, processing such as writing matrix data after size conversion in a memory becomes unnecessary.
  • the method of reading matrix data after size conversion is basically determined by the nearest neighbor interpolation method, etc., a relatively low load is sufficient to select an appropriate one from a plurality of options prepared in advance. Can be realized by the processing of Therefore, by using such a method, the load of size conversion is reduced.
  • the size conversion processing described above actually includes generation processing of data of the matrix after size conversion, it also includes readout control of such matrix data.
  • the difference matrix is described to be encoded and transmitted in the above, the present invention is not limited to this, and the scaling list may be encoded and transmitted.
  • the AC coefficients or DC coefficients of the scaling list described above as the coefficients to be processed may be AC coefficients or DC coefficients of the difference matrix between the scaling list and the prediction matrix.
  • information such as scaling list size and list ID related to parameters and flags related to scaling list is, for example, difference with information transmitted last time, and the difference is transmitted to reduce the code amount. You may make it
  • the present invention is not limited to this, and it is possible to quantize the quantization matrix or difference matrix without downconversion. Transmission may be performed with the size of the used quantization matrix.
  • the application scope of the present technology can be applied to encoding / decoding of any image using quantization / inverse quantization.
  • the present technology is, for example, MPEG, H.
  • image information bit stream
  • orthogonal transformation such as discrete cosine transformation and motion compensation as in 26x etc. via satellite broadcasting, cable television, the Internet, or network media such as a cellular phone
  • the present technology can be applied to an image encoding device and an image decoding device that are used when processing on storage media such as an optical disk, a magnetic disk, and a flash memory.
  • the present technology can also be applied to the quantizer / inverse quantizer included in the image coding apparatus and the image decoding apparatus.
  • FIG. 46 shows an example of a multi-viewpoint image coding method.
  • the multi-viewpoint image includes images of a plurality of viewpoints (views).
  • the multiple views of this multi-view image are encoded using the base view that performs encoding / decoding using only the image of its own view without using the images of other views, and the image of the other view.
  • It consists of a non-base view that performs decoding.
  • the non-base view may use an image of a base view, or may use an image of another non-base view.
  • the image of each view is encoded / decoded.
  • the method described in each of the above embodiments for encoding / decoding each view May be applied. By doing this, it is possible to suppress the reduction in the image quality of each view.
  • flags and parameters used in the method described in each of the above embodiments may be shared. By doing this, it is possible to suppress a reduction in coding efficiency.
  • information on scaling lists may be shared in encoding / decoding of each view.
  • SPS Sequence Parameter Set
  • PPS Picture Parameter Set
  • matrix elements of the scaling list (quantization matrix) of the base view may be changed according to the disparity value between the views. Furthermore, an offset value may be transmitted to adjust matrix elements for non-base views with respect to matrix elements of a scaling list (quantization matrix) of base views. By doing this, it is possible to suppress an increase in the code amount.
  • the scaling list for each view may be separately transmitted in advance.
  • information indicating this difference is optional.
  • the information may be 4x4 or 8x8, or may be a difference between matrices.
  • SPSs or PPSs of other views can be referenced (that is, scaling lists of other views). Or information about the scaling list may be used).
  • multi-viewpoint images are represented as images having YUV images and depth images (Depth) corresponding to the amount of parallax between views as components, the respective components (Y, U, V, Depth) It is possible to use mutually independent scaling lists and information on scaling lists for the image of.
  • a depth image (Depth) is an image of an edge
  • a scaling list is unnecessary. Therefore, even if the use of the scaling list is specified in SPS or PPS, the scaling list is not applied to the depth image (Depth) (or the scaling list in which all the matrix elements are identical (FLAT) May apply).
  • FIG. 47 is a diagram showing a multi-viewpoint image coding apparatus which performs the above-described multi-viewpoint image coding.
  • the multi-viewpoint image coding device 700 includes a coding unit 701, a coding unit 702, and a multiplexing unit 703.
  • the encoding unit 701 encodes a base view image to generate a base view image coded stream.
  • the encoding unit 702 encodes the non-base view image to generate a non-base view image coded stream.
  • the multiplexing unit 703 multiplexes the base view image coded stream generated by the coding unit 701 and the non-base view image coded stream generated by the coding unit 702 to generate a multi-view image coded stream. Do.
  • the image coding apparatus 10 (FIG. 14) can be applied to the coding unit 701 and the coding unit 702 of the multi-viewpoint image coding apparatus 700. That is, in encoding for each view, an increase in code amount related to the scaling list can be suppressed, and a reduction in image quality of each view can be suppressed. Also, the encoding unit 701 and the encoding unit 702 can perform processing such as quantization and inverse quantization using the same flags and parameters as each other (that is, can share flags and parameters) Therefore, the reduction of the coding efficiency can be suppressed.
  • FIG. 48 is a diagram illustrating a multi-viewpoint image decoding apparatus that performs the above-described multi-viewpoint image decoding.
  • the multi-viewpoint image decoding device 710 includes a demultiplexing unit 711, a decoding unit 712, and a decoding unit 713.
  • a demultiplexing unit 711 demultiplexes a multi-view image coded stream in which the base view image coded stream and the non-base view image coded stream are multiplexed, and the base view image coded stream and the non-base view image. Extract the coded stream.
  • the decoding unit 712 decodes the base view image coded stream extracted by the demultiplexing unit 711 to obtain a base view image.
  • the decoding unit 713 decodes the non-base view image coded stream extracted by the demultiplexing unit 711 to obtain a non-base view image.
  • the image decoding apparatus 300 (FIG. 22) can be applied to the decoding unit 712 and the decoding unit 713 of the multi-viewpoint image decoding apparatus 710. That is, in the decoding for each view, it is possible to suppress an increase in the amount of code related to the scaling list, and it is possible to suppress a reduction in the image quality of each view. Further, since the decoding unit 712 and the decoding unit 713 can perform processing such as quantization and inverse quantization using the same flag and parameter as each other (that is, they can share the flag and parameter), A reduction in coding efficiency can be suppressed.
  • FIG. 49 shows an example of the hierarchical image coding method.
  • Hierarchical image coding (scalable coding) is to image data into a plurality of layers (layering) so as to have a scalability (scalability) function with respect to predetermined parameters, and to code each layer.
  • Hierarchical image decoding (scalable decoding) is decoding corresponding to the hierarchical image coding.
  • the hierarchized image includes images of a plurality of hierarchies (layers) having different values of the predetermined parameter.
  • a plurality of layers of this hierarchical image are encoded using a base layer that performs encoding / decoding using only an image of its own layer without using an image of another layer, and an image of another layer It consists of a non-base layer (also referred to as an enhancement layer) that performs decoding.
  • the non-base layer may use an image of the base layer, or may use an image of another non-base layer.
  • the non-base layer is configured by data (difference data) of a difference image between its own image and an image of another layer so that redundancy is reduced.
  • difference data difference data
  • a base layer and a non-base layer also referred to as an enhancement layer
  • an image of lower quality than the original image can be obtained only with the data of the base layer.
  • an original image that is, a high quality image
  • images of various qualities can be easily obtained depending on the situation.
  • image compression information of only a base layer is transmitted, and a moving image with low space-time resolution or poor image quality is reproduced
  • image compression information of the enhancement layer is transmitted in addition to the base layer, and the space-time resolution is high, or It is possible to transmit image compression information according to the capabilities of the terminal or the network from the server without performing transcoding processing, such as reproducing high-quality moving images.
  • flags and parameters used in the method described in each of the above embodiments may be shared. By doing this, it is possible to suppress a reduction in coding efficiency.
  • information on scaling lists may be shared in encoding / decoding of each layer.
  • Hierarchical resolution also called spatial resolution scalability
  • spatial scalability spatial scalability
  • the resolution of the image differs for each hierarchy.
  • the hierarchy of the spatially lowest resolution image is used as a base layer, and the hierarchy of images having higher resolution than the base layer is considered as a non-base layer (enhancement layer).
  • the image data of the non-base layer may be data independent of other layers, and as in the case of the base layer, an image of the resolution of that layer may be obtained only by the image data.
  • the data corresponds to the difference image between the image of the layer and the image of another layer (for example, the layer below).
  • the image of the resolution of the base layer layer is obtained only by the image data of the base layer
  • the image of the resolution of the non base layer (enhancement layer) layer is the image data of that layer and other layers. It is obtained by combining the image data (for example, one lower layer). By doing this, it is possible to suppress the redundancy of the image data between the layers.
  • the scaling list (quantization matrix) is shared in encoding / decoding of each layer, the scaling list (quantization matrix) may be upconverted according to the resolution ratio of each layer.
  • the resolution of the image of the base layer is 2K (for example, 1920 ⁇ 1080), and the resolution of the image of the non-base layer (enhancement layer) is 4K (for example, 3840 ⁇ 2160).
  • 16x16 of the base layer image (2K image) corresponds to 32x32 of the non-base layer image (4K image).
  • the scaling list (quantization matrix) is also upconverted as appropriate according to such a resolution ratio.
  • the 4x4 scaling list used for base layer quantization / dequantization is upconverted to 8x8 and used in non-base layer quantization / dequantization.
  • the 8x8 scaling list of the base layer is upconverted to 16x16 in the non-base layer.
  • the scaling list used upconverted to 16x16 in the base layer is upconverted to 32x32 in the non-base layer.
  • the parameter for providing scalability is not limited to the spatial resolution, and for example, there is temporal resolution (temporal scalability).
  • temporal resolution temporary scalability
  • the frame rate of the image differs for each hierarchy.
  • bit-depth scalability in which the bit depth of image data is different for each layer
  • chroma scalability for which the format of components is different for each layer.
  • SNR scalability SNR scalability
  • SNR signal to noise ratio
  • an offset value for adjusting the matrix element of the enhancement layer may be transmitted with respect to the matrix element of the scaling list of the base layer. More specifically, information indicating the difference between the common scaling list and the scaling list actually used may be transmitted for each layer.
  • SPS Sequence Parameter Set
  • PPS Picture Parameter Set
  • Information indicating this difference may be transmitted.
  • Information indicating this difference is optional.
  • it may be a matrix having the element-based difference value of both scaling lists as an element, or may be a function indicating the difference.
  • FIG. 50 is a diagram showing a hierarchical image coding apparatus which performs the above-mentioned hierarchical image coding.
  • the hierarchical image coding device 720 includes a coding unit 721, a coding unit 722, and a multiplexing unit 723.
  • the encoding unit 721 encodes the base layer image to generate a base layer image encoded stream.
  • the encoding unit 722 encodes the non-base layer image to generate a non-base layer image coded stream.
  • the multiplexing unit 723 multiplexes the base layer image coded stream generated by the coding unit 721 and the non-base layer image coded stream generated by the coding unit 722 to generate a hierarchical image coded stream. .
  • the image encoding device 10 (FIG. 14) can be applied to the encoding unit 721 and the encoding unit 722 of the hierarchical image encoding device 720. That is, in encoding for each layer, an increase in code amount related to the scaling list can be suppressed, and a reduction in image quality of each layer can be suppressed. Also, the encoding unit 721 and the encoding unit 722 can perform processing such as quantization and inverse quantization using the same flag and parameter as each other (that is, they can share the flag and parameter) Therefore, the reduction of the coding efficiency can be suppressed.
  • FIG. 51 is a diagram showing a hierarchical image decoding device that performs the hierarchical image decoding described above.
  • the hierarchical image decoding device 730 includes a demultiplexing unit 731, a decoding unit 732, and a decoding unit 733.
  • the demultiplexing unit 731 demultiplexes the hierarchical image coded stream in which the base layer image coded stream and the non-base layer image coded stream are multiplexed, and the base layer image coded stream and the non-base layer image code. Extract the stream of The decoding unit 732 decodes the base layer image coded stream extracted by the demultiplexing unit 731 to obtain a base layer image. The decoding unit 733 decodes the non-base layer image coded stream extracted by the demultiplexing unit 731 to obtain a non-base layer image.
  • the image decoding device 300 (FIG. 22) can be applied to the decoding unit 732 and the decoding unit 733 of the hierarchical image decoding device 730. That is, in the decoding for each layer, it is possible to suppress an increase in the amount of code related to the scaling list, and it is possible to suppress the reduction in the image quality of each layer. Further, since the decoding unit 712 and the decoding unit 713 can perform processing such as quantization and inverse quantization using the same flag and parameter as each other (that is, they can share the flag and parameter), A reduction in coding efficiency can be suppressed.
  • a central processing unit (CPU) 801 of a computer 800 executes various programs according to a program stored in a read only memory (ROM) 802 or a program loaded from a storage unit 813 to a random access memory (RAM) 803. Execute the process
  • the RAM 803 also stores data necessary for the CPU 801 to execute various processes.
  • the CPU 801, the ROM 802, and the RAM 803 are connected to one another via a bus 804.
  • An input / output interface 810 is also connected to the bus 804.
  • the input / output interface 810 includes an input unit 811 including a keyboard, a mouse, a touch panel, and an input terminal, a display including a CRT (Cathode Ray Tube), an LCD (Liquid Crystal Display), an OELD (Organic ElectroLuminescence Display), and the like.
  • a communication unit 814 formed of any wired or wireless communication device such as a LAN interface, USB (Universal Serial Bus), and Bluetooth (registered trademark) is connected.
  • the communication unit 814 performs communication processing with another communication device via, for example, a network including the Internet.
  • a drive 815 is also connected to the input / output interface 810 as necessary.
  • a removable medium 821 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is appropriately mounted on the drive 815.
  • the drive 815 reads a computer program, data, and the like from the removable medium 821 mounted on the drive 815, for example, under the control of the CPU 801.
  • the read data and computer program are supplied to, for example, the RAM 803.
  • the computer program read from the removable medium 821 is installed in the storage unit 813 as necessary.
  • a program that configures the software is installed from a network or a recording medium.
  • This recording medium is, for example, as shown in FIG. 52, a magnetic disk (including a flexible disk) on which a program is recorded, which is distributed for distributing the program to the user separately from the apparatus main body, an optical disk ( It consists only of removable media 821 consisting of CD-ROM (Compact Disc-Read Only Memory), DVD (Digital Versatile Disc), magneto-optical disc (including MD (Mini Disc), or semiconductor memory etc. Instead, it is configured by the ROM 802 in which the program is recorded and distributed to the user in a state of being incorporated in the apparatus main body, a hard disk included in the storage unit 813, or the like.
  • the program executed by the computer 800 may be a program that performs processing in chronological order according to the order described in this specification, or in parallel, or when necessary, such as when a call is made. It may be a program in which processing is performed.
  • the step of describing the program to be recorded on the recording medium is not limited to processing performed chronologically in the order described, but not necessarily parallel processing It also includes processing to be executed individually.
  • a system means a set of a plurality of components (apparatus, modules (parts), etc.), and it does not matter whether all the components are in the same case. Therefore, a plurality of devices housed in separate housings and connected via a network, and one device housing a plurality of modules in one housing are all systems. .
  • the configuration described above as one device (or processing unit) may be divided and configured as a plurality of devices (or processing units).
  • the configuration described as a plurality of devices (or processing units) in the above may be collectively configured as one device (or processing unit).
  • configurations other than those described above may be added to the configuration of each device (or each processing unit).
  • part of the configuration of one device (or processing unit) may be included in the configuration of another device (or other processing unit) if the configuration or operation of the entire system is substantially the same. . That is, the embodiment of the present technology is not limited to the above-described embodiment, and various modifications can be made without departing from the scope of the present technology.
  • the present technology can have a cloud computing configuration in which one function is shared and processed by a plurality of devices via a network.
  • each step described in the above-described flowchart can be executed by one device or in a shared manner by a plurality of devices.
  • the plurality of processes included in one step can be executed by being shared by a plurality of devices in addition to being executed by one device.
  • the image encoding device 10 (FIG. 14) and the image decoding device 300 (FIG. 22) are satellite broadcasting, cable broadcasting such as cable TV, distribution over the Internet, and distribution to terminals by cellular communication.
  • the present invention can be applied to various electronic devices such as a transmitter or receiver, a recording device for recording an image on a medium such as an optical disk, a magnetic disk and a flash memory, or a reproduction device for reproducing an image from these storage media.
  • a transmitter or receiver a recording device for recording an image on a medium such as an optical disk, a magnetic disk and a flash memory, or a reproduction device for reproducing an image from these storage media.
  • FIG. 53 shows an example of a schematic configuration of a television set to which the embodiment described above is applied.
  • the television device 900 includes an antenna 901, a tuner 902, a demultiplexer 903, a decoder 904, a video signal processing unit 905, a display unit 906, an audio signal processing unit 907, a speaker 908, an external interface 909, a control unit 910, a user interface 911, And a bus 912.
  • the tuner 902 extracts a signal of a desired channel from a broadcast signal received via the antenna 901, and demodulates the extracted signal. Then, the tuner 902 outputs the coded bit stream obtained by demodulation to the demultiplexer 903. That is, the tuner 902 has a role as a transmission unit in the television apparatus 900 which receives a coded stream in which an image is coded.
  • the demultiplexer 903 separates the video stream and audio stream of the program to be viewed from the coded bit stream, and outputs the separated streams to the decoder 904. Also, the demultiplexer 903 extracts auxiliary data such as an EPG (Electronic Program Guide) from the encoded bit stream, and supplies the extracted data to the control unit 910. When the coded bit stream is scrambled, the demultiplexer 903 may perform descrambling.
  • EPG Electronic Program Guide
  • the decoder 904 decodes the video stream and audio stream input from the demultiplexer 903. Then, the decoder 904 outputs the video data generated by the decoding process to the video signal processing unit 905. Further, the decoder 904 outputs the audio data generated by the decoding process to the audio signal processing unit 907.
  • the video signal processing unit 905 reproduces the video data input from the decoder 904 and causes the display unit 906 to display a video. Also, the video signal processing unit 905 may cause the display unit 906 to display an application screen supplied via the network. Further, the video signal processing unit 905 may perform additional processing such as noise removal on the video data according to the setting. Furthermore, the video signal processing unit 905 may generate an image of a graphical user interface (GUI) such as a menu, a button, or a cursor, for example, and may superimpose the generated image on the output image.
  • GUI graphical user interface
  • the display unit 906 is driven by a drive signal supplied from the video signal processing unit 905, and displays an image on the image surface of a display device (for example, a liquid crystal display, a plasma display, or OELD (Organic ElectroLuminescence Display) (organic EL display)). Or display an image.
  • a display device for example, a liquid crystal display, a plasma display, or OELD (Organic ElectroLuminescence Display) (organic EL display)). Or display an image.
  • the audio signal processing unit 907 performs reproduction processing such as D / A conversion and amplification on audio data input from the decoder 904, and causes the speaker 908 to output audio. Further, the audio signal processing unit 907 may perform additional processing such as noise removal on the audio data.
  • the external interface 909 is an interface for connecting the television device 900 to an external device or a network.
  • a video stream or an audio stream received via the external interface 909 may be decoded by the decoder 904. That is, the external interface 909 also has a role as a transmission unit in the television apparatus 900 that receives the encoded stream in which the image is encoded.
  • the control unit 910 includes a processor such as a CPU, and memories such as a RAM and a ROM.
  • the memory stores a program executed by the CPU, program data, EPG data, data acquired via a network, and the like.
  • the program stored by the memory is read and executed by the CPU, for example, when the television device 900 is started.
  • the CPU controls the operation of the television apparatus 900 according to an operation signal input from, for example, the user interface 911 by executing a program.
  • the user interface 911 is connected to the control unit 910.
  • the user interface 911 has, for example, buttons and switches for the user to operate the television device 900, a receiver of remote control signals, and the like.
  • the user interface 911 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 910.
  • the bus 912 mutually connects the tuner 902, the demultiplexer 903, the decoder 904, the video signal processing unit 905, the audio signal processing unit 907, the external interface 909, and the control unit 910.
  • the decoder 904 has the function of the image decoding apparatus 300 (FIG. 22) according to the above-described embodiment. Therefore, the television apparatus 900 can suppress an increase in the code amount of the scaling list.
  • FIG. 54 shows an example of a schematic configuration of a mobile phone to which the embodiment described above is applied.
  • the mobile phone 920 includes an antenna 921, a communication unit 922, an audio codec 923, a speaker 924, a microphone 925, a camera unit 926, an image processing unit 927, a multiplexing and separating unit 928, a recording and reproducing unit 929, a display unit 930, a control unit 931, an operation.
  • a unit 932 and a bus 933 are provided.
  • the antenna 921 is connected to the communication unit 922.
  • the speaker 924 and the microphone 925 are connected to the audio codec 923.
  • the operation unit 932 is connected to the control unit 931.
  • the bus 933 mutually connects the communication unit 922, the audio codec 923, the camera unit 926, the image processing unit 927, the demultiplexing unit 928, the recording / reproducing unit 929, the display unit 930, and the control unit 931.
  • the cellular phone 920 can transmit and receive audio signals, transmit and receive electronic mail or image data, capture an image, and record data in various operation modes including a voice call mode, a data communication mode, a shooting mode, and a videophone mode. Do the action.
  • the analog voice signal generated by the microphone 925 is supplied to the voice codec 923.
  • the audio codec 923 converts an analog audio signal into audio data, and A / D converts and compresses the converted audio data. Then, the audio codec 923 outputs the compressed audio data to the communication unit 922.
  • the communication unit 922 encodes and modulates audio data to generate a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921.
  • the communication unit 922 also amplifies and frequency-converts a radio signal received via the antenna 921 to obtain a reception signal.
  • the communication unit 922 demodulates and decodes the received signal to generate audio data, and outputs the generated audio data to the audio codec 923.
  • the audio codec 923 decompresses and D / A converts audio data to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
  • the control unit 931 generates character data constituting an electronic mail in accordance with an operation by the user via the operation unit 932. Further, the control unit 931 causes the display unit 930 to display characters. Further, the control unit 931 generates electronic mail data in response to a transmission instruction from the user via the operation unit 932, and outputs the generated electronic mail data to the communication unit 922.
  • a communication unit 922 encodes and modulates electronic mail data to generate a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. The communication unit 922 also amplifies and frequency-converts a radio signal received via the antenna 921 to obtain a reception signal.
  • the communication unit 922 demodulates and decodes the received signal to restore the e-mail data, and outputs the restored e-mail data to the control unit 931.
  • the control unit 931 causes the display unit 930 to display the content of the e-mail, and stores the e-mail data in the storage medium of the recording and reproduction unit 929.
  • the recording and reproducing unit 929 includes an arbitrary readable and writable storage medium.
  • the storage medium may be a built-in storage medium such as a RAM or a flash memory, or an externally mounted storage medium such as a hard disk, a magnetic disk, a magnetooptical disk, an optical disk, a USB memory, or a memory card. May be
  • the camera unit 926 captures an image of a subject to generate image data, and outputs the generated image data to the image processing unit 927.
  • the image processing unit 927 encodes the image data input from the camera unit 926, and stores the encoded stream in the storage medium of the recording and reproduction unit 929.
  • the demultiplexing unit 928 multiplexes the video stream encoded by the image processing unit 927 and the audio stream input from the audio codec 923, and the communication unit 922 multiplexes the multiplexed stream.
  • Output to The communication unit 922 encodes and modulates the stream to generate a transmission signal.
  • the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921.
  • the communication unit 922 also amplifies and frequency-converts a radio signal received via the antenna 921 to obtain a reception signal.
  • the transmission signal and the reception signal may include a coded bit stream.
  • the communication unit 922 demodulates and decodes the received signal to restore the stream, and outputs the restored stream to the demultiplexing unit 928.
  • the demultiplexing unit 928 separates the video stream and the audio stream from the input stream, and outputs the video stream to the image processing unit 927 and the audio stream to the audio codec 923.
  • the image processing unit 927 decodes the video stream to generate video data.
  • the video data is supplied to the display unit 930, and the display unit 930 displays a series of images.
  • the audio codec 923 decompresses and D / A converts the audio stream to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
  • the image processing unit 927 has the function of the image encoding device 10 (FIG. 14) according to the embodiment described above and the function of the image decoding device 300 (FIG. 22). Therefore, the mobile phone 920 can suppress an increase in the amount of code in the scaling list.
  • the mobile phone 920 has been described above, for example, a PDA (Personal Digital Assistants), a smartphone, an UMPC (Ultra Mobile Personal Computer), a netbook, a notebook personal computer, etc.
  • a PDA Personal Digital Assistants
  • UMPC Ultra Mobile Personal Computer
  • netbook a notebook personal computer
  • an image encoding device and an image decoding device to which the present technology is applied can be applied to any device as in the case of the mobile phone 920.
  • FIG. 55 shows an example of a schematic configuration of a recording and reproducing device to which the embodiment described above is applied.
  • the recording / reproducing device 940 encodes, for example, audio data and video data of the received broadcast program, and records the encoded data on a recording medium.
  • the recording and reproduction device 940 may encode, for example, audio data and video data acquired from another device and record the encoded data on a recording medium.
  • the recording / reproducing device 940 reproduces the data recorded on the recording medium on the monitor and the speaker, for example, in accordance with the user's instruction. At this time, the recording / reproducing device 940 decodes the audio data and the video data.
  • the recording / reproducing apparatus 940 includes a tuner 941, an external interface 942, an encoder 943, an HDD (Hard Disk Drive) 944, a disk drive 945, a selector 946, a decoder 947, an OSD (On-Screen Display) 948, a control unit 949, and a user interface. And 950.
  • the tuner 941 extracts a signal of a desired channel from a broadcast signal received via an antenna (not shown) and demodulates the extracted signal. Then, the tuner 941 outputs the coded bit stream obtained by demodulation to the selector 946. That is, the tuner 941 has a role as a transmission unit in the recording / reproducing apparatus 940.
  • the external interface 942 is an interface for connecting the recording and reproducing device 940 to an external device or a network.
  • the external interface 942 may be, for example, an IEEE 1394 interface, a network interface, a USB interface, or a flash memory interface.
  • video data and audio data received via the external interface 942 are input to the encoder 943. That is, the external interface 942 has a role as a transmission unit in the recording and reproducing device 940.
  • the encoder 943 encodes video data and audio data when the video data and audio data input from the external interface 942 are not encoded. Then, the encoder 943 outputs the coded bit stream to the selector 946.
  • the HDD 944 records an encoded bit stream obtained by compressing content data such as video and audio, various programs, and other data in an internal hard disk. Also, the HDD 944 reads these data from the hard disk when reproducing video and audio.
  • the disk drive 945 records and reads data on the attached recording medium.
  • the recording medium mounted on the disk drive 945 is, for example, a DVD disk (DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD + R, DVD + RW, etc.) or Blu-ray (registered trademark) disk, etc. It may be.
  • the selector 946 selects the coded bit stream input from the tuner 941 or the encoder 943 when recording video and audio, and outputs the selected coded bit stream to the HDD 944 or the disk drive 945. Further, the selector 946 outputs the encoded bit stream input from the HDD 944 or the disk drive 945 to the decoder 947 at the time of reproduction of video and audio.
  • the decoder 947 decodes the coded bit stream to generate video data and audio data. Then, the decoder 947 outputs the generated video data to the OSD 948. Also, the decoder 904 outputs the generated audio data to an external speaker.
  • the OSD 948 reproduces the video data input from the decoder 947 and displays the video.
  • the OSD 948 may superimpose an image of a GUI such as a menu, a button, or a cursor on the video to be displayed.
  • the control unit 949 includes a processor such as a CPU, and memories such as a RAM and a ROM.
  • the memory stores programs executed by the CPU, program data, and the like.
  • the program stored by the memory is read and executed by the CPU, for example, when the recording and reproducing device 940 is started.
  • the CPU controls the operation of the recording / reproducing apparatus 940 in accordance with an operation signal input from, for example, the user interface 950 by executing a program.
  • the user interface 950 is connected to the control unit 949.
  • the user interface 950 includes, for example, buttons and switches for the user to operate the recording and reproducing device 940, a receiver of a remote control signal, and the like.
  • the user interface 950 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 949.
  • the encoder 943 has the function of the image coding apparatus 10 (FIG. 14) according to the embodiment described above.
  • the decoder 947 has the function of the image decoding apparatus 300 (FIG. 22) according to the above-described embodiment. Therefore, the recording and reproduction device 940 can suppress an increase in the code amount of the scaling list.
  • FIG. 56 shows an example of a schematic configuration of an imaging device to which the embodiment described above is applied.
  • the imaging device 960 captures an image of a subject to generate image data, encodes the image data, and records the image data in a recording medium.
  • the imaging device 960 includes an optical block 961, an imaging unit 962, a signal processing unit 963, an image processing unit 964, a display unit 965, an external interface 966, a memory 967, a media drive 968, an OSD 969, a control unit 970, a user interface 971, and a bus. 972 is provided.
  • the optical block 961 is connected to the imaging unit 962.
  • the imaging unit 962 is connected to the signal processing unit 963.
  • the display unit 965 is connected to the image processing unit 964.
  • the user interface 971 is connected to the control unit 970.
  • the bus 972 mutually connects the image processing unit 964, the external interface 966, the memory 967, the media drive 968, the OSD 969, and the control unit 970.
  • the optical block 961 has a focus lens, an aperture mechanism, and the like.
  • the optical block 961 forms an optical image of a subject on the imaging surface of the imaging unit 962.
  • the imaging unit 962 includes an image sensor such as a CCD or a CMOS, and converts an optical image formed on an imaging surface into an image signal as an electrical signal by photoelectric conversion. Then, the imaging unit 962 outputs the image signal to the signal processing unit 963.
  • the signal processing unit 963 performs various camera signal processing such as knee correction, gamma correction, and color correction on the image signal input from the imaging unit 962.
  • the signal processing unit 963 outputs the image data after camera signal processing to the image processing unit 964.
  • the image processing unit 964 encodes the image data input from the signal processing unit 963 to generate encoded data. Then, the image processing unit 964 outputs the generated encoded data to the external interface 966 or the media drive 968. The image processing unit 964 also decodes encoded data input from the external interface 966 or the media drive 968 to generate image data. Then, the image processing unit 964 outputs the generated image data to the display unit 965.
  • the image processing unit 964 may output the image data input from the signal processing unit 963 to the display unit 965 to display an image. The image processing unit 964 may superimpose the display data acquired from the OSD 969 on the image to be output to the display unit 965.
  • the OSD 969 generates an image of a GUI such as a menu, a button, or a cursor, for example, and outputs the generated image to the image processing unit 964.
  • a GUI such as a menu, a button, or a cursor
  • the external interface 966 is configured as, for example, a USB input / output terminal.
  • the external interface 966 connects the imaging device 960 and the printer, for example, when printing an image.
  • a drive is connected to the external interface 966 as necessary.
  • removable media such as a magnetic disk or an optical disk may be attached to the drive, and a program read from the removable media may be installed in the imaging device 960.
  • the external interface 966 may be configured as a network interface connected to a network such as a LAN or the Internet. That is, the external interface 966 has a role as a transmission unit in the imaging device 960.
  • the recording medium mounted in the media drive 968 may be, for example, any readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory.
  • the recording medium may be fixedly attached to the media drive 968, and a non-portable storage unit such as, for example, a built-in hard disk drive or a solid state drive (SSD) may be configured.
  • SSD solid state drive
  • the control unit 970 includes a processor such as a CPU, and memories such as a RAM and a ROM.
  • the memory stores programs executed by the CPU, program data, and the like.
  • the program stored by the memory is read and executed by the CPU, for example, when the imaging device 960 starts up.
  • the CPU controls the operation of the imaging device 960 according to an operation signal input from, for example, the user interface 971 by executing a program.
  • the user interface 971 is connected to the control unit 970.
  • the user interface 971 includes, for example, buttons and switches for the user to operate the imaging device 960.
  • the user interface 971 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 970.
  • the image processing unit 964 has the function of the image coding device 10 (FIG. 14) according to the above-described embodiment and the function of the image decoding device 300 (FIG. 22). Therefore, the imaging device 960 can suppress an increase in the code amount of the scaling list.
  • Scalable coding is used for selection of data to be transmitted, for example, as in the example shown in FIG.
  • the distribution server 1002 reads the scalable encoded data stored in the scalable encoded data storage unit 1001, and the personal computer 1004, the AV device 1005, the tablet via the network 1003. It is distributed to terminal devices such as the device 1006 and the mobile telephone 1007.
  • the distribution server 1002 selects and transmits encoded data of appropriate quality according to the capability of the terminal device, the communication environment, and the like. Even if the distribution server 1002 unnecessarily transmits high-quality data, the terminal device can not always obtain high-quality images, which may cause delay or overflow. In addition, the communication band may be unnecessarily occupied, or the load on the terminal may be unnecessarily increased. Conversely, even if the distribution server 1002 unnecessarily transmits low quality data, there is a possibility that the terminal apparatus can not obtain an image of sufficient quality. Therefore, the distribution server 1002 appropriately reads and transmits scalable encoded data stored in the scalable encoded data storage unit 1001 as encoded data of appropriate quality for the capability of the terminal device, communication environment, etc. .
  • the scalable encoded data storage unit 1001 stores scalable encoded data (BL + EL) 1011 which has been encoded in a scalable manner.
  • This scalable encoded data (BL + EL) 1011 is encoded data including both a base layer and an enhancement layer, and data that can obtain both an image of the base layer and an image of the enhancement layer by decoding. It is.
  • the distribution server 1002 selects an appropriate layer according to the capability of the terminal apparatus that transmits data, the communication environment, and the like, and reads data of the layer. For example, the distribution server 1002 reads high-quality scalable encoded data (BL + EL) 1011 from the scalable encoded data storage unit 1001 and transmits it as it is to the high-performance personal computer 1004 or tablet device 1006. . On the other hand, for example, the distribution server 1002 extracts the data of the base layer from the scalable encoded data (BL + EL) 1011 for the AV device 1005 or the portable telephone 1007 having low processing capability, and the scalable encoding is performed. Data of the same content as data (BL + EL) 1011 is transmitted as scalable coded data (BL) 1012 that has lower quality than scalable coded data (BL + EL) 1011.
  • BL scalable coded data
  • the amount of data can be easily adjusted, so that occurrence of delay and overflow can be suppressed, and unnecessary increase in load on a terminal device or communication medium can be suppressed. be able to.
  • the amount of scalable encoded data (BL + EL) 1011 can be reduced compared to the case where the encoded data of each layer are individual data. . Therefore, the storage area of the scalable encoded data storage unit 1001 can be used more efficiently.
  • the network 1003 serving as a communication medium may be any communication network including wired and / or wireless networks such as the Internet and LAN (Local Area Network), and its data transmission capability is various. Furthermore, there is also the possibility of changes due to other communications and the like.
  • the distribution server 1002 communicates with the terminal device that is the data transmission destination before starting data transmission, and the hardware performance of the terminal device, the performance of the application (software) executed by the terminal device, etc. Information on the capability of the terminal device and information on the communication environment such as the available bandwidth of the network 1003 may be obtained. Then, the distribution server 1002 may select an appropriate layer based on the information obtained here.
  • the layer extraction may be performed in the terminal device.
  • the personal computer 1004 may decode the transmitted scalable encoded data (BL + EL) 1011 to display an image of the base layer, or may display an image of the enhancement layer.
  • the personal computer 1004 extracts the scalable encoded data (BL) 1012 of the base layer from the transmitted scalable encoded data (BL + EL) 1011 and stores it or transfers it to another device. , And may be displayed to display the image of the base layer.
  • the numbers of the scalable encoded data storage unit 1001, the distribution server 1002, the network 1003, and the number of terminal devices are arbitrary.
  • the example in which the distribution server 1002 transmits data to the terminal device has been described above, the usage example is not limited to this.
  • the data transmission system 1000 is any system as long as it is a system that selects and transmits an appropriate layer according to the capability of the terminal device, the communication environment, etc., when transmitting the encoded data that has been subjected to scalable coding to the terminal device. It can be applied to the system.
  • the present technology is applied similarly to the application to the hierarchical coding / hierarchical decoding described above with reference to FIGS. 49 to 51.
  • the same effects as the effects described above with reference to 49 to 51 can be obtained.
  • scalable coding is utilized for transmission over multiple communication media, eg, as in the example shown in FIG.
  • a broadcasting station 1101 transmits scalable encoded data (BL) 1121 of a base layer by terrestrial broadcast 1111. Also, the broadcast station 1101 transmits (for example, packetizes and transmits) scalable encoded data (EL) 1122 of the enhancement layer via an arbitrary network 1112 formed of a wired and / or wireless communication network.
  • BL scalable encoded data
  • EL scalable encoded data
  • the terminal device 1102 has a function of receiving the terrestrial broadcast 1111 broadcasted by the broadcast station 1101, and receives scalable encoded data (BL) 1121 of the base layer transmitted via the terrestrial broadcast 1111. Also, the terminal device 1102 further has a communication function of performing communication via the network 1112, and receives scalable encoded data (EL) 1122 of the enhancement layer transmitted via the network 1112.
  • BL scalable encoded data
  • EL scalable encoded data
  • the terminal device 1102 decodes the base layer scalable encoded data (BL) 1121 acquired via the terrestrial broadcast 1111 according to, for example, a user instruction or the like to obtain or store an image of the base layer, Transmit to other devices.
  • BL base layer scalable encoded data
  • the terminal device 1102 may perform scalable coding of the base layer scalable encoded data (BL) 1121 acquired through the terrestrial broadcast 1111 according to, for example, a user instruction and the like, and scalable encoding of the enhancement layer acquired through the network 1112. It combines data (EL) 1122 to obtain scalable encoded data (BL + EL), decodes it to obtain an image of an enhancement layer, stores it, and transmits it to another device.
  • BL base layer scalable encoded data
  • EL scalable encoded data
  • scalable encoded data can be transmitted, for example, via different communication media for each layer. Therefore, the load can be distributed, and the occurrence of delay and overflow can be suppressed.
  • a communication medium to be used for transmission may be selected for each layer. For example, scalable encoded data (BL) 1121 of a base layer having a relatively large amount of data is transmitted through a communication medium having a wide bandwidth, and scalable encoded data (EL) 1122 of an enhancement layer having a relatively small amount of data is transmitted. It may be made to transmit via a narrow bandwidth communication medium. Also, for example, whether the communication medium for transmitting the enhancement layer scalable encoded data (EL) 1122 is the network 1112 or the terrestrial broadcasting 1111 is switched according to the available bandwidth of the network 1112. May be Of course, the same is true for data of any layer.
  • the data transmission system 1100 can be applied to any system as long as it is a system that divides scalable encoded coded data into a plurality of units on a layer basis and transmits the data through a plurality of circuits.
  • the present technology is applied similarly to the application to the hierarchical coding / hierarchical decoding described above with reference to FIGS. 49 to 51.
  • the same effects as the effects described above with reference to 49 to 51 can be obtained.
  • scalable coding is used for storage of coded data, as in the example shown in FIG. 59, for example.
  • the imaging device 1201 performs scalable coding on image data obtained by imaging the subject 1211 and sets the scalable coded data storage device 1202 as scalable coded data (BL + EL) 1221. Supply to
  • the scalable encoded data storage device 1202 stores scalable encoded data (BL + EL) 1221 supplied from the imaging device 1201 with quality according to the situation. For example, in the normal case, the scalable encoded data storage device 1202 extracts data of the base layer from the scalable encoded data (BL + EL) 1221, and the scalable encoded data of the base layer with low quality and a small amount of data ( BL) 1222 is stored. On the other hand, for example, at the time of attention, the scalable encoded data storage device 1202 stores the high quality and scalable encoded data (BL + EL) 1221 with a large amount of data.
  • the scalable encoded data storage device 1202 can save the image with high image quality only when necessary, so that the amount of data can be increased while suppressing reduction of the image value due to image quality deterioration. Can be suppressed, and the use efficiency of the storage area can be improved.
  • the imaging device 1201 is a surveillance camera.
  • the monitoring target for example, an intruder
  • the image data scalable coding Data
  • the image data is stored in low quality.
  • the monitoring target appears as a subject 1211 in the captured image (at the time of attention)
  • the content of the captured image is likely to be important, so the image quality is prioritized, and the image data (scalable (scalable)
  • the encoded data is stored with high quality.
  • the scalable encoded data storage device 1202 may determine whether it is normal time or attention time by analyzing the image. Alternatively, the imaging apparatus 1201 may make a determination and transmit the determination result to the scalable encoded data storage device 1202.
  • the criterion for determining whether it is normal time or attention time is arbitrary, and the content of the image used as the determination criterion is arbitrary. Of course, conditions other than the content of the image can also be used as the determination criteria. For example, switching may be performed according to the size, waveform, or the like of the recorded voice, switching may be performed every predetermined time, or switching may be performed according to an external instruction such as a user instruction.
  • the normal time and the attention time has been described, but the number of states is arbitrary. For example, the normal time, a little attention time, attention time, attention time, etc. Alternatively, three or more states may be switched. However, the upper limit number of switching states depends on the number of layers of scalable encoded data.
  • the imaging device 1201 may determine the number of layers of scalable coding according to the state. For example, in the normal state, the imaging device 1201 may generate scalable encoded data (BL) 1222 of a low quality and low data base layer and supply it to the scalable encoded data storage device 1202. Also, for example, at the time of attention, the imaging device 1201 generates scalable encoded data (BL + EL) 1221 of the base layer with high quality and a large amount of data, and supplies it to the scalable encoded data storage device 1202. May be
  • the application of the imaging system 1200 is optional and is not limited to the surveillance camera.
  • the present technology is applied similarly to the application to hierarchical coding / hierarchical decoding described above with reference to FIG. 49 to FIG.
  • the same effects as the effects described above with reference to FIG. 51 can be obtained.
  • the present technology is also applicable to HTTP streaming, such as MPEG DASH, which selects and uses an appropriate one of a plurality of pieces of encoded data having different resolutions and the like prepared in advance in units of segments. Can. That is, information on encoding and decoding can also be shared among such multiple pieces of encoded data.
  • image encoding device and the image decoding device to which the present technology is applied are also applicable to devices and systems other than the above-described devices.
  • the quantization matrix (or the coefficients used when constructing the quantization matrix) is transmitted from the encoding side to the decoding side.
  • the technique of transmitting the quantization matrix may be transmitted or recorded as separate data associated with the coded bit stream without being multiplexed into the coded bit stream.
  • the term “associate” allows an image (a slice or a block, which may be a part of an image) included in a bitstream to be linked at the time of decoding with information corresponding to the image.
  • the information may be transmitted on a different transmission path from the image (or bit stream).
  • the information may be recorded on a recording medium (or another recording area of the same recording medium) different from the image (or bit stream).
  • the information and the image (or bit stream) may be associated with each other in any unit such as, for example, a plurality of frames, one frame, or a part in a frame.

Landscapes

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

Abstract

 本開示は、符号化効率の低減を抑制することができるようにする画像処理装置および方法に関する。 本開示の画像処理装置は、量子化行列をコピーするコピーモードを用いる際に量子化行列の参照先を識別する量子化行列参照データと量子化行列を識別する量子化行列識別データとが一致する場合に、逆量子化する際の処理単位であるブロックサイズと同じサイズに対応するデフォルト量子化行列を用いて、前記復号により生成された量子化データを逆量子化する。本開示は画像処理装置に適用することができる。

Description

画像処理装置および方法
 本開示は、画像処理装置および方法に関する。
 映像符号化方式の標準仕様の1つであるH.264/AVC(Advanced Video Coding)では、High Profile以上のプロファイルにおいて、画像データの量子化の際に、直交変換係数の成分ごとに異なる量子化ステップを用いることができる。直交変換係数の成分ごとの量子化ステップは、直交変換の単位と同等のサイズで定義される量子化行列(スケーリングリストともいう)及び基準のステップ値に基づいて設定され得る。
 量子化行列の規定値は、予測モード(イントラ予測モード、インター予測モード)と変換単位のサイズ(4x4、8x8)毎に用意される。また、ユーザは、シーケンスパラメータセット又はピクチャパラメータセットにおいて、既定値とは異なる独自の量子化行列を指定することができる。量子化行列が使用されない場合には、量子化の際に使用される量子化ステップは、全ての成分について等しい値となる。
 H.264/AVCに続く次世代の映像符号化方式として標準化が進められているHEVC(High Efficiency Video Coding)では、従来のマクロブロックに相当する符号化単位(CU(Coding Unit))という概念が導入されている(例えば、非特許文献1参照)。符号化単位のサイズの範囲は、シーケンスパラメータセットにおいて、LCU(LargestCoding Unit)及びSCU(Smallest Coding Unit)という2のべき乗の値の組で指定される。そして、split_flagを用いて、LCU及びSCUで指定された範囲内の具体的な符号化単位のサイズが特定される。
 HEVCでは、1つの符号化単位は、1つ以上の直交変換の単位、即ち1つ以上の変換単位(TU(Transform Unit))に分割され得る。変換単位のサイズとしては、4x4、8x8、16x16及び32x32のいずれかが利用可能である。
 ところで、量子化行列(スケーリングリスト(Scaling List))は、伝送の際の符号量の低減等を目的として、そのDC成分(直流成分とも称する)が、AC成分(交流成分とも称する)とは別のデータとして伝送される。つまり、スケーリングリストのDC成分は、スケーリングリストのAC成分である各AC係数(交流係数とも称する)とは別の、DC係数(直流係数とも称する)として伝送される。
 このDC係数について、伝送の際の符号量を低減させるために、DC係数の値から定数(例えば8)が差し引かれ、その値(scaling_list_dc_coef_minus8)が、符号つきの指数ゴロム符号化(signed exponential golomb coding)されるようにすることが提案されている(例えば、非特許文献1参照)。
Benjamin Bross, Fraunhofer HHI, Woo-Jin Han, Gachon University, Jens-Rainer Ohm, RWTH Aachen, Gary J. Sullivan, Microsoft, Thomas Wiegand, Fraunhofer HHI / TU Berlin, JCTVC-H1003, " High Efficiency Video Coding (HEVC) text specification draft 6", Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG117th Meeting: Geneva, CH, 21-30 November, 2011
 ところで、従来の場合、デフォルトマトリクスを使用することを示す情報を伝送するために符号化効率を大幅に低減させる恐れがあった。
 本開示は、このような状況に鑑みて提案されたものであり、符号化効率の低減を抑制することができるようにすることを目的とする。
 本開示の一側面は、符号化データを復号して量子化データを生成する復号部と、量子化行列をコピーするコピーモードを用いる際に量子化行列の参照先を識別する量子化行列参照データと量子化行列を識別する量子化行列識別データとが一致する場合に、逆量子化する際の処理単位であるブロックサイズと同じサイズに対応するデフォルト量子化行列を用いて、前記復号部により生成された量子化データを逆量子化する逆量子化部とを備える画像処理装置である。
 前記逆量子化部は、前記量子化行列参照データと前記量子化行列識別データとが一致する場合に前記デフォルト量子化行列を参照するようにセマンティクスが設定されたシンタクスをパースして、前記量子化データを逆量子化することができる。
 前記逆量子化部は、前記量子化行列参照データと前記量子化行列識別データとの差分が0の場合に、デフォルト量子化行列を参照するようにセマンティクスが設定されたシンタクスをパースして、前記量子化データを逆量子化することができる。
 前記量子化行列をアップコンバートするアップコンバート部を更に備え、前記逆量子化部は、前記アップコンバート部によりアップコンバートされた量子化行列を用いて、前記量子化データを逆量子化することができる。
 前記アップコンバート部は、前記量子化行列の行列要素に対して最近傍補間処理を行うことにより、伝送の際に許容される最大サイズである伝送サイズ以下に制限された量子化行列をアップコンバートすることができる。
 前記伝送サイズは、8x8であり、前記アップコンバート部は、8x8サイズの量子化行列の行列要素に対して前記最近傍補間処理を行うことにより、16x16サイズの量子化行列にアップコンバートすることができる。
 前記アップコンバート部は、8x8サイズの量子化行列の行列要素に対して前記最近傍補間処理を行うことにより、32x32サイズの量子化行列にアップコンバートすることができる。
 復号処理する際の処理単位であるコーディングユニットと変換処理をする際の処理単位であるトランスフォームユニットとが階層構造を有し、前記復号部は、階層構造を有する単位で復号処理して前記量子化データを生成し、前記アップコンバート部は、前記量子化行列を、伝送の際に許容される最大サイズである伝送サイズから逆量子化を行う処理単位であるトランスフォームユニットのサイズにアップコンバートすることができる。
 本開示の一側面は、また、符号化データを復号して量子化データを生成し、量子化行列をコピーするコピーモードを用いる際に量子化行列の参照先を識別する量子化行列参照データと量子化行列を識別する量子化行列識別データとが一致する場合に、逆量子化する際の処理単位であるブロックサイズと同じサイズに対応するデフォルト量子化行列を用いて、前記復号により生成された量子化データを逆量子化する画像処理方法である。
 本開示の一側面においては、符号化データが復号されて量子化データが生成され、量子化行列をコピーするコピーモードを用いる際に量子化行列の参照先を識別する量子化行列参照データと量子化行列を識別する量子化行列識別データとが一致する場合に、逆量子化する際の処理単位であるブロックサイズと同じサイズに対応するデフォルト量子化行列が用いられて、復号により生成された量子化データが逆量子化される。
 本開示によれば、画像を処理することが出来る。特に、符号化効率の低減を抑制することができる。
スケーリングリストの例を示す図である。 アップコンバートの例を説明する図である。 デコーダにおけるスケーリングリストの使用例を説明する図である。 スケーリングリストの符号化例を説明する図である。 本技術を適用したスケーリングリストの符号化例を説明する図である。 指数ゴロム符号の例を示す図である。 スケーリングリストに関するシンタクスの例を示す図である。 デフォルトマトリクスに関するシンタクスの例を示す図である。 デフォルトマトリクスに関するセマンティクスの例を示す図である。 スケーリングリストに関するシンタクスの例を示す図である。 本技術を適用したスケーリングリストに関するシンタクスの例を示す図である。 従来のスケーリングリストのシンタクスの例を示す図である。 スケーリングリストのシンタクスの例を示す図である。 画像符号化装置の主な構成例を示すブロック図である。 直交変換・量子化部の主な構成例を示すブロック図である。 行列処理部の主な構成例を示すブロック図である。 ダウンサンプルの例を説明する図である。 重複部分を削除する様子の例を説明する図である。 DPCM部の主な構成例を示すブロック図である。 量子化行列符号化処理の流れの例を説明するフローチャートである。 DPCM処理の流れの例を示すフローチャートである。 画像復号装置の主な構成例を示すブロック図である。 逆量子化・逆直交変換部の主な構成例を示すブロック図である。 行列生成部の主な構成例を示すブロック図である。 最近傍補間処理の例を説明する図である。 逆DPCM部の主な構成例を示すブロック図である。 行列生成処理の流れの例を説明するフローチャートである。 残差信号復号処理の流れの例を説明するフローチャートである。 逆DPCM処理の流れの例を説明するフローチャートである。 スケーリングリストのシンタクスの、他の例を示す図である。 DPCM部の他の構成例を示すブロック図である。 DPCM処理の流れの、他の例を示すフローチャートである。 逆DPCM部の他の構成例を示すブロック図である。 逆DPCM処理の流れの、他の例を説明するフローチャートである。 スケーリングリストのシンタクスの、さらに他の例を示す図である。 逆DPCM処理の流れの、さらに他の例を説明するフローチャートである。 スケーリングリストのシンタクスの、さらに他の例を示す図である。 DPCM部のさらに他の構成例を示すブロック図である。 DPCM処理の流れの、さらに他の例を示すフローチャートである。 逆DPCM部のさらに他の構成例を示すブロック図である。 逆DPCM処理の流れの、さらに他の例を説明するフローチャートである。 逆DPCM処理の流れの、さらに他の例を説明する、図41に続くフローチャートである。 スケーリングリストのシンタクスの、さらに他の例を示す図である。 スケーリングリストのシンタクスの、さらに他の例を示す図である。 スケーリングリストのシンタクスの、さらに他の例を示す図である。 多視点画像符号化方式の例を示す図である。 本技術を適用した多視点画像符号化装置の主な構成例を示す図である。 本技術を適用した多視点画像復号装置の主な構成例を示す図である。 階層画像符号化方式の例を示す図である。 本技術を適用した階層画像符号化装置の主な構成例を示す図である。 本技術を適用した階層画像復号装置の主な構成例を示す図である。 コンピュータの主な構成例を示すブロック図である。 テレビジョン装置の主な構成例を示すブロック図である。 モバイル端末器の主な構成例を示すブロック図である。 記録再生機の主な構成例を示すブロック図である。 撮像装置の主な構成例を示すブロック図である。 スケーラブル符号化利用の一例を示すブロック図である。 スケーラブル符号化利用の他の例を示すブロック図である。 スケーラブル符号化利用のさらに他の例を示すブロック図である。
 以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
 1. 第1の実施の形態(本技術の代表的な適用例)
 2. 第2の実施の形態(画像符号化装置、画像復号装置:方法1)
 3. 第3の実施の形態(画像符号化装置、画像復号装置:方法2)
 4. 第4の実施の形態(画像符号化装置、画像復号装置:方法3)
 5. 第5の実施の形態(画像符号化装置、画像復号装置:方法4)
 6. 第6の実施の形態(画像符号化装置、画像復号装置:その他の方法)
 7. 第7の実施の形態(多視点画像符号化装置、多視点画像復号装置)
 8. 第8の実施の形態(階層画像符号化装置、階層画像復号装置)
 9. 第9の実施の形態(コンピュータ)
 10. 応用例
 11. スケーラブル符号化の応用例
 <1. 第1の実施の形態>
 本実施の形態においては、第2以降の各実施の形態において詳細を説明する本技術の、代表的な適用例について説明する。
  <1-1本技術を適用するケースの代表的な一例>
 最初に、本技術を適用するケースについて、代表的な一例を説明する。本技術は、画像データの符号化・復号において行われる量子化・逆量子化の処理に用いられるスケーリングリストの符号化・復号に関する技術である。
 画像データの符号化や復号においては、係数データの量子化や逆量子化が行われることがある。このような量子化・逆量子化は、所定の大きさのブロック毎に行われ、そのブロックサイズに応じたサイズのスケーリングリスト(量子化マトリクス)が用いられる。例えば、HEVC(High Efficiency Video Coding)の場合、4x4、8x8、16x16、32x32等のサイズで量子化(逆量子化)が行われる。HEVCの場合、4x4と8x8のサイズの量子化マトリクスが用意される。
 図1に8x8のスケーリングリストの例を示す。図1に示されるように、スケーリングリストは、DC係数(DC coefficient)とAC係数(AC coefficient)よりなる。1つの値よりなるDC係数は、量子化マトリクスの(0,0)係数であり、離散コサイン変換(DCT(Discrete Cosine Transform))のDC係数に相当する。AC係数は、量子化マトリクスの(0,0)係数以外の係数であり、DCTのDC係数以外の係数に相当する。ただし、図1に示されるように、AC係数はマトリクス(行列)として表現される。すなわち、AC係数には(0,0)係数も含まれる(以下、AC係数(0,0)とも称する)が、量子化・逆量子化に使用される際には、この量子化マトリクスの先頭に位置する係数である(0,0)係数は、DC係数に置き換えられる。したがって、DC係数は、置換係数とも称する。図1の例の場合、AC係数は8x8のマトリクス(行列)を形成している。
 また、HEVCの場合、16x16や32x32の量子化(逆量子化)には、8x8の量子化マトリクスをアップコンバート(拡大変換)したものが利用される。
 図2に、8x8のスケーリングリストを16x16にアップコンバートする様子の例を示す。図2に示されるように、スケーリングリストのアップコンバートには、例えば、最近傍補間処理が適用される。最近傍補間処理の詳細については、例えば図25等を参照して後述する。図2に示されるように、アップコンバートは、スケーリングリストのAC係数に対して行われる。そして、このアップコンバートされたAC係数の(0,0)係数がDC係数に置き換えられる。
 8x8のスケーリングリストは、16x16にアップコンバートするためのもの(8x8 for 16x16)と、32x32にアップコンバートするためのもの(8x8 for 32x32)との2種類用意される。
 符号化(エンコーダ)における量子化に使用されたスケーリングリストは、復号(デコーダ)における逆量子化にも使用される。つまり、スケーリングリストは、符号化側(エンコーダ)から復号側(デコーダ)側に伝送される。図3にその様子の例を示す。
 図3に示される例のように、上述した、16x16サイズへのアップコンバート用と、32x32サイズへのアップコンバート用の、2種類の8x8のスケーリングリストが、伝送される。なお、図示は省略するが、その他に、4x4のスケーリングリストも伝送される。
 このように伝送された16x16サイズへのアップコンバート用の8x8のスケーリングリストのAC係数は、復号側(デコーダ)において、上述したように最近傍補間処理により16x16サイズにアップコンバートされ、(0,0)係数がDC係数に置き換えられて、16x16サイズのブロックの逆量子化に使用される。
 同様に、このように伝送された32x32サイズへのアップコンバート用の8x8のスケーリングリストのAC係数は、復号側(デコーダ)において、上述したように最近傍補間処理により32x32サイズにアップコンバートされ、(0,0)係数がDC係数に置き換えられて、32x32サイズのブロックの逆量子化に使用される。
  <1-2. スケーリングリストの符号化>
 以上のようにスケーリングリストを伝送することにより、その分、符号量が増大することになる。そこで、符号化効率低減を抑制するために、スケーリングリストは所定の方法で符号化され、その符号量の低減が図られる。図4にその例を示す。すなわち、8x8のスケーリングリストは、以下のように伝送される。
 8x8マトリクスを16x16マトリクスにアップコンバートする場合:
  (1)8x8マトリクスの(0,0)係数(すなわち、AC係数(0,0))と、予め定められた初期値「8」との差分をとる。
  (2)8x8マトリクスの係数(すなわち、AC係数)同士(スキャン順に1次元に並べられた係数列において隣同士)の差分をとる。
  (3)16x16マトリクスの(0,0)係数(すなわち、DC係数)と、予め定められた初期値「8」との差分をとる。
  (4)(1)の差分および(2)の差分と、(3)の差分とを別々に伝送する。
 8x8マトリクスを32x32マトリクスにアップコンバートする場合:
  (1)8x8マトリクスの(0,0)係数(すなわち、AC係数(0,0))と、予め定められた初期値「8」との差分をとる。
  (2)8x8マトリクスの係数(すなわち、AC係数)同士(スキャン順に1次元に並べられた係数列において隣同士)の差分をとる。
  (3)32x32マトリクスの(0,0)係数(すなわち、DC係数)と、予め定められた初期値「8」との差分をとる。
  (4)(1)の差分および(2)の差分と、(3)の差分とを別々に伝送する。
 しかしながら、この方法の場合、(4)において、各差分は、指数ゴロム符号化(signed exponential golomb coding)されて伝送される。上述したように(1)の差分は、AC係数(0,0)と初期値「8」との差分であるので、このAC係数(0,0)の値が、初期値「8」に近い値でない場合、符号量が増大する恐れがあった。
 例えば、図4の場合、AC係数(0,0)の値は「12」であり、(1)の差分として値「4」が指数ゴロム符号化されて伝送されることになる。つまり、(1)の差分の伝送のために7ビット(bit)を必要とし、その分、符号化効率を低減させる恐れがある。この(1)の差分の値がさらに大きければ、さらに符号化効率を低減させる恐れがある。これは、16x16サイズへのアップコンバート用の8x8のスケーリングリストの場合も、32x32サイズへのアップコンバート用の8x8のスケーリングリストの場合も同様である。
 ところで、一般的に、DCT係数は、DC係数とその周辺の低次の係数にパワーが集中する。したがって、一般的に、量子化マトリクスもDC係数とその周辺の係数に対して小さな値が用いられる。また、周波数毎に極端に異なる値を使用した場合、量子化誤差が主観的に目につくことがある。そのような視覚的な画質の劣化を抑制するために、DC係数とその周辺の係数に対して連続的な値が適用される。
 アップコンバート後の(0,1)係数、(1.0)係数、および(1.1)係数は、アップコンバートする前のAC係数(0,0)に対応する。また、アップコンバート後の(0,0)係数は、DC係数に対応する。
 したがって、一般的に、スケーリングリストにおいて、AC係数(0,0)の値とDC係数の値は、互いに近い値をとる。例えば、MPEG2、AVC、およびHEVCのデフォルトマトリクスはそういう値になっている。図4の例においても、DC係数の値は、AC係数(0,0)と同じ「12」である。したがって、(3)の差分、すなわち、DC係数と初期値「8」との差分の値も「4」である。
 つまり、互いに近い値を持つDC係数とAC係数(0,0)を、それぞれ、初期値と差分をとることは、その差分値が大きくなる恐れがあるだけでなく、冗長である可能性が高く、符号化効率をさらに低減させる恐れがあるとも言える。
 そこで、スケーリングリストの伝送を、図4の方法に代えて、以下のような方法で行うようにする。図5にその例を示す。
 8x8マトリクスを16x16マトリクスにアップコンバートする場合:
  (1)8x8マトリクスの(0,0)係数(すなわち、AC係数(0,0))と16x16マトリクスの(0,0)係数(すなわち、DC係数)との差分をとる。
  (2)8x8マトリクスの係数(すなわち、AC係数)同士(スキャン順に1次元に並べられた係数列において隣同士)の差分をとる。
  (3)16x16マトリクスの(0,0)係数(すなわち、DC係数)と、予め定められた初期値「8」との差分をとる。
  (4)(1)乃至(3)の差分をまとめて伝送する。
 8x8マトリクスを32x32マトリクスにアップコンバートする場合:
  (1)8x8マトリクスの(0,0)係数(すなわち、AC係数(0,0))と32x32マトリクスの(0,0)係数(すなわち、DC係数)との差分をとる。
  (2)8x8マトリクスの係数(すなわち、AC係数)同士(スキャン順に1次元に並べられた係数列において隣同士)の差分をとる。
  (3)32x32マトリクスの(0,0)係数(すなわち、DC係数)と、予め定められた初期値「8」との差分をとる。
  (4)(1)乃至(3)の差分をまとめて伝送する。
 図4の場合と同様に、(4)において、各差分は、指数ゴロム符号化されて指数ゴロム符号として伝送される。
 指数ゴロム符号として伝送される各差分の伝送先は、その指数ゴロム符号を受け取ると、受け取った指数ゴロム符号を復号し、得られた各差分を、上述した(1)乃至(3)の逆処理を行うことにより、各係数(DC係数およびAC係数)を求める。
   <1-3. 本技術の代表的な特徴>
 以上のような伝送方法に関する本技術の代表的な特徴について、以下に説明する。
   <1-3-1. AC係数(0,0)とDC係数とのDPCM>
 スケーリングリストは、差分パルス符号変調(DPCM(Differential Pulse-Code Modulation))されて伝送される。図4の例の場合、AC係数とDC係数は、それぞれ独立してDPCMされるのに対して、本技術の特徴の1つは、図5の例のように、AC係数(0,0)とDC係数との差分(置換差分係数とも称する)を求めて伝送することである。
 上述したように、一般的に、AC係数(0,0)とDC係数は、近い値をとる。したがって、AC係数(0,0)とDC係数との差分の方が、AC係数(0,0)と初期値「8」との差分よりも小さい値となる可能性が高い。つまり、本技術を適用して、AC係数(0,0)とDC係数との差分である置換差分係数を伝送するようにする方が、符号量が低減される可能性が高い。
 例えば、図5の例の場合、(1)の差分の値は「0」である。
 図6は、指数ゴロム符号化(signed exponential golomb coding)の例を示す図である。図6の表に示されるように、値「4」の指数ゴロム符号の符号長は7ビットであるのに対して、値「0」の指数ゴロム符号の符号長は1ビットである。つまり、図5の場合の方が、図4の場合に比べて、符号量を6ビット削減することができる。
 一般的に、8x8サイズの量子化マトリクスを伝送するのに、100ビット乃至200ビット程度の符号量が必要になる。したがって6ビットは、全体の6%程度に相当する。ハイレベルシンタクス(High Level Syntax)において、6%の符号量低減は、非常に大きな効果であると言える。
   <1-3-2. DC係数とAC係数とをまとめて伝送>
 図7にスケーリングリストのシンタクスの例を示す。図4の例の場合、シンタクスは、図7のAの例のようになる。つまり、AC係数(0,0)と初期値「8」との差分、並びに、AC係数同士の差分(scaling_list_delta_coef)が伝送され、その後、それとは別に、DC係数と初期値「8」との差分(scaling_list_dc_coef_minus8)が伝送される。
 これに対して本技術の特徴の1つは、DC係数とAC係数(0,0)との差分、並びに、AC係数同士の差分をこの順に並べ、まとめて伝送することである。つまり、図5に示されるように、DC係数、並びに、所定のスキャン順の各AC係数が1次元に並べられ、DC係数と初期値「8」との差分が求められた後、その係数列の隣り合う係数同士の差分が求められる。そして、得られた各差分(係数同士の差分)が、その得られた順に1次元に並べられた状態でまとめて伝送される。
 この場合のシンタクスは、図7のBの例のようになる。つまり、最初にDC係数と初期値「8」との差分(scaling_list_dc_coef_minus8)が伝送され、続いて、DC係数とAC係数(0,0)との差分、並びに、AC係数同士の差分(scaling_list_delta_coef)が伝送される。つまり、DC係数とAC係数がまとめて符号化されて伝送される。
 このように、各差分を得られた順に並べてまとめて伝送することにより、伝送先の復号側(デコーダ)は、伝送される順に復号し、各係数を得ることができる。つまり、DPCMされたスケーリングリストを容易に復号することができる。より具体的には、処理の負荷を低減させることができる。また、差分の並べ替え等が不要になるのでバッファの容量を低減させることができる。さらに、各差分の供給順に復号を行うことができるので、処理時間の増大を抑制することができる。
   <1-3-3. デフォルトマトリクスの伝送>
 図8は、デフォルトマトリクスの伝送に関するシンタクスの例を示す図である。従来、デフォルトマトリクスを使用することを示す情報を伝送するために、図8に示されるように、最初の係数(DC係数)を「0」として伝送していた。つまり、DC係数と初期値「8」との差分(scaling_list_dc_coef_minus8))の値は「-8」とされた。しかしながら、図6に示されるように、値「-8」の指数ゴロム符号の符号長は9ビットである。つまり、符号化効率を大幅に低減させる恐れがあった。一般的に、ハイレベルシンタクス(High Level Syntax)は、1ビットでも少ない方が望ましい。さらに、図8に示されるようにシンタクスも複雑になり、処理の負荷を増大させる恐れがあった。
 そこで、最初の係数を「0」にするのではなくて、scaling_list_pred_matrix_id_deltaのセマンティクス(semantics)を変更するようにする。より具体的には、scaling_list_pred_matrix_id_deltaのセマンティクスを図9のAから図9のBのように変更する。つまり、従来、図9のAに示されるように、この値が「0」である場合、1つ前のマトリクス(MatrixID-1)を参照することを示していた。これを、図9のBに示されるように、このscaling_list_pred_matrix_id_deltaの値が「0」である場合、デフォルトマトリクスを意味するものとするようにする。
 このようにすることにより、デフォルトマトリクスを使用することを示す情報を伝送するための指数ゴロム符号の符号長を1ビットにすることができ、符号化効率の低減を抑制することができる。また、スケーリングリストについて、従来、図10のAおよび図10のBに示されるようなシンタクスが必要であったが、これを図11に示される例のように、簡略化することができる。つまり、スケーリングリストの符号化・復号に関する処理の負荷を低減させることができる。
  <1-4. 本技術を適用することによるシンタクスの特徴>
 シンタクスについて、より具体的に説明する。
 図10のAおよび図10のBに示される従来の例の場合、scaling_list_dc_coef_minus8とscaling_list_delta_coefの2箇所でデフォルトを判定しないといけなかった。また、scaling_list_delta_coefに関しては、forループの途中で判定を行い、useDefaultScalingMatrixFlag=1になると、ループを抜ける処理になっていた。また、stopNowという中間フラグを必要とし、この条件によりnextCoefをscalingListの値に代入するなどの分岐も存在する。このように、従来のシンタクスでは、複雑な処理が必要であった。
 そこで、本技術では、図11に示される例のように、scaling_list_dc_coef_minus8から計算されるDC係数をnextCoefに代入することで、scaling_list_delta_coefの初期値をDC係数とする。
 また、セマンティクスとして、scaling_list_pred_matrix_id_deltaの値を従来「+1」で表現したものをそのままの値とし、値「0」を特別扱いすることにした。
 つまり、従来、ScalingList[0][2]を復号する際(matrixId=2)、scaling_list_pred_matrix_id_delta=0とすれば、refMatrixId = matrixId - (1 + scaling_list_pred_matrix_id_delta)でmatrixId=2なので、refMatrixId = 1となりScalingList[0][1]の値をコピーすることになっていた。
 これに対して本技術では、refMatrixId = matrixId - scaling_list_pred_matrix_id_deltaとし、ScalingList[0][2]を復号する際(matrixId=2)、ScalingList[0][1]をコピーしたい場合(refMatrixId = 1としたい場合)、scaling_list_pred_matrix_id_delta=1とすればよいようにした。
 このようにすることにより、図11に示されるように、スケーリングリストに関するシンタクスの行数を大幅に低減させることができる。また、中間データとして持たないといけない、UseDefaultScalingMatrixおよびstopNowの2つの変数を省略することができる。さらに、図10に示されるようなforループ内の分岐が不要にすることができる。したがって、スケーリングリストの符号化・復号に関する処理の負荷を低減させることができる。
  <1-5. 本技術を実現する処理部>
 スケーリングリストの伝送において本技術を適用する場合、以上のようなスケーリングリストの符号化・復号が行われる。つまり、図14を参照して後述する画像符号化装置10がスケーリングリストを符号化して伝送し、図22を参照して後述する画像復号装置300が、その符号化されたスケーリングリストを受け取り、復号する。
 スケーリングリストの符号化は、画像符号化装置10の直交変換・量子化部14(図14)の、行列処理部150(図15)の、エントロピ符号化部164(図16)の、DPCM部192およびexpG部193(ともに図16)において行われる。つまり、DPCM部192において、スケーリングリストの各係数(DC係数やAC係数)同士の差分が求められ、expG部193において、各差分が指数ゴロム符号化される。
 上述したような本技術を適用したスケーリングリストの符号化を行うためには、DPCM部192が、例えば、図19に示されるような構成例を有し、図21に示される例のようなDPCM処理を行えばよい。また、セマンティクスは、図44のCや図45のCの例のようにすればよい。
 換言するに、本技術を適用したスケーリングリストの符号化を実現するためには、このDPCM部192およびexpG部193のみがあればよく、その他は、どのような構成であってもよい。例えば、スケーリングリストのアップコンバートを行う処理部や、スケーリングリストを用いた量子化を行う処理部等、実施の態様に応じて必要な構成を設けるようにすればよい。
 また、スケーリングリストの復号は、画像復号装置300の逆量子化・逆直交変換部313(図22)の、行列生成部410(図23)の、エントロピ復号部533(図24)の、expG部551および逆DPCM部552(ともに図24)において行われる。つまり、expG部551において、指数ゴロム符号が復号されて差分が得られ、逆DPCM部552において、各差分からスケーリングリストの各係数(DC係数やAC係数)が求められる。
 上述したような本技術を適用した、符号化されたスケーリングリストの復号を行うためには、逆DPCM部552が、例えば、図26に示されるような構成例を有し、図29に示される例のような逆DPCM処理を行えばよい。また、セマンティクスは、図44のCや図45のCの例のようにすればよい。
 換言するに、本技術を適用したスケーリングリストの復号を実現するためには、このexpG部551および逆DPCM部552のみがあればよく、その他は、どのような構成であってもよい。例えば、スケーリングリストのアップコンバートを行う処理部や、スケーリングリストを用いた逆量子化を行う処理部等、実施の態様に応じて必要な構成を設けるようにすればよい。
 以下に、本技術についてのより詳細な説明をするために、本技術を適用した各実施の形態について説明する。
 <2. 第2の実施の形態>
  <2-1. シンタクス:方法1>
  (1)従来シンタクス
 まず、量子化行列(スケーリングリスト(Scaling List))の従来のシンタクスの例を図12に示す。なお、実際には、スケーリングリストの代わりに、スケーリングリストとその予測行列との差分行列が伝送されることが多い。したがって、以下のシンタクス等の説明において、スケーリングリストの説明は、差分行列にも適用することができるものとする。
 図12のAは、スケーリングリストデータに関するシンタクス(Scaling list data syntax)であり、図12のBは、スケーリングリストのシンタクス(Scaling list syntax)である。
   (1―1)Scaling list data syntax
 図12のAに示されるように、スケーリングリストデータに関するシンタクスにおいては、スケーリングリストが提供されるか否かを示すフラグ(scaling_list_present_flag)、コピーモードであるか否かを示すフラグ(scaling_list_pred_mode_flag)、コピーモードの場合、どのスケーリングリストを参照するかを示す情報(scaling_list_pred_matrix_id_delta)等が読みこまれることが決められている。
   (1―2)Scaling list syntax
 図12のBに示されるように、スケーリングリストのシンタクスにおいては、定数(例えば8)が値から減算されたDC係数(scaling_list_dc_coef_minus8)や、AC係数の差分値(scaling_list_delta_coef)等が読みこまれ、DC係数やAC係数が復元されることが決められている。
 しかしながら、このようなシンタクスでは、処理は容易であるものの、DC係数の圧縮効率が十分でない恐れがあった。
 そこで、DC成分(直流成分)の係数であるDC係数(直流係数とも称する)の圧縮効率を十分なものとするために、DC係数とその他の係数との差分を求め、その差分値をDC係数の代わりに伝送するようにする。つまり、この差分値は、DC係数を算出するための情報であり、すなわち、実質的にDC係数と等価である。ただし、一般的に、DC係数そのものよりも、この差分の方が値が小さくなる。つまり、DC係数の代わりにこの差分値を伝送することにより符号量が低減される。
 なお、以下においては、説明の便宜上、スケーリングリスト(量子化行列)のサイズは、8x8とする。上述した、DC係数の代わりに、DC係数とその他の係数との差分を伝送する方法の具体例を以下に説明する。
  (2)方法1シンタクス
 例えば、DC係数を8x8マトリクス(AC係数)の先頭の要素と考えて、65係数のDPCM(Differential Pulse Code Modulation:差分パルス符号変調)で伝送するようにしてもよい(方法1)。
 つまり、最初に、所定の定数とDC係数との差分が算出され、それがDPCMデータの最初の係数とされる。次に、DC係数と最初のAC係数との差分が算出され、それがDPCMデータの2番目の係数とされる。次に、最初のAC係数と2番目のAC係数との差分が算出され、それがDPCMデータの3番目の係数とされる。以降、同様に1つ手前のAC係数との差分が算出され、DPCMデータの4番目以降の係数とされる。このように生成されたDPCMデータが、最初の係数から順に伝送される。
 このようにすることにより、8x8マトリクスの(0,0)係数(AC係数)とDC係数が近い値の場合に圧縮率をより向上させることができる。この方法1を実現することにより、画像符号化装置は、DC係数を、AC成分(交流成分)の係数であるAC係数(交流係数とも称する)と同様に処理することができる。ただし、この方法1を実現するためには、この係数群が伝送される画像復号装置は、最初の係数のみ特別扱いする必要がある。つまり、画像復号装置は、AC係数群の中からDC係数を抽出する必要がある。
 その場合の、スケーリングリストのシンタクスを、図13に示す。図13の例の場合、係数同士の差分値(scaling_list_delta_coef)が65個読み込まれ、それらの差分値から求められた各係数(nextcoef)の内、先頭の係数(nextcoef)がDC係数(scaling_list_dc_coef)とされ、それ以外の係数が、AC係数(ScalingList[i])とされる。
 このような方法1のシンタクスを実現する画像符号化装置について以下に説明する。
  <2-2. 画像符号化装置>
 図14は、本開示の一実施形態に係る画像符号化装置10の構成の一例を示すブロック図である。図14に示される画像符号化装置10は、入力された画像データを符号化し、得られた符号化データを出力する、本技術を適用した画像処理装置である。図14を参照すると、画像符号化装置10は、A/D(Analogue to Digital)変換部11(A/D)、並べ替えバッファ12、減算部13、直交変換・量子化部14、可逆符号化部16、蓄積バッファ17、レート制御部18、逆量子化部21、逆直交変換部22、加算部23、デブロックフィルタ24、フレームメモリ25、セレクタ26、イントラ予測部30、動き探索部40、及びモード選択部50を備える。
 A/D変換部11は、アナログ形式で入力される画像信号をデジタル形式の画像データに変換し、一連のデジタル画像データを並べ替えバッファ12へ出力する。
 並べ替えバッファ12は、A/D変換部11から入力される一連の画像データに含まれる画像を並べ替える。並べ替えバッファ12は、符号化処理に係るGOP(Group of Pictures)構造に応じて画像を並べ替えた後、並べ替え後の画像データを減算部13、イントラ予測部30、および動き探索部40へ出力する。
 減算部13には、並べ替えバッファ12から入力される画像データ、および、後に説明するモード選択部50により選択される予測画像データが供給される。減算部13は、並べ替えバッファ12から入力される画像データとモード選択部50から入力される予測画像データとの差分である予測誤差データを算出し、算出した予測誤差データを直交変換・量子化部14へ出力する。
 直交変換・量子化部14は、減算部13から入力される予測誤差データについて直交変換および量子化を行い、量子化された変換係数データ(以下、量子化データという)を可逆符号化部16および逆量子化部21へ出力する。直交変換・量子化部14から出力される量子化データのビットレートは、レート制御部18からのレート制御信号に基づいて制御される。直交変換・量子化部14の詳細な構成について、後にさらに説明する。
 可逆符号化部16には、直交変換・量子化部14から入力される量子化データ、復号側でスケーリングリスト(量子化行列)を生成するための情報、並びに、モード選択部50により選択されるイントラ予測またはインター予測に関する情報が供給される。イントラ予測に関する情報は、例えば、ブロック毎の最適なイントラ予測モードを示す予測モード情報を含み得る。また、インター予測に関する情報は、例えば、ブロック毎の動きベクトルの予測のための予測モード情報、差分動きベクトル情報、および参照画像情報等を含み得る。さらに、復号側でスケーリングリストを生成するための情報には、伝送するスケーリングリスト(若しくは、スケーリングリスト(量子化行列)とその予測行列との差分行列)の最大サイズを示す識別情報を含み得る。
 可逆符号化部16は、量子化データについて可逆符号化処理を行うことにより、符号化ストリームを生成する。可逆符号化部16による可逆符号化は、例えば、可変長符号化または算術符号化等であってよい。また、可逆符号化部16は、スケーリングリストを生成するための情報を、符号化ストリームのヘッダ(例えばシーケンスパラメータセットおよびピクチャパラメータセット)内に多重化する。さらに、可逆符号化部16は、上述したイントラ予測またはインター予測に関する情報を、符号化ストリームのヘッダ内に多重化する。そして、可逆符号化部16は、生成した符号化ストリームを蓄積バッファ17へ出力する。
 蓄積バッファ17は、可逆符号化部16から入力される符号化ストリームを半導体メモリ等の記憶媒体を用いて一時的に蓄積する。そして、蓄積バッファ17は、蓄積した符号化ストリームを、伝送路(または画像符号化装置10からの出力線)の帯域に応じたレートで出力する。
 レート制御部18は、蓄積バッファ17の空き容量を監視する。そして、レート制御部18は、蓄積バッファ17の空き容量に応じてレート制御信号を生成し、生成したレート制御信号を直交変換・量子化部14へ出力する。例えば、レート制御部18は、蓄積バッファ17の空き容量が少ない時には、量子化データのビットレートを低下させるためのレート制御信号を生成する。また、例えば、レート制御部18は、蓄積バッファ17の空き容量が十分大きい時には、量子化データのビットレートを高めるためのレート制御信号を生成する。
 逆量子化部21は、直交変換・量子化部14から入力される量子化データについて逆量子化処理を行う。そして、逆量子化部21は、逆量子化処理により取得される変換係数データを、逆直交変換部22へ出力する。
 逆直交変換部22は、逆量子化部21から入力される変換係数データについて逆直交変換処理を行うことにより、予測誤差データを復元する。そして、逆直交変換部22は、復元した予測誤差データを加算部23へ出力する。
 加算部23は、逆直交変換部22から入力される復元された予測誤差データとモード選択部50から入力される予測画像データとを加算することにより、復号画像データを生成する。そして、加算部23は、生成した復号画像データをデブロックフィルタ24およびフレームメモリ25へ出力する。
 デブロックフィルタ24は、画像の符号化時に生じるブロック歪みを減少させるためのフィルタリング処理を行う。デブロックフィルタ24は、加算部23から入力される復号画像データをフィルタリングすることによりブロック歪みを除去し(または少なくとも減少し)、フィルタリング後の復号画像データをフレームメモリ25へ出力する。
 フレームメモリ25は、加算部23から入力される復号画像データ、および、デブロックフィルタ24から入力されるフィルタリング後の復号画像データを、記憶媒体を用いて記憶する。
 セレクタ26は、イントラ予測のために使用されるフィルタリング前の復号画像データをフレームメモリ25から読み出し、読み出した復号画像データを参照画像データとしてイントラ予測部30に供給する。また、セレクタ26は、インター予測のために使用されるフィルタリング後の復号画像データをフレームメモリ25から読み出し、読み出した復号画像データを参照画像データとして動き探索部40に供給する。
 イントラ予測部30は、並べ替えバッファ12から入力される符号化対象の画像データ、および、セレクタ26を介して供給される復号画像データに基づいて、各イントラ予測モードのイントラ予測処理を行う。例えば、イントラ予測部30は、各イントラ予測モードによる予測結果を所定のコスト関数を用いて評価する。そして、イントラ予測部30は、コスト関数値が最小となるイントラ予測モード、即ち圧縮率が最も高くなるイントラ予測モードを、最適なイントラ予測モードとして選択する。さらに、イントラ予測部30は、当該最適なイントラ予測モードを示す予測モード情報、予測画像データ、およびコスト関数値などのイントラ予測に関する情報を、モード選択部50へ出力する。
 動き探索部40は、並べ替えバッファ12から入力される符号化対象の画像データ、および、セレクタ26を介して供給される復号画像データに基づいて、インター予測処理(フレーム間予測処理)を行う。例えば、動き探索部40は、各予測モードによる予測結果を所定のコスト関数を用いて評価する。次に、動き探索部40は、コスト関数値が最小となる予測モード、即ち圧縮率が最も高くなる予測モードを、最適な予測モードとして選択する。また、動き探索部40は、当該最適な予測モードに従って予測画像データを生成する。そして、動き探索部40は、選択した最適な予測モードを表す予測モード情報を含むインター予測に関する情報、予測画像データ、および、コスト関数値等のインター予測に関する情報を、モード選択部50へ出力する。
 モード選択部50は、イントラ予測部30から入力されるイントラ予測に関するコスト関数値と動き探索部40から入力されるインター予測に関するコスト関数値とを比較する。そして、モード選択部50は、イントラ予測およびインター予測のうちコスト関数値がより少ない予測手法を選択する。モード選択部50は、イントラ予測を選択した場合、イントラ予測に関する情報を可逆符号化部16へ出力するとともに、予測画像データを減算部13および加算部23へ出力する。また、モード選択部50は、インター予測を選択した場合、インター予測に関する上述した情報を可逆符号化部16へ出力するとともに、予測画像データを減算部13および加算部23へ出力する。
  <2-3. 直交変換・量子化部の構成例>
 図15は、図14に示した画像符号化装置10の直交変換・量子化部14の詳細な構成の一例を示すブロック図である。図15を参照すると、直交変換・量子化部14は、選択部110、直交変換部120、量子化部130、スケーリングリストバッファ140、および行列処理部150を有する。
  (1)選択部
 選択部110は、サイズの異なる複数の変換単位から、符号化される画像データの直交変換のために使用される変換単位(TU)を選択する。選択部110により選択され得る変換単位のサイズの候補は、例えば、H.264/AVC(Advanced Video Coding)では4x4および8x8を含み、HEVC(High Efficiency Video Coding)では4x4、8x8、16x16及び32x32を含む。選択部110は、例えば、符号化される画像のサイズ若しくは画質、または、画像符号化装置10の性能等に応じていずれかの変換単位を選択してよい。選択部110による変換単位の選択は、画像符号化装置10を開発するユーザによってハンドチューニングされてもよい。そして、選択部110は、選択した変換単位のサイズを指定する情報を、直交変換部120、量子化部130、可逆符号化部16、および逆量子化部21へ出力する。
  (2)直交変換部
 直交変換部120は、選択部110により選択された変換単位で、減算部13から供給される画像データ(即ち、予測誤差データ)を直交変換する。直交変換部120により実行される直交変換は、例えば、離散コサイン変換(DCT(Discrete Cosine Transform))またはカルーネン・レーベ変換などであってよい。そして、直交変換部120は、直交変換処理により取得される変換係数データを量子化部130へ出力する。
  (3)量子化部
 量子化部130は、選択部110により選択された変換単位に対応するスケーリングリストを用いて、直交変換部120により生成された変換係数データを量子化する。また、量子化部130は、レート制御部18からのレート制御信号に基づいて量子化ステップサイズを切り替えることにより、出力される量子化データのビットレートを変化させる。
 また、量子化部130は、選択部110により選択され得る複数の変換単位にそれぞれ対応するスケーリングリストのセットを、スケーリングリストバッファ140に記憶させる。例えば、HEVCのように4x4、8x8、16x16及び32x32という4種類のサイズの変換単位の候補が存在する場合、これら4種類のサイズにそれぞれ対応する4種類のスケーリングリストのセットが、スケーリングリストバッファ140により記憶され得る。なお、あるサイズについて既定のスケーリングリストが使用される場合、既定のスケーリングリストが使用されること(ユーザにより定義されたスケーリングリストを使用しないこと)を示すフラグのみが、当該サイズと関連付けてスケーリングリストバッファ140により記憶されるようにしてもよい。
 量子化部130により使用される可能性のあるスケーリングリストのセットは、典型的には、符号化ストリームのシーケンス毎に設定され得る。また、量子化部130は、シーケンス毎に設定したスケーリングリストのセットを、ピクチャ毎に更新してもよい。このようなスケーリングリストのセットの設定および更新を制御するための情報は、例えば、シーケンスパラメータセットおよびピクチャパラメータセットに挿入され得る。
  (4)スケーリングリストバッファ
 スケーリングリストバッファ140は、半導体メモリなどの記憶媒体を用いて、選択部110により選択され得る複数の変換単位にそれぞれ対応するスケーリングリストのセットを一時的に記憶する。スケーリングリストバッファ140により記憶されるスケーリングリストのセットは、次に説明する行列処理部150による処理に際して参照される。
  (5)行列処理部
 行列処理部150は、符号化(量子化)に用いられるスケーリングリストの符号化を行う。そして、行列処理部150により生成されたスケーリングリストの符号化データ(以下において、スケーリングリスト符号化データと称する)は、可逆符号化部16へ出力され、符号化ストリームのヘッダ内に挿入され得る。
  <2-4. 行列処理部の詳細な構成例>
 図16は、行列処理部150のさらに詳細な構成の一例を示すブロック図である。図16を参照すると、行列処理部150は、予測部161、差分行列生成部162、差分行列サイズ変換部163、エントロピ符号化部164、復号部165、および出力部166を有する。
  (1)予測部
 予測部161は、予測行列を生成する。図16に示されるように、予測部161は、コピー部171および予測行列生成部172を有する。
 コピーモードの場合、コピー部171は、過去に伝送したスケーリングリストを複製し、それを予測行列とする(処理対象の直交変換単位のスケーリングリストを予測する)。より具体的には、コピー部171は、過去に伝送したスケーリングリストのサイズとリストID(ListID)を復号部165の記憶部202から取得する。サイズは、スケーリングリストの大きさ(例えば4x4乃至32x32等)を示す情報である。リストIDは、量子化の対象となる予測誤差データの種類を示す情報である。
 例えば、リストIDは、その量子化対象が、イントラ予測された予測画像を用いて生成される輝度成分の予測誤差データ(IntraLuma)であるか、イントラ予測された予測画像を用いて生成される色差成分(Cr)の予測誤差データ(IntraCr)であるか、イントラ予測された予測画像を用いて生成される色差成分(Cb)の予測誤差データ(IntraCb)であるか、若しくは、インター予測された予測画像を用いて生成される輝度成分の予測誤差データ(InterLuma)であるかを示す識別情報を含む。
 コピー部171は、行列処理部150に入力されたスケーリングリスト(処理対象の直交変換単位のスケーリングリスト)と同じサイズの過去に伝送したスケーリングリストを複製対象として選択し、その複製対象とするスケーリングリストのリストIDを出力部166に供給し、行列処理部150の外部(可逆符号化部16や逆量子化部21)に出力させる。つまり、この場合、過去に伝送したスケーリングリストを複製して生成した予測行列を示す情報として、ListIDのみが復号側に伝送される(符号化データに含められる)ので、画像符号化装置10は、スケーリングリストの符号量の増大を抑制することができる。
 また通常の場合、予測行列生成部172は、過去に伝送したスケーリングリストを復号部165の記憶部202から取得し、そのスケーリングリストを用いて予測行列を生成する(処理対象の直交変換単位のスケーリングリストを予測する)。予測行列生成部172は、生成した予測行列を差分行列生成部162に供給する。
  (2)差分行列生成部
 差分行列生成部162は、予測部161(予測行列生成部172)から供給された予測行列と、行列処理部150に入力されるスケーリングリストとの差分である差分行列(残差行列)を生成する。図16に示されるように、差分行列生成部162は、予測行列サイズ変換部181、演算部182、および量子化部183を有する。
 予測行列サイズ変換部181は、予測行列生成部172から供給される予測行列のサイズを、行列処理部150に入力されるスケーリングリストのサイズに合わせるように変換(以下、コンバートとも称する)する。
 例えば、予測行列のサイズがスケーリングリストのサイズより大きい場合、予測行列サイズ変換部181は、予測行列を縮小変換(以下、ダウンコンバートとも称する)する。より具体的には、例えば、予測行列が16x16であり、スケーリングリストが8x8の場合、予測行列サイズ変換部181は、予測行列を8x8にダウンコンバートする。なお、このダウンコンバートの方法は、任意である。例えば、予測行列サイズ変換部181が、フィルタを用いて(演算により)予測行列の要素の数を減らすようにしてもよい(以下、ダウンサンプルとも称する)。また、例えば図17に示されるように、予測行列サイズ変換部181が、フィルタを用いずに、一部の要素(例えば、2次元の要素の偶数部分(図17の黒部分)のみ)を間引くことにより、予測行列の要素の数を減らすようにしてもよい(以下、サブサンプルとも称する)。
 また、例えば、予測行列のサイズがスケーリングリストのサイズより小さい場合、予測行列サイズ変換部181は、予測行列を拡大変換(以下、アップコンバートとも称する)する。より具体的には、例えば、予測行列が8x8であり、スケーリングリストが16x16の場合、予測行列サイズ変換部181は、予測行列を16x16にアップコンバートする。なお、このアップコンバートの方法は、任意である。例えば、予測行列サイズ変換部181が、フィルタを用いて(演算により)予測行列の要素の数を増やすようにしてもよい(以下、アップサンプルとも称する)。また、例えば、予測行列サイズ変換部181が、フィルタを用いずに、予測行列の各要素を複製することにより、予測行列の要素の数を増やすようにしてもよい(以下、逆サブサンプルとも称する)。
 予測行列サイズ変換部181は、サイズをスケーリングリストに合わせた予測行列を演算部182に供給する。
 演算部182は、予測行列サイズ変換部181から供給される予測行列から、行列処理部150に入力されたスケーリングリストを減算し、差分行列(残差行列)を生成する。演算部182は、算出した差分行列を量子化部183に供給する。
 量子化部183は、演算部182から供給された差分行列を量子化する。量子化部183は、その差分行列の量子化結果を、差分行列サイズ変換部163に供給する。また、量子化部183は、この量子化に用いた量子化パラメータ等の情報を、出力部166に供給し、行列処理部150の外部(可逆符号化部16や逆量子化部21)に出力させる。なお、この量子化部183を省略する(つまり、差分行列の量子化を行わない)ようにしてもよい。
  (3)差分行列サイズ変換部
 差分行列サイズ変換部163は、差分行列生成部162(量子化部183)から供給される差分行列(量子化データ)のサイズを、必要に応じて、伝送の際に許容される最大サイズ(以下、伝送サイズとも称する)以下にコンバートする。この最大サイズは、任意であるが、例えば、8x8である。
 画像符号化装置10から出力される符号化データは、例えば、伝送路や記憶媒体を介して、画像符号化装置10に対応する画像復号装置に伝送され、その画像復号装置により復号される。画像符号化装置10においては、このような伝送における、すなわち、画像符号化装置10から出力される符号化データにおける、差分行列(量子化データ)のサイズの上限(最大サイズ)が設定されている。
 差分行列サイズ変換部163は、差分行列のサイズが、この最大サイズより大きい場合、最大サイズ以下となるように、差分行列をダウンコンバートする。
 なお、このダウンコンバートの方法は、上述した予測行列のダウンコンバートの場合と同様に任意である。例えば、フィルタ等を用いるダウンサンプルであってもよいし、要素を間引くサブサンプルであってもよい。
 また、ダウンコンバート後の差分行列のサイズは、最大サイズより小さければどのサイズであってもよい。ただし、一般的には、コンバート前後のサイズ差が大きいほど誤差が大きくなるので、最大サイズにダウンコンバートするのが望ましい。
 差分行列サイズ変換部163は、ダウンコンバートした差分行列を、エントロピ符号化部164に供給する。なお、差分行列のサイズが最大サイズより小さい場合、このダウンコンバートは不要であるので、差分行列サイズ変換部163は、入力された差分行列をそのままエントロピ符号化部164に供給する(つまり、ダウンコンバートが省略される)。
  (4)エントロピ符号化部
 エントロピ符号化部164は、差分行列サイズ変換部163から供給された差分行列(量子化データ)を所定の方法で符号化する。図16に示されるようにエントロピ符号化部164は、重複判定部(135degree部)191、DPCM(Differential Pulse Code Modulation)部192、およびexpG部193を有する。
 重複判定部191は、差分行列サイズ変換部163から供給された差分行列の対称性を判定し、その残差(差分行列)が135度の対称行列である場合、例えば図18に示されるように、重複しているデータである対称部分のデータ(行列要素)を削除する。残差が135度の対称行列でない場合、重複判定部191は、このデータ(行列要素)の削除を省略する。重複判定部191は、必要に応じて対称部分が削除された差分行列のデータを、DPCM部192に供給する。
 DPCM部192は、重複判定部191から供給された、必要に応じて対称部分が削除された差分行列のデータをDPCM符号化し、DPCMデータを生成する。DPCM部192は、生成したDPCMデータを、expG部193に供給する。
 expG部193は、DPCM部192から供給されるDPCMデータに対して、符号つき・符号なしのexponential golomb符号(以下、指数ゴロム符号とも称する)を行う。expG部193は、その符号化結果を復号部165および出力部166に供給する。
  (5)復号部
 復号部165は、expG部193から供給されるデータから、スケーリングリストを復元する。復号部165は、復元したスケーリングリストに関する情報を、過去に伝送したスケーリングリストとして、予測部161に供給する。
 図16に示されるように、復号部165は、スケーリングリスト復元部201および記憶部202を有する。
 スケーリングリスト復元部201は、エントロピ符号化部164(expG部193)から供給される指数ゴロム符号を復号し、行列処理部150に入力されるスケーリングリストを復元する。例えば、スケーリングリスト復元部201は、指数ゴロム符号をエントロピ符号化部164の符号化方法に対応する方法で復号し、差分行列サイズ変換部163によるサイズ変換の逆変換を行い、量子化部183による量子化に対応する逆量子化を行い、得られた差分行列を、予測行列から減算することにより、スケーリングリストを復元する。
 スケーリングリスト復元部201は、復元したスケーリングリストを記憶部202に供給し、そのサイズやリストIDと関連付けて記憶させる。
 記憶部202は、スケーリングリスト復元部201から供給されるスケーリングリストに関する情報を記憶する。この記憶部202に記憶されるスケーリングリストに関する情報は、時間的に後に処理される他の直交変換単位の予測行列生成に利用される。つまり、記憶部202は、記憶しているスケーリングリストに関する情報を、過去に伝送したスケーリングリストに関する情報として、予測部161に供給する。
 なお、記憶部202は、このように復元されたスケーリングリストに関する情報を記憶する代わりに、行列処理部150に入力されるスケーリングリストを、そのサイズやリストIDと関連付けて記憶するようにしてもよい。その場合、スケーリングリスト復元部201を省略することができる。
  (6)出力部
 出力部166は、供給される各種情報を行列処理部150の外部に出力する。例えば、コピーモードの場合、出力部166は、コピー部171から供給される予測行列のリストIDを、可逆符号化部16および逆量子化部21に供給する。また、例えば、通常の場合、出力部166は、expG部193から供給される指数ゴロム符号、および、量子化部183から供給される量子化パラメータを、可逆符号化部16および逆量子化部21に供給する。
 また、出力部166は、スケーリングリスト(若しくは、スケーリングリストとその予測行列との差分行列)の伝送の際に許容される最大サイズ(伝送サイズ)を示す識別情報を、復号側でスケーリングリストを生成するための情報として可逆符号化部16に供給する。可逆符号化部16は、上述したように、そのスケーリングリストを生成するための情報を符号化ストリームに含め、復号側に提供する。なお、この伝送サイズを示す識別情報をレベルやプロファイル等によって予め規定するようにしてもよい。その場合、その伝送サイズに関する情報が、符号化側の装置と復号側の装置とで予め共有されるので、上述した識別情報の伝送を省略することができる。
  <2-5. DPCM部の詳細な構成例>
 図19は、DPCM部192のさらに詳細な構成の一例を示すブロック図である。図19を参照すると、DPCM部192は、DC係数符号化部211およびAC係数DPCM部212を有する。
 DC係数符号化部211は、重複判定部191から供給される係数群の中からDC係数を取得し、所定の初期値(例えば8)から、そのDC係数の値を減算し、その差分値を最初(i=0)の差分値(scaling_list_delta_coef)とする。DC係数符号化部211は、算出した差分値(scaling_list_delta_coef(i=0))を、処理中である当該領域に対応するスケーリングリストの最初の係数としてexpG部193に供給する。
 AC係数DPCM部212は、重複判定部191から供給される係数群の中からAC係数を取得し、1つ前に処理された係数から、そのAC係数の値を減算し、その差分値(scaling_list_delta_coef(i>0))とする。AC係数DPCM部212は、算出した差分値(scaling_list_delta_coef(i>0))を、処理中である当該領域に対応するスケーリングリストの係数としてexpG部193に供給する。なお、i=1の場合、1つ前の係数はi=0であるので、「DC係数」が1つ前に処理された係数となる。
 このようにして、DPCM部192は、DC係数をスケーリングリスト(AC係数)の先頭の要素として伝送することができる。これにより、スケーリングリストの符号化効率を向上させることができる。
  <2-6. 量子化行列符号化処理の流れ>
 次に、図20のフローチャートを参照して、図16の行列処理部150により実行される量子化行列符号化処理の流れの例を説明する。
 量子化行列符号化処理が開始されると、ステップS101において、予測部161は、処理対象の直交変換単位であるカレント領域(注目領域とも称する)のスケーリングリスト(量子化行列)を取得する。
 ステップS102において、予測部161は、コピーモードであるか否かを判定する。コピーモードでないと判定した場合、予測部161は、処理をステップS103に進める。
 ステップS103において、予測行列生成部172は、過去に伝送されたスケーリングリストを、記憶部202から取得し、そのスケーリングリストを用いて、予測行列を生成する。
 ステップS104において、予測行列サイズ変換部181は、ステップS103において生成された予測行列のサイズが、ステップS101において取得されたカレント領域(注目領域)のスケーリングリストと異なるか否かを判定する。サイズが異なると判定した場合、予測行列サイズ変換部181は、処理をステップS105に進める。
 ステップS105において、予測行列サイズ変換部181は、ステップS103において生成された予測行列のサイズを、ステップS101において取得されたカレント領域のスケーリングリストのサイズにコンバートする。
 ステップS105の処理が終了すると、予測行列サイズ変換部181は、処理をステップS106に進める。また、ステップS104において、予測行列のサイズとスケーリングリストのサイズが同一であると判定した場合、予測行列サイズ変換部181は、ステップS105の処理を省略し(ステップS105の処理を行わずに)、処理をステップS106に進める。
 ステップS106において、演算部182は、予測行列からスケーリングリストを減算し、予測行列とスケーリングリストの差分行列を算出する。
 ステップS107において、量子化部183は、ステップS106において生成された差分行列を量子化する。なお、この処理は省略するようにしてもよい。
 ステップS108において、差分行列サイズ変換部163は、量子化された差分行列のサイズが伝送サイズ(伝送の際に許容される最大サイズ)より大きいか否かを判定する。伝送サイズより大きいと判定した場合、差分行列サイズ変換部163は、処理をステップS109に進め、差分行列を伝送サイズ以下にダウンコンバートする。
 ステップS109の処理を終了すると、差分行列サイズ変換部163は、処理をステップS110に進める。また、ステップS108において、量子化された差分行列のサイズが伝送サイズ以下であると判定した場合、差分行列サイズ変換部163は、ステップS109の処理を省略し(ステップS109の処理を行わずに)、処理をステップS110に進める。
 ステップS110において、重複判定部191は、量子化された差分行列が、135度の対称性を有するか否かを判定する。135度の対称性を有すると判定した場合、重複判定部191は、処理をステップS111に進める。
 ステップS111において、重複判定部191は、量子化された差分行列の重複部分(重複データ)を削除する。重複データを削除すると、重複判定部191は、処理をステップS112に進める。
 また、ステップS110において、量子化された差分行列が135度の対称性を有さないと判定した場合、重複判定部191は、ステップS111の処理を省略し(ステップS111の処理を行わずに)、処理をステップS112に進める。
 ステップS112において、DPCM部192は、適宜重複部分が削除された差分行列をDPCM符号化する。
 ステップS113において、expG部193は、ステップS112において生成されたDPCMデータに、正負を表す符号が存在するか否かを判定する。符号が存在すると判定した場合、expG部193は、処理をステップS114に進める。
 ステップS114において、expG部193は、DPCMデータに対して、符号付きの指数ゴロム符号化を行う。出力部166は、生成された指数ゴロム符号を、可逆符号化部16および逆量子化部21に出力する。ステップS114の処理が終了すると、expG部193は、処理をステップS116に進める。
 また、ステップS113において、符号が存在しないと判定した場合、expG部193は、処理をステップS115に進める。
 ステップS115において、expG部193は、DPCMデータに対して、符号無しの指数ゴロム符号化を行う。出力部166は、生成された指数ゴロム符号を、可逆符号化部16および逆量子化部21に出力する。ステップS115の処理が終了すると、expG部193は、処理をステップS116に進める。
 また、ステップS102において、コピーモードであると判定した場合、コピー部171は、過去に伝送されたスケーリングリストを複製してそれを予測行列とする。出力部166は、その予測行列に対応するリストIDを、予測行列を示す情報として、可逆符号化部16および逆量子化部21に出力する。そして、コピー部171は、処理をステップS116に進める。
 ステップS116において、スケーリングリスト復元部201は、スケーリングリストを復元する。ステップS117において、記憶部202は、ステップS116において復元されたスケーリングリストを記憶する。
 ステップS117の処理が終了すると、行列処理部150は、量子化行列符号化処理を終了する。
  <2-7. DPCM処理の流れ>
 次に、図21のフローチャートを参照して、図20のステップS112において実行されるDPCM処理の流れの例を説明する。
 DPCM処理が開始されると、DC係数符号化部211は、ステップS131において、DC係数と定数の差分を求める。ステップS132において、AC係数DPCM部212は、DC係数と最初のAC係数との差分を求める。
 ステップS133において、AC係数DPCM部212は、全てのAC係数を処理したか否かを判定する。未処理のAC係数が存在すると判定した場合、AC係数DPCM部212は、処理をステップS134に進める。
 ステップS134において、AC係数DPCM部212は、次のAC係数を処理対象とする。ステップS135において、AC係数DPCM部212は、前回処理したAC係数と処理対象のAC係数との差分を求める。ステップS135の処理が終了すると、AC係数DPCM部212は、処理をステップS133に戻す。
 このように、ステップS133において、未処理のAC係数が存在すると判定される間、AC係数DPCM部212は、ステップS133乃至ステップS135の処理を繰り返し実行する。ステップS133において、未処理のAC係数が存在しないと判定された場合、AC係数DPCM部212は、DPCM処理を終了し、処理を図20に戻す。
 以上のように、DC係数と、AC係数群の先頭のAC係数との差分を求め、その差分をDC係数の代わりに、画像復号装置に伝送することにより、画像符号化装置10は、スケーリングリストの符号量の増加を抑制することができる。
 次に、本開示の一実施形態に係る画像復号装置の構成例について説明する。
  <2-8. 画像復号装置>
 図22は、本開示の一実施形態に係る画像復号装置300の構成の一例を示すブロック図である。図22に示される画像復号装置300は、画像符号化装置10により生成された符号化データを復号する、本技術を適用した画像処理装置である。図22を参照すると、画像復号装置300は、蓄積バッファ311、可逆復号部312、逆量子化・逆直交変換部313、加算部315、デブロックフィルタ316、並べ替えバッファ317、D/A(Digital to Analogue)変換部318、フレームメモリ319、セレクタ320及び321、イントラ予測部330、並びに動き補償部340を有する。
 蓄積バッファ311は、伝送路を介して入力される符号化ストリームを、記憶媒体を用いて一時的に蓄積する。
 可逆復号部312は、蓄積バッファ311から入力される符号化ストリームを、符号化の際に使用された符号化方式に従って復号する。また、可逆復号部312は、符号化ストリームのヘッダ領域に多重化されている情報を復号する。符号化ストリームのヘッダ領域に多重化されている情報とは、例えば、上述したスケーリングリストを生成するための情報、並びに、ブロックヘッダ内のイントラ予測に関する情報およびインター予測に関する情報を含み得る。可逆復号部312は、復号後の量子化データおよびスケーリングリストを生成するための情報を、逆量子化・逆直交変換部313へ出力する。また、可逆復号部312は、イントラ予測に関する情報をイントラ予測部330へ出力する。また、可逆復号部312は、インター予測に関する情報を動き補償部340へ出力する。
 逆量子化・逆直交変換部313は、可逆復号部312から入力される量子化データについて逆量子化および逆直交変換を行うことにより、予測誤差データを生成する。そして、逆量子化・逆直交変換部313は、生成した予測誤差データを加算部315へ出力する。
 加算部315は、逆量子化・逆直交変換部313から入力される予測誤差データと、セレクタ321から入力される予測画像データとを加算することにより、復号画像データを生成する。そして、加算部315は、生成した復号画像データをデブロックフィルタ316およびフレームメモリ319へ出力する。
 デブロックフィルタ316は、加算部315から入力される復号画像データをフィルタリングすることによりブロック歪みを除去し、フィルタリング後の復号画像データを並べ替えバッファ317およびフレームメモリ319へ出力する。
 並べ替えバッファ317は、デブロックフィルタ316から入力される画像を並べ替えることにより、時系列の一連の画像データを生成する。そして、並べ替えバッファ317は、生成した画像データをD/A変換部318へ出力する。
 D/A変換部318は、並べ替えバッファ317から入力されるデジタル形式の画像データをアナログ形式の画像信号に変換する。そして、D/A変換部318は、例えば、画像復号装置300と接続されるディスプレイ(図示せず)にアナログ画像信号を出力することにより、画像を表示させる。
 フレームメモリ319は、加算部315から入力されるフィルタリング前の復号画像データ、および、デブロックフィルタ316から入力されるフィルタリング後の復号画像データを、記憶媒体を用いて記憶する。
 セレクタ320は、可逆復号部312により取得されるモード情報に応じて、画像内のブロックごとに、フレームメモリ319からの画像データの出力先をイントラ予測部330と動き補償部340との間で切り替える。例えば、セレクタ320は、イントラ予測モードが指定された場合、フレームメモリ319から供給されるフィルタリング前の復号画像データを参照画像データとしてイントラ予測部330へ出力する。また、セレクタ320は、インター予測モードが指定された場合、フレームメモリ319から供給されるフィルタリング後の復号画像データを参照画像データとして動き補償部340へ出力する。
 セレクタ321は、可逆復号部312により取得されるモード情報に応じて、画像内のブロックごとに、加算部315へ供給すべき予測画像データの出力元をイントラ予測部330と動き補償部340との間で切り替える。例えば、セレクタ321は、イントラ予測モードが指定された場合、イントラ予測部330から出力される予測画像データを加算部315へ供給する。セレクタ321は、インター予測モードが指定された場合、動き補償部340から出力される予測画像データを加算部315へ供給する。
 イントラ予測部330は、可逆復号部312から入力されるイントラ予測に関する情報とフレームメモリ319からの参照画像データとに基づいて画素値の画面内予測を行い、予測画像データを生成する。そして、イントラ予測部330は、生成した予測画像データをセレクタ321へ出力する。
 動き補償部340は、可逆復号部312から入力されるインター予測に関する情報とフレームメモリ319からの参照画像データとに基づいて動き補償処理を行い、予測画像データを生成する。そして、動き補償部340は、生成した予測画像データをセレクタ321へ出力する。
  <2-9. 逆量子化・逆直交変換部の構成例>
 図23は、図22に示した画像復号装置300の逆量子化・逆直交変換部313の主な構成の一例を示すブロック図である。図23を参照すると、逆量子化・逆直交変換部313は、行列生成部410、選択部430、逆量子化部440、および逆直交変換部450を有する。
  (1)行列生成部
 行列生成部410は、可逆復号部312においてビットストリームから抽出され、供給されたスケーリングリスト符号化データを復号し、スケーリングリストを生成する。行列生成部410は、生成したスケーリングリストを逆量子化部440に供給する。
  (2)選択部
 選択部430は、サイズの異なる複数の変換単位から、復号される画像データの逆直交変換のために使用される変換単位(TU)を選択する。選択部430により選択され得る変換単位のサイズの候補は、例えば、H.264/AVCでは4x4および8x8を含み、HEVCでは4x4、8x8、16x16、および32x32を含む。選択部430は、例えば、符号化ストリームのヘッダ内に含まれるLCU、SCU、およびsplit_flagに基づいて、変換単位を選択してもよい。そして、選択部430は、選択した変換単位のサイズを指定する情報を、逆量子化部440および逆直交変換部450へ出力する。
  (3)逆量子化部
 逆量子化部440は、選択部430により選択された変換単位に対応するスケーリングリストを用いて、画像の符号化の際に量子化された変換係数データを逆量子化する。そして、逆量子化部440は、逆量子化した変換係数データを逆直交変換部450へ出力する。
  (4)逆直交変換部
 逆直交変換部450は、符号化の際に使用された直交変換方式に従い、逆量子化部440により逆量子化された変換係数データを上記選択された変換単位で逆直交変換することにより、予測誤差データを生成する。そして、逆直交変換部450は、生成した予測誤差データを加算部315へ出力する。
  <2-10. 行列生成部の詳細な構成例>
 図24は、図23に示した行列生成部410の詳細な構成の一例を示すブロック図である。図24を参照すると、行列生成部410は、パラメータ解析部531、予測部532、エントロピ復号部533、スケーリングリスト復元部534、出力部535、および記憶部536を有する。
  (1)パラメータ解析部
 パラメータ解析部531は、可逆復号部312から供給される、スケーリングリストに関する各種フラグやパラメータを解析する。また、パラメータ解析部531は、その解析結果に従って、可逆復号部312から供給される、差分行列の符号化データ等、各種情報を予測部532またはエントロピ復号部533に供給する。
 例えば、パラメータ解析部531は、pred_modeが0なら、コピーモードと判断し、pred_matrix_id_deltaをコピー部541に供給する。また、例えば、パラメータ解析部531は、pred_modeが1なら、全スキャンモード(通常の場合)と判断し、pred_matrix_id_deltaおよびpred_size_id_deltaを予測行列生成部542に供給する。
 また、パラメータ解析部531は、例えばresidual_flagがtrueである場合、可逆復号部312から供給されるスケーリングリストの符号化データ(指数ゴロム符号)をエントロピ復号部533のexpG部551に供給する。さらに、パラメータ解析部531は、residual_symmetry_flagをexpG部551に供給する。
 さらに、パラメータ解析部531は、residual_down_sampling_flagをスケーリングリスト復元部534の差分行列サイズ変換部562に供給する。
  (2)予測部
 予測部532は、パラメータ解析部531の制御に従って、予測行列を生成する。図24に示されるように、予測部532は、コピー部541および予測行列生成部542を有する。
 コピー部541は、コピーモードの場合、過去に伝送されたスケーリングリストを複製し、それを予測行列とする。より具体的には、コピー部541は、pred_matrix_id_deltaに対応する、カレント領域のスケーリングリストと同一サイズの、過去に伝送されたスケーリングリストを記憶部536から読み出し、そのスケーリングリストを予測画像とし、その予測画像を出力部535に供給する。
 予測行列生成部542は、通常の場合、過去に伝送されたスケーリングリストを用いて予測行列を生成する(予測する)。より具体的には、予測行列生成部542は、pred_matrix_id_deltaおよびpred_size_id_deltaに対応する過去に伝送されたスケーリングリストを記憶部536から読み出し、それを用いて予測行列を生成する。つまり、予測行列生成部542は、画像符号化装置10の予測行列生成部172(図16)が生成する予測行列と同様の予測行列を生成する。予測行列生成部542は、生成した予測行列をスケーリングリスト復元部534の予測行列サイズ変換部561に供給する。
  (3)エントロピ復号部
 エントロピ復号部533は、パラメータ解析部531から供給される指数ゴロム符号から差分行列を復元する。図24に示されるように、エントロピ復号部533は、expG部551、逆DPCM部552、および逆重複判定部553を有する。
 expG部551は、符号つき若しくは符号なしのexponential golomb復号(以下、指数ゴロム復号とも称する)を行い、DPCMデータを復元する。expG部551は、復元したDPCMデータを、residual_symmetry_flagとともに、逆DPCM部552に供給する。
 逆DPCM部552は、重複部分が削除されたデータに対してDPCM復号して、DPCMデータから残差データを生成する。逆DPCM部552は、生成した残差データを、residual_symmetry_flagとともに、逆重複判定部553に供給する。
 逆重複判定部553は、residual_symmetry_flagがtrueである場合、すなわち、残差データが135度の対称行列の、重複する対称部分のデータ(行列要素)が削除されたものである場合、その対称部分のデータを復元する。つまり、135度の対称行列の差分行列が復元される。なお、residual_symmetry_flagがtrueで無い場合、すなわち、残差データが135度の対称行列でない行列である場合、逆重複判定部553は、対称部分のデータの復元を行わずに、その残差データを差分行列とする。逆重複判定部553は、このようにして復元した差分行列をスケーリングリスト復元部534(差分行列サイズ変換部562)に供給する。
  (4)スケーリングリスト復元部
 スケーリングリスト復元部534は、スケーリングリストを復元する。図24に示されるように、スケーリングリスト復元部534は、予測行列サイズ変換部561、差分行列サイズ変換部562、逆量子化部563、および演算部564を有する。
 予測行列サイズ変換部561は、予測部532(予測行列生成部542)から供給される予測行列のサイズが、復元されるカレント領域のスケーリングリストのサイズと異なる場合、その予測行列のサイズをコンバートする。
 例えば、予測行列のサイズがスケーリングリストのサイズより大きい場合、予測行列サイズ変換部561は、予測行列をダウンコンバートする。また、例えば、予測行列のサイズがスケーリングリストのサイズより小さい場合、予測行列サイズ変換部561は、予測行列をアップコンバートする。コンバートの方法は、画像符号化装置10の予測行列サイズ変換部181(図16)と同一の方法が選択される。
 予測行列サイズ変換部561は、サイズをスケーリングリストに合わせた予測行列を演算部564に供給する。
 差分行列サイズ変換部562は、residual_down_sampling_flagがtrueの場合、すなわち、伝送された差分行列のサイズが逆量子化するカレント領域のサイズより小さい場合、その差分行列のサイズを逆量子化するカレント領域に応じたサイズにアップコンバートする。アップコンバートの方法は、任意である。例えば、画像符号化装置10の差分行列サイズ変換部163(図16)が行ったダウンコンバートの方法に対応するようにしてもよい。
 例えば、差分行列サイズ変換部163が、差分行列をダウンサンプルした場合、差分行列サイズ変換部562は、その差分行列をアップサンプルするようにしてもよい。また、差分行列サイズ変換部163が、差分行列をサブサンプルした場合、差分行列サイズ変換部562は、その差分行列を逆サブサンプルするようにしてもよい。
 例えば、差分行列サイズ変換部562は、一般的な線形補間ではなく、図25に示されるように、最近傍補間処理(nearest neighbor)で補間するようにしてもよい。この最近傍補間処理を用いることにより、保持するメモリを低減させることができる。
 これにより、サイズの大きなスケーリングリストを伝送しない場合でも、サイズの小さなスケーリングリストからアップサンプリングする際に、アップサンプリング後のデータを保持する必要がなくなり、アップサンプリングする際の演算に伴うデータを格納する際にも、中間バッファ等も不要となる。
 なお、residual_down_sampling_flagがtrueでない場合、すなわち、差分行列が量子化処理に用いられたときのサイズで伝送される場合、差分行列サイズ変換部562は、差分行列のアップコンバートを省略する(若しくは、1倍のアップコンバートを行うようにしてもよい)。
 差分行列サイズ変換部562は、このように必要に応じてアップコンバートした差分行列を、逆量子化部563に供給する。
 逆量子化部563は、画像符号化装置10の量子化部183(図16)の量子化に対応する方法で、供給された差分行列(量子化データ)を逆量子化し、逆量子化された差分行列を演算部564に供給する。なお、量子化部183が省略される場合、すなわち、差分行列サイズ変換部562から供給される差分行列が量子化データでない場合、この逆量子化部563を省略することができる。
 演算部564は、予測行列サイズ変換部561から供給される予測行列と、逆量子化部563から供給される差分行列とを加算し、カレント領域のスケーリングリストを復元する。演算部564は、復元したスケーリングリストを出力部535および記憶部536に供給する。
  (5)出力部
 出力部535は、供給される情報を行列生成部410の外部に出力する。例えば、コピーモードの場合、出力部535は、コピー部541から供給される予測行列をカレント領域のスケーリングリストとして、逆量子化部440に供給する。また、例えば、通常の場合、出力部535は、スケーリングリスト復元部534(演算部564)から供給されるカレント領域のスケーリングリストを、逆量子化部440に供給する。
  (6)記憶部
 記憶部536は、スケーリングリスト復元部534(演算部564)から供給されるスケーリングリストを、そのサイズやリストIDとともに記憶する。この記憶部536に記憶されるスケーリングリストに関する情報は、時間的に後に処理される他の直交変換単位の予測行列生成に利用される。つまり、記憶部536は、記憶しているスケーリングリストに関する情報を、過去に伝送されたスケーリングリストに関する情報として、予測部532に供給する。
  <2-11. 逆DPCM部の詳細な構成例>
 図26は、図24に示した逆DPCM部552の詳細な構成の一例を示すブロック図である。図26を参照すると、逆DPCM部552は、初期設定部571、DPCM復号部572、およびDC係数抽出部573を有する。
 初期設定部571は、sizeIDやMatrixIDを取得したり、各種変数に初期値を設定したりする。初期設定部571は、取得したり、設定したりした情報をDPCM復号部572に供給する。
 DPCM復号部572は、初期設定部571から供給された初期設定等を用いて、DC係数やAC係数の差分値(scaling_list_delta_coef)から、各係数(DC係数および各AC係数)を求める。DPCM復号部572は、求めた各係数をDC係数抽出部573に供給する(ScalingList[i])。
 DC係数抽出部573は、DPCM復号部572から供給された係数群(ScalingList[i])の中からDC係数を抽出する。DC係数は、AC係数群の先頭に配置されている。つまり、DPCM復号部572から供給された係数群の最初の係数(ScalingList[0])がDC係数である。DC係数抽出部573は、先頭の係数をDC係数として抽出し、逆重複判定部553に出力する(DC_coef)。DC係数抽出部573は、その他の係数(ScalingList[i](i>0))をAC係数として逆重複判定部553に出力する。
 このようにすることにより、逆DPCM部552は、正しくDPCM復号することができ、DC係数やAC係数を得ることができる。つまり、画像復号装置300は、スケーリングリストの符号量の増加を抑制することができる。
  <2-12. 量子化行列復号処理の流れ>
 図27のフローチャートを参照して、以上のような行列生成部410により実行される量子化行列復号処理の流れの例を説明する。
 量子化行列復号処理が開始されると、ステップS301において、パラメータ解析部531は、領域0乃至領域3の量子化値(Qscale0乃至Qscale3)を読み込む。
 パラメータ解析部531は、ステップS302において、pred_modeを読み込み、ステップS303において、pred_modeが0であるか否かを判定する。pred_modeが0であると判定した場合、パラメータ解析部531は、コピーモードと判定し、処理をステップS304に進める。
 ステップS304において、パラメータ解析部531は、pred_matrix_id_deltaを読み込む。ステップS305において、コピー部541は、伝送済みのスケーリングリストを複製し、予測行列とする。コピーモードの場合、その予測行列がカレント領域のスケーリングリストとして出力される。ステップS305の処理が終了すると、コピー部541は、量子化行列復号処理を終了する。
 また、ステップS303において、pred_modeが0でないと判定した場合、パラメータ解析部531は、全スキャンモード(通常の場合)と判定し、処理をステップS306に進める。
 ステップS306において、パラメータ解析部531は、pred_matrix_id_delta、pred_size_id_delta、およびresidual_flagを読み込む。ステップS307において、予測行列生成部542は、伝送済みのスケーリングリストから予測行列を生成する。
 ステップS308において、パラメータ解析部531は、residual_flagがtrueであるか否かを判定する。residual_flagがtrueでないと判定された場合、残差行列が存在しないので、ステップS307において生成された予測行列が、カレント領域のスケーリングリストとして出力される。したがって、この場合、パラメータ解析部531は、量子化行列復号処理を終了する。
 また、ステップS308において、residual_flagがtrueであると判定した場合、パラメータ解析部531は、処理をステップS309に進める。
 ステップS309において、パラメータ解析部531は、residual_down_sampling_flagおよびresidual_symmetry_flagを読み込む。
 ステップS310において、expG部551および逆DPCM部552は、残差行列の指数ゴロム符号を復号し、残差データを生成する。
 ステップS311において、逆重複判定部553は、residual_symmetry_flagがtrueであるか否かを判定する。residual_symmetry_flagがtrueであると判定した場合、逆重複判定部553は、処理をステップS312に進め、その残差データの、削除された重複部分を復元する(inverse symmetry処理を行う)。このようにして135度に対称行列な差分行列が生成されると、逆重複判定部553は、処理をステップS313に進める。
 また、ステップS311において、residual_symmetry_flagがtrueでないと判定した場合(残差データが、135度に対称行列でない差分行列である場合)、逆重複判定部553は、ステップS312の処理を省略し(inverse symmetry処理を行わずに)、処理をステップS313に進める。
 ステップS313において、差分行列サイズ変換部562は、residual_down_sampling_flagがtrueであるか否かを判定する。residual_down_sampling_flagがtrueであると判定した場合、差分行列サイズ変換部562は、処理をステップS314に進め、差分行列を、逆量子化するカレント領域に応じたサイズにアップコンバートする。差分行列をアップコンバートすると差分行列サイズ変換部562は、処理をステップS315に進める。
 また、ステップS313において、residual_down_sampling_flagがtrueでないと判定した場合、差分行列サイズ変換部562は、ステップS314の処理を省略し(差分行列をアップコンバートせずに)、処理をステップS315に進める。
 ステップS315において、演算部564は、予測行列に差分行列を加算し、カレント領域のスケーリングリストを生成する。ステップS315の処理が終了すると、量子化行列復号処理が終了される。
  <2-13. 残差信号復号処理の流れ>
 次に、図27のステップS310において実行される残差信号復号処理の流れの例を、図28のフローチャートを参照して説明する。
 残差信号復号処理が開始されると、expG部551は、ステップS331において、供給される指数ゴロム符号を復号する。
 ステップS332において、逆DPCM部552は、expG部551において復号されて得られたDPCMデータに対して逆DPCM処理を行う。
 逆DPCM処理が終了すると、逆DPCM部552は、残差信号復号処理を終了し、処理を図27に戻す。
  <2-14. 逆DPCM処理の流れ>
 次に、図28のステップS332において実行される逆DPCM処理の流れの例を、図29のフローチャートを参照して説明する。
 逆DPCM処理が開始されると、初期設定部571は、ステップS351において、sizeIDおよびMatrixIDを取得する。
 ステップS352において、初期設定部571は、coefNumを以下のように設定する。
 coefNum = min((1<<(4+(sizeID<<1))),65)
 ステップS353において、初期設定部571は、変数iと変数nextcoefを以下のように設定する。
 i = 0
 nextcoef = 8
 ステップS354において、DPCM復号部572は、変数i<coefNumであるか否かを判定する。変数iがcoefNumより小さい場合、初期設定部571は、処理をステップS355に進める。
 ステップS355において、DPCM復号部572は、係数のDPCMデータ(scaling_list_delta_coef)を読み込む。
 ステップS356において、DPCM復号部572は、読み込んだDPCMデータを用いて以下のようにnextcoefを求め、さらに、scalingList[i]を求める。
 nextcoef = (nextcoef + scaling_list_delta_coef+256) % 256
 scalingList[i] = nextcoef
 ステップS357において、DC係数抽出部573は、sizeIDが1より大きく、かつ、変数iが0(すなわち、先頭の係数)であるか否かを判定する。sizeIDが1より大きく、かつ、先頭の係数であると判定した場合、DC係数抽出部573は、処理をステップS358に進め、その係数をDC係数とする(DC_coef = nextcoef)。ステップS358の処理を終了すると、DC係数抽出部573は、処理をステップS360に進める。
 また、ステップS357において、DC係数抽出部573は、sizeIDが1以下である、若しくは、先頭の係数でないと判定した場合、処理をステップS359に進め、DC係数を抽出した分、各係数の変数iを1つずらす。(ScalingList[(i-(sizeID)>1)?1;0] = nextcoef)ステップS359の処理が終了すると、DC係数抽出部573は、処理をステップS360に進める。
 ステップS360において、DPCM復号部572は、変数iをインクリメントし、処理の対象を次の係数に替え、処理をステップS354に戻す。
 ステップS354において、変数iがcoefNum以上であると判定されるまで、ステップS354乃至ステップS360の処理が繰り返される。ステップS354において、変数iがcoefNum以上であると判定された場合、DPCM復号部572は、逆DPCM処理を終了し、処理を図28に戻す。
 以上のようにすることにより、DC係数と、AC係数群の先頭のAC係数との差分を正しく復号することができるので、画像復号装置300は、スケーリングリストの符号量の増加を抑制することができる。
 <3. 第3の実施の形態>
  <3-1. シンタクス:方法2>
 DC係数の代わりに、DC係数とその他の係数との差分を伝送する方法として、例えば、DC係数と8x8マトリクスの(0,0)成分の差分を、8x8マトリクスのDPCMデータとは別のDPCMデータとして伝送するようにしてもよい(方法2)。例えば、8x8マトリクスのDPCM伝送後、DC係数と8x8マトリクスの(0,0)成分の差分を伝送するようにしてもよい。
 このようにすることにより、方法1の場合と同様に、8x8マトリクスの(0,0)係数(AC係数)とDC係数が近い値の場合に圧縮率をより向上させることができる。
 方法2の場合の、スケーリングリストのシンタクスを、図30に示す。図30の例の場合、係数同士の差分値(scaling_list_delta_coef)が64個読み込まれ、最後にDC係数と(0,0)係数(AC係数)との差分(scaling_list_dc_coef_delta)が読み込まれ、その差分からDC係数が求められる。
 したがって、方法2の場合、AC係数の復号についてのシンタクスを、図12に示される従来の場合と同様にすることができる。つまり、方法2のシンタクスは、従来の例からの変更を少なくすることができ、方法1の場合よりも実現が容易である。
 ただし、画像復号装置は、方法2の場合、係数を全て受け取り、DPCMを全て解くまで、DC係数を得ることが出来ないのに対し、方法1の場合、最初の係数を受け取った時点でDC係数を復元する事が可能である。
 このような方法2のシンタクスを実現する画像符号化装置について以下に説明する。
  <3-2. DPCM部の詳細な構成例>
 方法2の場合、画像符号化装置10の構成は、基本的に、上述した方法1の場合と同様である。すなわち、画像符号化装置10は、図14に示される例のように構成される。また、直交変換・量子化部14は、図15に示される例のように構成される。さらに、行列処理部150は、図16に示される例のように構成される。
 この場合のDPCM部192の構成例を図31に示す。図31に示されるように、この場合、DPCM部192は、AC係数バッファ611、AC係数符号化部612、AC係数DPCM部613、およびDC係数DPCM部614を有する。
 AC係数バッファ611は、重複判定部191から供給される最初のAC係数(つまり、(0,0)係数)を記憶する。AC係数バッファ611は、全てのAC係数をDPCM処理した後の所定のタイミングにおいて、若しくは要求に応じて、記憶している最初のAC係数(AC係数(0,0))を、DC係数DPCM部614に供給する。
 AC係数符号化部612は、重複判定部191から供給される最初のAC係数(AC係数(0,0))を取得し、定数(例えば8)からその値を減算する。AC係数符号化部612は、その減算結果(差分)をAC係数のDPCMデータの最初の係数(scaling_list_delta_coef(i=0))として、expG部193に供給する。
 AC係数DPCM部613は、重複判定部191から供給される各AC係数を取得し、2番目以降の各AC係数について、1つ前のAC係数との差分(DPCM)を求め、DPCMデータ(scaling_list_delta_coef(i=1~63))として、expG部193に供給する。
 DC係数DPCM部614は、重複判定部191から供給されるDC係数を取得する。また、DC係数DPCM部614は、AC係数バッファ611により保持されている最初のAC係数(AC係数(0,0))を取得する。DC係数DPCM部614は、DC係数から最初のAC係数(AC係数(0,0))を減算することによりそれらの差分を求め、その差分をDC係数のDPCMデータ(scaling_list_dc_coef_delta)として、expG部193に供給する。
 以上のように、方法2においては、DC係数とその他の係数(最初のAC係数)との差分が求められる。そして、その差分が、AC係数のDPCMデータと異なる、DC係数のDPCMデータ(scaling_list_dc_coef_delta)として、AC係数同士の差分であるAC係数のDPCMデータ(scaling_list_delta_coef)伝送後に伝送される。このようにすることにより、画像符号化装置10は、方法1の場合と同様に、スケーリングリストの符号化効率を向上させることができる。
  <3-3. DPCM処理の流れ>
 方法2の場合も、画像符号化装置10は、量子化行列符号化処理を、図20のフローチャートを参照して説明した方法1の場合と同様に実行する。
 図32のフローチャートを参照して、図20のステップS112において実行される、方法2の場合のDPCM処理の流れの例を説明する。
 DPCM処理が開始されると、AC係数バッファ611は、ステップS401において、最初のAC係数を保持する。
 ステップS402において、AC係数符号化部612は、所定の定数(例えば8)から最初のAC係数を減算し、その差分(最初のDPCMデータ)を求める。
 ステップS403乃至ステップS405の各処理は、AC係数DPCM部613により、図21のステップS133乃至ステップS135の各処理と同様に実行される。すなわち、ステップS403乃至ステップS405の処理が繰り返し実行されることにより、全てのAC係数のDPCMデータ(1つ前のAC係数との差分)が生成される。
 ステップS403において、全てのAC係数が処理された(つまり、未処理のAC係数が存在しない)と判定した場合、AC係数DPCM部613は、処理をステップS406に進める。
 ステップS406において、DC係数DPCM部614は、DC係数から、ステップS401において保持された最初のAC係数を減算し、それらの差分(DC係数のDPCMデータ)を求める。
 ステップS406の処理が終了すると、DC係数DPCM部614は、DPCM処理を終了し、処理を図20に戻す。
 以上のように、DC係数についても、他の係数との差分を求め、それをDPCMデータとして画像復号装置に伝送することにより、画像符号化装置10は、スケーリングリストの符号量の増加を抑制することができる。
  <3-4. 逆DPCM部の詳細な構成例>
 方法2の場合の画像復号装置300の構成は、基本的に、方法1の場合と同様である。つまり、方法2の場合も画像復号装置300は、図22に示される例のように構成される。また、逆量子化・逆直交変換部313は、図23に示される例のように構成される。さらに、行列生成部410は、図24に示される例のように構成される。
 図33は、方法2の場合の、図24に示した逆DPCM部552の詳細な構成の一例を示すブロック図である。図33を参照すると、逆DPCM部552は、初期設定部621、AC係数DPCM復号部622、AC係数バッファ623、およびDC係数DPCM復号部624を有する。
 初期設定部621は、sizeIDやMatrixIDを取得したり、各種変数に初期値を設定したりする。初期設定部621は、取得したり、設定したりした情報をAC係数DPCM復号部622に供給する。
 AC係数DPCM復号部622は、expG部551から供給されるAC係数のDPCMデータ(scaling_list_delta_coef)を取得する。AC係数DPCM復号部622は、初期設定部621から供給された初期設定等を用いて、取得したAC係数のDPCMデータを復号し、AC係数を求める。AC係数DPCM復号部622は、求めた各AC係数(ScalingList[i])を逆重複判定部553に供給する。また、AC係数DPCM復号部622は、求めた、最初のAC係数(ScalingList[0]、すなわちAC係数(0,0))をAC係数バッファ623に供給し、保持させる。
 AC係数バッファ623は、AC係数DPCM復号部622から供給される最初のAC係数(ScalingList[0]、すなわちAC係数(0,0))を記憶する。AC係数バッファ623は、その最初のAC係数(ScalingList[0]、すなわちAC係数(0,0))を、所定のタイミングにおいて、若しくは要求に応じて、DC係数DPCM復号部624に供給する。
 DC係数DPCM復号部624は、expG部551から供給されるDC係数のDPCMデータ(scaling_list_dc_coef_delta)を取得する。また、DC係数DPCM復号部624は、AC係数バッファ623に記憶されている最初のAC係数(ScalingList[0]、すなわちAC係数(0,0))を取得する。DC係数DPCM復号部624は、その最初のAC係数を用いてDC係数のDPCMデータを復号し、DC係数を求める。DC係数DPCM復号部624は、求めたDC係数(DC_coef)を逆重複判定部553に供給する。
 このようにすることにより、逆DPCM部552は、正しくDPCM復号することができ、DC係数やAC係数を得ることができる。つまり、画像復号装置300は、スケーリングリストの符号量の増加を抑制することができる。
  <3-5. 逆DPCM処理の流れ>
 方法2の場合も、画像復号装置300は、量子化行列復号処理を、図27のフローチャートを参照して説明した方法1の場合と同様に実行する。同様に、画像復号装置300は、残差信号復号処理を、図28のフローチャートを参照して説明した方法1の場合と同様に実行する。
 図34のフローチャートを参照して、逆DPCM部552により実行される逆DPCM処理の流れの例を説明する。
 逆DPCM処理が開始されると、初期設定部621は、ステップS421において、sizeIDおよびMatrixIDを取得する。
 ステップS422において、初期設定部621は、coefNumを以下のように設定する。
 coefNum = min((1<<(4+(sizeID<<1))),64)
 ステップS423において、初期設定部621は、変数iと変数nextcoefを以下のように設定する。
 i = 0
 nextcoef = 8
 ステップS424において、DPCM復号部572は、変数i<coefNumであるか否かを判定する。変数iがcoefNumより小さい場合、初期設定部621は、処理をステップS425に進める。
 ステップS425において、AC係数DPCM復号部622は、AC係数のDPCMデータ(scaling_list_delta_coef)を読み込む。
 ステップS426において、AC係数DPCM復号部622は、読み込んだDPCMデータを用いて以下のようにnextcoefを求め、さらに、scalingList[i]を求める。
 nextcoef = (nextcoef + scaling_list_delta_coef+256) % 256
 scalingList[i] = nextcoef
 なお、算出された最初のAC係数(ScalingList[0]、すなわち、AC係数(0,0))は、AC係数バッファ623に保持される。
 ステップS427において、AC係数DPCM復号部622は、変数iをインクリメントし、処理の対象を次の係数に替え、処理をステップS424に戻す。
 ステップS424において、変数iがcoefNum以上であると判定されるまで、ステップS424乃至ステップS427の処理が繰り返される。ステップS424において、変数iがcoefNum以上であると判定された場合、AC係数DPCM復号部622は、処理をステップS428に進める。
 ステップS428において、DC係数DPCM復号部624は、sizeIDが1より大きいか否かを判定する。sizeIDが1より大きいと判定した場合、DC係数DPCM復号部624は、処理をステップS429に進め、DC係数のDPCMデータ(scaling_list_dc_coef_delta)を読み込む。
 ステップS430において、DC係数DPCM復号部624は、AC係数バッファ623により保持されている最初のAC係数(ScalingList[0]、すなわち、AC係数(0,0))を取得し、その最初のAC係数を用いて、DC係数(DC_coef)のDPCMデータを、以下のように復号する。
 DC_coef = scaling_list_dc_coef_delta + ScalingList[0]
 DC係数(DC_coef)が得られると、DC係数DPCM復号部624は、逆DPCM処理を終了し、処理を図28に戻す。
 また、ステップS428において、sizeIDが1以下であると判定した場合、DC係数DPCM復号部624は、逆DPCM処理を終了し、処理を図28に戻す。
 以上のようにすることにより、DC係数と、AC係数群の先頭のAC係数との差分を正しく復号することができるので、画像復号装置300は、スケーリングリストの符号量の増加を抑制することができる。
 <4. 第4の実施の形態>
  <4-1. シンタクス:方法3>
 上述した方法2において、さらに、DC係数を、最初のAC係数(AC係数(0,0))より小さい値に限定するようにしてもよい(方法3)。
 このようにすることにより、DC係数のDPCMデータ、すなわち、DC係数から最初のAC係数を減算して得られる差分値を、必ず正の値にすることができる。したがって、このDPCMデータは、符号なしの指数ゴロム符号により符号化することができる。したがって、方法3の場合、DC係数が最初のAC係数より大きな値とすることができなくなるものの、方法1や方法2の場合よりも符号量を低減させることができる。
 方法3の場合の、スケーリングリストのシンタクスを、図35に示す。図35に示されるように、この場合、DC係数のDPCMデータ(scaling_list_dc_coef_delta)が正の値に制限される。
 このような方法3のシンタクスは、方法2の場合と同様の画像符号化装置10により実現することができる。ただし、方法3の場合、expG部193は、DC係数のDPCMデータを、符号なしの指数ゴロム符号により符号化することができる。なお、画像符号化装置10は、量子化行列符号化処理やDPCM処理等の各処理を、方法2の場合と同様に実行することができる。
 また、このような方法3のシンタクスは、方法2の場合と同様の画像復号装置300により実現することができる。また、画像復号装置300は、量子化行列復号処理を、方法2の場合と同様に実行することができる。
  <4-2. 逆DPCM処理の流れ>
 図36のフローチャートを参照して、逆DPCM部552により実行される逆DPCM処理の流れの例を説明する。
 ステップS451乃至ステップS459の各処理は、図34のステップS421乃至ステップS429の各処理と同様に行われる。
 ステップS460において、DC係数DPCM復号部624は、AC係数バッファ623により保持されている最初のAC係数(ScalingList[0]、すなわち、AC係数(0,0))を取得し、その最初のAC係数を用いて、DC係数(DC_coef)のDPCMデータを、以下のように復号する。
 DC_coef = ScalingList[0] - scaling_list_dc_coef_delta
 DC係数(DC_coef)が得られると、DC係数DPCM復号部624は、逆DPCM処理を終了し、処理を図28に戻す。
 また、ステップS458において、sizeIDが1以下であると判定した場合、DC係数DPCM復号部624は、逆DPCM処理を終了し、処理を図28に戻す。
 以上のようにすることにより、DC係数と、AC係数群の先頭のAC係数との差分を正しく復号することができるので、画像復号装置300は、スケーリングリストの符号量の増加を抑制することができる。
 <5. 第5の実施の形態>
  <5-1. シンタクス:方法4>
 DC係数の代わりに、DC係数とその他の係数との差分を伝送する方法として、例えば、複数のスケーリングリストのDC係数のみを集めて、各スケーリングリストのAC係数とは別に、DC係数同士で差分をとるDPCMを行うようにしてもよい(方法4)。この場合、DC係数のDPCMデータは、複数のスケーリングリスト分のデータがまとめられ、各スケーリングリストのAC係数のDPCMデータとは別のデータとして伝送される。
 このようにすることにより、例えば、各スケーリングリスト(各MatrixID)の間でDC係数同士に相関がある場合に、圧縮率をより向上させることができる。
 方法4の場合の、スケーリングリストのDC係数に関するシンタクスを、図37に示す。この場合、DC係数の処理を各スケーリングリストのAC係数の処理とは異なるサイクルで行う必要があるため、図37の例に示されるように、AC係数とDC係数の処理を互いに独立させる必要がある。
 したがって、DPCM処理や逆DPCM処理が煩雑になる恐れがあるものの、より多様なスケーリングリストの符号化・復号処理方法を実現することができる。例えば、コピーモードの際に、AC係数のみをコピーしてDC係数を異なる値にするといった処理も容易に実現することができる。
 なお、このようにDC係数をまとめて処理するスケーリングリストの数は任意である。
  <5-2. DPCM部の詳細な構成例>
 方法4の場合、画像符号化装置10の構成は、基本的に、上述した方法1の場合と同様である。すなわち、画像符号化装置10は、図14に示される例のように構成される。また、直交変換・量子化部14は、図15に示される例のように構成される。さらに、行列処理部150は、図16に示される例のように構成される。
 この場合のDPCM部192の構成例を図38に示す。図38に示されるように、この場合、DPCM部192は、AC係数DPCM部631、DC係数バッファ632、およびDC係数DPCM部633を有する。
 AC係数DPCM部631は、各スケーリングリストについて、重複判定部191から供給される各AC係数のDPCM処理を行う。つまり、AC係数DPCM部631は、各スケーリングリストについて、所定の定数(例えば8)から最初のAC係数を減算したり、1つ前のAC係数から処理対象のAC係数(カレントAC係数)を減算したりする。AC係数DPCM部631は、各スケーリングリストについて、生成したDPCMデータ(scaling_list_delta_coef)をexpG部193に供給する。
 DC係数バッファ632は、重複判定部191から供給される各スケーリングリストのDC係数を記憶する。DC係数バッファ632は、所定のタイミングにおいて、若しくは要求に基づいて、記憶している複数のDC係数を、DC係数DPCM部633に供給する。
 DC係数DPCM部633は、DC係数バッファ632に蓄積されたDC係数を取得する。DC係数DPCM部633は、取得した各DC係数のDPCMデータを求める。つまり、DC係数DPCM部633は、所定の定数(例えば8)から最初のDC係数を減算したり、1つ前のDC係数から処理対象のDC係数(カレントDC係数)を減算したりする。DC係数DPCM部633は、生成したDPCMデータ(scaling_list_delta_coef)をexpG部193に供給する。
 このようにすることにより、画像符号化装置10は、スケーリングリストの符号化効率を向上させることができる。
  <5-3. DPCM処理の流れ>
 方法4の場合も、画像符号化装置10は、量子化行列符号化処理を、図20のフローチャートを参照して説明した方法1の場合と同様に実行する。
 図39のフローチャートを参照して、図20のステップS112において実行される、方法4の場合のDPCM処理の流れの例を説明する。
 ステップS481乃至ステップS485の各処理は、AC係数DPCM部631により、図32のステップS401乃至ステップS405の各処理(方法2の場合の処理)と同様に実行される。
 ステップS483において、全てのAC係数を処理したと判定した場合、AC係数DPCM部631は、処理をステップS486に進める。
 ステップS486において、AC係数DPCM部631は、DC係数をまとめてDPCM符号化するスケーリングリスト(若しくは差分行列)を全て処理したか否かを判定する。未処理のスケーリングリスト(若しくは差分行列)が存在すると判定した場合、AC係数DPCM部631は、処理をステップS481に戻す。
 ステップS486において、全てのスケーリングリスト(若しくは差分行列)を処理したと判定した場合、AC係数DPCM部631は、処理をステップS487に進める。
 DC係数DPCM部633は、DC係数バッファ632に記憶されているDC係数について、ステップS487乃至ステップS491の各処理を、ステップS481乃至ステップS485の各処理と同様に実行する。
 ステップS489において、DC係数バッファ632に記憶されている全てのDC係数を処理したと判定した場合、DC係数DPCM部633は、DPCM処理を終了し、処理を図20に戻す。
 このようにDPCM処理を実行することにより、画像符号化装置10は、スケーリングリストの符号化効率を向上させることができる。
  <5-4. 逆DPCM部の詳細な構成例>
 方法4の場合の画像復号装置300の構成は、基本的に、方法1の場合と同様である。つまり、方法4の場合も画像復号装置300は、図22に示される例のように構成される。また、逆量子化・逆直交変換部313は、図23に示される例のように構成される。さらに、行列生成部410は、図24に示される例のように構成される。
 図40は、方法4の場合の、図24に示した逆DPCM部552の詳細な構成の一例を示すブロック図である。図40を参照すると、逆DPCM部552は、初期設定部641、AC係数DPCM復号部642、およびDC係数DPCM復号部643を有する。
 初期設定部641は、sizeIDやMatrixIDを取得したり、各種変数に初期値を設定したりする。初期設定部641は、取得したり、設定したりした情報をAC係数DPCM復号部642およびDC係数DPCM復号部643に供給する。
 AC係数DPCM復号部642は、expG部551から供給されるAC係数のDPCMデータ(scaling_list_delta_coef(ac))を取得する。AC係数DPCM復号部642は、初期設定部641から供給された初期設定等を用いて、取得したAC係数のDPCMデータを復号し、AC係数を求める。AC係数DPCM復号部642は、求めた各AC係数(ScalingList[i])を逆重複判定部553に供給する。AC係数DPCM復号部642は、このような処理を、複数のスケーリングリストについて実行する。
 DC係数DPCM復号部643は、expG部551から供給されるDC係数のDPCMデータ(scaling_list_delta_coef(dc))を取得する。DC係数DPCM復号部643は、初期設定部641から供給された初期設定等を用いて、取得したDC係数のDPCMデータを復号し、各スケーリングリストのDC係数を求める。DC係数DPCM復号部643は、求めた各DC係数(scaling_list_dc_coef)を逆重複判定部553に供給する。
 このようにすることにより、逆DPCM部552は、正しくDPCM復号することができ、DC係数やAC係数を得ることができる。つまり、画像復号装置300は、スケーリングリストの符号量の増加を抑制することができる。
  <5-5. 逆DPCM処理の流れ>
 方法4の場合も、画像復号装置300は、量子化行列復号処理を、図27のフローチャートを参照して説明した方法1の場合と同様に実行する。同様に、画像復号装置300は、残差信号復号処理を、図28のフローチャートを参照して説明した方法1の場合と同様に実行する。
 図41および図42のフローチャートを参照して、逆DPCM部552により実行される逆DPCM処理の流れの例を説明する。
 逆DPCM処理が開始されると、初期設定部641およびAC係数DPCM復号部642は、ステップS511乃至ステップS517の各処理を、図34のステップS421乃至ステップS427の各処理と同様に実行する。
 ステップS514において、変数iがcoefNum以上であると判定された場合、AC係数DPCM復号部642は、処理をステップS518に進める。
 ステップS518において、AC係数DPCM復号部642は、DC係数をまとめてDPCM処理する全てのスケーリングリスト(差分行列)を処理したか否かを判定する。未処理のスケーリングリスト(差分行列)が存在すると判定された場合、AC係数DPCM復号部642は、処理をステップS511に戻し、それ以降の処理を繰り返す。
 また、未処理のスケーリングリスト(差分行列)が存在しないと判定された場合、AC係数DPCM復号部642は、処理を図42に進める。
 図42のステップS521において、初期設定部641は、sizeIDと変数nextcoefを以下のように設定する。
 sizeID = 2
 nextcoef = 8
 また、ステップS522において、初期設定部641は、MatrixIDを以下のように設定する。
 MatrixID = 0
 ステップS523において、DC係数DPCM復号部643は、sizeID<4であるか否かを判定する。sizeIDが4より小さいと判定した場合、DC係数DPCM復号部643は、処理をステップS524に進める。
 ステップS524において、DC係数DPCM復号部643は、MatrixID<(sizeID == 3)?2:6であるか否かを判定する。MatrixID<(sizeID == 3)?2:6であると判定した場合、DC係数DPCM復号部643は、処理をステップS525に進める。
 ステップS525において、DC係数DPCM復号部643は、DC係数のDPCMデータ(scaling_list_delta_coef)を読み込む。
 ステップS526において、DC係数DPCM復号部643は、読み込んだDPCMデータを用いて以下のようにnextcoefを求め、さらに、scaling_dc_coefを求める。
 nextcoef = (nextcoef + scaling_list_delta_coef+256) % 256
 scaling_dc_coef[sizeID - 2][MatrixID] = nextcoef
 ステップS527において、DC係数DPCM復号部643は、MatrixIDをインクリメントし、処理の対象を次のDC係数(次のスケーリングリスト若しくは残差行列)に替え、処理をステップS524に戻す。
 ステップS524において、MatrixID<(sizeID == 3)?2:6でないと判定した場合、DC係数DPCM復号部643は、処理をステップS528に進める。
 ステップS528において、DC係数DPCM復号部643は、sizeIDをインクリメントし、処理の対象を次のDC係数(次のスケーリングリスト若しくは残差行列)に替え、処理をステップS523に戻す。
 ステップS523において、sizeIDが4以上であると判定した場合、DC係数DPCM復号部643は、逆DPCM処理を終了し、処理を図28に戻す。
 以上のようにすることにより、DC係数同士の差分を正しく復号することができるので、画像復号装置300は、スケーリングリストの符号量の増加を抑制することができる。
 <6. 第6の実施の形態>
  <6-1. シンタクス他の例1>
 図43に、スケーリングリストに関するシンタクスの他の例を示す。この図は、図12に対応するものである。図12の例においては、nextcoefの初期値が所定の定数(例えば8)に設定されるが、その代わりに、図43に示されるように、nextcoefの初期値をDC係数のDPCMデータ(scaling_list_dc_coef_minus8)で上書きするようにしてもよい。
 このようにすることにより、16x16のスケーリングリスト、および、32x32のスケーリングリストの、最初のAC係数((0,0)のAC係数)の符号量を低減させることができる。
  <6-2. シンタクス他の例2>
 図44に、スケーリングリストに関するシンタクスの他の例を示す。この図は、図12に対応するものである。
 図12の例においては、コピーモードにおける参照先を指定する情報であるscaling_list_pred_matrix_id_deltaの値が「0」の場合、1つ前のスケーリングリストが参照され、「1」の場合、2つ前のスケーリングリストが参照される。
 これに対して、図44の例においては、図44のCに示されるように、コピーモードにおける参照先を指定する情報であるscaling_list_pred_matrix_id_deltaの値が「0」の場合、デフォルトのスケーリングリストが参照されるようになされ、「1」の場合、1つ前のスケーリングリストが参照されるようになされている。
 このように、scaling_list_pred_matrix_id_deltaのセマンティクスを変更することにより、図44のBに示されるように、シンタクスを簡略化することができ、DPCM処理や逆DPCM処理の負荷を低減させることができる。
  <6-3. シンタクス他の例3>
 図45に、スケーリングリストに関するシンタクスの他の例を示す。この図は、図12に対応するものである。
 図45の例においては、上述した、図43に示される例と、図44に示される例の両方が適用されている。
 したがって、図45の例の場合、16x16のスケーリングリスト、および、32x32のスケーリングリストの、最初のAC係数((0,0)のAC係数)の符号量を低減させることができるとともに、シンタクスを簡略化することができ、DPCM処理や逆DPCM処理の負荷を低減させることができる。
 以上の各実施の形態において、所定の定数の値は、任意である。また、スケーリングリストのサイズも任意である。
 また、以上においては、スケーリングリスト、予測行列、または、それらの差分行列のサイズ変換処理について説明したが、このサイズ変換処理は、実際に、サイズを変換した行列を生成する処理であってもよいが、実際には行列のデータを生成せずに、メモリからの行列の各要素の読み出し方を設定する処理(行列データの読み出し制御)であってもよい。
 上述したサイズ変換処理の場合、サイズ変換後の行列の各要素は、サイズ変換前の行列のいずれかの要素により構成される。つまり、例えば、一部の要素のみを読み出したり、1つの要素を複数回読み出したりする等の所定の方法で、メモリに格納されているサイズ変換前の行列の要素を読み出せば、サイズ変換後の行列を生成することができる。換言するに、その各要素の読み出し方法を定義する(行列データの読み出し制御を行う)ことにより、上述したサイズ変換が実質的に実現される。このような方法を用いることにより、サイズ変換後の行列データをメモリに書き込む等の処理が不要になる。また、サイズ変換後の行列データの読み出し方は、基本的に最近傍補間の仕方等で決まるので、予め用意されている複数の選択肢の中から適切なものを選択する程度の、比較的低負荷の処理で実現可能である。したがって、このような方法を用いることにより、サイズ変換の負荷が低減される。
 つまり、以上において説明したサイズ変換処理は、実際にサイズ変換後の行列のデータを生成処理も含むが、このような行列データの読み出し制御も含む。
 なお、以上においては差分行列が符号化されて伝送されるように説明したが、これに限らず、スケーリングリストが符号化されて伝送されるようにしてもよい。換言するに、以上において、処理される係数として説明したスケーリングリストのAC係数やDC係数は、スケーリングリストと予測行列との差分行列のAC係数やDC係数であってもよい。
 また、例えば、スケーリングリストのサイズやリストID等の、スケーリングリストに関するパラメータやフラグ等の情報も、例えば前回伝送した情報との差分をとり、その差分を伝送する等して、その符号量を低減させるようにしてもよい。
 また、以上においては、大きなサイズの量子化行列または差分行列をダウンコンバートして伝送するように説明したが、これに限らず、量子化行列または差分行列を、ダウンコンバートせずに、量子化に用いられた量子化行列のサイズのまま伝送するようにしても良い。
 本技術の適用範囲は、量子化・逆量子化を用いるあらゆる画像の符号化・復号に適用することができる。
 また、本技術は、例えば、MPEG、H.26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報(ビットストリーム)を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本技術は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。さらに、本技術は、それらの画像符号化装置および画像復号装置などに含まれる量子化装置・逆量子化装置にも適用することができる。
 <7.第7の実施の形態>
  <多視点画像符号化・多視点画像復号への適用>
 上述した一連の処理は、多視点画像符号化・多視点画像復号に適用することができる。図46は、多視点画像符号化方式の一例を示す。
 図46に示されるように、多視点画像は、複数の視点(ビュー(view))の画像を含む。この多視点画像の複数のビューは、他のビューの画像を利用せずに自身のビューの画像のみを用いて符号化・復号を行うベースビューと、他のビューの画像を利用して符号化・復号を行うノンベースビューとによりなる。ノンベースビューは、ベースビューの画像を利用するようにしても良いし、他のノンベースビューの画像を利用するようにしてもよい。
 図46のような多視点画像を符号化・復号する場合、各ビューの画像を符号化・復号するが、この各ビューの符号化・復号に対して、以上の各実施の形態において説明した方法を適用するようにしてもよい。このようにすることにより、各ビューの画質の低減を抑制することができる。
 さらに、各ビューの符号化・復号において、以上の各実施の形態において説明した方法において使用されるフラグやパラメータを共有するようにしてもよい。このようにすることにより、符号化効率の低減を抑制することができる。
 より具体的には、例えば、スケーリングリストに関する情報(例えばパラメータやフラグ等)を、各ビューの符号化・復号において共有するようにしてもよい。
 もちろん、これら以外の必要な情報も、各ビューの符号化・復号において共有するようにしてもよい。
 例えば、スケーリングリストやスケーリングリストに関する情報をシーケンスパラメータセット(SPS(Sequence Parameter Set))やピクチャパラメータセット(PPS(Picture Parameter Set))において伝送する場合、それら(SPSやPPS)がビュー間で共有されるのであれば、スケーリングリストやスケーリングリストに関する情報も自ずと共有されることになる。このようにすることにより、符号化効率の低減を抑制することができる。
 また、ベースビューのスケーリングリスト(量子化マトリクス)の行列要素をビュー間の視差値に応じて変更するようにしても良い。さらに、ベースビューのスケーリングリスト(量子化マトリクス)の行列要素に関してノンベースビュー用の行列要素を調整するためのオフセット値を伝送するようにしてもよい。これらのようにすることにより、符号量の増大を抑制することができる。
 例えば、ビュー毎のスケーリングリストを予め別途伝送するようにしてもよい。ビュー毎にスケーリングリストを変更する場合、その予め伝送したスケーリングリストとの差分を示す情報のみを伝送すればよい。この差分を示す情報は、任意である。例えば、4x4や8x8を単位とする情報であってもよいし、行列同士の差分であってもよい。
 なお、ビュー間で、SPSやPPSを共有しないが、スケーリングリストやスケーリングリストに関する情報を共有するときは、他のビューのSPSやPPSを参照することができる(つまり、他のビューの、スケーリングリストやスケーリングリストに関する情報を利用することができる)ようにしてもよい。
 また、このような多視点画像を、YUVの各画像と、ビュー間の視差量に対応する奥行き画像(Depth)とをそれぞれコンポーネントとする画像として表す場合、各コンポーネント(Y,U,V,Depth)の画像に対して互いに独立したスケーリングリストやスケーリングリストに関する情報を用いるようにしてもよい。
 例えば、奥行き画像(Depth)は、エッジの画像であるので、スケーリングリストは不要である。したがって、SPSやPPSにおいてスケーリングリストの利用が指定されている場合であっても、奥行き画像(Depth)に対しては、スケーリングリストを適用しない(若しくは行列要素が全て同一(FLAT)なスケーリングリストを適用する)ようにしてもよい。
  <多視点画像符号化装置>
 図47は、上述した多視点画像符号化を行う多視点画像符号化装置を示す図である。図47に示されるように、多視点画像符号化装置700は、符号化部701、符号化部702、および多重化部703を有する。
 符号化部701は、ベースビュー画像を符号化し、ベースビュー画像符号化ストリームを生成する。符号化部702は、ノンベースビュー画像を符号化し、ノンベースビュー画像符号化ストリームを生成する。多重化部703は、符号化部701において生成されたベースビュー画像符号化ストリームと、符号化部702において生成されたノンベースビュー画像符号化ストリームとを多重化し、多視点画像符号化ストリームを生成する。
 この多視点画像符号化装置700の符号化部701および符号化部702に対して、画像符号化装置10(図14)を適用することができる。つまり、各ビューに対する符号化において、スケーリングリストに関する符号量の増大を抑制することができ、各ビューの画質の低減を抑制することができる。また、符号化部701および符号化部702は、互いに同一のフラグやパラメータを用いて、量子化や逆量子化等の処理を行うことができる(すなわち、フラグやパラメータを共有することができる)ので、符号化効率の低減を抑制することができる。
  <多視点画像復号装置>
 図48は、上述した多視点画像復号を行う多視点画像復号装置を示す図である。図48に示されるように、多視点画像復号装置710は、逆多重化部711、復号部712、および復号部713を有する。
 逆多重化部711は、ベースビュー画像符号化ストリームとノンベースビュー画像符号化ストリームとが多重化された多視点画像符号化ストリームを逆多重化し、ベースビュー画像符号化ストリームと、ノンベースビュー画像符号化ストリームとを抽出する。復号部712は、逆多重化部711により抽出されたベースビュー画像符号化ストリームを復号し、ベースビュー画像を得る。復号部713は、逆多重化部711により抽出されたノンベースビュー画像符号化ストリームを復号し、ノンベースビュー画像を得る。
 この多視点画像復号装置710の復号部712および復号部713に対して、画像復号装置300(図22)を適用することができる。つまり、各ビューに対する復号において、スケーリングリストに関する符号量の増大を抑制することができ、各ビューの画質の低減を抑制することができる。また、復号部712および復号部713は、互いに同一のフラグやパラメータを用いて、量子化や逆量子化等の処理を行うことができる(すなわち、フラグやパラメータを共有することができる)ので、符号化効率の低減を抑制することができる。
 <8.第8の実施の形態>
  <階層画像符号化・階層画像復号への適用>
 上述した一連の処理は、階層画像符号化・階層画像復号(スケーラブル符号化・スケーラブル復号)に適用することができる。図49は、階層画像符号化方式の一例を示す。
 階層画像符号化(スケーラブル符号化)は、画像データを、所定のパラメータについてスケーラビリティ(scalability)機能を有するように、画像を複数レイヤ化(階層化)し、レイヤ毎に符号化するものである。階層画像復号(スケーラブル復号)は、その階層画像符号化に対応する復号である。
 図49に示されるように、画像の階層化においては、スケーラビリティ機能を有する所定のパラメータを基準として1の画像が複数の画像(レイヤ)に分割される。つまり、階層化された画像(階層画像)は、その所定のパラメータの値が互いに異なる複数の階層(レイヤ)の画像を含む。この階層画像の複数のレイヤは、他のレイヤの画像を利用せずに自身のレイヤの画像のみを用いて符号化・復号を行うベースレイヤと、他のレイヤの画像を利用して符号化・復号を行うノンベースレイヤ(エンハンスメントレイヤとも称する)とによりなる。ノンベースレイヤは、ベースレイヤの画像を利用するようにしても良いし、他のノンベースレイヤの画像を利用するようにしてもよい。
 一般的に、ノンベースレイヤは、冗長性が低減されるように、自身の画像と、他のレイヤの画像との差分画像のデータ(差分データ)により構成される。例えば、1の画像をベースレイヤとノンベースレイヤ(エンハンスメントレイヤとも称する)に2階層化した場合、ベースレイヤのデータのみで元の画像よりも低品質な画像が得られ、ベースレイヤのデータとノンベースレイヤのデータを合成することで、元の画像(すなわち高品質な画像)が得られる。
 このように画像を階層化することにより、状況に応じて多様な品質の画像を容易に得ることができる。例えば携帯電話のような、処理能力の低い端末に対しては、ベースレイヤ(base layer)のみの画像圧縮情報を伝送し、空間時間解像度の低い、或いは、画質の良くない動画像を再生し、テレビやパーソナルコンピュータのような、処理能力の高い端末に対しては、ベースレイヤ(base layer)に加えて、エンハンスメントレイヤ(enhancement layer)の画像圧縮情報を伝送し、空間時間解像度の高い、或いは、画質の高い動画像を再生するといったように、トランスコード処理を行うことなく、端末やネットワークの能力に応じた画像圧縮情報を、サーバから送信することが可能となる。
 図49の例のような階層画像を符号化・復号する場合、各レイヤの画像を符号化・復号するが、この各レイヤの符号化・復号に対して、以上の各実施の形態において説明した方法を適用するようにしてもよい。このようにすることにより、各レイヤの画質の低減を抑制することができる。
 さらに、各レイヤの符号化・復号において、以上の各実施の形態において説明した方法において使用されるフラグやパラメータを共有するようにしてもよい。このようにすることにより、符号化効率の低減を抑制することができる。
 より具体的には、例えば、スケーリングリストに関する情報(例えば、パラメータやフラグ等)を、各レイヤの符号化・復号において共有するようにしてもよい。
 もちろん、これら以外の必要な情報も、各レイヤの符号化・復号において共有するようにしてもよい。
 このような階層画像の例として、空間解像度によって階層化したもの(空間解像度スケーラビリティとも称する)がある(spatial scalability)。空間解像度スケーラビリティを有する階層画像の場合、階層毎に画像の解像度が異なる。例えば、空間的に最も低解像度の画像の階層をベースレイヤとされ、ベースレイヤよりも高解像度の画像の階層をノンベースレイヤ(エンハンスメントレイヤ)とされる。
 ノンベースレイヤ(エンハンスメントレイヤ)の画像データは、他の階層から独立したデータとし、ベースレイヤの場合と同様に、その画像データのみによりその階層の解像度の画像を得ることができるようにしてもよいが、その階層の画像と他の階層(例えば1つ下の階層)の画像との差分画像に対応するデータとするのが一般的である。この場合、ベースレイヤの階層の解像度の画像は、そのベースレイヤの画像データのみにより得られるが、ノンベースレイヤ(エンハンスメントレイヤ)の階層の解像度の画像は、その階層の画像データと、他の階層(例えば1つ下の階層)の画像データを合成することにより得られる。このようにすることにより、階層間の画像データの冗長性を抑制することができる。
 このような空間解像度スケーラビリティを有する階層画像は、階層毎に画像の解像度が異なるので、各階層の符号化・復号の処理単位の解像度も互いに異なる。したがって、各階層の符号化・復号においてスケーリングリスト(量子化マトリクス)を共有する場合、スケーリングリスト(量子化マトリクス)を各階層の解像度比に応じてアップコンバートするようにしてもよい。
 例えば、ベースレイヤの画像の解像度が2K(例えば1920x1080)とし、ノンベースレイヤ(エンハンスメントレイヤ)の画像の解像度が4K(例えば、3840x2160)とする。この場合、例えば、ベースレイヤの画像(2K画像)の16x16は、ノンベースレイヤの画像(4K画像)の32x32に相当する。スケーリングリスト(量子化マトリクス)もこのような解像度比に応じて適宜アップコンバートする。
 例えば、ベースレイヤの量子化・逆量子化に用いられる4x4のスケーリングリストは、ノンベースレイヤの量子化・逆量子化において8x8にアップコンバートされて使用される。同様に、ベースレイヤの8x8のスケーリングリストは、ノンベースレイヤにおいて16x16にアップコンバートされる。同様に、ベースレイヤにおいて16x16にアップコンバートされて使用されるスケーリングリストは、ノンベースレイヤにおいて32x32にアップコンバートされる。
 なお、スケーラビリティ性を持たせるパラメータは、空間解像度に限らず、例えば、時間解像度がある(temporal scalability)。時間解像度スケーラビリティを有する階層画像の場合、階層毎に画像のフレームレートが異なる。また、その他にも、例えば、階層毎に画像データのビット深度が異なるビット深度スケーラビリティ(bit-depth scalability)や、階層毎にコンポーネントのフォーマットが異なるクロマスケーラビリティ(chroma scalability)等がある。
 また、その他にも、例えば、階層毎に画像の信号雑音比(SNR(Signal to Noise ratio))が異なるSNRスケーラビリティ(SNR scalability)がある。
 画質向上のためには、信号雑音比が低い画像程、量子化誤差をより小さくするのが望ましい。そのため、SNRスケーラビリティの場合、各階層の量子化・逆量子化には、信号雑音比に応じた、互いに異なるスケーリングリスト(共通でないスケーリングリスト)が用いられるようにするのが望ましい。そのため、上述したようにスケーリングリストを階層間で共有する場合、ベースレイヤのスケーリングリストの行列要素に関して、エンハンスメントレイヤの行列要素を調整するためのオフセット値を伝送するようにしてもよい。より具体的には、その共通のスケーリングリストと、実際に用いられるスケーリングリストとの差分を示す情報を、階層毎に伝送するようにしてもよい。例えば、各階層のシーケンスパラメータセット(SPS(Sequence Parameter Set))やピクチャパラメータセット(PPS(Picture Parameter Set))において、その差分を示す情報を伝送するようにしてもよい。この差分を示す情報は、任意である。例えば、両スケーリングリストの要素毎の差分値を要素とする行列であってもよいし、差分を示す関数であってもよい。
  <階層画像符号化装置>
 図50は、上述した階層画像符号化を行う階層画像符号化装置を示す図である。図50に示されるように、階層画像符号化装置720は、符号化部721、符号化部722、および多重化部723を有する。
 符号化部721は、ベースレイヤ画像を符号化し、ベースレイヤ画像符号化ストリームを生成する。符号化部722は、ノンベースレイヤ画像を符号化し、ノンベースレイヤ画像符号化ストリームを生成する。多重化部723は、符号化部721において生成されたベースレイヤ画像符号化ストリームと、符号化部722において生成されたノンベースレイヤ画像符号化ストリームとを多重化し、階層画像符号化ストリームを生成する。
 この階層画像符号化装置720の符号化部721および符号化部722に対して、画像符号化装置10(図14)を適用することができる。つまり、各レイヤに対する符号化において、スケーリングリストに関する符号量の増大を抑制することができ、各レイヤの画質の低減を抑制することができる。また、符号化部721および符号化部722は、互いに同一のフラグやパラメータを用いて、量子化や逆量子化等の処理を行うことができる(すなわち、フラグやパラメータを共有することができる)ので、符号化効率の低減を抑制することができる。
  <階層画像復号装置>
 図51は、上述した階層画像復号を行う階層画像復号装置を示す図である。図51に示されるように、階層画像復号装置730は、逆多重化部731、復号部732、および復号部733を有する。
 逆多重化部731は、ベースレイヤ画像符号化ストリームとノンベースレイヤ画像符号化ストリームとが多重化された階層画像符号化ストリームを逆多重化し、ベースレイヤ画像符号化ストリームと、ノンベースレイヤ画像符号化ストリームとを抽出する。復号部732は、逆多重化部731により抽出されたベースレイヤ画像符号化ストリームを復号し、ベースレイヤ画像を得る。復号部733は、逆多重化部731により抽出されたノンベースレイヤ画像符号化ストリームを復号し、ノンベースレイヤ画像を得る。
 この階層画像復号装置730の復号部732および復号部733に対して、画像復号装置300(図22)を適用することができる。つまり、各レイヤに対する復号において、スケーリングリストに関する符号量の増大を抑制することができ、各レイヤの画質の低減を抑制することができる。また、復号部712および復号部713は、互いに同一のフラグやパラメータを用いて、量子化や逆量子化等の処理を行うことができる(すなわち、フラグやパラメータを共有することができる)ので、符号化効率の低減を抑制することができる。
 <9. 第9の実施の形態>
  <コンピュータ>
 上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。この場合、例えば、図52に示されるようなコンピュータとして構成されるようにしてもよい。
 図52において、コンピュータ800のCPU(Central Processing Unit)801は、ROM(Read Only Memory)802に記憶されているプログラム、または記憶部813からRAM(Random Access Memory)803にロードされたプログラムに従って各種の処理を実行する。RAM803にはまた、CPU801が各種の処理を実行する上において必要なデータなども適宜記憶される。
 CPU801、ROM802、およびRAM803は、バス804を介して相互に接続されている。このバス804にはまた、入出力インタフェース810も接続されている。
 入出力インタフェース810には、キーボード、マウス、タッチパネル、および入力端子などよりなる入力部811、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)、およびOELD(Organic ElectroLuminescence Display)などよりなるディスプレイ、並びにスピーカ等の任意の出力デバイスや出力端子等よりなる出力部812、ハードディスクやフラッシュメモリ等の任意の記憶媒体やその記憶媒体の入出力を制御する制御部等により構成される記憶部813、モデム、LANインタフェース、USB(Universal Serial Bus)、並びにBluetooth(登録商標)等、有線や無線の任意の通信デバイスよりなる通信部814が接続されている。通信部814は、例えばインターネットを含むネットワークを介して他の通信デバイスとの通信処理を行う。
 入出力インタフェース810にはまた、必要に応じてドライブ815が接続される。そのドライブ815には、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア821が適宜装着される。ドライブ815は、例えばCPU801の制御に従って、自身に装着されたリムーバブルメディア821からコンピュータプログラムやデータ等を読み出す。その読み出されたデータやコンピュータプログラムは、例えば、RAM803に供給される。また、リムーバブルメディア821から読み出されたコンピュータプログラムは、必要に応じて記憶部813にインストールされる。
 上述した一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
 この記録媒体は、例えば、図52に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc - Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、若しくは半導体メモリなどよりなるリムーバブルメディア821により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM802や、記憶部813に含まれるハードディスクなどで構成される。
 なお、コンピュータ800が実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
 また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
 また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
 また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。つまり、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 例えば、本技術は、1つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
 また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
 さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
 上述した実施形態に係る画像符号化装置10(図14)および画像復号装置300(図22)は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。
 <10. 応用例>
  <第1の応用例:テレビジョン受像機>
 図53は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース909、制御部910、ユーザインタフェース911、及びバス912を備える。
 チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送部としての役割を有する。
 デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
 デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。
 映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
 表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。
 音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
 外部インタフェース909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送部としての役割を有する。
 制御部910は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。
 ユーザインタフェース911は、制御部910と接続される。ユーザインタフェース911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。
 バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース909及び制御部910を相互に接続する。
 このように構成されたテレビジョン装置900において、デコーダ904は、上述した実施形態に係る画像復号装置300(図22)の機能を有する。したがって、テレビジョン装置900は、スケーリングリストの符号量の増大を抑制することができる。
  <第2の応用例:携帯電話機>
 図54は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
 アンテナ921は、通信部922に接続される。スピーカ924及びマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、及び制御部931を相互に接続する。
 携帯電話機920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
 音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
 また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929の記憶媒体に記憶させる。
 記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
 また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記録再生部929の記憶媒体に記憶させる。
 また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
 このように構成された携帯電話機920において、画像処理部927は、上述した実施形態に係る画像符号化装置10(図14)の機能、および、画像復号装置300(図22)の機能を有する。従って、携帯電話機920は、スケーリングリストの符号量の増大を抑制することができる。
 また、以上においては携帯電話機920として説明したが、例えば、PDA(Personal Digital Assistants)、スマートフォン、UMPC(Ultra Mobile Personal Computer)、ネットブック、ノート型パーソナルコンピュータ等、この携帯電話機920と同様の撮像機能や通信機能を有する装置であれば、どのような装置であっても携帯電話機920の場合と同様に、本技術を適用した画像符号化装置および画像復号装置を適用することができる。
  <第3の応用例:記録再生装置>
 図55は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データ及び映像データを復号する。
 記録再生装置940は、チューナ941、外部インタフェース942、エンコーダ943、HDD(Hard Disk Drive)944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)948、制御部949、及びユーザインタフェース950を備える。
 チューナ941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。即ち、チューナ941は、記録再生装置940における伝送部としての役割を有する。
 外部インタフェース942は、記録再生装置940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース942は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース942を介して受信される映像データ及び音声データは、エンコーダ943へ入力される。即ち、外部インタフェース942は、記録再生装置940における伝送部としての役割を有する。
 エンコーダ943は、外部インタフェース942から入力される映像データ及び音声データが符号化されていない場合に、映像データ及び音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。
 HDD944は、映像及び音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD944は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。
 ディスクドライブ945は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVDディスク(DVD-Video、DVD-RAM、DVD-R、DVD-RW、DVD+R、DVD+RW等)又はBlu-ray(登録商標)ディスクなどであってよい。
 セレクタ946は、映像及び音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944またはディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944またはディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。
 デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD948へ出力する。また、デコーダ904は、生成した音声データを外部のスピーカへ出力する。
 OSD948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
 制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース950から入力される操作信号に応じて、記録再生装置940の動作を制御する。
 ユーザインタフェース950は、制御部949と接続される。ユーザインタフェース950は、例えば、ユーザが記録再生装置940を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。
 このように構成された記録再生装置940において、エンコーダ943は、上述した実施形態に係る画像符号化装置10(図14)の機能を有する。また、デコーダ947は、上述した実施形態に係る画像復号装置300(図22)の機能を有する。従って、記録再生装置940は、スケーリングリストの符号量の増大を抑制することができる。
  <第4の応用例:撮像装置>
 図56は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像データを生成し、画像データを符号化して記録媒体に記録する。
 撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、制御部970、ユーザインタフェース971、及びバス972を備える。
 光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、及び制御部970を相互に接続する。
 光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD又はCMOSなどのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。
 信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。
 画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース966又はメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース966又はメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。
 OSD969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。
 外部インタフェース966は、例えばUSB入出力端子として構成される。外部インタフェース966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース966は、撮像装置960における伝送部としての役割を有する。
 メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
 制御部970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース971から入力される操作信号に応じて、撮像装置960の動作を制御する。
 ユーザインタフェース971は、制御部970と接続される。ユーザインタフェース971は、例えば、ユーザが撮像装置960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。
 このように構成された撮像装置960において、画像処理部964は、上述した実施形態に係る画像符号化装置10(図14)の機能、および、画像復号装置300(図22)の機能を有する。従って、撮像装置960は、スケーリングリストの符号量の増大を抑制することができる。
 <7.スケーラブル符号化の応用例>
  <第1のシステム>
 次に、スケーラブル符号化(階層(画像)符号化)されたスケーラブル符号化データの具体的な利用例について説明する。スケーラブル符号化は、例えば、図57に示される例のように、伝送するデータの選択のために利用される。
 図57に示されるデータ伝送システム1000において、配信サーバ1002は、スケーラブル符号化データ記憶部1001に記憶されているスケーラブル符号化データを読み出し、ネットワーク1003を介して、パーソナルコンピュータ1004、AV機器1005、タブレットデバイス1006、および携帯電話機1007等の端末装置に配信する。
 その際、配信サーバ1002は、端末装置の能力や通信環境等に応じて、適切な品質の符号化データを選択して伝送する。配信サーバ1002が不要に高品質なデータを伝送しても、端末装置において高画質な画像を得られるとは限らず、遅延やオーバフローの発生要因となる恐れがある。また、不要に通信帯域を占有したり、端末装置の負荷を不要に増大させたりしてしまう恐れもある。逆に、配信サーバ1002が不要に低品質なデータを伝送しても、端末装置において十分な画質の画像を得ることができない恐れがある。そのため、配信サーバ1002は、スケーラブル符号化データ記憶部1001に記憶されているスケーラブル符号化データを、適宜、端末装置の能力や通信環境等に対して適切な品質の符号化データとして読み出し、伝送する。
 例えば、スケーラブル符号化データ記憶部1001は、スケーラブルに符号化されたスケーラブル符号化データ(BL+EL)1011を記憶するとする。このスケーラブル符号化データ(BL+EL)1011は、ベースレイヤとエンハンスメントレイヤの両方を含む符号化データであり、復号することにより、ベースレイヤの画像およびエンハンスメントレイヤの画像の両方を得ることができるデータである。
 配信サーバ1002は、データを伝送する端末装置の能力や通信環境等に応じて、適切なレイヤを選択し、そのレイヤのデータを読み出す。例えば、配信サーバ1002は、処理能力の高いパーソナルコンピュータ1004やタブレットデバイス1006に対しては、高品質なスケーラブル符号化データ(BL+EL)1011をスケーラブル符号化データ記憶部1001から読み出し、そのまま伝送する。これに対して、例えば、配信サーバ1002は、処理能力の低いAV機器1005や携帯電話機1007に対しては、スケーラブル符号化データ(BL+EL)1011からベースレイヤのデータを抽出し、スケーラブル符号化データ(BL+EL)1011と同じコンテンツのデータであるが、スケーラブル符号化データ(BL+EL)1011よりも低品質なスケーラブル符号化データ(BL)1012として伝送する。
 このようにスケーラブル符号化データを用いることにより、データ量を容易に調整することができるので、遅延やオーバフローの発生を抑制したり、端末装置や通信媒体の負荷の不要な増大を抑制したりすることができる。また、スケーラブル符号化データ(BL+EL)1011は、レイヤ間の冗長性が低減されているので、各レイヤの符号化データを個別のデータとする場合よりもそのデータ量を低減させることができる。したがって、スケーラブル符号化データ記憶部1001の記憶領域をより効率よく使用することができる。
 なお、パーソナルコンピュータ1004乃至携帯電話機1007のように、端末装置には様々な装置を適用することができるので、端末装置のハードウエアの性能は、装置によって異なる。また、端末装置が実行するアプリケーションも様々であるので、そのソフトウエアの能力も様々である。さらに、通信媒体となるネットワーク1003も、例えばインターネットやLAN(Local Area Network)等、有線若しくは無線、またはその両方を含むあらゆる通信回線網を適用することができ、そのデータ伝送能力は様々である。さらに、他の通信等によっても変化する恐れがある。
 そこで、配信サーバ1002は、データ伝送を開始する前に、データの伝送先となる端末装置と通信を行い、端末装置のハードウエア性能や、端末装置が実行するアプリケーション(ソフトウエア)の性能等といった端末装置の能力に関する情報、並びに、ネットワーク1003の利用可能帯域幅等の通信環境に関する情報を得るようにしてもよい。そして、配信サーバ1002が、ここで得た情報を基に、適切なレイヤを選択するようにしてもよい。
 なお、レイヤの抽出は、端末装置において行うようにしてもよい。例えば、パーソナルコンピュータ1004が、伝送されたスケーラブル符号化データ(BL+EL)1011を復号し、ベースレイヤの画像を表示しても良いし、エンハンスメントレイヤの画像を表示しても良い。また、例えば、パーソナルコンピュータ1004が、伝送されたスケーラブル符号化データ(BL+EL)1011から、ベースレイヤのスケーラブル符号化データ(BL)1012を抽出し、記憶したり、他の装置に転送したり、復号してベースレイヤの画像を表示したりするようにしてもよい。
 もちろん、スケーラブル符号化データ記憶部1001、配信サーバ1002、ネットワーク1003、および端末装置の数はいずれも任意である。また、以上においては、配信サーバ1002がデータを端末装置に伝送する例について説明したが、利用例はこれに限定されない。データ伝送システム1000は、スケーラブル符号化された符号化データを端末装置に伝送する際、端末装置の能力や通信環境等に応じて、適切なレイヤを選択して伝送するシステムであれば、任意のシステムに適用することができる。
 そして、以上のような図57のようなデータ伝送システム1000においても、図49乃至図51を参照して上述した階層符号化・階層復号への適用と同様に本技術を適用することにより、図49乃至図51を参照して上述した効果と同様の効果を得ることができる。
  <第2のシステム>
 また、スケーラブル符号化は、例えば、図58に示される例のように、複数の通信媒体を介する伝送のために利用される。
 図58に示されるデータ伝送システム1100において、放送局1101は、地上波放送1111により、ベースレイヤのスケーラブル符号化データ(BL)1121を伝送する。また、放送局1101は、有線若しくは無線またはその両方の通信網よりなる任意のネットワーク1112を介して、エンハンスメントレイヤのスケーラブル符号化データ(EL)1122を伝送する(例えばパケット化して伝送する)。
 端末装置1102は、放送局1101が放送する地上波放送1111の受信機能を有し、この地上波放送1111を介して伝送されるベースレイヤのスケーラブル符号化データ(BL)1121を受け取る。また、端末装置1102は、ネットワーク1112を介した通信を行う通信機能をさらに有し、このネットワーク1112を介して伝送されるエンハンスメントレイヤのスケーラブル符号化データ(EL)1122を受け取る。
 端末装置1102は、例えばユーザ指示等に応じて、地上波放送1111を介して取得したベースレイヤのスケーラブル符号化データ(BL)1121を、復号してベースレイヤの画像を得たり、記憶したり、他の装置に伝送したりする。
 また、端末装置1102は、例えばユーザ指示等に応じて、地上波放送1111を介して取得したベースレイヤのスケーラブル符号化データ(BL)1121と、ネットワーク1112を介して取得したエンハンスメントレイヤのスケーラブル符号化データ(EL)1122とを合成して、スケーラブル符号化データ(BL+EL)を得たり、それを復号してエンハンスメントレイヤの画像を得たり、記憶したり、他の装置に伝送したりする。
 以上のように、スケーラブル符号化データは、例えばレイヤ毎に異なる通信媒体を介して伝送させることができる。したがって、負荷を分散させることができ、遅延やオーバフローの発生を抑制することができる。
 また、状況に応じて、伝送に使用する通信媒体を、レイヤ毎に選択することができるようにしてもよい。例えば、データ量が比較的多いベースレイヤのスケーラブル符号化データ(BL)1121を帯域幅の広い通信媒体を介して伝送させ、データ量が比較的少ないエンハンスメントレイヤのスケーラブル符号化データ(EL)1122を帯域幅の狭い通信媒体を介して伝送させるようにしてもよい。また、例えば、エンハンスメントレイヤのスケーラブル符号化データ(EL)1122を伝送する通信媒体を、ネットワーク1112とするか、地上波放送1111とするかを、ネットワーク1112の利用可能帯域幅に応じて切り替えるようにしてもよい。もちろん、任意のレイヤのデータについて同様である。
 このように制御することにより、データ伝送における負荷の増大を、より抑制することができる。
 もちろん、レイヤ数は任意であり、伝送に利用する通信媒体の数も任意である。また、データ配信先となる端末装置1102の数も任意である。さらに、以上においては、放送局1101からの放送を例に説明したが、利用例はこれに限定されない。データ伝送システム1100は、スケーラブル符号化された符号化データを、レイヤを単位として複数に分割し、複数の回線を介して伝送するシステムであれば、任意のシステムに適用することができる。
 そして、以上のような図58のようなデータ伝送システム1100においても、図49乃至図51を参照して上述した階層符号化・階層復号への適用と同様に本技術を適用することにより、図49乃至図51を参照して上述した効果と同様の効果を得ることができる。
  <第3のシステム>
 また、スケーラブル符号化は、例えば、図59に示される例のように、符号化データの記憶に利用される。
 図59に示される撮像システム1200において、撮像装置1201は、被写体1211を撮像して得られた画像データをスケーラブル符号化し、スケーラブル符号化データ(BL+EL)1221として、スケーラブル符号化データ記憶装置1202に供給する。
 スケーラブル符号化データ記憶装置1202は、撮像装置1201から供給されるスケーラブル符号化データ(BL+EL)1221を、状況に応じた品質で記憶する。例えば、通常時の場合、スケーラブル符号化データ記憶装置1202は、スケーラブル符号化データ(BL+EL)1221からベースレイヤのデータを抽出し、低品質でデータ量の少ないベースレイヤのスケーラブル符号化データ(BL)1222として記憶する。これに対して、例えば、注目時の場合、スケーラブル符号化データ記憶装置1202は、高品質でデータ量の多いスケーラブル符号化データ(BL+EL)1221のまま記憶する。
 このようにすることにより、スケーラブル符号化データ記憶装置1202は、必要な場合のみ、画像を高画質に保存することができるので、画質劣化による画像の価値の低減を抑制しながら、データ量の増大を抑制することができ、記憶領域の利用効率を向上させることができる。
 例えば、撮像装置1201が監視カメラであるとする。撮像画像に監視対象(例えば侵入者)が写っていない場合(通常時の場合)、撮像画像の内容は重要でない可能性が高いので、データ量の低減が優先され、その画像データ(スケーラブル符号化データ)は、低品質に記憶される。これに対して、撮像画像に監視対象が被写体1211として写っている場合(注目時の場合)、その撮像画像の内容は重要である可能性が高いので、画質が優先され、その画像データ(スケーラブル符号化データ)は、高品質に記憶される。
 なお、通常時であるか注目時であるかは、例えば、スケーラブル符号化データ記憶装置1202が、画像を解析することにより判定しても良い。また、撮像装置1201が判定し、その判定結果をスケーラブル符号化データ記憶装置1202に伝送するようにしてもよい。
 なお、通常時であるか注目時であるかの判定基準は任意であり、判定基準とする画像の内容は任意である。もちろん、画像の内容以外の条件を判定基準とすることもできる。例えば、収録した音声の大きさや波形等に応じて切り替えるようにしてもよいし、所定の時間毎に切り替えるようにしてもよいし、ユーザ指示等の外部からの指示によって切り替えるようにしてもよい。
 また、以上においては、通常時と注目時の2つの状態を切り替える例を説明したが、状態の数は任意であり、例えば、通常時、やや注目時、注目時、非常に注目時等のように、3つ以上の状態を切り替えるようにしてもよい。ただし、この切り替える状態の上限数は、スケーラブル符号化データのレイヤ数に依存する。
 また、撮像装置1201が、スケーラブル符号化のレイヤ数を、状態に応じて決定するようにしてもよい。例えば、通常時の場合、撮像装置1201が、低品質でデータ量の少ないベースレイヤのスケーラブル符号化データ(BL)1222を生成し、スケーラブル符号化データ記憶装置1202に供給するようにしてもよい。また、例えば、注目時の場合、撮像装置1201が、高品質でデータ量の多いベースレイヤのスケーラブル符号化データ(BL+EL)1221を生成し、スケーラブル符号化データ記憶装置1202に供給するようにしてもよい。
 以上においては、監視カメラを例に説明したが、この撮像システム1200の用途は任意であり、監視カメラに限定されない。
 そして、以上のような図59のような撮像システム1200においても、図49乃至図51を参照して上述した階層符号化・階層復号への適用と同様に本技術を適用することにより、図49乃至図51を参照して上述した効果と同様の効果を得ることができる。
 なお、本技術は、予め用意された解像度等が互いに異なる複数の符号化データの中から適切なものをセグメント単位で選択して使用する、例えばMPEG DASH等のようなHTTPストリーミングにも適用することができる。つまり、このような複数の符号化データ間で、符号化や復号に関する情報を共有することもできる。
 もちろん、本技術を適用した画像符号化装置および画像復号装置は、上述した装置以外の装置やシステムにも適用可能である。
 なお、本明細書では、量子化行列(又は量子化行列を構成する際に用いる係数)が、符号化側から復号側へ伝送される例について説明した。量子化行列を伝送する手法は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
 10 画像符号化装置, 14 直交変換・量子化部, 16 可逆符号化部, 150 行列処理部, 192 DPCM部, 211 DC係数符号化部, 212 AC係数DPCM部, 300 画像復号装置, 312 可逆復号部, 313 逆量子化・逆直交変換部, 410 行列生成部, 552 逆DPCM部, 571 初期設定部, 572 DPCM復号部, 573 DC係数抽出部, 611 AC係数バッファ, 612 AC係数符号化部, 613 AC係数DPCM部, 614 DC係数DPCM部, 621 初期設定部, 622 AC係数DPCM復号部, 623 AC係数バッファ, 624 DC係数DPCM復号部, 631 AC係数DPCM部, 632 DC係数バッファ, 633 DC係数DPCM部, 641 初期設定部, 642 AC係数DPCM復号部, 643 DC係数DPCM復号部

Claims (9)

  1.  符号化データを復号して量子化データを生成する復号部と、
     量子化行列をコピーするコピーモードを用いる際に量子化行列の参照先を識別する量子化行列参照データと量子化行列を識別する量子化行列識別データとが一致する場合に、逆量子化する際の処理単位であるブロックサイズと同じサイズに対応するデフォルト量子化行列を用いて、前記復号部により生成された量子化データを逆量子化する逆量子化部と
     を備える画像処理装置。
  2.  前記逆量子化部は、前記量子化行列参照データと前記量子化行列識別データとが一致する場合に前記デフォルト量子化行列を参照するようにセマンティクスが設定されたシンタクスをパースして、前記量子化データを逆量子化する
     請求項1に記載の画像処理装置。
  3.  前記逆量子化部は、前記量子化行列参照データと前記量子化行列識別データとの差分が0の場合に、デフォルト量子化行列を参照するようにセマンティクスが設定されたシンタクスをパースして、前記量子化データを逆量子化する
     請求項1に記載の画像処理装置。
  4.  前記量子化行列をアップコンバートするアップコンバート部を更に備え、
     前記逆量子化部は、前記アップコンバート部によりアップコンバートされた量子化行列を用いて、前記量子化データを逆量子化する
     請求項1に記載の画像処理装置。
  5.  前記アップコンバート部は、前記量子化行列の行列要素に対して最近傍補間処理を行うことにより、伝送の際に許容される最大サイズである伝送サイズ以下に制限された量子化行列をアップコンバートする
     請求項4に記載の画像処理装置。
  6.  前記伝送サイズは、8x8であり、
     前記アップコンバート部は、8x8サイズの量子化行列の行列要素に対して前記最近傍補間処理を行うことにより、16x16サイズの量子化行列にアップコンバートする
     請求項5に記載の画像処理装置。
  7.  前記アップコンバート部は、8x8サイズの量子化行列の行列要素に対して前記最近傍補間処理を行うことにより、32x32サイズの量子化行列にアップコンバートする
     請求項5に記載の画像処理装置。
  8.  復号処理する際の処理単位であるコーディングユニットと変換処理をする際の処理単位であるトランスフォームユニットとが階層構造を有し、
     前記復号部は、階層構造を有する単位で復号処理して前記量子化データを生成し、
     前記アップコンバート部は、前記量子化行列を、伝送の際に許容される最大サイズである伝送サイズから逆量子化を行う処理単位であるトランスフォームユニットのサイズにアップコンバートする
     請求項1に記載の画像処理装置。
  9.  符号化データを復号して量子化データを生成し、
     量子化行列をコピーするコピーモードを用いる際に量子化行列の参照先を識別する量子化行列参照データと量子化行列を識別する量子化行列識別データとが一致する場合に、逆量子化する際の処理単位であるブロックサイズと同じサイズに対応するデフォルト量子化行列を用いて、前記復号により生成された量子化データを逆量子化する
     画像処理方法。
PCT/JP2013/055542 2012-02-29 2013-02-28 画像処理装置および方法 WO2013129617A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2014502389A JP5904268B2 (ja) 2012-02-29 2013-02-28 画像処理装置および方法、記録媒体、並びに、プログラム
CN201380010491.1A CN104170391B (zh) 2012-02-29 2013-02-28 图像处理设备和方法
US14/375,288 US10277898B2 (en) 2012-02-29 2013-02-28 Image processing device and method for improving coding efficiency of quantization matrices
US16/258,685 US10404985B2 (en) 2012-02-29 2019-01-28 Image processing device and method for improving coding efficiency of quantization matrices

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012044009 2012-02-29
JP2012-044009 2012-02-29

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US14/375,288 A-371-Of-International US10277898B2 (en) 2012-02-29 2013-02-28 Image processing device and method for improving coding efficiency of quantization matrices
US16/258,685 Continuation US10404985B2 (en) 2012-02-29 2019-01-28 Image processing device and method for improving coding efficiency of quantization matrices

Publications (1)

Publication Number Publication Date
WO2013129617A1 true WO2013129617A1 (ja) 2013-09-06

Family

ID=49082403

Family Applications (4)

Application Number Title Priority Date Filing Date
PCT/JP2013/054126 WO2013129203A1 (ja) 2012-02-29 2013-02-20 画像処理装置および方法
PCT/JP2013/055543 WO2013129618A1 (ja) 2012-02-29 2013-02-28 画像処理装置および方法
PCT/JP2013/055541 WO2013129616A1 (ja) 2012-02-29 2013-02-28 画像処理装置および方法
PCT/JP2013/055542 WO2013129617A1 (ja) 2012-02-29 2013-02-28 画像処理装置および方法

Family Applications Before (3)

Application Number Title Priority Date Filing Date
PCT/JP2013/054126 WO2013129203A1 (ja) 2012-02-29 2013-02-20 画像処理装置および方法
PCT/JP2013/055543 WO2013129618A1 (ja) 2012-02-29 2013-02-28 画像処理装置および方法
PCT/JP2013/055541 WO2013129616A1 (ja) 2012-02-29 2013-02-28 画像処理装置および方法

Country Status (21)

Country Link
US (13) US9838682B2 (ja)
EP (9) EP3432584B1 (ja)
JP (14) JP5904266B2 (ja)
KR (13) KR102154967B1 (ja)
CN (12) CN107277516B (ja)
AR (4) AR090124A1 (ja)
AU (1) AU2013227608B2 (ja)
BR (1) BR112014020801B1 (ja)
CA (2) CA3041408C (ja)
DK (4) DK3300370T3 (ja)
ES (1) ES2725674T3 (ja)
HK (1) HK1243572A1 (ja)
HU (3) HUE056281T2 (ja)
IN (1) IN2015DN00926A (ja)
MX (4) MX339576B (ja)
MY (6) MY190756A (ja)
PL (2) PL3300370T3 (ja)
RU (4) RU2582057C2 (ja)
TW (4) TWI612797B (ja)
WO (4) WO2013129203A1 (ja)
ZA (1) ZA201405569B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015504289A (ja) * 2012-01-20 2015-02-05 エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュートElectronics And Telecommunications Research Institute 量子化行列の符号化方法及び復号化方法、並びにそれを利用する装置

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR112013019937B1 (pt) 2011-02-10 2022-05-03 Velos Media International Limited Dispositivo e método de processamento de imagem
AU2013227608B2 (en) 2012-02-29 2016-07-21 Sony Corporation Image processing device and method
JP6287035B2 (ja) * 2013-10-11 2018-03-07 ソニー株式会社 復号装置および復号方法
GB2520002B (en) * 2013-11-04 2018-04-25 British Broadcasting Corp An improved compression algorithm for video compression codecs
WO2016044842A1 (en) * 2014-09-19 2016-03-24 Futurewei Technologies, Inc. Method and apparatus for non-uniform mapping for quantization matrix coefficients between different sizes of matrices
US10302463B2 (en) * 2015-11-19 2019-05-28 Corning Incorporated Distributed fiber sensors and systems employing multicore optical fibers
FR3047379A1 (fr) * 2016-01-29 2017-08-04 Orange Procede de codage et decodage de donnees, dispositif de codage et decodage de donnees et programmes d'ordinateur correspondants
GB2598255B (en) * 2016-02-17 2022-07-27 V Nova Int Ltd Physical adapter, signal processing equipment, methods and computer programs
EP3481063A1 (en) * 2016-07-04 2019-05-08 Sony Corporation Image processing device and method
EP3510775A4 (en) * 2016-09-13 2020-03-04 MediaTek Inc. METHOD FOR SEVERAL QUANTIFICATION MATRIX SETS FOR VIDEO CODING
US10567768B2 (en) * 2017-04-14 2020-02-18 Apple Inc. Techniques for calculation of quantization matrices in video coding
US11558615B2 (en) * 2018-04-16 2023-01-17 Interdigital Vc Holdings, Inc. Quantization parameter prediction for video encoding and decoding
CN109031440B (zh) * 2018-06-04 2020-02-21 南京航空航天大学 一种基于深度学习的伽马放射性成像方法
JP2020098984A (ja) * 2018-12-17 2020-06-25 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法及びプログラム
JP2020098986A (ja) * 2018-12-17 2020-06-25 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法及びプログラム
CN109714132B (zh) * 2019-01-23 2021-04-20 中国电子科技集团公司第二十八研究所 一种用于复杂电磁环境下的多链路抗干扰实时传输方法
EP4231641A1 (en) * 2019-03-10 2023-08-23 HFI Innovation Inc. Mehtod and apparatus of the quantization matrix computation and representation for video coding
CN113994689A (zh) * 2019-03-20 2022-01-28 威诺瓦国际有限公司 信号增强编码中的残差滤波
AU2020256658A1 (en) 2019-04-12 2021-10-28 Beijing Bytedance Network Technology Co., Ltd. Most probable mode list construction for matrix-based intra prediction
CN117499656A (zh) 2019-04-16 2024-02-02 北京字节跳动网络技术有限公司 帧内编解码模式下的矩阵推导
WO2020216302A1 (en) * 2019-04-23 2020-10-29 Beijing Bytedance Network Technology Co., Ltd. Intra Prediction and Residual Coding
CN117097912A (zh) 2019-05-01 2023-11-21 北京字节跳动网络技术有限公司 基于矩阵的帧内预测的上下文编码
KR20220002318A (ko) 2019-05-01 2022-01-06 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 필터링을 이용한 행렬 기반 인트라 예측
WO2020231228A1 (ko) * 2019-05-15 2020-11-19 현대자동차주식회사 영상 복호화 장치에서 이용하는 역양자화장치 및 방법
JP2022533190A (ja) 2019-05-22 2022-07-21 北京字節跳動網絡技術有限公司 アップサンプリングを使用した行列ベースのイントラ予測
CN114051735A (zh) 2019-05-31 2022-02-15 北京字节跳动网络技术有限公司 基于矩阵的帧内预测中的一步下采样过程
CN117768652A (zh) 2019-06-05 2024-03-26 北京字节跳动网络技术有限公司 视频处理方法、装置、介质、以及存储比特流的方法
WO2020251279A1 (ko) * 2019-06-11 2020-12-17 엘지전자 주식회사 스케일링 리스트 데이터의 시그널링 기반 비디오 또는 영상 코딩
KR20210149867A (ko) * 2019-06-11 2021-12-09 엘지전자 주식회사 스케일링 리스트 파라미터 기반 비디오 또는 영상 코딩
WO2020251275A1 (ko) * 2019-06-11 2020-12-17 엘지전자 주식회사 스케일링 리스트 기반 비디오 또는 영상 코딩
GB2624122A (en) * 2019-07-05 2024-05-08 V Nova Int Ltd Quantization of residuals in video coding
CN110334316A (zh) * 2019-07-08 2019-10-15 张军 一种多路数据分块浮点量化处理器原型
EP4000265A4 (en) 2019-08-20 2022-10-26 Beijing Bytedance Network Technology Co., Ltd. USING DEFAULT AND CUSTOM SCALING MATRICES
WO2021060846A1 (ko) * 2019-09-23 2021-04-01 엘지전자 주식회사 양자화 매트릭스를 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
US11206395B2 (en) * 2019-09-24 2021-12-21 Mediatek Inc. Signaling quantization matrix
KR20220082847A (ko) 2019-10-28 2022-06-17 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 색상 성분에 기초한 신택스 시그널링 및 파싱
US11954821B1 (en) 2022-10-27 2024-04-09 Xerox Corporation Altering pixels to scale images

Family Cites Families (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2753091B2 (ja) * 1990-01-09 1998-05-18 株式会社リコー 画像データ伸張回路
KR100287624B1 (ko) * 1992-09-28 2001-04-16 야스카와 히데아키 화상데이타의압축,해제방법및그장치
US6865291B1 (en) * 1996-06-24 2005-03-08 Andrew Michael Zador Method apparatus and system for compressing data that wavelet decomposes by color plane and then divides by magnitude range non-dc terms between a scalar quantizer and a vector quantizer
US8625665B2 (en) * 1996-09-20 2014-01-07 At&T Intellectual Property Ii, L.P. Video coder providing implicit coefficient prediction and scan adaptation for image coding and intra coding of video
US6125201A (en) * 1997-06-25 2000-09-26 Andrew Michael Zador Method, apparatus and system for compressing data
JP2900927B2 (ja) * 1997-10-30 1999-06-02 日本ビクター株式会社 符号化方法及び符号化装置
FI974244A (fi) * 1997-11-14 1999-05-15 Nokia Mobile Phones Ltd Kuvan kompressointimenetelmä
KR100281967B1 (ko) * 1998-08-31 2001-02-15 전주범 공간 상관성을 이용한 영상 부호화 장치 및 그 방법
US6993076B1 (en) * 1999-05-11 2006-01-31 Thomson Licensing S.A. Apparatus and method for deriving an enhanced decoded reduced-resolution video signal from a coded high-definition video signal
US7295609B2 (en) 2001-11-30 2007-11-13 Sony Corporation Method and apparatus for coding image information, method and apparatus for decoding image information, method and apparatus for coding and decoding image information, and system of coding and transmitting image information
JP2004147095A (ja) * 2002-10-24 2004-05-20 Canon Inc 復号方法
US7206355B2 (en) * 2002-12-02 2007-04-17 Nortel Networks Limited Digitally convertible radio
KR100584552B1 (ko) * 2003-01-14 2006-05-30 삼성전자주식회사 동영상 부호화 및 복호화 방법과 그 장치
US8081678B2 (en) * 2003-02-21 2011-12-20 Panasonic Corporation Picture coding method and picture decoding method
US7233703B2 (en) * 2003-03-25 2007-06-19 Sharp Laboratories Of America, Inc. Computation-reduced IDCT method for video coding
US20050002337A1 (en) * 2003-07-01 2005-01-06 Nokia Corporation Reducing effects caused by transmission channel errors during a streaming session
US7426308B2 (en) * 2003-07-18 2008-09-16 Microsoft Corporation Intraframe and interframe interlace coding and decoding
WO2005076613A1 (en) * 2004-01-30 2005-08-18 Matsushita Electric Industrial Co., Ltd Picture coding and decoding method, apparatus, and program thereof
JP4679524B2 (ja) * 2004-01-30 2011-04-27 パナソニック株式会社 動画像復号化方法、動画像復号化装置、プログラムおよび記録媒体
US7460596B2 (en) * 2004-04-29 2008-12-02 Mediatek Incorporation Adaptive de-blocking filtering apparatus and method for MPEG video decoder
CN100571389C (zh) * 2004-06-29 2009-12-16 奥林巴斯株式会社 用于图像编码/解码和扩展图像压缩解压缩的方法和设备
DE102004059993B4 (de) * 2004-10-15 2006-08-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Erzeugen einer codierten Videosequenz unter Verwendung einer Zwischen-Schicht-Bewegungsdaten-Prädiktion sowie Computerprogramm und computerlesbares Medium
EP1675402A1 (en) * 2004-12-22 2006-06-28 Thomson Licensing Optimisation of a quantisation matrix for image and video coding
JP2007140200A (ja) * 2005-11-18 2007-06-07 Yamaha Corp 語学学習装置およびプログラム
CN101361370B (zh) * 2005-11-30 2010-12-01 株式会社东芝 图像编码/图像解码方法以及图像编码/图像解码装置
KR100763205B1 (ko) * 2006-01-12 2007-10-04 삼성전자주식회사 모션 역변환을 사용하여 모션 예측을 수행하는 방법 및장치
US8711925B2 (en) * 2006-05-05 2014-04-29 Microsoft Corporation Flexible quantization
RU2419855C2 (ru) * 2006-06-26 2011-05-27 Квэлкомм Инкорпорейтед Снижение ошибок в ходе вычисления обратного дискретного косинусного преобразования
WO2008007760A1 (fr) 2006-07-13 2008-01-17 Nec Corporation Dispositif de codage et de décodage, procédé de codage et procédé de décodage
JP4274234B2 (ja) * 2006-12-04 2009-06-03 ソニー株式会社 圧縮データ量制御方法及び画像データ圧縮装置
CN100520732C (zh) * 2006-12-26 2009-07-29 中国电信股份有限公司 性能测试脚本生成方法
JPWO2008120577A1 (ja) * 2007-03-29 2010-07-15 株式会社東芝 画像符号化及び復号化の方法及び装置
RU2009135396A (ru) * 2007-04-16 2011-04-10 Кабусики Кайся Тосиба (Jp) Способ и устройство кодирования и декодирования видеосигнала
US8213498B2 (en) * 2007-05-31 2012-07-03 Qualcomm Incorporated Bitrate reduction techniques for image transcoding
AU2008229753A1 (en) 2007-10-11 2009-04-30 Aristocrat Technologies Australia Pty Limited A gaming system and a method of gaming
KR101365441B1 (ko) * 2007-10-11 2014-02-19 삼성전자주식회사 영상 부호화장치 및 방법과 그 영상 복호화장치 및 방법
DE102007053038A1 (de) * 2007-11-07 2009-05-14 Robert Bosch Gmbh Ansteuerschaltung
KR101375663B1 (ko) * 2007-12-06 2014-04-03 삼성전자주식회사 영상을 계층적으로 부호화/복호화하는 방법 및 장치
KR101426272B1 (ko) * 2008-03-10 2014-08-07 삼성전자주식회사 영상 부호화장치 및 영상 복호화장치
US8238675B2 (en) * 2008-03-24 2012-08-07 Microsoft Corporation Spectral information recovery for compressed image restoration with nonlinear partial differential equation regularization
WO2009157581A1 (ja) * 2008-06-27 2009-12-30 ソニー株式会社 画像処理装置及び画像処理方法
JP5472105B2 (ja) * 2008-06-27 2014-04-16 ソニー株式会社 画像処理装置及び画像処理方法
US8325796B2 (en) * 2008-09-11 2012-12-04 Google Inc. System and method for video coding using adaptive segmentation
CN101771868B (zh) * 2008-12-31 2016-03-02 华为技术有限公司 对图像的量化处理方法及装置
TW201028018A (en) 2009-01-07 2010-07-16 Ind Tech Res Inst Encoder, decoder, encoding method and decoding method
KR101480412B1 (ko) * 2009-01-22 2015-01-09 삼성전자주식회사 영상의 변환 방법 및 장치, 역변환 방법 및 장치
FR2944936A1 (fr) * 2009-04-23 2010-10-29 Thomson Licensing Procedes de codage et de decodage d'un bloc de donnees images, dispositifs de codage et de decodage implementant lesdits procedes
JP2010288166A (ja) * 2009-06-15 2010-12-24 Panasonic Corp 動画像符号化装置、放送波記録装置及び、プログラム
JP2011029956A (ja) * 2009-07-27 2011-02-10 Sony Corp 画像符号化装置および画像符号化方法
JP5233897B2 (ja) * 2009-07-31 2013-07-10 ソニー株式会社 画像処理装置および方法
KR101675116B1 (ko) * 2009-08-06 2016-11-10 삼성전자 주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치
KR20110069740A (ko) * 2009-12-17 2011-06-23 에스케이 텔레콤주식회사 영상 부호화/복호화 방법 및 장치
US8588536B2 (en) * 2010-02-22 2013-11-19 Texas Instruments Incorporated Guaranteed-rate tiled image data compression
JP5213896B2 (ja) * 2010-03-03 2013-06-19 日本電信電話株式会社 画像処理方法及び画像処理装置及びプログラム
EP2375745A1 (en) * 2010-04-12 2011-10-12 Panasonic Corporation Efficient storing of picture representation using adaptive non-uniform quantizer
US20130068304A1 (en) * 2010-06-08 2013-03-21 Dic Corporation Sealing material, solar cell module, and light-emitting diode
JP2011259205A (ja) * 2010-06-09 2011-12-22 Sony Corp 画像復号化装置と画像符号化装置およびその方法とプログラム
US9350997B2 (en) * 2010-09-28 2016-05-24 Samsung Electronics Co., Ltd. Video encoding method and device and decoding method and device
US9167252B2 (en) * 2010-12-01 2015-10-20 Texas Instruments Incorporated Quantization matrix compression in video coding
CN101984669A (zh) * 2010-12-10 2011-03-09 河海大学 一种帧层次自适应维纳插值滤波器的迭代方法
BR112013019937B1 (pt) 2011-02-10 2022-05-03 Velos Media International Limited Dispositivo e método de processamento de imagem
KR20120098500A (ko) * 2011-02-25 2012-09-05 삼성전자주식회사 영상의 변환 및 역변환 방법, 및 이를 이용한 영상의 부호화 및 복호화 장치
CN102281075B (zh) * 2011-03-21 2013-03-06 中国人民解放军信息工程大学 孔径为4的六边形格网层次编码、运算与索引方法
CN103535037B (zh) * 2011-05-20 2017-06-09 索尼公司 图像处理装置和图像处理方法
US9143802B2 (en) * 2011-10-31 2015-09-22 Qualcomm Incorporated Fragmented parameter set for video coding
US10277915B2 (en) * 2011-11-07 2019-04-30 Qualcomm Incorporated Signaling quantization matrices for video coding
JP2013129616A (ja) 2011-12-21 2013-07-04 Shikoku Chem Corp 臭素化剤及びその利用
BR122020017515B1 (pt) * 2012-01-20 2022-11-22 Electronics And Telecommunications Research Institute Método de decodificação de vídeo
AU2013227608B2 (en) 2012-02-29 2016-07-21 Sony Corporation Image processing device and method
WO2013154028A1 (ja) * 2012-04-13 2013-10-17 ソニー株式会社 画像処理装置および方法
JP5559372B2 (ja) 2013-02-01 2014-07-23 キヤノン株式会社 画像形成装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JUNICHI TANAKA ET AL.: "Quantization Matrix for HEVC", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 5TH MEETING, 16 March 2011 (2011-03-16), GENEVA, CH *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015504289A (ja) * 2012-01-20 2015-02-05 エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュートElectronics And Telecommunications Research Institute 量子化行列の符号化方法及び復号化方法、並びにそれを利用する装置
JP2016129355A (ja) * 2012-01-20 2016-07-14 エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュートElectronics And Telecommunications Research Institute 量子化行列の符号化方法及び復号化方法、並びにそれを利用する装置
JP2016129356A (ja) * 2012-01-20 2016-07-14 エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュートElectronics And Telecommunications Research Institute 量子化行列の符号化方法及び復号化方法、並びにそれを利用する装置
JP2016136732A (ja) * 2012-01-20 2016-07-28 エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュートElectronics And Telecommunications Research Institute 量子化行列の符号化方法及び復号化方法、並びにそれを利用する装置
US9866839B2 (en) 2012-01-20 2018-01-09 Electronics And Telecommunications Research Institute Method for encoding and decoding quantized matrix and apparatus using same
US10306228B2 (en) 2012-01-20 2019-05-28 Electronics And Telecommunications Research Institute Method for encoding and decoding quantized matrix and apparatus using same
US10708595B2 (en) 2012-01-20 2020-07-07 Electronics And Telecommunications Research Institute Method for encoding and decoding quantized matrix and apparatus using same
US11252411B2 (en) 2012-01-20 2022-02-15 Electronics And Telecommunications Research Institute Method for encoding and decoding quantized matrix and apparatus using same
US11736696B2 (en) 2012-01-20 2023-08-22 Electronics And Telecommunications Research Institute Method for encoding and decoding quantized matrix and apparatus using same
US11778189B2 (en) 2012-01-20 2023-10-03 Electronics And Telecommunications Research Institute Method for encoding and decoding quantized matrix and apparatus using same

Also Published As

Publication number Publication date
US20170214919A1 (en) 2017-07-27
US9967566B2 (en) 2018-05-08
US10264258B2 (en) 2019-04-16
JP5904266B2 (ja) 2016-04-13
KR20200013789A (ko) 2020-02-07
EP3432583A1 (en) 2019-01-23
US9955164B2 (en) 2018-04-24
CN110913224A (zh) 2020-03-24
EP3709652A1 (en) 2020-09-16
CN110913224B (zh) 2022-05-03
KR102153271B1 (ko) 2020-09-07
CN109803149B (zh) 2021-10-01
KR20200008018A (ko) 2020-01-22
MX2021015792A (es) 2022-06-14
BR112014020801B1 (pt) 2018-09-25
JP6075487B2 (ja) 2017-02-08
AU2013227608A1 (en) 2014-08-21
JP5904267B2 (ja) 2016-04-13
EP3432582A1 (en) 2019-01-23
CA2862282C (en) 2021-03-30
KR102154964B1 (ko) 2020-09-10
CN107592536B (zh) 2020-02-11
TWI568246B (zh) 2017-01-21
JP2018110430A (ja) 2018-07-12
EP3282708A1 (en) 2018-02-14
EP3432584B1 (en) 2020-05-13
CN104170391A (zh) 2014-11-26
CN109379589B (zh) 2021-06-15
CN109803149A (zh) 2019-05-24
US20170142413A1 (en) 2017-05-18
HUE056281T2 (hu) 2022-02-28
HUE043260T2 (hu) 2019-08-28
CN107277516A (zh) 2017-10-20
EP2822275B1 (en) 2018-09-12
MX2021015794A (es) 2022-06-14
JP6299890B2 (ja) 2018-03-28
PL3432584T3 (pl) 2020-09-07
US20150023412A1 (en) 2015-01-22
US20150010075A1 (en) 2015-01-08
EP3432583B1 (en) 2020-04-01
CA3041408C (en) 2021-06-08
JP6075486B2 (ja) 2017-02-08
RU2718415C2 (ru) 2020-04-02
JP2016131384A (ja) 2016-07-21
JP2017085640A (ja) 2017-05-18
KR20200008662A (ko) 2020-01-28
WO2013129203A1 (ja) 2013-09-06
RU2597509C2 (ru) 2016-09-10
US20180098071A1 (en) 2018-04-05
JP6075485B2 (ja) 2017-02-08
MX339576B (es) 2016-05-31
EP3300370A1 (en) 2018-03-28
US10225553B2 (en) 2019-03-05
JP2017085639A (ja) 2017-05-18
RU2016120989A (ru) 2017-11-28
RU2016120989A3 (ja) 2019-10-23
EP2822275A1 (en) 2015-01-07
AR090124A1 (es) 2014-10-22
CN107743240B (zh) 2020-03-17
US9686541B2 (en) 2017-06-20
US10349053B2 (en) 2019-07-09
KR102153269B1 (ko) 2020-09-07
CN104137552A (zh) 2014-11-05
JP5904269B2 (ja) 2016-04-13
CN104126304A (zh) 2014-10-29
TWI612797B (zh) 2018-01-21
KR102074600B1 (ko) 2020-02-06
CN104137552B (zh) 2019-01-11
CA3041408A1 (en) 2013-09-06
MY172126A (en) 2019-11-14
TW201519638A (zh) 2015-05-16
TW201336315A (zh) 2013-09-01
KR102154966B1 (ko) 2020-09-10
US10404985B2 (en) 2019-09-03
EP3282708B1 (en) 2019-04-03
KR20200014435A (ko) 2020-02-10
CN113286155A (zh) 2021-08-20
WO2013129616A1 (ja) 2013-09-06
EP3300370B1 (en) 2019-04-03
US20180020219A1 (en) 2018-01-18
RU2020107177A (ru) 2021-08-17
JP2016105658A (ja) 2016-06-09
KR20200009125A (ko) 2020-01-29
KR20200008013A (ko) 2020-01-22
MY190758A (en) 2022-05-12
EP3694214A1 (en) 2020-08-12
KR102154968B1 (ko) 2020-09-10
HK1243572A1 (zh) 2018-07-13
US20190174129A1 (en) 2019-06-06
CN107277516B (zh) 2020-02-18
CN109379589A (zh) 2019-02-22
JP2020036372A (ja) 2020-03-05
BR112014020801A2 (ja) 2017-06-20
JP2018110431A (ja) 2018-07-12
JPWO2013129616A1 (ja) 2015-07-30
KR102154965B1 (ko) 2020-09-10
KR102074602B1 (ko) 2020-02-06
CN113286155B (zh) 2022-12-13
KR102154967B1 (ko) 2020-09-10
MY195141A (en) 2023-01-11
WO2013129618A1 (ja) 2013-09-06
US20180103254A1 (en) 2018-04-12
JP2019071653A (ja) 2019-05-09
TWI612798B (zh) 2018-01-21
EP3694214B1 (en) 2021-08-25
MY195140A (en) 2023-01-11
KR20180017209A (ko) 2018-02-20
MY176387A (en) 2020-08-05
EP3930334A1 (en) 2021-12-29
JPWO2013129618A1 (ja) 2015-07-30
US10277898B2 (en) 2019-04-30
CN104126306B (zh) 2017-09-19
RU2582057C2 (ru) 2016-04-20
DK3300370T3 (da) 2019-05-20
RU2014134533A (ru) 2016-03-20
KR102074601B1 (ko) 2020-02-06
JP6635184B2 (ja) 2020-01-22
JP2016131382A (ja) 2016-07-21
JP5904268B2 (ja) 2016-04-13
KR102090344B1 (ko) 2020-03-17
JPWO2013129617A1 (ja) 2015-07-30
KR20200103875A (ko) 2020-09-02
MY190756A (en) 2022-05-12
TW201715884A (zh) 2017-05-01
AR112716A2 (es) 2019-12-04
CN104126304B (zh) 2017-11-21
KR102248057B1 (ko) 2021-05-04
CN107743240A (zh) 2018-02-27
US20140369408A1 (en) 2014-12-18
TWI519133B (zh) 2016-01-21
JP6465227B2 (ja) 2019-02-06
JPWO2013129203A1 (ja) 2015-07-30
US11539954B2 (en) 2022-12-27
TW201715885A (zh) 2017-05-01
KR102153270B1 (ko) 2020-09-07
DK3694214T3 (da) 2021-09-27
US20140369407A1 (en) 2014-12-18
US10574990B2 (en) 2020-02-25
KR20180017210A (ko) 2018-02-20
JP2016131383A (ja) 2016-07-21
EP3709652B1 (en) 2021-09-22
CN104126306A (zh) 2014-10-29
RU2015103531A (ru) 2015-06-20
US9648316B2 (en) 2017-05-09
EP3432584A1 (en) 2019-01-23
AR112641A2 (es) 2019-11-20
EP3432582B1 (en) 2020-04-01
CN107592536A (zh) 2018-01-16
MX352223B (es) 2017-11-15
KR20200010571A (ko) 2020-01-30
DK3432584T3 (da) 2020-06-15
JP6465226B2 (ja) 2019-02-06
DK3282708T3 (da) 2019-05-20
ES2725674T3 (es) 2019-09-26
KR20180015756A (ko) 2018-02-13
MX2014010113A (es) 2014-10-14
US20200045314A1 (en) 2020-02-06
CN104170391B (zh) 2018-06-29
HUE049148T2 (hu) 2020-09-28
US20180176566A1 (en) 2018-06-21
BR112014020801A8 (pt) 2018-02-14
EP2822275A4 (en) 2015-12-02
IN2015DN00926A (ja) 2015-07-10
KR20140143138A (ko) 2014-12-15
US20190260993A1 (en) 2019-08-22
JP6299889B2 (ja) 2018-03-28
ZA201405569B (en) 2014-11-26
CN107257491A (zh) 2017-10-17
AU2013227608B2 (en) 2016-07-21
AR112588A2 (es) 2019-11-13
CN107257491B (zh) 2019-10-18
KR20200008015A (ko) 2020-01-22
PL3300370T3 (pl) 2019-07-31
CA2862282A1 (en) 2013-09-06
JP6075484B2 (ja) 2017-02-08
US9838682B2 (en) 2017-12-05
US9813714B2 (en) 2017-11-07

Similar Documents

Publication Publication Date Title
JP6635184B2 (ja) 画像処理装置および方法
AU2020205233A1 (en) Image processing device and method

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: 13755609

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014502389

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14375288

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13755609

Country of ref document: EP

Kind code of ref document: A1