JP2020053820A - Quantization and encoder creation method, compressor creation method, compressor creation apparatus, and program - Google Patents

Quantization and encoder creation method, compressor creation method, compressor creation apparatus, and program Download PDF

Info

Publication number
JP2020053820A
JP2020053820A JP2018181024A JP2018181024A JP2020053820A JP 2020053820 A JP2020053820 A JP 2020053820A JP 2018181024 A JP2018181024 A JP 2018181024A JP 2018181024 A JP2018181024 A JP 2018181024A JP 2020053820 A JP2020053820 A JP 2020053820A
Authority
JP
Japan
Prior art keywords
data
quantization
neural network
quantized
parameters
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018181024A
Other languages
Japanese (ja)
Other versions
JP7233875B2 (en
Inventor
中西 健
Takeshi Nakanishi
健 中西
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Preferred Networks Inc
Original Assignee
Preferred Networks Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Preferred Networks Inc filed Critical Preferred Networks Inc
Priority to JP2018181024A priority Critical patent/JP7233875B2/en
Publication of JP2020053820A publication Critical patent/JP2020053820A/en
Application granted granted Critical
Publication of JP7233875B2 publication Critical patent/JP7233875B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

To create an efficient compressor.SOLUTION: There is provided a quantization and encoder method for compressing data by irreversible compression, in which, in the quantization and encoding of the data, a computer is caused to execute a procedure of determining a sample space to be quantized by a predetermined function using information already decoded at the time of decoding. There is also provided a quantization and encoder method for compressing data by irreversible compression, in which, in the quantization and encoding of the data, a computer is caused to execute a procedure of determining a sample space to be quantized by a predetermined function using information already decoded at the time of decoding, and the predetermined function is a neural network, and an internal parameters of the neural network are optimized such that the compression performance in the irreversible compression is increased, thereby determining the sample space to be quantized.SELECTED DRAWING: Figure 3

Description

本発明は、量子化及び符号化器作成方法、圧縮器作成方法、圧縮器作成装置及びプログラムに関する。   The present invention relates to a quantization and encoder creation method, a compressor creation method, a compressor creation device, and a program.

データ圧縮とは、データをどれだけ短い符号長(つまり、ファイルサイズ)で保存できるかというタスクである。データ圧縮器は、元データを符号化して圧縮データに変換する符号化器と、圧縮データを復号して再構成データに変換する復号化器とからなる。可逆データ圧縮では再構成データが元データに完全に一致している必要がある一方、非可逆データ圧縮では再構成データに元のデータからの或る程度の歪み(distortion)を許容している。これにより、非可逆データ圧縮では、符号長の大幅な削減を可能にしている。ここで、歪みとは再構成データが元データからどれだけ劣化したかを表す量である。   Data compression is the task of how short a code length (ie, file size) can store data. The data compressor includes an encoder that encodes original data and converts it into compressed data, and a decoder that decodes compressed data and converts it into reconstructed data. Lossless data compression requires that the reconstructed data exactly match the original data, while irreversible data compression allows the reconstructed data to have some distortion from the original data. Thus, in the irreversible data compression, the code length can be significantly reduced. Here, the distortion is an amount indicating how much the reconstructed data has deteriorated from the original data.

多くの非可逆画像圧縮は、自己符号化器(autoencoder)の構造を拡張して、中間層の出力配列(出力配列は特徴マップ(feature map)とも称される。)の各要素を量子化・符号化することで画像の圧縮表現を生成する。State-of-the-artなDNN(Deep Neural Network)モデルを含む、これまでの多くの非可逆画像圧縮器では、この量子化を行うときに、量子化先の標本空間(sample-space)として圧縮器内部に予め用意されている標本空間を用いている。   Many lossy image compressions extend the structure of a self-encoder (autoencoder) to quantize each element of an output array in the hidden layer (the output array is also called a feature map). The encoding generates a compressed representation of the image. Many irreversible image compressors, including the state-of-the-art DNN (Deep Neural Network) model, use a quantization-destination sample space when performing this quantization. A sample space prepared in advance inside the compressor is used.

国際公開第2012/109407号International Publication No. 2012/109407 特開2005−196040号公報JP 2005-196040 A

Full Resolution Image Compression with Recurrent Neural Networks, arXiv:1608.05148.Full Resolution Image Compression with Recurrent Neural Networks, arXiv: 1608.05148. End-to-end Optimized Image Compression, arXiv:1611.01704.End-to-end Optimized Image Compression, arXiv: 1611.01704. Real-Time Adaptive Image Compression, arXiv:1705.05823.Real-Time Adaptive Image Compression, arXiv: 1705.05823.

上述したように、従来技術では、中間層の出力配列の各要素の量子化を行うときに量子化先の標本空間として予め用意されている(つまり、予め決められた)標本空間を用いているため、量子化先の標本空間が必ずしも最適化されておらず、効率的な圧縮器(及びこの圧縮器に対応する復元器)が得られない場合があった。ここで、効率的な圧縮器とは、圧縮対象のデータと、復元器によって復元されたデータとの歪みが小さく、かつ、量子化・符号化されたデータの符号長が小さい圧縮器のことである。   As described above, in the related art, when quantizing each element of the output array of the intermediate layer, a sample space prepared in advance (that is, a predetermined sample space) is used as a sample space to be quantized. For this reason, the sample space at the quantization destination is not always optimized, and an efficient compressor (and a decompressor corresponding to this compressor) may not be obtained. Here, an efficient compressor is a compressor in which the distortion between the data to be compressed and the data restored by the decompressor is small, and the code length of the quantized and encoded data is small. is there.

本発明の実施の形態は、上記の点に鑑みてなされたもので、効率的な圧縮器を作成することを目的とする。   An embodiment of the present invention has been made in view of the above points, and has as its object to create an efficient compressor.

上記目的を達成するため、本発明の実施の形態は、上述した量子化の部分に着目し、復号時に既に復号が完了した部分の情報を元にして符号化で用いる確率質量関数を適応的に変化させるのに加え、量子化で用いる標本空間まで適応的に変化させる(以降では、これを「ASAP(Adaptive Sample-space & Adaptive Probability) coding」と呼ぶこととする。)。そして、このASAP codingを以下のようにして実現する。   In order to achieve the above object, embodiments of the present invention focus on the above-described quantization part, and adaptively calculate a probability mass function used in encoding based on information of a part that has already been decoded at the time of decoding. In addition to the change, the sample space is adaptively changed up to the sample space used in the quantization (hereinafter, this is referred to as "ASAP (Adaptive Sample-space & Adaptive Probability) coding"). Then, the ASAP coding is realized as follows.

非可逆圧縮によりデータを圧縮する場合における量子化及び符号化器作成方法であって、前記データの量子化及び符号化において、デコード時に既にデコード済みの情報を用いて、量子化先の標本空間を所定の関数により決定する手順、をコンピュータが実行する。   A method for creating a quantizer and an encoder when compressing data by lossy compression, wherein in the quantization and encoding of the data, a sample space to be quantized is decoded using information already decoded at the time of decoding. The computer executes a procedure determined by a predetermined function.

また、ASAP coding内の関数をニューラルネットワークにしてそれらのパラメータを再構成データの歪みと保存する圧縮データの符号長とのトレードオフ(trade off)の観点から最適化することで作られた、圧縮対象となるデータ群の特徴を踏まえて効率的に非可逆圧縮する圧縮器として、NASAP(Neural-network-based ASAP) codingを提案する。そして、このNASAP codingを以下のようにして実現する。   In addition, compression is made by optimizing the parameters in the ASAP coding from the viewpoint of trade-off between the distortion of the reconstructed data and the code length of the compressed data to be stored by converting the parameters in the neural network into neural networks. We propose NASAP (Neural-network-based ASAP) coding as a compressor that efficiently performs lossy compression based on the characteristics of the target data group. Then, this NASAP coding is realized as follows.

非可逆圧縮によりデータを圧縮する場合における量子化及び符号化器作成方法であって、前記データの量子化及び符号化において、デコード時に既にデコード済みの情報を用いて、量子化先の標本空間を所定の関数により決定する手順、をコンピュータが実行し、前記所定の関数はニューラルネットワークであり、前記ニューラルネットワークの内部パラメータを、前記非可逆圧縮における圧縮性能が高くなるように最適化することで、前記量子化先の標本空間を決定する。   A method for creating a quantizer and an encoder when compressing data by lossy compression, wherein in the quantization and encoding of the data, a sample space to be quantized is decoded using information already decoded at the time of decoding. The procedure of determining by a predetermined function, the computer executes, the predetermined function is a neural network, by optimizing the internal parameters of the neural network to increase the compression performance in the lossy compression, The sample space to be quantized is determined.

効率的な圧縮器を作成することができる。   An efficient compressor can be created.

本発明の実施の形態における変換器作成装置の機能構成の一例を示す図である。It is a figure showing an example of functional composition of a converter creation device in an embodiment of the invention. 本発明の実施の形態における量子化部の詳細な機能構成の一例を示す図である。FIG. 3 is a diagram illustrating an example of a detailed functional configuration of a quantization unit according to the embodiment of the present invention. 最適化時における量子化部による量子化の概略の一例を説明する図である。FIG. 4 is a diagram illustrating an example of an outline of quantization by a quantization unit at the time of optimization. 最適化処理の一例を示すフローチャートである。It is a flowchart which shows an example of an optimization process. 分割方法の一例を示す図である。It is a figure showing an example of a division method. 本発明の効果の一例を示す図である。It is a figure showing an example of an effect of the present invention. 本発明の実施の形態における変換器作成装置のハードウェア構成の一例を示す図である。FIG. 2 is a diagram illustrating an example of a hardware configuration of a converter creation device according to an embodiment of the present invention.

まず、ASAP codingの具体例について説明する。   First, a specific example of ASAP coding will be described.

JPEG(Joint Photographic Experts Group)では量子化テーブルが用意されており、画像を8×8のサイズごとに区切る。そして、各区切られた部分の各色チャネル(channel)毎に、以下のような量子化・符号化の操作をする。まず、離散コサイン変換し、8×8の2次元配列を作る。そして、それを予め決められた量子化テーブルに示される量子化幅で量子化する。   In the JPEG (Joint Photographic Experts Group), a quantization table is prepared to divide an image into 8 × 8 sizes. Then, the following quantization / coding operation is performed for each color channel (channel) in each section. First, a discrete cosine transform is performed to create an 8 × 8 two-dimensional array. Then, it is quantized with a quantization width indicated in a predetermined quantization table.

上述したJPEGの量子化・符号化の部分をASAP codingに置き換えると次のようになる。ASAP codingでは予め量子化幅を決めることはなく、これをデコード(decode)時に既にデコード済の部分(以降、この部分を「コンテキスト」とも表す。)から適応的に決定する。量子化幅を適応的に決定するのは量子化に用いる標本空間を適応的に決定する方法の一つである。コンテキストから量子化幅を決定する関数はヒューリスティックに決めても良いし、機械学習を用いて決めても良い。   When the above-mentioned quantization and coding part of JPEG is replaced with ASAP coding, the following is obtained. In the ASAP coding, the quantization width is not determined in advance, but is determined adaptively from the already decoded part (hereinafter, this part is also referred to as “context”) at the time of decoding (decoding). Adaptively determining the quantization width is one of the methods for adaptively determining the sample space used for quantization. The function for determining the quantization width from the context may be determined heuristically, or may be determined using machine learning.

ここで、ASAP codingは次の点で有効である。例えば、量子化されていない配列を{z,・・・,z}として、この配列を量子化して可逆圧縮する場合、発生する量子化誤差と保存された符号長との間には一般にトレードオフが存在し、大きな量子化誤差を許容するほど符号長は小さくすることができる。n番目の要素zの量子化で許容できる量子化誤差の程度がコンテキスト(つまり、復号時に既に復号が完了したn−1番目までの量子化後の配列要素)に依存している場合、ASAP codingでは、コンテキストの情報を用いて、確率質量関数(PMF:probability mass function)だけでなく、標本空間まで適応的に決定する。このため、ASAP codingでは、共通の標本空間を用いる場合と比較して、同程度の歪みにおいて更に小さい符号長での保存が期待できる。 Here, ASAP coding is effective in the following points. For example, when an unquantized array is {z 1 ,..., Z N }, and this array is quantized and losslessly compressed, generally, the generated quantization error and the stored code length generally have a difference between them. There is a trade-off, and the code length can be reduced to allow a large quantization error. If the degree of quantization error allowable in the quantization of the n-th element z n depends on the context (that is, the quantized array elements up to the (n−1) -th element that has already been decoded at the time of decoding), ASAP In coding, not only a probability mass function (PMF) but also a sample space is adaptively determined using context information. For this reason, in the ASAP coding, compared to the case where a common sample space is used, storage with a smaller code length can be expected with the same degree of distortion.

次に、NASAP codingについて説明する。   Next, the NASAP coding will be described.

ASAP codingの量子化先の標本空間をコンテキストの情報を用いて適応的に決める部分の関数にニューラルネットワークを用い、その内部のパラメータを圧縮性能が向上するように(つまり、歪みが小さく、かつ、量子化・符号化されたデータの符号長が小さくなるように)最適化することによって作成する。以下、NASAP codingの具体例について説明する。   A neural network is used as a function of a part that adaptively determines a sample space to be quantized in ASAP coding using context information, and parameters in the neural network are improved so that compression performance is improved (that is, distortion is small, and It is created by optimization (so that the code length of the quantized / encoded data is reduced). Hereinafter, a specific example of the NASAP coding will be described.

本発明の実施の形態では、非可逆的にデータを圧縮する圧縮器(及びこの圧縮器に対応する復元器)を作成する変換器作成装置10について説明する。ここで、圧縮器に対応する復元器とは、圧縮器によって圧縮されたデータを復元することが可能な復元器のことである。なお、圧縮器は非可逆的にデータを圧縮するため、圧縮対象のデータ(以降、「圧縮対象データ」とも表す。)と、復元されたデータ(以降、「復元データ」とも表す。)とは完全には一致しない。   In the embodiment of the present invention, a converter creation device 10 that creates a compressor that irreversibly compresses data (and a decompressor corresponding to the compressor) will be described. Here, the decompressor corresponding to the compressor is a decompressor that can decompress data compressed by the compressor. Since the compressor irreversibly compresses data, data to be compressed (hereinafter also referred to as “compression target data”) and decompressed data (hereinafter also referred to as “decompressed data”). Does not exactly match.

以降では、一例として、圧縮対象データ及び復元データは、チャネル数をC、高さのサイズをH、幅のサイズをWとして、C×H×Wのサイズの3次元配列で表される画像データであるものとする。ただし、圧縮対象データ及び復元データは、画像データに限られない。圧縮対象データ及び復元データとして、任意の形式のデータ(例えば、テキストデータや音声データ等)が用いられても良い。 Hereinafter, as an example, the data to be compressed and the decompressed data are a three-dimensional array having a size of C 0 × H 0 × W 0 where the number of channels is C 0 , the height size is H 0 , and the width size is W 0. It is assumed that the image data is represented by However, the compression target data and the decompressed data are not limited to image data. As the data to be compressed and the decompressed data, data in any format (for example, text data, audio data, etc.) may be used.

本発明の実施の形態における変換器作成装置10は、分析器(アナライザ)と、統合器(シンセサイザ)と、量子化器とを同時に最適化することで、効率的な圧縮器(及びこの圧縮器に対応する復元器)を作成する。ここで、効率的な圧縮器とは、上述したように、圧縮対象のデータと、復元されたデータとの歪みが小さく、かつ、量子化・符号化されたデータの符号長が小さい圧縮器のことである。なお、圧縮器及び復元器は、データの変換を行う変換器の一例である。   The converter creating apparatus 10 according to the embodiment of the present invention optimizes an analyzer (analyzer), an integrator (synthesizer), and a quantizer at the same time, thereby achieving an efficient compressor (and the compressor). ). Here, as described above, an efficient compressor is a compressor in which the distortion between the data to be compressed and the restored data is small, and the code length of the quantized and coded data is small. That is. Note that the compressor and the decompressor are examples of a converter that performs data conversion.

<変換器作成装置10の機能構成>
まず、本発明の実施の形態における変換器作成装置10の機能構成について、図1を参照しながら説明する。図1は、本発明の実施の形態における変換器作成装置10の機能構成の一例を示す図である。
<Functional configuration of converter creation device 10>
First, a functional configuration of a converter creation device 10 according to an embodiment of the present invention will be described with reference to FIG. FIG. 1 is a diagram illustrating an example of a functional configuration of a converter creation device 10 according to an embodiment of the present invention.

図1に示すように、本発明の実施の形態における変換器作成装置10は、分析部101と、量子化部102と、統合部103と、最適化部104とを有する。   As shown in FIG. 1, the converter creation device 10 according to the embodiment of the present invention includes an analysis unit 101, a quantization unit 102, an integration unit 103, and an optimization unit 104.

分析部101は、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)によって実現されるアナライザとして機能する。以降では、この畳み込みニューラルネットワークを「第1のCNN」とも表す。   The analysis unit 101 functions as an analyzer realized by a convolutional neural network (CNN). Hereinafter, this convolutional neural network is also referred to as “first CNN”.

