WO2010067799A1 - 符号化方法、復号方法、それらの装置、プログラム及び記録媒体 - Google Patents
符号化方法、復号方法、それらの装置、プログラム及び記録媒体 Download PDFInfo
- Publication number
- WO2010067799A1 WO2010067799A1 PCT/JP2009/070550 JP2009070550W WO2010067799A1 WO 2010067799 A1 WO2010067799 A1 WO 2010067799A1 JP 2009070550 W JP2009070550 W JP 2009070550W WO 2010067799 A1 WO2010067799 A1 WO 2010067799A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- code
- encoding
- separation parameter
- prediction residual
- encoding method
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
Definitions
- the present invention relates to a technique for predictive analysis and encoding of a time series signal, and more particularly, to a prediction residual encoding method, a decoding method, an apparatus thereof, a program, and a recording medium.
- FIG. 1 is a block diagram for explaining a functional configuration of a conventional lossless compression coding apparatus 2100.
- FIG. 2 is a block diagram for explaining a functional configuration of the residual encoding unit 2120 shown in FIG.
- FIG. 3 is a block diagram for explaining the functional configuration of a conventional lossless compression coding type decoding apparatus 2200.
- FIG. 4 is a block diagram for explaining a functional configuration of residual decoding section 2220 shown in FIG.
- a sampled and quantized PCM (pulse code modulation) time series signal x (n) (n is an index indicating discrete time) is input to the frame buffer 2111 of the encoding device 2100.
- a time series signal x (n) at a certain time point n and M points in the past from the time point n (M is a positive integer; M is referred to as “prediction order”) n ⁇ .
- M is a positive integer; M is referred to as “prediction order”
- linear prediction coefficient the prediction residual e (n) (sometimes called "prediction error")
- a linear prediction model based on this assumption is as follows.
- linear prediction analysis include sequential methods such as the Levinson-Durbin method and Burg method, and simultaneous equations (prediction residuals) for each prediction order, such as the autocorrelation method and the covariance method. There is a method of solving a simultaneous equation) having a linear prediction coefficient that minimizes the difference.
- a time series signal y (n) at a certain time point n is converted into M time points n-1, n-2,..., NM time series signals x (n-1),
- a linear FIR (Finite Impulse Response) filter of the following equation that is estimated using x (n-2), ..., x (nM) is called a "linear prediction filter”.
- the “quantized PARCOR coefficient” may be the quantized value of the PARCOR coefficient itself or an index attached to the quantized value of the PARCOR coefficient.
- the prediction residual e (n) that is the result of the calculation is calculated (prediction filter processing).
- the calculated prediction residual e (n) is a value expressed by an integer in a predetermined range.
- the input time-series signal x (n) is expressed in an integer format with a finite number of bits, and the output value of the linear prediction filter that uses the linear prediction coefficient that is integerized by rounding off the decimal point, etc. as the filter coefficient
- the linear prediction value y (n) is used, a value obtained by subtracting the linear prediction value y (n) from the time series signal x (n) is used as the prediction residual e (n), so that an integer of a finite number of bits is obtained.
- a prediction residual e (n) expressed in the form (represented by an integer in a predetermined range) is obtained.
- the prediction residual e (n) may be expressed in an integer format with a finite number of bits.
- the optimal value of the rice parameter s is the amplitude of the input prediction residual e (n) (for example, depending on the average amplitude of one or more prediction residuals e (n) belonging to a certain time interval).
- the rice parameter s may be generated for each frame, or may be generated for each subframe that is each time interval obtained by dividing the frame into a plurality of frames.
- the separation calculation unit 2122a calculates an integer quotient q (n) and information sub (n) for specifying the remainder corresponding to the integer quotient by a predetermined division using them.
- This division is basically an operation of dividing the prediction residual e (n) by the modulus 2 s .
- division is a process of removing the lower bits when the dividend is expressed in multiple bits, and the quotient expresses the dividend in multiple bits. The remainder is the lower bits when the dividend is expressed in multiple bits.
- the alpha encoding unit 2122b converts the quotient q (n) into an alpha code (sometimes referred to as “unary code (unary code)”) to generate information prefix (n).
- the generated information prefix (n) and information sub (n) are input to the combining unit 2122c, and the combining unit 2122c converts the bit combination value prefix (n)
- the residual encoding unit 2120 outputs the residual code C e and an auxiliary code C c for specifying the Rice parameter s.
- the Rice parameter s is generated for each frame, information indicating not to perform sub-frame division, and the Rice parameter s itself is output as the auxiliary code C c.
- the difference between the rice parameter s generated for the first subframe and the rice parameter s generated for each adjacent subframe is calculated.
- the differential code C d that has been Golomu-Rice encoded and flag information indicating that the Rice parameter s has been generated for each subframe are output as the auxiliary code C c .
- the coefficient code C k generated by the predictive encoding unit 2110, the residual code C e and the auxiliary code C c generated by the residual encoding unit 2120 are sent to the combining unit 2130, where they are combined and code C g Is generated.
- Code C g input to the decoding device 2200 is divided into a coefficient code C k and the residual code C e and the complementary code C c by the demultiplexer 2210.
- the coefficient code C k is input to the prediction decoding unit 2230, and the residual code C e and the auxiliary code C c are input to the residual decoding unit 2220.
- Residual decoding unit 2220 obtains the Rice parameter s from the input auxiliary code C c. For example, when the auxiliary code C c includes the flag information described above, first, the Rice parameter restoration unit 2222 first generates the Rice parameters s generated for the adjacent subframes from the difference code C d included in the auxiliary code C c. Restore differences between. Then, Rice parameter restoration unit 2222, and the difference, using the Rice parameter s of the leading subframe to the complementary code C c comprises, restores the Rice parameter s of the second and subsequent sub-frame.
- the Rice parameter s included in the auxiliary code C c is the Rice parameter s of the frame corresponding to the auxiliary code C c. It is. Further, the Golomb-Rice decoding unit 2221 of the residual decoding unit 2220 separates the input residual code C e to information prefix (n) and information sub and (n). The separated information prefix (n) is decoded by the alpha decoding unit 2221c to generate a quotient q (n). Then, the information sub (n), the quotient q (n), and the rice parameter s are input to the synthesis operation unit 2221b, and the synthesis operation unit 2221b decodes the prediction residual e (n) using these.
- An object of the present invention is to improve a coding compression rate related to coding of a prediction residual.
- a method in which the quotient is encoded by another method, instead of the above-described alpha encoding, can be assumed.
- the parameters that specify the modulus for calculating the quotient described above are collectively referred to as “separation parameters”.
- auxiliary information including such a separation parameter is variable-length encoded.
- the encoding compression rate of the separation parameter is improved.
- decoding a code corresponding to the prediction residual a code in which auxiliary information including such a separation parameter is variable-length encoded is decoded to generate the separation parameter, and the separation parameter is used.
- the code corresponding to the prediction residual is decoded.
- the coding compression rate related to the coding of the prediction residual is improved.
- FIG. 5A is a diagram illustrating the frequency distribution of the separation parameter (Rice parameter) of Golomb-Rice coding
- FIG. 5B is a diagram illustrating the frequency distribution of the license.
- FIG. 10A is a correspondence table for illustrating the correspondence between the code table stored in the code table storage unit of the residual encoding unit and the code table storage unit of the residual decoding unit, the separation parameter, and the index. is there.
- FIG. 10B is a diagram for illustrating the relationship between the frequency with which each code table illustrated in FIG. 10A is selected, the separation parameter s, and the index h.
- FIGS. 11A to 11C are diagrams for illustrating the code table of the correspondence table of FIG.
- FIG. 6 is an example of a code table corresponding to variable length coding performed by the variable length coding unit of the residual coding unit and decoding method performed by the variable length decoding unit of the residual decoding unit.
- FIG. 14A is a flowchart for illustrating details of step S20 in FIG. 13, and
- FIG. 14B is a flowchart for illustrating details of step S30 in FIG.
- the flowchart for illustrating the detail of step S150 The block diagram for demonstrating the function structure of the residual encoding part in the modification 1 of 1st Embodiment.
- FIG. 23A is a correspondence table for illustrating the correspondence between the code table storage unit and the code table T [h, s] stored in the code table storage unit, the separation parameter s, and the index h.
- FIG. 23B is a diagram for illustrating the relationship between the frequency with which each code table illustrated in the correspondence table of FIG.
- 24A and 24C are diagrams for illustrating the correspondence relationship between the code table storage unit and the code table T [h, s] stored in the code table storage unit, the separation parameter s, and the index h. It is a correspondence table. 24B and 24D show the relationship between the frequency with which each code table exemplified in the correspondence table shown in FIGS. 24A and 24C is selected, the separation parameter s, and the index h. It is a figure for illustrating.
- FIG. 27A is a correspondence table for illustrating the correspondence between the code table stored in the code table storage unit of the residual encoding unit and the code table storage unit of the residual decoding unit, the separation parameter, and the index. is there.
- FIG. 27B is a diagram for illustrating the relationship between the frequency with which each code table illustrated in the correspondence table of FIG. 27A is selected, the separation parameter s (upper / lower), and the index h. is there.
- 28A and 28B are diagrams for illustrating the code table of the correspondence table in FIG. 6 is an example of a code table corresponding to variable length coding performed by the variable length coding unit of the residual coding unit and decoding method performed by the variable length decoding unit of the residual decoding unit.
- the block diagram for demonstrating the function structure of the residual encoding part in 2nd Embodiment The block diagram for demonstrating the function structure of the residual decoding part in 2nd Embodiment.
- the block diagram for demonstrating the function structure of the residual decoding part in 2nd Embodiment In order to illustrate the relationship between the frequency of the code table, the separation parameter s, and the index h i for variable length coding of the quotient q (n) selected for each subframe by the code table selection unit of the residual coding unit Illustration.
- the flowchart for demonstrating the encoding method of 2nd Embodiment The flowchart for demonstrating the decoding method of 2nd Embodiment.
- the block diagram for demonstrating the function structure of the residual decoding part in 3rd Embodiment To illustrate the relationship between the frequency of the code table, the separation parameter s i, and the index h for variable length coding of the quotient q (n) selected for each subframe by the code table selection unit of the residual coding unit Illustration.
- the flowchart for demonstrating the encoding method of 3rd Embodiment The flowchart for demonstrating the decoding method of 3rd Embodiment.
- Predictive analysis such as linear prediction analysis (sometimes called “short-term prediction analysis"), long-term prediction analysis, multi-channel prediction analysis, etc. is performed on time-series signals such as acoustic signals, video information, biological signals, and seismic signals.
- a unique bias occurs in the amplitude of the prediction residual (unknown).
- the separation parameter depends on the amplitude of the prediction residual (for example, depends on the average amplitude of one or more prediction residuals belonging to a certain time interval), and the frequency distribution of the separation parameter has its own bias (non- Known).
- this property is used to variable-length code auxiliary information including separation parameters.
- this principle will be described.
- the integer-predicted prediction residual obtained from the prediction analysis result of the time-series signal is encoded by the Golomb-Rice encoding method or a modified method of the Golomb-Rice encoding method. That is, this prediction residual encoding method includes (A) ⁇ ⁇ ⁇ ⁇ setting an integer separation parameter for each predetermined time interval, and (B) information including first information and second information. And outputting as a code corresponding to at least a part of the residual.
- the first information described above is information for specifying an integer quotient obtained by division.
- the dividend of the above division is an integer of 0 or more that monotonously increases in accordance with the increase in the prediction residual or the size of the prediction residual.
- the modulus of division described above is an integer (an integer that is a separation parameter or a mapping value of the separation parameter) that depends on the separation parameter set for the time interval to which the prediction residual belongs.
- the above-mentioned second information is information specifying a remainder relating to the modulus of the above-mentioned dividend.
- the code corresponding to one of the prediction residuals may include the first information but not the second information.
- an integer of 0 or more that increases monotonously according to an increase in the magnitude of the prediction residual is, for example, an integer of 0 or more that increases monotonously according to an increase in the absolute value of the prediction residual, or a negative prediction residual.
- the quotient obtained by the division in step (B) becomes smaller as the modulus increases, and tends to be close to 0.
- the quotient is widely distributed in a range depending on the size of the dividend.
- the remainder corresponding to the quotient is more biased and distributed to a smaller value as the modulus is smaller, and the bias is smaller and distributed in a wider range as the modulus is larger. That is, as the modulus number is larger, the information amount of the first information specifying the quotient can be reduced, but the information amount of the second information specifying the remainder tends to increase.
- an appropriate modulus In order to reduce the code amount of the prediction residual code (sometimes referred to as “code length”), an appropriate modulus must be used according to the amplitude of the prediction residual, in other words, the prediction residual.
- Appropriate separation parameters must be used depending on the amplitude of the difference. Such a separation parameter depends on the amplitude of the prediction residual, and since the amplitude of the prediction residual has its own bias, the frequency distribution of the separation parameter also has its own bias (unknown).
- (C) the auxiliary information is variable-length encoded for each auxiliary information including the separation parameter.
- the encoding compression rate of the separation parameter is improved.
- variable length coding are alpha coding, delta coding, Huffman coding, Golombrice coding, Golomb coding, and other entropy coding.
- the above-described separation parameter is an integer that monotonously increases (monotonic non-decrease) in accordance with an increase in the amplitude of the prediction residual, and the above-mentioned modulus number is an integer that monotonously increases as the separation parameter increases. is there.
- the above-described separation parameter is an integer that monotonously decreases in accordance with an increase in the amplitude of the prediction residual
- the above-described modulus is an integer that monotonously increases in accordance with the decrease in the separation parameter.
- condition 1 is an integer in which the separation parameter is monotonically increasing in a broad sense in accordance with an increase in the average amplitude of the prediction residual in a certain time interval
- the modulus is an integer in which the modulus is monotonously increasing in accordance with the increase in the separation parameter. It is a condition that there is.
- condition 2 is an integer in which the separation parameter is monotonically decreasing in a broad sense in accordance with an increase in the average amplitude of the prediction residual in a certain time interval
- the modulus is an integer in which the modulus is monotonously increasing in accordance with a decrease in the separation parameter. It is a condition that there is.
- the separation parameter is an integer that minimizes the total code amount of the Rice parameter in the Golomb-Rice code, the mapping value of the Rice parameter, or the prediction residual code in a predetermined time interval.
- the modulus is a power value with 2 as the base and the separation parameter or the mapping value of the separation parameter as an exponent.
- An example of the mapping value of the Rice parameter is the sum of the Rice parameter and a positive or negative integer constant.
- the sum of the Rice parameter and a negative integer constant (for example, “ ⁇ 1”) is set as a separation parameter in consideration of expansion of the degree of freedom based on the encoding method. It is desirable.
- the separation parameter is a mapping value of the Rice parameter
- the separation parameter set in the time interval is the prediction residual or the prediction that belongs to the time interval. It is desirable that the mapping value of the residual is smaller than the Rice parameter for Golombrice coding.
- the value minimization means not only minimizing the value in a strict sense but also making the value approximateable to be the minimum, or making the value less than or less than a predetermined threshold value. It is a concept that includes
- the frequency at which the separation parameter whose distance from the predetermined specific value is the first distance is selected is such that the distance from the predetermined specific value is greater than the first distance. It becomes higher than the frequency with which the separation parameter, which is a large second distance, is selected.
- This “predetermined specific value” is a value within the range that the separation parameter can take in order to make the modulus of step (B) equal to or greater than 1 and equal to or less than the maximum value of the dividend. This is a value excluding the lower limit value s min and the upper limit value s max of the range (s min or more and s max or less) that the separation parameter can take. For example, when the dividend is an integer of 0 or more and less than 2 B (B is an integer of 3 or more), the “predetermined specific value” is an integer of 1 or more and B-2 or less.
- the above-mentioned “predetermined specific value” is a value within a range that the separation parameter can take in order to set the modulus of step (B) to 1 or more and not more than the maximum value of the dividend, for example,
- the above-mentioned “predetermined specific value” is (B ⁇ 1) / 2 rather than 0 and B ⁇ 1. Close value. If a specific example is given and the range which a separation parameter can take is the range of 0-7, the above-mentioned "predetermined specific value" is 2 or 3, for example. That is, the frequency distribution of the separation parameter is a distribution in which the frequency near the center of the range is higher than the frequency near the lower limit or upper limit of the range that the separation parameter can take.
- step (C) when the code length of the first code is shorter than the code length of the second code, the code length of the first code is longer than the code length of the second code
- the auxiliary information is variable-length encoded using more variable-length encoding methods.
- the first code is a code assigned to auxiliary information including a separation parameter whose distance from a predetermined specific value is the first distance.
- the second code is a code assigned to auxiliary information including a separation parameter whose distance from a predetermined specific value is the second distance. Further, the second distance is greater than the first distance.
- a prediction residual code is generated as follows. Where e (n) is the prediction residual, q (n) is an integer quotient, prefix (n) is the first information obtained by variable-length coding the quotient, and sub (n) specifies the remainder S is a separation parameter (Rice parameter in this example), and floor (x) is a maximum integer less than or equal to x.
- the quotient q (n) is generated in the step (B) as follows.
- prefix (n) floor ⁇ (2 ⁇
- -z) / 2 s ⁇ (z 0 or 1 or 2)... (7)
- prefix (n) is a code obtained by alpha-coding the quotient q (n), and the code length can be expressed as follows using Equation (7).
- the code length of the Golomb-Rice code length C (s, e (n), N) per frame (N samples) can be expressed as follows.
- equation (9) becomes Can be approximated.
- s for which the partial differential result for s in Equation (10) is 0 is as follows.
- the separation parameter s depends on the amplitude of the prediction residual e (n), and the value of the separation parameter s increases monotonously in a broad sense as the amplitude of the prediction residual e (n) increases. .
- the frequency distribution of the separation parameter s has its own bias.
- FIG. 5A is a diagram illustrating a frequency distribution of separation parameters (Rice parameters) for Golombrice coding.
- the horizontal axis of FIG. 5A shows the separation parameter s
- the prediction residual e (n) or the prediction residual e (n) obtained from the result of the linear prediction analysis of the acoustic signal is monotonically increased as the magnitude of the prediction residual e (n) increases. shows the frequency distribution of the calculated separation parameter s if an integer dividend is an integer from 0 to less than 2 8.
- the frequency distribution of the separation parameter s has its own bias. Specifically, the frequency at which the separation parameter whose distance from the predetermined specific value is the first distance is selected is a second frequency at which the distance from the predetermined specific value is greater than the first distance. It is higher than the frequency at which the separation parameter, which is distance, is selected.
- the first code described above is a code assigned to auxiliary information including the separation parameter s whose distance from the predetermined specific value is the first distance.
- the second code described above is a code assigned to auxiliary information including the separation parameter s whose distance from the predetermined specific value is the second distance (second distance> first distance).
- step (C) when the code length of the first code is shorter than the code length of the second code, the code length of the first code is longer than the code length of the second code.
- the auxiliary information is variable-length encoded using more variable-length encoding methods.
- the “predetermined specific value” in this Golomb-Rice coding example is, for example, a value within the range of 0 to 7 that can be taken by the separation parameter, and that is within the range that the separation parameter can take. It is a value excluding the lower limit value 0 and the upper limit value 7.
- the “predetermined specific value” in the case of taking the frequency distribution of FIG. 5A is, for example, 2 or 3 (end of explanation of ⁇ example of Golombrice coding>).
- the integer quotient q (n) calculated as described above (for example, the quotient q (n) exemplified in the equations (1) to (4)) is alpha-coded, and the prediction residual e ( Information prefix (n) that is a part of the code corresponding to n) is generated.
- the code length of the alpha code corresponding to the integer quotient q (n) (for example, the quotient q (n) exemplified in Equations (1) to (4)) calculated in the Golomb-Rice coding process (Including bit length) is called a lystale. That is, q (n) +1 is called a lystale.
- FIG. 5B is a diagram illustrating the frequency distribution of the lystale. Note that the horizontal axis of FIG. 5B represents the lysate, and the vertical axis represents the frequency of the lysate when the separation parameter s is 3. Further, in this figure, the frequency of each lye is normalized so that the total of the lye-tail frequency is 1.
- the integer quotient q (n) is encoded into an alpha code. If the integer quotient q (n) follows a Laplace distribution, encoding the integer quotient q (n) into an alpha code is an optimal variable length encoding. However, when the distribution of the integer quotient q (n) does not follow the Laplace distribution, the other variable length coding may be able to improve the coding compression rate. Therefore, in Principle 2, a plurality of variable-length encoding methods for variable-length encoding of the integer quotient q (n) are prepared, and an optimum variable-length encoding method is selected from the methods to perform encoding. .
- the first information is a code obtained by variable length coding the quotient
- step (B) includes (B-1) a step for obtaining a quotient and (B-2) a variable for coding the quotient with a variable length. Selecting a long encoding method for each predetermined time interval, and (B-3) using the variable length encoding method set for the time interval to which the prediction residual corresponding to the quotient belongs, And variable length coding to generate first information.
- Examples of variable length coding are alpha coding, delta coding, Huffman coding, Golombrice coding, Golomb coding, and other entropy coding.
- a plurality of variable length encoding methods prepared as candidates include variable length encoding methods other than the alpha encoding method.
- a plurality of types of Huffman tables for Huffman encoding an integer quotient q (n) are prepared, and an optimum Huffman table is selected from the tables to perform encoding.
- the Huffman table may include a code table for performing the same encoding as the alpha code.
- an encoding function is selected instead of selecting a code table. It may be a configuration.
- an encoding device selects an optimal variable length encoding method and encodes the quotient q (n)
- the decoding device if the decoding device cannot identify the variable length encoding method, the decoding device appropriately decodes I can't. Therefore, the encoding device generates a code corresponding to auxiliary information including an index indicating the variable length encoding method of the selected quotient q (n), and sends this to the decoding device.
- the coding compression rate is improved by devising a coding method of auxiliary information including this index.
- the optimum variable length coding method for coding auxiliary information including an index indicating the variable length coding method of the quotient q (n) has the following properties 1 and 2.
- a code having a shorter code length is assigned to auxiliary information including an index indicating a variable-length coding method of a quotient q (n) that is frequently selected.
- each of a plurality of auxiliary information including a certain separation parameter is variable-length encoded using the following specific variable-length encoding method.
- auxiliary information including a separation parameter having a certain same value
- the “specific auxiliary information” is auxiliary information including an index for specifying a variable length coding method for performing alpha coding or variable length coding closest to alpha coding.
- the variable length coding method described above is used, which is more than when the code length of the third code is longer than the code length of the fourth code.
- the auxiliary information including the index may be variable-length encoded.
- the fourth code is a code assigned to auxiliary information including an index for specifying a first encoding method for performing first variable length encoding different from alpha encoding.
- the third code is a code assigned to auxiliary information including an index for specifying a second encoding method for performing second variable length encoding closer to alpha encoding than the first variable length encoding. It is.
- the auxiliary information may be variable-length encoded using such a variable-length encoding method. That is, according to the size of the separation parameter for specifying the modulus, “the code length of the third code is shorter than the code length of the fourth code. It may be decided whether or not to use “a larger number of variable length coding methods than in the case of longer”.
- variable length coding method when the modulus increases monotonously with an increase in the separation parameter, such a variable length coding method can be used when the separation parameter is equal to or greater than a “predetermined threshold value”.
- a “predetermined threshold value” in this case is a value within a range that the separation parameter can take in order to make the modulus of step (B) equal to or greater than 1 and equal to or less than the maximum value of the dividend.
- variable length coding method when the modulus decreases monotonously with the increase of the separation parameter, such a variable length coding method may be used when the separation parameter is equal to or less than a “predetermined threshold value”.
- the “predetermined threshold value” in this case is a value within a range that the separation parameter can take in order to make the modulus of step (B) equal to or greater than 1 and equal to or less than the maximum value of the dividend.
- the distance between the two variable length encoding methods can be defined as follows, for example.
- the bit length of the code assigned to the encoding target value k in the variable length encoding method U is bu (k)
- the bit length of the code assigned to the encoding target value k in the variable length encoding method X is bx (k).
- the separation parameter and the index indicating the selected encoding method may be encoded independently.
- the separation parameter and the index An index may be integrated and variable length coding may be performed for each piece of auxiliary information including these. That is, the auxiliary information may include the separation parameter generated in step (A) and the index for specifying the encoding method selected in step (B-2).
- information in which separation parameters corresponding to each subframe are combined may be variable-length encoded. That is, the prediction residual is obtained from the result of predictive analysis of the time series signal for each frame that is a predetermined time interval, and step (A) includes each time interval obtained by further dividing the frame into a plurality of time intervals. Is a step of setting a separation parameter for each subframe, wherein step (B) is a step of generating a code including the first information and the second information, and step (C) belongs to the same frame
- the auxiliary information may be variable length encoded.
- the first information in this case is set for the subframe to which the prediction residual belongs, with the prediction residual or an integer of 0 or more that increases monotonously according to the increase in the size of the prediction residual as a dividend.
- This is information that specifies an integer quotient obtained by division with an integer that depends on the separation parameter (an integer that is a separation parameter or a mapping value of the separation parameter) as a modulus.
- the second information in this case is information for specifying a remainder relating to the modulus of the dividend.
- information in which an index corresponding to each subframe is combined may be variable-length encoded. That is, the prediction residual is obtained from the result of predictive analysis of the time-series signal for each frame that is a predetermined time interval, and step (B-2) is obtained by further dividing each frame into a plurality of frames.
- step (B-3) is a variable length coding method set for a subframe to which a prediction residual corresponding to a quotient belongs Is used to generate the first information by variable-length encoding the quotient, and the auxiliary information specifies the separation parameter and the encoding method selected for each subframe belonging to the same frame. It may include a combination with a combined index obtained by combining the indexes.
- FIG. 6 is a block diagram for explaining the functional configuration of the encoding apparatus 100 according to the first embodiment
- FIG. 7 is a block diagram for explaining the functional configuration of the residual encoding unit 120 shown in FIG.
- FIG. 8 is a block diagram for explaining the functional configuration of the decoding apparatus 200 according to the first embodiment
- FIG. 9 is a block diagram for explaining the functional configuration of the residual decoding unit 220 shown in FIG. FIG.
- the same components as those in FIGS. 1 to 4 are denoted by the same reference numerals as those in FIGS. 1 to 4 and description thereof is omitted.
- the encoding apparatus 100 includes a predictive encoding unit 2110, a residual encoding unit 120, and a combining unit 1130.
- the residual encoding unit 120 includes a separation parameter generation unit 121, an encoding unit 122, and a variable length encoding unit 123.
- the separation parameter generation unit 121 includes a parameter calculation unit 121a and a quantization unit 121b
- the encoding unit 122 includes a separation calculation unit 2122a, a synthesis unit 2122c, a Huffman encoding unit 122b, a code table selection unit 122d, And a code table storage unit 122e.
- the decoding device 200 of this embodiment includes a separation unit 1210, a residual decoding unit 220, and a prediction decoding unit 2230.
- the residual decoding unit 220 includes a decoding unit 221 and a variable length decoding unit 222.
- the decoding unit 221 includes a separation unit 2221a, a composition calculation unit 2221b, a Huffman decoding unit 221c, and a code table storage unit 221e.
- the encoding apparatus 100 and the decoding apparatus 200 are provided in a known or dedicated computer having a CPU (central processing unit), a RAM (random-access memory), a ROM (read-only memory), and the like.
- This is a special device that is configured by the program being read and executed by the CPU. That is, the frame buffer 2111 and the code table storage units 122e and 221e are, for example, a memory such as a RAM, a cache memory, and a register, and the other processing units are constructed by, for example, the CPU executing a predetermined program. Is a processing unit. Further, at least a part of these processing units may be configured by an electronic circuit such as an integrated circuit.
- the encoding device 100 or the decoding device 200 may be provided with a temporary memory that stores data output by the processing of each processing unit and reads the data during another processing of each processing unit.
- the method for realizing each processing unit is the same in the following embodiments and modifications thereof.
- FIG. 10A illustrates the correspondence relationship between the code table stored in the code table storage unit 122e of the residual encoding unit 120 and the code table storage unit 221e of the residual decoding unit 220, the separation parameter, and the index. It is a correspondence table.
- FIG. 10B is a diagram for illustrating the relationship between the frequency with which each code table illustrated in FIG. 10A is selected, the separation parameter s, and the index h.
- 11A to 11C are diagrams for illustrating a code table of the correspondence table of FIG. In these code tables, an input value to be encoded, a code corresponding to the input value, and a bit length of the code are associated with each other.
- FIG. 12 is an example of a code table corresponding to variable length coding performed by the variable length coding unit 123 of the residual coding unit 120 and decoding method performed by the variable length decoding unit 222 of the residual decoding unit 220. is there.
- the quotient q (n) is stored in the code table storage unit 122e of the residual encoding unit 120 (FIG. 7) and the code table storage unit 221e of the residual decoding unit 220 (FIG. 9).
- a code table T [h, s] indicating each of a plurality of variable length encoding methods for encoding is stored.
- the code table T [h, s] is set to M (s) (M (s) is an integer of 1 or more) for each separation parameter s, and each code table T [h, s] is specified individually.
- An index h is attached. The index h may be different for each code table T [h, s].
- each code table T [h, s] of this embodiment is set for each separation parameter s, the separation parameter s is the same. It is sufficient to assign different indexes h to different code tables T [h, s]. Therefore, in this embodiment, it is assumed that each code table T [h, s] is specified by a combination of the separation parameter s and the index h.
- Each code table T [h, s] is associated with a set of separation parameter s and index h, and one code table T [h, s] is specified by specifying a set of separation parameter s and index h Is done.
- the code table T [h, s] specified by the set of the separation parameter s and the index h in the code table storage unit 122e is specified by the set of the separation parameter s and the index h in the code table storage unit 221e. This is the same as the code table T [h, s].
- An example of the code table T [h, s] stored in the code table storage unit 122e and the code table storage unit 221e is a Huffman table for Huffman encoding, which includes the same code as that of alpha encoding.
- a Huffman table for performing the conversion may be included.
- a Huffman table for performing the same encoding as the alpha code is set as the code table T [0,3] (FIG. 11A), and the code table T [1,3] As the code table T [2,3], a Huffman table for performing Huffman coding different from the alpha code is set (FIGS. 11B and 11C).
- the encoding apparatus 100 selects the optimum separation parameter s and the index h for specifying the quotient variable-length coding method described above, and the frequency distribution between the selected separation parameter s and the index h is selected. Is biased as described above.
- a preceding dividend 0 to 2. 8 below integer (8-bit representation integer), the range of the separation parameter s can be taken is not less 0 to 7, the distance from the 3 first Assume that the frequency at which the separation parameter s that is one distance is selected is higher than the frequency at which the separation parameter s that is a second distance whose distance from 3 is larger than the first distance.
- the index h of this embodiment has a smaller value as the code table T [h, s] corresponding to the index h is closer to the code table for performing the same variable length coding as the alpha coding, and is the same as the alpha coding. It is assumed that the value increases as the distance from the code table for performing the variable length coding is increased.
- the correspondence relationship between the size of the index h and the code table T [h, s] described here is an example, and the code table T [[ h, s] may be assigned a larger index h, or an index h closer to a specific value may be assigned.
- the above-described modulus increases as the separation parameter s increases. Therefore, as the separation parameter s increases, the quotient q (n) calculated in the above step (B) decreases and tends to be close to 0, and the frequency of approximation to the Laplace distribution increases.
- FIG. 10B illustrates the frequency of each selected code table T [h, s].
- ⁇ indicates that the frequency of selection is the highest
- ⁇ indicates that the frequency of selection next is high
- ⁇ indicates that the frequency of selection is lower than that.
- the separation parameter s close to 3 is frequently selected, and when the separation parameter s is 2 or more, the index h close to 0 is selected (close to the alpha code).
- Such frequency distribution is pre-learned and optimally variable to encode the auxiliary information [h, s] according to the frequency distribution of the auxiliary information [h, s] including the pair of separation parameter s and index h
- the code table of the long coding method is set in the variable length coding unit 123 and the variable length decoding unit 222 (for example, illustrated in FIG. 12).
- the auxiliary information [h, s] and the codes assigned thereto are associated one-to-one.
- the optimum variable-length coding method for coding the auxiliary information [h, s] is a code shorter as auxiliary information [h, s] specifying the code table T [h, s] that is selected more frequently.
- This is an encoding method in which a long code is assigned, and a code having a longer code length is assigned to auxiliary information [h, s] that specifies a code table T [h, s] that is selected less frequently.
- such an encoding method is a variable-length encoding method having the following two features.
- the first code in this example is a code assigned to the auxiliary information [h, s] including the separation parameter s whose distance from 3 (corresponding to “predetermined specific value”) is the first distance.
- the second code in this example is a code assigned to auxiliary information [h, s] including a separation parameter s whose distance from 3 (corresponding to a “predetermined specific value”) is the second distance. . Further, the second distance is greater than the first distance.
- the code length of the third code is shorter than the code length of the fourth code, More than the case where the code length of the third code is longer than the code length of the fourth code.
- the fourth code is a code assigned to the auxiliary information [h, s] including the index h for specifying the first encoding method for performing the first variable length encoding different from the alpha encoding.
- the third code includes auxiliary information [h, including an index h for specifying a second encoding method for performing the second variable length encoding closer to the alpha encoding than the first variable length encoding. s].
- the bit length of a code assigned to the encoding target value k in alpha encoding is bu (k), and the encoding target value k is set in some variable length encoding.
- the bit length of the code to be assigned is bx (k)
- fu (k) 0.5 bu (k)
- fx (k) 0.5 bx (k) , (bu (k) ⁇ bx (k) ) (fu (k) ⁇ fx (k))
- the smaller the sum for each k the closer the variable length coding is to alpha coding.
- FIG. 13 is a flowchart for explaining the encoding method of the first embodiment.
- FIG. 14A is a flowchart for illustrating details of step S20 in FIG. 13, and
- FIG. 14B is a flowchart for illustrating details of step S30 in FIG.
- the encoding method of this embodiment will be described with reference to these drawings.
- the sampled and quantized PCM-format time series signal x (n) is input to the predictive coding unit 2110 of the coding apparatus 100 (FIG. 6).
- These time-series signals x (n) may be linearly quantized (sometimes referred to as “uniform quantization”), or companded (eg, ITU-T Recommendation G. 711, “Pulse Code Modulation (PCM) of Voice Frequencies”) may be used for nonlinear quantization (sometimes referred to as “non-uniform quantization”).
- PCM Pulse Code Modulation
- the time series signal x (n) may not be a signal in the PCM format but a signal that is not quantized.
- the predictive coding unit 2110 may be configured to perform linear prediction analysis of the input time-series signal x (n) as it is, or linearly input the time-series signal x (n) input after nonlinear quantization. The configuration may be such that linear prediction analysis is performed after mapping to quantization or other nonlinear quantization.
- the prediction residual e (n) input to the residual encoding unit 120 is a value expressed as an integer, for example, an integer from ⁇ (2 8 ⁇ 1) to + (2 8 ⁇ 1).
- the prediction residual e (n) input to the residual encoding unit 120 (FIG. 7) is sent to the separation parameter generation unit 121, and the separation parameter generation unit 121 depends on the magnitude of the prediction residual e (n).
- An integer separation parameter s to be set is set for each frame and output (step S20).
- the parameter calculation unit 121a of the separation parameter generation unit 121 calculates, for each frame, a continuous amount parameter s ′ that monotonously increases according to an increase in the amplitude of the prediction residual e (n) according to the following equation. (Step S21).
- the continuous quantity parameter s ' is input to the quantization unit 121b, and the quantization unit 121b generates and outputs a separation parameter s obtained by quantizing the continuous quantity parameter s' into an integer value (step S22).
- This quantization is, for example, a process of mapping a continuous quantity parameter s ′ in the range of s ⁇ s ′ ⁇ s + 1 to a separation parameter s that is an integer (explanation of [detailed example of step S20]) the end).
- the encoding unit 122 (FIG. 7), and generates and outputs a residual code C e corresponding to the prediction residuals e (n) (step S30 ⁇ S60).
- At least part of the residual code C e includes first information prefix (n) and a second information sub (n).
- the first information prefix (n) in this example is information specifying an integer quotient q (n) obtained by division.
- the dividend of the division is an integer greater than or equal to 0 that monotonously increases as the size of the prediction residual e (n) or the prediction residual e (n) increases.
- the modulus of the division is an integer that depends on the separation parameter s set for the time interval to which the prediction residual e (n) belongs (separation parameter s or an integer that is a mapping value of the separation parameter s). is there.
- the second information sub (n) in this example is information for specifying a remainder relating to the modulus of the dividend.
- a part of the residual code C e may not include the second information sub (n).
- the prediction residual e (n) input to the residual encoding unit 120 and the separation parameter s output from the separation parameter generation unit 121 are input to the separation calculation unit 2122a of the encoding unit 122.
- This separation parameter s is set for the frame to which the input prediction residual e (n) belongs.
- the separation calculation unit 2122a uses these as a dividend, which depends on the separation parameter s, with the prediction residual e (n) or an integer greater than or equal to 0 monotonically increasing in accordance with the increase in the size of the prediction residual e (n).
- Generate and output integer quotient q (n) obtained by division with integer modulo and information sub (n) (corresponding to "second information") for specifying the remainder (Step S30).
- e (n) ⁇
- an integer quotient q (n) is generated according to the above equation (1) (step S33a), and a remainder is specified according to the above equation (5).
- Information sub (n) is generated and output (step S34a). Note that “2 s ⁇ 1 ” in the equation (1) corresponds to “an integer (modulus number) depending on the separation parameter s”.
- step S32a determines whether e (n) ⁇ 0 is satisfied. If it is determined in step S32a that e (n) ⁇ 0 is not satisfied, the separation calculation unit 2122a generates an integer quotient q (n) according to the above equation (2) (step S33b), and the above equation ( According to 6), information sub (n) for specifying the remainder is generated and output (step S34b).
- ( ⁇ e (n) ⁇ 1)” in Equation (2) corresponds to “an integer greater than or equal to 0 (dividend) that monotonously increases with an increase in the size of the prediction residual e (n)”.
- “2 s ⁇ 1 ” corresponds to “an integer (modulus) depending on the separation parameter s”.
- step S34c the separation calculation unit 2122a generates a quotient q (n) according to the above-described equation (4) (step S33d), and sub (n) is null.
- the code table selection unit 122d outputs auxiliary information [h, s] including an index h for specifying the variable length encoding method selected for each frame and the input separation parameter s.
- the auxiliary information [h, s] may be information including only the index h and the separation parameter s, or may be information obtained by adding additional information such as a header to the auxiliary information [h, s].
- the auxiliary information [h, s] of each frame output from the code table selection unit 122d and the quotient q (n) (n 1,...) Output from the separation calculation unit 2122a corresponding to the frame. , N) is input to the Huffman encoder 122b.
- the Huffman encoding unit 122b searches the code table storage unit 122e using the auxiliary information [h, s], and extracts the code table T [h, s] corresponding to the auxiliary information [h, s]. Then, the Huffman coding unit 122b performs variable length coding on each quotient q (n) belonging to the frame using the extracted code table T [h, s] to obtain information prefix (n) (in “first information”). Equivalent) is generated and output (step S50).
- the information prefix (n) output from the Huffman encoding unit 122b and the information sub (n) output from the separation operation unit 2122a are input to the synthesis unit 2122c.
- the synthesizer 2122c uses a code including information prefix (n) (corresponding to “first information”) and information sub (n) (corresponding to “second information”) as at least one of the prediction residuals e (n). and outputs it as residual code C e corresponding to the section (step S60). For example, when sub (n) is not null, the synthesis unit 2122c synthesizes the information prefix (n) and the information sub (n) and leaves the bit combination value prefix (n)
- residual code C e may also include additional information such as a header other than the information prefix (n) and information sub (n).
- auxiliary information [h, s] output from the code table selection unit 122d is input to the variable length encoding unit 123.
- the variable length coding unit 123 uses the code table set as described above (for example, FIG. 12), performs variable length coding on the auxiliary information [h, s] for each auxiliary information [h, s], and performs auxiliary processing.
- the auxiliary code C c corresponding to the information [h, s] is generated and output (step S70).
- the synthesizer 1130 generates and outputs a code C g obtained by synthesizing these (step S80).
- FIG. 15 is a flowchart for explaining the decoding method according to the first embodiment.
- FIG. 16 is a flowchart for illustrating details of step S150.
- the decoding method of this embodiment will be described with reference to these drawings.
- the separation unit 1210 of the decoding device 200 (FIG. 8) separates the code C g input to the decoding device 200, and a coefficient code C k corresponding to the coefficient and a residual code corresponding to the prediction residual e (n).
- C e and the auxiliary code C c corresponding to the auxiliary information [h, s] are generated and output (step S110).
- the auxiliary code C c corresponding to the auxiliary information [h, s] is input to the variable length decoding unit 222.
- Variable length decoding unit 222 code table that is set as described above (e.g., FIG. 12) using the complementary code C c and variable length decoding, separation parameter s and, for specifying the variable length coding method
- the auxiliary information [h, s] including the index h is generated and output (step S120).
- the decoding unit 221 generates and outputs a prediction residual e (n) using the residual code C e corresponding to the prediction residual e (n) and the auxiliary information [h, s] (step) S130-S150)
- residual code C e corresponding to the prediction residuals e (n) are supplied to a separation unit 2221a of the residual decoding unit 220 (FIG. 9).
- Separation section 2221a separates the input residual code C e, the information prefix (n), and generates the information sub (n) and outputs (step S130).
- the separation unit 2221a obtains the information prefix (n) from the input residual code C e .
- the auxiliary information [h, s] output from the variable length decoding unit 222 and the information prefix (n) output from the separation unit 2221a are input to the Huffman decoding unit 221c.
- the Huffman decoding unit 221c searches the code table storage unit 221e using the auxiliary information [h, s], and extracts the code table T [h, s] corresponding to the auxiliary information [h, s]. Then, the Huffman decoding unit 221c decodes the information prefix (n) using the extracted code table T [h, s], and generates and outputs a quotient q (n) (step S140).
- the parameter s is input to the composition calculation unit 2221b.
- the combination calculation unit 2221b calculates and outputs a prediction residual e (n) using these (step S150).
- step S152a If it is determined in step S152a that sub (n) ⁇ 2 s ⁇ 1 , the synthesis calculation unit 2221b calculates and outputs a prediction residual e (n) by the following equation (step S153b).
- step S151 determines whether the information q (n) is an even number (step S152b). This determination corresponds to determining whether the prediction residual e (n) is 0 or more.
- step S152b determines whether the prediction residual e (n) is 0 or more.
- step S152b determines that q (n) is an odd number
- the synthesis calculation unit 2221b calculates and outputs a prediction residual e (n) by the following equation (step S153d).
- the encoding apparatus performs setting of separation parameters and encoding processing after mapping the prediction residual e (n) to an integer e ′ (n) of 0 or more. Further, the decoding device performs inverse transformation on the decoded integer e ′ (n) to restore the prediction residual e (n).
- the decoding device performs inverse transformation on the decoded integer e ′ (n) to restore the prediction residual e (n).
- FIG. 17 is a block diagram for explaining a functional configuration of the residual encoding unit 320 in the first modification of the first embodiment.
- FIG. 18 shows a residual decoding unit 420 in the first modification of the first embodiment. The block diagram for demonstrating the functional structure of is shown. In these drawings, items common to the first embodiment are denoted by the same reference numerals as those in the first embodiment, and description thereof is omitted.
- the residual encoding unit 320 includes a signal conversion unit 321, a separation parameter generation unit 121, an encoding unit 322, and a variable length encoding unit 123.
- the encoding unit 122 includes a separation calculation unit 322a, a synthesis unit 2122c, a Huffman encoding unit 122b, a code table selection unit 122d, and a code table storage unit 122e.
- the residual decoding unit 420 includes a decoding unit 221, a variable length decoding unit 222, and a signal inverse conversion unit 421.
- FIG. 19 is a flowchart for explaining an encoding method according to the first modification of the first embodiment.
- FIG. 20 is a flowchart for illustrating details of step S330 in FIG. Hereinafter, the encoding method of this modification is demonstrated using these figures.
- step S10 is executed, and the prediction residual e (n) input to the residual encoding unit 320 (FIG. 17) is input to the signal conversion unit 321.
- the signal conversion unit 321 maps the input prediction residual e (n) to an integer value e ′ (n) of 0 or more (step S210).
- This value e ′ (n) is an integer of 0 or more that monotonously increases in accordance with the increase in the magnitude of the prediction residual e (n). This mapping is performed according to a predetermined rule.
- the input prediction residual e (n) when the input prediction residual e (n) is 0 or more, it is mapped to an odd integer while maintaining the order of magnitude relationship, If the input prediction residual e (n) is less than 0, it is mapped to an even integer while maintaining the order of the magnitude relationship.
- step S220 The process of step S220 is the same as that of step S20 except that the prediction residual e (n) is replaced with the value e ′ (n).
- the first information prefix (n) in this example is information specifying an integer quotient q (n) obtained by division.
- the dividend of the division is a value e ′ (n) (corresponding to “an integer greater than or equal to 0 that monotonously increases in accordance with an increase in the size of the prediction residual e (n)”).
- the modulus of the division is an integer (separation parameter s or separation parameter) that depends on the separation parameter s set for the time interval to which the prediction residual e (n) corresponding to the value e ′ (n) belongs. Integer that is the mapping value of s).
- the second information sub (n) in this example is information for specifying a remainder relating to the modulus of the dividend. A part of the residual code C e may not include the second information sub (n).
- the value e ′ (n) output from the signal conversion unit 321 and the separation parameter s output from the separation parameter generation unit 121 are input to the separation calculation unit 322 a of the encoding unit 322.
- the separation parameter s is set for a frame of the prediction residual e (n) corresponding to the input value e ′ (n).
- the separation operation unit 322a uses these, the integer quotient q (n) obtained by division, with the value e ′ (n) as the dividend, and the integer depending on the separation parameter s, and the remainder corresponding thereto.
- Information sub (n) (corresponding to “second information”) is generated and output (step S330).
- the separation calculation unit 322a determines whether or not the input separation parameter s is 0 (step S331).
- the separation calculation unit 322a q (n) floor (e '(n) / 2 s )... (19)
- sub (n) e '(n) ⁇ 2 s ⁇ q (n)... (20)
- “2 s ” in Equation (19) corresponds to “an integer (modulus number) depending on the separation parameter s”.
- FIG. 21 is a flowchart for explaining a decoding method according to the first modification of the first embodiment.
- FIG. 22 is a flowchart for illustrating details of step S450.
- the decoding method of this modification will be described with reference to these drawings.
- the decoding unit 221 performs a residual code C e corresponding to the prediction residual e (n) and auxiliary information [h, s]. Are used to generate and output an integer value e ′ (n) of 0 or more that monotonously increases in accordance with the increase in the size of the prediction residual e (n) (steps S130, S140, S450).
- the separation parameter s included in the auxiliary information [h, s] output from the variable length decoding unit 222 is input to the synthesis operation unit 2221b.
- the composition calculation unit 2221b calculates and outputs a value e ′ (n) using these (step S450).
- step S452b end of description of details of step S450.
- the value e ′ (n) output from the synthesis operation unit 2221b is input to the signal inverse transform unit 421, and the signal inverse transform unit 421 performs inverse transform on the value e ′ (n) to predict the residual e (n). Is obtained and output (step S460).
- This inverse transformation is an inverse transformation of the processing of the signal conversion unit 321.
- the separation calculation unit 322a Regardless of whether s is 0 or not, the separation calculation unit 322a generates an integer quotient q (n) according to the equation (19), and information sub (n for specifying the remainder according to the equation (20) ) May be generated, and the composition calculation unit 2221b may calculate the value e ′ (n) using the equation (22).
- Modification 2 of the first embodiment is a modification of combinations of code tables stored in the code table storage units 122e and 221e of the residual encoding units 120 and 320 and the residual decoding units 220 and 420.
- This modification is a modification of combinations of code tables stored in the code table storage units 122e and 221e of the residual encoding units 120 and 320 and the residual decoding units 220 and 420.
- it demonstrates centering around difference with 1st Embodiment, and abbreviate
- FIG. 23A, FIG. 24A, and FIG. 24C show the code table T [h, s], the separation parameter s, and the index h stored in the code table storage unit 122e and the code table storage unit 221e. It is a correspondence table for illustrating the correspondence relationship. 23B, 24B, and 24D, the code tables illustrated in the correspondence tables in FIGS. 23A, 24A, and 24C are selected. It is a figure for exemplifying the relationship between the frequency to be separated, the separation parameter s, and the index h.
- the code table T [h, s] is not set for all the combinations of the separation parameter s and the index h within the setting range, but the codes for some combinations thereof are set.
- Table T [h, s] is not set. Note that “x” indicates that the code table T [h, s] is not set for the pair of the separation parameter s and the index h corresponding thereto (the same applies to other drawings).
- the separation parameter s can take any value of integer values (eg, 0, 1, 2, 3, 4,..., 7) that are continuous within a predetermined range, but are continuous within a predetermined range.
- a configuration in which only a value within a range obtained by thinning out some integers from the integer value (for example, 0, 2, 4, 6) may be employed.
- the auxiliary code C c corresponding to the auxiliary information [h, s] can be reduced in order to reduce the types of auxiliary information [h, s] to be variable-length encoded by the variable-length encoding unit 123 (FIG. 7 and the like). Can be reduced.
- a different code table is not set for each separation parameter s, but a plurality of common code tables are set for all the separation parameters s.
- one of the five code tables T [0, A] to T [4, A] is selected regardless of the value of the separation parameter s.
- one code table T [0, E] is set.
- FIG. 25 is a block diagram for describing a functional configuration of the residual encoding unit 520 in Modification 3 of the first embodiment.
- FIG. 26 is a block diagram for explaining a functional configuration of the residual decoding unit 620 according to Modification 3 of the first embodiment.
- portions common to the first embodiment are denoted by the same reference numerals as those of the first embodiment, and description thereof is omitted.
- the residual encoder 120 of the first embodiment is replaced with a residual encoder 520
- the residual decoder 220 of the first embodiment is replaced with a residual decoder 620. Will be replaced.
- the residual encoding unit 520 is obtained by replacing the encoding unit 122 and the variable length encoding part 123 of the residual encoding unit 120 with an encoding unit 522 and a variable length encoding part 523.
- the encoding unit 522 is obtained by replacing the code table selection unit 122d and the Huffman encoding unit 122b of the encoding unit 122 with a code table selection unit 522d and a Huffman encoding unit 522b.
- the residual decoding unit 620 is obtained by replacing the decoding unit 221 and the variable length decoding unit 222 of the residual decoding unit 220 with a decoding unit 621 and a variable length decoding unit 622, and the decoding unit 621 is the decoding unit 221.
- the Huffman decoding unit 221c is replaced with a Huffman decoding unit 621c.
- FIG. 27A illustrates the correspondence between the code table stored in the code table storage unit 122e of the residual encoding unit 520 and the code table storage unit 221e of the residual decoding unit 620, the separation parameter, and the index. It is a correspondence table.
- FIG. 27B is a diagram for illustrating the relationship between the frequency with which each code table illustrated in the correspondence table of FIG. 27A is selected, the separation parameter s (upper / lower), and the index h. is there.
- FIGS. 28A and 28B are diagrams for illustrating the code table of the correspondence table of FIG. In these correspondence tables, an input value to be encoded, a code corresponding to the input value, and a bit length of the code are associated with each other.
- FIG. 29 is an example of a code table corresponding to the variable length coding performed by the variable length coding unit 523 of the residual coding unit 520 and the decoding method performed by the variable length decoding unit 622 of the residual decoding unit 620. is there.
- a code table (a code table for variable-length coding the quotient q (n)) corresponding to the set of the separation parameter s and the index h is set.
- different code tables are set depending on whether the continuous quantity parameter s ′ corresponding to the separation parameter s is higher or lower. “The continuous quantity parameter s ′ corresponding to the separation parameter s is higher” means that the predetermined range of the continuous quantity parameter area quantized to the separation parameter s is divided into two sections. It means that the continuous quantity parameter s ′ belongs.
- the code table T [h, s, add] specified by the combination of the separation parameter s, the index h, and the additional information add in the code table storage unit 122e is the same as the separation parameter s and the index h in the code table storage unit 221e.
- the code table T [h, s] specified by the set of the separation parameter s and the index h in the code table storage unit 122e is specified by the set of the separation parameter s and the index h in the code table storage unit 221e. This is the same as the code table T [h, s].
- the frequency distribution (illustrated in FIG. 27B) of the selected code table T [h, s, add], T [h, s] is pre-learned and the separation parameter s and Auxiliary information [h, s, add] that is a set of index h and auxiliary information [h, s, add] that is a set of separation parameter s, index h, and additional information add indicating higher and lower levels is encoded.
- the code table of the optimum variable length coding method is set in the variable length coding unit 123 and the variable length decoding unit 222 (for example, illustrated in FIG. 29).
- the optimum variable length coding method for coding the auxiliary information [h, s, add] is as described in [Principle 2] and the first embodiment.
- the code table selection unit 522d uses the continuous quantity parameter s ′, and obtains a separation parameter s that is a quantized value of the continuous quantity parameter s ′ and additional information add that indicates the upper and lower order of the continuous quantity parameter s ′. Ask.
- the code table selection unit 522d refers to the code table storage unit 122e, and corresponds to each code table T [h, s] corresponding to the separation parameter s, or to the separation parameter s and additional information add.
- the code table selection unit 522d includes auxiliary information [h, s] including an index h and a separation parameter s for specifying a variable-length encoding method selected for each frame, or auxiliary information including additional information add [ h, s, add] is output.
- the code table selection unit 522d uses the continuous quantity parameter s ′ to obtain a separation parameter s that is a quantized value of the continuous quantity parameter s ′ and additional information add that indicates the upper and lower levels of the continuous quantity parameter s ′. Instead, the separation calculation unit 2122a may further obtain additional information add. In this case, the code table selection unit 522d selects a variable length encoding method for variable length encoding the quotient q (n) using the separation parameter s output from the separation operation unit 2122a and the additional information add. .
- the Huffman coding unit 122b uses the extracted code table T [h, s] or T [h, s, add] to variable-length code the quotient q (n) of the frame to obtain information prefix (n) (Corresponding to “first information”) is generated and output.
- the auxiliary information [h, s] or [h, s, add] of the frame output from the code table selection unit 522d is input to the variable length encoding unit 523.
- the variable length encoding unit 523 uses the code table set as described above (for example, FIG. 29), and for each auxiliary information [h, s] or [h, s, add], the auxiliary information [h, s ] or [h, s, the add] the variable-length coding, the side information [h, s] or [h, s, the add] to generate a corresponding auxiliary code C c and outputs it to.
- ⁇ Decoding method> The only difference from the first embodiment is the processing of the variable length decoding unit 622 (FIG. 15 / modification of step S120) and the processing of the Huffman decoding unit 621c (modification of step S140). Only these differences will be described below.
- variable length decoding unit 622 performs variable length decoding of the auxiliary code C c using the code table set as described above (for example, FIG. 29), and auxiliary information [h, s] or [h, s, add]. Is generated and output.
- the auxiliary information [h, s] or [h, s, add] output from the variable length decoding unit 622 and the information prefix (n) output from the separation unit 2221a are input to the Huffman decoding unit 621c.
- the Huffman decoding unit 621c searches the code table storage unit 221e using the auxiliary information [h, s] or [h, s, add], and stores the auxiliary information [h, s] or [h, s, add].
- a corresponding code table T [h, s] or T [h, s, add] is extracted.
- the Huffman decoding unit 621c decodes the information prefix (n) using the extracted code table T [h, s] or T [h, s, add], and generates and outputs a quotient q (n). .
- the prediction residual e (n) of this embodiment is obtained from the result of predictive analysis of a time series signal for each frame that is a predetermined time interval.
- a variable-length encoding method for variable-length encoding the quotient q (n) is selected for each subframe that is each time interval obtained by dividing a frame into a plurality of time intervals. Also, using the variable length coding method set for the subframe to which the prediction residual e (n) corresponding to the quotient q (n) belongs, the quotient q (n) is variable length coded and the first information Is generated.
- differences from the first embodiment will be mainly described, and description of matters common to the first embodiment will be omitted.
- ⁇ Configuration> The difference in configuration between the first embodiment and the second embodiment is that the residual encoding unit 120 of the encoding device 100 is replaced with a residual encoding unit 720, and the residual decoding unit 220 of the decoding device 200 is This is a point that is replaced by the residual decoding unit 820.
- FIG. 30 shows a block diagram for explaining the functional configuration of the residual encoding unit 720 in the second embodiment
- FIG. 31 shows the functional configuration of the residual decoding unit 820 in the second embodiment.
- a block diagram is shown.
- items common to the first embodiment are denoted by the same reference numerals as those in the first embodiment, and description thereof is omitted.
- the residual encoding unit 720 includes a separation parameter generation unit 121, an encoding unit 722, and a variable length encoding unit 723.
- the encoding unit 722 includes a separation calculation unit 2122a, a synthesis unit 2122c, a Huffman encoding unit 722b, a code table selection unit 722d, and a code table storage unit 122e.
- the residual decoding unit 820 includes a decoding unit 821 and a variable length decoding unit 822.
- the decoding unit 821 includes a separation unit 2221a, a composition calculation unit 2221b, a Huffman decoding unit 821c, and a code table storage unit 221e.
- the auxiliary information [H, s] including the combination with the combined index H h 1
- h 2 is variable-length encoded.
- FIG. 32 shows the code table frequency, separation parameter s, and index h i for variable length coding of the quotient q (n) selected for each subframe by the code table selection unit 722d of the residual coding unit 720. It is a figure for illustrating the relationship of.
- the index for the first subframe of each frame is denoted as h 1
- the index for the second half subframe is denoted as h 2 .
- H 01
- the index h 1 for specifying the variable-length encoding method selected in the first subframe is 0, and the variable-length encoding method selected in the second subframe is specified. This means that the index h 2 is 1.
- the code table selected in the first half subframe is T [h 1 , s]
- the frequency with which the code table selected in the latter subframe is T [h 2 , s] is shown. Note that the frequency notation method is the same as in the first embodiment.
- a preceding dividend 0 to 2.
- 8 below integer 8-bit representation integer
- the scope of the separation parameter s can take is 0 or more and 7 or less, of which settable separation It is assumed that the parameter s is limited to 0, 2, and 4.
- the frequency at which the separation parameter s whose distance from 2 is the first distance (the first distance is 0 in the example of FIG. 32) is selected is the second distance where the distance from 2 is larger than the first distance. Assume that the separation parameter is higher than the frequency of selection.
- the indexes h 1 and h 2 in this embodiment are code tables for performing variable length coding in which the corresponding code tables T [h 1 , s] and T [h 2 , s] are the same as the alpha coding. It is assumed that the value becomes smaller as the value approaches, and the value becomes larger as the value becomes farther from the code table for performing the same variable length coding as the alpha coding.
- Such a frequency distribution is pre-learned and is optimal for encoding the auxiliary information [H, s] according to the frequency distribution of the auxiliary information [H, s] including the pair of the separation parameter s and the combined index H.
- the code table of the variable length coding method is set in the variable length coding unit 723 and the variable length decoding unit 822.
- the optimum variable length coding method for coding the auxiliary information [H, s] is that the auxiliary information [H, s] with higher frequency is assigned a code with a shorter code length, and the auxiliary information [H, s with lower frequency is assigned.
- a code having a longer code length is assigned as [s].
- such an encoding method is a variable-length encoding method having the following two features.
- the first code in this example is a code assigned to the auxiliary information [H, s] including the separation parameter s whose distance from 2 (corresponding to a “predetermined specific value”) is the first distance. is there.
- the second code in this example is assigned to auxiliary information [H, s] including a separation parameter s whose distance from 2 (corresponding to a “predetermined specific value”) is the second distance. Further, the second distance is greater than the first distance.
- the code length of the third code is shorter than the code length of the fourth code, More than the case where the code length of the third code is longer than the code length of the fourth code.
- the fourth code is assigned to the auxiliary information [H, s] including the index h 1 or h 2 for specifying the first encoding method for performing the first variable length encoding different from the alpha encoding. Sign.
- the third code includes an index h 1 or h 2 for specifying a second encoding method for performing a second variable length encoding closer to the alpha encoding than the first variable length encoding. It is a code assigned to information [H, s].
- FIG. 33 is a flowchart for explaining the encoding method of the second embodiment.
- the encoding method of this embodiment will be described with reference to this figure.
- the quotient q (n) output from the separation operation unit 2122a and the separation parameter s output from the separation parameter generation unit 121 are code tables.
- the data is input to the selection unit 722d.
- the code table selection unit 722d selects a variable length encoding method for variable length encoding the quotient q (n) for each subframe using these (step S540).
- the code table selection unit 722d includes a combined index H obtained by combining indexes h 1 and h 2 for specifying a variable-length encoding method selected for each subframe constituting the same frame, and an input separation parameter s.
- an index for specifying an encoding method for variable-length encoding each quotient q (SFS (1)),..., Q (SFE (1)) corresponding to the first half subframe. Is expressed as h 1 .
- Each quotient belongs to the second half of the subframe q (SFS (2)), ..., q (SFE (2)) , respectively represented as h 2 index that identifies the coding method for variable length coding To do.
- the auxiliary information [H, s] may be information including only the combined index H and the separation parameter s, or may be information obtained by adding additional information such as a header to the auxiliary information [H, s].
- the auxiliary information [H, s] of each frame output from the code table selection unit 722d and the quotient q (n) (n 1,...) Output from the separation calculation unit 2122a corresponding to the frame. , N) is input to the Huffman encoder 722b.
- the Huffman coding unit 722b searches the code table storage unit 122e using the auxiliary information [H, s], and codes tables T [h 1 , s] and T [h] corresponding to the auxiliary information [H, s]. 2 , s].
- the Huffman coding unit 722b performs variable-length coding on each quotient q (n) corresponding to the first half subframe belonging to the frame using the extracted code table T [h 1 , s].
- the Huffman coding unit 722b performs variable length coding on each quotient q (n) corresponding to the latter half subframe belonging to the frame, using the extracted code table T [h 2 , s]. As a result, the Huffman coding unit 722b generates each information prefix (n) (corresponding to “first information”) corresponding to the frame (step S550).
- auxiliary information [H, s] output from the code table selection unit 722d is input to the variable length encoding unit 723.
- the variable length encoding unit 723 uses the code table set as described above, and generates the separation parameter s and an index h i (for specifying the encoding method selected for each subframe.
- the auxiliary information [H, s] is variable-length encoded, and auxiliary information [H, The auxiliary code C c corresponding to s] is generated (step S570).
- step S80 described in the first embodiment is executed.
- FIG. 34 is a flowchart for explaining the decoding method of the second embodiment. Hereinafter, the decoding method of this embodiment will be described with reference to this figure.
- the separation unit 1210 of the decoding device 200 separates the code C g input to the decoding device 200, and the coefficient code C k corresponding to the coefficient and the residual code C corresponding to the prediction residual e (n). e and the auxiliary information [H, s] to generate the complementary code C c corresponding to (step S610).
- the auxiliary code C c corresponding to the auxiliary information [H, s] is input to the variable length decoding unit 222, and the variable length decoding unit 822 uses the code table set as described above to change the auxiliary code C c to the variable length.
- the auxiliary information [H, s] including the combination of the separation parameter s and the integrated index H is generated by decoding (step S620).
- the Huffman decoding unit 821c searches the code table storage unit 221e using the auxiliary information [H, s], and code tables T [h 1 , s] and T [h 2 ] corresponding to the auxiliary information [H, s]. , s].
- the Huffman decoding unit 821c decodes information prefix (n) corresponding to the first half subframe using the extracted code table T [h 1 , s] to generate a quotient q (n), and T [ The information prefix (n) corresponding to the latter half subframe is decoded using h 2 , s] to generate the quotient q (n) (step S640).
- the prediction residual e (n) is obtained from a result of predictive analysis of a time-series signal for each frame that is a predetermined time interval, and each time interval obtained by further dividing the frame into a plurality of time intervals.
- the code corresponding to the prediction residual in this embodiment is set for the subframe to which the prediction residual or an integer of 0 or more that increases monotonically according to the increase in the size of the prediction residual is used as a dividend.
- the auxiliary information including the combined parameter S obtained by combining the separation parameters s i set for the respective subframes belonging to the same frame is variable-length encoded.
- ⁇ Configuration> The difference in configuration between the first embodiment and the third embodiment is that the residual encoding unit 120 of the encoding device 100 is replaced with a residual encoding unit 920, and the residual decoding unit 220 of the decoding device 200 is This is a point that is replaced by the residual decoding unit 1020.
- FIG. 35 shows a block diagram for explaining the functional configuration of the residual encoding unit 920 in the third embodiment
- FIG. 36 shows the functional configuration of the residual decoding unit 1020 in the third embodiment.
- a block diagram is shown.
- items common to the first embodiment are denoted by the same reference numerals as those in the first embodiment, and description thereof is omitted.
- the residual encoding unit 920 includes a separation parameter generation unit 921, an encoding unit 922, and a variable length encoding unit 923.
- the separation parameter generation unit 921 includes a parameter calculation unit 921a and a quantization unit 121b.
- the encoding unit 922 includes a separation calculation unit 922a, a synthesis unit 2122c, a Huffman encoding unit 922b, a code table selection unit 922d, and a code table storage unit 122e.
- the residual decoding unit 1020 includes a decoding unit 1021 and a variable length decoding unit 1022.
- the decoding unit 1021 includes a separation unit 2221a, a synthesis operation unit 1021b, a Huffman decoding unit 1021c, and a code table storage unit 221e.
- the combined parameter S s 1
- s 2 obtained by combining the respective separation parameters s i (i 1, 2) set for the respective subframes belonging to the same frame,
- the auxiliary information [h, S] including the set of the index h for specifying the encoding method selected for the frame is variable-length encoded.
- the frequency distribution of the encoding method selected for variable length encoding of the quotient q (n) is biased, and the encoding method is specified. Therefore, the frequency distribution of the index h is biased.
- the frequency distribution of the separation parameter s i selected on the basis of minimizing the total code amount in the subframe is also biased.
- FIG. 37 shows the code table frequency, separation parameter s i and index h for variable length coding of the quotient q (n) selected for each subframe by the code table selection unit 922d of the residual coding unit 920. It is a figure for illustrating the relationship of.
- the separation parameter for the first subframe of each frame is denoted as s 1
- the separation parameter for the second half subframe is denoted as s 2 .
- the code table selected for each frame is T [h, s 1 ] (or T [h, s 2 ]) is shown. Note that the frequency notation method is the same as in the first embodiment.
- a preceding dividend 0 to 2.
- 8 below integer 8-bit representation integer
- the scope of the separation parameter s i can take is 0 or more and 7 or less, that of which can be set It is assumed that the separation parameter s i is limited to 0, 1, and 2. Further, when the frequency of selecting the separation parameter s i whose distance from 2 is the first distance is higher than the frequency of selecting the separation parameter whose second distance is larger than the first distance. Suppose.
- the index h in this embodiment is close to a code table for performing variable-length coding in which the corresponding code table T [h, s 1 ] (or T [h, s 2 ]) is the same as alpha coding It is assumed that the value decreases as the distance increases, and the value increases as the distance from the code table for performing the same variable length encoding as the alpha encoding.
- Such a frequency distribution is pre-learned and optimally variable to encode the auxiliary information [h, S] according to the frequency distribution of the auxiliary information [h, S] including the combination of the combination parameter S and the index h.
- the code table of the long coding method is set in the variable length coding unit 923 and the variable length decoding unit 1022.
- the optimum variable length coding method for coding the auxiliary information [h, S] is that the auxiliary information [h, S] having a higher frequency is assigned a code having a shorter code length, and the auxiliary information [h, S] having a lower frequency is assigned.
- S] is an encoding method in which a code having a longer code length is assigned. In the case of the above assumption, such an encoding method is a variable-length encoding method having the following two features.
- the first code in this example is the auxiliary information [h, S] including the separation parameter s 1 or s 2 whose distance from 2 (corresponding to “predetermined specific value”) is the first distance.
- the code to be assigned is the second code in this example.
- the second code in this example is the auxiliary information [h, S] including the separation parameter s 1 or s 2 whose distance from 2 (corresponding to “predetermined specific value”) is the second distance.
- the second distance is greater than the first distance.
- the code length of the third code is shorter than the code length of the fourth code, More than the case where the code length of the third code is longer than the code length of the fourth code.
- the fourth code is a code assigned to the auxiliary information [h, S] including the index h for specifying the first encoding method for performing the first variable length encoding different from the alpha encoding.
- the third code includes auxiliary information [h, including an index h for specifying a second encoding method for performing the second variable length encoding closer to the alpha encoding than the first variable length encoding. Is a code assigned to S].
- FIG. 38 is a flowchart for explaining the encoding method of the third embodiment.
- the encoding method of this embodiment will be described with reference to this figure.
- the prediction residual e (n) input to the residual encoding unit 920 (FIG. 35) is sent to the separation parameter generating unit 921.
- the parameter calculation unit 921a calculates the continuous amount parameter s i ′ for each subframe according to an equation in which N in Equation (14) is replaced with the number of samples of the subframe, and the calculated continuous amount parameter
- the quantization unit 121b quantizes s i 'to an integer value, and generates a separation parameter s i for each subframe.
- the prediction residual e (n) input to the residual encoding unit 920 and the separation parameter s i for each subframe output from the separation parameter generation unit 921 are input to the separation calculation unit 2122a of the encoding unit 922.
- the separation parameter s i is set for the subframe corresponding to the input prediction residual e (n).
- the separation calculation unit 922a uses these as a dividend for the prediction residual e (n) or an integer greater than or equal to 0 that increases monotonically according to the increase in the size of the prediction residual e (n), and depends on the separation parameter s i
- An integer quotient q (n) obtained by division with an integer to be modulo and information sub (n) (corresponding to “second information”) for specifying the corresponding remainder is generated (step) S730).
- step S730 The details of step S730 are the same as the detailed example of step S30 described above, for example.
- the quotient q (n) output from the separation calculation unit 922a and the separation parameter s 1 (or s 2 ) output from the separation parameter generation unit 921 are input to the code table selection unit 922d.
- the code table selection unit 922d selects an encoding method for variable-length encoding the quotient q (n) using these for each frame (step S740). That is, in this embodiment, the separation parameter s i is set for each subframe, but the encoding method for variable-length encoding the quotient q (n) is selected for each frame.
- the code table selection unit 922d refers to the code table storage unit 122e and sets the quotient q (n) for one frame for each code table T [h, s 1 ] corresponding to the input separation parameter s 1. The sum of the number of bits of each corresponding code is obtained, and a code table T [h, s 1 ] that minimizes the sum is selected for each frame.
- the code table selection unit 922d refers to the code table storage unit 122e, and each quotient q (n for one frame for each code table T [h, s 2 ] corresponding to the input separation parameter s 2 ) And the code table T [h, s 2 ] that minimizes the sum is selected for each frame.
- the code table selecting unit 922d includes a coupling parameter S that combines the respective separation parameter s i generated respectively for each sub-frame belonging to the same frame, each selected coding method for each frame
- the auxiliary information [h, S] including the index h for specifying is output.
- variable length coding unit 923 uses the code table set as described above, variable-length codes the auxiliary information [h, S] for each auxiliary information [h, S], and performs auxiliary information [h, S]. to generate a corresponding auxiliary code C c and outputs (step S770).
- step S80 described in the first embodiment is executed.
- FIG. 39 is a flowchart for explaining a decoding method according to the third embodiment. Hereinafter, the decoding method of this embodiment will be described with reference to this figure.
- the separation unit 1210 of the decoding device 200 (FIG. 8) separates the code C g input to the decoding device 200, and the coefficient code C k corresponding to the coefficient and the residual code C corresponding to the prediction residual e (n). e and auxiliary code C c corresponding to auxiliary information [h, S] are generated (step S810).
- the auxiliary code C c corresponding to the auxiliary information [h, S] is input to the variable length decoding unit 1022, and the variable length decoding unit 1022 uses the code table set as described above, and uses the auxiliary code C c as the variable length. Decoding is performed to generate and output auxiliary information [h, S] including the combination parameter S and the index h for specifying the encoding method (step S820).
- the auxiliary information [h, S] output from the variable length decoding unit 1022 and the information prefix (n) output from the separation unit 2221a Is input to the Huffman decoding unit 1021c.
- the Huffman decoding unit 1021c searches the code table storage unit 221e using the auxiliary information [h, S], and code table T [h, s 1 ] (or T [h] corresponding to the auxiliary information [h, S]. , s 2 ]).
- the Huffman decoding unit 1021c decodes the information prefix (n) using the extracted code table T [h, s 1 ] (or T [h, s 2 ]) to generate a quotient q (n) ( Step S840).
- the parameter s i is input to the composition calculation unit 1021b.
- the combination calculation unit 1021b calculates and outputs a prediction residual e (n) using these (step S850). In calculating the prediction residual e (n), the separation parameter s i for the subframe to which the quotient q (n) and the information sub (n) belong is used.
- a combination parameter s s 1
- s 2 obtained by combining each separation parameter s i set for each subframe belonging to the same frame and each subframe belonging to the same frame are selected.
- Auxiliary information [H, S] including a combination of the combined index H h 1
- differences from the first to third embodiments will be mainly described, and description of matters common to the first to third embodiments will be omitted.
- ⁇ Configuration> The difference in configuration between the first embodiment and the fourth embodiment is that the residual encoding unit 120 of the encoding device 100 is replaced with the residual encoding unit 1120, and the residual decoding unit 220 of the decoding device 200 is changed. This is a point that the residual decoding unit 1220 is replaced.
- FIG. 40 shows a block diagram for explaining the functional configuration of the residual encoding unit 1120 in the fourth embodiment
- FIG. 41 shows the functional configuration of the residual decoding unit 1220 in the fourth embodiment.
- a block diagram is shown.
- items common to the first to third embodiments are denoted by the same reference numerals as in the first to third embodiments, and description thereof is omitted.
- the residual encoding unit 1120 includes a separation parameter generating unit 921, an encoding unit 1122, and a variable length encoding unit 1123. Also, the encoding unit 1122 includes a separation calculation unit 922a, a synthesis unit 2122c, a Huffman encoding unit 922b, a code table selection unit 1122d, and a code table storage unit 122e.
- the residual decoding unit 1220 includes a decoding unit 1221 and a variable length decoding unit 1222.
- the decoding unit 1221 includes a separation unit 2221a, a synthesis operation unit 1021b, a Huffman decoding unit 1221c, and a code table storage unit 221e.
- the combined parameter S s 1
- s 2 obtained by combining the respective separation parameters s i (i 1, 2) set for the respective subframes belonging to the same frame
- a combination of a combination index H h 1
- h 2 obtained by combining indexes h i (i 1, 2) for specifying a coding method selected for each subframe belonging to the same frame.
- the included auxiliary information [H, S] is variable-length encoded.
- the frequency distribution of the coupling parameter S and the coupling index is biased.
- a preceding dividend 0 to 2.
- 8 below integer 8-bit representation integer
- the scope of the separation parameter s i can take is 0 or more and 7 or less, that of which can be set It is assumed that the separation parameter s i is limited to 0, 1, and 2. Further, when the frequency of selecting the separation parameter s i whose distance from 2 is the first distance is higher than the frequency of selecting the separation parameter whose second distance is larger than the first distance. Suppose.
- the index h i of this embodiment becomes smaller as the code table T [h i , s 1 ] corresponding to the index h i is closer to the code table for performing the same variable length coding as the alpha coding, and the alpha code It is assumed that the value increases as the distance from the code table for performing the same variable-length encoding as the encoding is increased.
- Such a frequency distribution is pre-learned and is optimal for encoding the auxiliary information [H, S] according to the frequency distribution of the auxiliary information [H, S] including the combination of the combination parameter S and the combination index H.
- the code table of the variable length coding method is set in the variable length coding unit 1123 and the variable length decoding unit 1222.
- the optimum variable length coding method for coding the auxiliary information [H, S] is that the auxiliary information [H, S] having a higher frequency is assigned a code having a shorter code length, and the auxiliary information [H, S S] is an encoding method in which a code having a longer code length is assigned.
- such an encoding method is a variable-length encoding method having the following two features.
- the first code in this example is a code assigned to the auxiliary information [H, S] including the separation parameter s i whose distance from 2 (corresponding to a “predetermined specific value”) is the first distance. It is.
- the second code in this example is a code assigned to auxiliary information [H, S] including a separation parameter s i whose distance from 2 (corresponding to a “predetermined specific value”) is the second distance. It is. Further, the second distance is greater than the first distance.
- the code length of the third code may be shorter than the code length of the fourth code More than the case where the code length of the third code is longer than the code length of the fourth code.
- the fourth code is assigned to the auxiliary information [H, S] including the index h 1 or h 2 for specifying the first encoding method for performing the first variable length encoding different from the alpha encoding. Sign.
- the third code includes an index h 1 or h 2 for specifying a second encoding method for performing a second variable length encoding closer to the alpha encoding than the first variable length encoding. It is a code assigned to information [H, S].
- FIG. 43 is a flowchart for explaining an encoding method according to the fourth embodiment. Hereinafter, the encoding method of this embodiment will be described with reference to this figure.
- step S10 described in the first embodiment is executed, and then the processes of steps S720 and S730 described in the third embodiment are executed.
- steps S540 and S550 described in the second embodiment is executed, and the process of step S60 described in the first embodiment is executed.
- the combined parameter S output from the code table selection unit 1122d which is generated by combining the separation parameters s i generated for the sub frames belonging to the same frame, and the sub frames belonging to the same frame
- the combined index H obtained by combining the indexes h i for specifying the selected encoding methods is input to the variable length encoding unit 1123.
- variable length coding unit 1123 performs variable length coding on the auxiliary information [H, S] including the combined parameter S and the combined index H for each auxiliary information [H, S], and adds the auxiliary information [H, S]. It generates a corresponding auxiliary code C c, and outputs (step S970). Thereafter, the process of step S80 described in the first embodiment is executed.
- FIG. 44 is a flowchart for explaining a decoding method according to the fourth embodiment. Hereinafter, the decoding method of this embodiment will be described with reference to this figure.
- the separation unit 1210 of the decoding device 200 separates the code C g input to the decoding device 200, and a coefficient code C k corresponding to the coefficient and a residual code corresponding to the prediction residual e (n).
- C e and the auxiliary code C c corresponding to the auxiliary information [H, S] are generated (step S1010).
- the auxiliary code C c corresponding to the auxiliary information [H, S] is input to the variable length decoding unit 1222.
- the variable length decoding unit 1222 performs variable length decoding on the auxiliary code C c using the code table set as described above, and generates auxiliary information [H, S] including the combined parameter S and the combined index H. And output (step S1020).
- the auxiliary information [H, S] output from the variable length decoding unit 1222 and the information prefix (n) output from the separation unit 2221a Is input to the Huffman decoding unit 1221c.
- the Huffman decoding unit 1221c searches the code table storage unit 221e using the auxiliary information [H, S], and code tables T [h 1 , s 1 ] and T [h] corresponding to the auxiliary information [H, S]. 2 , s 2 ] are extracted.
- the Huffman decoding unit 1021c decodes the information prefix (n) using the extracted code tables T [h 1 , s 1 ] and T [h 2 , s 2 ] to generate a quotient q (n) Output (step S1040). That is, for the first half subframe, the information prefix (n) is decoded using the code table T [h 1 , s 1 ] to generate the quotient q (n), and for the second half subframe, the code table T [h 2 , s 2 ] is used to decrypt the information prefix (n) to generate and output the quotient q (n). Thereafter, the process of step S850 described in the third embodiment is executed, and further, the processes of steps S160 and S170 described in the first embodiment are executed.
- auxiliary information including a combination of a separation parameter and an index
- auxiliary information including a combination of a separation parameter and an index
- auxiliary information including a combination of a combination parameter and an index
- a mode has been described in which auxiliary information including a set of parameters and a combined index is variable-length encoded for each auxiliary information.
- auxiliary information including a separation parameter but not including an index, and auxiliary information including an index but not including a separation parameter may be variable-length encoded for each auxiliary information.
- a separation parameter Huffman code and an index Huffman code may be generated independently, and a set of these Huffman codes may be a code corresponding to auxiliary information.
- a pair of Huffman codes of separation parameters and Huffman codes of indexes corresponding to the first subframes generated independently corresponds to auxiliary information of the first subframes.
- a pair of a separation parameter Huffman code and an index Huffman code may be used as the code corresponding to the auxiliary information of the latter subframe.
- first to third modifications of the first embodiment may be applied to the second to fourth embodiments, the first to third modifications may be combined, or the combination may be the second to fourth embodiments. You may apply to a form.
- auxiliary information including an index for specifying a code table such as a Huffman table is variable-length encoded.
- the encoding method is specified instead of an index for specifying the code table.
- Auxiliary information including an index for performing variable length coding may be used.
- the Rice parameter is used as the separation parameter.
- the above-described method can be applied to the encoding method of the quotient q (n).
- the amount of code corresponding to the prediction residual e (n) can be reduced by using a value smaller than the Rice parameter of the Golomb-Rice encoding method limited to the encoding method.
- the separation parameter set in the time interval may be smaller than the optimal rice parameter for the time interval. For example, a value obtained by subtracting a predetermined integer (for example, 1) from the rice parameter may be used as the separation parameter. Conversely, a value obtained by adding a predetermined integer (for example, 1) to the Rice parameter may be used as the separation parameter.
- 2 s or 2 s-1 is used as a modulus for division in the separation operation unit with respect to the separation parameter s.
- the separation parameter itself is 2 s or 2 s-1.
- the separation parameter itself may be a modulus for division in the separation operation unit.
- the separation parameter s is an integer.
- the separation parameter s may be a real value that can take a value other than an integer.
- the above-described continuous quantity parameter s ′ may be called a “separation parameter”.
- the processing illustrated in FIG. 14B or FIG. 16 may be executed using the continuous quantity parameter s ′ instead of the integer separation parameter s.
- an optimal separation parameter is set, and division in the separation operation unit is performed using the set separation parameter to specify the quotient q (n) and the remainder.
- Sought information sub (n) in order to specify the quotient q (n) and the remainder by setting the separation parameter by selecting integers in order from a predetermined set of integers and performing division in the separation operation unit using each set separation parameter.
- the information sub (n) may be obtained, the sum of the information amounts of the obtained quotient q (n) and information sub (n) may be calculated, and a separation parameter that minimizes the information amount may be employed.
- each of the above embodiments is an example in which the present invention is applied when encoding a prediction residual obtained based on a result of linear prediction analysis of a time series signal.
- long-term prediction analysis such as pitch prediction analysis, inter-channel prediction analysis, combination of linear prediction analysis and long-term prediction analysis, combination of linear prediction analysis and long-term prediction analysis and inter-channel prediction analysis, linear prediction analysis and channel Prediction residuals obtained based on the results of combination with inter prediction analysis (for example, “Yu Kamamoto, Takehiro Moriya, Takuya Nishimoto, Shigeki Hiyama,“ Lossless compression coding of multi-channel signals using channel correlation , "Science theory, Vol.46, No.5, pp.1118-1128, 2005.” "Yama Kamamoto, Takehiro Moriya, Noboru Harada, Takuya Nishimoto, Shigeki Hiyama,” ISO / IEC MPEG-4 This is used to encode long-term predictions within and between channels in Audio Lossless Coding (ALS), such as "Science, Vol.46
- the program describing the processing contents can be recorded on a computer-readable recording medium.
- a computer-readable recording medium for example, any recording medium such as a magnetic recording device, an optical disk, a magneto-optical recording medium, and a semiconductor memory may be used.
- this program is distributed by selling, transferring, or lending a portable recording medium such as a DVD or CD-ROM in which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of the server computer and transferring the program from the server computer to another computer via a network.
- a computer that executes such a program first stores, for example, a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device.
- the computer reads a program stored in its own recording medium and executes a process according to the read program.
- the computer may directly read the program from the portable recording medium and execute processing according to the program, and the program is transferred from the server computer to the computer.
- the processing according to the received program may be executed sequentially.
- the program is not transferred from the server computer to the computer, and the above-described processing is executed by a so-called ASP (Application Service Provider) type service that realizes a processing function only by an execution instruction and result acquisition. It is good.
- the program in this embodiment includes information that is used for processing by an electronic computer and that conforms to the program (data that is not a direct command to the computer but has a property that defines the processing of the computer).
- the present apparatus is configured by executing a predetermined program on a computer.
- a predetermined program on a computer.
- at least a part of these processing contents may be realized by hardware.
- a lossless compression encoding / decoding technique of an acoustic signal can be exemplified.
- the present invention can be applied to lossless compression encoding / decoding techniques such as video signals, biological signals, and seismic signals in addition to audio signals.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
符号化装置2100のフレームバッファ2111には、標本化・量子化されたPCM (pulse code modulation)形式の時系列信号x(n)(nは離散時間を示すインデックス)が入力される。フレームバッファ2111は、予め定められた時間区間(以下、「フレーム」と呼ぶ)分の時系列信号x(n)(n=1,...,N)(Nは正の整数)をバッファする。バッファされた1フレーム分の時系列信号x(n)(n=1,...,N)は予測符号化部2110の線形予測分析部2112に送られ、線形予測分析部2112は、線形予測分析によって1次からM次までのPARCOR係数k(m)(m=1,2,...,M)を算出して出力する。
線形予測分析の具体例としては、レビンソン・ダービン(Levinson-Durbin)法やバーグ(Burg)法などの逐次的方法や、自己相関法や共分散法のように予測次数ごとに連立方程式(予測残差を最小にする線形予測係数を解とする連立方程式)を解く方法などがある。
算出されたPARCOR係数k(m)(m=1,...,M)は、量子化部2113に送られ、量子化されて量子化PARCOR係数i(m)(m=1,...,M)が生成される。なお、「量子化PARCOR係数」は、PARCOR係数の量子化値そのものであってもよいし、当該PARCOR係数の量子化値に付されたインデックスであってもよい。量子化PARCOR係数i(m)(m=1,...,M)は、係数符号化部2114に送られ、そこで可変長符号化される。また、量子化PARCOR係数i(m)(m=1,...,M)は、線形予測係数変換部2115にも送られ、線形予測係数変換部2115は、これらを用いて線形予測係数α(m)(m=1,2,...,M)を算出する。線形予測部2016は、1フレーム分の時系列信号x(n)(n=1,...,N)と各線形予測係数α(m)(m=1,...,M)とを用い、線形予測フィルタによって線形予測値y(n)(n=1,...,N)を生成し、減算部2117は、時系列信号x(n)から線形予測値y(n)を減算した結果である予測残差e(n)を算出する(予測フィルタ処理)。
復号装置2200に入力された符号Cgは、分離部2210で係数符号Ckと残差符号Ceと補助符号Ccとに分離される。係数符号Ckは予測復号部2230に入力され、残差符号Ce及び補助符号Ccは残差復号部2220に入力される。
音響信号、映像情報、生体信号、地震波信号などの時系列信号に対し、線形予測分析(「短期予測分析」と呼ぶ場合もある)、長期予測分析、マルチチャネル予測分析などの予測分析を行って予測残差を求めた場合、その予測残差の振幅には独自の偏りが生じる(非公知)。また、分離パラメータは予測残差の振幅に依存し(例えば、或る時間区間に属する1個以上の予測残差の平均振幅に依存)、分離パラメータの頻度分布にも独自の偏りが生じる(非公知)。本形態ではこの性質を利用し、分離パラメータを含む補助情報を可変長符号化する。以下、この原理を説明する。
以上のことを、分離パラメータがゴロムライス符号化のライスパラメータである場合について説明する。
ゴロムライス符号化では、例えば、以下のように予測残差の符号を生成する。ただし、e(n)は予測残差であり、q(n)は整数の商であり、prefix(n)は商を可変長符号化した第1情報であり、sub(n)は剰余を特定する第2情報であり、sは分離パラメータ(この例ではライスパラメータ)であり、floor(x)はx以下の最大の整数である。
q(n)=floor{(-e(n)-1)/2s-1} (for e(n)<0) …(2)
一方、分離パラメータs=0の場合、ステップ(B)では以下のように商q(n)を生成する。
q(n)=-2・e(n)-1 (for e(n)<0) …(4)
また、分離パラメータs>0の場合、ステップ(B)で使用される剰余を特定する第2情報sub(n)は以下のように特定される。
sub(n)=(-e(n)-1)-2s-1・q(n) (for e(n)<0) …(6)
一方、分離パラメータs=0の場合、剰余を特定する第2情報sub(n)は存在しない(sub(n)=null)。
或る時間区間の予測残差e(n)に対応する符号の総符号量を最小化する整数が分離パラメータsとなる。例えば、各フレームにおける予測残差e(n)(n=1,...,N)に対する符号の総符号量をそれぞれ最小化する整数を当該フレームの分離パラメータsとしてもよい。また、各サブフレームにおける予測残差e(n)(n=SFS,...,SFE)(SFS≦SFE, SFS,SFE∈{1,...,N})に対応する符号の総符号量をそれぞれ最小化する整数を当該サブフレームの分離パラメータsとしてもよい。以下では、各フレームにおける予測残差e(n)(n=1,...,N)に対応する符号の総符号量をそれぞれ最小化する整数を当該フレームの分離パラメータsとする。
ゴロムライス符号化の場合、prefix(n)は商q(n)をアルファ符号化した符号であり、その符号長は、式(7)を用いて以下のように表現できる。
また、ゴロムライス符号化の場合、式(5)(6)の剰余を特定する第2情報sub(n)はsビットで表現される。よって、1フレーム(Nサンプル)あたりのゴロムライス符号の符号長C(s,e(n),N)の符号長は、以下のように表現できる。
ここで、D/Nがzよりも十分大きいならば以下の式が近似できる。
式(12)で得られる値sは整数化されていない連続値であるため、式(12)で得られる値sを整数に量子化した値を分離パラメータsとする。
式(12)に示すように、分離パラメータsは予測残差e(n)の振幅に依存し、分離パラメータsの値は予測残差e(n)の振幅の増加に応じて広義単調増加する。そして、この分離パラメータsの頻度分布には独自の偏りがある。
本形態では、上記の原理1に加え、好ましくは以下の原理2を採用することで、予測残差の符号化に関する符号化圧縮率をさらに向上させる。
E=Σ(bu(k)-bx(k))(fu(k)-fx(k)) …(13)
を可変長符号化方法Uと可変長符号化方法Xとの距離と定義する。この距離Eが小さいほど、可変長符号化方法Uと可変長符号化方法Xとは近く、類似する。
次に、本発明の第1実施形態を説明する。
図6は、第1実施形態の符号化装置100の機能構成を説明するためのブロック図であり、図7は、図6に示した残差符号化部120の機能構成を説明するためのブロック図である。また、図8は、第1実施形態の復号装置200の機能構成を説明するためのブロック図であり、図9は、図8に示した残差復号部220の機能構成を説明するためのブロック図である。なお、これらの図において図1から図4と同じ構成については、図1から図4と同じ符号を用い、説明を省略する。
図10(A)は、残差符号化部120の符号表格納部122e及び残差復号部220の符号表格納部221eに格納される符号表と分離パラメータ及びインデックスとの対応関係を例示するための対応表である。また、図10(B)は、図10(A)に例示した各符号表が選択される頻度と分離パラメータs及びインデックスhとの関係を例示するための図である。また、図11(A)~(C)は、図10(A)の対応表の符号表を例示するための図である。これらの符号表では、符号化対象である入力値と、それに対応する符号と、その符号のビット長とが対応付けられている。また、図12は、残差符号化部120の可変長符号化部123が行う可変長符号化、及び残差復号部220の可変長復号部222が行う復号方法に対応する符号表の例示である。
図13は、第1実施形態の符号化方法を説明するためのフローチャートである。また、図14(A)は、図13のステップS20の詳細を例示するためのフローチャートであり、図14(B)は、図13のステップS30の詳細を例示するためのフローチャートである。以下、これらの図を用いて本形態の符号化方法を説明する。
本形態では、まず、分離パラメータ生成部121のパラメータ演算部121aが以下の式に従って、予測残差e(n)の振幅の増加に応じて単調増加する連続量パラメータs’をフレームごとに算出して出力する(ステップS21)。
まず、分離演算部2122aは、入力された分離パラメータsが0であるか否かを判定する(ステップS31)。ここで、s=0でなかった場合、分離演算部2122aは、入力された予測残差e(n)が0以上であるか否かを判定する(ステップS32a)。ここで、e(n)≧0であると判定された場合、前述の式(1)に従って整数の商q(n)を生成し(ステップS33a)、前述の式(5)に従って剰余を特定するための情報sub(n)を生成して出力する(ステップS34a)。なお、式(1)における「2s-1」が「分離パラメータsに依存する整数(法数)」に相当する。一方、ステップS32aでe(n)≧0でないと判定された場合、分離演算部2122aは、前述の式(2)に従って整数の商q(n)を生成し(ステップS33b)、前述の式(6)に従って剰余を特定するための情報sub(n)を生成して出力する(ステップS34b)。なお、式(2)における「(-e(n)-1)」が「予測残差e(n)の大きさの増加に応じて単調増加する0以上の整数(被除数)」に相当し、「2s-1」が「分離パラメータsに依存する整数(法数)」に相当する。
図15は、第1実施形態の復号方法を説明するためのフローチャートである。また、図16は、ステップS150の詳細を例示するためのフローチャートである。以下、これらの図を用いて本形態の復号方法を説明する。
まず、予測残差e(n)に対応する残差符号Ceは、残差復号部220(図9)の分離部2221aに入力される。分離部2221aは、入力された残差符号Ceを分離し、情報prefix(n)と、情報sub(n)とを生成して出力する(ステップS130)。なお、入力された残差符号Ceが情報sub(n)を含まない場合、分離部2221aは、入力された残差符号Ceから情報prefix(n)を得る。
まず、合成演算部2221bは、入力された分離パラメータsが0であるか否かを判定する(ステップS151)。ここで、s=0でないと判定された場合、次に合成演算部2221bは、情報sub(n)が2s-1以上であるか否かを判定する(ステップS152a)。この判定は予測残差e(n)が0以上であるか否かを判定することに相当する。ステップS152aでsub(n)≧2s-1と判定された場合、合成演算部2221bは、以下の式によって予測残差e(n)を算出して出力する(ステップS153a)。
一方、ステップS152aでsub(n)<2s-1と判定された場合、合成演算部2221bは、以下の式によって予測残差e(n)を算出して出力する(ステップS153b)。
一方、ステップS151でs=0と判定された場合、次に合成演算部2221bは、情報q(n)が偶数であるか否かを判定する(ステップS152b)。この判定は予測残差e(n)が0以上であるか否かを判定することに相当する。ステップS152bでq(n)が偶数であると判定された場合、合成演算部2221bは、以下の式によって予測残差e(n)を算出して出力する(ステップS153c)。
一方、ステップS152bでq(n)が奇数であると判定された場合、合成演算部2221bは、以下の式によって予測残差e(n)を算出して出力する(ステップS153d)。
以上のように生成された予測残差e(n)は、合成演算部2221bから出力される([ステップS150の詳細の例示]の説明終わり)。
次に、第1実施形態の変形例1を説明する。この変形例では、符号化装置において、予測残差e(n)を0以上の整数e'(n)に写像してから分離パラメータの設定や符号化処理を行う。また、復号装置では、復号された整数e'(n)を逆変換して予測残差e(n)を復元する。以下では、第1実施形態との相違点を中心に説明し、第1実施形態と共通する事項については説明を省略する。
第1実施形態とこの変形例1との構成上の相違点は、符号化装置100の残差符号化部120が残差符号化部320に置換され、復号装置200の残差復号部220が残差復号部420に置換される点である。図17に、第1実施形態の変形例1における残差符号化部320の機能構成を説明するためのブロック図を示し、図18に、第1実施形態の変形例1における残差復号部420の機能構成を説明するためのブロック図を示す。なお、これらの図において第1実施形態と共通する事項については、第1実施形態と同じ符号を付して説明を省略する。
第1実施形態と同様である。
図19は、第1実施形態の変形例1の符号化方法を説明するためのフローチャートである。また、図20は、図19のステップS330の詳細を例示するためのフローチャートである。以下、これらの図を用いて本変形例の符号化方法を説明する。
まず、分離演算部322aは、入力された分離パラメータsが0であるか否かを判定する(ステップS331)。ここで、s=0でなかった場合、分離演算部322aは、
q(n)=floor(e'(n)/2s) …(19)
に従って整数の商q(n)を生成し(ステップS332a)、
sub(n)=e'(n)-2s・q(n) …(20)
に従って剰余を特定するための情報sub(n)を生成して出力する(ステップS333a)。なお、式(19)における「2s」が「分離パラメータsに依存する整数(法数)」に相当する。
q(n)=e'(n) …(21)
に従って整数の商q(n)を生成し(ステップS332b)、sub(n)をnullとして出力する(ステップS333b)。なお、式(21)「q(n)=e'(n)=e'(n)/2s(s=0)」における「e'(n)」が「予測残差e(n)の大きさの増加に応じて単調増加する0以上の整数(被除数)」に相当し、「2s=1(s=0)」が「分離パラメータsに依存する整数(法数)」に相当する([ステップS330の詳細の例]の説明終わり)。
図21は、第1実施形態の変形例1の復号方法を説明するためのフローチャートである。また、図22は、ステップS450の詳細を例示するためのフローチャートである。以下、これらの図を用いて本変形例の復号方法を説明する。
まず、合成演算部2221bは、入力された分離パラメータsが0であるか否かを判定する(ステップS451)。ここで、s=0でないと判定された場合、合成演算部2221bは、
e'(n)=2s・q(n)+sub(n) …(22)
によって値e'(n)を算出して出力する(ステップS452a)。
e'(n)=q(n) …(23)
によって値e'(n)を算出して出力する(ステップS452b)([ステップS450の詳細の例示]の説明終わり)。
次に、第1実施形態の変形例2を説明する。この変形例は、残差符号化部120,320や残差復号部220,420の符号表格納部122e,221eに格納される符号表の組み合わせについての変形例である。以下では、第1実施形態との相違点を中心に説明し、第1実施形態と共通する事項については説明を省略する。
次に、第1実施形態の変形例3を説明する。この変形例では、少なくとも一部の分離パラメータsについて、それに対応する連続量パラメータs’の大きさに応じて異なる符合表(商q(n)を符号化するための符号表)を設定する。すなわち、この変形例では、分離パラメータsとインデックスhとの組が同一であっても、その分離パラメータsに対応する連続量パラメータs’の大きさに応じて異なる符号表(商q(n)を符号化するための符号表)が設定される場合がある。これにより、より最適な符号表設定が可能となり、それによって可変長符号化された商q(n)の符号の符号量をより小さくできる。以下では、第1実施形態との相違点を中心に説明し、第1実施形態と共通する事項については説明を省略する。
図25は、第1実施形態の変形例3における残差符号化部520の機能構成を説明するためのブロック図である。また、図26は、第1実施形態の変形例3における残差復号部620の機能構成を説明するためのブロック図である。なお、これらの図において第1実施形態と共通する部分については第1実施形態と同じ符号を付して説明を省略する。
図27(A)は、残差符号化部520の符号表格納部122e及び残差復号部620の符号表格納部221eに格納される符号表と分離パラメータ及びインデックスとの対応関係を例示するための対応表である。また、図27(B)は、図27(A)の対応表に例示した各符号表が選択される頻度と分離パラメータs(上位・下位)及びインデックスhとの関係を例示するための図である。また、図28(A)(B)は、図27(A)の対応表の符号表を例示するための図である。これらの対応表では、符号化対象である入力値と、それに対応する符号と、その符号のビット長とが対応付けられている。また、図29は、残差符号化部520の可変長符号化部523が行う可変長符号化、及び残差復号部620の可変長復号部622が行う復号方法に対応する符号表の例示である。
第1実施形態からの相違点は、符号表選択部522dの処理(図13/ステップS40の変形)と、ハフマン符号化部522bの処理(ステップS50の変形)と、可変長符号化分523の処理(ステップS70の変形)のみである。以下では、これらの相違点のみを説明する。
第1実施形態で説明したステップS10~S30(図13)の処理が実行された後、分離演算部2122aから出力された商q(n)と分離パラメータ生成部121から出力された連続量パラメータs'とが符号表選択部522dに入力される。符号表選択部522dは、これらを用いて商q(n)を可変長符号化するための可変長符号化方法をフレームごとに選択する。
符号表選択部522dから出力された各フレームの補助情報[h,s]又は[h,s,add]と、当該フレームに対応する分離演算部2122aから出力された商q(n)とが、ハフマン符号化部522bに入力される。ハフマン符号化部522bは、この補助情報[h,s]又は[h,s,add]を用いて符号表格納部122eを検索し、補助情報[h,s]又は[h,s,add]に対応する符号表T[h,s]又はT[h,s,add]を抽出する。そして、ハフマン符号化部122bは、抽出した符号表T[h,s]又はT[h,s,add]を用いて当該フレームの商q(n)を可変長符号化して情報prefix(n)(「第1情報」に相当)を生成して出力する。
符号表選択部522dから出力されたフレームの補助情報[h,s]又は[h,s,add]は可変長符号化部523に入力される。可変長符号化部523は、前述のように設定された符号表(例えば、図29)を用い、補助情報[h,s]又は[h,s,add]ごとに当該補助情報[h,s]又は[h,s,add]を可変長符号化し、補助情報[h,s]又は[h,s,add]に対応する補助符号Ccを生成して出力する。
第1実施形態からの相違点は、可変長復号部622の処理(図15/ステップS120の変形)と、ハフマン復号部621cの処理(ステップS140の変形)のみである。以下では、これらの相違点のみを説明する。
第1実施形態で説明したステップS110の処理が実行された後、補助情報[h,s]又は[h,s,add]に対応する補助符号Ccが可変長復号部622に入力される。可変長復号部622は、前述のように設定された符号表(例えば、図29)を用いて補助符号Ccを可変長復号し、補助情報[h,s]又は[h,s,add]を生成して出力する。
可変長復号部622から出力された補助情報[h,s]又は[h,s,add]と、分離部2221aから出力された情報prefix(n)とは、ハフマン復号部621cに入力される。ハフマン復号部621cは、この補助情報[h,s]又は[h,s,add]を用いて符号表格納部221eを検索し、補助情報[h,s]又は[h,s,add]に対応する符号表T[h,s]又はT[h,s,add]を抽出する。そして、ハフマン復号部621cは、抽出した符号表T[h,s]又はT[h,s,add]を用いて情報prefix(n)を復号し、商q(n)を生成して出力する。
次に、本発明の第2実施形態を説明する。本形態の予測残差e(n)は、予め定められた時間区間であるフレームごとに時系列信号を予測分析した結果から得られたものである。本形態では、フレームをさらに複数に区分した各時間区間であるサブフレームごとに商q(n)を可変長符号化するための可変長符号化方法を選択する。また、商q(n)に対応する予測残差e(n)が属するサブフレームに対して設定された可変長符号化方法を用い、当該商q(n)を可変長符号化して第1情報を生成する。そして、分離パラメータsと、同一のフレームに属する各サブフレームに対してそれぞれ選択された可変長符号化方法を特定するためのインデックスhi(i=1,2)を結合した結合インデックスHと、の組を含む補助情報[H,s]を可変長符号化する。なお、本形態では、各フレームを2つに区分した各時間区間をサブフレームとする例を示す(i=1,2)。しかし、これは本発明を限定するものではなく、各フレームを3以上に区分した各時間区間をサブフレームとしてもよい(i=1,2,...,I(Iは3以上の整数))。また、以下では、第1実施形態との相違点を中心に説明し、第1実施形態と共通する事項については説明を省略する。
第1実施形態と第2実施形態との構成上の相違点は、符号化装置100の残差符号化部120が残差符号化部720に置換され、復号装置200の残差復号部220が残差復号部820に置換される点である。
前述のように、本形態では、分離パラメータsと、同一のフレームに属する各サブフレームに対してそれぞれ選択された可変長符号化方法を特定するためのインデックスhi(i=1,2)を結合した結合インデックスH=h1|h2との組を含む補助情報[H,s]が可変長符号化される。
次に、第2実施形態の符号化方法を説明する。
次に、第2実施形態の復号方法を説明する。
次に、本発明の第3実施形態を説明する。本形態では、予測残差e(n)が、予め定められた時間区間であるフレームごとに時系列信号を予測分析した結果から得られたものであり、フレームをさらに複数に区分した各時間区間であるサブフレームごとに分離パラメータsi(i=1,2)が設定される。本形態の予測残差に対応する符号は、予測残差又は予測残差の大きさの増加に応じて単調増加する0以上の整数を被除数とし、当該予測残差が属するサブフレームに対して設定された分離パラメータsiに依存する整数を法数とした除算によって得られる整数の商を特定する第1情報と、被除数の法数に関する剰余を特定する第2情報と、を含む。そして、本形態では、同一のフレームに属する各サブフレームに対してそれぞれ設定された各分離パラメータsiを結合した結合パラメータSを含む補助情報が、それぞれ、可変長符号化される。なお、本形態では、各フレームを2つに区分した各時間区間をサブフレームとする例を示すが(i=1,2)、これは本発明を限定するものではなく、各フレームを3以上に区分した各時間区間をサブフレームとしてもよい(i=1,2,...,I(Iは3以上の整数))。また、以下では、第1実施形態との相違点を中心に説明し、第1実施形態と共通する事項については説明を省略する。
第1実施形態と第3実施形態との構成上の相違点は、符号化装置100の残差符号化部120が残差符号化部920に置換され、復号装置200の残差復号部220が残差復号部1020に置換される点である。
前述のように、本形態では、同一のフレームに属する各サブフレームに対してそれぞれ設定された各分離パラメータsi(i=1,2)を結合した結合パラメータS=s1|s2と、当該フレームに対して選択された符号化方法を特定するためのインデックスhと、の組を含む補助情報[h,S]が、可変長符号化される。
次に、第3実施形態の符号化方法を説明する。
図39は、第3実施形態の復号方法を説明するためのフローチャートである。以下、この図を用いて本形態の復号方法を説明する。
次に、本発明の第4実施形態を説明する。
第1実施形態と第4実施形態との構成上の相違点は、符号化装置100の残差符号化部120が残差符号化部1120に置換され、復号装置200の残差復号部220が残差復号部1220に置換される点である。
前述のように、本形態では、同一のフレームに属する各サブフレームに対してそれぞれ設定された各分離パラメータsi(i=1,2)を結合した結合パラメータS=s1|s2と、同一のフレームに属する各サブフレームに対してそれぞれ選択された符号化方法を特定するためのインデックスhi(i=1,2)を結合した結合インデックスH=h1|h2と、の組を含む補助情報[H,S]が、可変長符号化される。
図43は、第4実施形態の符号化方法を説明するためのフローチャートである。以下、この図を用いて本形態の符号化方法を説明する。
図44は、第4実施形態の復号方法を説明するためのフローチャートである。以下、この図を用いて本形態の復号方法を説明する。
本発明は上述の実施の形態に限定されるものではない。例えば、上述の各実施形態では、分離パラメータとインデックスとの組を含む補助情報や、分離パラメータと結合インデックスとの組を含む補助情報や、結合パラメータとインデックスとの組を含む補助情報や、結合パラメータと結合インデックスとの組を含む補助情報等を、補助情報ごとに可変長符号化する形態を説明した。しかし、分離パラメータを含むがインデックスを含まない補助情報や、インデックスを含むが分離パラメータを含まない補助情報を、補助情報ごとに可変長符号化してもよい。例えば、分離パラメータのハフマン符号と、インデックスのハフマン符号とを独立に生成し、それらのハフマン符号の組を補助情報に対応する符号としてもよい。また、フレームをサブフレームに分割する場合には、例えば、独立に生成された、前半のサブフレームに対する、分離パラメータのハフマン符号とインデックスのハフマン符号の組を前半のサブフレームの補助情報に対応する符号とし、独立に生成された、後半のサブフレームに対する、分離パラメータのハフマン符号とインデックスのハフマン符号の組を後半のサブフレームの補助情報に対応する符号としてもよい。
200,2200 復号装置
Claims (27)
- 時系列信号を予測分析した結果に基づいて生成される整数表現された予測残差を符号化する符号化方法であって、
(A) 或る時間区間ごとに分離パラメータを設定するステップと、
(B) 前記予測残差又は当該予測残差の大きさの増加に応じて単調増加する0以上の整数を被除数とし、当該予測残差が属する前記時間区間に対して設定された前記分離パラメータ又は当該分離パラメータの写像値である整数を法数とした除算によって得られる整数の商を特定する第1情報と、前記被除数の前記法数に関する剰余を特定する第2情報とを含む情報を、前記予測残差に対応する符号として出力するステップと、
(C) 前記分離パラメータを含む補助情報ごとに当該補助情報を可変長符号化して得られた符号を出力するステップと、
を有する、符号化方法。 - 請求項1の符号化方法であって、
前記分離パラメータは、前記時間区間に属する前記予測残差若しくは当該予測残差の写像値をゴロムライス符号化するためのライスパラメータ、又は、当該ライスパラメータの写像値、又は、前記時間区間における前記予測残差に対応する符号の総符号量を最小化する値である、符号化方法。 - 請求項2の符号化方法であって、
前記分離パラメータは、前記ライスパラメータの写像値であり、
前記時間区間に設定された前記分離パラメータは、当該時間区間に属する前記予測残差若しくは当該予測残差の写像値をゴロムライス符号化するためのライスパラメータよりも小さく、
前記第1情報は、複数の可変長符号化方法から選択された可変長符号化方法によって、前記商を可変長符号化した符号であり、前記複数の可変長符号化方法は、アルファ符号化方法以外の可変長符号化方法を含む、符号化方法。 - 請求項1の符号化方法であって、
前記分離パラメータが前記予測残差の振幅の増加に応じて広義単調増加する整数であるとともに、前記法数が前記分離パラメータの増加に応じて単調増加する整数であるという条件が満たされるか、又は、前記分離パラメータが前記予測残差の振幅の増加に応じて広義単調減少する整数であるとともに、前記法数が前記分離パラメータの減少に応じて単調増加する整数であるという条件がみたされ、
前記ステップ(C)は、予め定められた特定の値からの距離が第1距離である分離パラメータを含む補助情報に割り当てられる第1符号の符号長が、当該予め定められた特定の値からの距離が第1距離よりも大きい第2距離である分離パラメータを含む補助情報に割り当てられる第2符号の符号長よりも短い場合が、前記第1符号の符号長が前記第2符号の符号長よりも長い場合よりも多い可変長符号化方法を用い、前記補助情報を可変長符号化するステップである、符号化方法。 - 請求項4の符号化方法であって、
前記予め定められた特定の値は、前記法数を1以上かつ前記被除数の最大値以下にする前記分離パラメータがとり得る範囲内にあり、
前記予め定められた特定の値は、前記分離パラメータがとり得る範囲の下限値及び上限値を除く値である、符号化方法。 - 請求項5の符号化方法であって、
前記被除数は、Bを3以上の整数とした場合における、0以上2B未満の整数であり、
前記分離パラメータがとり得る範囲は、0以上B-1以下の範囲である、符号化方法。 - 請求項4の符号化方法であって、
前記予め定められた特定の値は、前記法数を1以上かつ前記被除数の最大値以下にする前記分離パラメータがとり得る範囲内にあり、
前記予め定められた特定の値は、前記分離パラメータの下限値及び上限値よりも、当該下限値と当該上限値との中間値に近い値である、符号化方法。 - 請求項7の符号化方法であって、
前記被除数は、Bを3以上の整数とした場合における、0以上2B未満の整数であり、
前記分離パラメータがとり得る範囲は、0以上B-1以下の範囲である、符号化方法。 - 請求項4の符号化方法であって、
前記分離パラメータがとり得る範囲は、0以上7以下の範囲であり、
前記予め定められた特定の値は、2又は3である、符号化方法。 - 請求項1から9の何れかの符号化方法であって、
前記予測残差は、予め定められた時間区間であるフレームごとに時系列信号を予測分析した結果から得られたものであり、
前記ステップ(A)は、前記フレームをさらに複数に区分した各時間区間であるサブフレームごとに前記分離パラメータを設定するステップであり、
前記除算の法数は、前記予測残差が属するサブフレームに対して設定された前記分離パラメータ又は当該分離パラメータの写像値である整数であり、
前記補助情報は、同一のフレームに属する各サブフレームに対してそれぞれ設定された各分離パラメータを結合した結合パラメータを含む、符号化方法。 - 請求項1から9の何れかの符号化方法であって、
前記第1情報は、前記商を可変長符号化した符号であり、
前記ステップ(B)は、
(B-1) 前記商を求めるステップと、
(B-2) 前記商を可変長符号化するための符号化方法を予め定められた時間区間ごとに選択するステップと、
(B-3) 前記商に対応する前記予測残差が属する時間区間に対して設定された符号化方法を用い、当該商を可変長符号化して前記第1情報を生成するステップと、を含み、
前記補助情報は、前記分離パラメータと、前記ステップ(B-2)で選択された符号化方法を特定するためのインデックスとの組を含む、符号化方法。 - 請求項11の符号化方法であって、
前記ステップ(C)は、特定の可変長符号化方法を用い、或る同一値の分離パラメータを含む複数の前記補助情報をそれぞれ可変長符号化するステップを含み、
前記特定の可変長符号化方法は、前記同一値の分離パラメータを含む複数の前記補助情報のうち、特定の補助情報に対し、前記同一値の分離パラメータを含む複数の前記補助情報にそれぞれ割り当てられる符号の中で最も短い符号長の符号を割り当てる符号化方法であり、
前記特定の補助情報は、アルファ符号化又は最もアルファ符号化に近い可変長符号化を行う符号化方法を特定するためのインデックスを含む補助情報である、符号化方法。 - 請求項12の符号化方法であって、
アルファ符号化で符号化対象値kに割り当てられる符号のビット長をbu(k)とし、或る可変長符号化で符号化対象値kに割り当てられる符号のビット長をbx(k)とし、fu(k)=0.5bu(k)とし、fx(k)=0.5bx(k)とした場合における、(bu(k)-bx(k))(fu(k)-fx(k))の各kについての総和が小さいほど、当該可変長符号化はアルファ符号化に近い、符号化方法。 - 請求項11の符号化方法であって、
前記ステップ(C)は、
前記分離パラメータが前記法数を予め定められた閾値以上とするものである場合に、第3符号の符号長が第4符号の符号長よりも短い場合が、前記第3符号の符号長が前記第4符号の符号長よりも長い場合よりも多い可変長符号化方法を用い、前記補助情報を可変長符号化するステップであり、
前記第4符号は、アルファ符号化と異なる第1可変長符号化を行うための第1符号化方法を特定するためのインデックスを含む補助情報に割り当てられる符号であり、
前記第3符号は、当該第1可変長符号化よりもアルファ符号化に近い第2可変長符号化を行うための第2符号化方法を特定するためのインデックスを含む補助情報に割り当てられる符号である、符号化方法。 - 請求項14の符号化方法であって、
アルファ符号化で符号化対象値kに割り当てられる符号のビット長をbu(k)とし、或る可変長符号化で符号化対象値kに割り当てられる符号のビット長をbx(k)とし、fu(k)=0.5bu(k)とし、fx(k)=0.5bx(k)とした場合における、(bu(k)-bx(k))(fu(k)-fx(k))の各kについての総和が小さいほど、当該可変長符号化はアルファ符号化に近い、符号化方法。 - 請求項11の符号化方法であって、
前記予測残差は、予め定められた時間区間であるフレームごとに時系列信号を予測分析した結果から得られたものであり、
前記ステップ(B-2)は、前記フレームをさらに複数に区分した各時間区間であるサブフレームごとに符号化方法を選択するステップであり、
前記ステップ(B-3)は、前記商に対応する前記予測残差が属する前記サブフレームに対して設定された符号化方法を用い、当該商を可変長符号化して前記第1情報を生成するステップであり、
前記補助情報は、前記分離パラメータと、結合インデックスとの組を含み、 前記結合インデックスは、同一のフレームに属する各サブフレームに対してそれぞれ選択された符号化方法を特定するためのインデックスを結合したものである、符号化方法。 - 請求項16の符号化方法であって、
前記ステップ(C)は、
或る同一値の分離パラメータを含む前記補助情報のうち、アルファ符号化又は最もアルファ符号化に近い可変長符号化を行う符号化方法を特定するためのインデックスを含む前記補助情報に対し、当該同一値の分離パラメータを含む前記補助情報に割り当てられる符号の中で最も短い符号長の符号を割り当てる可変長符号化方法を用い、当該同一値の分離パラメータを含む前記補助情報を可変長符号化するステップを含む、符号化方法。 - 請求項16の符号化方法であって、
前記ステップ(C)は、
前記分離パラメータが前記法数を予め定められた閾値以上とするものである場合に、第3符号の符号長が第4符号の符号長よりも短い場合が、前記第3符号の符号長が前記第4符号の符号長よりも長い場合よりも多い可変長符号化方法を用い、前記補助情報を可変長符号化するステップであり、
前記第4符号は、アルファ符号化と異なる第1可変長符号化を行うための第1符号化方法を特定するためのインデックスを含む補助情報に割り当てられる符号であり、
前記第3符号は、当該第1可変長符号化よりもアルファ符号化に近い第2可変長符号化を行うための第2符号化方法を特定するためのインデックスを含む補助情報に割り当てられる符号である、符号化方法。 - 時系列信号を予測分析した結果に基づいて生成される整数表現された予測残差を符号化する符号化方法であって、
或る時間区間ごとに、分離パラメータを設定するステップと、
前記分離パラメータを含む補助情報ごとに当該補助情報を可変長符号化して得られた符号を出力するステップと、を有し、
前記時間区間に設定された前記分離パラメータは、当該時間区間に属する前記予測残差若しくは当該予測残差の写像値をゴロムライス符号化するためのライスパラメータよりも小さい、符号化方法。 - 時系列信号を予測分析した結果に基づいて生成される整数表現された予測残差に対応する符号を復号する復号方法であって、
(D) 分離パラメータを含む補助情報の可変長符号を復号し、前記分離パラメータを含む補助情報を生成するステップと、
(E) 前記予測残差に対応する符号と、前記補助情報とを用い、前記予測残差又は当該予測残差の大きさの増加に応じて単調増加する0以上の整数を生成するステップと、を有し、
前記予測残差に対応する符号は、第1情報と第2情報とを含み、
前記第1情報は、除算によって得られる整数の商を特定する情報であり、前記除算の被除数は、前記予測残差又は当該予測残差の大きさの増加に応じて単調増加する0以上の整数であり、前記除算の法数は、前記予測残差が属する時間区間に対して設定された前記分離パラメータ又は当該分離パラメータの写像値である整数であり、
前記第2情報は、前記被除数の前記法数に関する剰余を特定する情報である、復号方法。 - 時系列信号を予測分析した結果に基づいて生成される整数表現された予測残差を符号化する符号化装置であって、
或る時間区間ごとに整数の分離パラメータを設定し、前記予測残差又は当該予測残差の大きさの増加に応じて単調増加する0以上の整数を被除数とし、当該予測残差が属する前記時間区間に対して設定された前記分離パラメータ又は当該分離パラメータの写像値である整数を法数とした除算によって得られる整数の商を特定する第1情報と、前記被除数の前記法数に関する剰余を特定する第2情報とを含む情報を、前記予測残差に対応する符号として出力する符号化部と、
前記分離パラメータを含む補助情報ごとに当該補助情報を可変長符号化して得られた符号を出力する可変長符号化部と、
を有する、符号化装置。 - 時系列信号を予測分析した結果に基づいて生成される整数表現された予測残差を符号化する符号化装置であって、
或る時間区間ごとに、分離パラメータを設定する符号化部と、
前記分離パラメータを含む補助情報ごとに当該補助情報を可変長符号化して得られた符号を出力する可変長符号化部と、を有し、
前記時間区間に設定された前記分離パラメータは、当該時間区間に属する前記予測残差若しくは当該予測残差の写像値をゴロムライス符号化するためのライスパラメータよりも小さい、符号化装置。 - 時系列信号を予測分析した結果に基づいて生成される整数表現された予測残差を符号化した符号を復号する復号装置であって、
分離パラメータを含む補助情報の可変長符号を復号し、前記分離パラメータを含む補助情報を生成する可変長復号部と、
前記予測残差に対応する符号と、前記補助情報とを用い、前記予測残差又は当該予測残差の大きさの増加に応じて単調増加する0以上の整数を生成する復号部と、を有し、
前記予測残差に対応する符号は、第1情報と第2情報とを含み、
前記第1情報は、除算によって得られる整数の商を特定する情報であり、前記除算の被除数は、前記予測残差又は当該予測残差の大きさの増加に応じて単調増加する0以上の整数であり、前記除算の法数は、前記予測残差が属する時間区間に対して設定された前記分離パラメータ又は当該分離パラメータの写像値である整数であり、
前記第2情報は、前記被除数の前記法数に関する剰余を特定する情報である、復号装置。 - 請求項1又は19の符号化方法の各ステップをコンピュータに実行させるためのプログラム。
- 請求項20の復号方法の各ステップをコンピュータに実行させるためのプログラム。
- 請求項1又は19の符号化方法の各ステップをコンピュータに実行させるためのプログラムを格納したコンピュータ読み取り可能な記録媒体。
- 請求項20の復号方法の各ステップをコンピュータに実行させるためのプログラムを格納したコンピュータ読み取り可能な記録媒体。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200980148292.0A CN102239640B (zh) | 2008-12-09 | 2009-12-08 | 编码方法、解码方法、使用这些方法的装置 |
US13/132,418 US8502708B2 (en) | 2008-12-09 | 2009-12-08 | Encoding method and decoding method, and devices, program and recording medium for the same |
JP2010542107A JP4834179B2 (ja) | 2008-12-09 | 2009-12-08 | 符号化方法、その装置、プログラム及び記録媒体 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008-313582 | 2008-12-09 | ||
JP2008313582 | 2008-12-09 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2010067799A1 true WO2010067799A1 (ja) | 2010-06-17 |
Family
ID=42242788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2009/070550 WO2010067799A1 (ja) | 2008-12-09 | 2009-12-08 | 符号化方法、復号方法、それらの装置、プログラム及び記録媒体 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8502708B2 (ja) |
JP (1) | JP4834179B2 (ja) |
CN (3) | CN104104391B (ja) |
WO (1) | WO2010067799A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102341844B (zh) | 2009-03-10 | 2013-10-16 | 日本电信电话株式会社 | 编码方法、解码方法、编码装置、解码装置 |
KR101628797B1 (ko) | 2012-04-20 | 2016-06-09 | 후아웨이 테크놀러지 컴퍼니 리미티드 | Hevc에서 무손실 코딩의 개선된 인트라 예측 |
JP2014192701A (ja) * | 2013-03-27 | 2014-10-06 | National Institute Of Information & Communication Technology | 複数の入力画像をエンコーディングする方法、プログラムおよび装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000503510A (ja) * | 1996-11-11 | 2000-03-21 | フィリップス エレクトロニクス ネムローゼ フェンノートシャップ | ライスエンコーダ/デコーダを用いるデータ圧縮/拡大 |
JP2007279393A (ja) * | 2006-04-06 | 2007-10-25 | Nippon Telegr & Teleph Corp <Ntt> | Parcor係数算出装置、parcor係数算出方法、そのプログラムおよびその記録媒体 |
JP2007286146A (ja) * | 2006-04-13 | 2007-11-01 | Nippon Telegr & Teleph Corp <Ntt> | 適応ブロック長符号化装置、その方法、プログラム及び記録媒体 |
JP2007286200A (ja) * | 2006-04-13 | 2007-11-01 | Nippon Telegr & Teleph Corp <Ntt> | 適応ブロック長符号化装置、その方法、プログラム及び記録媒体 |
JP2007318691A (ja) * | 2006-05-29 | 2007-12-06 | Nippon Telegr & Teleph Corp <Ntt> | 線形予測モデル次数決定装置、線形予測モデル次数決定方法、そのプログラムおよび記録媒体 |
JP2008026460A (ja) * | 2006-07-19 | 2008-02-07 | Nippon Telegr & Teleph Corp <Ntt> | 符号化装置、それらの方法、プログラム及び記録媒体 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4727421A (en) * | 1984-10-04 | 1988-02-23 | Nec Corporation | Method of coding picture signal and picture coding/decoding apparatus utilizing the same |
US5245428A (en) * | 1991-05-10 | 1993-09-14 | U.S. Philips Corporation | Television system for transmitting picture signals in a digital format |
US5592228A (en) * | 1993-03-04 | 1997-01-07 | Kabushiki Kaisha Toshiba | Video encoder using global motion estimation and polygonal patch motion estimation |
JP3431331B2 (ja) * | 1995-03-01 | 2003-07-28 | 株式会社日立製作所 | 動画像符号化装置及び動画像伝送装置並びにテレビ会議装置 |
US6341144B1 (en) * | 1996-09-20 | 2002-01-22 | At&T Corp. | Video coder providing implicit coefficient prediction and scan adaptation for image coding and intra coding of video |
KR100425614B1 (ko) * | 1996-11-07 | 2004-04-01 | 마쯔시다덴기산교 가부시키가이샤 | 화상 복호화 방법 및 복호화 장치와 기계 판독 가능한 기록 매체 |
JP4186242B2 (ja) * | 1997-12-26 | 2008-11-26 | ソニー株式会社 | 画像信号処理装置及び画像信号処理方法 |
JP3839974B2 (ja) * | 1998-10-06 | 2006-11-01 | キヤノン株式会社 | 符号化装置 |
CN100420308C (zh) * | 2002-04-26 | 2008-09-17 | 株式会社Ntt都科摩 | 图象编码装置和图象译码装置 |
CN1214649C (zh) * | 2003-09-18 | 2005-08-10 | 中国科学院计算技术研究所 | 用于视频预测残差系数编码的熵编码方法 |
US7689051B2 (en) * | 2004-04-15 | 2010-03-30 | Microsoft Corporation | Predictive lossless coding of images and video |
MXPA06012617A (es) * | 2004-05-17 | 2006-12-15 | Nokia Corp | Codificacion de audio con diferentes longitudes de cuadro de codificacion. |
CN1589023A (zh) * | 2004-08-06 | 2005-03-02 | 联合信源数字音视频技术(北京)有限公司 | 一种基于上下文的多码表变长编解码方法及编解码装置 |
FR2879878B1 (fr) * | 2004-12-22 | 2007-05-25 | Thales Sa | Procede de chiffrement selectif compatible pour flux video |
EP1833257A1 (en) * | 2006-03-06 | 2007-09-12 | THOMSON Licensing | Method and apparatus for bit rate control in scalable video signal encoding using a Rate-Distortion optimisation |
JP4732203B2 (ja) * | 2006-03-17 | 2011-07-27 | キヤノン株式会社 | 画像符号化装置及び復号装置及びそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体 |
JP4888335B2 (ja) * | 2007-10-25 | 2012-02-29 | ソニー株式会社 | 符号化方法及び装置、並びにプログラム |
US8285062B2 (en) * | 2009-08-05 | 2012-10-09 | Sony Corporation | Method for improving the performance of embedded graphics coding |
-
2009
- 2009-12-08 US US13/132,418 patent/US8502708B2/en active Active
- 2009-12-08 WO PCT/JP2009/070550 patent/WO2010067799A1/ja active Application Filing
- 2009-12-08 CN CN201410317379.9A patent/CN104104391B/zh active Active
- 2009-12-08 CN CN200980148292.0A patent/CN102239640B/zh active Active
- 2009-12-08 JP JP2010542107A patent/JP4834179B2/ja active Active
- 2009-12-08 CN CN201410317393.9A patent/CN104124982B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000503510A (ja) * | 1996-11-11 | 2000-03-21 | フィリップス エレクトロニクス ネムローゼ フェンノートシャップ | ライスエンコーダ/デコーダを用いるデータ圧縮/拡大 |
JP2007279393A (ja) * | 2006-04-06 | 2007-10-25 | Nippon Telegr & Teleph Corp <Ntt> | Parcor係数算出装置、parcor係数算出方法、そのプログラムおよびその記録媒体 |
JP2007286146A (ja) * | 2006-04-13 | 2007-11-01 | Nippon Telegr & Teleph Corp <Ntt> | 適応ブロック長符号化装置、その方法、プログラム及び記録媒体 |
JP2007286200A (ja) * | 2006-04-13 | 2007-11-01 | Nippon Telegr & Teleph Corp <Ntt> | 適応ブロック長符号化装置、その方法、プログラム及び記録媒体 |
JP2007318691A (ja) * | 2006-05-29 | 2007-12-06 | Nippon Telegr & Teleph Corp <Ntt> | 線形予測モデル次数決定装置、線形予測モデル次数決定方法、そのプログラムおよび記録媒体 |
JP2008026460A (ja) * | 2006-07-19 | 2008-02-07 | Nippon Telegr & Teleph Corp <Ntt> | 符号化装置、それらの方法、プログラム及び記録媒体 |
Non-Patent Citations (3)
Title |
---|
LIEBCHEN, T. ET AL.: "AN INTRODUCTION TO MPEG-4 AUDIO LOSSLESS CODING, Acoustics, Speech, and Signal Processing", PROCEEDINGS.(ICASSP'04).IEEE INTERNATIONAL CONFERENCE, vol. 3, - 2004, pages III-1012 - III-1015 * |
LIEBCHEN, T. ET AL.: "MPEG-4 ALS:an Emerging Standard for Lossless Audio Coding", DATA COMPRESSION CONFERENCE, 2004.PROCEEDINGS. DCC 2004, - March 2004 (2004-03-01), pages 439 - 448 * |
MASARU KAMAMOTO ET AL.: "Lossless Audio Fugoka MPEG-4 ALS no Koseinoka", NTT GIJUTSU JOURNAL, vol. 20, no. 2, February 2008 (2008-02-01), pages 11 - 18 * |
Also Published As
Publication number | Publication date |
---|---|
JP4834179B2 (ja) | 2011-12-14 |
CN104104391B (zh) | 2017-04-26 |
CN102239640B (zh) | 2015-01-07 |
CN104124982A (zh) | 2014-10-29 |
CN104124982B (zh) | 2017-04-12 |
US20110254713A1 (en) | 2011-10-20 |
JPWO2010067799A1 (ja) | 2012-05-17 |
US8502708B2 (en) | 2013-08-06 |
CN104104391A (zh) | 2014-10-15 |
CN102239640A (zh) | 2011-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5337235B2 (ja) | 符号化方法、復号方法、符号化装置、復号装置、プログラム及び記録媒体 | |
US8566105B2 (en) | Apparatus and method for encoding and decoding of audio data using a rounding off unit which eliminates residual sign bit without loss of precision | |
US8510105B2 (en) | Compression and decompression of data vectors | |
JP4359312B2 (ja) | 信号の符号化装置、復号化装置、方法、プログラム、記録媒体、及び信号のコーデック方法 | |
JP5173045B2 (ja) | 符号化方法、符号化装置、復号方法、復号装置、プログラム及び記録媒体 | |
US8068042B2 (en) | Coding method, decoding method, and apparatuses, programs and recording media therefor | |
JP4866484B2 (ja) | パラメータ選択方法、パラメータ選択装置、プログラム及び記録媒体 | |
JP4834179B2 (ja) | 符号化方法、その装置、プログラム及び記録媒体 | |
JP5303074B2 (ja) | 符号化方法、復号方法、それらの装置、プログラム及び記録媒体 | |
JP4918103B2 (ja) | 符号化方法、復号方法、それらの装置、プログラム及び記録媒体 | |
JP5236005B2 (ja) | 符号化方法、符号化装置、復号方法、復号装置、プログラム及び記録媒体 | |
JP4848049B2 (ja) | 符号化方法、復号方法、それらの装置、プログラム及び記録媒体 | |
JP2005265865A (ja) | オーディオ符号化のためのビット割り当て方法及び装置 | |
JP4871420B2 (ja) | 符号化方法、符号化装置、復号方法、復号装置及びプログラム | |
JP2007013642A (ja) | 信号の符号化装置、方法、プログラム、記録媒体、および信号のコーデック方法 | |
JP4787889B2 (ja) | 符号化方法、符号化装置、復号方法、復号装置、プログラム及び記録媒体 | |
WO2018235418A1 (ja) | 符号化装置、復号装置、符号化方法、復号方法、およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200980148292.0 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09831903 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2010542107 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 13132418 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 13132418 Country of ref document: US |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 09831903 Country of ref document: EP Kind code of ref document: A1 |