Abstract: The present disclosure pertains to an image processing device and method that enable the inhibition of an increase in the amount of coding for a scaling list. This image processing device sets the coefficient positioned at the head of a quantization matrix by adding, to the coefficient positioned at the head of the quantization matrix, a replacement difference coefficient which is the difference between the coefficient positioned at the head of the quantization matrix, and the replacement coefficient to be used when replacing the coefficient positioned at the head of the quantization matrix. The quantization matrix which has been set is upconverted, and an upconverted quantization matrix in which the coefficient positioned at the head of the upconverted quantization matrix has been replaced by the replacement coefficient is used for the inverse quantization of the quantized data. The present disclosure can be applied to image processing devices.
Technical field
[0001]The present disclosure relates to an image processing apparatus and method.
BACKGROUND
[0002]In which is one of standard specifications of a video coding method H.264 / AVC (Advanced Video Coding), the High Profile or more profiles, upon quantization of image data, different quantization for each component of the orthogonal transform coefficients step can be used. Quantization step for each component of the orthogonal transform coefficients (also referred to as a scaling list) quantization matrix defined in units equivalent to the size of the orthogonal transform and may be set based on the step value of the reference.
[0003]Specified value of the quantization matrix, the prediction mode (intra prediction mode, an inter prediction mode) is prepared for each size of the transformation unit (4X4,8x8). The user, in a sequence parameter set or a picture parameter set, it is possible to specify a different own quantization matrix from the default value. If the quantization matrix is not used, the quantization step used in the quantization becomes equal for all components.
[0004]In H.264 / standardized as a next generation picture coding method following the AVC has been promoted HEVC (High Efficiency Video Coding), the concept of coding units corresponding to the conventional macro-block (CU (Coding Unit)) is has been introduced (e.g., see non-Patent Document 1). The size of the range of the encoding units, in a sequence parameter set, as specified by a set of LCU (LargestCoding Unit) and SCU (Smallest Coding Unit) that a power of two values. Then, using the split_flag, size specific coding unit within the range specified by the LCU and SCU are identified.
[0005]In HEVC, one coding unit may be divided into one or more orthogonal transform unit, i.e. one or more transformation units (TU (Transform Unit)). The size of the translation unit, either 4x4,8x8,16x16 and 32x32 are available.
[0006]
Meanwhile, a quantization matrix (scaling list (Scaling the List)), for the purpose reduction of the code amount in the transmission, (also referred to as DC components) that DC component is different from the AC component (also AC component referred to) It is transmitted as the data. That, DC component of the scaling list is separate from the respective AC coefficients are AC components of the scaling list (also AC coefficient referred to), and transmitted as a DC coefficient (also DC coefficient referred to).
[0007]
This DC coefficients, in order to reduce the amount of code during transmission, the constant from the value of the DC coefficient (e.g., 8) is subtracted, the value (Scaling_list_dc_coef_minus8) is exponential Golomb encoding of the signed (signed exponential Golomb coding) it has been proposed to be (for example, see non-Patent Document 1).
CITATION
Non-patent literature
[0008]
非特許文献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
Summary of the Invention
Problems that the Invention is to Solve
[0009]
However, in this method, although the process is easy, there is a possibility compression efficiency is not sufficient.
[0010]
The present disclosure has been proposed in view of such circumstances, and an object thereof is to make it possible to suppress an increase in code amount of scaling list.
Means for Solving the Problems
[0011]
One aspect of the present disclosure, up-conversion that is up-converted to the same size as the block size is a unit of processing time of dequantizing a limited quantization matrix below the transmission size is the maximum size allowed during transmission substituted difference coefficient which is the difference between the coefficient located at the head of the quantization matrix and replacement coefficients used when replacing the coefficient located at the head of the quantization matrix is added to the coefficient located at the head of the quantization matrix it makes a setting unit that sets a coefficient located at the head of the quantization matrix, and up-converts the set quantization matrix by the setting unit, and the up-converting unit that sets the upconverted quantization matrix, the up converter of the coefficient located at the head of the set up-converted quantization matrix by up-converting unit is replaced with the replacement coefficients Using preparative quantization matrix, an image processing apparatus and an inverse quantization unit for inverse quantizing the quantized data obtained by decoding the coded data.
[0012]
The setting unit is a difference between the set initial value to the quantization matrix and the replacement coefficients by adding to the initial value, it is possible to set the replacement coefficients.
[0013]
The setting unit is capable of using the difference coefficient which is a difference coefficients between the substituted difference coefficient and the quantization matrix, sets the coefficients of the quantization matrix.
[0014]
Wherein A difference coefficient which is a difference coefficients between the substituted difference coefficient and the quantization matrix is collectively transmitted, the setting unit, by using the summary substituted difference coefficient is transmitted and the differential coefficient, the quantization it is possible to set the coefficients of the matrix.
[0015]
Wherein A difference coefficient which is a difference coefficients between the substituted difference coefficient and the quantization matrix are coded, the setting unit is capable of decoding the encoded substituted difference coefficient and the difference coefficients.
[0016]
The up-converting unit by performing the nearest neighbor interpolation process on the matrix elements of the quantization matrix, a limited quantization matrix below the transfer size can be up-converted.
[0017]
The transmission size is 8x8, the up-converting unit by performing the nearest neighbor interpolation process on the matrix elements of 8x8 size for quantization matrix can be up-converted to a quantization matrix of 16x16 size .
[0018]
The up-converting unit by performing the nearest neighbor interpolation process on the matrix elements of 8x8 size for quantization matrix can be up-converted to a quantization matrix of 32x32 size.
[0019]
A transform unit is a processing unit when the conversion processing and coding unit is a processing unit in decoding process has a hierarchical structure, the coded data, and decoding processing by the unit having a hierarchical structure wherein further comprising a decoding unit that generates a quantized data, the up-conversion unit, the quantization matrix, the size of the transform unit is a processing unit for performing inverse quantization from said transfer size can be up-converted .
[0020]
One aspect of the present disclosure were also up-converted to the same size as the block size is a unit of processing time of dequantizing a limited quantization matrix below the transmission size is the maximum size allowed during transmission substituted difference coefficient which is the difference between the coefficient located at the head of the quantization matrix and replacement coefficients used when replacing the coefficient located at the head of the up-conversion quantization matrix, the coefficient located at the head of the quantization matrix by adding, to set the coefficient located at the head of the quantization matrix, and up-converts the set quantization matrices, and sets the up-conversion quantization matrix, the set up-converted quantization matrix the coefficient located at the head with up-conversion quantization matrix obtained by replacing the replacement coefficient, to the inverse quantization of the quantized data obtained by decoding the encoded data The image processing method.
[0021]
Up other aspects of the present disclosure, which is up-converted to the same size as the block size is a unit of processing time of dequantizing a limited quantization matrix below the transmission size is the maximum size allowed during transmission a setting unit that sets a replacement difference coefficient which is the difference between the coefficient located at the head of the quantization matrix and replacement coefficients used when replacing the coefficient located at the head of the conversion quantization matrix, the image is quantized, quantization a quantization unit for generating data, the coded data of the quantized data generated by the quantization unit obtained by encoding the a replacement coefficient data obtained by encoding replacement coefficients, set by the setting unit replacement the difference coefficient which is an image processing apparatus and a transmission unit for transmitting the replacement differential coefficient of data encoded.
[0022]
The setting unit may set the difference between the set initial value to the quantization matrix and the replacement coefficients.
[0023]
The setting unit sets a difference coefficient which is a difference between coefficients between the quantization matrix, the transmission unit, a difference coefficient set by the setting unit can be transmitted difference coefficient data encoded.
[0024]
The transmission unit may transmit the replacement coefficient data and said collectively and substituted difference coefficient data.
[0025]
The transmission unit may transmit from the replacement coefficient data in the order of the replacement differential coefficient data.
[0026]
The quantization unit, using the quantization matrix or the up-conversion quantization matrix, the image may be quantized.
[0027]
Code and transform unit is a processing unit when the conversion processing and coding unit is a processing unit when performing encoding processing has a hierarchical structure, which encodes the quantized data generated by the quantization unit unit may further comprise a.
[0028]
Another aspect of the present disclosure, also up-converted to acceptable same size as the block size is a unit of processing time of dequantizing a limited quantization matrix below the transmission size is the maximum size in the transmission and setting the substitution difference coefficient which is the difference between the coefficient located at the head of the quantization matrix and replacement coefficients used when replacing the coefficient located at the head of the up-conversion quantization matrix, the image is quantized, quantization It generates data, and coded data of the generated quantized data obtained by encoding, and replacement coefficient data obtained by encoding the replacement coefficients, and a substituted difference coefficient data obtained by encoding the substitution differential coefficient set transmitted the image processing method of.
[0029]
Yet another aspect of the present disclosure, the quantization matrix for identifying and decoding unit for generating quantized data by decoding the encoded data, the quantization matrix referenced when using copy mode for copying a quantization matrix referred to when the data and the quantization matrix identification data identifying the quantization matrix are identical, using the default quantization matrix corresponding to the same size as the block size is a unit of processing time of inverse quantization, the decoder an image processing apparatus and an inverse quantization unit for inverse quantizing the quantized data generated by.
[0030]
The inverse quantization unit parses a syntax that semantics is set to point to the default quantization matrix when said quantization matrix reference data and the quantization matrix identification data matches said quantized data can be inverse quantization.
[0031]
The inverse quantization unit, wherein when the difference between the quantization matrix reference data and the quantization matrix identification data is 0, parses the syntax semantics is set to point to the default quantization matrix, wherein can be inversely quantizes the quantized data.
[0032]
Yet another aspect of the present disclosure, also decodes the encoded data to generate quantized data, the quantization matrix reference that identifies the referenced quantization matrix when using a copy mode for copying a quantization matrix when the data and the quantization matrix identification data identifying the quantization matrix are identical, using the default quantization matrix corresponding to the same size as the block size is a unit of processing time of inverse quantization, generated by the decoder the image processing method of dequantizing the quantized data.
[0033]
Yet another aspect of the present disclosure, an encoding unit that generates encoded data by encoding an image, the quantization matrix reference that identifies the referenced quantization matrix when using a copy mode for copying a quantization matrix when the data and the quantization matrix identification data identifying the quantization matrix are identical, the semantics are set to point to the default quantization matrix corresponding to the same size as the block size is a processing unit when quantizing It was syntax is an image processing apparatus and a setting unit that sets a syntax of the encoded data generated by the encoding unit.
[0034]
Yet another aspect of the present disclosure, also an image is encoded to generate encoded data, and the quantization matrix reference data identifying the reference destination of the quantization matrix when using a copy mode for copying a quantization matrix If there is a match and the quantization matrix identification data identifying the quantization matrix, syntax semantics is set to point to the default quantization matrix corresponding to the same size as the block size is a processing unit when quantizing and a generated image processing method of setting the syntax of the encoded data.
[0035]
Up In one aspect of the present disclosure, which is up-converted to the same size as the block size is a unit of processing time of dequantizing a limited quantization matrix below the transmission size is the maximum size allowed during transmission substituted difference coefficient which is the difference between the coefficient located at the head of the replacement coefficients and the quantization matrix used when replacing the coefficient located at the head of the conversion quantization matrix is added to the coefficient located at the head of the quantization matrix it allows the set coefficient located at the head of the quantization matrix, is the up-converted set quantization matrix is set up-converted quantization matrix is located at the head of the set up-converted quantization matrix the by is used upconverts quantization matrix obtained by replacing the replacement coefficients coefficients, quantized data obtained by decoding the encoded data is inverse quantized
[0036]
In another aspect of the present disclosure, up-converted to the same size as the block size is a unit of processing time of dequantizing a limited quantization matrix below the transmission size is the maximum size allowed during transmission substituted difference coefficient which is the difference between the coefficient located at the head of the replacement coefficients and the quantization matrix used when replacing the coefficient located at the head of the up-conversion quantization matrix is set, the image is quantized, the quantized data There are generated, the encoded data of the generated quantized data obtained by encoding, and substituted difference coefficient data of the replacement differential coefficient set is coded by the setting unit and the replacement coefficient data obtained by encoding replacement coefficients transmission It is.
[0037]
In yet another aspect of the present disclosure, the decrypted encoded data quantized data is generated, the quantization matrix reference data identifying the reference destination of the quantization matrix when using a copy mode for copying a quantization matrix and if the quantization matrix identification data identifying the quantization matrix matches, used the default quantization matrix corresponding to the same size as the block size is a unit of processing time of inverse quantization, produced by the decoding quantization data is inverse quantized.
[0038]
In yet another aspect of the present disclosure, an image is to encoded data is generated encoded, the quantization matrix reference data identifying the reference destination of the quantization matrix when using a copy mode for copying a quantization matrix If there is a match and the quantization matrix identification data identifying the quantization matrix, syntax semantics is set to point to the default quantization matrix corresponding to the same size as the block size is a processing unit when quantizing but it is set as the syntax of the generated encoded data.
Effect of the invention
[0039]
According to the present disclosure, the image can be processed. In particular, it is possible to suppress the increase of the code amount of quantization matrices.
BRIEF DESCRIPTION OF THE DRAWINGS
[0040]
Is a diagram illustrating an example of FIG. 1 scaling list.
Is a diagram illustrating an example of FIG. 2 up-conversion.
3 is a diagram illustrating an example of use of the scaling list in the decoder.
Is a diagram illustrating an encoding example of FIG. 4 scaling list.
5 is a diagram illustrating an encoding example of scaling a list to which the present technology is applied.
Is a diagram illustrating an example of FIG. 6 Exponential Golomb code.
Is a diagram illustrating an example of a syntax relating to [7] scaling list.
8 is a diagram showing an example of a syntax for the default matrix.
9 is a diagram showing an example of semantics for the default matrix.
Is a diagram illustrating an example of a syntax relating to [10] scaling list.
11 is a diagram showing an example of a syntax relating to the scaling list to which the present technology is applied.
Is a diagram illustrating an example of FIG. 12 syntax of conventional scaling list.
It is a diagram illustrating an example of a syntax of FIG. 13 scaling list.
14 is a block diagram showing a main configuration example of an image encoding apparatus.
Is a block diagram showing a main configuration example of FIG. 15 orthogonal transform and quantization unit.
It is a block diagram showing a main configuration example of FIG. 16 matrix processing unit.
17 is a diagram illustrating an example of downsampling.
18 is a diagram illustrating an example of the way to remove the overlapping portions.
19 is a block diagram showing a main configuration example of a DPCM unit.
FIG. 20 is a flowchart illustrating an example of a flow of a quantization matrix encoding process.
21 is a flowchart showing an example of the DPCM processing flow.
It is a block diagram showing a main configuration example of FIG. 22 the image decoding apparatus.
It is a block diagram showing a main configuration example of FIG. 23 inverse quantization and inverse orthogonal transform unit.
It is a block diagram showing a main configuration example of FIG. 24 matrix generator.
[25] is a diagram for explaining an example of nearest neighbor interpolation.
It is a block diagram showing a main configuration example of FIG. 26 inverse DPCM unit.
Is a flowchart illustrating an example of the flow of FIG. 27 matrix generation process.
[FIG. 28] is a flow chart illustrating an example of a flow of the residual signal decoding processing.
FIG. 29 is a flowchart for explaining an example of the inverse DPCM processing flow.
[Figure 30] scaling list syntax diagrams showing another example.
[FIG. 31] is a block diagram showing another configuration example of the DPCM unit.
[Figure 32] the DPCM processing flow is a flow chart showing another example.
[FIG 33 is a block diagram showing another configuration example of the inverse DPCM unit.
[Figure 34] of the inverse DPCM processing flow is a flow chart for explaining another example.
[Figure 35] scaling list syntax is a diagram showing still another example.
[Figure 36] of the inverse DPCM processing flow is a flow chart describing yet another example.
[Figure 37] scaling list syntax is a diagram showing still another example.
[FIG. 38] is a block diagram showing still another configuration example of the DPCM unit.
[39] the DPCM processing flow is a flow chart showing still another example.
It is a block diagram showing still another configuration example of FIG. 40 inverse DPCM unit.
[Figure 41] of the inverse DPCM processing flow is a flow chart describing yet another example.
[Figure 42] of the inverse DPCM processing flow, describing yet another example, a flow chart subsequent to FIG. 41.
[Figure 43] syntax scaling list is a diagram showing still another example.
[Figure 44] syntax scaling list is a diagram showing still another example.
[Figure 45] scaling list syntax is a diagram showing still another example.
[FIG. 46] is a diagram showing a multi-view image encoding method.
[FIG. 47] is a diagram showing a main configuration example of the multi-view image encoding apparatus to which the present technology is applied.
It is a diagram illustrating a main configuration example of FIG. 48 multi-view image decoding apparatus according to the present technology.
[FIG. 49] is a diagram showing an example of the hierarchical image coding method.
Is a diagram illustrating a main configuration example of FIG. 50 hierarchical image coding apparatus according to the present technology.
[FIG. 51] is a diagram showing a main configuration example of a hierarchical image decoding apparatus according to the present technology.
[FIG. 52] is a block diagram showing a main configuration example of a computer.
[FIG. 53] is a block diagram showing a main configuration example of a television device.
[FIG. 54] is a block diagram showing a main configuration example of a mobile terminal device.
It is a block diagram showing a main configuration example of FIG. 55] reproducing apparatus.
[FIG. 56] is a block diagram showing a main configuration example of an imaging device.
[FIG. 57] is a block diagram showing an example of a scalable coding utilized.
[FIG. 58] is a block diagram showing another example of a scalable coding utilized.
[FIG. 59] is a block diagram showing still another example of a scalable coding utilized.
DESCRIPTION OF THE INVENTION
[0041]
The following describes embodiments of the present disclosure (hereinafter referred to as embodiments). The description will be made in the following order.
1. The first (typical application of the present technology) embodiment of
2. Second Embodiment (image coding apparatus, image decoding apparatus: Method 1)
3. Third Embodiment (Image Coding apparatus, an image decoding apparatus: method 2)
4. fourth embodiment (image coding apparatus, image decoding apparatus: method 3)
5. fifth embodiment (image coding apparatus, image decoding apparatus: mETHOD 4)
6. sixth embodiment (image coding apparatus, image decoding apparatus: otherwise)
7. seventh embodiment (multi-view image encoding apparatus, the multi-view image decoding apparatus)
8. eighth embodiment (hierarchical image coding apparatus, the hierarchical image decoding apparatus)
9. ninth embodiment (computer) of
10. application example
application example 11. scalable coding
[0042]
<1. First Embodiment>
In this embodiment, the present techniques will be described in detail in the embodiments of the second and subsequent, representative application example will be described.
[0043]
First, for the case of applying the present technique will be described a typical example. This technique is an encoding and technologies relating to decoding scaling list used for processing of the quantization and inverse quantization performed in the encoding and decoding of image data.
[0044]
In coding and decoding of image data, may be quantized and inverse quantization of the coefficient data. Such quantization and inverse quantization is performed for each block having a predetermined size, scaling a list of sizes corresponding to the block size (quantization matrix) are used. For example, if HEVC of (High Efficiency Video Coding), quantization (inverse quantization) is performed with the size of such 4X4,8x8,16x16,32x32. For HEVC, 4x4 and 8x8 size of the quantization matrix is prepared.
[0045]
Figure 1 shows an example of a 8x8 scaling list. As shown in FIG. 1, the scaling list consists of DC coefficients (DC Coefficient) and AC coefficients (AC Coefficient). DC coefficients consisting of one value is (0, 0) coefficients of the quantization matrix, corresponds to the DC coefficient of the discrete cosine transform (DCT (Discrete Cosine Transform)). AC coefficient is a coefficient other than (0, 0) coefficients of the quantization matrix, corresponding to coefficients other than the DC coefficient of the DCT. However, as shown in FIG. 1, AC coefficients are represented as a matrix (matrix). That is, the AC coefficients (0,0) coefficient is also included (hereinafter, also referred to as AC coefficients (0,0)) is, when used for the quantization and inverse quantization, the head of the quantization matrix is a coefficient which is located (0,0) coefficient is replaced with the DC coefficient. Accordingly, DC coefficient, also referred to as replacement coefficients. For example in FIG. 1, AC coefficients forms a 8x8 matrix (the matrix).
[0046]
Also, in the case of HEVC, the quantization of the 16x16 and 32x32 (inverse quantization) those 8x8 quantization matrix upconversion (enlargement conversion) is utilized.
[0047]
Figure 2 shows an example of a state in which up-converting the scaling list of 8x8 to 16x16. As shown in FIG. 2, the up-conversion scaling list, for example, nearest neighbor interpolation is applied. Recently for more information about neighbor interpolation process will be described later with reference to example FIG. 25 or the like. As shown in FIG. 2, up-conversion is performed on the AC coefficients of the scaling list. And, (0, 0) coefficients of the up-converted AC coefficient is replaced by the DC coefficient.
[0048]
8x8 of scaling list, and meant to be up-converted (8x8 for 16x16) to 16x16, are prepared two types of and intended to be up-converted to 32x32 (8x8 for 32x32).
[0049]
Encoding (encoder) scaling lists that are used in the quantization in is also used to inverse quantization in decoding (the decoder). In other words, the scaling list is transmitted from the encoding side (encoder) to the decoding side (decoder) side. Figure 3 shows an example of how.
[0050]
As in the example shown in FIG. 3, described above, and for up-conversion to the 16x16 size, for up-conversion to the 32x32 size, two 8x8 scaling list is transmitted. Although not shown, the other, the scaling list of 4x4 is also transmitted.
[0051]
AC coefficients of 8x8 scaling list for up-conversion of the thus the transmitted 16x16 size, the decoding side (decoder), is up-converted to 16x16 size by nearest interpolation processing as described above, (0,0 ) coefficients are replaced with DC coefficients, it is used for reverse quantization of a block of 16x16 size.
[0052]
Similarly, AC coefficients of 8x8 scaling list for up-conversion of the thus the transmitted 32x32 size, the decoding side (decoder), is up-converted to 32x32 size by nearest interpolation processing as described above, ( 0,0) coefficient is replaced with DC coefficients, it is used for reverse quantization of a block of 32x32 size.
[0053]
<1-2. Coded scaling list>
by transmitting the scaling list as described above, that amount, so that the code amount increases. Therefore, in order to suppress the coding efficiency reduced, scaling list is encoded in a predetermined manner, reduction of the code amount can be reduced. Figure 4 shows an example. That, 8x8 scaling list is transmitted as follows.
[0054]
If upconverting 8x8 matrix 16x16 matrix:
(1) (0, 0) coefficients of 8x8 matrix (i.e., AC coefficients (0,0)) taken as the difference between the predetermined initial value "8" .
(2) coefficient of 8x8 matrix (i.e., AC coefficients) taking the difference between the (next to each other in the coefficient string arranged in one-dimensional scan order).
(3) 16x16 matrix (0,0) coefficients (i.e., DC coefficient) and, taking the difference between the predetermined initial value "8".
(4) the difference of (1) the difference and (2), is transmitted separately and the difference of (3).
[0055]
If upconverting 8x8 matrix 32x32 matrix:
(1) (0, 0) coefficients of 8x8 matrix (i.e., AC coefficients (0,0)) taken as the difference between the predetermined initial value "8" .
(2) coefficient of 8x8 matrix (i.e., AC coefficients) taking the difference between the (next to each other in the coefficient string arranged in one-dimensional scan order).
(3) 32x32 matrix (0,0) coefficients (i.e., DC coefficient) and, taking the difference between the predetermined initial value "8".
(4) the difference of (1) the difference and (2), is transmitted separately and the difference of (3).
[0056]
However, in this method, (4), each difference is transmitted is exponential Golomb coding (signed exponential Golomb coding). Difference as described above (1), since the difference of the AC coefficients (0, 0) an initial value "8", the value of the AC coefficients (0,0) is closer to the initial value "8" If not a value, there is a possibility that the code amount increases.
[0057]
For example, in the case of FIG. 4, the value of the AC coefficients (0,0) is "12", will be transmitted is the Exponential-Golomb encoding value "4" as the difference (1). That requires 7 bits (bit) for the transmission of the difference between (1), correspondingly, which may reduce the encoding efficiency. If the value of the difference is further greater of (1), which may further reduce the coding efficiency. This is also the case of the 8x8 of scaling list for up-conversion to the 16x16 size, the same applies to the case of the 8x8 of scaling list for up-conversion to the 32x32 size.
[0058]
By the way, in general, DCT coefficients, power is concentrated in the low-order coefficient of the peripheral and the DC coefficient. Thus, in general, a smaller value is used for the coefficient and surrounding quantization matrix also DC coefficient. Also, when using extremely different value for each frequency, it may quantization error subjectively noticeable. In order to suppress such a visual image degradation, continuous values are applied to the DC coefficient and the coefficient of its surroundings.
[0059]
After up-conversion (0,1) coefficient, (1.0) factor, and (1.1) the coefficient corresponds to the AC coefficients (0,0) prior to up-conversion. In addition, (0, 0) coefficients after the up-conversion corresponds to the DC coefficient.
[0060]
Thus, in general, in the scaling list, values of the DC coefficients of the AC coefficient (0,0) takes values close to each other. For example, MPEG2, AVC, and HEVC default matrix is made in such value. In the example of FIG. 4, the value of the DC coefficient is the same "12" and the AC coefficients (0,0). Therefore, (3) the difference, i.e., a difference value between the DC coefficient and the initial value "8" is also "4".
[0061]
That is, the DC and AC coefficients (0,0) with values close to each other, respectively, taking the initial value and the difference is that not only the difference value may become larger, likely is redundant , it can be said that there is a possibility to further reduce the coding efficiency.
[0062]
Therefore, the transmission of scaling list, instead of the method of FIG. 4, to perform the following method. Figure 5 shows an example.
[0063]
If the up-convert the 8x8 matrix to 16x16 matrix:
(1) (0, 0) coefficients of the 8x8 matrix (ie, AC coefficient (0,0)) (0,0) coefficient of 16x16 matrix (ie, DC coefficient) take the difference between.
(2) coefficient of 8x8 matrix (i.e., AC coefficients) taking the difference between the (next to each other in the coefficient string arranged in one-dimensional scan order).
(3) 16x16 matrix (0,0) coefficients (i.e., DC coefficient) and, taking the difference between the predetermined initial value "8".
(4) (1) to collectively difference (3) to transmit.
[0064]
If the up-convert the 8x8 matrix to 32x32 matrix:
(1) (0, 0) coefficients of the 8x8 matrix (ie, AC coefficient (0,0)) (0,0) coefficient of 32x32 matrix (ie, DC coefficient) take the difference between.
(2) coefficient of 8x8 matrix (i.e., AC coefficients) taking the difference between the (next to each other in the coefficient string arranged in one-dimensional scan order).
(3) 32x32 matrix (0,0) coefficients (i.e., DC coefficient) and, taking the difference between the predetermined initial value "8".
(4) (1) to collectively difference (3) to transmit.
[0065]
As in the case of FIG. 4, (4), each difference is transmitted is Exponential Golomb code as Exponential Golomb code.
[0066]
Each differential transmission destination of transmitted as Exponential Golomb code receives the Exponential Golomb code, decodes the received Exponential Golomb code, each obtained difference, the inverse process of the above (1) to (3) by performing, determining the coefficients (DC and AC coefficients).
[0067]
<1-3. This typical characteristics of technical>
for more such representative features of the present technology relates to a transmission method will be described below.
[0068]
<1-3-1. DPCM and AC coefficients (0,0) and DC coefficient>
scaling list is transmitted is differential pulse code modulation (DPCM (Differential Pulse-Code Modulation )). For example in FIG. 4, AC coefficients and DC coefficients, whereas the DPCM independently, one of the features of the present technology, as in the example of FIG. 5, AC coefficients (0,0) (also substituted difference coefficient referred to) the difference between the DC coefficient is to transmit seeking.
[0069]
As described above, in general, the DC coefficient AC coefficients (0,0) takes a value close. Therefore, people of the difference between the AC coefficient (0,0) and the DC coefficient, is likely to be a smaller value than the difference of the AC coefficient (0, 0) initial value "8". In other words, by applying the present technology, it is to transmit a substituted difference coefficient which is a difference between the AC coefficients (0,0) and DC coefficient, it is likely that the code amount is reduced.
[0070]
For example, in the example of FIG. 5, the difference between the value of (1) is "0".
[0071]
Figure 6 is a diagram showing an example of the exponential Golomb coding (signed exponential golomb coding). As shown in the table of FIG. 6, the code length of the Exponential Golomb code value "4" whereas a 7-bit code length of the Exponential Golomb code value "0" is 1 bit. That is, towards the case of FIG. 5, as compared with the case of FIG. 4, the code amount to be able to reduce 6 bits.
[0072]
Generally, for transmitting a quantization matrix of 8x8 size, it is necessary to code amount of 100 bits to about 200 bits. Thus 6 bits corresponds to approximately 6% of the total. In the high level syntax (High Level Syntax), the code amount reduction of 6%, it can be said that a very large effect.
[0073]
<1-3-2. DC coefficient and transmitted collectively and AC coefficient>
shows an example of the syntax of scaling listed in Figure 7. For example in FIG. 4, syntax is as example of A of FIG. In other words, the difference of the AC coefficients (0, 0) an initial value "8", and is transmitted AC coefficients between the difference (Scaling_list_delta_coef) is then the difference between separately, DC coefficient and the initial value "8" from that (scaling_list_dc_coef_minus8) it is transmitted.
[0074]
One of the features of the present technology contrast, the difference between the DC and AC coefficients (0,0), and arranges the difference between the AC coefficients in this order, is to transmit collectively. That is, as shown in FIG. 5, the DC coefficient as well as the AC coefficients of a predetermined scanning order are arranged in one-dimensional, then the difference between the DC coefficient and the initial value "8" is determined, the coefficient sequence the difference between the coefficient between the adjacent of is required. Then, each of the obtained difference (the difference of the coefficient between) are transmitted together in a state of being arrayed one-dimensionally on the resulting sequence.
[0075]
Syntax of this case is as shown in example B of FIG. That is, the first difference between the DC coefficient and the initial value "8" (Scaling_list_dc_coef_minus8) is transmitted, followed by the difference between the DC and AC coefficients (0,0), as well as, AC coefficient between the difference (Scaling_list_delta_coef) is It is transmitted. That, DC coefficients and AC coefficients are transmitted are coded together.
[0076]
Thus, by transmitting together side by side in the order in which resulting the difference, the transmission destination of the decoding side (decoder) can decode the order transmitted, to obtain the coefficients. That is, it is possible to easily decode the scaling list that is DPCM. More specifically, it is possible to reduce the processing load. Further, it is possible to reduce the capacity of the buffer so sorting the like of the difference is not required. Furthermore, it is possible to perform decoding to the supply order of the difference, it is possible to suppress an increase in processing time.
[0077]
<1-3-3. The default matrix transmission>
FIG. 8 is a diagram showing an example of a syntax of transmission of the default matrix. Conventionally, in order to transmit the information indicative of the use of the default matrix, as shown in FIG. 8, it was transmitted first coefficient (DC coefficient) as "0". In other words, the value of the difference (scaling_list_dc_coef_minus8)) of the DC coefficient and the initial value "8" is set to "-8". However, as shown in FIG. 6, the code length of the Exponential Golomb code value "-8" it is 9 bits. In other words, there is a possibility to significantly reduce the coding efficiency. Generally, high level syntax (High Level Syntax) is lesser even one bit is desirable. In addition, complicated syntax as shown in FIG. 8, there is a risk of increasing the processing load.
[0078]
So, the first coefficient instead of to "0", so as to change the scaling_list_pred_matrix_id_delta of semantics (semantics). More specifically, to change the semantics of scaling_list_pred_matrix_id_delta from A in FIG. 9 as shown in B of FIG. That is, conventionally, as shown in A of FIG. 9, if the value is "0", indicating that the reference to the previous matrix (MatrixID-1). This, as shown in B of FIG. 9, if the value of this scaling_list_pred_matrix_id_delta is "0", so shall mean default matrix.
[0079]
By doing so, the code length of Exponential Golomb code for transmitting information indicative of the use of the default matrix can be 1 bit, it is possible to suppress the reduction of the coding efficiency. Further, the scaling list, conventionally, it was necessary syntax as shown in B in A and 10 in FIG. 10, which as in the example shown in FIG. 11 can be simplified. That is, it is possible to reduce the processing load related to the coding and decoding of the scaling list.
[0080]
<1-4. Syntax features by applying the present techniques>
For syntax will be described in more detail.
[0081]
For conventional example shown in B in A and 10 in FIG. 10, not we have to determine the default in two places of scaling_list_dc_coef_minus8 and Scaling_list_delta_coef. In addition, with regard to the scaling_list_delta_coef, it makes a determination in the middle of the for loop, and become useDefaultScalingMatrixFlag = 1, had been in the process to exit the loop. Also requires an intermediate flag called STOPNOW, also exist branches such as substituting nextCoef This condition on the value of ScalingList. Thus, in the conventional syntax, complicated processing is required.
[0082]
Therefore, in this technique, as in the example shown in FIG. 11, by substituting the DC coefficients calculated from scaling_list_dc_coef_minus8 to NextCoef, a DC coefficient initial values of Scaling_list_delta_coef.
[0083]
In addition, as semantics, and as it is of value a representation of a conventional "+1" the value of scaling_list_pred_matrix_id_delta, decided to special treatment a value of "0".
[0084]
That is, conventionally, ScalingList [0] when decoding the [2] (matrixId = 2), if scaling_list_pred_matrix_id_delta = 0, refMatrixId = matrixId - (1 + scaling_list_pred_matrix_id_delta) Since matrixID = 2 in, refMatrixId = 1 next ScalingList [0 ] was supposed to be to copy the value of [1].
[0085]
In this technology, on the other hand, refMatrixId = matrixId - and Scaling_list_pred_matrix_id_delta, when decoding the ScalingList [0] [2] (matrixId = 2), ScalingList [0] If you want to copy [1] (if you want a RefMatrixId = 1 ), and so it may be set as scaling_list_pred_matrix_id_delta = 1.
[0086]
By doing so, as shown in FIG. 11, it is possible to greatly reduce the number of lines syntax regarding scaling list. Also, dont no as the intermediate data, it is possible to omit the two variables UseDefaultScalingMatrix and STOPNOW. Furthermore, it is possible to branch for the loop as shown in FIG. 10 is not required. Therefore, it is possible to reduce the processing load related to the coding and decoding of the scaling list.
[0087]
<1-5. This processor implementing the techniques>
case of applying the present techniques in the transmission of the scaling list, encoding and decoding the above-mentioned scaling list is performed. In other words, the image coding apparatus 10 to be described later with reference to encoded and transmitted scaling list 14, the image decoding apparatus 300 which will be described later with reference to FIG. 22, receives the encoded scaled list, decoding to.
[0088]
Encoding of scaling list, the orthogonal transform and quantization unit 14 of the image encoding device 10 (FIG. 14), the matrix processor 150 (FIG. 15), the entropy encoding unit 164 (FIG. 16), DPCM unit 192 and performed in expG portion 193 (both Figure 16). That is, in the DPCM unit 192, the coefficients (DC coefficients and AC coefficients) difference between the scaling list is determined, in expG unit 193, the difference is Exponential-Golomb coding.
[0089]
To perform encoding of the scaling list to which the present technique is applied as described above, DPCM unit 192 is, for example, a configuration example shown in FIG. 19, DPCM, such as the example illustrated in FIG. 21 processing may be performed. Moreover, the semantics may be as in the example of C of C and 45 in FIG. 44.
[0090]
In other words, in order to achieve the encoding of the scaling list to which the present technology is applied, sufficient if only the DPCM unit 192 and expG unit 193, others may be of any configuration. For example, and processing unit that performs up-conversion of the scaling list, processing unit for performing a quantization using the scaling list, it is sufficient to provide the necessary configuration according to the mode of embodiment.
[0091]
Further, the decoding scaling list, the inverse quantization of the image decoding apparatus 300 and inverse orthogonal transform unit 313 (FIG. 22), the matrix generator 410 (FIG. 23), the entropy decoding unit 533 (FIG. 24), EXPG portion performed in 551 and the inverse DPCM unit 552 (both Figure 24). That is, in expG 551, the difference is obtained by being decoded Exponential Golomb code, the inverse DPCM unit 552, the coefficients of the scaling list (DC coefficient and AC coefficients) are determined from the difference.
[0092]
The application of the present technology as described above, in order to perform the decoding of the encoded scaled list, inverse DPCM unit 552, for example, a configuration example shown in FIG. 26, shown in Figure 29 inverse DPCM processing may be performed as an example. Moreover, the semantics may be as in the example of C of C and 45 in FIG. 44.
[0093]
In other words, in order to realize the decoding scaling list to which the present technology is applied, sufficient if only the expG unit 551 and the inverse DPCM unit 552, others may be of any configuration. For example, and processing unit that performs up-conversion of the scaling list, processing unit for performing inverse quantization using the scaling list, it is sufficient to provide the necessary configuration according to the mode of embodiment.
[0094]
Hereinafter, in order to a more detailed description of the present disclosure will be described for each embodiment according to the present technology.
[0095]
<2 Second
Embodiment.> <2-1 Syntax:. Method
1> (1) conventional syntax
First, FIG. 12 shows an example of a conventional syntax for the quantization matrix (scaling list (Scaling the List)). Actually, instead of scaling the list, it is often the difference matrix scaling list and its prediction matrix is transmitted. Accordingly, in the description, such as the following syntax, description scaling list shall be applied to the difference matrix.
[0096]
A of FIG. 12 is a syntax (Scaling list data syntax) regarding scaling list data, B of FIG. 12 illustrates a syntax of the scaling list (Scaling list syntax).
[0097]
(1-1) Scaling list data syntax
as shown in Figure 12 A, the syntax relates to the scaling list data, a flag indicating whether or not the scaling list is provided (scaling_list_present_flag), whether the copy mode a flag indicating (scaling_list_pred_mode_flag), if the copy mode, it has been determined that information (scaling_list_pred_matrix_id_delta) for indicating whether the reference to which scaling list is crowded read.
[0098]
(1-2) Scaling list syntax
as shown in Figure 12 B, the syntax of the scaling list, constant (e.g., 8) is subtracted from the value DC coefficient (Scaling_list_dc_coef_minus8) and the differential value of the AC coefficients (Scaling_list_delta_coef ) and the like are read, DC coefficients and AC coefficients, it has been decided to be restored.
[0099]
However, in such a syntax, although the process is easy, there is a possibility compression efficiency of the DC coefficient is not sufficient.
[0100]
Therefore, in order to the compression efficiency of the DC component DC coefficient is a coefficient (DC component) (also referred to as DC coefficient) and sufficient to obtain the difference between the DC coefficient and the other coefficients, the difference value DC coefficients so as to transmit instead of. That is, the difference value is information for calculating the DC coefficient, i.e., it is equivalent to a substantially DC coefficient. However, in general, than the DC coefficient itself, towards the difference value becomes smaller. That is, the code amount can be reduced by transmitting the difference value instead of the DC coefficient.
[0101]
In the following, for convenience of description, the size of the scaling list (quantization matrix) is a 8x8. Described above, instead of the DC coefficients, a specific example of a method of transmitting a difference between the DC coefficient and the other coefficients below.
[0102]
(2) Method 1 syntax
example, consider the first element of the DC coefficients 8x8 matrix (AC coefficients), 65 coefficients of DPCM: Good be transmitted (Differential Pulse Code Modulation Differential Pulse Code Modulation) (METHOD 1).
[0103]
That is, first, the difference between the predetermined constant and the DC coefficient is calculated, it is the first coefficient of DPCM data. Then, the difference between the DC coefficient and the first AC coefficient is calculated, it is a second coefficient of DPCM data. Then, the difference between the first AC coefficient and a second AC coefficients are calculated, it is a third coefficient of DPCM data. Later, the difference between similarly one before the AC coefficients is calculated and the fourth and subsequent coefficients DPCM data. Thus generated DPCM data is transmitted from the first coefficient in the order.
[0104]
In this way, it is possible to further improve the compression ratio in the case of 8x8 matrix (0,0) coefficient value (AC coefficients) and DC coefficient is closer. By implementing this method 1, the image coding apparatus, the DC coefficient, (also AC coefficient referred to) AC coefficients are the coefficients of the AC component (AC component) and may be treated similarly. However, in order to realize the method 1, the image decoding device to which the coefficient group is transmitted, it is necessary to specially treat only the first coefficient. That is, the image decoding apparatus, it is necessary to extract the DC coefficients from the AC coefficient group.
[0105]
In that case, the syntax of scaling list, shown in Figure 13. For example in FIG. 13, the difference value of the coefficient between (scaling_list_delta_coef) is the read 65, among the determined from their difference coefficients (nextcoef), the head of the coefficients (nextcoef) is the DC coefficient (scaling_list_dc_coef) is, coefficients other than it is the AC coefficients (ScalingList [i]).
[0106]
The image encoding apparatus for realizing the syntax of such a method 1 described below.
[0107]
<2-2. Image encoding apparatus>
FIG. 14 is a block diagram showing an example of a configuration of an image encoding apparatus 10 according to an embodiment of the present disclosure. The image encoding device 10 shown in FIG. 14 encodes the input image data, and outputs the obtained encoded data, an image processing apparatus to which the present technology is applied. Referring to FIG. 14, the image encoding apparatus 10, A / D (Analogue to Digital ) conversion section 11 (A / D), the reordering buffer 12, a subtraction unit 13, the orthogonal transform and quantization unit 14, lossless encoding part 16, a storage buffer 17, the rate control unit 18, inverse quantization unit 21, inverse orthogonal transform unit 22, adding unit 23, a deblocking filter 24, frame memory 25, a selector 26, an intra prediction unit 30, motion estimation unit 40, and a mode selection unit 50.
[0108]
A / D converter 11 converts the image signal input in analog form to the digital image data, and outputs a series of digital image data to the reordering buffer 12.
[0109]
Sorting buffer 12 rearranges the images included in the series of image data input from the A / D converter 11. Reordering buffer 12, sorts the images in accordance with the GOP (Group of Pictures) structure according to the coding process, the image data after rearrangement subtraction unit 13, the intra prediction unit 30, and the motion estimation section 40 Output.
[0110]
The subtraction unit 13, image data input from the reordering buffer 12, and the predicted image data selected by the mode selection unit 50 to be described later is supplied. Subtraction unit 13, sorting calculates prediction error data which is a difference between the predicted image data input from the image data and a mode selection unit 50 which is input from the buffer 12, the orthogonal transform and quantization of the calculated prediction error data and outputs it to the part 14.
[0111]
Orthogonal transform and quantization unit 14 performs an orthogonal transform and quantization on the prediction error data inputted from the subtraction unit 13, transform coefficient data quantized (hereinafter, referred to as quantized data) reversible encoding unit 16 and the and outputs it to the inverse quantization unit 21. Bit rate of the quantized data outputted from the orthogonal transform and quantization unit 14 is controlled on the basis of the rate control signal from the rate control unit 18. The detailed configuration of the orthogonal transform and quantization unit 14 will be further described later.
[0112]
The lossless encoding unit 16, the quantized data input from the orthogonal transform and quantization unit 14, information for generating a scaling list (quantization matrix) on the decoding side, as well, is selected by the mode selection unit 50 information about the intra prediction or inter prediction is applied. Information about the intra prediction may include, for example, prediction mode information indicating the optimal intra prediction mode for each block. Also, information on inter prediction may include, for example, prediction mode information for the prediction of motion vectors for each block, the difference motion vector information, and reference picture information or the like. Further, the information for generating the scaling list on the decoding side, the scaling list to be transmitted (or scaling list (the difference matrix between the quantization matrix) and its prediction matrix) may include identification information indicating the maximum size.
[0113]
Lossless encoding section 16, by performing a lossless encoding process on the quantized data, to generate a coded stream. Lossless encoding by the lossless coding unit 16 may be, for example, a variable length coding or arithmetic coding or the like. Also, the lossless encoding unit 16, the information for generating the scaling list is multiplexed into the header of the encoded stream (e.g. the sequence parameter set and picture parameter set). Furthermore, the lossless encoding unit 16, the information on the intra prediction or inter prediction described above, multiplexed into the header of the encoded stream. The lossless encoding unit 16 outputs the generated encoded stream to the storage buffer 17.
[0114]
The accumulation buffer 17 temporarily accumulates using a storage medium such as a semiconductor memory an encoded stream input from the lossless encoding section 16. Then, the accumulation buffer 17, the stored encoded stream, and outputs at a rate corresponding to the bandwidth of the transmission line (or output line from the image coding apparatus 10).
[0115]
The rate control section 18 monitors the free space of the storage buffer 17. Then, the rate control unit 18 generates a rate control signal in accordance with the free space in the accumulation buffer 17, and outputs the generated rate control signal to the orthogonal transform and quantization unit 14. For example, the rate control unit 18, when the free space of the storage buffer 17 is small, and generates a rate control signal for lowering the bit rate of the quantized data. Further, for example, the rate control unit 18, when the free space of the storage buffer 17 is sufficiently large to generate a rate control signal for increasing the bit rate of the quantized data.
[0116]
Inverse quantization unit 21 performs an inverse quantization process on the quantized data input from the orthogonal transform and quantization unit 14. Then, the inverse quantization unit 21, transform coefficient data acquired by the inverse quantization processing, and outputs it to the inverse orthogonal transform unit 22.
[0117]
Inverse orthogonal transform unit 22 performs inverse orthogonal transform processing for transform coefficient data input from the inverse quantization unit 21, restores the prediction error data. Then, the inverse orthogonal transform unit 22 outputs the prediction error data restored to the adder 23.
[0118]
Addition unit 23, by adding the predicted image data input from the prediction error data and mode selection unit 50 that is restored is inputted from the inverse orthogonal transform unit 22 to generate a decoded image data. The adding unit 23 outputs the generated decoded image data to the deblocking filter 24 and frame memory 25.
[0119]
Deblocking filter 24 performs a filtering process for reducing block distortion occurring at the time of encoding the image. Deblocking filter 24, the adding unit 23 block distortion is removed by filtering the decoded image data input from (or at least reduced), and outputs the decoded image data after filtering to the frame memory 25.
[0120]
Frame memory 25, the decoded image data input from the addition unit 23, and the decoded image data after filtering input from the deblocking filter 24 is stored using a storage medium.
[0121]
The selector 26 reads the decoded image data before filtering that is used for intra prediction from the frame memory 25, and supplies the intra prediction unit 30 reads decoded image data as reference image data. The selector 26 reads the decoded image data after filtering to be used for inter prediction from the frame memory 25, and supplies the motion search unit 40 reads decoded image data as reference image data.
[0122]
The intra prediction unit 30, the image data of the input from the rearrangement buffer 12 coded, and, based on the decoded image data supplied via the selector 26 performs intra prediction processing of each intra prediction mode. For example, the intra prediction unit 30 is evaluated using the prediction result given cost function by each intra prediction mode. Then, the intra prediction unit 30, an intra prediction mode cost function value is minimized, i.e. the intra prediction mode compression ratio is the highest is selected as the optimal intra prediction mode. Furthermore, the intra prediction unit 30, prediction mode information indicating the optimal intra prediction mode, the prediction image data, and information on intra-prediction, such as the cost function value, and outputs to the mode selection unit 50.
[0123]
Motion estimation unit 40, image data of the input from the rearrangement buffer 12 coded, and, based on the decoded image data supplied via the selector 26, performs inter prediction process (inter-frame prediction process). For example, the motion search unit 40 is evaluated using the prediction result given cost function by each prediction mode. Next, the motion estimation section 40, the prediction mode cost function value is minimized, i.e. the prediction mode compression ratio is the highest is selected as the optimal prediction mode. Also, the motion estimation section 40 generates predicted image data in accordance with the optimum prediction mode. Then, the motion estimation section 40, information about the inter prediction including prediction mode information indicating the optimum prediction mode selected, the prediction image data, and the information about the inter prediction of the cost function value and the like, and outputs to the mode selection unit 50 .
[0124]
Mode selecting unit 50 compares the cost function values for the inter prediction input from the cost function value and the motion estimation section 40 about the intra prediction input from the intra prediction unit 30. The mode selection unit 50, the cost function value of the intra prediction and inter prediction to select fewer prediction method. Mode selector 50, when selecting the intra prediction, and outputs the information on the intra prediction to the lossless encoding unit 16, and outputs the predicted image data to the subtraction unit 13 and the addition section 23. The mode selection unit 50, when selecting the inter prediction, and outputs the above-mentioned information about the inter prediction to the lossless encoding unit 16, and outputs the predicted image data to the subtraction unit 13 and the addition section 23.
[0125]
<2-3. Configuration Example of the orthogonal transform and quantization unit>
FIG. 15 is a block diagram showing an example of a detailed configuration of the orthogonal transform and quantization unit 14 of the image encoding apparatus 10 shown in FIG. 14. Referring to FIG. 15, the orthogonal transform and quantization unit 14 includes a selection unit 110, orthogonal transform unit 120, a quantization unit 130, the scaling list buffer 140 and matrix processing unit 150,.
[0126]
(1) selecting section
selecting unit 110 is different from the plurality of conversion units of size, selects a conversion unit used for the orthogonal transformation of image data to be encoded (TU). The size of the candidate of the conversion units which may be selected by the selection unit 110 includes, for example, a H.264 / AVC (Advanced Video Coding) in 4x4 and 8x8, the HEVC (High Efficiency Video Coding) in 4x4,8x8,16x16 and 32x32 including. Selector 110, for example, the size or quality of the image to be encoded, or may select one of the conversion units in accordance with the performance of the image encoding device 10. Selection of the conversion unit by the selector 110, may be hand tuned by the user to develop an image coding apparatus 10. Then, the selector 110, information that specifies the size of the transformation unit selected, the orthogonal transform unit 120, and outputs it to the quantization unit 130, a lossless coding unit 16, and inverse quantization unit 21.
[0127]
(2) orthogonal transformation unit
orthogonal transformation unit 120, the conversion unit selected by the selection unit 110, the image data supplied from the subtraction unit 13 (i.e., the prediction error data) to orthogonal transformation. Orthogonal transform performed by the orthogonal transform unit 120 may, for example, and the like discrete cosine transform (DCT (Discrete Cosine Transform)) or Karhunen-Loeve transform. The orthogonal transform unit 120, the transform coefficient data obtained by orthogonal transform process and outputs it to the quantization unit 130.
[0128]
(3) the quantization unit
quantizing unit 130 uses a scaling list corresponding to the conversion unit selected by the selection unit 110 quantizes the transform coefficient data generated by the orthogonal transform unit 120. The quantization unit 130, by switching the quantization step size based on the rate control signal from the rate control unit 18 changes the bit rate of the quantized data output.
[0129]
The quantization unit 130, a set of scaling list corresponding to a plurality of conversion units which may be selected by the selection unit 110, and stores the scaling list buffer 140. For example, if there are candidates for conversion units of four sizes of 4x4,8x8,16x16 and 32x32 as HEVC, a set of these four four respectively corresponding to the size of the scaling list, the scaling list buffer 140 It may be stored by. Note that the scaling list if the default scaling list is used for a certain size, only a flag indicating that the default scaling list is used (not using scaling list defined by the user), associated with the size it may be stored by the buffer 140.
[0130]
Set of scaling list that may be used by the quantization unit 130 can typically be set for each sequence of encoded streams. The quantization unit 130, a set of scaling list set for each sequence may be updated for each picture. Information for controlling the setting and update of a set of such scaling list, for example, may be inserted into the sequence parameter set and picture parameter set.
[0131]
(4) Scaling list buffer
scaling list buffer 140, using a storage medium such as a semiconductor memory, temporarily stores a set of corresponding scaled list into a plurality of translation units which may be selected by the selector 110. Set of scaling list stored by the scaling list buffer 140 is referred to in processing by the matrix processing unit 150 described below.
[0132]
(5) The matrix processing unit
matrix processing unit 150 performs encoding of the scaling list used in encoding (quantization). Then, (hereinafter, referred to as the scaling list encoded data) coded data of the scaling list generated by the matrix processing unit 150 is output to the lossless encoding unit 16, it may be inserted into the header of the encoded stream.
[0133]
<2-4. Detailed configuration example of a matrix processing unit>
Fig. 16 is a block diagram showing an example of a more detailed configuration of the matrix processing unit 150. Referring to FIG. 16, the matrix processing unit 150 includes a prediction unit 161, a difference matrix generation unit 162, the difference matrix size conversion unit 163, the entropy encoding unit 164, decoding unit 165, and an output unit 166.
[0134]
(1) predicting unit
predicting unit 161 generates a prediction matrix. As shown in FIG. 16, the prediction unit 161 includes a copying unit 171 and the prediction matrix generation unit 172.
[0135]
If the copy mode, the copy unit 171 duplicates the scaling list transmitted in the past, (it predicts scaling list of orthogonal transform unit to be processed) for prediction matrix to it. More specifically, the copy unit 171 obtains the size and list ID scaling list transmitted in the past (ListId) from the storage unit 202 of the decoding unit 165. Size is information indicating the size of the scaling list (e.g. 4x4 or 32x32, etc.). List ID is information indicating a type of prediction error data to be quantized.
[0136]
For example, the list ID is, the quantized target, whether the prediction error data of the luminance component is generated using the predicted image intra prediction (IntraLuma), the color difference that is generated using the predicted image intra prediction it is a component (Cr) prediction error data (IntraCr), whether the prediction error data of the intra predicted chrominance components produced using the prediction image (Cb) (IntraCb), or inter-predicted prediction It includes identification information indicating whether the prediction error data of the luminance component is generated using the image (InterLuma).
[0137]
Copy unit 171 selects the scaling list transmitted in the past of the same size as the scaling list that is input to the matrix processing unit 150 (scaling a list of orthogonal transform unit to be processed) as replicated, scaled list and its replicated supplying a list ID of the output section 166 to output to the outside (the lossless encoding unit 16 and inverse quantization unit 21) of the matrix processor 150. That is, in this case, as the information indicating the prediction matrix generated by duplicating the scaled list transmitted in the past, only ListID is transmitted to the decoding side (included in the encoded data), the picture coding apparatus 10, it is possible to suppress an increase in code amount of scaling list.
[0138]
In the case of normal, the prediction matrix generation unit 172 obtains a scaling list transmitted in the past from the storage unit 202 of the decoding unit 165, the scaling of the reference scaling list to generate a prediction matrix (orthogonal transform unit to be processed to predict the list). Prediction matrix generating unit 172 supplies the generated prediction matrix to the difference matrix generator 162.
[0139]
(2) the difference matrix generating unit
difference matrix generating unit 162, the prediction unit 161 and the prediction matrix supplied from (the prediction matrix generating unit 172), the difference matrix is the difference between the scaling list that is input to the matrix processing section 150 ( generating a residual matrix). As shown in FIG. 16, the difference matrix generating unit 162 has a prediction matrix size conversion unit 181, arithmetic unit 182, and the quantization unit 183.
[0140]
Prediction matrix size conversion unit 181, the size of the prediction matrix supplied from the prediction matrix generating unit 172, converted to fit the size of the scaling list that is input to the matrix processing unit 150 (hereinafter, also referred to as conversion) to.
[0141]
For example, when the size of the prediction matrix is greater than the scaling list size, prediction matrix size conversion unit 181, compression transform (hereinafter, also referred to as down-converts) a prediction matrix to. More specifically, for example, prediction matrix is 16x16, if the scaling list is 8x8, prediction matrix size conversion unit 181 down-converts the prediction matrix 8x8. Incidentally, the method of this down-conversion is optional. For example, prediction matrix size conversion unit 181, by using a filter may be to reduce the number of elements of (calculated by) prediction matrix (hereinafter, also referred to as downsampling). Further, as shown in FIG. 17, the prediction matrix size conversion section 181 thins without using a filter, a part of the elements (e.g., the black portion of the even part (FIG. 17 of the two-dimensional elements) only) it makes may be to reduce the number of elements of the prediction matrix (hereinafter, also referred to as sub-sample).
[0142]
Further, for example, the size of the prediction matrix is smaller than the size of the scaling list, prediction matrix size conversion unit 181, enlargement conversion (hereinafter, also referred to as upconverting) the prediction matrix is. More specifically, for example, a prediction matrix is 8x8, the scaling list if the 16x16, the prediction matrix size converting unit 181 up-converts the prediction matrix to 16x16. It should be noted that the method of the up-conversion is optional. For example, prediction matrix size conversion unit 181, by using a filter may also be increasing the number of elements of (calculated by) prediction matrix (hereinafter, also referred to as up-sampling). Further, for example, prediction matrix size conversion unit 181, without using a filter, by replicating elements of the prediction matrix may also be increasing the number of elements of the prediction matrix (hereinafter also referred to as reverse sub-samples ).
[0143]
Prediction matrix size conversion unit 181 supplies the prediction matrix combined size scaling list to the calculating unit 182.
[0144]
Calculation unit 182, a prediction matrix supplied from the predictive matrix size conversion unit 181, a scaling list that is input to the matrix processing unit 150 subtracts, generates difference matrix (residual matrix). Calculation unit 182 supplies the calculated difference matrix to the quantization unit 183.
[0145]
Quantization unit 183 quantizes the supplied difference matrix from the arithmetic unit 182. Quantization unit 183 supplies the quantization result of the difference matrix, the difference matrix size conversion unit 163. The quantization unit 183 outputs the information of the quantization parameter or the like used for the quantization is supplied to the output unit 166, to the outside (the lossless encoding unit 16 and inverse quantization unit 21) of the matrix processor 150 make. Incidentally, it omitted the quantization unit 183 (i.e., does not perform quantization of the difference matrix) may manner.
[0146]
(3) the difference matrix size converting unit
difference matrix size conversion unit 163, the difference matrix supplied from the difference matrix generation unit 162 (the quantization unit 183) the size of the (quantized data), if necessary, during the transmission the maximum size (hereinafter, also referred to as transfer size) allowed to convert below. The maximum size is arbitrary, for example, a 8x8.
[0147]
Encoded data output from the image encoding apparatus 10, for example, via a transmission path or a storage medium, is transmitted to the image decoding apparatus corresponding to the image encoding apparatus 10, it is decoded by the image decoding apparatus. In the image encoding apparatus 10, in such a transmission, i.e., in the coded data output from the image encoding apparatus 10, the upper limit of the size of the difference matrix (quantized data) (maximum size) is set .
[0148]
Difference matrix size conversion unit 163, the size of the difference matrix, if the maximum larger size to be equal to or less than the maximum size, down-converts the difference matrix.
[0149]
Incidentally, the method of this down-conversion is optional as in the case of down-conversion of the above-described prediction matrix. For example, it may be a downsampling using a filter or the like, or may be a sub-sample decimating the elements.
[0150]
In addition, the size of the difference matrix after the down-converted, may be any size smaller than the maximum size. However, in general, since the error larger the size difference before and after conversion becomes large, to down-convert the maximum size is desirable.
[0151]
Difference matrix size conversion unit 163, the difference matrix obtained by down-converting, and supplies to the entropy encoding unit 164. Incidentally, if the size of the difference matrices is smaller than the maximum size, since the down-conversion is unnecessary, the difference matrix size conversion unit 163 supplies the input differential matrix directly to the entropy encoding unit 164 (i.e., down-conversion There are omitted).
[0152]
(4) the entropy encoding unit
entropy encoding unit 164 encodes the difference matrix supplied from the difference matrix size conversion section 163 (quantized data) in a predetermined manner. The entropy encoding unit 164 as shown in FIG. 16 has an overlap determination unit (135Degree unit) 191, DPCM (Differential Pulse Code Modulation) unit 192, and expG portion 193.
[0153]
Overlap determination unit 191 determines the symmetry of the difference matrix supplied from the difference matrix size conversion unit 163, if the residual (difference matrix) is 135 degrees symmetric matrix, e.g., as shown in FIG. 18 , deletes data of the symmetric part is a data overlapping the (matrix elements). If the residual is not a 135 degree symmetric matrix, duplication determination unit 191 will be omitted to delete this data (matrix element). Overlap determination unit 191, the data of the symmetric part is removed as necessary difference matrices, and supplies the DPCM unit 192.
[0154]
DPCM unit 192, supplied from the duplication determination unit 191, the data of the difference matrices symmetric part is deleted DPCM encoding if necessary, to produce a DPCM data. DPCM unit 192 supplies the generated DPCM data, the expG portion 193.
[0155]
expG unit 193 performed for DPCM data supplied from the DPCM unit 192, exponential Golomb codes without signed and coding (hereinafter, also referred to as Exponential Golomb code) a. expG unit 193 supplies the encoded result to the decoding section 165 and output section 166.
[0156]
(5) the decoding unit
decoding unit 165, the data supplied from expG unit 193, restores the scaling list. Decoding unit 165, the information about the restored scaling list, as the scaling list transmitted in the past, and supplies to the prediction unit 161.
[0157]
As shown in FIG. 16, the decoding unit 165 includes a scaling list restoring unit 201 and the storage unit 202.
[0158]
Scaling list restoring unit 201 decodes the Exponential Golomb code supplied from the entropy encoding unit 164 (EXPG portion 193), to recover the scaling list that is input to the matrix processing unit 150. For example, the scaling list restoring unit 201, the Exponential Golomb code is decoded in a manner corresponding to the encoding method the entropy encoding unit 164 performs inverse transform of size conversion by the difference matrix size conversion unit 163, by the quantization unit 183 It performs inverse quantization corresponding to the quantization, the resulting difference matrix by subtracting from the prediction matrix, to recover the scaling list.
[0159]
Scaling list restoring unit 201 supplies the restored scaling list in the storage unit 202, and stores in association with their size or list ID.
[0160]
Storage unit 202 stores information about the scaling list supplied from the scaling list restoring unit 201. Information about the scaling list stored in the storage unit 202 is used for prediction matrix generating other orthogonal transform unit to be processed after the time. That is, the storage unit 202, information about the scaling list stored, as transmitted in the past information about the scaling list, and supplies to the prediction unit 161.
[0161]
The storage unit 202 is, instead of storing the information on restoring scaling list this way, the scaling list that is input to the matrix processing unit 150, may be stored in association with their size and list ID . In that case, it is possible to omit the scaling list restoring unit 201.
[0162]
(6) The output unit
output unit 166 outputs various types of information to be supplied to the outside of the matrix processing unit 150. For example, if the copy mode, the output unit 166, a list ID of the prediction matrix supplied from the copy unit 171, and supplies the lossless encoding unit 16 and the inverse quantization unit 21. Further, for example, usually, the output unit 166, Exponential Golomb code supplied from expG unit 193, and the quantization parameter supplied from the quantization unit 183, a lossless coding unit 16 and the inverse quantization unit 21 supplied to.
[0163]
The output unit 166, the scaling list (or difference matrix scaling list and its prediction matrix) identification information indicating the maximum size (transfer size) allowed during transmission, generates the scaling list on the decoding side supplied to the lossless encoding section 16 as information for. Lossless encoding unit 16, as described above, including the information for generating the scaling list in the coded stream and provides to the decoding side. Incidentally, it is also possible to define in advance the identification information indicating the transmission size depending on the level or profile. In that case, information about the transmission size, since the pre-shared device on the encoding side and the decoding side of the apparatus, it is possible to omit the transmission of the above-mentioned identification information.
[0164]
<2-5. Detailed configuration example of the DPCM unit>
FIG. 19 is a block diagram showing an example of a more detailed configuration of the DPCM unit 192. Referring to FIG. 19, DPCM section 192 has a DC coefficient coding section 211 and the AC coefficient DPCM unit 212.
[0165]
DC coefficient coding section 211 obtains a DC coefficient from the coefficient group to be supplied from the duplication determination unit 191, a predetermined initial value from (e.g. 8), subtracts the value of the DC coefficient, the difference value the difference value of the first (i = 0) and (scaling_list_delta_coef). DC coefficient coding unit 211 supplies the calculated difference value (scaling_list_delta_coef (i = 0)), the expG unit 193 as the first coefficient scaling list corresponding to the region being processed.
[0166]
AC coefficient DPCM unit 212, duplication determination unit 191 acquires the AC coefficients from the coefficient group to be supplied from the processed coefficients to the previous, subtracts the value of the AC coefficients, the difference value (Scaling_list_delta_coef and (i> 0)). AC coefficient DPCM unit 212 supplies the calculated difference value (scaling_list_delta_coef (i> 0)), the expG unit 193 as coefficients of the scaling list corresponding to the region being processed. In the case of i = 1, since the preceding coefficient is i = 0, the coefficient "DC coefficient" is processed before one.
[0167]
In this way, DPCM unit 192 may transmit the DC coefficient as a first element of the scaling list (AC coefficients). Thus, it is possible to improve the coding efficiency of the scaling list.
[0168]
<2-6. Quantization matrix encoding process flow>
Next, with reference to the flowchart of FIG. 20, an example of the flow of a quantization matrix encoding process performed by the matrix processor 150 of Figure 16 .
[0169]
When quantization matrix encoding process starts, in step S101, the prediction unit 161 acquires the scaling list of an orthogonal transform unit for processing target current area (also attention area referred to) (quantization matrix).
[0170]
In step S102, the prediction unit 161 determines whether the copy mode. If it is determined not to be copy mode, the prediction unit 161 advances the process to step S103.
[0171]
In step S103, the prediction matrix generation unit 172, a scaling list transmitted in the past, acquired from the storage unit 202, by using the scaling list, to produce a prediction matrix.
[0172]
In step S104, the prediction matrix size conversion unit 181 determines the size of the prediction matrix generated in step S103 is, whether scaling list differs whether the acquired current area (region of interest) in step S101. If the size is determined to differ, prediction matrix size conversion unit 181 advances the process to step S105.
[0173]
In step S105, the prediction matrix size conversion unit 181 converts the size of the prediction matrix generated in step S103, the size of the scaling list of the acquired current area at step S101.
[0174]
When the process of step S105 is completed, prediction matrix size conversion unit 181 advances the process to step S106. Further, in step S104, if the size and the size of the scaling list prediction matrix is determined to be identical, prediction matrix size conversion unit 181 omits the processing in step S105 (without the processing of step S105), the process proceeds to step S106.
[0175]
In step S106, the calculation unit 182 subtracts the scaled list from the prediction matrix, calculates a difference matrix of a prediction matrix and the scaling list.
[0176]
In step S107, the quantization unit 183 quantizes the difference matrix generated in step S106. This process may be omitted.
[0177]
In step S108, the difference matrix size conversion unit 163 determines whether or larger or not the size of the quantized difference matrix (the maximum size allowed for during the transmission) transfer size. If it is determined to be greater than the transfer size, the difference matrix size conversion unit 163 advances the process to step S109, down-converts the difference matrix below transfer size.
[0178]
When the process of step S109, the difference matrix size conversion unit 163 advances the process to step S110. Further, in step S108, if the size of the quantized difference matrix is equal to or less than the transmission size, the difference matrix size conversion unit 163 omits the processing in step S109 (without the processing of step S109) , the process proceeds to step S110.
[0179]
In step S110, duplication determination unit 191, quantized difference matrix determines whether having a 135 degree symmetry. If it is determined to have a 135-degree symmetry, duplication determination unit 191 advances the process to step S111.
[0180]
In step S111, the duplication determination unit 191 deletes the overlapping portion of the quantized difference matrix (duplicate data). Removing duplicate data, duplication determination unit 191 advances the process to step S112.
[0181]
Further, in step S110, if the quantized difference matrix is determined to have no symmetry 135 degrees, duplication determination unit 191 omits the processing in step S 111 (without performing the processing of step S111) , the process proceeds to step S112.
[0182]
In step S112, DPCM unit 192, appropriately overlapping portion is DPCM encoding a deleted difference matrix.
[0183]
In step S113, EXPG unit 193, the DPCM data generated in step S112, determines whether the code representing the sign exists. If it is determined that the code is present, EXPG unit 193 advances the process to step S114.
[0184]
In step S114, EXPG unit 193, to the DPCM data, and signed Exp-Golomb coding. The output unit 166, the generated Exponential Golomb code, and outputs the lossless encoding unit 16 and the inverse quantization unit 21. When the process of step S114 is completed, EXPG unit 193 advances the process to step S116.
[0185]
Further, in step S113, if it is determined not to exist codes, EXPG unit 193 advances the process to step S115.
[0186]
In step S115, EXPG unit 193, to the DPCM data, performs exponential Golomb coding unsigned. The output unit 166, the generated Exponential Golomb code, and outputs the lossless encoding unit 16 and the inverse quantization unit 21. When the process of step S115 is completed, EXPG unit 193 advances the process to step S116.
[0187]
Further, in step S102, if it is determined that the copy mode, the copy unit 171, a prediction matrix it duplicates the scaling list transmitted in the past. The output unit 166, a list ID corresponding to the prediction matrix, as information indicating the prediction matrix, and outputs the lossless encoding unit 16 and the inverse quantization unit 21. Then, the copy unit 171 advances the process to step S116.
[0188]
In step S116, the scaling list restoring unit 201 restores the scaling list. In step S117, the storage unit 202 stores a scaling list restored in step S116.
[0189]
When the process of step S117 is finished, the matrix processor 150 ends the quantization matrix encoding process.
[0190]
<2-7. DPCM process flow>
Next, with reference to the flowchart of FIG. 21, an example of DPCM processing flow executed in step S112 of FIG. 20.
[0191]
If DPCM processing is started, the DC coefficient coding unit 211, at step S131, the calculating a difference between DC coefficients and constants. In step S132, the AC coefficient DPCM unit 212 obtains a difference between the DC coefficient and the first AC coefficients.
[0192]
In step S133, the AC coefficient DPCM unit 212 determines whether or not processing all the AC coefficients. If the AC coefficients unprocessed is determined that there, AC coefficient DPCM unit 212 advances the process to step S134.
[0193]
In step S134, the AC coefficient DPCM unit 212, to be processed for the next AC coefficients. In step S135, the AC coefficient DPCM unit 212 obtains a difference between AC coefficients to be processed as the previous processed AC coefficients. When the process of step S135 is completed, AC coefficient DPCM unit 212 returns the process to step S133.
[0194]
Thus, in step S133, while it is determined that the AC coefficients of unprocessed present, AC coefficient DPCM unit 212 repeats the processing of steps S133 to step S135. In step S133, if the AC coefficients unprocessed is judged not to exist, the AC coefficient DPCM unit 212 terminates the DPCM processing, the process returns to Figure 20.
[0195]
As described above, the DC coefficient, calculates the difference between the beginning of the AC coefficients of the AC coefficient group, the difference instead of the DC coefficient, by transmitting to the image decoding apparatus, image encoding apparatus 10, the scaling list it is possible to suppress an increase in code amount.
[0196]
Next, a configuration example of an image decoding apparatus according to an embodiment of the present disclosure.
[0197]
<2-8. The image decoding apparatus>
FIG. 22 is a block diagram showing an example of a configuration of an image decoding apparatus 300 according to an embodiment of the present disclosure. The image decoding apparatus 300 shown in FIG. 22 decodes the encoded data generated by the image encoding apparatus 10, an image processing apparatus to which the present technology is applied. Referring to FIG. 22, the image decoding device 300, a storage buffer 311, a lossless decoding unit 312, inverse quantization and inverse orthogonal transform unit 313, addition unit 315, deblocking filter 316, the reordering buffer 317, D / A (Digital -to Analogue) conversion unit 318, frame memory 319, a selector 320, and 321, having an intra prediction unit 330 and motion compensation unit 340.
[0198]
The storage buffer 311, an encoded stream input via a transmission path, temporarily accumulates using a storage medium.
[0199]
Lossless decoding unit 312, an encoded stream input from the accumulation buffer 311, decodes according to the encoding scheme used at the time of encoding. Also, the lossless decoding unit 312 decodes the information that has been multiplexed in the header area of the encoded stream. The information multiplexed in the header area of the encoded stream, e.g., information for generating a scaling list as described above, and may include information about the information and inter prediction concerning intra prediction in the block header. Lossless decoding unit 312, the information for generating the quantized data and scaling list after decoding, and outputs it to the inverse quantization and inverse orthogonal transform unit 313. Also, the lossless decoding unit 312 outputs the information about intra prediction to the intra prediction unit 330. Also, the lossless decoding unit 312 outputs the information about the inter prediction to the motion compensation unit 340.
[0200]
Inverse quantization and inverse orthogonal transform unit 313, by performing inverse quantization and inverse orthogonal transformation on the quantized data input from the lossless decoding unit 312, generates the prediction error data. Then, the inverse quantization and inverse orthogonal transform unit 313 outputs the generated prediction error data to the adder 315.
[0201]
Addition unit 315, by adding the prediction error data input from the inverse quantization and inverse orthogonal transform unit 313, and predicted image data input from the selector 321 to generate a decoded image data. The adding unit 315 outputs the generated decoded image data to the deblocking filter 316 and the frame memory 319.
[0202]
Deblocking filter 316, a block distortion is removed by filtering the decoded image data input from the addition unit 315, and outputs the decoded image data arranging a reordering buffer 317 and the frame memory 319 after filtering.
[0203]
Reordering buffer 317 by rearranging the image input from the deblocking filter 316, when generating a sequence of image data of the series. Then, the reordering buffer 317, and outputs the generated image data to the D / A converter 318.
[0204]
D / A conversion unit 318 converts the digital image data inputted from the rearrangement buffer 317 to the image signal of analog form. Then, D / A conversion unit 318, for example, by outputting an analog image signal to a display (not shown) connected to an image decoding apparatus 300, and displays the image.
[0205]
Frame memory 319, before filtering the decoded image data input from the addition unit 315, and the decoded image data after filtering input from the deblocking filter 316 stores, using a storage medium.
[0206]
The selector 320, in accordance with the mode information acquired by the lossless decoding unit 312, for each block in the image, switch the output destination of image data from the frame memory 319 with the intra-prediction unit 330 and the motion compensation unit 340 . For example, the selector 320, when the intra prediction mode is specified, and outputs it to the intra prediction unit 330 the decoded image data before filtering that is supplied from the frame memory 319 as reference image data. The selector 320, when the inter prediction mode is designated, and outputs to the motion compensation unit 340 the decoded image data after filtering that is supplied from the frame memory 319 as reference image data.
[0207]
The selector 321, in accordance with the mode information acquired by the lossless decoding unit 312, for each block in the image, the output source of the predicted image data to be supplied to the adder 315 and the intra prediction unit 330 and the motion compensation unit 340 switch between. For example, the selector 321, when the intra prediction mode is specified, and supplies the predicted image data output from the intra prediction unit 330 to the adder 315. The selector 321, when the inter prediction mode is specified, and supplies the predicted image data output from the motion compensation unit 340 to the adder 315.
[0208]
The intra prediction unit 330 performs intra prediction for the pixel values based on the reference image data from the information and the frame memory 319 about intra prediction input from the lossless decoding unit 312 generates a predicted image data. Then, the intra prediction unit 330 outputs the generated predicted image data to the selector 321.
[0209]
The motion compensation unit 340 performs motion compensation processing on the basis of the reference image data from the information and the frame memory 319 about an inter prediction input from the lossless decoding unit 312 generates a predicted image data. Then, the motion compensation unit 340 outputs the generated predicted image data to the selector 321.
[0210]
<2-9. Inverse quantization and inverse orthogonal configuration of the conversion unit>
FIG. 23 is a block diagram showing an example of a main configuration of the inverse quantization and inverse orthogonal transform unit 313 of the image decoding apparatus 300 shown in FIG. 22 it is. Referring to FIG. 23, the inverse quantization and inverse orthogonal transform unit 313, a matrix generation unit 410 includes a selection unit 430, an inverse quantization unit 440 and the inverse orthogonal transform unit 450,.
[0211]
(1) matrix generator
matrix generating unit 410 is extracted from the bit stream at the reversible decoding unit 312 decodes the supplied scaling list encoded data to generate scaled list. Matrix generating unit 410 supplies the generated scaled list to the inverse quantization unit 440.
[0212]
(2) selecting section
selecting unit 430 is different from the plurality of conversion units of size, selects a conversion unit used for inverse orthogonal transformation of image data to be decoded (TU). The size of the candidate of the conversion units which may be selected by the selection unit 430 includes, for example, a H.264 / AVC in 4x4 and 8x8, including HEVC In 4X4,8x8,16x16, and 32x32. Selecting section 430, for example, LCU contained in the header of the encoded stream, SCU, and based on split_flag, it may be selected transform unit. Then, the selection unit 430, the information that specifies the size of the transformation unit selected, and outputs it to the inverse quantization unit 440 and the inverse orthogonal transform unit 450.
[0213]
(3) the inverse quantizer
inverse quantization unit 440, by using the scaling list corresponding to the conversion unit selected by the selection unit 430, inverse quantizes the transform coefficient data quantized at the time of encoding the image to. Then, the inverse quantization unit 440 outputs the transform coefficient data obtained by inverse quantization to the inverse orthogonal transform unit 450.
[0214]
(4) The inverse orthogonal transform unit
inverse orthogonal transform unit 450, in accordance with the orthogonal transform method used in encoding, inverse conversion units transform coefficient data subjected to inverse quantization by the inverse quantization unit 440 is the selected by orthogonal transform, to generate the prediction error data. Then, the inverse orthogonal transform unit 450 outputs the generated prediction error data to the adder 315.
[0215]
<2-10. Detailed configuration example of a matrix generation unit>
FIG. 24 is a block diagram showing an example of a detailed configuration of the matrix generation unit 410 shown in FIG. 23. Referring to FIG. 24, the matrix generation unit 410 includes a parameter analysis unit 531, prediction unit 532, the entropy decoding unit 533, the scaling list restorer 534, the output unit 535 and storage unit 536.
[0216]
(1) parameter analyzer
parameter analysis unit 531 is supplied from the lossless decoding unit 312, analyzes the various flags and parameters related to the scaling list. The parameter analysis unit 531, according to the analysis result, supplied from the lossless decoding unit 312, encoded data of difference matrices, supplies various information to the prediction unit 532 or the entropy decoding unit 533.
[0217]
For example, the parameter analysis unit 531, if pred_mode is 0, it is determined that the copy mode, supplies pred_matrix_id_delta the copy unit 541. Further, for example, the parameter analysis unit 531, if pred_mode is 1, it is determined that the full scan mode (normal case), supplies pred_matrix_id_delta and pred_size_id_delta the prediction matrix generator 542.
[0218]
The parameter analysis unit 531, for example, if residual_flag is true, and supplies the encoded data of the scaling list supplied from the lossless decoding unit 312 (Exponential Golomb code) in expG 551 of entropy decoding unit 533. Furthermore, the parameter analysis unit 531 supplies the residual_symmetry_flag the expG 551.
[0219]
Furthermore, the parameter analysis unit 531 supplies the residual_down_sampling_flag the difference matrix size conversion unit 562 of the scaling list restorer 534.
[0220]
(2) the prediction unit
predicting unit 532, under the control of the parameter analysis unit 531 generates a prediction matrix. As shown in FIG. 24, the prediction unit 532 includes a copying unit 541 and the prediction matrix generator 542.
[0221]
Copy unit 541, when the copy mode, duplicate the scaling list transmitted in the past, make it a prediction matrix. More specifically, the copy unit 541 corresponds to Pred_matrix_id_delta, of the same size and scaling a list of the current area, the scaling list transmitted in the past from the storage unit 536, and the scaling list and the predicted image, the prediction It supplies the image to the output unit 535.
[0222]
Prediction matrix generation unit 542, the normal case, (predicted) to produce 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, generates a prediction matrix using it. In other words, the prediction matrix generation unit 542, the prediction matrix generation unit 172 of the image encoding device 10 (FIG. 16) generates the same prediction matrix and the prediction matrix to produce. Prediction matrix generating unit 542 supplies the generated prediction matrix prediction matrix size conversion unit 561 of the scaling list restorer 534.
[0223]
(3) the entropy decoding unit
entropy decoding unit 533 restores the difference matrix from an exponential Golomb code supplied from the parameter analysis unit 531. As shown in FIG. 24, the entropy decoding unit 533 includes a expG portion 551, the inverse DPCM unit 552, and inverse overlap determination unit 553.
[0224]
expG unit 551, exponential Golomb decoding of signed or unsigned (hereinafter, exponential Golomb referred decode both) performed to recover the DPCM data. expG 551, the restored DPCM data, together with Residual_symmetry_flag, supplies the inverse DPCM unit 552.
[0225]
Inverse DPCM unit 552, and DPCM decoding on overlapping portion is deleted data, to generate a residual data from the DPCM data. Inverse DPCM unit 552, the generated residual data, together with Residual_symmetry_flag, supplies the inverse overlap determination unit 553.
[0226]
Conversely overlap determination unit 553, if residual_symmetry_flag is true, i.e., the residual data 135 degrees symmetric matrix, data of overlapping symmetric part case (matrix element) is one that was removed, the symmetric part to restore the data. In other words, the difference matrix of 135 degrees symmetric matrix is restored. In the case residual_symmetry_flag is not true, i.e., if the residual data is a matrix is not a 135 degree symmetric matrix, inverse overlap determination unit 553, without restoring the data of the symmetric part, the difference the residual data and matrix. Conversely duplication determination unit 553 supplies the thus restored difference matrix to the scaling list restorer 534 (difference matrix size conversion unit 562).
[0227]
(4) the scaling list restorer
scaling list restoring unit 534 restores the scaling list. As shown in FIG. 24, the scaling list restoring unit 534 includes a prediction matrix size conversion unit 561, the difference matrix size conversion unit 562, an inverse quantization unit 563 and the arithmetic unit 564.
[0228]
Prediction matrix size conversion unit 561, the size of the prediction matrix supplied from the prediction unit 532 (the prediction matrix generator 542) is different from the size of the scaling list of the current area to be restored, to convert the size of the prediction matrix .
[0229]
For example, the size of the prediction matrix is larger than the size of the scaling list, prediction matrix size conversion unit 561 down-converts the prediction matrix. Further, for example, when the size of the prediction matrix is smaller than the size of the scaling list, prediction matrix size converting unit 561 up-converts the prediction matrix. The method of converting the same method is selected as the prediction matrix size conversion unit 181 of the image encoding device 10 (Figure 16).
[0230]
Prediction matrix size conversion unit 561 supplies the prediction matrix combined size scaling list to the calculating unit 564.
[0231]
Difference matrix size converting unit 562, when residual_down_sampling_flag is true, i.e., if the size of the transmitted difference matrix is smaller than the size of the current area to inverse quantization, depending on the current area dequantizing the size of the difference matrix It is up-converted to size. The method of the up-conversion is optional. For example, the difference matrix size conversion unit 163 of the image encoding device 10 (FIG. 16) may correspond to a method of down-conversion went.
[0232]
For example, the difference matrix size conversion unit 163, if the difference matrices down samples, the difference matrix size conversion unit 562, may be up sample the difference matrix. Further, the difference matrix size conversion unit 163, if the difference matrix was subsampled, the difference matrix size conversion section 562 may be reversed subsample the difference matrix.
[0233]
For example, the difference matrix size conversion unit 562 is not a general linear interpolation, as shown in FIG. 25, it may be interpolated by the nearest neighbor interpolation (nearest neighbor). By using the nearest neighbor interpolation, it is possible to reduce a memory for holding.
[0234]
Accordingly, even when not transmitting large scaling list size, the time of up-sampling from a small scaled list size, it is not necessary to hold the data after up-sampling, storing data associated with the operation when upsampling even when, such as an intermediate buffer becomes unnecessary.
[0235]
In the case residual_down_sampling_flag it is not true, i.e., if the difference matrices is transmitted in size when used in the quantization process, the difference matrix size conversion unit 562 omits upconverts difference matrix (or 1-fold may be carried out up-conversion).
[0236]
Difference matrix size conversion unit 562, thus the difference matrix obtained by up-converting if necessary, and supplies the inverse quantizer 563.
[0237]
Inverse quantization unit 563, a method corresponding to the quantization of the quantization unit 183 of the image encoding device 10 (FIG. 16), the supplied difference matrix (quantized data) to the inverse quantization and inverse quantized supplying the difference matrix calculation section 564. In the case where the quantization unit 183 is omitted, i.e., if the difference matrix supplied from the difference matrix size conversion unit 562 is not quantized data, it is possible to omit the inverse quantization unit 563.
[0238]
Calculation unit 564 adds the prediction matrix supplied from the predictive matrix size conversion unit 561, and a difference matrix supplied from the inverse quantization unit 563 restores the scaling list of the current region. Calculation unit 564 supplies the restored scaled list to the output unit 535 and storage unit 536.
[0239]
(5) Output unit
The output unit 535 outputs the information supplied to the outside of the matrix generator 410. For example, if the copy mode, the output unit 535, a prediction matrix supplied from the copy unit 541 as the scaling list of the current area, and supplies the inverse quantizer 440. Further, for example, usually, the output unit 535 supplies the scaling list of the current region, to the inverse quantization unit 440 is supplied from the scaling list restorer 534 (calculating section 564).
[0240]
(6) the storage unit
storage unit 536, a scaling list supplied from the scaling list restorer 534 (calculating section 564), and stores together with the size and the list ID. Information about the scaling list stored in the storage unit 536 is used for prediction matrix generating other orthogonal transform unit to be processed after the time. That is, the storage unit 536, information about the scaling list stored, as information about the transmission scaling list in the past, and supplies to the prediction unit 532.
[0241]
<2-11. Detailed configuration example of a reverse DPCM unit>
FIG. 26 is a block diagram showing an example of a detailed configuration of the inverse DPCM unit 552 shown in FIG. 24. Referring to FIG. 26, the inverse DPCM unit 552, an initial setting section 571, DPCM decoding unit 572 and the DC coefficient extracting section 573,.
[0242]
Initial setting unit 571, or acquires the sizeID and matrixID, and set the initial values to various variables. Initial setting unit 571 supplies or acquired, the information or set the DPCM decoder 572.
[0243]
DPCM decoding unit 572 uses the supplied initialized like from the initial setting unit 571, a difference value of the DC coefficient and AC coefficients from (Scaling_list_delta_coef), obtains the coefficients (DC coefficients and the AC coefficients). DPCM decoding unit 572 supplies the coefficients determined to the DC coefficient extracting section 573 (ScalingList [i]).
[0244]
DC coefficient extracting unit 573 extracts the DC coefficients from the supplied coefficient group from DPCM decoding unit 572 (ScalingList [i]). DC coefficient is placed at the beginning of the AC coefficient group. In other words, the first coefficients of the coefficient group supplied from the DPCM decoder 572 (ScalingList [0]) is a DC coefficient. DC coefficient extracting section 573 extracts the leading coefficient as DC coefficient, and outputs the inverse overlap determination unit 553 (DC_coef). DC coefficient extracting unit 573 outputs the inverse overlap determination unit 553 other coefficients (ScalingList [i] (i> 0)) as the AC coefficients.
[0245]
By doing so, the inverse DPCM unit 552 is able to correctly DPCM decoding, it is possible to obtain a DC coefficient and AC coefficients. That is, the image decoding device 300 can suppress an increase in code amount of scaling list.
[0246]
<2-12. Quantization matrix decoding process flow>
with reference to the flowchart of FIG. 27, an example of a flow of a quantization matrix decoding process performed by the matrix generation unit 410 as described above.
[0247]
When the quantization matrix decoding processing starting, in step S301, the parameter analysis unit 531 reads a quantized value of the region 0 to region 3 (Qscale0 to Qscale3).
[0248]
Parameter analyzing unit 531, in step S302, reads the Pred_mode, in step S303, determines whether Pred_mode is zero. If pred_mode is determined to be 0, the parameter analysis unit 531 determines that the copy mode, the process proceeds to step S304.
[0249]
In step S304, the parameter analysis unit 531 reads the Pred_matrix_id_delta. In step S305, the copy unit 541 duplicates the transmission already scaling list, the prediction matrix. If the copy mode, the prediction matrix is outputted as the scaling list of the current region. When the process of step S305 is completed, the copy unit 541 terminates the quantization matrix decoding.
[0250]
Further, in step S303, if the pred_mode is determined not 0, the parameter analysis unit 531 determines that full scan mode (normal case), the process proceeds to step S306.
[0251]
In step S306, the parameter analysis unit 531 reads pred_matrix_id_delta, pred_size_id_delta, and Residual_flag. In step S307, the prediction matrix generation unit 542 generates a prediction matrix from the transmission already scaling list.
[0252]
In step S308, the parameter analysis unit 531 determines whether residual_flag is true. If residual_flag is determined not true, because there is no residual predicted matrix generated in step S307 is outputted as the scaling list of the current region. Therefore, in this case, the parameter analysis unit 531 ends the quantization matrix decoding.
[0253]
Further, in step S308, if the residual_flag is determined to be true, the parameter analysis unit 531 advances the process to step S309.
[0254]
In step S309, the parameter analysis unit 531 reads the residual_down_sampling_flag and Residual_symmetry_flag.
[0255]
In step S310, EXPG unit 551 and the inverse DPCM unit 552 decodes Exponential Golomb code of the residual matrix to generate a residual data.
[0256]
In step S311, the inverse overlap determination unit 553 determines whether residual_symmetry_flag is true. If residual_symmetry_flag is determined to be true, the inverse overlap determination unit 553 advances the process to step S312, (performs inverse symmetry process) that of the residual data, to restore the deleted overlapping portions. Thus symmetric matrix of difference matrix is generated to 135 degrees, the inverse overlap determination unit 553 advances the process to step S313.
[0257]
Further, in step S311, if the residual_symmetry_flag is judged not to be true (residual data, if a difference matrix is not a symmetric matrix to 135 degrees), the inverse overlap determination unit 553 omits the processing in step S312 (inverse symmetry without processing), the process proceeds to step S313.
[0258]
In step S313, the difference matrix size conversion unit 562, Residual_down_sampling_flag determines whether it is true. If residual_down_sampling_flag is determined to be true, the difference matrix size conversion unit 562 advances the process to step S314, the difference matrix, is up-converted to size according to the current area to inverse quantization. Difference matrix size converting unit 562 when upconverts difference matrix, the process advances to step S315.
[0259]
Further, in step S313, if the residual_down_sampling_flag is determined not true, the difference matrix size conversion unit 562 (without upconverting difference matrix) is omitted process step S314, the process proceeds to step S315.
[0260]
In step S315, the arithmetic unit 564 adds the difference matrix in the prediction matrix, to generate the scaling list of the current region. When the process of step S315 is completed, the quantization matrix decoding processing is terminated.
[0261]
<2-13. Residual signal decoding process flow>
Next, an example of a flow of the residual signal decoding process executed in step S310 of FIG. 27 will be described with reference to the flowchart of FIG. 28.
[0262]
When the residual signal decoding process is started, EXPG unit 551, at step S331, decodes the Exponential Golomb code supplied.
[0263]
In step S332, the inverse DPCM unit 552 performs the inverse DPCM processing for the DPCM data obtained by decoding the expG 551.
[0264]
When inverse DPCM processing is completed, the reverse DPCM unit 552 ends the residual signal decoding processing, and returns the process to FIG. 27.
[0265]
<2-14. Inverse DPCM processing flow>
Next, an example of the inverse DPCM processing flow executed in step S332 of FIG. 28 will be described with reference to the flowchart of FIG. 29.
[0266]
When inverse DPCM processing is started, the initial setting unit 571, at step S351, acquires the sizeID and matrixID.
[0267]
In step S352, the initial setting unit 571 sets the coefNum as follows.
coefNum = min ((1 << ( 4+ (sizeID << 1))), 65)
[0268]
In step S353, the initial setting unit 571 sets as follows variables i and Nextcoef.
= 0 I
Nextcoef = 8
[0269]
In step S354, DPCM decoding unit 572 determines whether or not the variable i 1) 1;? 0] = nextcoef) When the process of step S359 is completed, DC coefficient extracting unit 573 advances the process to step S360.
[0274]
In step S360, DPCM decoding unit 572 increments the variable i, changing the processing target to the next coefficient, and the process returns to step S354.
[0275]
In step S354, the variable i is until it is determined to be equal to or greater than CoefNum, processing of steps S354 through step S360 are repeated. In step S354, if the variable i is determined to be equal to or greater than CoefNum, DPCM decoding unit 572 ends the inverse DPCM processing, the process returns to Figure 28.
[0276]
By the way, the DC coefficient, it is possible to correctly decode the difference between the beginning of the AC coefficients of the AC coefficient group, the image decoding apparatus 300, to suppress an increase in code amount of scaling list it can.
[0277]
<3 Third Embodiment.>
: <3-1 syntax. Method 2>
instead of DC coefficients, as a method of transmitting a difference between the DC coefficient and the other coefficients, for example, the DC coefficient and 8x8 matrix ( the difference of 0, 0) component, may be transmitted as separate DPCM data to the 8x8 matrix of DPCM data (method 2). For example, after DPCM transmission of 8x8 matrix, it may be transmitted to the difference between (0, 0) component of the DC coefficient and 8x8 matrix.
[0278]
By doing so, as in the case of method 1, it is possible to further improve the compression ratio in the case of 8x8 matrix (0,0) coefficient value (AC coefficients) and DC coefficient is closer.
[0279]
In the case of method 2, a syntax of scaling list, shown in Figure 30. For example in FIG. 30, the difference value of the coefficient between (Scaling_list_delta_coef) is the read 64, and finally the DC coefficient (0,0) coefficients (AC coefficients) and the difference (Scaling_list_dc_coef_delta) is read, DC from the difference coefficient is required.
[0280]
Therefore, in the case of the method 2, a syntax of the AC coefficient decoding can be similar to the conventional case shown in FIG. 12. In other words, the syntax of the method 2, it is possible to reduce a change in the conventional example, it is easy to achieve than in the case of Method 1.
[0281]
However, the image decoding apparatus, in the case of the method 2, receives all of the coefficients until solve all DPCM, whereas it is impossible to obtain a DC coefficient in the case of method 1, the DC coefficients upon receiving the first coefficient it is possible to restore.
[0282]
The image encoding apparatus for realizing the syntax of such a method 2 described below.
[0283]
<3-2. Detailed configuration example of the DPCM unit>
METHOD case 2, the configuration of the image coding apparatus 10 is basically the same as the case of the method 1 described above. That is, the image encoding apparatus 10 is configured as in the example shown in FIG. 14. Further, the orthogonal transform and quantization unit 14 is configured as in the example shown in Figure 15. Furthermore, the matrix processor 150 is configured as in the example shown in FIG. 16.
[0284]
The configuration example of the DPCM unit 192 in this case is shown in FIG. 31. As shown in FIG. 31, in this case, DPCM unit 192 has an AC coefficient buffer 611, AC coefficient coding unit 612, an AC coefficient DPCM unit 613 and the DC coefficient DPCM unit 614,.
[0285]
AC coefficient buffer 611, the first AC coefficient supplied from the duplication determination unit 191 (i.e., (0,0) coefficient) stores. AC coefficient buffer 611 at a predetermined timing after the DPCM processing all the AC coefficients, or on demand, the first AC coefficients stored (AC coefficients (0,0)), DC coefficient DPCM unit and supplies to 614.
[0286]
AC coefficient coding unit 612 obtains the first AC coefficient supplied from the duplication determination unit 191 (AC coefficients (0,0)) and subtracts that value from a constant (e.g. 8). AC coefficient coding unit 612, and supplies the subtraction result (difference) as the first coefficient of DPCM data of the AC coefficients (scaling_list_delta_coef (i = 0)), the expG portion 193.
[0287]
AC coefficient DPCM unit 613 obtains each AC coefficient supplied from the duplication determination unit 191, for each AC coefficient of the second and subsequent, obtains a difference (DPCM) of the preceding AC coefficients, DPCM data (Scaling_list_delta_coef as (i = 1 ~ 63)), and supplies the expG unit 193.
[0288]
DC coefficient DPCM unit 614 obtains a DC coefficient supplied from the duplication determination unit 191. Moreover, DC coefficient DPCM unit 614 obtains the first AC coefficient held by AC coefficient buffer 611 (AC coefficients (0,0)). DC coefficient DPCM unit 614 obtains a difference between them by subtracting the first AC coefficients from DC coefficients (AC coefficients (0,0)), the difference as DPCM data (Scaling_list_dc_coef_delta) of DC coefficient, EXPG 193 supplied to.
[0289]
As described above, in the method 2, the difference between the DC coefficient and the other coefficients (first AC coefficient) is obtained. Then, the difference is different from the DPCM data of AC coefficients, as DPCM data DC coefficient (scaling_list_dc_coef_delta), DPCM data of the AC coefficients is the difference between the AC coefficients (scaling_list_delta_coef) is transmitted after the transmission. In this way, the image encoding apparatus 10, as in the case of method 1, it is possible to improve the coding efficiency of the scaling list.
[0290]
<3-3. DPCM processing flow>
In the case of method 2, the image encoding apparatus 10, the quantization matrix encoding process is performed as in the case of the method 1 described with reference to the flowchart of FIG. 20 .
[0291]
With reference to the flowchart of FIG. 32, it is executed in step S112 of FIG. 20, an example of DPCM processing flow in the case of Method 2.
[0292]
If DPCM processing is started, AC coefficient buffer 611, in step S401, to hold the first AC coefficients.
[0293]
In step S402, the AC coefficient coding unit 612, a first AC coefficient is subtracted from a predetermined constant (e.g. 8) to obtain the difference (the first DPCM data).
[0294]
Each processing of steps S403 through step S405 is the AC coefficient DPCM unit 613 are executed in the same manner as the processes of steps S133 to step S135 in FIG. 21. That is, by the processing of step S403 to step S405 is repeatedly performed, (the difference between the previous AC coefficients) DPCM data of all AC coefficients are generated.
[0295]
In step S403, all the AC coefficients have been processed (i.e., AC coefficients of unprocessed and not exist) when it is determined that, AC coefficient DPCM unit 613 advances the process to step S406.
[0296]
In step S406, the DC coefficient DPCM unit 614, the DC coefficient, subtracts the first AC coefficients retained in step S401, obtains the difference between them (DPCM data DC coefficient).
[0297]
When the process of step S406 is completed, DC coefficient DPCM unit 614 terminates the DPCM processing, the process returns to Figure 20.
[0298]
As described above, for the DC coefficient, obtains the difference with other factors, by transmitting it to the image decoding apparatus as DPCM data, the image encoding device 10 suppresses the increase in the code amount of scaling list be able to.
The scope of the claims
[Requested item 1]
Located at the beginning of acceptable up-converted to the same size as the block size is a unit of processing time of dequantizing a limited quantization matrix below the transmission size is the maximum size was up-conversion quantization matrix during transmission substituted difference coefficient which is the difference between the coefficient located at the head of the quantization matrix and replacement coefficients used when replacing the coefficients by adding the coefficient located at the head of the quantization matrix, the quantization matrix a setting unit that sets a coefficient located at the head of
the up-converts the set quantization matrix by the setting unit, and the up-converting unit that sets the upconverted quantization matrix
is set by the up conversion section use the up-conversion quantization matrix coefficients located at the head of the up-conversion quantization matrix is replaced with the replacement coefficients Te, a dequantization unit for dequantizing the quantized data obtained by decoding the coded data
image processing apparatus comprising a.
[Requested item 2]
The setting unit, the difference between the initial value set in the replacement coefficients and the quantization matrix, by adding to the initial value, and sets the replacement coefficient
image processing apparatus according to claim 1.
[Requested item 3]
The setting unit uses a differential coefficient the a difference between the coefficient between the substituted difference coefficient and the quantization matrix, sets the coefficients of the quantization matrix
image processing apparatus according to claim 2.
[Requested item 4]
Wherein A difference coefficient which is a difference coefficients between the substituted difference coefficient and the quantization matrix is collectively transmitted,
the setting unit, by using the summary substituted difference coefficient is transmitted and the differential coefficient, the quantization setting the coefficients of the matrix
image processing apparatus according to claim 3.
[Requested item 5]
Wherein A difference coefficient which is a difference coefficients between the substituted difference coefficient and the quantization matrix are coded,
the setting unit decodes the encoded substituted difference coefficient and the difference coefficient
to claim 3 the image processing apparatus according.
[Requested item 6]
The up-converting unit by performing the nearest neighbor interpolation process on the matrix elements of the quantization matrix, upconverts the limited quantization matrix below the transfer size
image processing apparatus according to claim 1.
[Requested item 7]
The transmission size is 8x8,
the up-converting unit by performing the nearest neighbor interpolation process on the matrix elements of 8x8 size for quantization matrix, upconverts the quantization matrix of 16x16 size
claim 6 the image processing apparatus according to.
[Requested item 8]
The up-converting unit by performing the nearest neighbor interpolation process on the matrix elements of 8x8 size for quantization matrix, upconverts the quantization matrix of 32x32 sized
image processing apparatus according to claim 6.
[Requested item 9]
A transform unit is a processing unit when the conversion processing and coding unit is a processing unit in decoding process has a hierarchical structure,
the coded data, and decoding processing by the unit having a hierarchical structure wherein further comprising a decoding unit that generates a quantized data,
the up-conversion unit, the quantization matrix is up-converted to the size of the transform unit is a processing unit for performing inverse quantization from said transmission size
in claim 1 the image processing apparatus according.
[Requested item 10]
Located at the beginning of acceptable up-converted to the same size as the block size is a unit of processing time of dequantizing a limited quantization matrix below the transmission size is the maximum size was up-conversion quantization matrix during transmission substituted difference coefficient which is the difference between the coefficient located at the head of the quantization matrix and replacement coefficients used when replacing the coefficients by adding the coefficient located at the head of the quantization matrix, the quantization matrix set the coefficient located at the head of,
upconverts the set quantization matrices, and sets the up-conversion quantization matrix,
the replacement coefficients coefficients located at the head of the set up-converted quantization matrix with up-conversion quantization matrix obtained by replacing, inversely quantizes the quantized data obtained by decoding the coded data
image processing method.
[Requested item 11]
Located at the beginning of acceptable up-converted to the same size as the block size is a unit of processing time of dequantizing a limited quantization matrix below the transmission size is the maximum size was up-conversion quantization matrix during transmission a setting unit that sets a replacement difference coefficient which is the difference between the coefficient located at the head of the quantization matrix and replacement coefficients used when replacing the coefficients,
an image is quantized, the quantization unit for generating quantized data When,
the coded data of the quantized data generated by the quantization unit is coded, the replacement coefficient data obtained by encoding the replacement coefficients, substituted difference obtained by encoding substitutions difference coefficient set by the setting unit a transmission unit for transmitting the coefficient data
image processing apparatus comprising a.
[Requested item 12]
The setting section sets the difference between the set initial value to the quantization matrix and the replacement coefficient
image processing apparatus according to claim 11.
[Requested item 13]
The setting unit sets a difference coefficient which is a difference between coefficients between the quantization matrix,
the transmission unit transmits the difference coefficient data obtained by encoding the difference coefficient set by the setting unit
in claim 12 the image processing apparatus according.
[Requested item 14]
The transmission unit transmits together with the replacement coefficient data and the replacement differential coefficient data
image processing apparatus according to claim 11.
[Requested item 15]
The transmission unit transmits from the substituted coefficient data in the order of the replacement differential coefficient data
image processing apparatus according to claim 14.
[Requested item 16]
The quantization unit, using the quantization matrix or the up-conversion quantization matrix to quantize the image
image processing apparatus according to claim 11.
[Requested item 17]
A transform unit is a processing unit when the conversion processing and coding unit is a processing unit when performing encoding processing has a hierarchical structure,
code for encoding the quantized data generated by the quantization unit further comprising a unit
image processing apparatus according to claim 11.
[Requested item 18]
Located at the beginning of acceptable up-converted to the same size as the block size is a unit of processing time of dequantizing a limited quantization matrix below the transmission size is the maximum size was up-conversion quantization matrix during transmission replacement coefficients to be used in replacing the coefficients to set the replacement difference coefficient which is the difference between the coefficient located at the head of the quantization matrix,
the image is quantized, and generates quantized data,
quantized generated transmitting the encoded data and data obtained by encoding, wherein the replacement coefficient data replacement coefficient is encoded, and a substituted difference coefficient data obtained by encoding the substitution differential coefficient set
image processing method.
[Requested item 19]
A decoding unit which decodes the encoded data to generate quantized data,
identifying the quantization matrix reference data and the quantization matrix for identifying the reference destination of the quantization matrix when using a copy mode for copying a quantization matrix If there is a match and the quantization matrix identification data, using the default quantization matrix corresponding to the same size as the block size is a unit of processing time of inverse quantization, inverse the generated quantized data by the decoding unit and inverse quantization unit for quantizing
the image processing apparatus comprising a.
[Requested item 20]
The inverse quantization unit parses a syntax that semantics is set to point to the default quantization matrix when said quantization matrix reference data and the quantization matrix identification data matches said quantized dequantizing data
image processing apparatus according to claim 19.
[Requested item 21]
The inverse quantization unit, wherein when the difference between the quantization matrix reference data and the quantization matrix identification data is 0, parses the syntax semantics is set to point to the default quantization matrix, wherein dequantizing the quantized data
image processing apparatus according to claim 19.
[Requested item 22]
By decoding the encoded data to generate quantized data,
the quantization matrix identifying the quantization matrix reference data and the quantization matrix for identifying the reference destination of the quantization matrix when using a copy mode for copying a quantization matrix If the identification data match, using the default quantization matrix corresponding to the same size as the block size is a unit of processing time of inverse quantization, inverse-quantizes the quantized data generated by the decoded
image Processing method.
[Requested item 23]
An encoding unit that generates encoded data by encoding the image,
quantum identify the quantization matrix reference data and the quantization matrix for identifying the reference destination of the quantization matrix when using a copy mode for copying a quantization matrix If the a-matrix identification data matches, the syntax semantics is set to point to the default quantization matrix corresponding to the same size as the block size is a processing unit when quantizing, by the encoding unit a setting unit that sets a syntax of generated encoded data
image processing apparatus comprising a.
[Requested item 24]
The image is encoded to generate encoded data and
the quantization matrix identification data identifying the quantization matrix reference data and the quantization matrix for identifying the reference destination of the quantization matrix when using a copy mode for copying a quantization matrix If the bets are matched, the syntax semantics is set to point to the default quantization matrix corresponding to the same size as the block size is a processing unit when quantizing the syntax of the generated encoded data to set
an image processing method.
Corrected claims (Convention Article 19)
[June 14, 2013 (14.06.2013) The International Bureau acceptance]
[1]
[Corrected] limited upconverted quantization matrix obtained by up-converted to the same size as the block size, which is the processing unit of the inverse quantizing the quantization matrix below the transmission size is the maximum size allowed during transmission the substitution factor used when replacing the coefficient located at the head of, by adding a substituted difference coefficient which is a difference between the coefficient and the replacement coefficient located at the head of the quantization matrix, the head of the quantization matrix a setting unit that sets a coefficient located,
up-converts the set quantization matrix by the setting unit, and the up-converting unit that sets the upconverted quantization matrix,
up-conversion, which is set by the up conversion section the coefficient located at the head of the quantization matrix, and replacing replacing unit to the replacement coefficient,
position at the beginning by the replacement unit Coefficients are using the up-conversion quantization matrix replaced with the replacement coefficients, the inverse quantization unit for inverse quantizing the quantized data obtained by decoding the coded data
image processing apparatus comprising a.
[2]
[Corrected] The setting unit is the difference between the set initial value to the quantization matrix and the replacement coefficients, by adding the initial value, and sets the replacement coefficient
image according to claim 1 processing equipment.
[3]
The setting unit uses a differential coefficient the a difference between the coefficient between the substituted difference coefficient and the quantization matrix, sets the coefficients of the quantization matrix
image processing apparatus according to claim 2.
[4]
[Corrected] the difference value of replacement coefficients and said initial value, said replacement difference coefficient, and the difference coefficients are collectively transmitted,
the setting unit are collectively transmitted the difference value, the substituted difference coefficient and using the difference coefficient, sets the coefficients of the quantization matrix
image processing apparatus according to claim 3.
[5]
[Corrected] the difference value, the substituted difference coefficient, and the difference coefficient is coded,
the setting unit, encoded the difference value, the substituted difference coefficient, and decoding the differential coefficient
the image processing apparatus according to claim 3.
[6]
The up-converting unit by performing the nearest neighbor interpolation process on the matrix elements of the quantization matrix, upconverts the limited quantization matrix below the transfer size
image processing apparatus according to claim 1.
[7]
The transmission size is 8x8,
the up-converting unit by performing the nearest neighbor interpolation process on the matrix elements of 8x8 size for quantization matrix, upconverts the quantization matrix of 16x16 size
claim 6 the image processing apparatus according to.
[8]
The up-converting unit by performing the nearest neighbor interpolation process on the matrix elements of 8x8 size for quantization matrix, upconverts the quantization matrix of 32x32 sized
image processing apparatus according to claim 6.
[9]
A transform unit is a processing unit when the conversion processing and coding unit is a processing unit in decoding process has a hierarchical structure,
the coded data, and decoding processing by the unit having a hierarchical structure wherein further comprising a decoding unit that generates a quantized data,
the up-conversion unit, the quantization matrix is up-converted to the size of the transform unit is a processing unit for performing inverse quantization from said transmission size
in claim 1 the image processing apparatus according.
[10]
[Corrected] limited upconverted quantization matrix obtained by up-converted to the same size as the block size, which is the processing unit of the inverse quantizing the quantization matrix below the transmission size is the maximum size allowed during transmission the substitution factor used when replacing the coefficient located at the head of, by adding a substituted difference coefficient which is a difference between the coefficient and the replacement coefficient located at the head of the quantization matrix, the head of the quantization matrix set the coefficients located,
up-converts the set quantization matrices, and sets the up-conversion quantization matrix,
the coefficients located in the top of the set up-converted quantization matrix is replaced with the replacement coefficients ,
using coefficients located in the top of the up-conversion quantization matrix replaced with the replacement coefficients, quantized de decoding the encoded data Dequantizing data
image processing method.
[11]
And [corrected] coefficient located at the head of the limited quantization matrix in which the following transfer size maximum size allowed during transmission, the processing unit at the time of inverse quantization of the quantization matrix block size a setting unit that sets a replacement difference coefficient which is a difference between the replacement coefficients used when replacing the coefficient located at the head of the up-converted upconverted quantization matrix to the same size as,
the image is quantized, and the quantized data a quantization unit to be produced,
the coded data of the quantized data generated by the quantization unit is coded, the replacement coefficient data obtained by encoding the replacement coefficients, the replacement difference coefficient set by the setting unit a transmission unit for transmitting the replacement differential coefficient data obtained by encoding
image processing apparatus comprising a.
[12]
[Corrected] The setting unit sets a difference value between the initial value set in the quantization matrix and the replacement coefficients,
the transmission unit, the difference value set by the setting unit, the replacement transmitted as coefficient data
image processing apparatus according to claim 11.
[13]
The setting unit sets a difference coefficient which is a difference between coefficients between the quantization matrix,
the transmission unit transmits the difference coefficient data obtained by encoding the difference coefficient set by the setting unit
in claim 12 the image processing apparatus according.
[14]
[Corrected] the transmission unit, the replacement coefficient data, the substituted difference coefficient data, and transmits together the differential coefficient data
image processing apparatus according to claim 13.
[15]
[Corrected] the transmission unit, the replacement coefficient data, the substituted difference coefficient data, and transmits the order of the differential coefficient data
image processing apparatus according to claim 14.
[16]
The quantization unit, using the quantization matrix or the up-conversion quantization matrix to quantize the image
image processing apparatus according to claim 11.
[17]
A transform unit is a processing unit when the conversion processing and coding unit is a processing unit when performing encoding processing has a hierarchical structure,
code for encoding the quantized data generated by the quantization unit further comprising a unit
image processing apparatus according to claim 11.
[18]
And [corrected] coefficient located at the head of the limited quantization matrix in which the following transfer size maximum size allowed during transmission, the processing unit at the time of inverse quantization of the quantization matrix block size set substituted difference coefficient which is a difference between the replacement coefficients used when replacing the coefficient located at the head of the up-converted upconverted quantization matrix to the same size as,
the image is quantized, and generates quantized data,
and coded data of the generated quantized data obtained by encoding, and transmits the replacement coefficient data obtained by encoding the replacement coefficients, and a set is replaced difference coefficient data of a substituted difference coefficient is coded which
image processing method.
[19]
[Delete]
[20]
[Delete]
[21]
[Delete]
[22]
[Delete]
[23]
[Delete]
[24]
[Delete]
Instructions under the Convention Article 19 (1)
Claims 1 and 10, and up-converted to the same size as the block size is a unit of processing time of dequantizing a limited quantization matrix below the transmission size is the maximum size allowed during transmission the substitution factor used when replacing the coefficient located at the head of the up-conversion quantization matrix, by adding the substituted difference coefficient which is a difference between the coefficient and the replacement coefficient located at the head of the quantization matrix, the quantum set the coefficient located at the head of matrices, upconverts the set quantization matrix, setting the upconverted quantization matrices, the coefficients located in the top of the set up-converted quantization matrix , it is replaced with the replacement coefficients, and, the up-conversion quantization matrix coefficients located at the head is replaced with the replacement coefficients Used, it made it clear that inversely quantizes the quantized data obtained by decoding the coded data.
Claims 11 and claim 18, processing for inverse quantization and the coefficient located at the head of the limited quantization matrix below the transmission size is the maximum size allowed, the quantization matrix during transmission setting the substitution difference coefficient which is a difference between the replacement coefficients used when replacing the coefficient located at the head of the up-conversion quantization matrix obtained by up-converted to the same size as the block size is a unit, the image is quantized, quantization data to generate, as well as the coded data of the generated quantized data obtained by encoding, and replacement coefficient data obtained by encoding the replacement coefficients, substituted difference coefficient of which encodes the substitution differential coefficient set It made it clear to transmit data.
The present invention is, for example, is to be able to suppress an increase in code amount of scaling list.
| # | Name | Date |
|---|---|---|
| 1 | 201918031968-TRANSLATIOIN OF PRIOIRTY DOCUMENTS ETC. [07-08-2019(online)].pdf | 2019-08-07 |
| 2 | 201918031968-STATEMENT OF UNDERTAKING (FORM 3) [07-08-2019(online)].pdf | 2019-08-07 |
| 3 | 201918031968-REQUEST FOR EXAMINATION (FORM-18) [07-08-2019(online)].pdf | 2019-08-07 |
| 4 | 201918031968-PRIORITY DOCUMENTS [07-08-2019(online)].pdf | 2019-08-07 |
| 5 | 201918031968-POWER OF AUTHORITY [07-08-2019(online)].pdf | 2019-08-07 |
| 6 | 201918031968-FORM 18 [07-08-2019(online)].pdf | 2019-08-07 |
| 7 | 201918031968-FORM 1 [07-08-2019(online)].pdf | 2019-08-07 |
| 8 | 201918031968-DRAWINGS [07-08-2019(online)].pdf | 2019-08-07 |
| 9 | 201918031968-DECLARATION OF INVENTORSHIP (FORM 5) [07-08-2019(online)].pdf | 2019-08-07 |
| 10 | 201918031968-COMPLETE SPECIFICATION [07-08-2019(online)].pdf | 2019-08-07 |
| 11 | 201918031968-CLAIMS UNDER RULE 1 (PROVISIO) OF RULE 20 [07-08-2019(online)].pdf | 2019-08-07 |
| 12 | abstract.jpg | 2019-08-29 |
| 13 | 201918031968-FORM 3 [27-01-2020(online)].pdf | 2020-01-27 |
| 14 | 201918031968-Proof of Right [29-01-2020(online)].pdf | 2020-01-29 |
| 15 | 201918031968-OTHERS-310120.pdf | 2020-02-03 |
| 16 | 201918031968-Correspondence-310120.pdf | 2020-02-03 |
| 17 | 201918031968-FER_SER_REPLY [19-07-2021(online)].pdf | 2021-07-19 |
| 18 | 201918031968-DRAWING [19-07-2021(online)].pdf | 2021-07-19 |
| 19 | 201918031968-CORRESPONDENCE [19-07-2021(online)].pdf | 2021-07-19 |
| 20 | 201918031968-COMPLETE SPECIFICATION [19-07-2021(online)].pdf | 2021-07-19 |
| 21 | 201918031968-CLAIMS [19-07-2021(online)].pdf | 2021-07-19 |
| 22 | 201918031968-ABSTRACT [19-07-2021(online)].pdf | 2021-07-19 |
| 23 | 201918031968-FER.pdf | 2021-10-18 |
| 24 | 201918031968-PatentCertificate13-06-2024.pdf | 2024-06-13 |
| 25 | 201918031968-IntimationOfGrant13-06-2024.pdf | 2024-06-13 |
| 1 | searchE_17-02-2021.pdf |