分析部101は、圧縮対象データ(C×H×Wのサイズの3次元配列で表される画像データ)を入力して、この圧縮対象データを変換した中間データを出力する。以降では、この中間データを The analysis unit 101 receives compression target data (image data represented by a three-dimensional array having a size of C 0 × H 0 × W 0 ) and outputs intermediate data obtained by converting the compression target data. In the following, this intermediate data

Figure 2020053820
と表す。ここで、Cは第1のCNNの出力データのチャネル数、Hは第1のCNNの出力データの高さのサイズ、Wは第1のCNNの出力データの幅のサイズである。このように、中間データは、C×H×Wのサイズの3次元配列で表されるデータである。
Figure 2020053820
It expresses. Here, C is the number of channels of the output data of the first CNN, H is the size of the height of the output data of the first CNN, and W is the size of the width of the output data of the first CNN. Thus, the intermediate data is data represented by a three-dimensional array having a size of C × H × W.

量子化部102は、分析部101によって出力された中間データを入力して、この中間データを量子化する。そして、量子化部102は、量子化された中間データを出力する。なお、量子化部102の詳細な機能構成については後述する。   The quantization unit 102 receives the intermediate data output by the analysis unit 101 and quantizes the intermediate data. Then, the quantization unit 102 outputs the quantized intermediate data. The detailed functional configuration of the quantization unit 102 will be described later.

以降では、量子化された中間データ(以降、「量子化中間データ」とも表す。)を   Hereinafter, quantized intermediate data (hereinafter, also referred to as “quantized intermediate data”) will be described.

Figure 2020053820
と表す。このように、量子化中間データは、C×H×Wのサイズの3次元配列で表されるデータである。
Figure 2020053820
It expresses. As described above, the quantized intermediate data is data represented by a three-dimensional array having a size of C × H × W.

また、量子化部102は、量子化中間データを算術符号化によって保存するのに必要な情報量を計算する。この情報量は、後述するように、   Further, the quantization unit 102 calculates the amount of information necessary to store the quantized intermediate data by arithmetic coding. This information amount is, as described later,

Figure 2020053820
で表される。なお、この情報量は、量子化中間データの保存に必要なビット長又は符号長等と称されても良い。
Figure 2020053820
It is represented by This information amount may be referred to as a bit length or a code length necessary for storing the quantized intermediate data.

統合部103は、畳み込みニューラルネットワークによって実現されるシンセサイザとして機能する。以降では、この畳み込みニューラルネットワークを「第2のCNN」とも表す。   The integration unit 103 functions as a synthesizer realized by a convolutional neural network. Hereinafter, this convolutional neural network is also referred to as “second CNN”.

統合部103は、量子化中間データを入力して、この量子化中間データを変換した復元データ(C×H×Wのサイズの3次元配列で表される画像データ)を出力する。 The integration unit 103 receives the quantized intermediate data and outputs restored data (image data represented by a three-dimensional array of C 0 × H 0 × W 0 ) obtained by converting the quantized intermediate data.

最適化部104は、分析部101と、量子化部102と、統合部103とを最適化する。すなわち、最適化部104は、圧縮対象データと復元データとの歪みができるだけ小さく、かつ、上記の数3で表される情報量Iができるだけ小さくなるように、分析部101と、量子化部102と、統合部103とのパラメータを最適化する。なお、最適化の対象となるパラメータは、第1のCNNのパラメータと、第2のCNNのパラメータと、後述する第3のCNNのパラメータと、後述する第1のパラメータ〜第3のパラメータとである。   The optimizing unit 104 optimizes the analyzing unit 101, the quantizing unit 102, and the integrating unit 103. That is, the optimizing unit 104 performs the analysis unit 101 and the quantization unit 102 so that the distortion between the data to be compressed and the decompressed data is as small as possible and the information amount I expressed by the above equation 3 is as small as possible. And the parameters with the integration unit 103 are optimized. The parameters to be optimized include a first CNN parameter, a second CNN parameter, a third CNN parameter described later, and first to third parameters described later. is there.

