WO2022239114A1 - 符号化復号装置、符号化復号方法及びプログラム - Google Patents
符号化復号装置、符号化復号方法及びプログラム Download PDFInfo
- Publication number
- WO2022239114A1 WO2022239114A1 PCT/JP2021/017893 JP2021017893W WO2022239114A1 WO 2022239114 A1 WO2022239114 A1 WO 2022239114A1 JP 2021017893 W JP2021017893 W JP 2021017893W WO 2022239114 A1 WO2022239114 A1 WO 2022239114A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- decoding
- encoding
- quantization
- encoded
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
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/60—General implementation details not specific to a particular type of compression
- H03M7/6005—Decoder aspects
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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/3082—Vector coding
-
- 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/60—General implementation details not specific to a particular type of compression
- H03M7/6011—Encoder aspects
Definitions
- the present invention relates to an encoding/decoding device, an encoding/decoding method, and a program.
- FIG. 8 is a diagram showing a configuration example of the encoding/decoding device 10. As shown in FIG. The encoding/decoding device 10 includes an encoding unit 11, a quantization unit 12, a binarization unit 13, and a decoding unit 14 as functional units of an autoencoder using a neural network.
- the encoding unit 11 converts the input data into a vector (hereinafter referred to as "encoding feature vector") whose elements are N (N is an integer equal to or greater than 1) encoding features.
- the quantization unit 12 performs quantization processing on the encoded feature vector based on a vector having quantization accuracy as an element (hereinafter referred to as "quantization accuracy vector").
- quantization accuracy vector a vector having quantization accuracy as an element
- the binarization unit 13 executes binarization processing on the quantized encoded feature vector (hereinafter referred to as "quantized encoded feature vector”) to perform binarized quantization encoding.
- a feature vector (hereinafter referred to as "encoded data") is generated.
- the decoding unit 14 generates decoded data by executing a decoding process on the encoded data.
- the encoding/decoding device generates encoded data of a size of a predetermined code amount.
- This predetermined code amount is the code amount resulting from multiplication of the number "N" of encoding features and the quantization precision.
- N the number of encoding features
- quantization precision the number of encoding features
- an object of the present invention is to provide an encoding/decoding device, an encoding/decoding method, and a program capable of improving the accuracy of restoring input data from encoded data.
- One aspect of the present invention is an encoding unit that converts input data into an encoded feature vector, and derives a quantization accuracy for each encoded feature that is an element of the encoded feature vector according to an encoded code amount.
- a quantization accuracy deriving unit and performing quantization processing on the encoded feature vector based on the quantization accuracy, thereby obtaining a quantization code having a size of a quantization code amount targeting the encoding code amount; a quantization unit that generates a quantized feature vector; a binarization unit that generates coded data by performing a binarization process on the quantized coded feature vector;
- It is an encoding/decoding apparatus including a decoding section that performs decoding processing on predetermined data.
- One aspect of the present invention is an encoding/decoding method executed by an encoding/decoding device, comprising: an encoding step of converting input data into an encoded feature vector; A quantization accuracy deriving step of deriving the quantization accuracy of according to the encoded code amount, and performing a quantization process on the encoded feature vector based on the quantization accuracy, thereby performing the encoding code
- the encoding/decoding method includes a binarization step of generating and a decoding step of executing a decoding process on predetermined data corresponding to the encoded data.
- One aspect of the present invention is a program for causing a computer to function as the encoding/decoding device described above.
- FIG. 1 is a diagram showing a configuration example of an encoding/decoding device in the first embodiment
- FIG. 4 is a flowchart showing an operation example of the encoding/decoding device in the first embodiment
- FIG. 5 is a diagram showing an example of the relationship between compression rate and peak signal-to-noise ratio in the first embodiment
- FIG. 4 is a diagram showing an example of rate control in the first embodiment
- FIG. 11 is a diagram showing a configuration example of an encoding/decoding device in the second embodiment
- FIG. 10 is a diagram showing an example of scalable decoding in the second embodiment
- FIG. It is a figure which shows the hardware structural example of the encoding decoding apparatus in each embodiment. It is a figure which shows the structural example of an encoding decoding apparatus.
- FIG. 1 is a diagram showing a configuration example of an encoding/decoding device 1a.
- the encoding/decoding device 1a is a system that performs encoding processing (data compression processing) on input data and decoding processing on encoded data.
- the encoding/decoding device 1a includes an autoencoder 2 and a learning device 3.
- the autoencoder 2 includes an encoding unit 20 , a quantization unit 21 , a binarization unit 22 , an extraction shaping unit 23 a , an inverse binarization unit 24 and a decoding unit 25 .
- the learning device 3 includes a reconstruction error derivation unit 30, a quantization precision derivation unit 31, a code amount derivation unit 32, a code amount error derivation unit 33, and an optimization unit .
- the encoding unit 20 has a neural network (hereinafter referred to as “encoding neural network”) for executing encoding processing.
- the decoding unit 25 has a neural network (hereinafter referred to as “decoding neural network”) for executing decoding processing.
- the quantization precision derivation unit 31 has a neural network (hereinafter referred to as "quantization neural network”) for deriving a quantization precision vector.
- Each of the encoding neural network, the decoding neural network, and the quantizing neural network is a learning target (optimization target) neural network.
- the autoencoder 2 converts the input data into an encoded feature vector by executing encoding processing (data compression processing) using an encoding neural network on the input data.
- each element (encoding feature) of the encoding feature vector is associated with an element (quantization precision) of the quantization precision vector.
- the quantization accuracy is adaptively updated by the learning device 3 according to the code amount of one or more encoding features (hereinafter referred to as "encoding code amount”) (compression rate).
- the autoencoder 2 executes quantization processing on the encoded feature vector based on the quantization precision vector.
- the autoencoder 2 converts the encoded feature vector into a quantized encoded feature vector through quantization processing.
- the autoencoder 2 generates coded data by executing a binarization process on the quantized coded feature vector. In the binarization process, the autoencoder 2 deletes binarized data outside the range of quantization precision from the encoded data.
- the code amount of the binary data extracted from the encoded data will be referred to as the "decoded code amount".
- the encoded code amount and the decoded code amount are equal.
- the autoencoder 2 extracts the binarized data having the size of the decoded code amount from the encoded data.
- the autoencoder 2 performs shaping processing on the binarized data having the size of the decoding code amount.
- the autoencoder 2 generates shaped decoding data (shaped decoding data) by shaping the format of the extracted binary data into the format of the quantized encoded feature vector.
- the autoencoder 2 complements the binarized data deleted from the encoded data with a predetermined value (for example, 0) in the shaped decoding data.
- the autoencoder 2 generates debinarized decoding data by executing debinarization processing on the formatted decoding data.
- the autoencoder 2 generates decoded data by executing a decoding process using a decoding neural network on the inverse binarized decoding data.
- the encoding unit 20 acquires the encoded code amount and input data from, for example, an information processing device (not shown).
- the encoding unit 20 converts the input data into an encoded feature vector based on the encoded code amount.
- the quantization unit 21 converts the result of the integer rounding process using the sigmoid function and the quantization precision vector into the encoding feature vector as the quantization encoding feature vector of the size of the quantization code amount targeting the encoding code amount. is derived for each element of
- the quantization code amount is the sum of the elements in the quantization precision vector.
- the binarization unit 22 generates encoded data by performing binarization processing on the quantized encoded feature vector based on the quantization precision vector.
- the binarization unit 22 generates encoded data by deleting binarized data outside the range of quantization precision from the quantization precision vector.
- the extraction shaping unit 23a extracts the binarized data having the size of the decoded code amount from the acquired encoded data.
- the extraction shaping unit 23a shapes the format of the binary data extracted from the obtained encoded data into the format of the quantized encoded feature vector based on the quantization precision vector.
- the extraction shaping unit 23a complements the binarized data outside the range of quantization accuracy with a predetermined value in the decoding data based on the quantization accuracy. As a result, the extraction and shaping section 23a generates shaped data for decoding.
- the debinarization unit 24 generates debinarization decoding data by performing debinarization processing on the formatted decoding data.
- the decoding unit 25 performs decoding processing on the data for inverse binarization decoding based on the decoded code amount. Thereby, the decoding unit 25 converts the debinarized decoding data into decoded data.
- the learning device 3 is a device that executes learning processing (machine learning).
- the learning device 3 derives the difference (distance between vectors) between the input data and the decoded data.
- a difference between the input data and the decoded data is represented using, for example, the mean squared error.
- the learning device 3 derives the difference between the quantized code amount, which is the sum of the elements in the quantization precision vector, and the encoded code amount (compression rate).
- the learning device 3 generates an objective function based on each difference.
- the learning device 3 reduces the difference between the input data and the decoded data (so that the value of the objective function becomes small), so that the parameters of the coding neural network of the coding unit 20 and the decoding of the decoding unit 25 At least one of the parameters of the neural network and the parameters of the quantization neural network of the quantization accuracy derivation unit 31 is updated. In this way, the learning device 3 adaptively updates the elements (quantization precision) of the quantization precision vector according to the encoded code amount.
- the learning device 3 (optimization device) outputs the updated parameters of the coding neural network to the coding unit 20 .
- the learning device 3 outputs the updated parameters of the decoding neural network to the decoding unit 25 .
- the learning device 3 outputs the updated parameters of the quantization neural network to the quantization accuracy derivation unit 31 .
- a reconstruction error derivation unit 30 derives a reconstruction error, which is an error of decoded data with respect to input data.
- a quantization precision derivation unit 31 derives a quantization precision vector according to the encoded code amount.
- the quantization precision derivation unit 31 derives a quantization precision vector using a quantization neural network for the encoded code amount.
- the parameters of the quantization neural network are updated by the optimizer 34 .
- the code amount derivation unit 32 derives the quantization code amount [bit], which is the sum of "N" elements in the quantization precision vector.
- the code amount error derivation unit 33 derives a code amount error (difference between the encoded code amount and the quantized code amount), which is the error of the quantized code amount with respect to the encoded code amount.
- the optimization unit 34 derives an objective function based on the reconstruction error and the code amount error.
- the optimization unit 34 performs optimization processing on the objective function.
- the optimization unit 34 performs, for example, error backpropagation on the minimized objective function, so that the parameters of the encoding neural network of the encoding unit 20, the parameters of the decoding neural network of the decoding unit 25, At least one of the parameters of the quantization neural network of the quantization accuracy derivation unit 31 is updated.
- FIG. 2 is a flowchart showing an operation example of the encoding/decoding device 1a.
- the encoding unit 20 acquires the encoded code amount “R enc ” and the input data “x” from, for example, an information processing device (not shown).
- the value of the encoding feature “z n ” represents the feature quantity to be encoded (step S101).
- the quantization precision derivation unit 31 acquires the encoded code amount “R enc ” from, for example, an information processing device (not shown).
- the value of the element "B n " of the quantization precision vector is, for example, an integer from 0 to 64 (step S102).
- the value of element “B n ” may be zero.
- the quantization precision deriving unit 31 changes the quantization precision according to the encoded code amount, thereby controlling the number "N" of quantization encoding features included in the encoded data.
- the quantization unit 21 acquires the encoded feature vector “z” from the encoding unit 20 .
- the quantization section 21 acquires the quantization precision vector “B” from the quantization precision derivation section 31 .
- the binarization unit 22 acquires the quantization-encoded feature vector “z q ” from the quantization unit 21 .
- the binarization unit 22 acquires the quantization precision vector from the quantization precision derivation unit 31 .
- the binarization unit 22 generates the encoded data “z enc ” by performing binarization processing on the quantized encoded feature vector based on the quantization precision vector.
- the binarization unit 22 deletes binarized data outside the range of quantization accuracy from the encoded data “ zenc ” (step S104).
- the extraction shaping unit 23a acquires the decoded code amount “R dec ” from, for example, an information processing device (not shown).
- the extraction shaping unit 23 a acquires the encoded data “z enc ” from the binarization unit 22 .
- the extraction shaping unit 23a extracts the binary data having the size of the decoded code amount " Rdec " from the obtained encoded data " zenc " (step S105).
- the extraction shaping unit 23 a acquires the quantization precision vector “B” from the quantization precision derivation unit 31 . Based on the quantization precision vector “B”, the extraction shaping unit 23a converts the format of the binary data extracted from the acquired encoded data “z enc ” into the format of the quantized encoded feature vector “z q ”. shape into a format.
- the extraction shaping unit 23a complements the binarized data outside the range of quantization accuracy with a predetermined value (for example, 0) in the decoding data. As a result, the extraction and shaping unit 23a generates shaped decoding data "z dec " (step S106).
- the inverse binarization unit 24 generates inverse binarization decoding data “ ⁇ z q ” by performing inverse binarization processing on the formatted decoding data “z dec ” (step S107).
- the decoding unit 25 performs decoding processing on the inverse binarization decoding data “ ⁇ z q ” based on the decoded code amount “R dec ”. As a result, the decoding unit 25 converts the inverse binarization decoding data " ⁇ z q " into decoded data " ⁇ x" (step S108).
- the reconstruction error derivation unit 30 acquires input data from, for example, an information processing device (not shown).
- the reconstruction error derivation unit 30 acquires decoded data (reconstruction data) from the decoding unit 25 .
- the function 'd' is an arbitrary function for deriving the distance between vectors, such as the sum of mean squared errors or Binary Cross Entropy (step S109).
- the code amount derivation unit 32 acquires the quantization precision vector “B” from the quantization precision derivation unit 31 .
- the code amount error derivation unit 33 acquires the encoded code amount “R enc ”.
- the weight " ⁇ " is an arbitrary value (step S112).
- the optimization unit 34 executes optimization processing on the objective function "L". That is, the optimization unit 34 solves the minimization problem of the objective function "L” by executing the gradient method, for example (step S113).
- the optimization unit 34 performs, for example, error backpropagation on the minimized objective function “L”, so that the parameters of the encoding neural network of the encoding unit 20 and the parameters of the decoding neural network of the decoding unit 25 are At least one of the parameters and the parameters of the quantization neural network of the quantization accuracy derivation unit 31 is updated.
- the optimization unit 34 outputs the updated parameters of the coding neural network to the coding unit 20 .
- the optimization unit 34 outputs the updated parameters of the quantization neural network to the quantization accuracy derivation unit 31 .
- the optimization unit 34 outputs the updated parameters of the decoding neural network to the decoding unit 25 (step S114).
- the optimization unit 34 determines whether or not to end the processing shown in FIG. 2 based on a predetermined condition. For example, the optimization unit 34 terminates the processing when a predetermined condition is satisfied that the processing shown in FIG. 2 is executed a predetermined number of times or more. For example, when a predetermined condition that the value of the objective function "L" is equal to or less than a predetermined value is satisfied, the optimization unit 34 ends the process (step S115).
- step S115: NO If it is determined to continue the process (step S115: NO), the optimization unit 34 returns the process to step S101. If it is determined to end the process (step S115: YES), the optimization unit 34 ends the process shown in FIG.
- the encoding unit 20 converts input data into encoded feature vectors.
- the quantization accuracy derivation unit 31 derives the quantization accuracy for each encoding feature, which is an element of the encoding feature vector, according to the encoded code amount.
- the quantization unit 21 performs a quantization process on the encoded feature vector based on the quantization accuracy, thereby obtaining a quantized encoded feature vector having the size of the quantized code amount targeted for the encoded code amount.
- the binarization unit 22 generates coded data by executing a binarization process on the quantized coded feature vector.
- the decoding unit 25 performs decoding processing on predetermined data corresponding to the encoded data.
- the extraction shaping unit 23a extracts the binarized data having the size of the decoded code amount from the encoded data.
- the extraction shaping unit 23a generates shaped decoding data by shaping the format of the extracted binary data based on the quantization accuracy.
- the inverse binarization unit 24 generates inverse binarization decoding data by performing inverse binarization processing on the shaping decoding data.
- the decoding unit 25 converts the inverse binarization decoding data into decoded data by executing a decoding process on the inverse binarization decoding data (predetermined data) based on the decoded code amount.
- the optimization unit 34 selects at least one of a parameter used for encoding processing for converting input data into an encoded feature vector, a parameter used for decoding processing, and a parameter used for deriving quantization accuracy. , updated based on the objective function.
- the number of encoding features “N” and the quantization accuracy “B n ” are not fixed, respectively, and the quantization accuracy “B n ” is derived according to the encoded code amount (compression rate). be done. Since the number of encoding features “N” is determined according to the quantization precision “B n ”, the input data is represented by the optimum expression (combination of the number of encoding features and the quantization precision) according to the encoded code amount. is encoded. This makes it possible to improve the accuracy of restoring input data from encoded data.
- FIG. 3 is a diagram showing an example of the relationship between compression rate (code amount) and peak signal-to-noise ratio.
- FIG. 3 shows an example relationship between compression ratio and peak signal-to-noise ratio for seismic data as an example.
- the horizontal axis indicates compression rate.
- the vertical axis indicates the peak signal-to-noise ratio (PSNR) [dB].
- PSNR peak signal-to-noise ratio
- AdaptiveBits indicates adaptively changed quantization accuracy (quantization accuracy according to the encoded code amount).
- a graph of "AdaptiveBits” is a graph relating to the encoding/decoding device 1a. In the graph relating to the encoding/decoding device 1a, points are plotted for each encoded code amount. Thus, the encoding/decoding device 1a can improve the accuracy (peak signal-to-noise ratio) of restoring input data from encoded data.
- FIG. 4 is a diagram illustrating an example of rate control.
- quantization-encoded feature vector 210 includes, by way of example, each quantization-encoded feature from element 211-1 to element 211-5.
- the binarization unit 22 acquires the quantization-encoded feature vector 210 from the quantization unit 21 .
- the binarization unit 22 generates encoded data 220 including binarized data by performing a binarization process on the quantized encoded feature vector 210 .
- the binarization unit 22 acquires the quantization precision vector 310 from the quantization precision derivation unit 31 .
- the quantization precision vector 310 is "[2, 1, 4, 3, 0]" as an example.
- the binarization unit 22 acquires encoded data 220 including binarized data of each element 211 from the binarization unit 22 .
- the quantization precision associated with the binarized data "...0010” of the element 211-1 is “2" in the quantization precision vector 310.
- the quantization precision associated with the binarized data "...0000” of the element 211-2 is “1” in the quantization precision vector 310.
- the quantization precision associated with the binarized data "...0101” of the element 211-3 is “4" in the quantization precision vector 310.
- the quantization precision associated with the binarized data "...0111” of the element 211-4 is “3” in the quantization precision vector 310.
- the quantization precision associated with the binarized data "...0000” of the element 211-5 is “0” in the quantization precision vector 310.
- the binarization unit 22 deletes from the encoded data 220 the binarized data outside the range of quantization accuracy (outside the rectangular frame represented by the dashed line in FIG. 4). Thereby, the binarization unit 22 generates the encoded data 220 having the size of the quantization code amount specified using the quantization precision vector 310 .
- the binarization unit 22 scans the binarized data of all the elements 211 .
- the binarization unit 22 scans the binarized data of all the elements 211 in order from the upper bit to the lower bit of the binarized data.
- the binarization unit 22 scans the binarized data of all the elements 211, for example, in order from the element 211-1 to the element 211-5.
- Each dashed-dotted arrow shown in encoded data 220 in FIG. 4 represents the order of such scanning.
- the binarization unit 22 acquires the most significant bit "0" within the range of each quantization precision from the binarized data.
- the binarization unit 22 acquires the upper bits “1” and “1” on the lower side within the range of each quantization precision from the binarized data.
- the binarization unit 22 acquires the upper bits “1”, “0” and “1” on the lower side within the range of each quantization precision from the binarized data.
- the binarization unit 22 acquires the least significant bits “0”, “0”, “1” and “1” within the range of each quantization precision from the binarized data.
- the quantization precision associated with the binarized data "...0000” of the element 211-5 is "0". Therefore, the binarized data of element 211-5 is outside the range of quantization accuracy. Therefore, in scanning, the binarization unit 22 does not acquire the binarized data "...0000” of the element 211-5. In this way, the binarization unit 22 deletes from the encoded data 220 the binarized data "...0000" of the element 211-5 whose quantization precision is "0".
- the binarization unit 22 is rate-controlled by combining the acquired binarized data (“0”, “11”, “101”, “0011”) in the order of acquisition of the binarized data.
- Generate encoded data 220 is "0111010011".
- the binarized data outside the range of quantization precision is deleted from the encoded data as rate control.
- the binarized data within each rectangular frame represented by the dashed line is sent as the encoded data 220 to the extraction shaping section 23a.
- the extraction shaping unit 23 a acquires the encoded data 220 from the binarization unit 22 .
- the extraction shaping unit 23 a acquires the quantization precision vector 310 from the quantization precision derivation unit 31 .
- the extraction shaping unit 23a extracts from the encoded data 220 the binary data having the size of the decoded code amount.
- the extraction shaping unit 23a performs shaping processing on the binarized data extracted from the encoded data 220 subjected to rate control.
- the extraction shaping unit 23a shapes the format of the extracted binary data into the format of the quantization-encoded feature vector, thereby generating data for decoding in a shaped format (data for shaping decoding). do.
- the extraction shaping unit 23a uses the quantization precision vector 310 to identify the position of the binarized data deleted from the rate-controlled encoded data 220 .
- the extraction shaping unit 23a complements the binarized data deleted from the rate-controlled encoded data 220 with a predetermined value (for example, 0) in the shaped decoding data.
- the binarization unit 22 deletes binarized data outside the range of quantization accuracy from the encoded data 220 based on the quantization accuracy vector 310 .
- the extraction shaping unit 23a identifies the bit position of the binarized data deleted from the encoded data 220 based on the quantization accuracy.
- the extraction shaping unit 23a supplements the position of the binarized data deleted from the encoded data 220 with a predetermined value (for example, 0) in the shaping decoding data.
- the encoding/decoding device 1b can perform rate control.
- Scalable decoding is to decode decoded data (reconstructed data of input data) of an arbitrary code amount equal to or less than the encoded code amount from encoded data.
- 2nd Embodiment demonstrates centering around the difference with 1st Embodiment.
- FIG. 5 is a diagram showing a configuration example of the encoding/decoding device 1b.
- the encoding/decoding device 1b is a system that performs encoding processing (data compression processing) on input data and decoding processing on encoded data. In the decoding process, the encoding/decoding device 1b executes scalable decoding on the decoding data extracted from the encoded data.
- the encoding/decoding device 1b includes an autoencoder 2 and a learning device 3.
- the autoencoder 2 includes an encoding unit 20 , a quantization unit 21 , a binarization unit 22 , an extraction shaping unit 23 b , an inverse binarization unit 24 and a decoding unit 25 .
- the learning device 3 includes a reconstruction error derivation unit 30, a quantization precision derivation unit 31, a code amount derivation unit 32, a code amount error derivation unit 33, and an optimization unit .
- FIG. 6 is a diagram showing an example of scalable decoding.
- the extraction and shaping section 23 b acquires the quantization precision vector 310 from the quantization precision derivation section 31 .
- the extraction shaping unit 23b acquires the decoded code amount “R dec ” from, for example, an information processing device (not shown). In the second embodiment, the decoded code amount “R dec ” is less than or equal to the quantized code amount “R”.
- the extraction shaping unit 23 b acquires the encoded data 220 from the binarization unit 22 .
- the extraction shaping unit 23 b extracts from the encoded data 220 the binary data having the size of the decoded code amount specified using the quantization precision vector 310 .
- the extraction shaping unit 23b performs shaping processing on the binarized data extracted from the encoded data 220.
- the extraction shaping unit 23b shapes the format of the extracted binarized data into the format of the quantization-encoded feature vector, thereby generating the shaped decoding data 230.
- the debinarized decoding data 240 includes debinarized data from elements 241-1 to 241-5 as an example.
- the quantization precision associated with the binarized data "...0010” of the element 241-1 is “2” in the quantization precision vector 310.
- the quantization precision associated with the binarized data “...0000” of the element 241-2 is “1” in the quantization precision vector 310.
- the quantization precision associated with the binarized data “...0101” (“...0100” in scalable decoding) of the element 241-3 is “4” in the quantization precision vector 310 .
- the quantization precision associated with the binarized data "...0111” (“...0110” in scalable decoding) of the element 241-4 is “3” in the quantization precision vector 310.
- the quantization precision associated with the binarized data "...0000” of the element 241-5 is “0” in the quantization precision vector 310.
- the extraction shaping unit 23b deletes the binarized data outside the range of quantization accuracy (outside the rectangular frame represented by the dashed line in FIG. 6) from the shaped decoding data 230 .
- the extraction and shaping unit 23b uses the quantization precision vector 310 to generate the decoding data 230 having the size of the designated decoding code amount.
- the extraction shaping unit 23b scans the binarized data of all the elements 241 .
- the extraction shaping unit 23b scans the binarized data of all the elements 241 in order from the upper bits to the lower bits of the binarized data.
- the extraction shaping unit 23b scans the binarized data of all the elements 241, for example, in order from the element 241-1 to the element 241-5.
- Each arrow of the dashed-dotted line shown in the decoding data 230 in FIG. 6 represents the order of such scanning.
- the extraction and shaping unit 23b acquires elements of the size of the decoded code amount “R dec ”.
- the extraction shaping unit 23b sets the remaining elements not acquired to a predetermined value (for example, 0).
- the decoded code amount “R dec ” is 8 bits as an example.
- the extraction shaping unit 23b acquires the most significant bit “0" within the range of each quantization precision from the binarized data.
- the extraction shaping unit 23b acquires the upper bits “1” and “1” on the lower side within the range of each quantization precision from the binarized data.
- the extraction shaping unit 23b acquires the upper bits “1”, “0” and “1” on the lower side within the range of each quantization precision from the binarized data.
- the extraction shaping unit 23b acquires the lowest bits "0" and "0” within the range of each quantization precision from the binarized data.
- the extraction shaping unit 23b sets the remaining binarized data within the range of quantization accuracy to a predetermined value (for example, 0) without acquiring it.
- the extraction shaping unit 23b converts each value "1" of the remaining binarized data within the range of quantization precision to each value " 0”.
- the quantization precision associated with the binarized data "...0000” of the element 241-5 is "0". Therefore, the binarized data of element 241-5 is outside the range of quantization accuracy. Therefore, in scanning, the extraction and shaping unit 23b does not acquire the binarized data "...0000” of the element 241-5. In this manner, the extraction shaping unit 23b deletes the binarized data “...0000” of the element 241-5 whose quantization precision is “0” from the decoding data 230.
- the extraction and shaping unit 23b combines the obtained binary data (“0”, “11”, “101”, “0000”) in the order in which the binary data was obtained, so that the quantization precision vector 310 is used to generate the decoding data 230 having the size of the designated decoding code amount.
- the decoding data 230 having the size of the decoded code amount is "0111010000". In this way, only the binarized data within each rectangular frame indicated by the dashed line in FIG.
- the debinarization unit 24 acquires the decoding data 230 having the size of the decoding code amount from the extraction shaping unit 23b.
- the debinarization unit 24 generates debinarization decoding data 240 by performing debinarization processing on the decoding data 230 having the size of the decoding code amount.
- the extraction shaping unit 23b acquires binarized data within the range of quantization accuracy from the extracted binarized data.
- the extraction shaping unit 23b shapes the format of the binarized data within the range of quantization accuracy, thereby generating shaped decoding data 230 (shaping decoding data).
- the extraction shaping unit 23b extracts the binarized data having the size of the decoded code amount from the binarized data within the range of quantization accuracy, thereby generating the shaped data for decoding 230. .
- the encoding/decoding device 1b can perform scalable decoding.
- FIG. 7 is a diagram showing a hardware configuration example of the encoding/decoding device 1 (encoding device) (decoding device) (data compression device) in each embodiment.
- the encoding/decoding device 1 corresponds to the encoding/decoding device 1a described above and the encoding/decoding device 1b described above.
- Some or all of the functional units of the encoding/decoding device 1 are configured by a processor 100 such as a CPU (Central Processing Unit) configured by a storage device 101 having a non-volatile recording medium (non-temporary recording medium) and a memory. It is implemented as software by executing a program stored in 102 .
- the program may be recorded on a computer-readable recording medium.
- Computer-readable recording media include portable media such as flexible discs, magneto-optical discs, ROM (Read Only Memory), CD-ROM (Compact Disc Read Only Memory), and storage such as hard disks built into computer systems. It is a non-temporary recording medium such as a device.
- Some or all of the functional units of the encoding/decoding device 1 are, for example, LSI (Large Scale Integrated circuit), ASIC (Application Specific Integrated Circuit), PLD (Programmable Logic Device), or FPGA (Field Programmable Gate Array). It may be implemented using hardware including electronic circuits (or circuitry) used.
- the present invention is applicable to devices that execute predetermined data processing.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US18/286,221 US20240214004A1 (en) | 2021-05-11 | 2021-05-11 | Encoding/decoding apparatus,encoding/decoding method and program |
| JP2023520630A JP7587187B2 (ja) | 2021-05-11 | 2021-05-11 | 符号化復号装置、符号化復号方法及びプログラム |
| PCT/JP2021/017893 WO2022239114A1 (ja) | 2021-05-11 | 2021-05-11 | 符号化復号装置、符号化復号方法及びプログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2021/017893 WO2022239114A1 (ja) | 2021-05-11 | 2021-05-11 | 符号化復号装置、符号化復号方法及びプログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2022239114A1 true WO2022239114A1 (ja) | 2022-11-17 |
Family
ID=84028927
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2021/017893 Ceased WO2022239114A1 (ja) | 2021-05-11 | 2021-05-11 | 符号化復号装置、符号化復号方法及びプログラム |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US20240214004A1 (https=) |
| JP (1) | JP7587187B2 (https=) |
| WO (1) | WO2022239114A1 (https=) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2025011493A1 (zh) * | 2023-07-11 | 2025-01-16 | 华为技术有限公司 | 解码网络模型、解码网络模型的量化方法及相关装置 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2020149311A (ja) * | 2019-03-13 | 2020-09-17 | キオクシア株式会社 | 情報処理方法及び情報処理装置 |
| WO2020230188A1 (ja) * | 2019-05-10 | 2020-11-19 | 日本電信電話株式会社 | 符号化装置、符号化方法及びプログラム |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5144688A (en) * | 1990-03-23 | 1992-09-01 | Board Of Regents, The University Of Texas System | Method and apparatus for visual pattern image coding |
| US5260783A (en) * | 1991-02-21 | 1993-11-09 | Gte Laboratories Incorporated | Layered DCT video coder for packet switched ATM networks |
| US5651026A (en) * | 1992-06-01 | 1997-07-22 | Hughes Electronics | Robust vector quantization of line spectral frequencies |
| US5592228A (en) * | 1993-03-04 | 1997-01-07 | Kabushiki Kaisha Toshiba | Video encoder using global motion estimation and polygonal patch motion estimation |
| US5623312A (en) * | 1994-12-22 | 1997-04-22 | Lucent Technologies Inc. | Compressed-domain bit rate reduction system |
| US5732389A (en) * | 1995-06-07 | 1998-03-24 | Lucent Technologies Inc. | Voiced/unvoiced classification of speech for excitation codebook selection in celp speech decoding during frame erasures |
| US5664055A (en) * | 1995-06-07 | 1997-09-02 | Lucent Technologies Inc. | CS-ACELP speech compression system with adaptive pitch prediction filter gain based on a measure of periodicity |
| US5729694A (en) * | 1996-02-06 | 1998-03-17 | The Regents Of The University Of California | Speech coding, reconstruction and recognition using acoustics and electromagnetic waves |
| US20010017941A1 (en) * | 1997-03-14 | 2001-08-30 | Navin Chaddha | Method and apparatus for table-based compression with embedded coding |
| US11600282B2 (en) * | 2021-07-02 | 2023-03-07 | Google Llc | Compressing audio waveforms using neural networks and vector quantizers |
-
2021
- 2021-05-11 US US18/286,221 patent/US20240214004A1/en not_active Abandoned
- 2021-05-11 WO PCT/JP2021/017893 patent/WO2022239114A1/ja not_active Ceased
- 2021-05-11 JP JP2023520630A patent/JP7587187B2/ja active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2020149311A (ja) * | 2019-03-13 | 2020-09-17 | キオクシア株式会社 | 情報処理方法及び情報処理装置 |
| WO2020230188A1 (ja) * | 2019-05-10 | 2020-11-19 | 日本電信電話株式会社 | 符号化装置、符号化方法及びプログラム |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2025011493A1 (zh) * | 2023-07-11 | 2025-01-16 | 华为技术有限公司 | 解码网络模型、解码网络模型的量化方法及相关装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPWO2022239114A1 (https=) | 2022-11-17 |
| US20240214004A1 (en) | 2024-06-27 |
| JP7587187B2 (ja) | 2024-11-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN120822552A (zh) | 用于压缩神经网络的参数的方法和装置 | |
| US20220188596A1 (en) | Data processing device, data processing system, and data processing method | |
| JP4777429B2 (ja) | マルチレート・アプリケーションの単一コードブック・ベクトル量子化 | |
| KR100737070B1 (ko) | 신호 디코딩 방법 및 디코딩 시스템과, 머신 액세스 가능한 기록 매체 | |
| WO2022239114A1 (ja) | 符号化復号装置、符号化復号方法及びプログラム | |
| JP5625808B2 (ja) | データ更新装置及びプログラム、並びに、動画像復号装置及びプログラム、並びに、動画像配信システム | |
| US20250150589A1 (en) | Encoder, decoder and methods for coding a data structure | |
| KR102766422B1 (ko) | 데이터 처리 장치, 데이터 처리 시스템 및 데이터 처리 방법 | |
| CN119110068B (zh) | 图像解码和编码方法、装置、设备及存储介质 | |
| WO2022013920A1 (ja) | 画像符号化方法、画像符号化装置及びプログラム | |
| EP3644515B1 (en) | Encoding device, decoding device, encoding method, decoding method and program | |
| KR102505834B1 (ko) | 신경망 모델을 이용한 오디오 신호의 부호화 및 복호화 방법 및 이를 수행하는 부호화기 및 복호화기 | |
| JP4214595B2 (ja) | 画像変換装置および方法、並びに記録媒体 | |
| JP6368287B2 (ja) | 適応量子化方法、適応量子化装置及び適応量子化プログラム | |
| JP2004120623A (ja) | 符号化装置、符号化方法、復号装置及び復号方法 | |
| JP2002044662A (ja) | データ符号化装置及び符号化方法並びにデータ復号化装置及び復号化方法 | |
| JP6502869B2 (ja) | 辞書生成方法、辞書生成装置及び辞書生成プログラム | |
| JP6581045B2 (ja) | 画像符号化方法、画像符号化装置及び画像符号化プログラム | |
| Belogolovyi | Image compression based on LDPC codes | |
| JP5345563B2 (ja) | 解探索装置、解探索方法および解探索プログラム | |
| JPH09107292A (ja) | 格子量子化器および入力ベクトルを格子量子化するための方法 | |
| WO2023088562A1 (en) | An autoencoder for data compression | |
| Shnaider et al. | Selecting lattices for quantization of wavelet coefficients of images | |
| JPWO1998059495A1 (ja) | 画像の反復変換符号化装置及び方法、画像の反復変換復号装置及び方法、並びに提供媒体 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21941848 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2023520630 Country of ref document: JP |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 18286221 Country of ref document: US |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 21941848 Country of ref document: EP Kind code of ref document: A1 |