WO2024084660A1 - 画像符号化装置、画像復号装置、画像処理システム、モデル学習装置、画像符号化方法、画像復号方法、および、コンピュータ可読記憶媒体 - Google Patents
画像符号化装置、画像復号装置、画像処理システム、モデル学習装置、画像符号化方法、画像復号方法、および、コンピュータ可読記憶媒体 Download PDFInfo
- Publication number
- WO2024084660A1 WO2024084660A1 PCT/JP2022/039119 JP2022039119W WO2024084660A1 WO 2024084660 A1 WO2024084660 A1 WO 2024084660A1 JP 2022039119 W JP2022039119 W JP 2022039119W WO 2024084660 A1 WO2024084660 A1 WO 2024084660A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- machine learning
- learning model
- image
- data
- unit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 64
- 238000012545 processing Methods 0.000 title claims description 51
- 238000010801 machine learning Methods 0.000 claims abstract description 356
- 238000007906 compression Methods 0.000 claims description 97
- 230000006835 compression Effects 0.000 claims description 97
- 238000000605 extraction Methods 0.000 claims description 59
- 230000006870 function Effects 0.000 claims description 28
- 239000000284 extract Substances 0.000 claims description 12
- 238000011176 pooling Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 description 44
- 238000010586 diagram Methods 0.000 description 30
- 238000009826 distribution Methods 0.000 description 27
- 238000013178 mathematical model Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 13
- 238000013139 quantization Methods 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 10
- 238000013528 artificial neural network Methods 0.000 description 7
- 101001014572 Homo sapiens MARCKS-related protein Proteins 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 5
- 239000013598 vector Substances 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 102100028187 ATP-binding cassette sub-family C member 6 Human genes 0.000 description 3
- 101000986621 Homo sapiens ATP-binding cassette sub-family C member 6 Proteins 0.000 description 3
- 101000940764 Homo sapiens Cysteine and glycine-rich protein 3 Proteins 0.000 description 3
- 102100032514 MARCKS-related protein Human genes 0.000 description 3
- 101001120884 Rana temporaria Melittin-like peptide Proteins 0.000 description 3
- 101001133082 Rattus norvegicus Intestinal mucin-like protein Proteins 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 102100028162 ATP-binding cassette sub-family C member 3 Human genes 0.000 description 2
- 101000986633 Homo sapiens ATP-binding cassette sub-family C member 3 Proteins 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
Definitions
- the present invention relates to an image encoding device, an image decoding device, an image processing system, a model learning device, an image encoding method, an image decoding method, and a computer-readable storage medium.
- Learning-based image compression technology is an image compression technology that uses a machine learning model to convert an image into compressed data with less information so that the original image can be restored.
- Learning-based image compression technology can achieve higher compression performance than general image compression technology.
- Indicators of compression performance include, for example, the compression rate from the original image to compressed data, the image quality of the restored data restored from the compressed data, and the recognition rate in image recognition of the restored data.
- Image compression technology is applied to a variety of applications and fields, including remote monitoring, conversation, and education.
- the load of computational processing using machine learning models is large. For this reason, it can be difficult to apply learning-based image compression technology to devices with limited computing resources.
- An example of a small-scale device with few computing resources is a low-power edge device. In order to promote the spread of learning-based image compression technology, it is hoped that the amount of computation will be reduced.
- Non-Patent Document 1 proposes Omni-dimensional Dynamic Convolution (ODConv).
- ODConv is a method that utilizes a multi-dimensional attention mechanism that enables parallel learning of complementary attentions of convolution kernels along all four dimensions of the kernel space in any convolution layer. That is, ODConv dynamically determines the attention for each kernel that constitutes a convolution filter group in each layer of the convolution layer using the input data.
- the parameters of the filter group required in the convolution layer can be dynamically selected.
- the parameters of the filter group may differ significantly depending on the input image data, but no calculations are required for unnecessary filters in each layer. This is expected to reduce the amount of calculations.
- the compressed data obtained by compressing the amount of information in image data is expressed as a code through coding, and is highly dependent on the filter group selected.
- the goal is to ensure that the data restored from compressed data is as close as possible to the original image data.
- the compressed data to be coded depends on the filters selected in the coding stage. If the filter group is not selected appropriately in the decoding stage, it may not be possible to restore the original image from the compressed data.
- An object of the present disclosure is to provide an image encoding device, an image decoding device, an image processing system, a model learning device, an image encoding method, an image decoding method, and a computer-readable storage medium that solve the above-mentioned problems.
- an image encoding device includes a context extraction unit that uses a first machine learning model on image data to extract context information indicating characteristics of the image data, a parameter determination unit that uses a second machine learning model on the context information to determine parameters of a third machine learning model, a compression unit that uses the third machine learning model on the image data to generate compressed data having a smaller amount of data than the image data, and an encoding unit that encodes the context information and the compressed data to generate a code sequence.
- an image decoding device includes a decoding unit that decodes context information and compressed data from a code sequence, a parameter determination unit that determines parameters of a fifth machine learning model using a fourth machine learning model on the context information, and a restoration unit that generates restored data using the fifth machine learning model on the compressed data.
- an image processing system includes an image encoding device and an image decoding device
- the image encoding device includes a context extraction unit that uses a first machine learning model on image data to extract context information indicating characteristics of the image data, a parameter determination unit that uses a second machine learning model on the context information to determine parameters of a third machine learning model, a compression unit that uses a third machine learning model on the image data to generate compressed data having a smaller amount of data than the image data, and an encoding unit that encodes the context information and the compressed data and generates a code sequence
- the image decoding device includes a decoding unit that decodes the context information and the compressed data from the code sequence, a parameter determination unit that uses a fourth machine learning model on the context information to determine parameters of a fifth machine learning model, and a restoration unit that uses the fifth machine learning model on the compressed data to generate restored data.
- the model learning device includes a context extraction unit that uses a first machine learning model on image data to extract context information indicating characteristics of the image data, a parameter determination unit that uses a second machine learning model on the context information to determine parameters of a third machine learning model, a compression unit that uses a third machine learning model on the image data to generate compressed data having a smaller amount of data than the image data, a parameter determination unit that uses a fourth machine learning model on the context information to determine parameters of a fifth machine learning model, a restoration unit that uses the fifth machine learning model on the compressed data to generate restored data, and a model learning unit that determines parameters of the first machine learning model, the second machine learning model, the third machine learning model, the fourth machine learning model, and the fifth machine learning model so that the difference between the image data and the restored data is reduced.
- an image encoding method in an image encoding device in which the image encoding device executes a context extraction step of extracting context information indicating characteristics of image data using a first machine learning model for the image data, a parameter determination step of determining parameters of a third machine learning model for the context information using a second machine learning model for the context information, a compression step of generating compressed data having a smaller amount of data than the image data using the third machine learning model for the image data, and an encoding step of encoding the context information and the compressed data to generate a code sequence.
- an image decoding method in an image decoding device in which the image decoding device executes a decoding step of decoding context information and compressed data from a code sequence, a parameter determination step of determining parameters of a fifth machine learning model using a fourth machine learning model on the context information, and a restoration step of generating restored data using the fifth machine learning model on the compressed data.
- FIG. 2 is a schematic block diagram showing an example of a functional configuration of the image processing system according to the present embodiment.
- FIG. 2 is a schematic block diagram showing an example of the functional configuration of the model learning device according to the present embodiment.
- FIG. 11 is a schematic block diagram showing a second example of the functional configuration of an image encoding device according to the present embodiment.
- FIG. 2 is a schematic block diagram showing an example of the functional configuration of a compression layer according to the present embodiment.
- FIG. 11 is a schematic block diagram showing a second example of the functional configuration of an image decoding device according to the present embodiment.
- FIG. 2 is a schematic block diagram showing an example of the functional configuration of a restoration layer according to the present embodiment.
- FIG. 1 is a schematic block diagram showing an implementation example of an image processing system according to an embodiment of the present invention. 2 is a schematic block diagram showing an example of the configuration of a statistical value calculation unit according to the embodiment; FIG. 11 is a schematic block diagram showing another example of the configuration of the encoding unit and the decoding unit according to the embodiment. FIG. FIG. 13 illustrates an example of a processing delay. A figure showing an example of MS-SSIM.
- FIG. 1 is a schematic block diagram showing an example of a minimum configuration of an image encoding device.
- FIG. 11 is a schematic block diagram showing an example of the minimum configuration of an image decoding device.
- FIG. 2 is a schematic block diagram showing an example of a minimum configuration of the image processing system.
- FIG. 2 is a schematic block diagram showing an example of a minimum configuration of a model learning device.
- FIG. 2 is a schematic block diagram illustrating an example of a hardware configuration of an image encoding device according to the present embodiment.
- Fig. 1 is a schematic block diagram showing an example of a functional configuration of an image processing system 1 according to this embodiment.
- the image processing system 1 includes an image encoding device 10 and an image decoding device 20.
- the image encoding device 10 and the image decoding device 20 are connected to each other using, for example, a transmission path that can transmit various data.
- the image encoding device 10 and the image decoding device 20 may be synchronously or asynchronously accessible to a common storage medium that can store various data.
- the image coding device 10 acquires image data, and extracts context information indicating the characteristics of the image data using a first machine learning model on the acquired image data.
- the image coding device 10 determines parameters of a third machine learning model on the extracted context information using a second machine learning model.
- the image coding device 10 generates compressed data with a smaller amount of data using the third machine learning model on the acquired image data.
- the image coding device 10 encodes the generated context information and compressed data to generate a code sequence (i.e., a data stream).
- the image coding device 10 transmits the generated code sequence.
- the image decoding device 20 acquires the code sequence sent from the image encoding device 10, and decodes the context information and compressed data indicated by the acquired code sequence.
- the image decoding device 20 determines parameters of a fifth machine learning model using a fourth machine learning model for the decoded context information.
- the image decoding device 20 generates reconstructed data using the fifth machine learning model for the decoded compressed data.
- the image decoding device 20 may output the generated reconstructed data to the outside, or may store it temporarily or continuously in a storage medium of its own device.
- the number of image encoding devices 10 and image decoding devices 20 is one each, but this is not limited to the above.
- the number of image encoding devices 10 may be two or more, and the number of image decoding devices 20 may be two or more.
- the image processing system 1 is applied to, for example, a distributed processing system.
- a distributed processing system includes multiple devices, and each device is distributed and positioned at different spatial locations.
- the image processing system 1 includes one or more data centers (not shown), and each data center may be connected to one or more edge devices (not shown).
- each edge device is installed near the source of the information to be processed, and may provide computing resources for that information.
- the data center executes processing related to the entire distributed processing system using various information provided by the edge devices.
- the data center may be installed in a location spatially separated from the edge devices.
- Each edge device includes an image encoding device 10 and a capturing unit (camera) (not shown).
- the capturing unit is an example of an information source that captures an image within its own field of view, and generates image data showing the captured image.
- the capturing unit provides the generated image data to the image encoding device 10.
- the data center may be configured as a single device, but is not limited to this.
- the data center may include multiple devices and be configured as a cloud that can send and receive data between them (not shown).
- the data center is configured to include, for example, a server device and a model learning device.
- the server device includes, for example, an image decoding device 20 and an image recognition unit (not shown). Code sequences from individual image encoding devices 10 can be input to the image decoding device 20 via a network as a transmission path.
- the image decoding device 20 outputs restored data obtained by decoding the code sequence to the image recognition unit.
- the image recognition unit performs image recognition processing on the restored image shown in the restored data input from the image decoding device 20.
- the data center uses the recognition results from the image recognition processing for monitoring the field of view of the imaging unit.
- the image encoding device 10 includes a context extraction unit 102, a parameter determination unit 104, a compression unit 106, and an encoding unit 108.
- the context extraction unit 102 acquires image data.
- the context extraction unit 102 uses a first machine learning model for image data representing an image of each frame to extract context information.
- the first machine learning model is a mathematical model for calculating an element value representing context information as an output value for a signal value for each pixel represented in the image data as an input value.
- the context extraction unit 102 outputs the extracted context information to the parameter determination unit 104 and the encoding unit 108.
- the parameter determination unit 104 uses the second machine learning model on the context information input from the context extraction unit 102 to determine parameters of the third machine learning model.
- the second machine learning model is a mathematical model for calculating parameters of the third machine learning model as output values for element values of the context information as input values.
- the parameter determination unit 104 sets the determined parameters of the third machine learning model in the compression unit 106.
- the compression unit 106 uses a third machine learning model on the acquired image data to generate compressed data.
- the amount of information in the generated compressed data is compressed so that it is less than the amount of data in the acquired image data (data compression).
- the third machine learning model is a mathematical model for calculating element values that indicate compressed data as output values for signal values for each pixel that are indicated in the image data as input values.
- the compression unit 106 uses parameters set by the parameter determination unit 104 as parameters of the third machine learning model.
- the compression unit 106 outputs the generated compressed data to the encoding unit 108.
- the encoding unit 108 includes a context encoding unit 108a and a compressed data encoding unit 108b.
- the context encoding unit 108a performs entropy coding on the context information input from the context extraction unit 102, and generates an entropy code sequence as a first code sequence.
- the context encoding unit 108a may perform entropy coding on a quantized value obtained by quantizing the input context information.
- the context encoding unit 108a and the compressed data encoding unit 108b may use any method, such as Huffman coding or arithmetic coding, as the entropy coding method.
- the compressed data encoding unit 108b performs entropy encoding on the compressed data input from the compression unit 106, and generates an entropy code sequence as a second code sequence.
- the compressed data encoding unit 108b may perform entropy encoding on a quantized value obtained by quantizing the input compressed data.
- the encoding unit 108 outputs a code sequence including the generated first code sequence and second code sequence.
- the image decoding device 20 includes a decoding unit 202, a parameter determination unit 204, and a restoration unit 206.
- the decoding unit 202 obtains the code sequence sent from the image encoding device 10 .
- the decoding unit 202 includes a context decoding unit 202a and a compressed data decoding unit 202b.
- the context decoding unit 202a performs entropy decoding on the first code sequence included in the acquired code sequence to generate context information.
- the context decoding unit 202a uses an entropy decoding method corresponding to the entropy coding method used by the context coding unit 108a.
- the context decoding unit 202a outputs the generated context information to the parameter determining unit 204.
- the compressed data decoding unit 202b performs entropy decoding on the second code sequence included in the acquired code sequence to generate compressed data.
- the compressed data decoding unit 202b uses an entropy decoding method corresponding to the entropy encoding method used by the compressed data encoding unit 108b.
- the compressed data decoding unit 202b outputs the generated compressed data to the restoration unit 206.
- the parameter determination unit 204 uses the fourth machine learning model on the context information input from the decryption unit 202 to determine parameters of the fifth machine learning model.
- the fourth machine learning model is a mathematical model for calculating parameters of the fifth machine learning model as output values for element values of the context information as input values.
- the parameter determination unit 204 sets the determined parameters of the fifth machine learning model in the restoration unit 206.
- the restoration unit 206 uses the fifth machine learning model on the acquired compressed data input from the decryption unit to generate restored data.
- the amount of data of the generated restored data is extended so that it is greater than the amount of data of the compressed data (data restoration).
- the fifth machine learning model is a mathematical model for calculating an element value indicating the compressed data as an output value for an element value of the compressed data as an input value.
- the fifth machine learning model can be a mathematical model equivalent to an inverse function corresponding to the third machine learning model.
- the restoration unit 206 uses the parameters set by the parameter determination unit 204 as parameters of the fifth machine learning model.
- the restoration unit 206 sends out the generated restored data.
- Fig. 2 is a schematic block diagram showing an example of the functional configuration of the model learning device 30 according to the present embodiment.
- the model learning device 30 includes a context extraction unit 312, a parameter determination unit 314, a compression unit 316, an encoding unit 318, a decoding unit 322, a parameter determination unit 324, a restoration unit 326, and a model learning unit 330.
- the encoding unit includes a context encoding unit 318a and a compressed data encoding unit 318b.
- the decoding unit 322 includes a context decoding unit 322a and a compressed data decoding unit 322b.
- the context extraction unit 312, the parameter determination unit 314, the compression unit 316, the context encoding unit 318a, and the compressed data encoding unit 318b are capable of executing processes similar to those of the context extraction unit 102, the parameter determination unit 104, the compression unit 106, the context encoding unit 108a, and the compressed data encoding unit 108b of the image encoding device 10, respectively, and have similar configurations.
- the explanation for the image encoding device 10 will be cited for these processes and configurations.
- the context decoding unit 322a, the compressed data decoding unit 322b, the parameter determination unit 324, and the restoration unit 326 are capable of executing processes similar to those of the context decoding unit 202a, the compressed data decoding unit 202b, the parameter determination unit 204, and the restoration unit 206 of the image decoding device 20, respectively, and have similar configurations.
- the explanation for the image decoding device 20 will be cited for these processes and configurations.
- the model learning unit 330 determines the parameters of the first machine learning model, the second machine learning model, the third machine learning model, the fourth machine learning model, and the fifth machine learning model so as to reduce the difference between the image data acquired by the context extraction unit 312 and the parameter determination unit 314 and the restored data output from the restoration unit 326.
- the model learning unit 330 sequentially sets the parameters of the first machine learning model, the second machine learning model, the third machine learning model, the fourth machine learning model, and the fifth machine learning model in the context extraction unit 312, the parameter determination unit 314, the compression unit 316, the parameter determination unit 324, and the restoration unit 326. As a result, these parameters are recurrently updated and can be adaptively learned.
- the model learning unit 330 can use, for example, a gradient method in updating the parameters of each machine learning model.
- the model learning unit 330 sequentially calculates the update amount of the parameters of each machine learning model for each update step, and obtains an added value obtained by adding the calculated update amount to the corresponding parameter as the updated parameter.
- the model learning unit 330 can determine whether or not the change in the parameter has converged based on whether the magnitude of the update amount is equal to or smaller than a predetermined threshold.
- the model learning unit 330 ends the learning of the machine learning model. Note that the model learning unit 330 may repeat the update of the parameters of the machine learning model a predetermined number of times and then end the learning of the machine learning model.
- the model learning unit 330 sets the parameters of the first machine learning model, the second machine learning model, and the third machine learning model in the context extraction unit 102, the parameter determination unit 104, and the compression unit 106 of the image encoding device 10, respectively.
- the model learning unit 330 sets the parameters of the fourth machine learning model and the fifth machine learning model in the parameter determination unit 204 and the restoration unit 206 of the image decoding device 20, respectively.
- the learning of the machine learning model in the model learning unit 330 may be performed independently of the operation of the image encoding device 10 and the image decoding device 20 (offline learning), or may be performed in parallel with the operation of the image encoding device 10 and the image decoding device 20.
- the model learning unit 330 may use image data acquired by the context extraction unit 102 or the compression unit 106 of the image encoding device 10 and restored data acquired from the restoration unit 206 of the image decoding device 20 (online learning).
- the model learning unit 330 may be provided in one or both of the image encoding device 10 and the image decoding device 20.
- the dedicated context extraction unit 312, parameter determination unit 314, compression unit 316, encoding unit 318, decoding unit 322, parameter determination unit 324, and restoration unit 326 may be omitted.
- the context extraction unit 102, parameter determination unit 104, and compression unit 106 of the image encoding device 10 may be set with parameters of the first machine learning model, the second machine learning model, and the third machine learning model obtained by learning in a device separate from the model learning device 30. Furthermore, the parameter determination unit 204 and restoration unit 206 of the image decoding device 20 may be set with parameters of the fourth machine learning model and the fifth machine learning model obtained by learning in a device separate from the model learning device 30.
- the image encoding process in the image encoding device 10 and the image decoding process in the image decoding device 20 may each have two or more layers (layering).
- the image encoding device 10 includes compression layers 110-1 to 110-N of N layers (N is a predetermined integer of 2 or more) and an encoding unit 108.
- the compression layer 110-n of the nth layer uses output data from the compression layer 110-n-1 of the immediately preceding layer, the n-1th layer, as input data, and outputs context information of the nth layer obtained for the input data to the context encoding unit 108a.
- the compression layer 110-n outputs compressed data obtained based on the context information of the nth layer for the input data input from the compression layer 110-n-1 as output data to the compression layer 110n+1 of the immediately following layer, the n+1th layer.
- the first compression layer 110-1 receives as input data image data obtained by the image encoding device 10.
- the Nth compression layer 110-N outputs compressed data to be output data to the compressed data encoding unit 108b.
- FIG. 4 is a schematic block diagram showing an example of the functional configuration of the compression layer 110-n according to this embodiment.
- the compression layer 110-n includes a context extraction unit 102-n, a parameter determination unit 104-n, and a compression unit 106-n.
- dashed lines indicate optional functional units.
- the description will be given assuming that the compression layer 110-n does not include a merge unit 112-n.
- the context extraction unit 102-n receives the output data output from the compression layer 110-n-1 as input data, and extracts n-th layer context information using the first machine learning model of the n-th layer (hereinafter referred to as the "n-th layer first machine learning model" or the like) as input data.
- the context extraction unit 102-n outputs the extracted n-th layer context information to the parameter determination unit 104-n.
- the parameter determination unit 104-n determines parameters of the n-th layer third machine learning model by using the n-th layer second machine learning model for the n-th layer context information.
- the parameter determination unit 104-n sets the determined parameters of the n-th layer third machine learning model in the compression unit 106-n.
- the compression unit 106-n uses the output data input from the compression layer 110-n-1 as input data, and generates output data with a smaller amount of data by using the n-th layer third machine learning model on the input data.
- the compression unit 106-n outputs the generated output data to the compression layer 110-n+1.
- the merge unit 112-n receives n-th layer context information from the context extraction unit 102-n and n-1-th layer accumulated context information from the compression layer 110-n-1.
- the merge unit 112-n merges the n-th layer context information with the n-1-th layer accumulated context information to form n-th layer accumulated context information.
- merge includes the meaning of concatenation.
- the merge unit 112-n outputs the n-th layer accumulated context information to the parameter determination unit 104-n and the compression layer 110-n+1.
- the parameter determination unit 104-n calculates parameters of the n-th layer third machine learning model using the n-th layer second machine learning model for the n-th layer accumulated context information instead of the n-th layer context information.
- parameter determination in the next layer can be made conditional (conditional).
- the merge unit 112-1 is omitted.
- the image decoding device 20 includes a decoding unit 202 and N-layer reconstruction layers 210-1 to 210-N.
- the reconstruction layers 210-1 to 210-N are layers corresponding to the compression layers 110-1 to 110-N, respectively.
- the n-th layer reconstruction layer 210-n receives the context information of the n-th layer from the context decoding unit 202a, and receives the output data from the immediately preceding layer, the reconstruction layer 210-n+1, as input data.
- the reconstruction layer 210-n outputs reconstruction data obtained based on the context information of the n-th layer for the input data as output data to the immediately succeeding layer, the n-1-th layer reconstruction layer 210-n-1.
- the Nth layer (210-N) receives compressed data as input data from the compressed data decoding unit 202b.
- the first layer (210-1) outputs reconstructed data as output data to the outside of the image decoding device 20.
- FIG. 6 is a schematic block diagram showing an example of the functional configuration of the restoration layer 210-n according to this embodiment.
- the restoration layer 210-n includes a parameter determination unit 204-n and a restoration unit 206-n.
- the description will be given assuming that the restoration layer 210-n does not include a merge unit 212-n.
- the parameter determination unit 104-n receives n-th layer context information from the context decoding unit 202a.
- the parameter determination unit 104-n determines parameters of the n-th layer fifth machine learning model using the n-th layer fourth machine learning model for the n-th layer context information.
- the parameter determination unit 104-n sets the determined parameters of the n-th layer fifth machine learning model in the restoration unit 206-n.
- the output data output from the reconstruction layer 210-n+1 is input to the reconstruction unit 206-n as input data.
- the reconstruction unit 206-n uses the n-th layer fifth machine learning model on the input data to generate output data with a larger amount of data than the input data.
- the reconstruction unit 206-n outputs the generated output data to the reconstruction layer 210-n-1.
- the merge unit 212-n receives layer n context information from the context decoding unit 202a and layer n-1 accumulated context information from the reconstruction layer 210-n-1.
- the merge unit 212-n merges the layer n context information with the layer n-1 accumulated context information to construct layer n accumulated context information.
- the merge unit 212-n outputs the constructed layer n accumulated context information to the reconstruction unit 206-n and the reconstruction layer 210-n+1.
- the parameter determination unit 204-n calculates parameters of the n-th layer fifth machine learning model using the n-th layer fourth machine learning model on the n-th layer accumulated context information instead of the n-th layer context information.
- the merge unit 212-1 is omitted.
- the reconstruction layer 210-N+1 does not exist as an output destination of the Nth layer accumulated context information from the merger unit 212-N.
- the first machine learning model extracts context information from image data as a function of the context extraction unit 102.
- context information means physical or technical characteristics or meanings of image data to be processed, or signs (signs, tokens, etc.) for distinguishing them, and other identifiers (identifiers, etc.).
- Image recognition is one aspect of extracting context information.
- FIG. 7 shows, as an example of the first machine learning model, a mathematical model that, when image data is input, identifies an identifier representing a "bicycle" as the object represented by the image as context information.
- FIG. 8 shows, as another example of the first machine learning model, a mathematical model that, when image data is input, identifies an identifier representing a "passenger car" as context information.
- the first machine learning model a mathematical model that provides candidates for individual context information for input of image data can be applied.
- the first machine learning model for example, any of a neural network, a decision tree, a random forest, etc. can be used.
- the neural network for example, a convolutional neural network (CNN) having a convolution part (convolution layer) can be applied.
- the activation function constituting the neural network any of a rectified linear unit (ReLU), a sigmoid function, a soft sign, etc. can be applied.
- ReLU rectified linear unit
- sigmoid function a soft sign, etc.
- the second machine learning model a mathematical model can be used that is capable of providing parameters of the third machine learning model as output corresponding to contextual information as input, the contextual information being sometimes represented by discrete values that do not exhibit technical or physical characteristics in themselves.
- the fourth machine learning model may be a mathematical model that provides parameters of the fifth machine learning model as an output corresponding to context information as an input.
- the fourth machine learning model may be a mathematical model that shows the same calculation procedure as the second machine learning model.
- the second machine learning model and the fourth machine learning model may each be a mathematical model that is linearly separable with respect to the input, or may each be a mathematical model that is linearly inseparable.
- a multi-layer perceptron which is a type of neural network, may be applied as the second machine learning model and the fourth machine learning model, respectively.
- a mathematical model can be used that can restore the technical or physical characteristics of the input data and derive output data expressed with a smaller amount of information from the input data.
- a mathematical model that shows a calculation process equivalent to the inverse operation of the third machine learning model can be applied.
- a CNN a recurrent neural network (RNN), etc.
- RNN recurrent neural network
- Fig. 9 is a schematic block diagram showing an implementation example in the image processing system 1 according to this embodiment.
- the image encoding device 10 includes N-level compression layers 110-1 to 110-N and an encoding unit 108.
- the third machine learning model functioning as the compression unit 106-n is a CNN having two convolution layers 1 and 2, two ReLU calculation units 1 and 2, and a merge unit.
- the two convolution layers 1 and 2 and the two ReLU calculation units 1 and 2 perform their respective calculations in parallel.
- the output value from one convolution layer 1 is supplied as an input value to one ReLU calculation unit 1
- the output value from the other convolution layer 2 is supplied as an input value to the other ReLU calculation unit 2.
- weight values (corresponding to attention) for each input value constituting multiple sample data belonging to each kernel and a bias value (bias) for that kernel are set as one of the parameters obtained by the parameter determination unit 104-n.
- the convolutional layer 1 performs a convolution operation on the input values constituting the data samples of that input data for each kernel, and outputs the obtained operation value as an output value to the ReLU operation unit 1.
- the operation value for the convolution operation is obtained by adding the bias value related to that kernel to the sum in the kernel of the multiplication value obtained by multiplying the input value by the corresponding weight value.
- the ReLU operation unit 1 uses the operation value for each kernel as an input value, calculates the ReLU function value for the input value, and outputs the obtained function value as an output value to the merge unit in the compression layer 110-n.
- parameters of the convolution operation for each kernel are set as the other parameters obtained by the parameter determination unit 104-n.
- the convolution operation is performed for each kernel on input values, which are data samples forming input data to the convolution layer 2, and the operation values obtained are output as output values to the other ReLU operation unit 2.
- the ReLU operation unit 2 uses the operation value for each kernel as an input value, calculates a ReLU function value for the input value, and outputs the obtained function value as an output value to the merge unit in the compression layer 110-n.
- the merge unit outputs the input value for each kernel from the ReLU computation unit 1 and output data indicating the input value for each kernel from the ReLU computation unit 2 to the compression layer 110-n+1.
- the first machine learning model functioning as the context extraction unit 102-n is a CNN including a convolutional layer 2, a ReLU calculation unit 2, a statistical value calculation unit, an MLP, and a quantization unit.
- the convolutional layer 2 and the ReLU calculation unit 2 are also used as part of the third machine learning model.
- the ReLU calculation unit 2 also outputs the output value for each kernel to the statistical value calculation unit.
- the statistical value calculation unit is an example of a pooling layer that performs pooling on the output value of each kernel and calculates statistics with a smaller number of elements as a representative value of the layer.
- the statistical value calculation unit outputs the calculated statistical value as an output value to the MLP1. An example of the statistical value calculation unit will be described later.
- the MLP functions as an encoder, and receives the output value from the statistical value calculation unit as an input value, and outputs a calculated value for the input value to the quantization unit as an output value.
- the quantization unit outputs n-th layer context information indicating, as an element, a quantized value obtained by quantizing the output value input from the MPL to the merge unit 112-n.
- the second machine learning model functioning as the parameter determination unit 104-n is a neural network including two MLPs 1 and 2.
- the two MLPs 1 and 2 function as either of the decoders.
- One of the MLPs, MLP1 receives n-th layer accumulated context information from the merge unit 112-n.
- the other MLP1 uses the element value indicated by the n-th layer accumulated context information as an input value, and sets the calculation value for the input value as a parameter of the convolution layer 1 of the third machine learning model of the compression unit 106-n.
- the element values indicated by the (n-1)th layer context information are used as input values, and the calculation values for the input values are set as parameters of convolutional layer 2 of the third machine learning model of compression unit 106-n.
- the second machine learning model of the parameter determination unit 104-1 MLP2 is omitted.
- the parameters of the convolutional layer 2 of the third machine learning model of the compression unit 106-1 are set in advance by model learning.
- the merge unit 112-1 is omitted in the compressed layer 110-1.
- the quantization unit of the context extraction unit 102-1 outputs first layer context information to the parameter determination unit 104-1 and the compressed layer 110-2.
- the first layer context information corresponds to first layer accumulated context information.
- the encoding unit 108 includes a context encoding unit 108a, a compressed data encoding unit 108b, and a quantization unit 108d.
- the context encoder 108a receives N-th layer accumulated context information from the compression layer 110-N.
- the N-th layer accumulated context information includes the first layer context information to the N-th layer context information, and is formed by combining these.
- the context encoder 108a performs entropy coding on the N-th layer accumulated context information to generate a first code sequence.
- the quantization unit 108d receives the compressed data from the compression layer 110-N, quantizes the element values indicated in the compressed data, and outputs quantized compressed data indicating the quantized element values to the compressed data encoding unit 108b.
- the compressed data encoding unit 108b performs entropy encoding on the quantized compressed data input from the quantization unit 108d to generate a second code sequence.
- the encoding unit 108 outputs a code sequence including the first code sequence and the second code sequence to the image decoding device 20 .
- the image decoding device 20 includes a decoding unit 202 and N-level reconstruction layers 210-1 to 210-N.
- the decoding unit 202 decodes the code sequence input from the image encoding device 10 .
- the decoding unit 202 includes a context decoding unit 202a and a compressed data decoding unit 202b.
- the context decoding unit 202a performs entropy decoding on a first code sequence included in the input code sequence to obtain first-layer context information to N-th-layer context information.
- the context decoding unit 202a outputs the obtained first-layer context information to N-th-layer context information to the reconstruction layers 210-1 to 210-N, respectively.
- the compressed data decoding unit 202b performs entropy decoding on the second code sequence included in the input code sequence to convert it into compressed data.
- the compressed data decoding unit 202b outputs the converted compressed data to the restoration layer 210-N.
- the fourth machine learning model functioning as the parameter determination unit 204-n is a neural network having an MLP, and functions as a decoder.
- the nth layer context information is input to the MLP from the context decoding unit 202a.
- the MLP uses the element value indicated by the nth layer context information as an input value, and sets the calculation value for the input value as a parameter of the deconvolution layer of the fifth machine learning model of the restoration unit 206-n.
- the fifth machine learning model that functions as the restoration unit 206-n in the restoration layer 210-n has a ReLU calculation unit and a deconvolution layer.
- the ReLU calculation unit receives the output data from the restoration layer 210-n+1 as input data, calculates a ReLU function value for the input value that constitutes the input data, and inputs the obtained function value as an output value to the deconvolution layer.
- the deconvolution layer receives the output value from the ReLU calculation unit as an input value for each kernel, and outputs output data indicating the calculation value for each sample obtained by performing a deconvolution calculation on the input value as an output value to the restoration layer 210-n-1. In the deconvolution calculation, multiple calculation values are obtained for each input value.
- a set of multiple samples corresponds to one kernel, and a weight value for each sample and one bias value for each kernel become parameters of the deconvolution layer.
- the restoration layer 210-n calculates the sum of the bias value and the product of the weight value and input value for each sample as the output value of that sample.
- the ReLU calculation unit of the reconstruction layer 210-N receives compressed data as input data from the compressed data decoding unit 202b of the decoding unit 202. Reconstructed data is sent as output data from the deconvolution layer of the reconstruction layer 210-1.
- Fig. 10 is a schematic block diagram showing a configuration example of the statistical value calculation unit 122-n according to this embodiment.
- the statistical value calculation unit 122-n includes at least a global average pooling (GAP) unit 1221-n.
- GAP global average pooling
- the input value of the input data input to the GAP unit 1221-n is obtained as a data sample by calculating a value output for each kernel from the ReLU calculation unit 2.
- the image data input to the image encoding device 10 represents, for example, a color image
- the channel corresponds to a primary color expressing the color image.
- the channel indicates any one of red (R), green (G), and blue (B).
- the input value Y cxy forms a data sample for each sample arranged in a three-dimensional space stretched in the horizontal direction (x direction), vertical direction (y direction), and color direction (c direction) that are orthogonal to each other.
- Each sample in the first layer corresponds to a pixel, and the input value corresponds to a color signal value.
- the GAP unit 1221-n calculates an average value Yc of input values Ycxy as a statistical value, which is a data sample acquired for each of a plurality of kernels arranged in a two-dimensional plane stretched in the horizontal and vertical directions for each channel.
- the statistical value calculation unit 122-n outputs the calculated statistical value to the MLP as an output value.
- the statistical value calculation unit 122-n may further include a cross product calculation unit 1222-n, a GAP unit 1223-n, a triangulation/flattening unit 1224-n, and a merging unit 1225-n.
- the cross product calculation unit 1222-n calculates the cross product Ycxy * Yc'xy between channels of the input value Ycxy forming the data sample output for each kernel from the ReLU unit 2 for each channel pair (c, c') and for each kernel (x, y) arranged in a two-dimensional plane.
- the cross product calculation unit 1222-n outputs the calculated cross product to the GAP unit 1223-n.
- the channel c and the channel c' may be equal.
- the GAP unit 1223-n calculates an average value Z cc' between the kernels of the cross product Y cxy *Y c'xy input from the cross product calculation unit 1222-n, between pairs of channels.
- the GAP unit 1223-n outputs the calculated average value Z cc' to the triangularization/flattening unit 1224-n.
- the calculated set of average values Z cc' can be expressed as a matrix in which the channels c and c' are arranged as rows and columns, respectively, and the average values Z cc' are arranged as elements.
- the triangularization/flattening unit 1224-n adopts an element value Z cc ' ⁇ c, c' ⁇ c ⁇ c' ⁇ of the average value Z cc ' such that the channel c is equal to or less than the channel c' (triangularization).
- the adopted element value Z cc ' can be expressed as a triangular matrix.
- the triangularization/flattening unit 1224-n arranges the adopted element values Z cc ' in a row (flattening) and configures it as an average value vector W d .
- the triangularization/flattening unit 1224-n outputs the configured average value vector W d to the merging unit 1225-n.
- the merge unit 1225-n outputs a vector value obtained by combining the statistical value Yc input from the GAP unit 1221-n with the mean vector Wd as a new statistical value to the MLP.
- FIG. 11 is a schematic block diagram showing another example of the configuration of the encoding unit 108 and the decoding unit 202 according to the present embodiment.
- the encoding unit 108 includes a context encoding unit 108a, a compressed data encoding unit 108b, a quantization unit 108d, and a distribution estimation unit 108c.
- the distribution estimation unit 108c uses the sixth machine learning model to estimate the probability distribution of element values representing compressed data that will be input values to the quantization unit 108d for the Nth layer accumulated context information input from the compression layer 110-N.
- the distribution estimation unit 108c can calculate the probability distribution using, for example, a Gaussian Mixture Model (GMM).
- GMM Gaussian Mixture Model
- the Gaussian mixture model is a mathematical model that uses a predetermined number of normal distributions (Gaussian functions) as basic functions and expresses a continuous probability distribution as a linear combination of these basis functions.
- the output values from the sixth machine learning model include parameters that represent the probability distribution, i.e., the weighting coefficient (weight), mean, and variance, which are parameters of each normal distribution.
- the distribution estimation unit 108c sets the estimated probability distribution in the compressed data encoding unit 108b.
- the distribution estimation unit 108c can calculate the parameters of the probability distribution as the output values by using each element value of the N-th layer cumulative context information as an input value to the sixth machine learning model.
- the distribution estimation unit 108c sets the probability distribution represented by using the calculated parameters to the quantization unit 108d.
- the compressed data encoding unit 108b uses the probability distribution set by the distribution estimation unit 108c to perform entropy encoding on the element values of the compressed data after quantization input from the quantization unit 108d.
- entropy encoding a larger amount of information is assigned to compressed data with less entropy estimated from the probability distribution, thereby reducing the overall amount of information in the code sequence generated by encoding.
- the decoding unit 202 includes a context decoding unit 202a, a compressed data decoding unit 202b, and a distribution estimating unit 202c.
- the distribution estimation unit 202c estimates a probability distribution of element values representing compressed data decoded from the second code sequence using a seventh machine learning model as a method similar to that of the distribution estimation unit 108c in the encoding unit 108, for the N-th layer accumulated context information input from the context decoding unit 202a.
- MLP can be used as the seventh machine learning model.
- the distribution estimation unit 202c sets the estimated probability distribution in the compressed data decoding unit 202b.
- the compressed data decoding unit 202b performs entropy decoding on the second code sequence using the probability distribution set by the distribution estimation unit 202c, and decodes the compressed data.
- the entropy encoding method in the compressed data encoding unit 108b and the entropy decoding method in the compressed data decoding unit 202b for example, the encoding method and decoding method described in International Publication WO2022/130477 can be applied.
- the model learning unit 330 can determine the parameters of the first machine learning model, the second machine learning model, the third machine learning model, the fourth machine learning model, and the fifth machine learning model for each layer so that the difference between the image data to be encoded and the restored data obtained by decoding is small. Also, as illustrated in Figure 11, even when a probability distribution is used for entropy encoding and entropy decoding, the model learning unit 330 can determine the parameters of the sixth machine learning model and the seventh machine learning model by including the processes of entropy encoding and entropy decoding in obtaining the restored data.
- the encoding unit 108 may combine the generated first and second code sequences and send them as a single code sequence, or may send the first and second code sequences individually without combining them.
- the first and second code sequences may be assigned to different predetermined timings.
- the first and second code sequences may be sent to different transmission paths or memory areas.
- the decoding unit 202 extracts the first code sequence and the second code sequence from the acquired code sequence, and provides the extracted first code sequence and the second code sequence to the compressed data decoding unit 202b and the context decoding unit 202a, respectively.
- the decoding unit 202 may extract the first code sequence and the second code sequence from the code sequence according to each timing.
- the first code sequence and the second decoded sequence are sent individually, the first code sequence and the second decoded sequence may be provided to the compressed data decoding unit 202b and the context decoding unit 202a, respectively.
- the processing delay was measured as the time from input of image data to the image encoding device 10 to output of restored data from the image decoding device 20.
- MS-SSIM is an example of an index value for image quality. A larger value indicates higher image quality.
- the configuration examples shown in Figures 9 to 11 were adopted as this embodiment.
- the kernel size of each kernel was set to 3 pixels horizontally and 3 pixels vertically, and the stride was set to 2 pixels horizontally and vertically. The stride corresponds to the application interval of the calculation.
- the kernel size was set to 3 pixels horizontally and 3 pixels vertically, and the stride was set to 2 pixels.
- the image size for each method was set to 1920 pixels horizontally and 1080 pixels vertically (1080p).
- Fig. 12 is a diagram showing an example of processing delay.
- the vertical axis of Fig. 12 indicates processing delay (unit: ms (milliseconds)), and the horizontal axis indicates the method.
- Methods (1) to (5) are all comparative examples, and method (6) is the present embodiment.
- Method (5) is a "no parameter selection, no encoding/decoding" method that selects parameters corresponding to context information, but does not involve encoding or decoding of the context information.
- Fig. 13 is a diagram showing an example of MS-SSIM.
- the vertical axis of Fig. 13 indicates MS-SSIM, and the horizontal axis indicates bpp (bits per pixel).
- bpp is a unit of the amount of information transmitted per pixel. The smaller the bpp, the higher the coding efficiency. In general, each technique has a relationship in which the more information there is, the higher the quality. 13 shows that the quality increases in the order of methods (1), (5), (2), (7), (3), (6), and (4).
- Method (7) is a method that selects parameters corresponding to context information as "parameter selection, GAP encoding/decoding", but involves encoding and decoding of statistics that are part of the context information (i.e., output values from GAP). However, it does not involve encoding and decoding of other parts of the context information, such as the filter coefficients of each kernel (i.e., weight values and bias values for each sample).
- method (6) according to this embodiment can improve the quality of the restored data more than methods such as JPEG (Joint Photographic Experts Group), which is widely used for general still image compression, and ITU-T H.264 (AVC: Advanced Video Coding) and ITU-T H.265 (HEVC: High Efficiency Video Coding), which are widely used for video compression.
- JPEG Joint Photographic Experts Group
- ITU-T H.264 AVC: Advanced Video Coding
- ITU-T H.265 High Efficiency Video Coding
- the context extraction unit 102 of the image encoding device 10 may stop extracting context information when the amount of variation from the image data of the frame from which the context information was last extracted (hereinafter sometimes referred to as the "reference frame") to the image data of the current frame is within a predetermined reference value of the amount of variation. In this case, no new context information is provided to the parameter determination unit 104.
- the compression unit 106 continues to use the parameters of the third machine learning model corresponding to the last context information related to the reference frame in compressing the image data related to the current frame.
- the encoding unit 108 Since the encoding unit 108 does not perform encoding on new context information, the first code sequence related to the current frame is not provided to the image decoding device 20. As a result, new context information is not provided to the parameter determination unit 204 of the image decoding device 20.
- the restoration unit 206 continues to use the parameters of the fifth machine learning model corresponding to the last context information related to the reference frame in restoring the restored data related to the current frame.
- the context extraction unit 102 determines for each frame whether the amount of variation from the image data of the reference frame to the image data of the current frame is within a predetermined reference value of the amount of variation.
- the context extraction unit 102 can use, for example, the sum of squared differences (SSD) or the sum of absolute differences (SAD) of signal values as an index of the amount of variation from the image data of the reference frame to the image data of the current frame.
- the context extraction unit 102 can use the norm (distance) between vectors representing the context information related to the reference frame and the current frame as an index value of the amount of variation.
- each compression layer may determine whether to stop extracting context information depending on whether the amount of variation is within a predetermined reference value of the amount of variation. Also, at least one compression layer (e.g., the first compression layer 110-1) may determine whether to stop extracting context information for all layers depending on whether the amount of variation from the reference frame to the current frame is within a predetermined reference value of the amount of variation.
- Information on a target information amount (bit rate) or a target image quality is set as setting information in the context extraction unit 102 of the image encoding device 10, and the set setting information may be used in a calculation as part of an input value for the first machine learning model to extract context information.
- the target information amount is a target value of the information amount of the entire code sequence including the first code sequence indicating the context information and the second code sequence indicating the compressed data.
- the target information amount may be defined in any unit such as the number of bits per pixel, the number of bits per frame, or the number of bits per second (bit rate).
- the target image quality is a target value of the image quality of the context information obtained by decoding the code sequence and the restored data restored from the compressed data.
- the target image quality may be defined using any index such as MS-SSIM or SNR (Signal-to-Noise Ratio).
- the model learning unit 330 determines parameters for each of the first to fifth machine learning models in model learning so that the difference between the information amount of the code sequence and the target information amount is reduced while the target information amount is input to the first machine learning model.
- the model learning unit 330 of the model learning device 30 determines parameters of the first to fifth machine learning models so as to reduce a loss function including a first factor indicating the magnitude of the difference between the image data and the restored data and a second factor indicating the magnitude of the difference between the information amount of the code sequence and the target information amount.
- the model learning unit 330 determines the information amount of the code sequence input from the encoding unit 108 of the image encoding device 10 or the encoding unit 318 of its own device, and uses the determined information amount for model learning. Prior to model learning, the model learning unit 330 acquires in advance the target information amount set in the context extraction unit 102 of the image encoding device 10 or the context extraction unit 312 of its own device.
- the model learning unit 330 determines parameters of each of the first to fifth machine learning models in model learning so that the target image quality is input to the first machine learning model and the difference between the information amount of the code sequence and the target information amount is reduced.
- the model learning unit 330 of the model learning device 30 determines parameters of the first to fifth machine learning models so as to reduce a loss function including a first factor indicating the magnitude of the difference between the image data and the restored data and a second factor indicating the magnitude of the difference between the image quality of the restored image indicated by the restored data and the target image quality.
- the model learning unit 330 determines the image quality of the restored image indicated by the restored data input from the restoration unit 206 of the image decoding device 20 or the restoration unit 326 of the own device, and uses the determined image quality for model learning. Prior to model learning, the model learning unit 330 acquires in advance the target image quality set in the context extraction unit 102 of the image encoding device 10 or the context extraction unit 312 of the own device.
- the image encoding device 10 includes a context extraction unit 102 that uses a first machine learning model on image data to extract context information indicating characteristics of the image data, a parameter determination unit 104 that uses a second machine learning model on the context information to determine parameters of a third machine learning model, a compression unit 106 that uses the third machine learning model on the image data to generate compressed data having a smaller amount of data than the image data, and an encoding unit 108 that encodes the context information and the compressed data to generate a code sequence.
- a context extraction unit 102 that uses a first machine learning model on image data to extract context information indicating characteristics of the image data
- a parameter determination unit 104 that uses a second machine learning model on the context information to determine parameters of a third machine learning model
- a compression unit 106 that uses the third machine learning model on the image data to generate compressed data having a smaller amount of data than the image data
- an encoding unit 108 that encodes the context information and the compressed data to generate a code sequence.
- the image decoding device 20 includes a decoding unit 202 that decodes context information and compressed data from a code sequence, a parameter determination unit 204 that determines parameters of a fifth machine learning model using a fourth machine learning model on the context information, and a restoration unit 206 that generates restored data using the fifth machine learning model on the compressed data.
- parameters of a third machine learning model are determined for generating compressed data with less information for the image data using the second machine learning model for context information indicating the characteristics of the image data extracted using the first machine learning model for the image data.
- Parameters of a fifth machine learning model are determined for generating restored data from the compressed data using a fourth machine learning model for the context information.
- parameters of the third machine learning model are determined according to the characteristics of the image data, and these parameters are estimated based on the context information decoded by the fourth machine learning model.
- the third machine learning model may have a convolution layer that performs a convolution operation for each kernel having multiple data samples, and the parameters of the third machine learning model may include at least a weighting coefficient of the data samples.
- the fifth machine learning model may include a deconvolution layer that performs a deconvolution operation for each kernel having one or more data samples, and the parameters of the fifth machine learning model may include at least the deconvolution coefficients of the data samples.
- the first machine learning model may include a pooling layer that determines a representative value based on the output value for each kernel. According to this configuration, it is possible to determine parameters of the third machine learning model by analyzing global characteristics and the strength of the characteristics rather than a kernel consisting of multiple data samples, which contributes to efficient compression of the amount of information by a convolution operation according to the global characteristics and the strength of the characteristics.
- the image encoding device 10 may receive image data for each frame, and the context extraction unit 102 may stop extracting context information when the amount of variation between the image data of the frame from which context information was last extracted and the image data of the current frame is within a predetermined reference value.
- the context information is not encoded, and compressed data is generated using parameters of the third machine learning model corresponding to the last extracted context information.
- restored data is generated using parameters of the fifth machine learning model corresponding to the context information. Therefore, it is possible to reduce the amount of information of the code sequence by encoding while suppressing the deterioration of image quality due to the restored data.
- the context extraction unit 102 may determine the context information based on the image data and further on a target information amount or a target image quality.
- the target information amount is a target value of the information amount of a code sequence including the context information and the code of the compressed data
- the target image quality is a target value of the image quality of the restored data restored from the context information and the compressed data. According to this configuration, it is possible to obtain a code sequence having a set target information amount or restored data having a set target image quality, thereby realizing compression and restoration of image data according to a required information amount or image quality.
- the image encoding device 10 may have a first machine learning model, a second machine learning model, and a third machine learning model in N (N is an integer of 2 or more) layers (e.g., compression layers 110-1 to 110-N), and the third machine learning model in the nth (n is an integer of 2 or more and N or less) layer receives output data from the third machine learning model in the n-1th layer, and the second machine learning model in the nth layer receives output data from the first machine learning model in the nth layer, and the encoding unit 108 may encode the output data from the third machine learning model in the Nth layer as compressed data, and encode the output data from the first machine learning models from the first layer to the Nth layer as context information.
- N is an integer of 2 or more layers
- the third machine learning model in the nth (n is an integer of 2 or more and N or less) layer receives output data from the third machine learning model in the n-1th layer
- the second machine learning model in the nth layer receives output
- the image decoding device 20 may have a fourth machine learning model and a fifth machine learning model in N layers (e.g., restoration layers 210-1 to 210-N), and the fifth machine learning model in the (n-1)th layer may receive output data from the fifth machine learning model in the nth layer, and the fourth machine learning model in the nth layer may receive the context information of the nth layer.
- the context information by the first machine learning model of each layer is accumulated and encoded, and compressed data with a high compression ratio is obtained from the image data by the third machine learning model of each layer.
- parameters of the fifth machine learning model are obtained from the context information decoded by the fourth machine learning model of each layer. Therefore, restored data that is close to the original image data can be obtained from the compressed data with a high compression ratio. Therefore, it is possible to improve the encoding efficiency without degrading the image quality of the restored data.
- the model learning device 30 of this embodiment includes a context extraction unit 312 that extracts context information indicating the characteristics of the image data using a first machine learning model on the image data, a parameter determination unit 314 that determines parameters of a third machine learning model using a second machine learning model on the context information, a compression unit 316 that uses the third machine learning model on the image data to generate compressed data having less information than the image data, a parameter determination unit 324 that determines parameters of a fifth machine learning model using a fourth machine learning model on the context information, a restoration unit 326 that generates restored data using the fifth machine learning model on the compressed data, and a model learning unit 330 that determines parameters of the first machine learning model, the second machine learning model, the third machine learning model, the fourth machine learning model and the fifth machine learning model so that the difference between the image data and the restored data is reduced.
- a context extraction unit 312 that extracts context information indicating the characteristics of the image data using a first machine learning model on the image data
- a parameter determination unit 314 that determines
- Fig. 14 is a schematic block diagram showing an example of the minimum configuration of the image encoding device 10 of the present application.
- the image encoding device 10 includes a context extraction unit 102 that extracts context information indicating the characteristics of image data using a first machine learning model for the image data, a parameter determination unit 104 that determines parameters of a third machine learning model using a second machine learning model for the context information, a compression unit 106 that generates compressed data having a smaller amount of data than the image data using the third machine learning model for the image data, and an encoding unit 108 that encodes the context information and the compressed data to generate a code sequence.
- FIG. 15 is a schematic block diagram showing an example of the minimum configuration of the image decoding device 20 of the present application.
- the image decoding device 20 includes a decoding unit 202 that decodes context information and compressed data from a code sequence, a parameter determination unit 204 that determines parameters of a fifth machine learning model using a fourth machine learning model on the context information, and a restoration unit 206 that generates restored data using the fifth machine learning model on the compressed data.
- the image processing system 1 includes an image encoding device 10 and an image decoding device 20.
- the image encoding device 10 includes a context extraction unit 102 that extracts context information indicating characteristics of the image data using a first machine learning model for the image data, a parameter determination unit 104 that determines parameters of a third machine learning model for the context information using a second machine learning model for the context information, a compression unit 106 that generates compressed data having a smaller amount of data than the image data using the third machine learning model for the image data, and an encoding unit 108 that encodes the context information and the compressed data and generates a code sequence.
- the image decoding device 20 includes a decoding unit 202 that decodes the context information and compressed data from the code sequence, a parameter determination unit 204 that determines parameters of a fifth machine learning model for the context information using a fourth machine learning model, and a restoration unit 206 that generates restored data using the fifth machine learning model for the compressed data.
- FIG. 17 is a schematic block diagram showing an example of a minimum configuration of the model learning device 30 of the present application.
- the model learning device 30 includes a context extraction unit 312 that extracts context information indicating characteristics of the image data using a first machine learning model for the image data, a parameter determination unit 314 that determines parameters of a third machine learning model using a second machine learning model for the context information, a compression unit 316 that generates compressed data having a smaller amount of data than the image data using the third machine learning model for the image data, a parameter determination unit 324 that determines parameters of a fifth machine learning model using a fourth machine learning model for the context information, a restoration unit 326 that generates restored data using the fifth machine learning model for the compressed data, and a model learning unit 330 that determines parameters of the first machine learning model, the second machine learning model, the third machine learning model, the fourth machine learning model, and the fifth machine learning model so that the difference between the image data and the restored data is reduced.
- Each of the above devices may include a computer system.
- the computer system includes one or more processors such as a CPU (Central Processing Unit).
- the processor included in the computer system may include one or more GPUs.
- the process of each of the above-mentioned parts is stored in a computer-readable storage medium in the form of a program for each device or apparatus, and the computer reads the instructions written in the program and executes the processing instructed by the instructions, thereby exerting those functions.
- the above-mentioned machine learning model may be written in the program.
- the computer system includes software such as an OS (Operation System), a device driver, and a utility program, and hardware such as a processor, a storage medium, and a peripheral device.
- OS Operating System
- a device driver a device driver
- a utility program a utility program
- hardware such as a processor, a storage medium, and a peripheral device.
- computer-readable recording medium refers to a storage device such as a magnetic disk, a magneto-optical disk, a ROM (Read Only Memory), a portable medium such as a semiconductor memory, and a hard disk built into a computer system.
- the computer-readable recording medium may include a device that dynamically holds a program for a short period of time, such as a communication line used when transmitting a program using a network such as the Internet or a communication line such as a telephone line, and a volatile memory inside a computer system that is a server or client in that case, and the like, which holds a program for a certain period of time.
- the above-mentioned program may be a program for realizing a part of the above-mentioned functions, or may be a so-called differential file (differential program) that can realize the above-mentioned functions in combination with a program already recorded in the computer system.
- the image encoding device 10 may have a hardware configuration including a processor 152, a drive unit 156, an input/output unit 158, a ROM 162, and a RAM (Random Access Memory) 164 as illustrated in FIG.
- the processor 152 controls processes for implementing the functions of the image encoding device 10 and the functions of each component of the image encoding device 10 .
- the drive unit 156 includes an auxiliary storage device that reads various data stored in the storage medium 154 or stores various data in the storage medium 154.
- the drive unit 156 may be, for example, a solid state drive (SSD) or a hard disk drive (HDD).
- the storage medium 154 is, for example, a non-volatile memory such as a flash memory.
- the drive unit 156 may be configured so that the storage medium 154 is detachable.
- the input/output unit 158 inputs or outputs various data wirelessly or via a wire to or from other devices.
- the input/output unit 158 may be connected to other devices via a communication network so that various data can be input/output.
- the input/output unit 158 may include, for example, an input/output interface, a communication interface, or a combination thereof.
- ROM 162 continuously stores a program containing commands that instruct the various processes to be executed by each part of image encoding device 10, various data such as parameters for executing the programs, and various data acquired by each part of image encoding device 10.
- the RAM 164 is mainly used as a working area (main storage area) for the processor 152.
- the processor 152 When the processor 152 is started, it records the programs and parameters stored in the ROM 162 in the RAM 164. The processor then temporarily records in the RAM 164 the results of calculations obtained by the execution of the programs and the acquired data.
- the image decoding device 20, the model learning device 30, an edge device including any of them, and some or all of the server device may also be provided with the hardware configuration exemplified in FIG. 18.
- the devices or apparatus in the above-mentioned embodiments may be realized as integrated circuits such as LSI (Large Scale Integration).
- LSI Large Scale Integration
- Each functional block, each section, and each step of each device or apparatus may be individually processed, or may be integrated in part or in whole to be processed, or may be configured as a module.
- the method of integrated circuitization is not limited to LSI, and may be realized by dedicated circuits or general-purpose processors.
- an integrated circuit technology that can replace LSI appears due to advances in semiconductor technology, an integrated circuit based on that technology may be used.
- An image encoding device comprising: a context extraction unit that uses a first machine learning model on image data to extract context information indicating characteristics of the image data; a parameter determination unit that uses a second machine learning model on the context information to determine parameters of a third machine learning model; a compression unit that uses the third machine learning model on the image data to generate compressed data having a smaller amount of data than the image data; and an encoding unit that encodes the context information and the compressed data to generate a code sequence.
- the third machine learning model includes a convolution layer that performs a convolution operation for each kernel having a plurality of data samples, and the parameters include at least a weighting coefficient for the data samples.
- the first machine learning model includes a pooling layer that determines a representative value based on the output value for each kernel.
- the context extraction unit determines the context information based on the image data and further on a target information amount or a target image quality, the target information amount being a target value of the information amount of a code sequence including the context information and the code of the compressed data, and the target image quality being a target value of the image quality of the restored data restored from the context information and the compressed data.
- the image encoding device of Supplementary Note 1 has the first machine learning model, the second machine learning model, and the third machine learning model in N (N is an integer equal to or greater than 2) layers, the third machine learning model in the nth (n is an integer equal to or greater than 2 and equal to or less than N) layer receives output data from the third machine learning model in the n-1th layer, and the second machine learning model in the nth layer receives output data from the first machine learning model in the nth layer, and the encoding unit encodes the output data from the third machine learning model in the Nth layer as the compressed data, and encodes the output data from the first machine learning models from the first layer to the Nth layer as the context information.
- An image decoding device comprising: a decoding unit that decodes context information and compressed data from a code sequence; a parameter determination unit that determines parameters of a fifth machine learning model using a fourth machine learning model on the context information; and a restoration unit that generates restored data using the fifth machine learning model on the compressed data.
- the fifth machine learning model includes a deconvolution layer that performs a deconvolution operation for each kernel having one or more data samples, and the parameters include at least the deconvolution coefficients of the data samples.
- the image decoding device of Supplementary Note 7 has the fourth machine learning model and the fifth machine learning model in N (N is an integer equal to or greater than 2) layers, and the fifth machine learning model in the n-1th (n is an integer equal to or greater than 2 and equal to or less than N) layer receives output data from the fifth machine learning model in the nth layer, and the fourth machine learning model in the nth layer receives the context information in the nth layer.
- Appendix 10 A computer-readable storage medium storing a program for causing a computer to function as the image encoding device of Appendix 1 or the image decoding device of Appendix 7.
- An image processing system including an image encoding device and an image decoding device, the image encoding device including a context extraction unit that uses a first machine learning model on image data to extract context information indicating characteristics of the image data, a parameter determination unit that uses a second machine learning model on the context information to determine parameters of a third machine learning model, a compression unit that uses a third machine learning model on the image data to generate compressed data having a smaller amount of information than the image data, and an encoding unit that encodes the context information and the compressed data and generates a code sequence, and the image decoding device includes a decoding unit that decodes the context information and the compressed data from the code sequence, a parameter determination unit that uses a fourth machine learning model on the context information to determine parameters of a fifth machine learning model, and a restoration unit that uses the fifth machine learning model on the compressed data to generate restored data.
- the encoding unit separately transmits a first code sequence generated by encoding the context information and a second code sequence generated by encoding the compressed data, and the decoding unit decodes the context information from the first code sequence and decodes the compressed data from the second code sequence.
- a model learning device comprising: a context extraction unit that uses a first machine learning model on image data to extract context information indicating characteristics of the image data; a parameter determination unit that uses a second machine learning model on the context information to determine parameters of a third machine learning model; a compression unit that uses a third machine learning model on the image data to generate compressed data having a smaller amount of information than the image data; a parameter determination unit that uses a fourth machine learning model on the context information to determine parameters of a fifth machine learning model; a restoration unit that uses the fifth machine learning model on the compressed data to generate restored data; and a model learning unit that determines parameters of the first machine learning model, the second machine learning model, the third machine learning model, the fourth machine learning model, and the fifth machine learning model so that the difference between the image data and the restored data is reduced.
- An image encoding method in an image encoding device in which the image encoding device executes a context extraction step of extracting context information indicating characteristics of image data using a first machine learning model for the image data, a parameter determination step of determining parameters of a third machine learning model for the context information using a second machine learning model for the context information, a compression step of generating compressed data having less information than the image data using the third machine learning model for the image data, and an encoding step of encoding the context information and the compressed data to generate a code sequence.
- An image decoding method in an image decoding device in which the image decoding device executes a decoding step of decoding context information and compressed data from a code sequence, a parameter determination step of determining parameters of a fifth machine learning model using a fourth machine learning model for the context information, and a restoration step of generating restored data using the fifth machine learning model for the compressed data.
- the image encoding device, image decoding device, image processing system, model learning device, image decoding method, and computer-readable storage medium of each of the above aspects can be used for encoding, compressing, transmitting, decoding, etc., of various types of data including one or both of still images and moving images.
- 1...image processing system 10...image encoding device, 20...image decoding device, 30...model learning device, 102, 102-n...context extraction unit, 104, 104n...parameter determination unit, 106, 106-n...compression unit, 108...encoding unit, 108a...context encoding unit, 108b...compressed data encoding unit, 108d...quantization unit, 110-1 to 110-N...compression layer, 112-n...merge unit, 152...processor, 156...drive unit, 158...input/output unit, 162...ROM, 164...RAM, 202...decoding unit, 202 a...context decoding unit, 202b...compressed data decoding unit, 204, 204-n...parameter determination unit, 206, 206-n...restoration unit, 210-1 to 210-N...restoration layer, 212-n...merging unit, 312...context extraction unit, 314...parameter determination unit, 316...compression unit, 3
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出し、前記コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定し、前記画像データに対して第3機械学習モデルを用いて前記画像データよりも情報量が少ない圧縮データを生成し、前記コンテキスト情報と前記圧縮データを符号化し、符号系列を生成する。符号系列からコンテキスト情報と圧縮データを復号し、前記コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定し、前記圧縮データに前記第5機械学習モデルを用いて復元データを生成する。
Description
本発明は、画像符号化装置、画像復号装置、画像処理システム、モデル学習装置、画像符号化方法、画像復号方法、および、コンピュータ可読記憶媒体に関する。
学習型画像圧縮技術は、機械学習モデルを用いて、もとの画像を復元できるように、より情報量が少ない圧縮データに変換する画像圧縮技術である。学習型画像圧縮技術によれば、一般的な画像圧縮技術よりも高い圧縮性能が得られる。圧縮性能の指標として、例えば、もとの画像から圧縮データへの圧縮率、圧縮データから復元される復元データの画質、復元データに対する画像認識における認識率などが用いられる。
画像圧縮技術は、遠隔監視、会話、教育、など多様な用途や分野に応用されている。一般に、機械学習モデルを用いた演算処理の負荷は大きい。そのため、学習型画像圧縮技術を演算資源が少ない機器に適用することが困難なことがある。演算資源が少ない小規模な機器として、例えば、低電力エッジデバイスがある。学習型画像圧縮技術の普及を図るうえで、演算量の低減が期待される。
この点、非特許文献1では、全次元動的畳み込み(ODConv:Omni-dimensional Dynamic Convolution)が提案されている。ODConvは、いずれの畳み込み層(convolution layer)におけるカーネル空間の全4次元に沿った畳み込みカーネルの相補的アテンション(complementary attentions)を並列に学習可能とする多次元学習機構(multi-dimensional attention mechanism)を活用する手法である。即ち、ODConvは、畳み込み層の各層において、畳み込みフィルタ群をなすカーネルごとのアテンション(attention)を、その入力データを用いて動的に定める。この手法によれば、畳込み層で必要とするフィルタ群のパラメータを動的に(dynamically)選択することができる。フィルタ群のパラメータは、入力される画像データにより顕著に異なり得るが、各層において不要なフィルタに対する演算を要しない。そのため、演算量の削減が期待される。
Chao Li, Aojun Zhou, Anbang Yao, "OMNI-DIMENSIONAL DYNAMIC CONVOLUTION, "Generative Adversarial Networks for Extreme Learned image Compression", International Conference on Learning Representations (ICLR 2022), 1-20, April 25-29, 2022
しかしながら、画像符号化では、画像データの情報量を圧縮して得られる圧縮データが符号化により符号で表現され、選択されるフィルタ群に大きく依存する。画像符号化におけるモデル学習では、圧縮データから復元される復元データがもとの画像データに可能な限り近似することを目標とする。そのため、動的なフィルタ群の選択が有効に機能せず、同じフィルタ群が選択され続けるおそれがある。符号化対象とする圧縮データは、符号化段階において選択されるフィルタに依存する。復号段階においてフィルタ群が適切に選択されないと、圧縮データからもとの画像を復元できないことがある。
本開示は、上述の課題を解決する画像符号化装置、画像復号装置、画像処理システム、モデル学習装置、画像符号化方法、画像復号方法、および、コンピュータ可読記憶媒体を提供することを一つの目的とする。
本開示の第1の態様によれば、画像符号化装置は、画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部と、前記コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部と、前記画像データに対して第3機械学習モデルを用いて前記画像データよりもデータ量が少ない圧縮データを生成する圧縮部と、前記コンテキスト情報と前記圧縮データを符号化し、符号系列を生成する符号化部と、を備える。
本開示の第2の態様によれば、画像復号装置は、符号系列からコンテキスト情報と圧縮データを復号する復号部と、前記コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部と、前記圧縮データに前記第5機械学習モデルを用いて復元データを生成する復元部と、を備える。
本開示の第3の態様によれば、画像処理システムは、画像符号化装置と画像復号装置を備え、前記画像符号化装置は、画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部と、前記コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部と、前記画像データに対して第3機械学習モデルを用いて前記画像データよりもデータ量が少ない圧縮データを生成する圧縮部と、前記コンテキスト情報と前記圧縮データを符号化し、符号系列を生成する符号化部と、を備え、前記画像復号装置は、前記符号系列から前記コンテキスト情報と前記圧縮データを復号する復号部と、前記コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部と、前記圧縮データに前記第5機械学習モデルを用いて復元データを生成する復元部と、を備える。
本開示の第4の態様によれば、モデル学習装置は、画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部と、前記コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部と、前記画像データに対して第3機械学習モデルを用いて前記画像データよりもデータ量が少ない圧縮データを生成する圧縮部と、前記コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部と、前記圧縮データに前記第5機械学習モデルを用いて復元データを生成する復元部と、前記画像データと前記復元データとの差分が減少するように、前記第1機械学習モデル、前記第2機械学習モデル、前記第3機械学習モデル、前記第4機械学習モデルおよび前記第5機械学習モデルのパラメータを定めるモデル学習部と、を備える。
本開示の第5の態様によれば、画像符号化装置における画像符号化方法であって、前記画像符号化装置が、画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出ステップと、前記コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定ステップと、前記画像データに対して第3機械学習モデルを用いて前記画像データよりもデータ量が少ない圧縮データを生成する圧縮ステップと、前記コンテキスト情報と前記圧縮データを符号化し、符号系列を生成する符号化ステップと、を実行する。
本開示の第6の態様によれば、画像復号装置における画像復号方法であって、前記画像復号装置が、符号系列からコンテキスト情報と圧縮データを復号する復号ステップと、前記コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定ステップと、前記圧縮データに前記第5機械学習モデルを用いて復元データを生成する復元ステップと、を実行する。
本開示によれば、処理量を顕著に増加させずに、もとの画像を符号化して得られる符号から、もとの画像に近似した高画質の画像を復元することができる。
以下、図面を参照して本発明の実施形態について説明する。
<第1実施形態>
第1実施形態について説明する。図1は、本実施形態に係る画像処理システム1の機能構成の一例を示す概略ブロック図である。画像処理システム1は、画像符号化装置10と、画像復号装置20を備える。画像符号化装置10と画像復号装置20は、例えば、各種のデータを伝送可能とする伝送路(transmission path)を用いて接続される。画像符号化装置10と画像復号装置20は、各種のデータを記憶可能とする共通の記憶媒体に同期して(synchronously)または非同期で(asynchronously)接続可能(accessible)としてもよい。
<第1実施形態>
第1実施形態について説明する。図1は、本実施形態に係る画像処理システム1の機能構成の一例を示す概略ブロック図である。画像処理システム1は、画像符号化装置10と、画像復号装置20を備える。画像符号化装置10と画像復号装置20は、例えば、各種のデータを伝送可能とする伝送路(transmission path)を用いて接続される。画像符号化装置10と画像復号装置20は、各種のデータを記憶可能とする共通の記憶媒体に同期して(synchronously)または非同期で(asynchronously)接続可能(accessible)としてもよい。
画像符号化装置10は、画像データを取得し、取得した画像データに対して第1機械学習モデル(machine learning model)を用いて、その画像データの特徴を示すコンテキスト情報(context information)を抽出する。画像符号化装置10は、抽出したコンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定する。画像符号化装置10は、取得した画像データに対して第3機械学習モデルを用いて、よりデータ量が少ない圧縮データ(compressed data)を生成する。画像符号化装置10は、生成したコンテキスト情報と圧縮データを符号化し、符号系列(code sequence、即ち、データストリーム(data stream))を生成する。画像符号化装置10は、生成した符号系列を送出する。
画像復号装置20は、画像符号化装置10から送出される符号系列を取得し、取得した符号系列で示されるコンテキスト情報と圧縮データを復号する。画像復号装置20は、復号したコンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定する。画像復号装置20は復号した圧縮データに対して第5機械学習モデルを用いて復元データ(reconstructed data)を生成する。画像復号装置20は、生成した復元データを外部に出力してもよいし、一時的または継続的に自装置の記憶媒体に記憶してもよい。
図1に例示される画像処理システム1では、画像符号化装置10と画像復号装置20の個数は、各1個であるが、それには限らない。画像符号化装置10の個数は2個以上になることも、画像復号装置20の個数が2個以上になってもよい。画像処理システム1は、例えば、分散処理システム(distributed system)に応用される。分散処理システムは、複数の機器を備え、個々の機器は、空間的に異なる位置に分散配置される。
画像処理システム1は、1個以上のデータセンタ(data center、図示せず)を備え、個々のデータセンタには1個以上のエッジデバイス(edge device、図示せず)と接続されてもよい。一般に、個々のエッジデバイスは、処理対象とする情報の情報源(source)の近傍に設置され、その情報に対する演算資源(computing resource)を提供することがある。他方、データセンタは、エッジデバイスから提供される各種の情報を用いて分散処理システム全体に係る処理を実行する。データセンタは、エッジデバイスから空間的に離れた位置に設置されうる。個々のエッジデバイスは、画像符号化装置10と、撮影部(カメラ)を備える(図示せず)。撮影部は、自部の視野内の画像を撮影する情報源の例であり、撮影した画像を示す画像データを生成する。撮影部は、生成した画像データを画像符号化装置10に提供する。
データセンタは、単一の機器として構成されてもよいが、これには限られない。データセンタは、複数の機器を含み、相互にデータを送受信できるクラウド(cloud)として構成されてもよい(図示せず)。データセンタは、例えば、サーバ装置とモデル学習装置を含んで構成される。サーバ装置は、例えば、画像復号装置20と画像認識部を備える(図示せず)。画像復号装置20には、伝送路としてネットワークを経由して個々の画像符号化装置10からの符号系列が入力されうる。画像復号装置20は、符号系列を復号して得られる復元データを画像認識部に出力する。画像認識部は、画像復号装置20から入力される復元データに示される復元画像に対して画像認識処理を実行する。データセンタは、画像認識処理による認識結果を撮影部の視野内の監視(monitoring)に用いる。
次に、本実施形態に係る画像符号化装置10の機能構成の一例について説明する。画像符号化装置10は、コンテキスト抽出部102、パラメータ決定部104、圧縮部106および符号化部108を備える。
コンテキスト抽出部102は、画像データを取得する。コンテキスト抽出部102は、各フレームの画像を示す画像データに対して第1機械学習モデルを用い、コンテキスト情報を抽出する。第1機械学習モデルは、入力値として画像データに示される画素ごとの信号値に対して、出力値としてコンテキスト情報を示す要素値を演算するための数理モデルである。コンテキスト抽出部102は、抽出したコンテキスト情報をパラメータ決定部104と符号化部108に出力する。
パラメータ決定部104は、コンテキスト抽出部102から入力されるコンテキスト情報に対して第2機械学習モデルを用い、第3機械学習モデルのパラメータを決定する。第2機械学習モデルは、入力値としてコンテキスト情報の要素値に対して、出力値として第3機械学習モデルのパラメータを演算するための数理モデルである。パラメータ決定部104は、決定した第3機械学習モデルのパラメータを圧縮部106に設定する。
圧縮部106は、取得された画像データに対して第3機械学習モデルを用い、圧縮データを生成する。生成される圧縮データの情報量は、取得された画像データのデータ量よりも少なくなるように圧縮される(データ圧縮)。第3機械学習モデルは、入力値として画像データに示される画素ごとの信号値に対して、出力値として圧縮データを示す要素値を演算するための数理モデルである。圧縮部106は、出力値の演算の際に、第3機械学習モデルのパラメータとして、パラメータ決定部104により設定されたパラメータを用いる。圧縮部106は、生成した圧縮データを符号化部108に出力する。
符号化部108は、コンテキスト符号化部108aおよび圧縮データ符号化部108bを備える。
コンテキスト符号化部108aは、コンテキスト抽出部102から入力されるコンテキスト情報に対してエントロピー符号化(entropy coding)を行い、エントロピー符号系列を第1符号系列として生成する。コンテキスト符号化部108aは、入力されるコンテキスト情報を量子化して得られる量子化値に対してエントロピー符号化を行ってもよい。コンテキスト符号化部108aおよび圧縮データ符号化部108bは、エントロピー符号化方式として、例えば、ハフマン符号化(Huffman coding)、算術符号化(arithmetic coding)などの、いずれの方式を用いることができる。
コンテキスト符号化部108aは、コンテキスト抽出部102から入力されるコンテキスト情報に対してエントロピー符号化(entropy coding)を行い、エントロピー符号系列を第1符号系列として生成する。コンテキスト符号化部108aは、入力されるコンテキスト情報を量子化して得られる量子化値に対してエントロピー符号化を行ってもよい。コンテキスト符号化部108aおよび圧縮データ符号化部108bは、エントロピー符号化方式として、例えば、ハフマン符号化(Huffman coding)、算術符号化(arithmetic coding)などの、いずれの方式を用いることができる。
圧縮データ符号化部108bは、圧縮部106から入力される圧縮データに対してエントロピー符号化を行い、エントロピー符号系列を第2符号系列として生成する。圧縮データ符号化部108bは、入力される圧縮データを量子化して得られる量子化値に対してエントロピー符号化を行ってもよい。
符号化部108は、生成された第1符号系列と第2符号系列を含む符号系列を送出する。
符号化部108は、生成された第1符号系列と第2符号系列を含む符号系列を送出する。
次に、本実施形態に係る画像復号装置20の機能構成の一例について説明する。画像復号装置20は、復号部202、パラメータ決定部204および復元部206を備える。
復号部202は、画像符号化装置10から送出された符号系列を取得する。
復号部202は、コンテキスト復号部202aおよび圧縮データ復号部202bを備える。
コンテキスト復号部202aは、取得された符号系列に含まれる第1符号系列に対してエントロピー復号を行い、コンテキスト情報を生成する。コンテキスト復号部202aは、コンテキスト符号化部108aで用いられたエントロピー符号化方式に対応するエントロピー復号方式を用いる。コンテキスト復号部202aは、生成したコンテキスト情報をパラメータ決定部204に出力する。
圧縮データ復号部202bは、取得された符号系列に含まれる第2符号系列に対してエントロピー復号を行い、圧縮データを生成する。圧縮データ復号部202bは、圧縮データ符号化部108bで用いられたエントロピー符号化方式に対応するエントロピー復号方式を用いる。圧縮データ復号部202bは、生成した圧縮データを復元部206に出力する。
復号部202は、コンテキスト復号部202aおよび圧縮データ復号部202bを備える。
コンテキスト復号部202aは、取得された符号系列に含まれる第1符号系列に対してエントロピー復号を行い、コンテキスト情報を生成する。コンテキスト復号部202aは、コンテキスト符号化部108aで用いられたエントロピー符号化方式に対応するエントロピー復号方式を用いる。コンテキスト復号部202aは、生成したコンテキスト情報をパラメータ決定部204に出力する。
圧縮データ復号部202bは、取得された符号系列に含まれる第2符号系列に対してエントロピー復号を行い、圧縮データを生成する。圧縮データ復号部202bは、圧縮データ符号化部108bで用いられたエントロピー符号化方式に対応するエントロピー復号方式を用いる。圧縮データ復号部202bは、生成した圧縮データを復元部206に出力する。
パラメータ決定部204は、復号部202から入力されるコンテキスト情報に対して第4機械学習モデルを用い、第5機械学習モデルのパラメータを決定する。第4機械学習モデルは、入力値としてコンテキスト情報の要素値に対して、出力値として第5機械学習モデルのパラメータを演算するための数理モデルである。パラメータ決定部204は、決定した第5機械学習モデルのパラメータを復元部206に設定する。
復元部206は、復号部から入力される取得された圧縮データに対して第5機械学習モデルを用い、復元データを生成する。生成される復元データのデータ量は、圧縮データのデータ量よりも多くなるように伸長(extend)される(データ復元)。第5機械学習モデルは、入力値として圧縮データの要素値に対して、出力値として圧縮データを示す要素値を演算するための数理モデルである。第5機械学習モデルは、第3機械学習モデルに対応する逆関数に相当する数理モデルとなりうる。復元部206は、出力値の演算の際に、第5機械学習モデルのパラメータとして、パラメータ決定部204により設定されたパラメータを用いる。復元部206は、生成した復元データを送出する。
次に、本実施形態に係るモデル学習装置の機能構成の一例について説明する。図2は、本実施形態に係るモデル学習装置30の機能構成の一例を示す概略ブロック図を示す。
モデル学習装置30は、コンテキスト抽出部312、パラメータ決定部314、圧縮部316、符号化部318、復号部322、パラメータ決定部324、復元部326およびモデル学習部330を備える。符号化部は、コンテキスト符号化部318aと圧縮データ符号化部318bを備える。復号部322は、コンテキスト復号部322aと圧縮データ復号部322bを備える。
モデル学習装置30は、コンテキスト抽出部312、パラメータ決定部314、圧縮部316、符号化部318、復号部322、パラメータ決定部324、復元部326およびモデル学習部330を備える。符号化部は、コンテキスト符号化部318aと圧縮データ符号化部318bを備える。復号部322は、コンテキスト復号部322aと圧縮データ復号部322bを備える。
コンテキスト抽出部312、パラメータ決定部314、圧縮部316、コンテキスト符号化部318aおよび圧縮データ符号化部318bは、それぞれ、画像符号化装置10のコンテキスト抽出部102、パラメータ決定部104、圧縮部106、コンテキスト符号化部108aおよび圧縮データ符号化部108bと同様の処理を実行可能とし、同様の構成を有する。これらの処理および構成に対しては、画像符号化装置10に対する説明を援用する。
コンテキスト復号部322a、圧縮データ復号部322b、パラメータ決定部324および復元部326は、それぞれ、画像復号装置20のコンテキスト復号部202a、圧縮データ復号部202b、パラメータ決定部204および復元部206と同様の処理を実行可能とし、同様の構成を有する。これらの処理および構成に対しては、画像復号装置20に対する説明を援用する。
コンテキスト復号部322a、圧縮データ復号部322b、パラメータ決定部324および復元部326は、それぞれ、画像復号装置20のコンテキスト復号部202a、圧縮データ復号部202b、パラメータ決定部204および復元部206と同様の処理を実行可能とし、同様の構成を有する。これらの処理および構成に対しては、画像復号装置20に対する説明を援用する。
モデル学習部330は、コンテキスト抽出部312とパラメータ決定部314に取得される画像データと、復元部326から出力される復元データとの差分が減少するように、第1機械学習モデル、第2機械学習モデル、第3機械学習モデル、第4機械学習モデルおよび第5機械学習モデル、それぞれのパラメータを定める。モデル学習部330は、第1機械学習モデル、第2機械学習モデル、第3機械学習モデル、第4機械学習モデルおよび第5機械学習モデル、それぞれのパラメータを、コンテキスト抽出部312、パラメータ決定部314、圧縮部316、パラメータ決定部324および復元部326に逐次に設定する。これにより、これらのパラメータが再帰的に更新されることで(recurrently updated)、適応的に学習されうる(adaptively learned)。
画像データと復元データとの差分の大きさを示す損失関数(loss function)として、その差分に対するL1ノルム、L2ノルム、画像データと復元データとの交差エントロピー(cross entropy)などのいずれか、または、それらの加重和を用いることができる。
モデル学習部330は、個々の機械学習モデルのパラメータの更新において、例えば、勾配法(gradient method)を用いることができる。モデル学習部330は、個々の機械学習モデルのパラメータの更新量を更新ステップごとに逐次に算出し、算出した更新量を対応するパラメータに加算して得られる加算値を、更新後のパラメータとして得られる。モデル学習部330は、更新量の大きさが所定の閾値以下となるかにより、パラメータの変化が収束したか否かを判定することができる。モデル学習部330は、収束したと判定されるとき、機械学習モデルの学習を終了する。なお、モデル学習部330は、機械学習モデルのパラメータの更新を予め定めた十分多くの回数繰り返し、その後、機械学習モデルの学習を終了してもよい。
モデル学習部330は、個々の機械学習モデルのパラメータの更新において、例えば、勾配法(gradient method)を用いることができる。モデル学習部330は、個々の機械学習モデルのパラメータの更新量を更新ステップごとに逐次に算出し、算出した更新量を対応するパラメータに加算して得られる加算値を、更新後のパラメータとして得られる。モデル学習部330は、更新量の大きさが所定の閾値以下となるかにより、パラメータの変化が収束したか否かを判定することができる。モデル学習部330は、収束したと判定されるとき、機械学習モデルの学習を終了する。なお、モデル学習部330は、機械学習モデルのパラメータの更新を予め定めた十分多くの回数繰り返し、その後、機械学習モデルの学習を終了してもよい。
モデル学習部330は、学習終了後、第1機械学習モデル、第2機械学習モデルおよび第3機械学習モデルのパラメータを、それぞれ画像符号化装置10のコンテキスト抽出部102、パラメータ決定部104、および、圧縮部106に設定する。モデル学習部330は、第4機械学習モデルおよび第5機械学習モデルのパラメータを、それぞれ画像復号装置20パラメータ決定部204および復元部206に設定する。
なお、モデル学習部330における機械学習モデルの学習は、画像符号化装置10と画像復号装置20の稼働とは独立に行われてもよいし(オフライン学習)、画像符号化装置10と画像復号装置20の動作と並行してもよい。その際、モデル学習部330は、画像符号化装置10のコンテキスト抽出部102または圧縮部106により取得される画像データと、画像復号装置20の復元部206から取得される復元データを用いてもよい(オンライン学習)。その際、モデル学習部330は、画像符号化装置10と画像復号装置20の一方または両方に備わってもよい。その場合には、専用のコンテキスト抽出部312、パラメータ決定部314、圧縮部316、符号化部318、復号部322、パラメータ決定部324および復元部326が省略されてもよい。
画像符号化装置10のコンテキスト抽出部102、パラメータ決定部104および圧縮部106には、モデル学習装置30とは別個の機器において学習により得られた第1機械学習モデル、第2機械学習モデルおよび第3機械学習モデルそれぞれのパラメータが設定されてもよい。また、画像復号装置20のパラメータ決定部204および復元部206には、モデル学習装置30とは別個の機器において学習により得られた第4機械学習モデルおよび第5機械学習モデルそれぞれのパラメータが設定されてもよい。
画像符号化装置10における画像符号化処理、画像復号装置20における画像復号処理は、それぞれ2以上の階層を有してもよい(階層化)。図3の例では、画像符号化装置10は、N階層(Nは、予め定めた2以上の整数)の圧縮層110-1~110-Nと、符号化部108を備える。第n層(nは、1以上N以下の整数)の圧縮層110-nは、直前の階層である第n-1層の圧縮層110-n-1からの出力データを入力データとし、入力データに対して得られる第n層のコンテキスト情報をコンテキスト符号化部108aに出力する。圧縮層110-nは、圧縮層110-n-1から入力される入力データに対して第n層のコンテキスト情報に基づいて得られる圧縮データを出力データとして直後の階層である第n+1層の圧縮層110n+1に出力する。
但し、第1層の圧縮層110-1に対しては、入力データとして画像符号化装置10により取得される画像データが入力される。第N層の圧縮層110-Nは、出力データとする圧縮データを圧縮データ符号化部108bに出力する。
但し、第1層の圧縮層110-1に対しては、入力データとして画像符号化装置10により取得される画像データが入力される。第N層の圧縮層110-Nは、出力データとする圧縮データを圧縮データ符号化部108bに出力する。
次に、第n層の圧縮層110-nの機能構成例について説明する。図4は、本実施形態に係る圧縮層110-nの機能構成例を示す概略ブロック図である。圧縮層110-nは、コンテキスト抽出部102-n、パラメータ決定部104-nおよび圧縮部106-nを備える。図4において、破線は任意の(optional)機能部を示す。まず、圧縮層110-nがマージ部112-nを有しない場合を仮定して説明する。
コンテキスト抽出部102-nには、圧縮層110-n-1から出力される出力データを入力データとし、入力データとして第n層の第1機械学習モデル(以下、「第n層第1機械学習モデル」等と呼ぶ)を用いて、第n層コンテキスト情報を抽出する。コンテキスト抽出部102-nは、抽出した第n層コンテキスト情報をパラメータ決定部104-nに出力する。
パラメータ決定部104-nは、第n層コンテキスト情報に対して第n層第2機械学習モデルを用いて、第n層第3機械学習モデルのパラメータを決定する。パラメータ決定部104-nは、決定した第n層第3機械学習モデルのパラメータを圧縮部106-nに設定する。
圧縮部106-nは、圧縮層110-n-1から入力される出力データを入力データとし、入力データに対して第n層第3機械学習モデルを用いて、よりデータ量が少ない出力データを生成する。圧縮部106-nは、生成した出力データを圧縮層110-n+1に出力する。
圧縮部106-nは、圧縮層110-n-1から入力される出力データを入力データとし、入力データに対して第n層第3機械学習モデルを用いて、よりデータ量が少ない出力データを生成する。圧縮部106-nは、生成した出力データを圧縮層110-n+1に出力する。
次に、圧縮層110-nがマージ部112-nを有する場合について説明する。マージ部112-nには、コンテキスト抽出部102-nから第n層コンテキスト情報と、圧縮層110-n-1から第n-1層累積コンテキスト情報が入力される。マージ部112-nは、第n-1層累積コンテキスト情報に第n層コンテキスト情報をマージし、第n層累積コンテキスト情報を構成する。ここで、マージ(merge)とは、結合(concatenation)との意味を含む。マージ部112-nは、第n層累積コンテキスト情報をパラメータ決定部104-nと圧縮層110-n+1に出力する。
パラメータ決定部104-nは、第n層コンテキスト情報に代え、第n層累積コンテキスト情報に対して第n層第2機械学習モデルを用いて第n層第3機械学習モデルのパラメータを算出する。よって、ある層におけるコンテキスト情報をマージして、次の層に提供することで、次の層でのパラメータ決定を条件づけることができる(conditionable)。
なお、第1層(n=1)において、入力情報としての第0層累積コンテキスト情報が存在しないため、マージ部112-1が省略される。
第N層(n=N)において、マージ部112-Nから第N層累積コンテキスト情報の出力先としての圧縮層110-N+1は存在しない。
なお、第1層(n=1)において、入力情報としての第0層累積コンテキスト情報が存在しないため、マージ部112-1が省略される。
第N層(n=N)において、マージ部112-Nから第N層累積コンテキスト情報の出力先としての圧縮層110-N+1は存在しない。
図5の例では、画像復号装置20は、復号部202と、N階層の復元層210-1~210-Nとを備える。復元層210-1~210-Nは、それぞれ圧縮層110-1~110-Nに対応する階層である。第n層の復元層210-nには、コンテキスト復号部202aから第n層のコンテキスト情報が入力され、直前の階層である第n+1層の復元層210-n+1からの出力データが入力データとして入力される。復元層210-nは、入力データに対して第n層のコンテキスト情報に基づいて得られる復元データを出力データとして直後の階層である第n-1層の復元層210-n-1に出力する。
但し、第N層の復元層210-Nに対しては、入力データとして圧縮データ復号部202bから圧縮データが入力される。第1層の復元層210-1は、出力データとする復元データを画像復号装置20の外部に送出する。
但し、第N層の復元層210-Nに対しては、入力データとして圧縮データ復号部202bから圧縮データが入力される。第1層の復元層210-1は、出力データとする復元データを画像復号装置20の外部に送出する。
次に、第n層の復元層210-nの機能構成例について説明する。図6は、本実施形態に係る復元層210-nの機能構成例を示す概略ブロック図である。復元層210-nは、パラメータ決定部204-nおよび復元部206-nを備える。まず、復元層210-nがマージ部212-nを有しない場合を仮定して説明する。
パラメータ決定部104-nには、コンテキスト復号部202aから第n層のコンテキスト情報が入力される。パラメータ決定部104-nは、第n層コンテキスト情報に対して第n層第4機械学習モデルを用いて第n層第5機械学習モデルのパラメータを定める。パラメータ決定部104-nは、定めた第n層第5機械学習モデルのパラメータを復元部206-nに設定する。
復元部206-nには、復元層210-n+1から出力される出力データが入力データとして入力される。復元部206-nは、入力データに対して第n層第5機械学習モデルを用い、入力データよりもデータ量が大きい出力データを生成する。復元部206-nは、生成した出力データを復元層210-n-1に出力する。
復元部206-nには、復元層210-n+1から出力される出力データが入力データとして入力される。復元部206-nは、入力データに対して第n層第5機械学習モデルを用い、入力データよりもデータ量が大きい出力データを生成する。復元部206-nは、生成した出力データを復元層210-n-1に出力する。
次に、復元層210-nが、マージ部212-nを有する場合について説明する。マージ部212-nには、コンテキスト復号部202aから第n層コンテキスト情報が入力され、復元層210-n-1から第n-1層累積コンテキスト情報が入力される。マージ部212-nは、第n-1層累積コンテキスト情報に第n層コンテキスト情報をマージし、第n層累積コンテキスト情報を構成する。マージ部212-nは、構成した第n層累積コンテキスト情報を復元部206-nと復元層210-n+1に出力する。
パラメータ決定部204-nは、第n層コンテキスト情報に代え、第n層累積コンテキスト情報に対して第n層第4機械学習モデルを用いて第n層第5機械学習モデルのパラメータを算出する。
なお、第1層(n=1)において、入力情報としての第0層累積コンテキスト情報が存在しないため、マージ部212-1は省略される。
第N層(n=N)において、マージ部212-Nからの第N層累積コンテキスト情報の出力先として復元層210-N+1は存在しない。
なお、第1層(n=1)において、入力情報としての第0層累積コンテキスト情報が存在しないため、マージ部212-1は省略される。
第N層(n=N)において、マージ部212-Nからの第N層累積コンテキスト情報の出力先として復元層210-N+1は存在しない。
次に、本実施形態に係る第1機械学習モデルについて説明する。
第1機械学習モデルは、コンテキスト抽出部102の機能として、画像データからコンテキスト情報(context information)を抽出する。本願では、コンテキスト情報とは、処理対象とする画像データの物理的もしくは技術的な特性もしくは意味、または、それらを区別するための標識(sign, token, etc.)、その他の識別情報(identifier, etc.)を意味する。画像認識はコンテキスト情報の抽出の一態様である。図7は、第1機械学習モデルの一例として、画像データが入力される場合、コンテキスト情報として、その画像が表す物体として「自転車」を表す識別子を特定する数理モデルを示す。図8は、第1機械学習モデルの他の例として、画像データが入力される場合、コンテキスト情報として「乗用車」を表す識別子を特定する数理モデルを示す。
第1機械学習モデルは、コンテキスト抽出部102の機能として、画像データからコンテキスト情報(context information)を抽出する。本願では、コンテキスト情報とは、処理対象とする画像データの物理的もしくは技術的な特性もしくは意味、または、それらを区別するための標識(sign, token, etc.)、その他の識別情報(identifier, etc.)を意味する。画像認識はコンテキスト情報の抽出の一態様である。図7は、第1機械学習モデルの一例として、画像データが入力される場合、コンテキスト情報として、その画像が表す物体として「自転車」を表す識別子を特定する数理モデルを示す。図8は、第1機械学習モデルの他の例として、画像データが入力される場合、コンテキスト情報として「乗用車」を表す識別子を特定する数理モデルを示す。
第1機械学習モデルとして、画像データの入力に対し、個々のコンテキスト情報の候補を与える数理モデルを適用することができる。第1機械学習モデルは、例えば、ニューラルネットワーク、決定木(decision tree)、ランダムフォレスト(random forest)などのいずれかを用いることができる。ニューラルネットワークとして、例えば、畳込部(畳込層)を有する畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)が適用可能である。ニューラルネットワークを構成する活性化関数として、正規化線形ユニット(ReLU:Rectified Linear Unit)、シグモイド関数、ソフトサイン、などのいずれかが適用可能である。
本願では、コンテキスト情報の候補として、予め特定の物体、または、その状態を設定しておかなくてもよい。モデル学習において、第2機械学習モデル、第3機械学習モデル、第4機械学習モデルおよび第5機械学習モデルと連立して、それぞれのパラメータを算出できればよい。
本願では、コンテキスト情報の候補として、予め特定の物体、または、その状態を設定しておかなくてもよい。モデル学習において、第2機械学習モデル、第3機械学習モデル、第4機械学習モデルおよび第5機械学習モデルと連立して、それぞれのパラメータを算出できればよい。
第2機械学習モデルとして、入力としてコンテキスト情報に対応する出力として第3機械学習モデルのパラメータを提供可能とする数理モデルを用いることができる。コンテキスト情報は、それ自体が技術的または物理的な特徴を示さない離散値で表されることがある。
同様に、第4機械学習モデルとして、入力としてコンテキスト情報に対応する出力として第5機械学習モデルのパラメータを提供可能とする数理モデルを用いることができる。第4機械学習モデルは、第2機械学習モデルと同様の演算手順を示す数理モデルであってもよい。
同様に、第4機械学習モデルとして、入力としてコンテキスト情報に対応する出力として第5機械学習モデルのパラメータを提供可能とする数理モデルを用いることができる。第4機械学習モデルは、第2機械学習モデルと同様の演算手順を示す数理モデルであってもよい。
第2機械学習モデルおよび第4機械学習モデルは、それぞれ、入力に対して、線形分離可能(linearly separable)な数理モデルであってもよいし、線形分離不可能(linearly inseparable)な数理モデルであってもよい。第2機械学習モデルおよび第4機械学習モデルとして、例えば、ニューラルネットワークの一種である多層パーセプトロン(MLP:Multi-Layer Perceptron)をそれぞれ適用することができる。
第3機械学習モデルとして、入力データの技術的または物理的特性を復元可能とし、かつ、より少ない情報量で表現される出力データを、その入力データから導出することができる数理モデルを用いることができる。第5機械学習モデルとして、第3機械学習モデルの逆演算に相当する演算処理を示す数理モデルを適用することができる。第3機械学習モデルおよび第5機械学習モデルとして、例えば、CNN、回帰型ニューラルネットワーク(RNN:Recurrent Neural Network)などのいずれかを用いることができる。
次に、本実施形態に係る機械学習モデルの実装例について説明する。図9は、本実施形態に係る画像処理システム1における実装例を示す概略ブロック図である。図9の例では、画像符号化装置10は、N階層の圧縮層110-1~110-Nと、符号化部108を備える。
圧縮層110-nにおいて、圧縮部106-nとして機能させる第3機械学習モデルは、2個の畳込層1、2と、2個のReLU演算部1、2と、マージ部とを有するCNNである。2個の畳込層1、2、2個のReLU演算部1、2は、それぞれの演算を並行する。一方の畳込層1からの出力値は一方のReLU演算部1への入力値として供給され、他方の畳込層2からの出力値は他方のReLU演算部2への入力値として供給される。
圧縮層110-nにおいて、圧縮部106-nとして機能させる第3機械学習モデルは、2個の畳込層1、2と、2個のReLU演算部1、2と、マージ部とを有するCNNである。2個の畳込層1、2、2個のReLU演算部1、2は、それぞれの演算を並行する。一方の畳込層1からの出力値は一方のReLU演算部1への入力値として供給され、他方の畳込層2からの出力値は他方のReLU演算部2への入力値として供給される。
畳込層1には、パラメータ決定部104-nにより得られた一方のパラメータとして、個々のカーネル(kernel)に属する複数のサンプルデータをなす、それぞれの入力値に対する重み値(weight、アテンションに相当)と、そのカーネルに対するバイアス値(bias)が設定される。畳込層1は、カーネルごとに、その入力データのデータサンプルをなす入力値に対し、畳み込み演算を行い、得られた演算値を出力値としてReLU演算部1に出力する。畳み込み演算に対する演算値は、入力値と対応する重み値を乗じて得られる乗算値のカーネル内に総和にそのカーネルに係るバイアス値を加算して得られる。ReLU演算部1は、カーネルごとの演算値を入力値とし、入力値に対するReLUの関数値を演算し、得られた関数値を出力値として圧縮層110-n内のマージ部に出力する。
畳込層2には、パラメータ決定部104-nにより得られた他方のパラメータとして、カーネルごとの畳込演算のパラメータが設定される。畳込層2への入力データをなすデータサンプルである入力値に対し、カーネルごとに畳み込み演算を行って得られた演算値を出力値として他方のReLU演算部2に出力する。ReLU演算部2は、カーネルごとの演算値を入力値とし、入力値に対するReLUの関数値を演算し、得られた関数値を出力値として圧縮層110-n内のマージ部に出力する。
マージ部は、ReLU演算部1からのカーネルごとの入力値と、ReLU演算部2からのカーネルごとの入力値を示す出力データを圧縮層110-n+1に出力する。
マージ部は、ReLU演算部1からのカーネルごとの入力値と、ReLU演算部2からのカーネルごとの入力値を示す出力データを圧縮層110-n+1に出力する。
圧縮層110-nにおいて、コンテキスト抽出部102-nとして機能させる第1機械学習モデルは、畳込層2と、ReLU演算部2と、統計値演算部と、MLPと、量子化部とを備えるCNNである。畳込層2とReLU演算部2は、第3機械学習モデルの一部としても共用される。ReLU演算部2は、カーネルごとの出力値を統計値演算部にも出力する。
統計値演算部は、カーネルごとの出力値に対してプーリング処理(pooling)を行って、その層の代表値(representative)として、より要素数の少ない統計値(statistics)を算出するプーリング層の一例である。統計値演算部は、算出した統計値を出力値としてMLP1に出力する。統計値演算部の例については、後述する。
統計値演算部は、カーネルごとの出力値に対してプーリング処理(pooling)を行って、その層の代表値(representative)として、より要素数の少ない統計値(statistics)を算出するプーリング層の一例である。統計値演算部は、算出した統計値を出力値としてMLP1に出力する。統計値演算部の例については、後述する。
MLPは、エンコーダとして機能する。MLPには、統計値演算部からの出力値が入力値として入力され、入力値に対する演算値を出力値として量子化部に出力する。
量子化部は、MPLから入力される出力値を量子化して得られる量子化値を要素として示す第n層コンテキスト情報をマージ部112-nに出力する。
量子化部は、MPLから入力される出力値を量子化して得られる量子化値を要素として示す第n層コンテキスト情報をマージ部112-nに出力する。
圧縮層110-nにおいて、パラメータ決定部104-nとして機能させる第2機械学習モデルは、2個のMLP1、2を備えるニューラルネットワークである。2個のMLP1、2は、いずれのデコーダとして機能する。一方のMLP1には、マージ部112-nから第n層累積コンテキスト情報が入力される。一方のMLP1は、第n層累積コンテキスト情報で示される要素値を入力値とし、入力値に対する演算値を圧縮部106-nの第3機械学習モデルの畳込層1のパラメータとして設定する。
MLP2には、第n-1層コンテキスト情報で示される要素値を入力値とし、入力値に対する演算値を圧縮部106-nの第3機械学習モデルの畳込層2のパラメータとして設定する。
MLP2には、第n-1層コンテキスト情報で示される要素値を入力値とし、入力値に対する演算値を圧縮部106-nの第3機械学習モデルの畳込層2のパラメータとして設定する。
但し、第1層において、パラメータ決定部104-1の第2機械学習モデルでは、MLP2が省略される。圧縮部106-1の第3機械学習モデルの畳込層2のパラメータを、モデル学習により予め設定しておく。
また、圧縮層110-1では、マージ部112-1が省略されている。コンテキスト抽出部102-1の量子化部は、第1層コンテキスト情報をパラメータ決定部104-1と圧縮層110-2に出力する。第1層コンテキスト情報は、第1層累積コンテキスト情報に相当する。
また、圧縮層110-1では、マージ部112-1が省略されている。コンテキスト抽出部102-1の量子化部は、第1層コンテキスト情報をパラメータ決定部104-1と圧縮層110-2に出力する。第1層コンテキスト情報は、第1層累積コンテキスト情報に相当する。
符号化部108は、コンテキスト符号化部108aと圧縮データ符号化部108bの他、量子化部108dを備える。
コンテキスト符号化部108aには、圧縮層110-Nから第N層累積コンテキスト情報(accumulated context information)が入力される。第N層累積コンテキスト情報は、第1層コンテキスト情報から第N層コンテキスト情報を含み、これらを結合してなる。コンテキスト符号化部108aは、第N層累積コンテキスト情報に対してエントロピー符号化を行い、第1符号系列を生成する。
コンテキスト符号化部108aには、圧縮層110-Nから第N層累積コンテキスト情報(accumulated context information)が入力される。第N層累積コンテキスト情報は、第1層コンテキスト情報から第N層コンテキスト情報を含み、これらを結合してなる。コンテキスト符号化部108aは、第N層累積コンテキスト情報に対してエントロピー符号化を行い、第1符号系列を生成する。
量子化部108dには、圧縮層110-Nから圧縮データが入力され、圧縮データに示される要素値を量子化し、量子化された要素値を示す量子化圧縮データを圧縮データ符号化部108bに出力する。
圧縮データ符号化部108bは、量子化部108dから入力される量子化圧縮データに対してエントロピー符号化を行い、第2符号系列を生成する。
符号化部108は、第1符号系列と第2符号系列を有する符号系列を画像復号装置20に出力する。
圧縮データ符号化部108bは、量子化部108dから入力される量子化圧縮データに対してエントロピー符号化を行い、第2符号系列を生成する。
符号化部108は、第1符号系列と第2符号系列を有する符号系列を画像復号装置20に出力する。
次に、画像復号装置20の機能構成例について説明する。画像復号装置20は、復号部202と、N階層の復元層210-1~210-Nとを備える。
復号部202には、画像符号化装置10から入力される符号系列を復号する。
復号部202は、コンテキスト復号部202aと、圧縮データ復号部202bとを備える。
復号部202には、画像符号化装置10から入力される符号系列を復号する。
復号部202は、コンテキスト復号部202aと、圧縮データ復号部202bとを備える。
コンテキスト復号部202aは、入力される符号系列に含まれる第1符号系列に対してエントロピー復号を行い、第1層コンテキスト情報~第N層コンテキスト情報を取得する。コンテキスト復号部202aは、取得した第1層コンテキスト情報~第N層コンテキスト情報を、それぞれ復元層210-1~210-Nに出力する。
圧縮データ復号部202bは、入力される符号系列に含まれる第2符号系列に対してエントロピー復号を行い、圧縮データに変換する。圧縮データ復号部202bは、変換した圧縮データを復元層210-Nに出力する。
圧縮データ復号部202bは、入力される符号系列に含まれる第2符号系列に対してエントロピー復号を行い、圧縮データに変換する。圧縮データ復号部202bは、変換した圧縮データを復元層210-Nに出力する。
復元層210-nにおいて、パラメータ決定部204-nとして機能させる第4機械学習モデルは、MLPを有するニューラルネットワークであり、デコーダとして機能する。MLPには、コンテキスト復号部202aから第n層コンテキスト情報が入力される。MLPは、第n層コンテキスト情報で示される要素値を入力値とし、入力値に対する演算値を復元部206-nの第5機械学習モデルの逆畳込層のパラメータとして設定する。
復元層210-nにおいて、復元部206-nとして機能させる第5機械学習モデルは、ReLU演算部と逆畳込層を有する。ReLU演算部には、復元層210-n+1からの出力データを入力データとして入力され、入力データをなす入力値に対するReLUの関数値を演算し、得られた関数値を出力値として逆畳込層に入力される。逆畳込層には、ReLU演算部からの出力値を入力値としてカーネルごとに入力され、入力値に対して逆畳み込み演算を行って得られたサンプルごとの演算値を出力値として示す出力データを復元層210-n-1に出力する。逆畳み込み演算では、各1個の入力値に対して、複数の演算値が得られる。複数のサンプルからなる集合が1個のカーネルに相当し、個々のカーネルについてサンプルごとの重み値と、1個のバイアス値が逆畳込層のパラメータとなる。復元層210-nは、逆畳み込み演算において、バイアス値と、サンプルごとの重み値と入力値との積との和をそのサンプルの出力値として算出する。
なお、復元層210-NのReLU演算部には、復号部202の圧縮データ復号部202bから圧縮データが入力データとして入力される。復元層210-1の逆畳込層からの出力データとして復元データを送出する。
次に、第n層の圧縮層110-nのコンテキスト抽出部102-nを構成する統計値演算部122-nの構成例について説明する。図10は、本実施形態に係る統計値演算部122-nの構成例を示す概略ブロック図である。
統計値演算部122-nは、少なくともグローバル平均プーリング部(GAP:Global Average Pooling)部1221-nを備える。GAP部1221-nに入力される入力データの入力値は、ReLU演算部2からのカーネルごとに出力される演算値がデータサンプルとして得られる。画像符号化装置10に入力される画像データが、例えば、カラー画像を表す場合、チャネルは、カラー画像を表現する原色に対応する。カラー画像がRGB表色系で表される場合には、チャネルは、赤(R)、緑(G)、青(B)のいずれかを示す。入力値Ycxyは、互いに直交する水平方向(x方向)、垂直方向(y方向)および色方向(c方向)に張られた三次元空間に配置されたサンプルごとのデータサンプルをなす。第1層における各サンプルは、画素に相当し、入力値は色信号値に相当する。GAP部1221-nは、チャネルごとに水平方向および垂直方向で張られる二次元平面内に配置された複数のカーネルのそれぞれに対して取得されるデータサンプルとして入力値Ycxyの平均値Ycを統計値として算出する。統計値演算部122-nは、算出した統計値を出力値としてMLPに出力する。
統計値演算部122-nは、少なくともグローバル平均プーリング部(GAP:Global Average Pooling)部1221-nを備える。GAP部1221-nに入力される入力データの入力値は、ReLU演算部2からのカーネルごとに出力される演算値がデータサンプルとして得られる。画像符号化装置10に入力される画像データが、例えば、カラー画像を表す場合、チャネルは、カラー画像を表現する原色に対応する。カラー画像がRGB表色系で表される場合には、チャネルは、赤(R)、緑(G)、青(B)のいずれかを示す。入力値Ycxyは、互いに直交する水平方向(x方向)、垂直方向(y方向)および色方向(c方向)に張られた三次元空間に配置されたサンプルごとのデータサンプルをなす。第1層における各サンプルは、画素に相当し、入力値は色信号値に相当する。GAP部1221-nは、チャネルごとに水平方向および垂直方向で張られる二次元平面内に配置された複数のカーネルのそれぞれに対して取得されるデータサンプルとして入力値Ycxyの平均値Ycを統計値として算出する。統計値演算部122-nは、算出した統計値を出力値としてMLPに出力する。
統計値演算部122-nは、さらに外積演算部1222-n、GAP部1223-n、三角化・平坦化部1224-nおよびマージ部1225-nを備えてもよい。
外積演算部1222-nは、ReLU部2からカーネルごとに出力されるデータサンプルをなす入力値Ycxyのチャネル間の外積Ycxy*Yc’xyをチャネルの組(c,c’)および二次元平面内に配置されたカーネル(x,y)ごとに算出する。外積演算部1222-nは、算出した外積をGAP部1223-nに出力する。ここで、チャネルの組において、チャネルcとチャネルc’が等しくなることもある。
GAP部1223-nは、外積演算部1222-nから入力される外積Ycxy*Yc’xyのカーネル間の平均値Zcc’をチャネルの組間で算出する。GAP部1223-nは、算出した平均値Zcc’を三角化・平坦化部1224-nに出力する。算出される平均値Zcc’の組は、チャネルc、チャネルc’をそれぞれ行、列とし平均値Zcc’を要素として配列された行列として表現されうる。
外積演算部1222-nは、ReLU部2からカーネルごとに出力されるデータサンプルをなす入力値Ycxyのチャネル間の外積Ycxy*Yc’xyをチャネルの組(c,c’)および二次元平面内に配置されたカーネル(x,y)ごとに算出する。外積演算部1222-nは、算出した外積をGAP部1223-nに出力する。ここで、チャネルの組において、チャネルcとチャネルc’が等しくなることもある。
GAP部1223-nは、外積演算部1222-nから入力される外積Ycxy*Yc’xyのカーネル間の平均値Zcc’をチャネルの組間で算出する。GAP部1223-nは、算出した平均値Zcc’を三角化・平坦化部1224-nに出力する。算出される平均値Zcc’の組は、チャネルc、チャネルc’をそれぞれ行、列とし平均値Zcc’を要素として配列された行列として表現されうる。
三角化・平坦化部1224-nは、平均値Zcc’のうち、チャネルcがチャネルc’以下となる要素値Zcc’{c,c’∈c≦c’}を採用する(三角化(triangularization))。採用された要素値Zcc’は、三角行列(triangular matrix)として表現されうる。三角化・平坦化部1224-nは、採用した要素値Zcc’を一列に配列し(平坦化(flattening))、平均値ベクトルWdとして構成する。三角化・平坦化部1224-nは、構成した平均値ベクトルWdをマージ部1225-nに出力する。
マージ部1225-nは、GAP部1221-nから入力される統計値Ycに平均値ベクトルWdを結合して得られるベクトル値を新たな統計値としてMLPに出力する。
マージ部1225-nは、GAP部1221-nから入力される統計値Ycに平均値ベクトルWdを結合して得られるベクトル値を新たな統計値としてMLPに出力する。
次に、画像符号化装置10の符号化部108と画像復号装置20の復号部202の他の構成例について説明する。
図11は、本実施形態に係る符号化部108と復号部202の他の構成例を示す概略ブロック図である。
符号化部108は、コンテキスト符号化部108aおよび圧縮データ符号化部108bおよび量子化部108dの他、分布推定部108cを備える。
図11は、本実施形態に係る符号化部108と復号部202の他の構成例を示す概略ブロック図である。
符号化部108は、コンテキスト符号化部108aおよび圧縮データ符号化部108bおよび量子化部108dの他、分布推定部108cを備える。
分布推定部108cは、圧縮層110-Nから入力される第N層累積コンテキスト情報に対して、第6機械学習モデルを用いて、量子化部108dへの入力値となる圧縮データを表す要素値の確率分布を推定する。分布推定部108cは、例えば、混合ガウスモデル(GMM:Gaussian Mixture Model)を用いて確率分布を算出することができる。
混合ガウスモデルは、所定数の正規分布(normal distribution, Gaussian function)を基底関数(basic function)とし、連続確率分布(continuous probability distribution)をこれらの基底関数の線形結合(linear combination)として表す数理モデルである。第6機械学習モデルからの出力値として、確率分布を表すパラメータ、即ち、個々の正規分布のパラメータである重み係数(weight)、平均値(mean)および分散(variance)が含まれる。分布推定部108cは、推定した確率分布を圧縮データ符号化部108bに設定する。
第6機械学習モデルとして、例えば、MLPを用いることができる。分布推定部108cは、第N層累積コンテキスト情報の各要素値を第6機械学習モデルへの入力値とし、確率分布のパラメータを出力値として算出することができる。分布推定部108cは、算出したパラメータを用いて表される確率分布を量子化部108dに設定する。
圧縮データ符号化部108bは、分布推定部108cにより設定された確率分布を用いて、量子化部108dから入力される量子化後の圧縮データの要素値に対してエントロピー符号化を行う。エントロピー符号化により、確率分布から推定されるエントロピーが少ない圧縮データほど多くの情報量が割り当てられることで、符号化により生成される符号系列の情報量が全体として減少する。
復号部202は、コンテキスト復号部202aおよび圧縮データ復号部202bの他、分布推定部202cを備える。
分布推定部202cは、コンテキスト復号部202aから入力される第N層累積コンテキスト情報に対して、符号化部108における分布推定部108cと同様の手法として第7機械学習モデルを用いて、第2符号系列から復号される圧縮データを表す要素値の確率分布を推定する。第7機械学習モデルとして、例えば、MLPを用いることができる。分布推定部202cは、推定した確率分布を圧縮データ復号部202bに設定する。
圧縮データ復号部202bは、分布推定部202cにより設定された確率分布を用いて、第2符号系列に対してエントロピー復号を行い、圧縮データを復号する。
分布推定部202cは、コンテキスト復号部202aから入力される第N層累積コンテキスト情報に対して、符号化部108における分布推定部108cと同様の手法として第7機械学習モデルを用いて、第2符号系列から復号される圧縮データを表す要素値の確率分布を推定する。第7機械学習モデルとして、例えば、MLPを用いることができる。分布推定部202cは、推定した確率分布を圧縮データ復号部202bに設定する。
圧縮データ復号部202bは、分布推定部202cにより設定された確率分布を用いて、第2符号系列に対してエントロピー復号を行い、圧縮データを復号する。
なお、圧縮データ符号化部108bにおけるエントロピー符号化方法および圧縮データ復号部202bにおけるエントロピー復号方法として、例えば、国際公開WO2022/130477号公報に記載された符号化方法および復号方法を適用することができる。
図3-図6、図9および図10に例示されるように、符号化過程、復号過程が複数階層に階層化されている場合でも、モデル学習部330は、符号化の対象とする画像データと復号により得られる復元データとの差分が小さくなるように、各階層について第1機械学習モデル、第2機械学習モデル、第3機械学習モデル、第4機械学習モデルおよび第5機械学習モデル、それぞれのパラメータを定めることができる。また、図11に例示されるように、エントロピー符号化およびエントロピー復号に確率分布が用いられる場合でも、モデル学習部330は、復元データの取得において、そのエントロピー符号化およびエントロピー復号の過程を含めることで、第6機械学習モデルおよび第7機械学習モデル、それぞれのパラメータを定めることができる。
なお、上記の符号化部108は、生成した第1符号系列と第2符号系列を統合して単一の符号系列として送出してもよいし、第1符号系列と第2符号系列を統合せずに個々に送出してもよい。また、第1符号系列と第2符号系列を統合して送出する場合、第1符号系列と第2符号系列が所定の異なるタイミングに割り当てられてもよい。また、第1符号系列と第2符号系列を個々に送出する場合、第1符号系列と第2符号系列の送出先となる伝送路または記憶領域が、異なっていてもよい。
統合された符号系列が送出される場合、復号部202は、取得した符号系列から第1符号系列と第2符号系列をそれぞれ抽出し、抽出した第1符号系列と第2符号系列をそれぞれ圧縮データ復号部202bとコンテキスト復号部202aに提供する。第1符号系列と第2符号系列が異なるタイミングに割り当てられる場合には、復号部202は、それぞれのタイミングに従って第1符号系列と第2符号系列を符号系列から抽出すればよい。
第1符号系列と第2復号系列が個々に送出される場合、第1符号系列と第2復号系列がそれぞれ圧縮データ復号部202bとコンテキスト復号部202aに提供されてもよい。
第1符号系列と第2復号系列が個々に送出される場合、第1符号系列と第2復号系列がそれぞれ圧縮データ復号部202bとコンテキスト復号部202aに提供されてもよい。
<実験例>
次に、本実施形態に係る画像処理システム1の有効性を検証するために出願人が実施したシミュレーション実験について説明する。有効性の指標として、処理遅延とMS-SSIM(マルチスケール構造的類似性:Multi-Scale Structural Similarity)指標を測定した。本実施形態の有効性を検証するため、同一のGPU(Graphic Processing Unit)を備えるコンピュータシステムにおいて他の手法を実行して得られる指標と比較した。
次に、本実施形態に係る画像処理システム1の有効性を検証するために出願人が実施したシミュレーション実験について説明する。有効性の指標として、処理遅延とMS-SSIM(マルチスケール構造的類似性:Multi-Scale Structural Similarity)指標を測定した。本実施形態の有効性を検証するため、同一のGPU(Graphic Processing Unit)を備えるコンピュータシステムにおいて他の手法を実行して得られる指標と比較した。
処理遅延(processing delay)として、画像データの画像符号化装置10への入力から画像復号装置20からの復元データの出力までの時間を測定した。MS-SSIMは、画質の指標値の一例である。その値が大きいほど画質が高いことを示す。但し、本実験では、本実施形態として、図9-図11の構成例を採用した。各圧縮層における畳込層1、2では、個々のカーネルのカーネルサイズを水平方向3画素、垂直方向3画素、ストライド(stride)を水平方向、垂直方向、それぞれについて2画素とした。ストライドは、演算の適用間隔に相当する。各復元層における逆畳込層では、カーネルサイズを水平方向3画素、垂直方向3画素、ストライドを2画素とした。また、各手法とも、画像サイズを、水平方向1920画素、垂直方向1080画素(1080p)とした。
図12は、処理遅延の例を示す図である。図12の縦軸は処理遅延(単位:ms(ミリ秒))を示し、横軸は手法を示す。手法(1)~(5)は、いずれも比較例であり、手法(6)が本実施形態である。
手法(1)~(4)は、いずれも「パラメータ選択なし」として、画像データから抽出されたコンテキスト情報を用いてデータ圧縮またはデータ復元に用いるパラメータを選択しない手法である。手法(1)~(4)は、処理量が異なる。N=1~4は、処理量のレベルを示すインデックスである。Nは、パラメータ数にほぼ比例する。手法(5)は、「パラメータ選択、符号化・復号なし」として、コンテキスト情報に対応するパラメータを選択するが、コンテキスト情報の符号化ならびに復号を伴わない手法である。
手法(1)~(4)は、いずれも「パラメータ選択なし」として、画像データから抽出されたコンテキスト情報を用いてデータ圧縮またはデータ復元に用いるパラメータを選択しない手法である。手法(1)~(4)は、処理量が異なる。N=1~4は、処理量のレベルを示すインデックスである。Nは、パラメータ数にほぼ比例する。手法(5)は、「パラメータ選択、符号化・復号なし」として、コンテキスト情報に対応するパラメータを選択するが、コンテキスト情報の符号化ならびに復号を伴わない手法である。
手法(1)~(4)によれば、処理量の増加により処理遅延が増加する。例えば、手法(1)(N=1)では処理遅延は40msとなったのに対し、手法(4)(N=4)では処理遅延は130msとなった。手法(5)、(6)では、処理遅延は、それぞれ45ms、50msとなった。手法(1)、(5)、(6)の間では、処理遅延の差異は比較的少ない。
図13は、MS-SSIMの例を示す図である。図13の縦軸はMS-SSIMを示し、横軸はbpp(ビット毎ピクセル、bits per pixel)を示す。bppは、画素ごとに伝達される情報量の単位である。bppが小さいほど符号化効率が高いことを示す。一般に、各手法とも情報量が多いほど品質が高くなる関係を有する。
図13は、手法(1)、(5)、(2)、(7)、(3)、(6)および(4)の順に品質が高くなることを示す。手法(7)は、「パラメータ選択、GAP符号化・復号」として、コンテキスト情報に対応するパラメータを選択するが、コンテキスト情報の一部である統計値(即ち、GAPからの出力値)の符号化ならびに復号を伴う手法である。但し、コンテキスト情報のその他の部分、例えば、各カーネルのフィルタ係数(即ち、サンプルごとの重み値、バイアス値)の符号化ならびに復号を伴わない。
図13は、手法(1)、(5)、(2)、(7)、(3)、(6)および(4)の順に品質が高くなることを示す。手法(7)は、「パラメータ選択、GAP符号化・復号」として、コンテキスト情報に対応するパラメータを選択するが、コンテキスト情報の一部である統計値(即ち、GAPからの出力値)の符号化ならびに復号を伴う手法である。但し、コンテキスト情報のその他の部分、例えば、各カーネルのフィルタ係数(即ち、サンプルごとの重み値、バイアス値)の符号化ならびに復号を伴わない。
図13より、同等の処理量のもとでは、コンテキスト情報に対応するパラメータの選択、統計値の符号化・復号およびコンテキスト情報全体の符号化・復号が、それぞれ復元データの品質向上に寄与することを示す。また、手法(3)、(6)および(4)の間では、復元データの品質に有意差が生じない。このことは、処理量が一定量以上に増加しても復元データの品質向上が限られるのに対し、コンテキスト情報の符号化・復号により、処理量の顕著な増加を伴わずに復元データの品質を向上できることを示す。なお、一般的な静止画圧縮で普及しているJPEG(Joint Photographic Experts Group)、動画圧縮で普及しているITU-T H.264(AVC:Advanced Video Coding)、ITU-T H.265(HEVC:High Efficiency Video Coding)などの手法よりも、本実施形態に係る手法(6)の方が復元データの品質を向上させることができる。
<変形例>
次に、本実施形態の第1変形例について説明する。一般に、一連の動画像は、一定時間間隔ごとに各フレームの静止画像を切り替えて表現される。画像が時間経過により変化しない場合、その特徴を示すコンテキスト情報も変化しない。また、画像の変化が少ない場合には、または、そのコンテキスト情報の変化も少なくなる。
そこで、画像符号化装置10のコンテキスト抽出部102は、最後にコンテキスト情報を抽出したフレーム(以下、「基準フレーム」と呼ぶことがある)の画像データから、現フレームの画像データまでの変動量が、所定の変動量の基準値以内である場合には、コンテキスト情報の抽出を停止してもよい。その場合、パラメータ決定部104には、新たなコンテキスト情報は提供されない。圧縮部106は、現フレームに係る画像データの圧縮において、基準フレームに係る最後のコンテキスト情報に対応する第3機械学習モデルのパラメータの使用を継続する。
次に、本実施形態の第1変形例について説明する。一般に、一連の動画像は、一定時間間隔ごとに各フレームの静止画像を切り替えて表現される。画像が時間経過により変化しない場合、その特徴を示すコンテキスト情報も変化しない。また、画像の変化が少ない場合には、または、そのコンテキスト情報の変化も少なくなる。
そこで、画像符号化装置10のコンテキスト抽出部102は、最後にコンテキスト情報を抽出したフレーム(以下、「基準フレーム」と呼ぶことがある)の画像データから、現フレームの画像データまでの変動量が、所定の変動量の基準値以内である場合には、コンテキスト情報の抽出を停止してもよい。その場合、パラメータ決定部104には、新たなコンテキスト情報は提供されない。圧縮部106は、現フレームに係る画像データの圧縮において、基準フレームに係る最後のコンテキスト情報に対応する第3機械学習モデルのパラメータの使用を継続する。
符号化部108は、新たなコンテキスト情報に対する符号化を行わないため、現フレームに係る第1符号系列が画像復号装置20に提供されない。ひいては、画像復号装置20のパラメータ決定部204に新たなコンテキスト情報は提供されない。復元部206は、現フレームに係る復元データへの復元において、基準フレームに係る最後のコンテキスト情報に対応する第5機械学習モデルのパラメータの使用を継続する。
コンテキスト抽出部102は、基準フレームの画像データから、現フレームの画像データまでの変動量が、所定の変動量の基準値以内であるか否かをフレームごとに判定する。その際、コンテキスト抽出部102は、基準フレームの画像データから現フレームの画像データまでの変動量の指標として、例えば、信号値の差分二乗和(SSD:Sum of Squared Differences)、差分絶対値和(SAD:Sum of Absolute Differences)などを用いることができる。また、コンテキスト抽出部102は、変動量の指標値として、画素ごとの信号値のフレーム間の差分に代えて、基準フレーム、現フレームのそれぞれに係るコンテキスト情報を表すベクトル間のノルム(距離)を用いてもよい。
画像符号化装置10が階層化されている場合、つまり、複数の圧縮層を備える場合には、個々の圧縮層が、変動量が所定の変動量の基準値以内であるか否かによりコンテキスト情報の抽出を停止するか否かを判定してもよい。また、少なくとも1階層の圧縮層(例えば、第1層の圧縮層110-1)が、基準フレームから現フレームまでの変動量が、所定の変動量の基準値以内であるか否かにより、全階層のコンテキスト情報の抽出を停止するか否かを判定してもよい。
次に、本実施形態の第2変形例について説明する。画像符号化装置10のコンテキスト抽出部102には、目標情報量(ビットレート)または目標画質の情報が設定情報として設定され、設定された設定情報を第1機械学習モデルに対する入力値の一部として演算に用い、コンテキスト情報を抽出してもよい。目標情報量は、コンテキスト情報を示す第1符号系列と圧縮データを示す第2符号系列を含む符号系列全体の情報量の目標値である。目標情報量は、例えば、画素ごとのビット数、フレームごとのビット数、1秒当たりのビット数(ビットレート)、などのいずれの単位に対して定義されてもよい。目標画質は、符号系列を復号して得られるコンテキスト情報と圧縮データから復元された復元データの画質の目標値である。目標画質は、MS-SSIM、SNR(信号対ノイズ比、Signal-to-Noise Ratio)などのいずれの指標を用いて定義されてもよい。
目標情報量をコンテキスト抽出部102に設定する場合には、モデル学習部330はモデル学習において、目標情報量が第1機械学習モデルに入力されながら、符号系列の情報量と目標情報量との差が少なくなるように、第1機械学習モデル~第5機械学習モデルそれぞれのパラメータを定めておく。
モデル学習装置30のモデル学習部330は、モデル学習において、画像データと復元データとの差分の大きさを示す第1因子と、符号系列の情報量と目標情報量との差分の大きさを示す第2因子とを含む損失関数が減少するように第1機械学習モデル~第5機械学習モデルそれぞれのパラメータを定める。モデル学習部330は、画像符号化装置10の符号化部108または自装置の符号化部318から入力される符号系列の情報量を定め、定めた情報量をモデル学習に用いる。モデル学習に先立ち、モデル学習部330は、画像符号化装置10のコンテキスト抽出部102または自装置のコンテキスト抽出部312に設定される目標情報量を予め取得しておく。
モデル学習装置30のモデル学習部330は、モデル学習において、画像データと復元データとの差分の大きさを示す第1因子と、符号系列の情報量と目標情報量との差分の大きさを示す第2因子とを含む損失関数が減少するように第1機械学習モデル~第5機械学習モデルそれぞれのパラメータを定める。モデル学習部330は、画像符号化装置10の符号化部108または自装置の符号化部318から入力される符号系列の情報量を定め、定めた情報量をモデル学習に用いる。モデル学習に先立ち、モデル学習部330は、画像符号化装置10のコンテキスト抽出部102または自装置のコンテキスト抽出部312に設定される目標情報量を予め取得しておく。
目標画質をコンテキスト抽出部102に設定する場合には、モデル学習部330はモデル学習において、目標画質が第1機械学習モデルに入力され、かつ、符号系列の情報量と目標情報量との差が少なくなるように、第1機械学習モデル~第5機械学習モデルそれぞれのパラメータを定めておく。
モデル学習装置30のモデル学習部330は、モデル学習において、画像データと復元データとの差分の大きさを示す第1因子と、復元データが示す復元画像の画質と目標画質との差分の大きさを示す第2因子とを含む損失関数が減少するように第1機械学習モデル~第5機械学習モデルそれぞれのパラメータを定める。モデル学習部330は、画像復号装置20の復元部206または自装置の復元部326から入力される復元データが示す復元画像の画質を定め、定めた画質をモデル学習に用いる。モデル学習に先立ち、モデル学習部330は、画像符号化装置10のコンテキスト抽出部102または自装置のコンテキスト抽出部312に設定される目標画質を予め取得しておく。
モデル学習装置30のモデル学習部330は、モデル学習において、画像データと復元データとの差分の大きさを示す第1因子と、復元データが示す復元画像の画質と目標画質との差分の大きさを示す第2因子とを含む損失関数が減少するように第1機械学習モデル~第5機械学習モデルそれぞれのパラメータを定める。モデル学習部330は、画像復号装置20の復元部206または自装置の復元部326から入力される復元データが示す復元画像の画質を定め、定めた画質をモデル学習に用いる。モデル学習に先立ち、モデル学習部330は、画像符号化装置10のコンテキスト抽出部102または自装置のコンテキスト抽出部312に設定される目標画質を予め取得しておく。
以上に説明したように、本実施形態に係る画像符号化装置10は、画像データに対して第1機械学習モデルを用いて画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部102と、コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部104と、画像データに対して第3機械学習モデルを用いて画像データよりもデータ量が少ない圧縮データを生成する圧縮部106と、コンテキスト情報と圧縮データを符号化して符号系列を生成する符号化部108と、を備える。
また、本実施形態に係る画像復号装置20は、符号系列からコンテキスト情報と圧縮データを復号する復号部202と、コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部204と、圧縮データに第5機械学習モデルを用いて復元データを生成する復元部206と、を備える。
また、本実施形態に係る画像復号装置20は、符号系列からコンテキスト情報と圧縮データを復号する復号部202と、コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部204と、圧縮データに第5機械学習モデルを用いて復元データを生成する復元部206と、を備える。
この構成によれば、画像データに対して第1機械学習モデルを用いて抽出された画像データの特徴を示すコンテキスト情報に対して第2機械学習モデルを用いて画像データに対してより情報量が少ない圧縮データを生成するための第3機械学習モデルのパラメータが定まる。コンテキスト情報に対して第4機械学習モデルを用いて、圧縮データから復元データを生成するための第5機械学習モデルのパラメータが定まる。
そのため、画像データの特徴に応じた第3機械学習モデルのパラメータが定まり、このパラメータが第4機械学習モデルにより復号されたコンテキスト情報に基づいて推定される。動的なパラメータの選択が有効に機能することで、処理量の増加を伴わずに、符号化により得られた符号から、もとの画像データに近似した画像を復元することができる。
また、画像符号化装置10において、第3機械学習モデルは、複数のデータサンプルを有するカーネルごとに畳み込み演算を行う畳込層を備え、第3機械学習モデルのパラメータは少なくともデータサンプルの重み係数を含んでいてもよい。
画像復号装置20において、第5機械学習モデルは、1以上のデータサンプルを有するカーネルごとに逆畳み込み演算を行う逆畳込層を備え、第5機械学習モデルのパラメータは少なくとも前記データサンプルの逆畳み込み係数を含んでいてもよい。
この構成によれば、第3機械学習モデルを用いてデータサンプルに対する畳み込み演算に用いる重み係数が推定され、第5機械学習モデルを用いてデータサンプルに対する逆畳み込み演算に用いる逆畳み込み係数が推定される。そのため、推定された重み係数および逆畳み込み係数により、画像の特徴に応じた畳み込み演算による効率的な情報量の圧縮と、逆畳み込み演算による復元を実現することができる。
画像復号装置20において、第5機械学習モデルは、1以上のデータサンプルを有するカーネルごとに逆畳み込み演算を行う逆畳込層を備え、第5機械学習モデルのパラメータは少なくとも前記データサンプルの逆畳み込み係数を含んでいてもよい。
この構成によれば、第3機械学習モデルを用いてデータサンプルに対する畳み込み演算に用いる重み係数が推定され、第5機械学習モデルを用いてデータサンプルに対する逆畳み込み演算に用いる逆畳み込み係数が推定される。そのため、推定された重み係数および逆畳み込み係数により、画像の特徴に応じた畳み込み演算による効率的な情報量の圧縮と、逆畳み込み演算による復元を実現することができる。
また、画像符号化装置10において、第1機械学習モデルは、カーネルごとの出力値に基づいて代表値を定めるプーリング層を備えてもよい。
この構成によれば、複数のデータサンプルからなるカーネルよりも大局的な特性やその特性の強度を分析して、第3機械学習モデルのパラメータを定めることができる。そのため、大局的な特性やその特性の強度に応じた畳み込み演算による効率的な情報量の圧縮に貢献することができる。
この構成によれば、複数のデータサンプルからなるカーネルよりも大局的な特性やその特性の強度を分析して、第3機械学習モデルのパラメータを定めることができる。そのため、大局的な特性やその特性の強度に応じた畳み込み演算による効率的な情報量の圧縮に貢献することができる。
また、画像符号化装置10は、フレームごとに画像データが入力され、コンテキスト抽出部102は、最後にコンテキスト情報を抽出したフレームの画像データから現フレームの画像データまでの変動量が、所定の基準値以内であるとき、コンテキスト情報の抽出を停止してもよい。
この構成によれば、画像データの変動が少ない場合には、コンテキスト情報が抽出されない。そのため、コンテキスト情報の符号化がなされずに、最後に抽出されたコンテキスト情報に対応する第3機械学習モデルのパラメータを用いた圧縮データの生成がなされる。また、そのコンテキスト情報に対応する第5機械学習モデルのパラメータを用いた復元データの生成がなされる。そのため、復元データによる画質の低下を抑えながら、符号化による符号系列の情報量を低減することができる。
この構成によれば、画像データの変動が少ない場合には、コンテキスト情報が抽出されない。そのため、コンテキスト情報の符号化がなされずに、最後に抽出されたコンテキスト情報に対応する第3機械学習モデルのパラメータを用いた圧縮データの生成がなされる。また、そのコンテキスト情報に対応する第5機械学習モデルのパラメータを用いた復元データの生成がなされる。そのため、復元データによる画質の低下を抑えながら、符号化による符号系列の情報量を低減することができる。
また、コンテキスト抽出部102は、画像データと、さらに目標情報量または目標画質に基づいてコンテキスト情報を定めてもよい。目標情報量は、コンテキスト情報と圧縮データの符号を含む符号系列の情報量の目標値であり、目標画質は、コンテキスト情報と圧縮データから復元された復元データの画質の目標値である。
この構成によれば、設定された目標情報量を有する符号系列または設定された目標画質を有する復元データを取得することができる。そのため、要求される情報量または画質に応じた画像データの圧縮および復元を実現することができる。
この構成によれば、設定された目標情報量を有する符号系列または設定された目標画質を有する復元データを取得することができる。そのため、要求される情報量または画質に応じた画像データの圧縮および復元を実現することができる。
また、画像符号化装置10は、N(Nは、2以上の整数)層(例えば、圧縮層110-1~110-N)の第1機械学習モデル、第2機械学習モデルおよび第3機械学習モデルを有し、第n(nは、2以上N以下の整数)層の第3機械学習モデルには、第n-1層の第3機械学習モデルからの出力データが入力され、第n層の第2機械学習モデルには、第n層の前記第1機械学習モデルからの出力データが入力され、符号化部108は、圧縮データとして第N層の第3機械学習モデルからの出力データを符号化し、コンテキスト情報として第1層から第N層までの第1機械学習モデルからの出力データを符号化してもよい。
また、画像復号装置20は、N層(例えば、復元層210-1~210-N)の第4機械学習モデルおよび第5機械学習モデルを有し、第n-1層の第5機械学習モデルには、第n層の第5機械学習モデルからの出力データが入力され、第n層の第4機械学習モデルには、第n層の前記コンテキスト情報が入力されてもよい。
この構成によれば、各層の第1機械学習モデルによるコンテキスト情報を累積して符号化し、各層の第3機械学習モデルにより画像データから圧縮率の高い圧縮データが得られる。そして、各層の第4機械学習モデルにより復号されたコンテキスト情報から第5機械学習モデルのパラメータが得られる。そのため、圧縮率が高い圧縮データからもとの画像データに近似した復元データが得られる。そのため、復元データの画質を低下させずに、符号化効率を向上させることができる。
また、画像復号装置20は、N層(例えば、復元層210-1~210-N)の第4機械学習モデルおよび第5機械学習モデルを有し、第n-1層の第5機械学習モデルには、第n層の第5機械学習モデルからの出力データが入力され、第n層の第4機械学習モデルには、第n層の前記コンテキスト情報が入力されてもよい。
この構成によれば、各層の第1機械学習モデルによるコンテキスト情報を累積して符号化し、各層の第3機械学習モデルにより画像データから圧縮率の高い圧縮データが得られる。そして、各層の第4機械学習モデルにより復号されたコンテキスト情報から第5機械学習モデルのパラメータが得られる。そのため、圧縮率が高い圧縮データからもとの画像データに近似した復元データが得られる。そのため、復元データの画質を低下させずに、符号化効率を向上させることができる。
また、本実施形態に係るモデル学習装置30は、画像データに対して第1機械学習モデルを用いて画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部312と、コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部314と、画像データに対して第3機械学習モデルを用いて画像データよりも情報量が少ない圧縮データを生成する圧縮部316と、コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部324と、圧縮データに前記第5機械学習モデルを用いて復元データを生成する復元部326と、画像データと復元データとの差分が減少するように、第1機械学習モデル、第2機械学習モデル、第3機械学習モデル、第4機械学習モデルおよび第5機械学習モデルのパラメータを定めるモデル学習部330と、を備える。
この構成によれば、画像符号化装置10で用いられる第1機械学習モデル、第2機械学習モデルおよび第3機械学習モデルのパラメータと、画像復号装置20で用いられる第4機械学習モデルおよび第5機械学習モデルのパラメータを取得することができる。そのため、処理量の増加を伴わずに、符号化により得られた符号から、もとの画像データに近似した画像の復元に貢献することができる。
この構成によれば、画像符号化装置10で用いられる第1機械学習モデル、第2機械学習モデルおよび第3機械学習モデルのパラメータと、画像復号装置20で用いられる第4機械学習モデルおよび第5機械学習モデルのパラメータを取得することができる。そのため、処理量の増加を伴わずに、符号化により得られた符号から、もとの画像データに近似した画像の復元に貢献することができる。
(最小構成)
次に、上記の実施形態の最小構成について説明する。図14は、本願の画像符号化装置10の最小構成例を示す概略ブロック図である。画像符号化装置10は、画像データに対して第1機械学習モデルを用いて画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部102と、コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部104と、画像データに対して第3機械学習モデルを用いて画像データよりもデータ量が少ない圧縮データを生成する圧縮部106と、コンテキスト情報と圧縮データを符号化し、符号系列を生成する符号化部108と、を備える。
次に、上記の実施形態の最小構成について説明する。図14は、本願の画像符号化装置10の最小構成例を示す概略ブロック図である。画像符号化装置10は、画像データに対して第1機械学習モデルを用いて画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部102と、コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部104と、画像データに対して第3機械学習モデルを用いて画像データよりもデータ量が少ない圧縮データを生成する圧縮部106と、コンテキスト情報と圧縮データを符号化し、符号系列を生成する符号化部108と、を備える。
図15は、本願の画像復号装置20の最小構成例を示す概略ブロック図である。画像復号装置20は、符号系列からコンテキスト情報と圧縮データを復号する復号部202と、コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部204と、圧縮データに第5機械学習モデルを用いて復元データを生成する復元部206と、を備える。
図16は、本願の画像処理システム1の最小構成例を示す概略ブロック図である。画像処理システム1は、画像符号化装置10と画像復号装置20とを備え、画像符号化装置10は、画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部102と、コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部104と、画像データに対して第3機械学習モデルを用いて画像データよりもデータ量が少ない圧縮データを生成する圧縮部106と、コンテキスト情報と圧縮データを符号化し、符号系列を生成する符号化部108と、を備え、画像復号装置20は、符号系列からコンテキスト情報と圧縮データを復号する復号部202と、コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部204と、圧縮データに第5機械学習モデルを用いて復元データを生成する復元部206と、を備える。
図17は、本願のモデル学習装置30の最小構成例を示す概略ブロック図である。モデル学習装置30は、画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部312と、コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部314と、画像データに対して第3機械学習モデルを用いて画像データよりもデータ量が少ない圧縮データを生成する圧縮部316と、コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部324と、圧縮データに第5機械学習モデルを用いて復元データを生成する復元部326と、画像データと復元データとの差分が減少するように、第1機械学習モデル、第2機械学習モデル、第3機械学習モデル、第4機械学習モデルおよび第5機械学習モデルのパラメータを定めるモデル学習部330と、を備える。
なお、上記の機器、例えば、画像符号化装置10、画像復号装置20、モデル学習装置30、それらのいずれかを含むエッジデバイス、サーバ装置などは、それぞれコンピュータシステムを備えてもよい。コンピュータシステムは、CPU(Central Processing Unit)などの1以上のプロセッサを備える。コンピュータシステムに備わるプロセッサには、1以上のGPUが含まれてもよい。
上述した各部をなす処理の過程は、機器もしくは装置ごとにプログラムの形式でコンピュータ読み取り可能な記憶媒体に記憶され、このプログラムに記述された指令をコンピュータが読み出し、その指令で指示される処理を実行することによって、それらの機能が発揮される。プログラムには、上述の機械学習モデルが記述されうる。コンピュータシステムは、OS(Operation System)、デバイスドライバ、ユーティリティプログラムなどのソフトウェアや、プロセッサ、記憶媒体、周辺機器等のハードウェアを含むものとする。また、コンピュータ読み取り可能な記録媒体」とは、磁気ディスク、光磁気ディスク、ROM(Read Only Memory)、半導体メモリ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに、コンピュータ読み取り可能な記録媒体、とは、インターネット等のネットワークや電話回線等の通信回線を用いてプログラムを送信する場合に用いる通信線など、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリなど、一定時間プログラムを保持しているものも含んでもよい。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
上述した各部をなす処理の過程は、機器もしくは装置ごとにプログラムの形式でコンピュータ読み取り可能な記憶媒体に記憶され、このプログラムに記述された指令をコンピュータが読み出し、その指令で指示される処理を実行することによって、それらの機能が発揮される。プログラムには、上述の機械学習モデルが記述されうる。コンピュータシステムは、OS(Operation System)、デバイスドライバ、ユーティリティプログラムなどのソフトウェアや、プロセッサ、記憶媒体、周辺機器等のハードウェアを含むものとする。また、コンピュータ読み取り可能な記録媒体」とは、磁気ディスク、光磁気ディスク、ROM(Read Only Memory)、半導体メモリ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに、コンピュータ読み取り可能な記録媒体、とは、インターネット等のネットワークや電話回線等の通信回線を用いてプログラムを送信する場合に用いる通信線など、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリなど、一定時間プログラムを保持しているものも含んでもよい。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
例えば、画像符号化装置10は、図18に例示されるプロセッサ152、ドライブ部156、入出力部158、ROM162およびRAM(Random Access Memory)164を有するハードウェア構成を備えてもよい。
プロセッサ152は、画像符号化装置10の機能を発揮させるための処理や、画像符号化装置10を構成する各部の機能を制御する。
ドライブ部156は、記憶媒体154に記憶されている各種のデータを読み取り、または、各種のデータを記憶媒体154に記憶する補助記憶装置を備える。ドライブ部156は、例えば、半導体ドライブ(SSD:Solid State Drive)、ハードディスクドライブ(HDD:Hard Disk Drive)などのいずれでもよい。記憶媒体154は、例えば、フラッシュメモリなどの不揮発性メモリ(non-volatile memory)である。ドライブ部156は、記憶媒体154を着脱可能としてもよい。
入出力部158は、他の機器との間で無線または有線で各種のデータを入力または出力する。入出力部158は、他の機器と通信ネットワークを経由して、各種のデータを入出力可能に接続してもよい。入出力部158は、例えば、入出力インタフェース、通信インタフェースなどのいずれか、または、それらの組合せのいずれかを備えてもよい。
プロセッサ152は、画像符号化装置10の機能を発揮させるための処理や、画像符号化装置10を構成する各部の機能を制御する。
ドライブ部156は、記憶媒体154に記憶されている各種のデータを読み取り、または、各種のデータを記憶媒体154に記憶する補助記憶装置を備える。ドライブ部156は、例えば、半導体ドライブ(SSD:Solid State Drive)、ハードディスクドライブ(HDD:Hard Disk Drive)などのいずれでもよい。記憶媒体154は、例えば、フラッシュメモリなどの不揮発性メモリ(non-volatile memory)である。ドライブ部156は、記憶媒体154を着脱可能としてもよい。
入出力部158は、他の機器との間で無線または有線で各種のデータを入力または出力する。入出力部158は、他の機器と通信ネットワークを経由して、各種のデータを入出力可能に接続してもよい。入出力部158は、例えば、入出力インタフェース、通信インタフェースなどのいずれか、または、それらの組合せのいずれかを備えてもよい。
ROM162は、画像符号化装置10の各部が実行する各種の処理を指示する命令が記述されたプログラム、その実行のためのパラメータなどの各種のデータ、画像符号化装置10の各部により取得された各種のデータを継続的に記憶する。
RAM164は、主にプロセッサ152の作業領域(主記憶領域)として用いられる。プロセッサ152は、その起動に応じてROM162に記憶されたプログラムとパラメータをRAM164に記録する。そして、プロセッサは、その実行により得られた演算結果、取得したデータなどをRAM164に一時的に記録する。
なお、画像復号装置20、モデル学習装置30、それらのいずれかを含むエッジデバイス、サーバ装置の一部または全部も、図18に例示されるハードウェア構成を備えてもよい。
RAM164は、主にプロセッサ152の作業領域(主記憶領域)として用いられる。プロセッサ152は、その起動に応じてROM162に記憶されたプログラムとパラメータをRAM164に記録する。そして、プロセッサは、その実行により得られた演算結果、取得したデータなどをRAM164に一時的に記録する。
なお、画像復号装置20、モデル学習装置30、それらのいずれかを含むエッジデバイス、サーバ装置の一部または全部も、図18に例示されるハードウェア構成を備えてもよい。
また、上述した実施形態における機器または装置の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。個々の機器または装置の各機能ブロック、各部、各ステップは個別にプロセッサ化されてもよいし、一部または全部を集積してプロセッサ化されてもよいし、モジュールとして構成されてもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
なお、上記の実施形態は、次に示すように実現されてもよい。
(付記1)画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部と、前記コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部と、前記画像データに対して第3機械学習モデルを用いて前記画像データよりもデータ量が少ない圧縮データを生成する圧縮部と、前記コンテキスト情報と前記圧縮データを符号化し、符号系列を生成する符号化部と、を備える画像符号化装置。
(付記1)画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部と、前記コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部と、前記画像データに対して第3機械学習モデルを用いて前記画像データよりもデータ量が少ない圧縮データを生成する圧縮部と、前記コンテキスト情報と前記圧縮データを符号化し、符号系列を生成する符号化部と、を備える画像符号化装置。
(付記2)付記1の画像符号化装置であって、前記第3機械学習モデルは、複数のデータサンプルを有するカーネルごとに畳み込み演算を行う畳込層を備え、前記パラメータは少なくとも前記データサンプルの重み係数を含む。
(付記3)付記2の画像符号化装置であって、前記第1機械学習モデルは、前記カーネルごとの出力値に基づいて代表値を定めるプーリング層を備える。
(付記4)付記1の画像符号化装置であって、フレームごとに前記画像データが入力され、前記コンテキスト抽出部は、最後にコンテキスト情報を抽出したフレームの画像データから現フレームの前記画像データまでの変動量が、所定の基準値以内であるとき、前記コンテキスト情報の抽出を停止する。
(付記5)付記1の画像符号化装置であって、前記コンテキスト抽出部は、前記画像データと、さらに目標情報量または目標画質に基づいて前記コンテキスト情報を定め、前記目標情報量は、前記コンテキスト情報と前記圧縮データの符号を含む符号系列の情報量の目標値であり、前記目標画質は、前記コンテキスト情報と前記圧縮データから復元された復元データの画質の目標値である。
(付記6)付記1の画像符号化装置であって、N(Nは、2以上の整数)層の前記第1機械学習モデル、前記第2機械学習モデルおよび前記第3機械学習モデルを有し、第n(nは、2以上N以下の整数)層の前記第3機械学習モデルには、第n-1層の前記第3機械学習モデルからの出力データが入力され、第n層の前記第2機械学習モデルには、第n層の前記第1機械学習モデルからの出力データが入力され、前記符号化部は、前記圧縮データとして第N層の前記第3機械学習モデルからの出力データを符号化し、前記コンテキスト情報として第1層から第N層までの前記第1機械学習モデルからの出力データを符号化する。
(付記7)符号系列からコンテキスト情報と圧縮データを復号する復号部と、前記コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部と、前記圧縮データに前記第5機械学習モデルを用いて復元データを生成する復元部と、を備える画像復号装置。
(付記8)付記7の画像復号装置であって、前記第5機械学習モデルは、1以上のデータサンプルを有するカーネルごとに逆畳み込み演算を行う逆畳込層を備え、前記パラメータは少なくとも前記データサンプルの逆畳み込み係数を含む。
(付記9)付記7の画像復号装置であって、N(Nは、2以上の整数)層の前記第4機械学習モデルおよび前記第5機械学習モデルを有し、第n-1(nは、2以上N以下の整数)層の前記第5機械学習モデルには、第n層の前記第5機械学習モデルからの出力データが入力され、第n層の前記第4機械学習モデルには、第n層の前記コンテキスト情報が入力される。
(付記10)コンピュータに、付記1の画像符号化装置または付記7の画像復号装置として機能させるためのプログラムを格納したコンピュータ可読記憶媒体。
(付記11)画像符号化装置と画像復号装置とを備える画像処理システムであって、前記画像符号化装置は、画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部と、前記コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部と、前記画像データに対して第3機械学習モデルを用いて前記画像データよりも情報量が少ない圧縮データを生成する圧縮部と、前記コンテキスト情報と前記圧縮データを符号化し、符号系列を生成する符号化部と、を備え、前記画像復号装置は、前記符号系列から前記コンテキスト情報と前記圧縮データを復号する復号部と、前記コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部と、前記圧縮データに前記第5機械学習モデルを用いて復元データを生成する復元部と、を備える。
(付記12)付記11の画像処理システムであって、前記符号化部は、前記コンテキスト情報を符号化して生成される第1符号系列と、前記圧縮データを符号化して生成される第2符号系列を個別に送出し、前記復号部は、前記第1符号系列から前記コンテキスト情報を復号し、前記第2符号系列から前記圧縮データを復号する。
(付記13)画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部と、前記コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部と、前記画像データに対して第3機械学習モデルを用いて前記画像データよりも情報量が少ない圧縮データを生成する圧縮部と、前記コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部と、前記圧縮データに前記第5機械学習モデルを用いて復元データを生成する復元部と、前記画像データと前記復元データとの差分が減少するように、前記第1機械学習モデル、前記第2機械学習モデル、前記第3機械学習モデル、前記第4機械学習モデルおよび前記第5機械学習モデルのパラメータを定めるモデル学習部と、を備えるモデル学習装置。
(付記14)画像符号化装置における画像符号化方法であって、前記画像符号化装置が、画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出ステップと、前記コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定ステップと、前記画像データに対して第3機械学習モデルを用いて前記画像データよりも情報量が少ない圧縮データを生成する圧縮ステップと、前記コンテキスト情報と前記圧縮データを符号化し、符号系列を生成する符号化ステップと、を実行する。
(付記15)画像復号装置における画像復号方法であって、前記画像復号装置が、符号系列からコンテキスト情報と圧縮データを復号する復号ステップと、前記コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定ステップと、前記圧縮データに前記第5機械学習モデルを用いて復元データを生成する復元ステップと、を実行する。
以上、本発明の好ましい実施形態を説明したが、本発明はこれら実施形態及びその変形例に限定されることはない。本発明の主旨を逸脱しない範囲で、構成の付加、省略、置換、およびその他の変更が可能である。
ブロック図、その他の図面に表現された矢印の向きは、説明の便宜上の表現であり、本願の開示は、実装に際しての情報、データ、信号などの流れの向きを限定するものではない。
また、本発明は前述した説明によって限定されることはなく、添付の特許請求の範囲によってのみ限定される。
ブロック図、その他の図面に表現された矢印の向きは、説明の便宜上の表現であり、本願の開示は、実装に際しての情報、データ、信号などの流れの向きを限定するものではない。
また、本発明は前述した説明によって限定されることはなく、添付の特許請求の範囲によってのみ限定される。
上記各態様の画像符号化装置、画像復号装置、画像処理システム、モデル学習装置、画像復号方法、画像復号方法、および、コンピュータ可読記憶媒体は、静止画像と動画像の一方または両方を含む各種のデータの符号化、圧縮、伝送、復号、などに利用することができる。
1…画像処理システム、10…画像符号化装置、20…画像復号装置、30…モデル学習装置、102、102-n…コンテキスト抽出部、104、104n…パラメータ決定部、106、106-n…圧縮部、108…符号化部、108a…コンテキスト符号化部、108b…圧縮データ符号化部、108d…量子化部、110-1~110-N…圧縮層、112-n…マージ部、152…プロセッサ、156…ドライブ部、158…入出力部、162…ROM、164…RAM、202…復号部、202a…コンテキスト復号部、202b…圧縮データ復号部、204、204-n…パラメータ決定部、206、206-n…復元部、210-1~210-N…復元層、212-n…マージ部、312…コンテキスト抽出部、314…パラメータ決定部、316…圧縮部、318…符号化部、318a…コンテキスト符号化部、318b…圧縮データ符号化部、322…復号部、322a…コンテキスト復号部、322b…圧縮データ復号部、324…パラメータ決定部、326…復元部、330…モデル学習部
Claims (15)
- 画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部と、
前記コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部と、
前記画像データに対して第3機械学習モデルを用いて前記画像データよりもデータ量が少ない圧縮データを生成する圧縮部と、
前記コンテキスト情報と前記圧縮データを符号化し、符号系列を生成する符号化部と、を備える
画像符号化装置。 - 前記第3機械学習モデルは、複数のデータサンプルを有するカーネルごとに畳み込み演算を行う畳込層を備え、
前記パラメータは少なくとも前記データサンプルの重み係数を含む
請求項1に記載の画像符号化装置。 - 前記第1機械学習モデルは、前記カーネルごとの出力値に基づいて代表値を定めるプーリング層を備える
請求項2に記載の画像符号化装置。 - フレームごとに前記画像データが入力され、
前記コンテキスト抽出部は、最後にコンテキスト情報を抽出したフレームの画像データから現フレームの前記画像データまでの変動量が、所定の基準値以内であるとき、前記コンテキスト情報の抽出を停止する
請求項1に記載の画像符号化装置。 - 前記コンテキスト抽出部は、
前記画像データと、さらに目標情報量または目標画質に基づいて前記コンテキスト情報を定め、
前記目標情報量は、前記コンテキスト情報と前記圧縮データの符号を含む符号系列の情報量の目標値であり、
前記目標画質は、前記コンテキスト情報と前記圧縮データから復元された復元データの画質の目標値である
請求項1に記載の画像符号化装置。 - N(Nは、2以上の整数)層の前記第1機械学習モデル、前記第2機械学習モデルおよび前記第3機械学習モデルを有し、
第n(nは、2以上N以下の整数)層の前記第3機械学習モデルには、第n-1層の前記第3機械学習モデルからの出力データが入力され、
第n層の前記第2機械学習モデルには、第n層の前記第1機械学習モデルからの出力データが入力され、
前記符号化部は、前記圧縮データとして第N層の前記第3機械学習モデルからの出力データを符号化し、前記コンテキスト情報として第1層から第N層までの前記第1機械学習モデルからの出力データを符号化する
請求項1に記載の画像符号化装置。 - 符号系列からコンテキスト情報と圧縮データを復号する復号部と、
前記コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部と、
前記圧縮データに前記第5機械学習モデルを用いて復元データを生成する復元部と、を備える
画像復号装置。 - 前記第5機械学習モデルは、1以上のデータサンプルを有するカーネルごとに逆畳み込み演算を行う逆畳込層を備え、
前記パラメータは少なくとも前記データサンプルの逆畳み込み係数を含む
請求項7に記載の画像復号装置。 - N(Nは、2以上の整数)層の前記第4機械学習モデルおよび前記第5機械学習モデルを有し、
第n-1(nは、2以上N以下の整数)層の前記第5機械学習モデルには、第n層の前記第5機械学習モデルからの出力データが入力され、
第n層の前記第4機械学習モデルには、第n層の前記コンテキスト情報が入力される
請求項7に記載の画像復号装置。 - コンピュータに、請求項1に記載の画像符号化装置または請求項7に記載の画像復号装置として機能させるためのプログラムを格納したコンピュータ可読記憶媒体。
- 画像符号化装置と画像復号装置とを備える画像処理システムであって、
前記画像符号化装置は、
画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部と、
前記コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部と、
前記画像データに対して第3機械学習モデルを用いて前記画像データよりも情報量が少ない圧縮データを生成する圧縮部と、
前記コンテキスト情報と前記圧縮データを符号化し、符号系列を生成する符号化部と、を備え、
前記画像復号装置は、
前記符号系列から前記コンテキスト情報と前記圧縮データを復号する復号部と、
前記コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部と、
前記圧縮データに前記第5機械学習モデルを用いて復元データを生成する復元部と、を備える
画像処理システム。 - 前記符号化部は、前記コンテキスト情報を符号化して生成される第1符号系列と、前記圧縮データを符号化して生成される第2符号系列を個別に送出し、
前記復号部は、前記第1符号系列から前記コンテキスト情報を復号し、前記第2符号系列から前記圧縮データを復号する
請求項11に記載の画像処理システム。 - 画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出部と、
前記コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定部と、
前記画像データに対して第3機械学習モデルを用いて前記画像データよりも情報量が少ない圧縮データを生成する圧縮部と、
前記コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定部と、
前記圧縮データに前記第5機械学習モデルを用いて復元データを生成する復元部と、
前記画像データと前記復元データとの差分が減少するように、前記第1機械学習モデル、前記第2機械学習モデル、前記第3機械学習モデル、前記第4機械学習モデルおよび前記第5機械学習モデルのパラメータを定めるモデル学習部と、を備える
モデル学習装置。 - 画像符号化装置における画像符号化方法であって、
前記画像符号化装置が、
画像データに対して第1機械学習モデルを用いて前記画像データの特徴を示すコンテキスト情報を抽出するコンテキスト抽出ステップと、
前記コンテキスト情報に対して第2機械学習モデルを用いて第3機械学習モデルのパラメータを決定するパラメータ決定ステップと、
前記画像データに対して第3機械学習モデルを用いて前記画像データよりも情報量が少ない圧縮データを生成する圧縮ステップと、
前記コンテキスト情報と前記圧縮データを符号化し、符号系列を生成する符号化ステップと、を実行する
画像符号化方法。 - 画像復号装置における画像復号方法であって、
前記画像復号装置が、
符号系列からコンテキスト情報と圧縮データを復号する復号ステップと、
前記コンテキスト情報に対して第4機械学習モデルを用いて第5機械学習モデルのパラメータを決定するパラメータ決定ステップと、
前記圧縮データに前記第5機械学習モデルを用いて復元データを生成する復元ステップと、を実行する
画像復号方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2022/039119 WO2024084660A1 (ja) | 2022-10-20 | 2022-10-20 | 画像符号化装置、画像復号装置、画像処理システム、モデル学習装置、画像符号化方法、画像復号方法、および、コンピュータ可読記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2022/039119 WO2024084660A1 (ja) | 2022-10-20 | 2022-10-20 | 画像符号化装置、画像復号装置、画像処理システム、モデル学習装置、画像符号化方法、画像復号方法、および、コンピュータ可読記憶媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024084660A1 true WO2024084660A1 (ja) | 2024-04-25 |
Family
ID=90737195
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2022/039119 WO2024084660A1 (ja) | 2022-10-20 | 2022-10-20 | 画像符号化装置、画像復号装置、画像処理システム、モデル学習装置、画像符号化方法、画像復号方法、および、コンピュータ可読記憶媒体 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2024084660A1 (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018163011A1 (ja) * | 2017-03-09 | 2018-09-13 | 株式会社半導体エネルギー研究所 | 半導体装置および放送システム |
WO2018189613A1 (ja) * | 2017-04-11 | 2018-10-18 | 株式会社半導体エネルギー研究所 | 半導体装置、撮像装置及び表示システム |
WO2021145105A1 (ja) * | 2020-01-15 | 2021-07-22 | ソニーグループ株式会社 | データ圧縮装置、およびデータ圧縮方法 |
WO2022190203A1 (ja) * | 2021-03-09 | 2022-09-15 | 日本電気株式会社 | 情報処理システム、情報処理装置、情報処理方法、および、記憶媒体 |
-
2022
- 2022-10-20 WO PCT/JP2022/039119 patent/WO2024084660A1/ja unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018163011A1 (ja) * | 2017-03-09 | 2018-09-13 | 株式会社半導体エネルギー研究所 | 半導体装置および放送システム |
WO2018189613A1 (ja) * | 2017-04-11 | 2018-10-18 | 株式会社半導体エネルギー研究所 | 半導体装置、撮像装置及び表示システム |
WO2021145105A1 (ja) * | 2020-01-15 | 2021-07-22 | ソニーグループ株式会社 | データ圧縮装置、およびデータ圧縮方法 |
WO2022190203A1 (ja) * | 2021-03-09 | 2022-09-15 | 日本電気株式会社 | 情報処理システム、情報処理装置、情報処理方法、および、記憶媒体 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chen et al. | End-to-end learnt image compression via non-local attention optimization and improved context modeling | |
Li et al. | Efficient and effective context-based convolutional entropy modeling for image compression | |
US20210266565A1 (en) | Compression for deep neural network | |
Mentzer et al. | Vct: A video compression transformer | |
US10834415B2 (en) | Devices for compression/decompression, system, chip, and electronic device | |
Chen et al. | Exploiting intra-slice and inter-slice redundancy for learning-based lossless volumetric image compression | |
WO2019160622A1 (en) | Video compression through motion warping using learning-based motion segmentation | |
CN111986278B (zh) | 图像编码装置、概率模型生成装置和图像压缩系统 | |
CN110637460A (zh) | 利用深层神经网络的视觉质量保持量化参数预测 | |
CN113747163B (zh) | 基于上下文重组建模的图像编码、解码方法及压缩方法 | |
KR20220070326A (ko) | 비디오 코딩을 위한 변형 가능한 콘볼루션에 의한 예측 프레임 생성 | |
Sankisa et al. | Video error concealment using deep neural networks | |
Löhdefink et al. | On low-bitrate image compression for distributed automotive perception: Higher peak snr does not mean better semantic segmentation | |
Löhdefink et al. | GAN-vs. JPEG2000 image compression for distributed automotive perception: Higher peak SNR does not mean better semantic segmentation | |
US20240221230A1 (en) | Feature map encoding and decoding method and apparatus | |
Ranjbar Alvar et al. | Joint image compression and denoising via latent-space scalability | |
Zafari et al. | Attention-based generative neural image compression on solar dynamics observatory | |
CN114501031B (zh) | 一种压缩编码、解压缩方法以及装置 | |
Kirmemis et al. | A Practical Approach for Rate-Distortion-Perception Analysis in Learned Image Compression | |
WO2024084660A1 (ja) | 画像符号化装置、画像復号装置、画像処理システム、モデル学習装置、画像符号化方法、画像復号方法、および、コンピュータ可読記憶媒体 | |
JP7403573B2 (ja) | 低ビットレートのビデオ圧縮のためのマイクロドージング | |
WO2023245460A1 (en) | Neural network codec with hybrid entropy model and flexible quantization | |
CN115131673A (zh) | 一种面向任务的遥感影像压缩方法及系统 | |
JP2024507924A (ja) | 階層的オーディオ/ビデオ又は画像圧縮法及び装置 | |
Wang et al. | Deep attention-based lightweight network for aerial image deblurring |
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: 22962768 Country of ref document: EP Kind code of ref document: A1 |