これらのパラメータを最適化することで、本発明の実施の形態における変換器作成装置10は、効率的な圧縮器と、この圧縮器に対応する復元器とを作成することができる。なお、圧縮器は、例えば、最適化後の分析部101及び量子化部102で構成される変換器とすれば良い。また、復元器は、例えば、量子化部102に含まれる算術符号化部116(後述する)の逆の処理を実行する機能部と最適化後の統合部103とで構成される変換器とすれば良い。   By optimizing these parameters, the converter creating apparatus 10 according to the embodiment of the present invention can create an efficient compressor and a decompressor corresponding to the compressor. Note that the compressor may be, for example, a converter including the optimized analysis unit 101 and quantization unit 102. The decompressor is, for example, a converter configured by a functional unit that performs a process reverse to that of an arithmetic coding unit 116 (described later) included in the quantization unit 102 and an integrated unit 103 after optimization. Good.

<量子化部102の詳細な機能構成>
次に、上記の量子化部102の詳細な機能構成について、図2を参照しながら説明する。図2は、本発明の実施の形態における量子化部102の詳細な機能構成の一例を示す図である。
<Detailed functional configuration of quantization section 102>
Next, a detailed functional configuration of the quantization unit 102 will be described with reference to FIG. FIG. 2 is a diagram illustrating an example of a detailed functional configuration of the quantization unit 102 according to the embodiment of the present invention.

図2に示すように、本発明の実施の形態における量子化部102には、分割部111と、CNN計算部112と、誤差計算部113と、量子化計算部114と、情報量計算部115と、算術符号化部116とが含まれる。   As shown in FIG. 2, the quantization unit 102 according to the embodiment of the present invention includes a division unit 111, a CNN calculation unit 112, an error calculation unit 113, a quantization calculation unit 114, and an information amount calculation unit 115. And an arithmetic coding unit 116.

分割部111は、中間データを、予め決められたK個のグループに分割する。すなわち、分割部111は、中間データの各要素x(i=1,・・・,CHW)をK個のグループに分類する。以降では、k(k=1,・・・,K)番目のグループに属するi番目の要素を「x (k)」と表し、同一のkに対してx (k)を各要素とする配列で表されるデータ(このデータを「k番目の分割データ」とも表す。)を The dividing unit 111 divides the intermediate data into K groups determined in advance. That is, the dividing unit 111 classifies each element x i (i = 1,..., CHW) of the intermediate data into K groups. In the following, k (k = 1, ··· , K) th i-th element belonging to the group of the "x i (k)" represents, and the same for each element x i (k) for k (This data is also referred to as “k-th divided data”).

Figure 2020053820
と表す。ここで、例えば分割データの全てが3次元配列で表すことができる場合、N(k)は、k番目のグループに属する要素数であり、N(k)=C(k)(k)(k)と表される。C(k)はk番目の分割データのチャネル数、H(k)はk番目の分割データの高さのサイズ、W(k)はk番目の分割データの幅のサイズである。
Figure 2020053820
It expresses. Here, for example, when all of the divided data can be represented by a three-dimensional array, N (k) is the number of elements belonging to the k-th group, and N (k) = C (k) H (k) W (K) . C (k) is the number of channels of the k-th divided data, H (k) is the height size of the k-th divided data, and W (k) is the width size of the k-th divided data.

また、k番目の分割データが量子化されたデータ(以降、「k番目の量子化分割データ」とも表す。)を   Also, data obtained by quantizing the k-th divided data (hereinafter, also referred to as “k-th quantized divided data”).

Figure 2020053820
と表す。
Figure 2020053820
It expresses.

CNN計算部112は、畳み込みニューラルネットワークによって実現され、k≧2の場合に、1番目の量子化分割データ〜k−1番目の量子化分割データを入力して、k番目の予測値データと、k番目の指標値データと、k番目の量子化幅データとを計算する。以降では、この畳み込みニューラルネットワークを「第3のCNN」とも表す。   The CNN calculation unit 112 is realized by a convolutional neural network. When k ≧ 2, the CNN calculation unit 112 inputs the first quantized divided data to the (k−1) -th quantized divided data, and obtains k-th predicted value data, The k-th index value data and the k-th quantization width data are calculated. Hereinafter, this convolutional neural network is also referred to as “third CNN”.

また、以降では、k番目の予測値データを   In the following, the k-th predicted value data is

Figure 2020053820
と表す。μ (k)は、x (k)の予測値である。
Figure 2020053820
It expresses. μ i (k) is a predicted value of x i (k) .

また、k番目の指標値データを   Also, the k-th index value data

Figure 2020053820
と表す。σ (k)は、予測値μ (k)が、真値x (k)に対してどの程度近いかを表す指標値である。
Figure 2020053820
It expresses. σ i (k) is an index value indicating how close the predicted value μ i (k) is to the true value x i (k) .

また、k番目の量子化幅データを   Also, the k-th quantization width data is

Figure 2020053820
と表す。q (k)は、量子化幅であり、
Figure 2020053820
It expresses. q i (k) is a quantization width,

Figure 2020053820
を真値x (k)にどの程度近付けるべきかを表す値(言い換えれば、真値x (k)を量子化する際の量子化の細かさを決める値)である。
Figure 2020053820
True value x i value indicating whether to how close to (k) (in other words, the true value x i (k) value that determines fineness of quantization at the time of quantizing) the a.

ただし、k=1の場合は、モデル内に(つまり、圧縮器自体に)予め保存されているパラメータを用いて、1番目の予測値データと、1番目の指標値データと、1番目の量子化幅データとが作成される。   However, in the case of k = 1, the first prediction value data, the first index value data, and the first quantum value are calculated using parameters stored in the model (that is, in the compressor itself) in advance. Width data is created.

誤差計算部113は、x (k)の量子化に用いられるk番目の誤差データを計算する。k番目の誤差データを The error calculator 113 calculates k-th error data used for quantization of x i (k) . k-th error data

Figure 2020053820
と表す。後述するように、この誤差δ (k)と、量子化幅q (k)とにより、x (k)を量子化した際の量子化誤差が表される。
Figure 2020053820
It expresses. As will be described later, the error δ i (k) and the quantization width q i (k) represent a quantization error when quantizing x i (k) .

量子化計算部114は、誤差δ (k)と、量子化幅q (k)とを用いて、x (k)を量子化する。 The quantization calculation unit 114 quantizes x i (k) using the error δ i (k) and the quantization width q i (k) .

情報量計算部115は、k番目の量子化分割データを算術符号化によって保存するのに必要な情報量(k番目の情報量)を計算する。k番目の情報量は、後述するように、   The information amount calculation unit 115 calculates an information amount (k-th information amount) necessary to store the k-th quantized divided data by arithmetic coding. The k-th information amount is, as described later,

Figure 2020053820
で表される。このとき、情報量計算部115は、k番目の予測値データと、k番目の指標値データとによって定義されるk番目の累積分布関数群
Figure 2020053820
It is represented by At this time, the information amount calculation unit 115 calculates the k-th cumulative distribution function group defined by the k-th predicted value data and the k-th index value data.

Figure 2020053820
を用いて、上記のk番目の情報量を計算する。ここで、累積分布関数Cum (k)は、例えば、予測値μ (k)と評価値σ (k)とによって決定される(例えば、μ (k)を平均、σ (k)の二乗を分散とする正規分布に対する累積分布関数等)。
Figure 2020053820
Is used to calculate the k-th information amount. Here, the cumulative distribution function Cum i (k) is determined by, for example, a predicted value μ i (k) and an evaluation value σ i (k) (for example, μ i (k) is averaged, σ i (k) ) , The cumulative distribution function for a normal distribution with variance squared).

算術符号化部116は、量子化中間データ(すなわち、1番目の量子化分割データ〜K番目の量子化分割データ)をそれぞれに対応する累積分布関数群と量子化幅データから計算される離散確率分布に従って算術符号化によって保存する。   The arithmetic coding unit 116 converts the quantized intermediate data (that is, the first quantized divided data to the K-th quantized divided data) into a discrete probability calculated from the corresponding cumulative distribution function group and quantization width data. Save by arithmetic coding according to distribution.

<最適化時における量子化部102による量子化の概略>
次に、最適化時における量子化部102による量子化の概略について、図3を参照しながら説明する。図3は、最適化時における量子化部102による量子化の概略の一例を説明する図である。分割部111による中間データの分割数をKとした場合、最適化時における量子化部102による量子化は、k=1からk=Kまで順に実行される。図3では、k≧2として、k回目の量子化を実行する場合について説明する。
<Outline of quantization by quantization section 102 during optimization>
Next, an outline of quantization by the quantization unit 102 at the time of optimization will be described with reference to FIG. FIG. 3 is a diagram illustrating an example of an outline of quantization by the quantization unit 102 at the time of optimization. When the number of divisions of the intermediate data by the division unit 111 is K, the quantization by the quantization unit 102 at the time of optimization is sequentially performed from k = 1 to k = K. FIG. 3 illustrates a case where the k-th quantization is executed with k ≧ 2.

ここで、図3において、実線矢印は誤差(予測誤差)が誤差逆伝播法によって逆伝播される「backwardあり」を示し、破線矢印は誤差(予測誤差)が逆伝播されない「backwardなし」を示す。なお、上述したように、k=1回目の量子化では、1番目の予測値データと、1番目の指標値データと、1番目の量子化幅データとが予め保存されているパラメータを用いて作成される点がk≧2の場合と異なる。   Here, in FIG. 3, the solid arrow indicates “backward” where the error (prediction error) is back-propagated by the error back propagation method, and the broken arrow indicates “no backward” where the error (prediction error) is not back-propagated. . Note that, as described above, in the k = first quantization, the first prediction value data, the first index value data, and the first quantization width data are stored using parameters stored in advance. The point created is different from the case where k ≧ 2.

図3に示すように、量子化部102による量子化では、1番目の量子化分割データ〜k−1番目の量子化分割データをCNN計算部112に入力して、k番目の予測値データと、k番目の指標値データと、k番目の量子化幅データとを計算する。   As shown in FIG. 3, in the quantization by the quantization unit 102, the first to the k−1th quantized divided data are input to the CNN calculating unit 112, and the k-th predicted value data and , K-th index value data and k-th quantization width data are calculated.

次に、k番目の予測値データと、k番目の真値データ(すなわち、k番目の分割データ)とを誤差計算部113に入力して、k番目の誤差データを計算する。次に、k番目の誤差データと、k番目の量子化幅データと、k番目の真値データとを量子化計算部114に入力して、k番目の量子化分割データを計算する。なお、このk番目の量子化分割データは、k+1回目の量子化で、CNN計算部112に入力される。   Next, the k-th predicted value data and the k-th true value data (that is, the k-th divided data) are input to the error calculator 113, and the k-th error data is calculated. Next, the k-th error data, the k-th quantization width data, and the k-th true value data are input to the quantization calculator 114, and the k-th quantized divided data is calculated. The k-th quantized divided data is input to the CNN calculating unit 112 in the (k + 1) -th quantization.

次に、k番目の量子化幅データと、k番目の量子化分割データとを情報量計算部115に入力して、k番目の累積分布関数群によりk番目の情報量I(k)を計算する。これにより、各k=1,・・・,Kに対して、k番目の情報量I(k)が得られる。この情報量I(k)をk=1,・・・,Kに対して足し合わせたものが、上記の数3に示す情報量Iである。後述するように、圧縮対象データと復元データとの歪みができるだけ小さく、かつ、この情報量Iができるだけ小さくなるように、分析部101と、量子化部102と、統合部103とが最適化される。 Next, the k-th quantized width data and the k-th quantized divided data are input to the information amount calculator 115, and the k-th information amount I (k) is calculated by the k-th cumulative distribution function group. I do. Thereby, for each k = 1,..., K, the k-th information amount I (k) is obtained. The sum of the information amount I (k) with respect to k = 1,..., K is the information amount I shown in Equation 3 above. As will be described later, the analysis unit 101, the quantization unit 102, and the integration unit 103 are optimized so that the distortion between the data to be compressed and the decompressed data is as small as possible and the information amount I is as small as possible. You.

<最適化処理>
次に、本発明の実施の形態における変換器作成装置10の最適化処理の詳細について、図4を参照しながら説明する。図4は、最適化処理の一例を示すフローチャートである。
<Optimization processing>
Next, details of the optimization processing of the converter creation device 10 according to the embodiment of the present invention will be described with reference to FIG. FIG. 4 is a flowchart illustrating an example of the optimization processing.

ステップS101:分析部101は、圧縮対象データ(C×H×Wのサイズの3次元配列で表される画像データ)を入力して、この圧縮対象データを変換した中間データを出力する。なお、この分析部101を実現する第1のCNNのパラメータは、最適化部104による最適化の対象となるパラメータである。 Step S101: The analysis unit 101 inputs compression target data (image data represented by a three-dimensional array having a size of C 0 × H 0 × W 0 ) and outputs intermediate data obtained by converting the compression target data. . The parameters of the first CNN that realizes the analysis unit 101 are parameters to be optimized by the optimization unit 104.

ステップS102:量子化部102の分割部111は、中間データをK個のグループに分割する。ここで、H=16、W=16として、空間方向(すなわち、H×W平面を基準)に中間データをK=10のグループに分割する場合について、図5を参照しながら説明する。図5は、分割方法の一例を示す図である。   Step S102: The dividing unit 111 of the quantization unit 102 divides the intermediate data into K groups. Here, a case where H = 16 and W = 16 and the intermediate data is divided into groups of K = 10 in the spatial direction (that is, with reference to the H × W plane) will be described with reference to FIG. FIG. 5 is a diagram illustrating an example of the dividing method.

図5(a)に示すように、例えば、(H,W)=(1,1),(1,9),(9,1),(9,9)である各要素xをk=1のグループに分類する。この場合、N(1)=C(1)(1)(1)=C×2×2=4Cである。k=2〜4についても同様である。 As shown in FIG. 5 (a), for example, (H, W) = (1, 1), (1, 9), the (9,1), each element x i is (9, 9) k = Classify into 1 group. In this case, N (1) = C (1) H (1) W (1) = C × 2 × 2 = 4C. The same applies to k = 2 to 4.

また、図5(b)に示すように、例えば、(H,W)=(1,3),(1,7),(1,11),(1,15),(5,3),(5,7),(5,11),(5,15),(9,3),(9,7),(9,11),(9,15),(13,3),(13,7),(13,11),(13,15),である各要素xをk=5のグループに分類する。この場合、N(5)=C(5)(5)(5)=C×4×4=16Cである。k=6〜7についても同様である。なお、図5(b)中のx (k)(k=1,2,3,4)は、このx (k)が、図5(a)によって、k=1〜4のいずれかのグループに分類されたことを表す。 Also, as shown in FIG. 5B, for example, (H, W) = (1, 3), (1, 7), (1, 11), (1, 15), (5, 3), (5,7), (5,11), (5,15), (9,3), (9,7), (9,11), (9,15), (13,3), (13) , 7), (13, 11), (13, 15), each element x i is classified into groups of k = 5. In this case, N (5) = C (5) H (5) W (5) = C × 4 × 4 = 16C. The same applies to k = 6 to 7. Note that x i (k) (k = 1, 2, 3, 4) in FIG. 5B indicates that x i (k) is one of k = 1 to 4 according to FIG. Represents that it was classified into a group.

また、図5(c)に示すように、例えば、(H,W)=(1,2),(1,4),(1,6),(1,8),(1,10),(1,12),(1,14),(1,16),(3,2),(3,4),(3,6),(3,8),(3,10),(3,12),(3,14),(3,16),・・・,(15,2),(15,4),(15,6),(15,8),(15,10),(15,12),(15,14),(15,16)である各要素xをk=8のグループに分類する。この場合、N(8)=C(8)(8)(8)=C×8×8=64Cである。k=9〜10についても同様である。なお、図5(c)中のx (k)(k=1,2,・・・,7)は、このx (k)が、図5(a)及び図5(b)によって、k=1〜7のいずれかのグループに分類されたことを表す。 Also, as shown in FIG. 5C, for example, (H, W) = (1, 2), (1, 4), (1, 6), (1, 8), (1, 10), (1,12), (1,14), (1,16), (3,2), (3,4), (3,6), (3,8), (3,10), (3 , 12), (3,14), (3,16), ..., (15,2), (15,4), (15,6), (15,8), (15,10), (15, 12), (15, 14) are classified into groups of k = 8 each element x i is a (15, 16). In this case, N (8) = C (8) H (8) W (8) = C × 8 × 8 = 64C. The same applies to k = 9 to 10. It should be noted that x i (k) (k = 1, 2,..., 7) in FIG. 5C indicates that x i (k) is represented by FIGS. 5A and 5B. It indicates that the group was classified into any one of k = 1 to 7.

これにより、中間データがK=10個のグループに分割される。図5では、説明の便宜上、中間データをk=1から順に分割させたが、必ずしも順に分割させる必要はない。分割部111は、中間データをk=1,・・・,Kのグループに同時に分割させることができる。   Thus, the intermediate data is divided into K = 10 groups. In FIG. 5, for convenience of explanation, the intermediate data is divided in order from k = 1, but it is not always necessary to divide the intermediate data in order. The division unit 111 can simultaneously divide the intermediate data into groups of k = 1,..., K.

なお、図5に示した分割方法は一例であって、分割部111は、この分割方法以外の種々の分割方法を用いて、中間データを分割しても良い。   Note that the division method illustrated in FIG. 5 is an example, and the division unit 111 may divide the intermediate data using various division methods other than this division method.

以降のステップS103〜ステップS106は、k=1からk=Kまで順に繰り返し実行される。   The subsequent steps S103 to S106 are repeatedly executed in order from k = 1 to k = K.

ステップS103:量子化部102は、k番目の予測値データと、k番目の指標値データと、k番目の量子化幅データとを得る。   Step S103: The quantization unit 102 obtains k-th predicted value data, k-th index value data, and k-th quantization width data.

ここで、k=1の場合、量子化部102は、予め保存されているパラメータを用いて、1番目の予測値データと、1番目の指標値データと、1番目の量子化幅データとを作成することで、これらのデータを得る。   Here, when k = 1, the quantization unit 102 divides the first prediction value data, the first index value data, and the first quantization width data using the parameters stored in advance. By creating these, these data are obtained.

具体的には、予め保存されている第1のパラメータ   Specifically, the first parameter stored in advance

Figure 2020053820
を空間方向にコピー(すなわち、H(1)×W(1)個の第1のパラメータを作成)することで、1番目の予測値データ
Figure 2020053820
Is copied in the spatial direction (that is, H (1) × W (1) first parameters are created) to obtain the first predicted value data.

Figure 2020053820
を作成する。これにより、1番目の予測値データが得られる。
Figure 2020053820
Create Thereby, the first predicted value data is obtained.

同様に、予め保存されている第2のパラメータ   Similarly, a second parameter stored in advance

Figure 2020053820
を空間方向にコピーすることで、1番目の指標値データ
Figure 2020053820
Is copied in the spatial direction, the first index value data

Figure 2020053820
を作成する。これにより、1番目の指標値データが得られる。
Figure 2020053820
Create Thereby, the first index value data is obtained.

同様に、予め保存されている第3のパラメータ   Similarly, a third parameter stored in advance

Figure 2020053820
を空間方向にコピーすることで、1番目の量子化幅データ
Figure 2020053820
Is copied in the spatial direction to obtain the first quantization width data.

Figure 2020053820
を作成する。これにより、1番目の量子化幅データが得られる。
Figure 2020053820
Create As a result, the first quantization width data is obtained.

このように、k=1の場合、第1のパラメータ〜第3のパラメータを用いて、1番目の予測値データと、1番目の指標値データと、1番目の量子化幅データとを得る。これらの第1のパラメータ〜第3のパラメータは、上記の通り、チャネル毎に1つの値を持っている。なお、これらの第1のパラメータ〜第3のパラメータは、最適化部104による最適化の対象となるパラメータである。   As described above, when k = 1, the first prediction value data, the first index value data, and the first quantization width data are obtained using the first to third parameters. As described above, these first to third parameters have one value for each channel. Note that these first to third parameters are parameters to be optimized by the optimization unit 104.

一方で、k≧2である場合、量子化部102は、CNN計算部112により、k番目の予測値データと、k番目の指標値データと、k番目の量子化幅データとを計算することで、これらのデータを得る。   On the other hand, if k ≧ 2, the quantization unit 102 causes the CNN calculation unit 112 to calculate k-th predicted value data, k-th index value data, and k-th quantization width data. Obtain these data.

具体的には、CNN計算部112は、1番目の量子化分割データ〜k−1番目の量子化分割データを入力して、k番目の予測値データと、k番目の指標値データと、k番目の量子化幅データとを計算する。これにより、k番目の予測値データと、k番目の指標値データと、k番目の量子化幅データとが得られる。なお、CNN計算部112を実現する第3のCNNのパラメータは、最適化部104による最適化の対象となるパラメータである。   Specifically, the CNN calculation unit 112 inputs the first quantized divided data to the (k-1) th quantized divided data, and inputs k-th predicted value data, k-th index value data, and k-th index value data. Calculate the data of the quantization width. Thereby, k-th predicted value data, k-th index value data, and k-th quantization width data are obtained. Note that the third CNN parameter for realizing the CNN calculation unit 112 is a parameter to be optimized by the optimization unit 104.

ステップS104:次に、量子化部102の誤差計算部113は、k番目の予測値データと、k番目の量子化幅データと、k番目の分割データとを用いて、k番目の誤差データを計算する。   Step S104: Next, the error calculation unit 113 of the quantization unit 102 calculates the k-th error data using the k-th prediction value data, the k-th quantization width data, and the k-th divided data. calculate.

具体的には、まず、誤差計算部113は、各i=1,・・・,N(k)に対して、 Specifically, first, the error calculator 113 calculates, for each i = 1,..., N (k) ,

Figure 2020053820
となるように
Figure 2020053820
So that

Figure 2020053820
を作成する。
Figure 2020053820
Create

次に、誤差計算部113は、各i=1,・・・,N(k)に対して、 Next, the error calculator 113 calculates, for each i = 1,..., N (k) ,

Figure 2020053820
となるように
Figure 2020053820
So that

Figure 2020053820
を作成する。これにより、k番目の誤差データが計算される。
Figure 2020053820
Create As a result, the k-th error data is calculated.

ステップS105:次に、量子化部102の量子化計算部114は、k番目の分割データと、k番目の誤差データと、k番目の量子化幅データとを用いて、k番目の量子化分割データを計算する。   Step S105: Next, the quantization calculation unit 114 of the quantization unit 102 uses the k-th divided data, the k-th error data, and the k-th quantization width data to perform the k-th quantization division. Calculate the data.

具体的には、量子化部102は、各i=1,・・・,N(k)に対して、 Specifically, the quantization unit 102 calculates, for each i = 1,..., N (k) ,

Figure 2020053820
とする。これにより、k番目の量子化分割データが計算される。このとき、δ (k)とq (k)との積が量子化誤差を表す。
Figure 2020053820
And As a result, the k-th quantized divided data is calculated. At this time, the product of δ i (k) and q i (k) represents a quantization error.

ここで、上記の数23に示す式は、   Here, the expression shown in the above Expression 23 is

Figure 2020053820
と変形することができる。すなわち、
Figure 2020053820
And can be transformed. That is,

Figure 2020053820
は、予測値μ (k)と真値x (k)との差ξ (k) (k)を、量子化幅q (k)で量子化したものと言うことができる。また、上記の数24により、
Figure 2020053820
Is the difference between the predicted value mu i (k) and the true value x i (k) ξ i ( k) q i (k), can be referred to those quantized by the quantization width q i (k) . Further, according to the above Equation 24,

Figure 2020053820
は、x (k)に対して、区間[−0.5q (k),0.5q (k))の量子化誤差が入ったものと捉えることもできる。これにより、最適化部104による最適化では、量子化誤差を小さくするように(すなわち、量子化幅q (k)を小さくするように)パラメータを最適化する力が働く。
Figure 2020053820
Can be considered to include a quantization error in the interval [−0.5q i (k) , 0.5q i (k) ) with respect to x i (k) . Accordingly, in the optimization performed by the optimization unit 104, a force for optimizing the parameters acts so as to reduce the quantization error (that is, to reduce the quantization width q i (k)) .

ステップS106:次に、量子化部102の情報量計算部115は、k番目の量子化分割データを算術符号化によって保存するのに必要なk番目の情報量I(k)を計算する。 Step S106: Next, the information amount calculation unit 115 of the quantization unit 102 calculates the k-th information amount I (k) necessary for storing the k-th quantized divided data by arithmetic coding.

具体的には、まず、情報量計算部115は、累積分布関数Cum (k)Specifically, first, the information amount calculation unit 115 calculates the cumulative distribution function Cum i (k)

Figure 2020053820
で定義された関数とする。なお、累積分布関数は、一般に、確率密度関数を区間[−∞,x]で積分した関数として定義される。したがって、上記の累積分布関数Cum (k)は、所定の確率密度関数(例えば、μ (k)を平均、σ (k)の二乗を分散とする正規分布に対する確率密度関数等)を上記の数27に示す区間で積分した関数を意味する。
Figure 2020053820
Function. Note that the cumulative distribution function is generally defined as a function obtained by integrating a probability density function in an interval [−∞, x]. Therefore, the cumulative distribution function Cum i (k) is a predetermined probability density function (for example, a probability density function for a normal distribution having μ i (k) as an average and σ i (k) as a variance). It means a function integrated in the section shown in the above Expression 27.

ここで、   here,

Figure 2020053820
は、x (k)=−1として、上記のステップS104及びステップS105と同様の方法で、x (k)=−1を量子化したものである。
Figure 2020053820
As x i (k) = -1, in the same manner as in steps S104 and S105 described above is obtained by quantizing the x i (k) = -1.

また、   Also,

Figure 2020053820
は、x (k)=1として、上記のステップS104及びステップS105と同様の方法で、x (k)=1を量子化したものである。
Figure 2020053820
As x i (k) = 1, in the same manner as in steps S104 and S105 described above, the x i (k) = 1 is obtained by quantizing.

なお、累積分布関数Cum (k)は、上述したように、予測値μ (k)と評価値σ (k)とによって決定される。ただし、予測値μ (k)のみによって決定されても良い。 Note that the cumulative distribution function Cum i (k) is determined by the predicted value μ i (k) and the evaluation value σ i (k) as described above. However, it may be determined only by the predicted value μ i (k) .

このとき、累積分布関数Cum (k)は増加関数であり、 At this time, the cumulative distribution function Cum i (k) is an increasing function,

Figure 2020053820
を満たす。
Figure 2020053820
Meet.

次に、情報量計算部115は、算術符号化の1つであるレンジ符号化に必要な上端(upperbound)と下端(lowerbound)とを   Next, the information amount calculation unit 115 calculates an upper bound and a lower bound required for range coding, which is one of arithmetic coding.

Figure 2020053820
と設定する。
Figure 2020053820
Set as

このとき、   At this time,

Figure 2020053820
の出現予測確率は、
Figure 2020053820
Is the appearance prediction probability of

Figure 2020053820
で表される。これにより、最適化部104による最適化では、算術符号化による保存に必要な情報量を小さくするように(すなわち、量子化幅q (k)を大きくするように)パラメータを最適化する力が働く。
Figure 2020053820
It is represented by As a result, in the optimization by the optimizing unit 104, the power for optimizing the parameters to reduce the amount of information necessary for storage by arithmetic coding (that is, to increase the quantization width q i (k)). Works.

したがって、情報量計算部115は、k番目の情報量I(k)Therefore, the information amount calculation unit 115 calculates the k-th information amount I (k)

Figure 2020053820
により計算することができる。
Figure 2020053820
Can be calculated by

以上のステップS103〜ステップS106がk=1からk=Kまで順に繰り返し実行されることで、各k番目の量子化分割データと、各情報量I(k)とが得られる。すなわち、量子化中間データと、この量子化中間データの保存に必要な情報量I=I(1)+・・・+I(K)とが得られる。これにより、算術符号化部116は、算術符号化によって量子化中間データを情報量I(より正確には、情報量Iに近い情報量)で保存することができる。ただし、最適化時には、量子化中間データは必ずしも保存されなくても良い。 By repeating the above steps S103 to S106 in order from k = 1 to k = K, each k-th quantized divided data and each information amount I (k) are obtained. That is, the quantized intermediate data and the information amount I = I (1) +... + I (K) necessary for storing the quantized intermediate data are obtained. As a result, the arithmetic coding unit 116 can store the quantized intermediate data as the information amount I (more precisely, the information amount close to the information amount I) by arithmetic coding. However, at the time of optimization, the quantized intermediate data need not always be stored.

ステップS107:次に、統合部103は、量子化中間データを入力して、この量子化中間データを変換した復元データ(C×H×Wのサイズの3次元配列で表される画像データ)を出力する。なお、この統合部103を実現する第2のCNNのパラメータは、最適化部104による最適化の対象となるパラメータである。 Step S107: Next, the integration unit 103 inputs the quantized intermediate data, and converts the quantized intermediate data into restored data (an image represented by a three-dimensional array having a size of C 0 × H 0 × W 0 ). Output). Note that the parameters of the second CNN that realizes the integration unit 103 are the parameters to be optimized by the optimization unit 104.

ステップS108:最後に、最適化部104は、所定のloss関数の値が最小となるように、第1のCNNのパラメータと、第2のCNNのパラメータと、第3のCNNのパラメータと、第1のパラメータ〜第3のパラメータとを最適化する。ここで、loss関数としては、符号長が小さいほど小さい値をとり、かつ、統合部103が出力した復元データと元のデータ(つまり、圧縮対象データ)との歪みが小さいほど小さい値をとる任意の関数を用いることができる。例えば、loss関数として、以下の関数を用いることができる。   Step S108: Finally, the optimizing unit 104 sets the parameter of the first CNN, the parameter of the second CNN, the parameter of the third CNN, and the parameter of the third CNN such that the value of the predetermined loss function is minimized. The first parameter to the third parameter are optimized. Here, as the loss function, an arbitrary value having a smaller value as the code length is smaller, and a smaller value as the distortion between the restored data output from the integrating unit 103 and the original data (that is, the compression target data) is smaller. Can be used. For example, the following function can be used as the loss function.

Figure 2020053820
ここで、α、β及びγは予め決められた定数(ただし、0以外の定数とする。)である。α、β及びγとしては、例えば、α=β=γ=1とすれば良い。
Figure 2020053820
Here, α, β, and γ are predetermined constants (provided that they are constants other than 0). α, β, and γ may be, for example, α = β = γ = 1.

また、bit_lengthは、情報量計算部115により計算された情報量Iである。MSSSIM(multi-scale structural similarity)は、圧縮対象データと、復元データとのMSSSIM値である。MSE(mean squared error)は、圧縮対象データと復元データとで互いに対応する画素値(すなわち、互いに同じ位置にある画素の値(つまり、同じ高さ、幅、チャネルの画素の値))の平均二乗誤差である。なお、上記の数35に示すloss関数の勾配値は、誤差逆伝播法によって逆伝播された誤差(予測誤差)から計算することができる。ただし、量子化の演算は微分不可能な演算であるため、このloss関数の勾配値は、量子化があることを無視して(つまり、x^の代わりにxを使用して)、近似的な計算により算出される。   In addition, bit_length is the information amount I calculated by the information amount calculation unit 115. MSSSIM (multi-scale structural similarity) is an MSSSIM value between the data to be compressed and the decompressed data. The MSE (mean squared error) is an average of pixel values corresponding to each other in the data to be compressed and the decompressed data (that is, values of pixels at the same position (that is, values of pixels of the same height, width, and channel)). It is a square error. The gradient value of the loss function shown in Equation 35 can be calculated from the error (prediction error) backpropagated by the error backpropagation method. However, since the quantization operation is a non-differentiable operation, the gradient value of this loss function is approximated by ignoring the presence of quantization (that is, by using x instead of x ^). It is calculated by various calculations.

これにより、第1のCNNのパラメータと、第2のCNNのパラメータと、第3のCNNのパラメータと、第1のパラメータ〜第3のパラメータとが最適化される。このとき、上述したように、量子化誤差を小さくするように(すなわち、量子化幅q (k)を小さくするように)パラメータを最適化する力と、算術符号化による保存に必要な情報量を小さくするように(すなわち、量子化幅q (k)を大きくするように)パラメータを最適化する力とが働く。このように、パラメータの最適化時には、トレードオフの関係にある2つの力が働く。このトレードオフによって、適切な量子化幅q (k)を学習することができる。つまり、量子化誤差を小さくすると共に、保存に必要な情報量を小さくするように最適化されることで、適切な量子化幅q (k)が学習され、量子化幅データも最適化される。 Thereby, the parameters of the first CNN, the parameters of the second CNN, the parameters of the third CNN, and the first to third parameters are optimized. At this time, as described above, the power for optimizing parameters so as to reduce the quantization error (that is, to reduce the quantization width q i (k)) and the information necessary for storage by arithmetic coding The power of optimizing the parameters works to reduce the quantity (that is, to increase the quantization width q i (k)) . Thus, at the time of parameter optimization, two forces having a trade-off relationship act. With this trade-off, an appropriate quantization width q i (k) can be learned. That is, by performing optimization so as to reduce the quantization error and the amount of information necessary for storage, an appropriate quantization width q i (k) is learned, and the quantization width data is also optimized. You.

なお、loss関数として、上記の数35に示すloss関数を用いることで、ニューラルネットワークの構造の最適化に要する手間を削減することができると共に、使用時のメモリを削減することができるようになる。通常の歪みあり符号化の場合、或る符号長の制約をおくと、その符号長の制約に特化したloss関数が定義され(つまり、異なる符号長の制約毎に異なるloss関数が作成され)、それぞれのloss関数毎に最適なニューラルネットワークの構造(例えば、層の数やチャネル数、ユニット数等)が異なる。このため、通常の歪みあり符号化では、loss関数毎にニューラルネットワークの最適化を行う必要がある。これに対して、本発明の実施の形態では、上記の数35に示すloss関数を用いて、このloss関数が最小になるようにニューラルネットワークの構造を最適化することで、幅広い範囲の符号長の制約の下で高い性能(つまり、歪みが小さく、かつ、量子化・符号化されたデータの符号長が小さい)を達成することができる。また、この場合、学習後のニューラルネットワークを利用して符号化、復号化する際も符号長の制約毎に異なるニューラルネットワークを読み込む必要が無くなり、使用時に必要なメモリを削減することができる。   By using the loss function shown in Equation 35 as the loss function, it is possible to reduce the time and effort required for optimizing the structure of the neural network, and to reduce the memory at the time of use. . In the case of ordinary distortion coding, when a certain code length constraint is set, a loss function specialized for the code length constraint is defined (that is, a different loss function is created for each different code length constraint). , The optimal neural network structure (for example, the number of layers, the number of channels, the number of units, etc.) differs for each loss function. Therefore, in normal distortion coding, it is necessary to optimize the neural network for each loss function. On the other hand, in the embodiment of the present invention, by using the loss function shown in Equation 35 above, the structure of the neural network is optimized so that the loss function is minimized, so that a wide range of code lengths is obtained. High performance (that is, small distortion and small code length of quantized / encoded data) under the constraint of Further, in this case, even when performing encoding and decoding using the neural network after learning, it is not necessary to read a different neural network for each constraint on the code length, and it is possible to reduce the memory required for use.

以上により、本発明の実施の形態における変換器作成装置10は、効率的な圧縮器と、この圧縮器に対応する復元器とを作成することができる。なお、上記のステップS108の最適化は、例えば、上記のステップS101〜ステップS107を異なる複数のサンプル(圧縮対象データ)を用いて繰り返し実行した後に実行されても良い。   As described above, the converter creating apparatus 10 according to the embodiment of the present invention can create an efficient compressor and a decompressor corresponding to the compressor. The optimization in step S108 may be performed, for example, after repeatedly performing steps S101 to S107 using a plurality of different samples (compression target data).

<本発明の効果>
本発明の効果について、図6を参照しながら説明する。図6は、本発明の効果の一例を示す図である。図6は、縦軸を1−MSSSIM、横軸をbpp(bits per pixel)とした場合における本発明の手法で得られた圧縮器と、従来手法で得られた圧縮器との比較結果である。1−MSSSIMはその値が低い程、歪みが小さいことを表し、bppはその値が低い程、圧縮率が高いことを表す。なお、bppは、情報量IをH×Wで除算することで得られる。
<Effect of the present invention>
The effect of the present invention will be described with reference to FIG. FIG. 6 is a diagram showing an example of the effect of the present invention. FIG. 6 shows a comparison result between the compressor obtained by the method of the present invention and the compressor obtained by the conventional method when the vertical axis is 1-MSSSIM and the horizontal axis is bpp (bits per pixel). . 1-MSSSIM indicates that the lower the value is, the smaller the distortion is, and the lower the value is, the higher the compression ratio is. Note that bpp is obtained by dividing the information amount I by H × W.

図6に示すように、本発明の手法で得られた圧縮器では、従来手法で得られた圧縮器と比較して、歪みが小さく、かつ、高い圧縮率が得られていることがわかる。なお、図6において、本発明の手法を示すグラフ中の数字は、第1のCNN及び第2のCNNのチャネル数である。   As shown in FIG. 6, it can be seen that the compressor obtained by the method of the present invention has a smaller distortion and a higher compression ratio than the compressor obtained by the conventional method. In FIG. 6, the numbers in the graph indicating the method of the present invention are the numbers of channels of the first CNN and the second CNN.

なお、図6の従来手法のうち、「Neural Multi−scale」は、「Neural Multi−scale Image Compression」のことである。また、「Johonston et al.」は、以下の参考文献1に記載されている手法のことである。   In addition, in the conventional method of FIG. 6, “Neural Multi-scale Image Compression” is “Neural Multi-scale Image Compression”. "Johstonton et al." Refers to a method described in the following Reference 1.

[参考文献1]
Nick Johnston, Damien Vincent, David Minnen, Michele Covell, Saurabh Singh, Troy Chinen, Sung Jin Hwang, Joel Shor, and George Toderici. Improved lossy image compression with priming and spatially adaptive bit rates for recurrent networks. arXiv preprint arXiv:1703.10114, 2017.
<変換器作成装置10のハードウェア構成>
最後に、本発明の実施の形態における変換器作成装置10のハードウェア構成について、図7を参照しながら説明する。図7は、本発明の実施の形態における変換器作成装置10のハードウェア構成の一例を示す図である。
[Reference 1]
Nick Johnston, Damien Vincent, David Minnen, Michele Covell, Saurabh Singh, Troy Chinen, Sung Jin Hwang, Joel Shor, and George Toderici. Improved lossy image compression with priming and spatially adaptive bit rates for recurrent networks. 2017.
<Hardware configuration of converter creation device 10>
Lastly, a hardware configuration of the converter creation device 10 according to the embodiment of the present invention will be described with reference to FIG. FIG. 7 is a diagram illustrating an example of a hardware configuration of the converter creating device 10 according to the embodiment of the present invention.

図7に示すように、本発明の実施の形態における変換器作成装置10は、入力装置201と、表示装置202と、外部I/F203と、通信I/F204と、RAM(Random Access Memory)205と、ROM(Read Only Memory)206と、プロセッサ207と、補助記憶装置208とを有する。これら各ハードウェアは、バス209により通信可能に接続されている。   As shown in FIG. 7, the converter creation device 10 according to the embodiment of the present invention includes an input device 201, a display device 202, an external I / F 203, a communication I / F 204, and a random access memory (RAM) 205. , A ROM (Read Only Memory) 206, a processor 207, and an auxiliary storage device 208. These pieces of hardware are communicably connected by a bus 209.

入力装置201は、例えばキーボードやマウス、タッチパネル等であり、ユーザが各種操作を入力するのに用いられる。表示装置202は、例えばディスプレイ等であり、変換器作成装置10の各種処理結果を表示する。   The input device 201 is, for example, a keyboard, a mouse, a touch panel, or the like, and is used by a user to input various operations. The display device 202 is, for example, a display or the like, and displays various processing results of the converter creation device 10.

外部I/F203は、外部装置とのインタフェースである。外部装置には、記録媒体203a等がある。変換器作成装置10は、外部I/F203を介して、記録媒体203a等の読み取りや書き込み等を行うことができる。記録媒体203aには、変換器作成装置10が有する各機能部(すなわち、分析部101、量子化部102、統合部103及び最適化部104)を実現する1以上のプログラム等が記録されていても良い。   The external I / F 203 is an interface with an external device. The external device includes a recording medium 203a and the like. The converter creation device 10 can read and write the recording medium 203a and the like via the external I / F 203. On the recording medium 203a, one or more programs for realizing each functional unit (that is, the analyzing unit 101, the quantizing unit 102, the integrating unit 103, and the optimizing unit 104) included in the converter creating device 10 are recorded. Is also good.

記録媒体203aには、例えば、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disk)、SDメモリカード(Secure Digital memory card)、USB(Universal Serial Bus)メモリカード等がある。   Examples of the recording medium 203a include a flexible disk, a CD (Compact Disc), a DVD (Digital Versatile Disk), an SD memory card (Secure Digital memory card), and a USB (Universal Serial Bus) memory card.

通信I/F204は、変換器作成装置10を通信ネットワークに接続するためのインタフェースである。変換器作成装置10が有する各機能部を実現する1以上のプログラムは、通信I/F204を介して、所定のサーバ装置等から取得(ダウンロード)されても良い。   The communication I / F 204 is an interface for connecting the converter creation device 10 to a communication network. One or more programs for realizing each functional unit of the converter creation device 10 may be obtained (downloaded) from a predetermined server device or the like via the communication I / F 204.

RAM205は、プログラムやデータを一時保持する揮発性の半導体メモリである。ROM206は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ROM206には、例えば、OS(Operating System)に関する設定や通信ネットワークに関する設定等が格納されている。   The RAM 205 is a volatile semiconductor memory that temporarily stores programs and data. The ROM 206 is a nonvolatile semiconductor memory that can retain programs and data even when the power is turned off. The ROM 206 stores, for example, settings related to an OS (Operating System) and settings related to a communication network.

プロセッサ207は、例えばCPU(Central Processing Unit)やGPU(Graphics Processing Unit)等であり、ROM206や補助記憶装置208等からプログラムやデータをRAM205上に読み出して処理を実行する演算装置である。変換器作成装置10が有する各機能部は、例えば補助記憶装置208に格納されている1以上のプログラムがプロセッサ207に実行させる処理により実現される。なお、変換器作成装置10は、プロセッサ207として、CPUとGPUとの両方を有していても良いし、CPU又はGPUのいずれか一方のみを有していても良い。また、変換器作成装置10は、例えば、FPGA(field-programmable gate array)等の専用の半導体チップを有していても良い。   The processor 207 is, for example, a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), or the like, and is an arithmetic device that reads a program or data from the ROM 206, the auxiliary storage device 208, or the like onto the RAM 205 and executes processing. Each functional unit of the converter creation device 10 is realized by, for example, a process in which one or more programs stored in the auxiliary storage device 208 cause the processor 207 to execute. The converter creation device 10 may have both the CPU and the GPU as the processor 207, or may have only one of the CPU and the GPU. Further, the converter creating device 10 may include a dedicated semiconductor chip such as an FPGA (field-programmable gate array).

補助記憶装置208は、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)等であり、プログラムやデータを格納している不揮発性の記憶装置である。補助記憶装置208には、例えば、OS、各種アプリケーションソフトウェア、変換器作成装置10が有する各機能部を実現する1以上のプログラム等が格納されている。   The auxiliary storage device 208 is, for example, a hard disk drive (HDD) or a solid state drive (SSD), and is a nonvolatile storage device that stores programs and data. The auxiliary storage device 208 stores, for example, an OS, various application software, one or more programs for realizing each functional unit of the converter creation device 10, and the like.

本発明の実施の形態における変換器作成装置10は、図7に示すハードウェア構成を有することにより、上述した各種処理を実現することができる。なお、図7に示すハードウェア構成は一例であって、他の構成であっても良い。例えば、変換器作成装置10は、入力装置201及び表示装置202のうちの少なくとも一方を有していなくても良い。   The converter creation device 10 according to the embodiment of the present invention can realize the above-described various processes by having the hardware configuration shown in FIG. Note that the hardware configuration shown in FIG. 7 is an example, and another configuration may be used. For example, the converter creating device 10 may not have at least one of the input device 201 and the display device 202.

本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。   The present invention is not limited to the above-described embodiments specifically disclosed, and various modifications and changes can be made without departing from the scope of the claims.

10 変換器作成装置
101 分析部
102 量子化部
103 統合部
104 最適化部
111 分割部
112 CNN計算部
113 誤差計算部
114 量子化計算部
115 情報量計算部
116 算術符号化部
DESCRIPTION OF SYMBOLS 10 Transformer creation apparatus 101 Analysis part 102 Quantization part 103 Integration part 104 Optimization part 111 Division part 112 CNN calculation part 113 Error calculation part 114 Quantization calculation part 115 Information amount calculation part 116 Arithmetic coding part

Claims (11)

非可逆圧縮によりデータを圧縮する場合における量子化及び符号化器作成方法であって、
前記データの量子化及び符号化において、デコード時に既にデコード済みの情報を用いて、量子化先の標本空間を所定の関数により決定する手順、
をコンピュータが実行することを特徴とする量子化及び符号化器作成方法。
A method for creating a quantization and encoder when compressing data by lossy compression,
In the quantization and encoding of the data, a procedure for determining a sample space to be quantized by a predetermined function using information that has already been decoded at the time of decoding,
Is performed by a computer.
前記所定の関数はニューラルネットワークであり、
前記ニューラルネットワークの内部パラメータを、前記非可逆圧縮における圧縮性能が高くなるように最適化することで、前記量子化先の標本空間を決定する、ことを特徴とする請求項1に記載の量子化及び符号化器作成方法。
The predetermined function is a neural network;
2. The quantization method according to claim 1, wherein the internal parameters of the neural network are optimized so that the compression performance in the lossy compression is improved, so that the quantization target sample space is determined. And an encoder creation method.
第1のニューラルネットワークで実現される分析器により圧縮対象データを変換した中間データを作成する分析手順と、
第2のニューラルネットワークで実現される量子化・符号化器により前記中間データの量子化先の標本空間を決定し、前記標本空間を用いて前記中間データを量子化・符号化した量子化データを作成する量子化・符号化手順と、
第3のニューラルネットワークで実現される統合器により前記量子化データを変換した復元データを作成する統合手順と、
前記圧縮対象データと前記復元データとの歪みと、前記量子化データを算術符号化によって保存する場合に必要な情報量とに基づいて、前記第1のニューラルネットワークのパラメータと、前記第2のニューラルネットワークのパラメータと、前記第3のニューラルネットワークのパラメータとを最適化する最適化手順と、
をコンピュータが実行することを特徴とする圧縮器作成方法。
An analysis procedure for creating intermediate data obtained by converting data to be compressed by an analyzer realized by a first neural network;
A quantization / encoder implemented by a second neural network determines a sample space to quantize the intermediate data, and uses the sample space to quantize / encode the intermediate data to obtain quantized data. The quantization / encoding procedure to create,
An integration procedure for creating restored data obtained by converting the quantized data by an integrator realized by a third neural network;
Parameters of the first neural network and the second neural network based on a distortion between the data to be compressed and the decompressed data and an amount of information required when the quantized data is stored by arithmetic coding. An optimization procedure for optimizing the parameters of the network and the parameters of the third neural network;
And a computer for executing the method.
第1のニューラルネットワークで実現される分析器により圧縮対象データを変換した中間データを作成する分析手順と、
前記中間データを量子化器により量子化した量子化データを作成する量子化手順と、
第2のニューラルネットワークで実現される統合器により前記量子化データを変換した復元データを作成する統合手順と、
前記圧縮対象データと前記復元データとの歪みと、前記量子化データを算術符号化によって保存する場合に必要な情報量とに基づいて、前記第1のニューラルネットワークのパラメータと、前記量子化器のパラメータと、前記第2のニューラルネットワークのパラメータとを最適化する最適化手順と、
をコンピュータが実行することを特徴とする圧縮器作成方法。
An analysis procedure for creating intermediate data obtained by converting data to be compressed by an analyzer realized by a first neural network;
A quantization procedure for creating quantized data obtained by quantizing the intermediate data with a quantizer,
An integration procedure for creating restored data obtained by converting the quantized data by an integrator realized by a second neural network;
Parameters of the first neural network, based on a distortion between the data to be compressed and the decompressed data and an amount of information required when the quantized data is stored by arithmetic coding, An optimization procedure for optimizing the parameters and the parameters of the second neural network;
And a computer for executing the method.
前記最適化手順は、
α、β及びγを所定の定数、前記圧縮対象データと前記復元データとで互いに対応する画素値の平均二乗誤差をMSE、前記圧縮対象データと前記復元データとのMSSSIM値をMSSSIM、前記情報量により表されるビット長を示すbit_lengthとして、
Figure 2020053820
を最小化するように、前記第1のニューラルネットワークのパラメータと、前記量子化器のパラメータと、前記第2のニューラルネットワークのパラメータとを最適化する、ことを特徴とする請求項4に記載の圧縮器作成方法。
The optimization procedure includes:
α, β, and γ are predetermined constants, the mean square error of the pixel values corresponding to each other in the data to be compressed and the decompressed data is MSE, the MSSSIM value between the data to be compressed and the decompressed data is MSSSIM, and the information amount. As bit_length indicating the bit length represented by
Figure 2020053820
5. The method according to claim 4, wherein parameters of the first neural network, parameters of the quantizer, and parameters of the second neural network are optimized so as to minimize. How to make a compressor.
前記量子化手順は、
前記中間データの各要素をK個のグループに分割した上で、k(k=1,・・・,K)番目のグループに属する要素で構成されるk番目の中間データを用いて、該k番目の中間データに対応するk番目の量子化データと、該k番目の量子化データを算術符号化によって保存する場合に必要なk番目の情報量とをk=1からk=Kまで順に作成することで、前記k番目の情報量のk=1からk=Kまでの総和で表される前記情報量と、前記k番目の量子化データのk=1からk=Kまでの結合で表される前記量子化データとを作成する、ことを特徴とする請求項4又は5に記載の圧縮器作成方法。
The quantization procedure includes:
After dividing each element of the intermediate data into K groups, the k-th intermediate data composed of the elements belonging to the k-th (k = 1,. The k-th quantized data corresponding to the k-th intermediate data and the k-th information amount necessary for storing the k-th quantized data by arithmetic coding are sequentially created from k = 1 to k = K. By doing so, the information amount represented by the sum of the k-th information amount from k = 1 to k = K and the combination of the k-th quantized data from k = 1 to k = K are represented. The method according to claim 4, wherein the quantized data is generated.
前記量子化器には、k≧2である場合に、1番目の量子化データからk−1番目の量子化データまでを入力として、k番目の中間データを予測したk番目の予測値データと、前記k番目の中間データと前記k番目の予測値データとの近さを表すk番目の指標値データと、前記k番目の中間データを量子化する場合の量子化幅を表すk番目の量子化幅データとを出力する第3のニューラルネットワークが含まれ、
前記量子化手順は、
前記k番目の予測値データと前記k番目の量子化幅データと前記k番目の中間データとを用いて、前記k番目の量子化データを作成し、
前記k番目の予測値データと前記k番目の指標値データとによって決定される累積分布関数と、前記k番目の量子化データと、前記k番目の量子化幅データとを用いて、前記k番目の情報量を作成する、ことを特徴とする請求項6に記載の圧縮器作成方法。
When k ≧ 2, the quantizer receives k-th to k−1th quantized data as inputs and predicts k-th predicted value data that predicts k-th intermediate data. , K-th index value data indicating the closeness between the k-th intermediate data and the k-th prediction value data, and k-th quantum indicating a quantization width when quantizing the k-th intermediate data And a third neural network for outputting the normalized width data and
The quantization procedure includes:
Using the k-th prediction value data, the k-th quantization width data, and the k-th intermediate data, creating the k-th quantization data,
Using the cumulative distribution function determined by the k-th predicted value data and the k-th index value data, the k-th quantized data, and the k-th quantized width data, 7. The method according to claim 6, wherein the information amount is created.
k=1である場合、前記k番目の予測値データと、前記k番目の指標値データと、前記k番目の量子化幅データとは、予め保存されている第1のパラメータと第2のパラメータと第3のパラメータとからそれぞれ作成され、
前記量子化器のパラメータには、前記第3のニューラルネットワークのパラメータと、前記第1のパラメータと、前記第2のパラメータと、前記第3のパラメータとが含まれる、ことを特徴とする請求項7に記載の圧縮器作成方法。
When k = 1, the k-th prediction value data, the k-th index value data, and the k-th quantization width data are a first parameter and a second parameter stored in advance. And the third parameter, respectively,
The parameter of the quantizer includes a parameter of the third neural network, the first parameter, the second parameter, and the third parameter. 8. The method for producing a compressor according to item 7.
前記k番目の量子化データの各要素は、前記k番目の予測値データの各要素と前記k番目の中間データの各要素との差を、前記k番目の量子化幅データの各要素でそれぞれ量子化したものであり、
前記k番目の情報量は、前記k番目の量子化データの各要素と、前記k番目の量子化データの各要素と、前記累積分布関数の集合の各要素とによって決定される出現確率の和である、ことを特徴とする請求項7又は8に記載の圧縮器作成方法。
Each element of the k-th quantized data is a difference between each element of the k-th predictive value data and each element of the k-th intermediate data by each element of the k-th quantization width data. Quantized,
The k-th information amount is a sum of appearance probabilities determined by each element of the k-th quantized data, each element of the k-th quantized data, and each element of the set of cumulative distribution functions. The method according to claim 7 or 8, wherein:
第1のニューラルネットワークで実現される分析器により圧縮対象データを変換した中間データを作成する分析手段と、
前記中間データを量子化器により量子化した量子化データを作成する量子化手順と、
第2のニューラルネットワークで実現される統合器により前記量子化データを変換した復元データを作成する統合手段と、
前記圧縮対象データと前記復元データとの歪みと、前記量子化データを算術符号化によって保存する場合に必要な情報量とに基づいて、前記第1のニューラルネットワークのパラメータと、前記量子化器のパラメータと、前記第2のニューラルネットワークのパラメータとを最適化する最適化手段と、
を有することを特徴とする圧縮器作成装置。
Analysis means for creating intermediate data obtained by converting data to be compressed by an analyzer realized by a first neural network;
A quantization procedure for creating quantized data obtained by quantizing the intermediate data with a quantizer,
Integrating means for generating restored data obtained by converting the quantized data by an integrator realized by a second neural network;
Parameters of the first neural network, based on a distortion between the data to be compressed and the decompressed data and an amount of information required when the quantized data is stored by arithmetic coding, Optimizing means for optimizing parameters and parameters of the second neural network;
A compressor producing device, comprising:
第1のニューラルネットワークで実現される分析器により圧縮対象データを変換した中間データを作成する分析手順と、
前記中間データを量子化器により量子化した量子化データを作成する量子化手順と、
第2のニューラルネットワークで実現される統合器により前記量子化データを変換した復元データを作成する統合手順と、
前記圧縮対象データと前記復元データとの歪みと、前記量子化データを算術符号化によって保存する場合に必要な情報量とに基づいて、前記第1のニューラルネットワークのパラメータと、前記量子化器のパラメータと、前記第2のニューラルネットワークのパラメータとを最適化する最適化手順と、
をコンピュータに実行させることを特徴とするプログラム。
An analysis procedure for creating intermediate data obtained by converting data to be compressed by an analyzer realized by a first neural network;
A quantization procedure for creating quantized data obtained by quantizing the intermediate data with a quantizer,
An integration procedure for creating restored data obtained by converting the quantized data by an integrator realized by a second neural network;
Parameters of the first neural network, based on a distortion between the data to be compressed and the decompressed data and an amount of information required when the quantized data is stored by arithmetic coding, An optimization procedure for optimizing the parameters and the parameters of the second neural network;
Which causes a computer to execute the program.
JP2018181024A 2018-09-26 2018-09-26 Creation method, computer and program Active JP7233875B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018181024A JP7233875B2 (en) 2018-09-26 2018-09-26 Creation method, computer and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018181024A JP7233875B2 (en) 2018-09-26 2018-09-26 Creation method, computer and program

Publications (2)

Publication Number Publication Date
JP2020053820A true JP2020053820A (en) 2020-04-02
JP7233875B2 JP7233875B2 (en) 2023-03-07

Family

ID=69997781

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018181024A Active JP7233875B2 (en) 2018-09-26 2018-09-26 Creation method, computer and program

Country Status (1)

Country Link
JP (1) JP7233875B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114037071A (en) * 2021-09-18 2022-02-11 宁波大学 Method for obtaining neural network for image preprocessing to resist JPGE compression distortion
KR20220084130A (en) * 2020-05-12 2022-06-21 텐센트 아메리카 엘엘씨 Feature substitution method and apparatus for end-to-end image compression

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0353782A (en) * 1989-07-21 1991-03-07 Matsushita Electric Ind Co Ltd Picture coder
JPH0879748A (en) * 1994-07-08 1996-03-22 Samsung Electron Co Ltd Quantization step size controller using neuro-network
JP2012104940A (en) * 2010-11-08 2012-05-31 Nippon Telegr & Teleph Corp <Ntt> Moving image encoder, moving image encoding method and program
JP2019140680A (en) * 2018-02-09 2019-08-22 株式会社Preferred Networks Auto encoder device, data processing system, data processing method and program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0353782A (en) * 1989-07-21 1991-03-07 Matsushita Electric Ind Co Ltd Picture coder
JPH0879748A (en) * 1994-07-08 1996-03-22 Samsung Electron Co Ltd Quantization step size controller using neuro-network
JP2012104940A (en) * 2010-11-08 2012-05-31 Nippon Telegr & Teleph Corp <Ntt> Moving image encoder, moving image encoding method and program
JP2019140680A (en) * 2018-02-09 2019-08-22 株式会社Preferred Networks Auto encoder device, data processing system, data processing method and program

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220084130A (en) * 2020-05-12 2022-06-21 텐센트 아메리카 엘엘씨 Feature substitution method and apparatus for end-to-end image compression
JP2022553250A (en) * 2020-05-12 2022-12-22 テンセント・アメリカ・エルエルシー Method, apparatus and computer program for feature replacement for end-to-end image compression
US11790566B2 (en) 2020-05-12 2023-10-17 Tencent America LLC Method and apparatus for feature substitution for end-to-end image compression
KR102632258B1 (en) * 2020-05-12 2024-01-31 텐센트 아메리카 엘엘씨 Feature permutation method and device for end-to-end image compression
JP7447253B2 (en) 2020-05-12 2024-03-11 テンセント・アメリカ・エルエルシー Method, apparatus and computer program for feature replacement for end-to-end image compression
CN114037071A (en) * 2021-09-18 2022-02-11 宁波大学 Method for obtaining neural network for image preprocessing to resist JPGE compression distortion
CN114037071B (en) * 2021-09-18 2023-08-08 宁波大学 Method for acquiring neural network for image preprocessing to resist JPGE compression distortion

Also Published As

Publication number Publication date
JP7233875B2 (en) 2023-03-07

Similar Documents

Publication Publication Date Title
US11902369B2 (en) Autoencoder, data processing system, data processing method and non-transitory computer readable medium
US11205121B2 (en) Efficient encoding and decoding sequences using variational autoencoders
TWI428837B (en) Adaptive coding decoding of wide-range coefficients
US7245241B2 (en) Image coding with scalable context quantization
US10382789B2 (en) Systems and methods for digital media compression and recompression
JP2014525183A (en) Method and apparatus for image compression storing encoding parameters in a 2D matrix
US11783511B2 (en) Channel-wise autoregressive entropy models for image compression
JP2017085603A (en) Region-based image compression
Liu et al. Exploring autoencoder-based error-bounded compression for scientific data
US20070019876A1 (en) Lossless image compression with tree coding of magnitude levels
US20180061428A1 (en) Variable length coding of indices and bit scheduling in a pyramid vector quantizer
US20160156940A1 (en) Common copy compression
WO2006083801A2 (en) Optimized lossless data compression methods
Mahmud An improved data compression method for general data
JP7233875B2 (en) Creation method, computer and program
KR20090005027A (en) Restrained vector quantization
US20220392117A1 (en) Data compression and decompression system and method thereof
WO2021145105A1 (en) Data compression device and data compression method
Gray et al. Image compression and tree-structured vector quantization
WO2022130477A1 (en) Encoding device, decoding device, encoding method, decoding method, and program
US7747093B2 (en) Method and apparatus for predicting the size of a compressed signal
Thanki et al. Classification in Data Compression
CN109698704B (en) Comparative gene sequencing data decompression method, system and computer readable medium
Matos et al. Lossy-to-lossless compression of biomedical images based on image decomposition
JP2022127884A (en) Computation apparatus and compression method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210922

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220802

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230119

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230207

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230222

R150 Certificate of patent or registration of utility model

Ref document number: 7233875

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150