JP4012557B2 - Time-series data compression method, recording medium recording a time-series data compression program, and time-series data compression apparatus - Google Patents

Time-series data compression method, recording medium recording a time-series data compression program, and time-series data compression apparatus Download PDF

Info

Publication number
JP4012557B2
JP4012557B2 JP2006069863A JP2006069863A JP4012557B2 JP 4012557 B2 JP4012557 B2 JP 4012557B2 JP 2006069863 A JP2006069863 A JP 2006069863A JP 2006069863 A JP2006069863 A JP 2006069863A JP 4012557 B2 JP4012557 B2 JP 4012557B2
Authority
JP
Japan
Prior art keywords
data
series data
time
dimensional time
value
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.)
Expired - Fee Related
Application number
JP2006069863A
Other languages
Japanese (ja)
Other versions
JP2006203937A (en
Inventor
義幸 望月
俊弥 中
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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2006069863A priority Critical patent/JP4012557B2/en
Publication of JP2006203937A publication Critical patent/JP2006203937A/en
Application granted granted Critical
Publication of JP4012557B2 publication Critical patent/JP4012557B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は、時系列データ圧縮方法,時系列データ圧縮プログラム記録媒体,および時系列データ圧縮装置に関するものであり、これらは信号処理技術の分野に属するものであるが、剛体多関節物体の動きやメッシュ状の面の変形、弾性物体の変形などを記述した時系列データにも適用できるものである。   The present invention relates to a time-series data compression method, a time-series data compression program recording medium, and a time-series data compression apparatus, which belong to the field of signal processing technology. The present invention can also be applied to time series data describing deformation of a mesh-like surface, deformation of an elastic object, and the like.

近年のインターネットの発展には目覚ましいものがある。インターネットではHTML(Hyper Text Makeup Language)により2次元の画像や音声信号を扱うことが可能であることから、インターネットを画像情報や音声情報等の各種マルチメディア情報の伝達媒体として利用することが可能となっている。
しかしながら、このHTMLは2次元の画像を扱うことは可能であるが、3次元のCG画像を扱うことができず、3次元画像の処理を可能にする言語としてVRML(Virtual Reality Modeling Language)が提案されるに至っている。
There has been a remarkable development in the Internet in recent years. Since the Internet can handle two-dimensional images and audio signals using HTML (Hyper Text Makeup Language), the Internet can be used as a transmission medium for various multimedia information such as image information and audio information. It has become.
However, although this HTML can handle a two-dimensional image, it cannot handle a three-dimensional CG image, and VRML (Virtual Reality Modeling Language) is proposed as a language that enables processing of a three-dimensional image. Has been done.

ただ、VRMLでは人間の動きを示す3次元CG画像を表現するのは難しく、これを実現しようとすれば人間を剛体多関節物体とみなし、各関節毎にその位置等を時系列データとして記述すればよいが、この場合、発生するデータの量が膨大になる。
このデータ量の問題を回避するためには、関節位置等の多次元の時系列データを1次元の時系列データに分解し、それぞれの1次元時系列データ毎にその圧縮を行えばよい。
However, in VRML, it is difficult to represent a three-dimensional CG image showing human movements. To achieve this, humans are regarded as rigid articulated objects, and their positions are described as time series data for each joint. In this case, the amount of data generated is enormous.
In order to avoid this problem of data amount, multi-dimensional time series data such as joint positions may be decomposed into one-dimensional time series data and compressed for each one-dimensional time series data.

このような1次元時系列データの圧縮方法として、一般的に適用される方法は、音響工学などで信号処理を行う際に用いられている,離散フーリエ変換や離散コサイン変換などの直交変換を用いて情報を圧縮する方法である。   As a compression method for such one-dimensional time-series data, a generally applied method is an orthogonal transform such as discrete Fourier transform or discrete cosine transform, which is used when performing signal processing in acoustic engineering or the like. This is a method for compressing information.

この直交変換に関する参考文献としては、非特許文献1などがある。
また、剛体多関節物体の関節角の時系列データに関する参考文献としては、非特許文献2がある。
日本音響学会編,中田和男著,「音声」,コロナ社,1977年 Unuma,M, et al., "Fourier Principles for Emotion-based Human Figure Animation", SIGGRAPH95 Proceedings, pp91-95, 1995.
Non-patent document 1 is a reference document related to this orthogonal transform.
Non-patent document 2 is a reference document related to time-series data of joint angles of rigid and articulated objects.
The Acoustical Society of Japan, Kazuo Nakata, “Speech”, Corona, 1977 Unuma, M, et al., "Fourier Principles for Emotion-based Human Figure Animation", SIGGRAPH95 Proceedings, pp91-95, 1995.

ところで、この直交変換を用いて情報を圧縮する方法は、まず、与えられた1次元時系列データを、全ての時刻におけるデータを用いて、離散フーリエ級数展開表現や離散コサイン級数展開表現に変換する。次に、変換された級数展開表現の高周波成分をカットすることで、情報量を圧縮する、というものである。   By the way, in the method of compressing information using this orthogonal transform, first, given one-dimensional time-series data is converted into a discrete Fourier series expansion expression or a discrete cosine series expansion expression using data at all times. . Next, the amount of information is compressed by cutting high-frequency components of the converted series expansion expression.

そして、このような直交変換を用いて圧縮された情報に対しては、逆フーリエ変換や逆コサイン変換を適用することにより、情報の伸長を行なうことができる。そして、その際、伸長されたデータとしては、元のデータと同じ個数のデータを生成するのみならず、元のデータとは個数が異なる,任意個のデータを生成することも可能であるが、基底が三角関数のため、その性質が伸長されたデータに反映されてしまう。   Information that has been compressed using such orthogonal transform can be expanded by applying inverse Fourier transform or inverse cosine transform. At that time, as the decompressed data, not only the same number of data as the original data can be generated, but also any number of data different from the original data can be generated. Since the basis is a trigonometric function, its properties are reflected in the expanded data.

本発明は、上記のような従来のものの問題点を解決するためになされたもので、1次元時系列データの性質に合わせた圧縮を行なうことができ、伸長されたデータの個数を元のデータの個数と異ならせたとしても、圧縮,伸長の処理の影響が伸長後のデータに及んでしまうことが少なく、また、データの統計的な性質を利用して圧縮を行うのではなく、圧縮の際に指定する,元のデータとの誤差の範囲内に収まるようにデータを圧縮する圧縮方法であるため、従来の圧縮方法を補完する,新たな圧縮方法を提供することができ、圧縮,伸長方法の選択の幅を広げることを可能とする時系列データ圧縮方法,時系列データ圧縮プログラム記録媒体,および時系列データ圧縮装置を得ることを目的としてなされたものである。   The present invention has been made in order to solve the above-described problems of the prior art, and can perform compression according to the properties of one-dimensional time-series data, and the number of decompressed data can be reduced to the original data. Even if the number is different from the number of data, the compression and decompression process hardly affects the decompressed data, and compression is not performed using the statistical properties of the data. Since this is a compression method that compresses data so that it falls within the error range specified by the original data, a new compression method that complements the conventional compression method can be provided. The purpose of the present invention is to obtain a time-series data compression method, a time-series data compression program recording medium, and a time-series data compression apparatus that can expand the range of method selection.

この発明の請求項1記載の時系列データ圧縮方法は、CG画像処理分野における1次元時系列データの圧縮方法であって、前記1次元時系列データと近似精度の入力を行う第1の工程と、前記1次元時系列データを近似する補間関数の節点候補を算出する第2の工程と、前記節点候補に基づき前記補間関数により発生した1次元時系列データと元の1次元時系列データとの誤差を算出し、誤差の最大値と誤差の平均値と誤差の分散との重み付け加算で算出される第1の目的関数の値を算出する第3の工程と、前記第1の目的関数の値が最小となるように節点候補の変更を繰り返し行い、準最適節点候補を決定する第4の工程と、前記第4の工程で算出した目的関数の最小値が前記近似精度に基づいて定めた閾値を越えると判断された場合に、節点候補数を変更し、前記第2の工程に戻る第5の工程と、前記第4の工程で算出した目的関数の最小値が前記近似精度に基づいて定めた閾値を超えないと判断された場合に、当該準最適節点候補のデータとこれに対応する時刻のデータとを圧縮された情報として出力する第6の工程とを含むようにしたものである。   The time-series data compression method according to claim 1 of the present invention is a compression method of one-dimensional time-series data in the field of CG image processing, and includes a first step of inputting approximation accuracy with the one-dimensional time-series data. A second step of calculating a node candidate of an interpolation function approximating the one-dimensional time series data, and the one-dimensional time series data generated by the interpolation function based on the node candidate and the original one-dimensional time series data A third step of calculating an error, calculating a value of a first objective function calculated by weighted addition of a maximum value of the error, an average value of the error, and a variance of the error; and a value of the first objective function 4th step of repeatedly changing the node candidates so as to minimize the value, and determining a suboptimal node candidate, and a threshold value determined by the minimum value of the objective function calculated in the fourth step based on the approximation accuracy If it is determined that The fifth step of changing the number of point candidates and returning to the second step, and the minimum value of the objective function calculated in the fourth step is determined not to exceed the threshold value determined based on the approximation accuracy In this case, a sixth step of outputting the suboptimal node candidate data and the corresponding time data as compressed information is included.

この発明の請求項2記載の時系列データ圧縮プログラム記録媒体は、CG画像処理分野における1次元時系列データ圧縮プログラムを記録した記録媒体であって、前記1次元時系列データと近似精度の入力を行う第1の工程と、前記1次元時系列データを近似する補間関数の節点候補を算出する第2の工程と、前記節点候補に基づき前記補間関数により発生した1次元時系列データと元の1次元時系列データとの誤差を算出し、誤差の最大値と誤差の平均値と誤差の分散との重み付け加算で算出される第1の目的関数の値を算出する第3の工程と、前記第1の目的関数の値が最小となるように節点候補の変更を繰り返し行い、準最適節点候補を決定する第4の工程と、前記第4の工程で算出した目的関数の最小値が前記近似精度に基づいて定めた閾値を越えると判断された場合に、節点候補数を変更し、前記第2の工程に戻る第5の工程と、前記第4の工程で算出した目的関数の最小値が前記近似精度に基づいて定めた閾値を超えないと判断された場合に、当該準最適節点候補のデータとこれに対応する時刻のデータとを圧縮された情報として出力する第6の工程とを含む各工程をコンピューターに実行させるための時系列データ圧縮プログラムを記録するようにしたものである。   A time-series data compression program recording medium according to claim 2 of the present invention is a recording medium on which a one-dimensional time-series data compression program in the CG image processing field is recorded, and inputs the one-dimensional time-series data and approximate accuracy. A first step of performing, a second step of calculating a node candidate of an interpolation function approximating the one-dimensional time series data, and the one-dimensional time series data generated by the interpolation function based on the node candidate and the original one A third step of calculating an error from the dimension time series data and calculating a value of a first objective function calculated by weighted addition of the maximum value of the error, the average value of the error, and the variance of the error; A fourth step of repeatedly changing the node candidate so that the value of the objective function of 1 is minimized, and determining a suboptimal node candidate; and the minimum value of the objective function calculated in the fourth step is the approximation accuracy Based on When it is determined that the threshold value is exceeded, the fifth step of changing the number of node candidates and returning to the second step, and the minimum value of the objective function calculated in the fourth step are based on the approximation accuracy. Each step including a sixth step of outputting the suboptimal node candidate data and corresponding time data as compressed information when it is determined that the predetermined threshold value is not exceeded. A time-series data compression program for execution is recorded.

この発明の請求項3記載の時系列データ圧縮装置は、CG画像処理分野における1次元時系列データの圧縮装置であって、前記1次元時系列データと近似精度の入力を行う入力手段と、前記1次元時系列データを近似する補間関数の節点候補を算出する節点候補算出手段と、前記節点候補に基づき前記補間関数により発生した1次元時系列データと元の1次元時系列データとの誤差を算出し、誤差の最大値と誤差の平均値と誤差の分散との重み付け加算で算出される第1の目的関数の値を算出する判定手段と、前記第1の目的関数の値が最小となるように節点候補の変更を繰り返し行い、準最適節点候補を決定する節点位置最適化手段と、前記判定手段により、前記第1の目的関数の最小値が前記近似精度に基づいて定めた閾値を越えると判断された場合に、節点候補数を変更し、該節点数が変更された1次元時系列データを前記前記節点候補算出手段に入力する節点数変更手段と、前記判定手段により、前記目的関数の最小値が前記近似精度に基づいて定めた閾値を超えないと判断された場合に、当該準最適節点候補のデータとこれに対応する時刻のデータとを圧縮された情報として出力する出力手段とを備えるようにしたものである。   The time-series data compression device according to claim 3 of the present invention is a compression device for one-dimensional time-series data in the field of CG image processing, and an input means for inputting the one-dimensional time-series data and approximate accuracy; A node candidate calculation means for calculating a node candidate of an interpolation function approximating the one-dimensional time series data; and an error between the one-dimensional time series data generated by the interpolation function based on the node candidate and the original one-dimensional time series data. A determining means for calculating and calculating a value of the first objective function calculated by weighted addition of the maximum value of error, the average value of error, and the variance of error; and the value of the first objective function is minimized. In this way, the node position optimizing unit that repeatedly changes the node candidates and determines the suboptimal node candidate and the determination unit cause the minimum value of the first objective function to exceed the threshold value determined based on the approximation accuracy. And The number of node candidates is changed, and the node number changing means for inputting the one-dimensional time-series data with the changed number of nodes to the node candidate calculating means; When it is determined that the value does not exceed a threshold value determined based on the approximation accuracy, output means for outputting the suboptimal node candidate data and the corresponding time data as compressed information It is what I did.

この発明の請求項1記載の時系列データ圧縮方法によれば、CG画像処理分野における1次元時系列データの圧縮方法であって、前記1次元時系列データと近似精度の入力を行う第1の工程と、前記1次元時系列データを近似する補間関数の節点候補を算出する第2の工程と、前記節点候補に基づき前記補間関数により発生した1次元時系列データと元の1次元時系列データとの誤差を算出し、誤差の最大値と誤差の平均値と誤差の分散との重み付け加算で算出される第1の目的関数の値を算出する第3の工程と、前記第1の目的関数の値が最小となるように節点候補の変更を繰り返し行い、準最適節点候補を決定する第4の工程と、前記第4の工程で算出した目的関数の最小値が前記近似精度に基づいて定めた閾値を越えると判断された場合に、節点候補数を変更し、前記第2の工程に戻る第5の工程と、前記第4の工程で算出した目的関数の最小値が前記近似精度に基づいて定めた閾値を超えないと判断された場合に、当該準最適節点候補のデータとこれに対応する時刻のデータとを圧縮された情報として出力する第6の工程とを含むようにしたので、与えられた1次元時系列データの性質に合わせた圧縮が行なえ、伸長後の誤差を前もって把握することができる、時系列データ圧縮方法が得られる効果がある。   According to the time-series data compression method of the first aspect of the present invention, there is provided a first-dimensional time-series data compression method in the CG image processing field, wherein the first-dimensional time-series data and the input of approximate accuracy are performed. A second step of calculating a node candidate of an interpolation function that approximates the one-dimensional time-series data, one-dimensional time-series data generated by the interpolation function based on the node candidate, and the original one-dimensional time-series data A third step of calculating a first objective function value calculated by weighted addition of the maximum error value, the average error value, and the variance of the error, and the first objective function The node candidate is repeatedly changed so that the value of the node is minimized, the fourth step of determining the suboptimal node candidate, and the minimum value of the objective function calculated in the fourth step is determined based on the approximation accuracy If it is determined that the threshold is exceeded Further, the fifth step of changing the number of node candidates and returning to the second step, and determining that the minimum value of the objective function calculated in the fourth step does not exceed the threshold value determined based on the approximation accuracy In this case, since the sixth step of outputting the suboptimal node candidate data and the corresponding time data as compressed information is included, the given one-dimensional time-series data There is an effect of obtaining a time-series data compression method that can perform compression according to the property and can grasp the error after decompression in advance.

この発明の請求項2記載の時系列データ圧縮プログラム記録媒体によれば、CG画像処理分野における1次元時系列データ圧縮プログラムを記録した記録媒体であって、前記1次元時系列データと近似精度の入力を行う第1の工程と、前記1次元時系列データを近似する補間関数の節点候補を算出する第2の工程と、前記節点候補に基づき前記補間関数により発生した1次元時系列データと元の1次元時系列データとの誤差を算出し、誤差の最大値と誤差の平均値と誤差の分散との重み付け加算で算出される第1の目的関数の値を算出する第3の工程と、前記第1の目的関数の値が最小となるように節点候補の変更を繰り返し行い、準最適節点候補を決定する第4の工程と、前記第4の工程で算出した目的関数の最小値が前記近似精度に基づいて定めた閾値を越えると判断された場合に、節点候補数を変更し、前記第2の工程に戻る第5の工程と、前記第4の工程で算出した目的関数の最小値が前記近似精度に基づいて定めた閾値を超えないと判断された場合に、当該準最適節点候補のデータとこれに対応する時刻のデータとを圧縮された情報として出力する第6の工程とを含む各工程をコンピューターに実行させるための時系列データ圧縮プログラムを記録するようにしたので、与えられた1次元時系列データの性質に合わせた圧縮が行なえ、伸長後の誤差を前もって把握することができる、時系列データ圧縮プログラム記録媒体が得られる効果がある。   According to the time-series data compression program recording medium of claim 2 of the present invention, there is provided a recording medium on which a one-dimensional time-series data compression program in the CG image processing field is recorded. A first step of inputting, a second step of calculating a node candidate of an interpolation function approximating the one-dimensional time series data, a one-dimensional time series data generated by the interpolation function based on the node candidate and the original A third step of calculating an error from the one-dimensional time series data of the first objective function, and calculating a value of a first objective function calculated by weighted addition of the maximum value of the error, the average value of the error, and the variance of the error; The fourth step of repeatedly changing the node candidates so as to minimize the value of the first objective function to determine the suboptimal node candidate, and the minimum value of the objective function calculated in the fourth step is Based on approximation accuracy And when the number of node candidates is determined to be exceeded, the fifth step of returning to the second step and the minimum value of the objective function calculated in the fourth step are the approximation accuracy. Each step including a sixth step of outputting, as compressed information, the data of the sub-optimal node candidate and the data of the time corresponding thereto when it is determined that the threshold determined based on The time series data compression program to be executed by the computer is recorded so that the compression can be performed according to the properties of the given one-dimensional time series data and the error after decompression can be grasped in advance. There is an effect that a data compression program recording medium can be obtained.

この発明の請求項3記載の時系列データ圧縮装置によれば、CG画像処理分野における1次元時系列データの圧縮装置であって、前記1次元時系列データと近似精度の入力を行う入力手段と、前記1次元時系列データを近似する補間関数の節点候補を算出する節点候補算出手段と、前記節点候補に基づき前記補間関数により発生した1次元時系列データと元の1次元時系列データとの誤差を算出し、誤差の最大値と誤差の平均値と誤差の分散との重み付け加算で算出される第1の目的関数の値を算出する判定手段と、前記第1の目的関数の値が最小となるように節点候補の変更を繰り返し行い、準最適節点候補を決定する節点位置最適化手段と、前記判定手段により、前記第1の目的関数の最小値が前記近似精度に基づいて定めた閾値を越えると判断された場合に、節点候補数を変更し、該節点数が変更された1次元時系列データを前記前記節点候補算出手段に入力する節点数変更手段と、前記判定手段により、前記目的関数の最小値が前記近似精度に基づいて定めた閾値を超えないと判断された場合に、当該準最適節点候補のデータとこれに対応する時刻のデータとを圧縮された情報として出力する出力手段とを備えるようにしたので、与えられた1次元時系列データの性質に合わせた圧縮が行なえ、伸長後の誤差を前もって把握することができる、時系列データ圧縮装置が得られる効果がある。   According to the time-series data compressing apparatus of the third aspect of the present invention, there is provided a one-dimensional time-series data compressing apparatus in the field of CG image processing, and an input means for inputting approximation accuracy with the one-dimensional time-series data. A node candidate calculation means for calculating a node candidate of an interpolation function approximating the one-dimensional time series data, and the one-dimensional time series data generated by the interpolation function based on the node candidate and the original one-dimensional time series data Determining means for calculating an error, calculating a value of a first objective function calculated by weighted addition of a maximum value of error, an average value of error, and variance of error; and a value of the first objective function is minimum The node position optimizing unit that repeatedly changes the node candidates so that the sub-optimal node candidate is determined, and the threshold value that the minimum value of the first objective function is determined based on the approximation accuracy by the determination unit Beyond The node number changing means for changing the number of node candidates and inputting the one-dimensional time-series data with the changed node number to the node candidate calculating means, and the determining means Output means for outputting the suboptimal nodal candidate data and the corresponding time data as compressed information when it is determined that the minimum value of the sub-optimal value does not exceed the threshold value determined based on the approximation accuracy; Thus, there is an effect that a time-series data compression apparatus can be obtained that can perform compression in accordance with the properties of given one-dimensional time-series data and can grasp errors after expansion in advance.

実施の形態1.
以下、本発明の実施の形態1の時系列データ圧縮方法について、図面を参照しながら説明する。
図1は本発明の実施の形態1における時系列データ圧縮方法の処理の流れを示すものである。
Embodiment 1 FIG.
Hereinafter, the time-series data compression method according to the first embodiment of the present invention will be described with reference to the drawings.
FIG. 1 shows the flow of processing of the time-series data compression method according to Embodiment 1 of the present invention.

図において、P4aは1次元時系列データとその近似精度値の入力を行う入力処理、P1aはこの1次元時系列データを近似する補間関数が通過する節点の候補を算出する節点候補算出処理、P1bはこの節点候補算出処理P1aにより算出された節点候補の位置を最適化する節点位置最適化処理、P1cはこの節点位置最適化処理P1bにより得られた節点を通る補間関数と元の1次元時系列データとの誤差が入力処理P4aで入力した近似精度値に応じた値を満足しているか否かを判定する判定処理、P1dはこの判定処理P1cで近似精度を満足していないと判定された場合に、節点数を変化させる節点数変更処理、P4bは判定処理P1cにより、節点を通る補間関数と元の1次元時系列データとの誤差が入力処理P4aで入力した近似精度値に応じた値を満足している場合に圧縮情報としてこの節点およびそのインデックスを出力する出力処理である。   In the figure, P4a is an input process for inputting one-dimensional time series data and its approximate accuracy value, P1a is a node candidate calculation process for calculating node candidates through which an interpolation function approximating the one-dimensional time series data passes, P1b Is a node position optimization process for optimizing the position of the node candidate calculated by this node candidate calculation process P1a, and P1c is an interpolation function passing through the node obtained by this node position optimization process P1b and the original one-dimensional time series. A determination process for determining whether an error from the data satisfies a value corresponding to the approximate accuracy value input in the input process P4a, and P1d is determined in this determination process P1c that the approximate accuracy is not satisfied In addition, the node number changing process for changing the number of nodes, P4b is input by the input process P4a by the determination process P1c, and the error between the interpolation function passing through the nodes and the original one-dimensional time-series data is input. Similar is the output process of outputting the node and the index as compressed information if they satisfy the values corresponding to the accuracy value.

本実施の形態1の時系列データの圧縮方法は、補間関数を使用して、与えられた1次元時系列データのデータ数より少数の節点数を発生することでデータの圧縮を実現しようとするものである。即ち、元の1次元時系列データに近似したデータを再現するのに必要な,補間関数の節点を算出し、その節点以外のデータを省いて伝送することにより、データの圧縮を行うものである。そしてその伸長は、伝送されてきたデータを、圧縮の際に用いた補間関数と同じ補間関数を用いて、圧縮時に省略したデータと同じデータを発生することにより、元の時系列データに近似した時系列データを生成することにより行うものである。   The time-series data compression method according to the first embodiment attempts to realize data compression by generating a smaller number of nodes than the number of given one-dimensional time-series data using an interpolation function. Is. That is, the data is compressed by calculating the nodes of the interpolation function necessary for reproducing the data approximate to the original one-dimensional time series data, and transmitting the data except for the nodes. . The decompression approximates the original time-series data by generating the same data as the data that was omitted during compression, using the same interpolation function as that used for compression. This is done by generating time series data.

より詳しくは、図1に示すように、入力処理P4aにおいて、圧縮すべき1次元時系列データとその近似精度値を入力し、節点候補算出処理P1aにおいて、1次元時系列データを構成する全ての1次元データのなかから節点候補を算出し、所定の補間関数がこの節点データを通ることにより元の1次元時系列データを近似した1次元時系列データを生成できるような節点候補を算出し、節点位置最適化処理P1bにおいて、この節点候補を移動して節点位置の最適化を行い、判定処理P1cにおいて、この最適化を行った節点候補を通る所定の補間曲線と元の1次元時系列データとの誤差に基づく値が入力処理P4aにおいて入力した近似精度値の範囲内か否かを判定し、近似精度の範囲内であれば、直ちに出力処理P4bにより節点位置の最適化を行った節点候補とそのインデックスを圧縮した1次元時系列データとして出力する。   More specifically, as shown in FIG. 1, in the input process P4a, the one-dimensional time series data to be compressed and its approximate accuracy value are input, and in the node candidate calculation process P1a, all of the constituents of the one-dimensional time series data are input. A node candidate is calculated from the one-dimensional data, and a node candidate that can generate one-dimensional time-series data that approximates the original one-dimensional time-series data by passing a predetermined interpolation function through the node data is calculated, In the node position optimization process P1b, the node candidate is moved to optimize the node position, and in the determination process P1c, a predetermined interpolation curve passing through the optimized node candidate and the original one-dimensional time-series data. It is determined whether or not the value based on the error is within the range of the approximate accuracy value input in the input process P4a. If the value is within the range of the approximate accuracy, the node position is immediately output by the output process P4b. Node candidates were optimized and outputs its index as the time series data 1 dimensional compressed.

また、判定処理P1cにおいて、近似精度の範囲内に入らないことが判明すれば、節点数変更処理P1dにおいて、節点数を適宜増加あるいは減少させて節点数の変更を行う。
この節点数変更処理P1dにより節点の変更を行った後に、節点候補算出手段P1aに戻って再度節点候補の算出を行い、以下同様の処理を繰り返す。
If it is determined in the determination process P1c that it does not fall within the approximate accuracy range, the number of nodes is changed by appropriately increasing or decreasing the number of nodes in the node number changing process P1d.
After changing the node by the node number changing process P1d, the process returns to the node candidate calculating means P1a to calculate the node candidate again, and thereafter the same process is repeated.

このように、図1に示されたデータ圧縮方法は、補間関数を使用して、与えられた1次元時系列データのデータ数より少数の節点数を発生することでデータの圧縮を実現しようとするものであるため、補間関数として離散フーリエ級数展開や離散コサイン級数展開を用いれば、それらの係数を求める位置を確実に元の時系列データより減らすことができる。また、節点はその位置のみならず個数についても最適化を行っているので、伸長したデータと元のデータとの誤差が少なく、しかも圧縮率のよい圧縮が可能になっている。また、圧縮の際に、伸長の際に発生する,誤差の範囲を大きく指定すれば、その分、節点数をより減少することが可能となり、より圧縮率のよいデータ圧縮を実現することができる。   As described above, the data compression method shown in FIG. 1 attempts to realize data compression by generating a smaller number of nodes than the number of given one-dimensional time-series data using an interpolation function. Therefore, if a discrete Fourier series expansion or a discrete cosine series expansion is used as an interpolation function, the positions for obtaining these coefficients can be surely reduced from the original time series data. Further, since not only the positions of nodes but also the number of nodes are optimized, there is little error between the decompressed data and the original data, and compression with a good compression rate is possible. Also, if a large range of errors that occur during decompression is specified during compression, the number of nodes can be reduced accordingly, and data compression with a better compression rate can be realized. .

但し、これらはデータを伸長した際の再現精度に依存して決まる。また、データの圧縮率は、指定した誤差の精度の範囲内で元の時系列データをいかに近似できるかに依存するため、一般にデータの圧縮率は一定とはならない。
その上で更に、従来技術のように高周波成分についてもそのデータをカットするようにすれば、従来技術よりも更に圧縮率を高めることが可能となる。つまり、従来の技術と併用することにより、従来技術における圧縮率をより高めるための補完方法としても使用できる。
However, these are determined depending on the reproduction accuracy when the data is expanded. In addition, since the data compression rate depends on how the original time-series data can be approximated within a specified error accuracy range, the data compression rate is generally not constant.
Furthermore, if the data is also cut for high frequency components as in the prior art, the compression rate can be further increased as compared with the prior art. That is, when used together with the conventional technique, it can also be used as a complementing method for further increasing the compression rate in the conventional technique.

もちろん、高周波成分をカットせず、本実施の形態1の圧縮方法だけでデータを圧縮した場合でも、選択した節点数が、従来技術の圧縮方法における高周波成分のカット後に残った周波数成分の個数よりも少なければ、圧縮率は本発明の方が高いことになる。しかし、それは与えられた1次元時系列データの性質に依存して決まるので、一概に、どちらの方法が圧縮率が高いということはできない。
ただ、本発明により、データ圧縮方法の選択の幅は広げられたことになる。
Of course, even when data is compressed only by the compression method of the first embodiment without cutting high frequency components, the number of selected nodes is larger than the number of frequency components remaining after cutting high frequency components in the conventional compression method. If it is less, the compression rate of the present invention is higher. However, since it depends on the nature of the given one-dimensional time-series data, it is generally impossible to determine which method has a high compression rate.
However, the scope of selection of the data compression method has been expanded by the present invention.

また、補間関数として多項式形式のもの、例えばスプライン関数などを用いた場合、伸長した場合のデータは、多項式的な変化をするデータとなる。これは、周期性のない1次元時系列データを伸長する場合には、その精度を保持する上で有効に働く。
従って、伸長するデータの個数を元のデータの個数と異ならせて伸長を行ってもその精度を保持できるので、伸長の際に生成するデータを少なくすれば、元のデータを高速に再生でき、高速再生を行ってもそのデータの精度を保持できる。
また、逆に伸長の際に生成するデータを多くすれば、元のデータをスローで再生でき、スローで再生を行ってもそのデータの精度を保持できる。
In addition, when an interpolation function having a polynomial format, such as a spline function, is used, the data when decompressed is data that changes in a polynomial fashion. This works effectively in maintaining the accuracy when decompressing one-dimensional time-series data having no periodicity.
Therefore, even if the number of data to be decompressed is different from the number of the original data, the accuracy can be maintained, so if the amount of data generated at the time of decompression is reduced, the original data can be reproduced at high speed, Even if high-speed playback is performed, the accuracy of the data can be maintained.
Conversely, if the amount of data generated at the time of decompression is increased, the original data can be reproduced in slow speed, and the accuracy of the data can be maintained even if the data is reproduced in slow speed.

このように、本実施の形態1は、1次元時系列データの性質に合った圧縮を行なう新たな圧縮方法を提供することで、従来の圧縮方法を補完するばかりでなく、圧縮方法の選択の幅を広げることが可能となるものである。   As described above, the first embodiment not only complements the conventional compression method by providing a new compression method for performing compression suitable for the properties of the one-dimensional time-series data, but also allows selection of the compression method. The width can be increased.

以下に、本発明の実施の形態1の処理をより詳細に述べるが、その前に、1次元時系列データについて図12を参照しながら説明する。図12は1次元時系列データをグラフ化したもので、図中の黒丸は1次元のデータを表わす。このように、1次元のデータとこれに対応する時刻とがペアリングされたデータのことを1次元時系列データという。そして、図12のようにデータがサンプリングされた時刻をt0,...,tnと表したとき、ti−ti−1の値が任意のi=1,...,nに対して一定の場合を時間等間隔といい、そうでない場合を時間不等間隔という。   Hereinafter, the processing of Embodiment 1 of the present invention will be described in more detail. Before that, the one-dimensional time series data will be described with reference to FIG. FIG. 12 is a graph of one-dimensional time series data, and the black circles in the figure represent one-dimensional data. In this way, data in which one-dimensional data is paired with time corresponding to the one-dimensional data is referred to as one-dimensional time series data. Then, as shown in FIG. . . , Tn, the value of ti-ti-1 is arbitrary i = 1,. . . , N is called a time equal interval, and the other case is called a time unequal interval.

図2は本発明の実施の形態1における時系列データ圧縮方法の処理の流れを示すものである。図2に示したように、全体の処理は第1段階S1から第9段階S9までの9つの段階で実行される。第1段階S1は処理P1から処理P3までで構成され、第2段階S2は処理P4で構成され、第3段階S3は処理P5と処理P6とで構成され、第4段階S4は処理P7で構成され、第5段階S5は処理P8で構成され、第6段階S6は処理P9と処理P10とで構成され、第7段階S7は処理P11で構成され、第8段階S8は処理P4から処理P13までで構成され、第9段階S9は処理P14で構成されている。   FIG. 2 shows the flow of processing of the time-series data compression method according to Embodiment 1 of the present invention. As shown in FIG. 2, the entire process is executed in nine stages from the first stage S1 to the ninth stage S9. The first stage S1 is composed of processes P1 to P3, the second stage S2 is composed of processes P4, the third stage S3 is composed of processes P5 and P6, and the fourth stage S4 is composed of processes P7. The fifth stage S5 is composed of process P8, the sixth stage S6 is composed of process P9 and process P10, the seventh stage S7 is composed of process P11, and the eighth stage S8 is from process P4 to process P13. The ninth stage S9 is composed of process P14.

図3は、図2に詳細な処理が示された,図1のフロー処理を行うコンピュータの構成例を示し、図3(a)において、1は図2の処理に相当する制御プログラムに従って演算処理を行うCPU、2はCPU1が処理を行うデータを記憶するデータメモリ、3は図2の処理に相当する制御プログラムを予め記憶しているメインメモリ、4はこのコンピュータと外部との間でデータの入出力を行う入出力装置、5はこれらCPU1,データメモリ2,メインメモリ3および入出力装置4が相互にデータ等をやりとりするためのバスである。なお、データメモリ2とメインメモリ3とは同一のメモリを使用して構成してもよい。
CPU1は予めメインメモリ3に記憶されている制御プログラムに従って、図2のフローとして示された圧縮処理を実行する。
FIG. 3 shows an example of the configuration of a computer that performs the flow process of FIG. 1 with detailed processing shown in FIG. 2. In FIG. 3A, 1 is an arithmetic process according to a control program corresponding to the process of FIG. 2 is a data memory for storing data to be processed by the CPU 1, 3 is a main memory in which a control program corresponding to the processing in FIG. 2 is stored in advance, and 4 is a data memory between the computer and the outside. An input / output device 5 for performing input / output is a bus for the CPU 1, data memory 2, main memory 3 and input / output device 4 to exchange data and the like. The data memory 2 and the main memory 3 may be configured using the same memory.
The CPU 1 executes a compression process shown as a flow in FIG. 2 according to a control program stored in the main memory 3 in advance.

また、図3(b)はプログラム記録媒体等からプログラムを読み込んで圧縮動作を行うようにしたコンピュータの構成例を示し、図3(b)において、6はバス5につながった外部記憶装置であり、この外部記憶装置の記録媒体には予め図2の処理に相当する制御プログラムが記録されており、外部記憶装置6はその記録媒体より図2の処理に相当する制御プログラムを読み取って、メインメモリ3にロードする。CPU1はこのメインメモリ3にロードされた制御プログラムに従って、図2のフローとして示された圧縮処理を実行する。あるいは、入出力装置4を介して外部から供給される制御プログラムをメインメモリ3にロードしてもよい。   FIG. 3B shows a configuration example of a computer that reads a program from a program recording medium or the like and performs a compression operation. In FIG. 3B, 6 is an external storage device connected to the bus 5. A control program corresponding to the process of FIG. 2 is recorded in advance on the recording medium of the external storage device, and the external storage device 6 reads the control program corresponding to the process of FIG. Load to 3. The CPU 1 executes the compression process shown as the flow in FIG. 2 according to the control program loaded in the main memory 3. Alternatively, a control program supplied from the outside via the input / output device 4 may be loaded into the main memory 3.

次に、以上のように構成された図2の第1段階S1ないし第9段階S9について説明する。
まず、処理P1では、データ圧縮すべき1次元時系列データと、これを近似する補間関数の近似精度値の入力を行なう。処理P2では1次元時系列データに対しその時刻の順にインデックスをつける。この時刻としては1次元時系列データのサンプル時刻や発生時刻や入力時刻等を用いることができる。なお、このインデックスは時刻の代わりに順次増加するデータや順次減少するデータを用いてもよい。処理P3では初期の節点数を算出する。その際に使用する節点数の初期値は、補間関数の種類に応じて決まるため、予め、その初期値を設定しておけばよく、従って、例えば、初期のデータ数に対する比を予め決めておくことでこれを算出することができる。ここでは、使用する節点数の初期値として1次元時系列データ全体の個数の1/aという形で(但し、a>0とする)、初期の節点数を算出するものとする。
Next, the first step S1 to the ninth step S9 of FIG. 2 configured as described above will be described.
First, in process P1, one-dimensional time-series data to be compressed and approximate accuracy values of interpolation functions approximating it are input. In process P2, one-dimensional time-series data is indexed in the order of its time. As this time, a sample time, generation time, input time, or the like of the one-dimensional time series data can be used. Note that this index may use data that increases sequentially or data that decreases sequentially instead of time. In process P3, the initial number of nodes is calculated. Since the initial value of the number of nodes used at that time is determined in accordance with the type of the interpolation function, it is only necessary to set the initial value in advance. Therefore, for example, the ratio to the initial number of data is determined in advance. This can be calculated. Here, the initial number of nodes is calculated in the form of 1 / a of the total number of one-dimensional time-series data as the initial value of the number of nodes to be used (where a> 0).

処理P4ではデータ圧縮すべき1次元時系列データの中から、その始めと終りのデータを必ず含み、かつ残りのデータについてはランダムな間隔でデータを選択し、これらを合計すれば上述の算出した節点数と同数となるように節点候補を決定する。   In the process P4, the data at the beginning and the end of the one-dimensional time-series data to be compressed are always included, and the remaining data is selected at random intervals, and these are summed to calculate the above. Node candidates are determined so that the number is equal to the number of nodes.

この操作を図13を用いて説明する。今、仮に節点の個数をm+1とすると、時刻t0におけるデータが始めのデータで、これを最初の節点候補として選択とする。次に、時刻tnにおけるデータが終りのデータで、これを最後の節点候補として選択する。
次に、1/(n−1)の一様確率で生成される乱数により、残りのm−1個の節点候補を、互いに重複を許さずに選択する。こうして合計m+1個の節点候補が選択された後は、これらを時刻の小さい順にソートし、節点候補のインデックスをI(j),0≦j≦mとして保存しておく。図13の例では白丸で示したデータが節点候補として選択されたものである。
This operation will be described with reference to FIG. If the number of nodes is m + 1, the data at time t0 is the first data, and this is selected as the first node candidate. Next, the data at the time tn is the last data, and this is selected as the last node candidate.
Next, the remaining m-1 node candidates are selected without allowing duplication with each other, using random numbers generated with a uniform probability of 1 / (n-1). After a total of m + 1 node candidates are selected in this way, they are sorted in ascending order of time, and the node candidate indexes are stored as I (j), 0 ≦ j ≦ m. In the example of FIG. 13, data indicated by white circles is selected as a node candidate.

以上はランダム選択の場合であるが、この節点候補を求める処理P4はインデックスに関して近似等間隔で選択してもよい。この場合は、まずインデックスに関して間隔[n/m]を算出し、時刻t0における始めのデータから始めてこの間隔[n/m]だけ隔たった節点候補を合計m個選択し、m+1番目の節点候補として時刻tnにおける終わりのデータを選択することにより終了する。ここで、[x]はガウス記号である。この場合も、前述のようなI(j)を保存しておく。   The above is the case of random selection, but the process P4 for obtaining the node candidate may be selected at approximately equal intervals with respect to the index. In this case, the interval [n / m] is first calculated for the index, and a total of m node candidates separated by this interval [n / m] starting from the first data at the time t0 are selected and used as the (m + 1) th node candidate. The process ends by selecting end data at time tn. Here, [x] is a Gaussian symbol. Also in this case, I (j) as described above is stored.

この処理P4で行う操作は節点候補の位置の初期値を決めるものであり、この種の問題には乱数を用いるのが有効であることが知られているが、本実施の形態1の場合でも、乱数を用いて節点位置を選択した方が近似等間隔で選択した場合よりも実験的に良い値が得られている。   The operation performed in this process P4 determines the initial value of the position of the nodal candidate, and it is known that it is effective to use a random number for this type of problem, but even in the case of the first embodiment, too. A better value is obtained experimentally when the node positions are selected using random numbers than when they are selected at approximately equal intervals.

処理P5ではインデックス番号を独立変数とする補間関数により、各節点候補の間を補間するデータを発生して、元の1次元時系列データを近似する1次元時系列データを得、これと元の1次元時系列データとの誤差を算出する。補間関数は節点を通るものならば何でもよく、例えば、スプライン関数には節点を通る補間関数として使用できる性質がある。ただ、伸長されたデータが元のデータの波形に忠実な波形を再現すべきであれば、元の1次元時系列データを忠実に近似できる補間関数を使用するのが望ましく、逆に高いデータ圧縮率を要求するのであれば、補間関数はさほど近似度を要求されない。その他、離散フーリエ変換を用いた級数展開表現や、離散コサイン変換を用いた級数展開表現なども補間関数として使用できる。ただ、この補間関数は以上に挙げたもののいずれか1つを予め選定しておいて使用する。そして後述する伸長処理の場合に圧縮の際に用いたものと同じ補間関数を使用する。この場合、補間関数はその候補を予め複数用意しておいて、圧縮の際に使用した補間関数の識別子を伸長処理の側に送り、伸長側で圧縮の際と同じ補間関数を用いるようにしてもよい。   In process P5, data for interpolating between each node candidate is generated by an interpolation function having an index number as an independent variable, and one-dimensional time-series data approximating the original one-dimensional time-series data is obtained. An error from the one-dimensional time series data is calculated. Any interpolation function may be used as long as it passes through nodes. For example, a spline function has a property that can be used as an interpolation function passing through nodes. However, if the decompressed data should reproduce a waveform that is faithful to the waveform of the original data, it is desirable to use an interpolation function that can faithfully approximate the original one-dimensional time-series data. If a rate is required, the interpolation function is not required to be very close. In addition, a series expansion expression using a discrete Fourier transform, a series expansion expression using a discrete cosine transform, or the like can also be used as an interpolation function. However, any one of the above-mentioned interpolation functions is selected in advance and used. Then, the same interpolation function as that used at the time of compression is used in the decompression process described later. In this case, the interpolation function prepares a plurality of candidates in advance, sends the identifier of the interpolation function used at the time of compression to the expansion processing side, and uses the same interpolation function as at the time of compression on the expansion side. Also good.

図14は図12の曲線を補間する補間関数をグラフ化したものである。図中の黒丸は補間関数を用いて白丸で表した節点候補を補間して得たデータであり、これらはデータ圧縮の際には棄却されるものである。この黒丸で示したデータは殆どが元のデータと同じ値になっているが、時刻tn−1におけるデータに関しては誤差が発生している。
処理P6では、図14のように、節点候補以外の1次元時系列データと補間関数との誤差を算出する。図14の場合、誤差の算出は絶対値誤差を用いて行っているが、この誤差算出は2乗誤差などを用いて行ってもよい。
処理P7では処理P6で算出した誤差から、第1目的関数の値を算出する。この第1目的関数は、処理P6で算出した誤差の最大値と誤差平均と誤差分散をまず求め、これらを重み付け加算して算出することができる。
FIG. 14 is a graph showing an interpolation function for interpolating the curve of FIG. Black circles in the figure are data obtained by interpolating node candidates represented by white circles using an interpolation function, and these are rejected during data compression. Most of the data indicated by the black circles has the same value as the original data, but an error has occurred with respect to the data at time tn-1.
In the process P6, as shown in FIG. 14, the error between the one-dimensional time series data other than the node candidates and the interpolation function is calculated. In the case of FIG. 14, the error is calculated using an absolute value error. However, this error calculation may be performed using a square error or the like.
In process P7, the value of the first objective function is calculated from the error calculated in process P6. This first objective function can be calculated by first obtaining the maximum error value, the error average, and the error variance calculated in process P6, and weighting and adding them.

この目的関数は換言すれば誤差の評価関数であり、選択した節点候補より生成した1次元時系列データと元の1次元時系列データとの誤差の最大値や誤差の平均や誤差の分散がともに小さな値となるものが節点候補として最適なものである,という観点で、誤差の評価がなされるように、誤差の最大値と誤差の平均と誤差の分散とを重み付け加算した値を誤差の評価関数として使用するようにしているものである。   In other words, this objective function is an error evaluation function, and the maximum value of errors, the average of errors, and the variance of errors between the one-dimensional time-series data generated from the selected node candidates and the original one-dimensional time-series data are both. Error evaluation is performed by weighting and adding the maximum error value, error average, and error variance so that the error is evaluated from the viewpoint that a small value is the optimal node candidate. It is intended to be used as a function.

そして、その重み係数は、その値を始めから固定して決めておく方法と、データに応じて可変的に決定する方法とがある。可変的に決定する場合は、例えば、重みを最大誤差、誤差平均、誤差分散について均等に割り振りたいときには、各重みとそれらの値の積が全て等しくなるように決めればよい。最初から決めておく場合は、例えば重み係数の値を予め全て“1/3”とするなどのように決める。一般には、実際のデータを何度か処理して、経験的によいと思われる値を決めることが多い。   The weighting coefficient includes a method in which the value is fixed from the beginning and a method in which the weighting factor is variably determined in accordance with data. In the case of variably determining, for example, when it is desired to assign the weights equally for the maximum error, the error average, and the error variance, it is only necessary to determine that the products of the respective weights and their values are all equal. When it is determined from the beginning, for example, all the values of the weighting factor are determined in advance to be “1/3”. In general, the actual data is often processed several times to determine a value that seems to be good empirically.

処理P8では第1目的関数の値が最小となるように節点候補の変更を繰り返し行ない、準最適節点候補を決定するのであるが、これについては図10に示した第1の方法と図11に示した第2の方法の2通りがある。   In the process P8, the node candidate is repeatedly changed so as to minimize the value of the first objective function, and the sub-optimal node candidate is determined. This is illustrated in FIG. 10 and the first method shown in FIG. There are two ways of the second method shown.

この準最適節点候補を決定する処理は、ある節点候補を決めた状態での目的関数の値と、節点候補を変えた状態での目的関数の値とを求めてこれらの差分を求め、この差分が小さくなるように節点候補を選択することにより、局所最適解を得るものである。
この節点候補の決定は、節点の個数が少ない場合は最適解を求めればよいが、節点の個数が多くなると最適解が真に最適となっているか否かは不明となるため、本実施の形態1の場合では局所最適解、すなわち準最適解を得るので十分である。
The process of determining this sub-optimal node candidate is to obtain the difference between the objective function value when a node candidate is determined and the objective function value when the node candidate is changed. A local optimum solution is obtained by selecting node candidates so that becomes smaller.
In determining the node candidates, an optimal solution may be obtained when the number of nodes is small, but it is unknown whether the optimal solution is truly optimal when the number of nodes is large. In the case of 1, it is sufficient to obtain a local optimum solution, that is, a suboptimal solution.

まず、図10に示した第1の方法について説明を行なう。図10から分かるように、この処理は処理P41から処理P59で構成される。但し前述のように、節点候補のインデックスに対して、時刻が小さい順に番号づけが行なわれており、それをI(j),0≦j≦mとする。また、以降の図10の説明においては、jはループ制御変数とする。   First, the first method shown in FIG. 10 will be described. As can be seen from FIG. 10, this processing is composed of processing P41 to processing P59. However, as described above, the node candidate indexes are numbered in ascending order of time, and I (j), 0 ≦ j ≦ m. In the following description of FIG. 10, j is a loop control variable.

処理P41ではループ制御が行なわれるが、この方法には次の6通りの方法があり、そのうちのいずれか1つを用いてループ制御が行われる。
(1) 奇数のjについては小さいものから大きいものの順、および偶数のjについては大きいものから小さいものの順に処理を行なう。
(2) 奇数のjについては大きいものから小さいものの順、および偶数のjについては小さいものから大きいものの順に処理を行なう。
(3) j=1から[m/2]まで、およびj=m−1から[m/2]+1まで、順に処理を行なう。
(4) j=[m/2]から1まで、およびj=[m/2]+1からm−1まで、順に処理を行なう。
(5) j=1からm−1まで順に処理を行なう。
(6) j=m−1から1まで順に処理を行なう。
処理P42では、一連の処理のループを制御するループ制御変数jについて、I(j−1)<I(j)−1の関係が成り立つか否かの判定を行なう。もしこの関係が成り立つならば、処理P43に移行し、成り立たないならば処理P45へ移行する。
In the process P41, loop control is performed. There are the following six methods, and loop control is performed using any one of them.
(1) For odd-numbered j, processing is performed in order from the smallest to the largest, and for even-numbered j, the processing is performed from the largest to the smallest.
(2) For odd-numbered j, processing is performed from the largest to the smallest, and for even-numbered j, the processing is performed from the smallest to the largest.
(3) Processing is sequentially performed from j = 1 to [m / 2] and from j = m−1 to [m / 2] +1.
(4) Processing is sequentially performed from j = [m / 2] to 1, and j = [m / 2] +1 to m-1.
(5) Processing is performed sequentially from j = 1 to m-1.
(6) Processing is sequentially performed from j = m−1 to 1.
In process P42, it is determined whether or not the relationship of I (j-1) <I (j) -1 holds for the loop control variable j that controls the loop of a series of processes. If this relationship is established, the process proceeds to process P43, and if not, the process proceeds to process P45.

処理P43では、図15に示したように節点候補I(j)と節点候補I(j)−1とを一時的に交換する。次に、交換後の第1目的関数の値を算出する。関数値を算出した後は交換していた節点候補を元に戻す。   In the process P43, the node candidate I (j) and the node candidate I (j) -1 are temporarily exchanged as shown in FIG. Next, the value of the first objective function after exchange is calculated. After the function value is calculated, the node candidate that was exchanged is restored.

処理P44では、処理P43で算出した第1目的関数の値から図2の処理P7で算出した元の第1目的関数の値を減じた値ΔE(1−)を算出する。なおΔEのかっこ内の“1−”は左側に“1”だけずらせる、即ちインデックスを“1”減らすことを意味する。処理P45では、先の第1目的関数の値は算出せず、強制的にΔE(1−)を“0”とする。
処理P46ではI(j)+1<I(j+1)の関係が成り立つか否かの判定を行ない、もし、この関係が成立するならば処理P47に移行し、成立しないならば処理P49へ移行する。
In process P44, a value ΔE (1-) obtained by subtracting the value of the first first objective function calculated in process P7 of FIG. 2 from the value of the first objective function calculated in process P43 is calculated. Note that “1-” in the parentheses of ΔE means that the left is shifted by “1”, that is, the index is decreased by “1”. In process P45, the value of the first objective function is not calculated, and ΔE (1-) is forcibly set to “0”.
In process P46, it is determined whether or not the relationship of I (j) +1 <I (j + 1) is established. If this relationship is established, the process proceeds to process P47, and if not, the process proceeds to process P49.

処理P47では、図15に示したように一時的に節点候補I(j)と節点候補I(j)+1とを交換し、この時の第1目的関数の値を算出する。
処理P48では、処理47で算出した第1目的関数の値から、図2の処理P7で算出した元の第1目的関数の値を減じた値ΔE(1+)を算出する。処理P49では、第1目的関数の値の算出を行なわずに、強制的にΔE(1+)を“0”とする。
In the process P47, as shown in FIG. 15, the node candidate I (j) and the node candidate I (j) +1 are temporarily exchanged, and the value of the first objective function at this time is calculated.
In process P48, a value ΔE (1+) obtained by subtracting the value of the first first objective function calculated in process P7 of FIG. 2 from the value of the first objective function calculated in process 47 is calculated. In process P49, ΔE (1+) is forcibly set to “0” without calculating the value of the first objective function.

処理P50では、前記ΔE(1−)<0かつΔE(1+)≧0が成り立つか否かの判定を行なう。もしこの関係が成立するならば、処理P51へ移行し、成立しないならば、処理P52へ移行する。処理P51では、節点候補I(j)を節点候補I(j)−1に交換し、交換を行った後は処理P41に戻る。
処理P52では、ΔE(1−)≧0かつΔE(1+)<0が成り立つか否かの判定を行ない、もしこの関係が成立するならば処理P53へ移行し、成立しないならば処理P54へ移行する。処理P53では節点候補I(j)を節点候補I(j)+1に交換し、交換を行った後は処理P41に戻る。
In process P50, it is determined whether or not ΔE (1 −) <0 and ΔE (1+) ≧ 0. If this relationship is established, the process proceeds to process P51, and if not, the process proceeds to process P52. In the process P51, the node candidate I (j) is exchanged for the node candidate I (j) -1, and after the exchange, the process returns to the process P41.
In process P52, it is determined whether or not ΔE (1−) ≧ 0 and ΔE (1 +) <0 are satisfied. If this relationship is established, the process proceeds to process P53, and if not, the process proceeds to process P54. To do. In the process P53, the node candidate I (j) is exchanged with the node candidate I (j) +1, and after the exchange, the process returns to the process P41.

処理P54では、ΔE(1−)<0かつΔE(1+)<0の関係が成り立つか否かの判定を行ない、この関係が成立するならば処理P55へ移行し、成立しないならば処理P41へ戻る。
処理P55では、ΔE(1−)≦ΔE(1+)の関係が成り立つか否かの判定を行ない、この関係が成り立つのであれば処理P56へ移行し、成り立たないならば処理P57へ移行する。処理P56では、節点候補I(j)を節点候補I(j)−1に交換し、交換が済めば処理P41に戻る。処理P57では、節点候補I(j)を節点候補I(j)+1に交換し、交換を行った後は処理P41へ戻る。
全てのループ制御変数jについて、以上の処理が終了したならば、処理P58に移行する。
In the process P54, it is determined whether or not the relationship of ΔE (1-) <0 and ΔE (1 +) <0 is established. If this relationship is established, the process proceeds to the process P55, and if not, the process proceeds to the process P41. Return.
In the process P55, it is determined whether or not the relationship ΔE (1-) ≦ ΔE (1+) is established. If this relationship is established, the process proceeds to the process P56, and if not, the process proceeds to the process P57. In the process P56, the node candidate I (j) is exchanged for the node candidate I (j) -1, and when the exchange is completed, the process returns to the process P41. In the process P57, the node candidate I (j) is exchanged with the node candidate I (j) +1, and after the exchange, the process returns to the process P41.
When the above processing is completed for all the loop control variables j, the processing shifts to processing P58.

処理P58では終了判定を行なう。この終了判定は、全てのjについて処理P41から処理P57までの操作が終了した時の第1目的関数の値が元の第1目的関数の値から閾値を減じたものより大きいか、もしくは全てのjについて、節点候補の前記交換が全く行なわれなかったか否かの判定により実行され、どちらか一方の条件が成立する場合には一連の処理を終了し、終了した時点の解が、準最適節点候補となる。そうでない場合には、処理P59において、元の第1目的関数の値を操作が終了した時の第1目的関数に交換し、処理P41から処理P57の一連の処理を繰り返す。   In process P58, end determination is performed. In this end determination, the value of the first objective function when the operations from process P41 to process P57 are completed for all j is greater than the original first objective function value minus the threshold value, or all j is executed by determining whether or not the node candidates have not been exchanged at all, and if either condition is satisfied, the series of processing is terminated, and the solution at the time of termination is a suboptimal node. Be a candidate. Otherwise, in process P59, the value of the original first objective function is replaced with the first objective function when the operation is completed, and a series of processes from process P41 to process P57 is repeated.

以上の操作は、処理P58における終了判定が成立し、第1目的関数の値が収束するまで繰り返される。なお、この終了判定には、処理の繰り返し回数を基準とする判定条件を付加してもよい。但し、この場合、最適の度合は、繰り返し回数の判定条件を付加しない場合よりも却って悪くなる可能性があるが、処理を必ず一定時間以内で終了させることができる。   The above operation is repeated until the end determination in the process P58 is established and the value of the first objective function converges. Note that a determination condition based on the number of repetitions of processing may be added to this end determination. However, in this case, the optimum degree may be worse than the case where the determination condition for the number of repetitions is not added, but the process can always be finished within a certain time.

次に、図11に示した第2の方法について説明を行なう。図11から分かるように、この処理は処理P61から処理P79で構成される。
但し前述のように、節点候補のインデックスに対して、時刻が小さい順に番号づけが行なわれており、それをI(j),0≦j≦mと表す。また、図10の説明の時と同様に、jはループ制御変数とする。
Next, the second method shown in FIG. 11 will be described. As can be seen from FIG. 11, this process is composed of process P61 to process P79.
However, as described above, the node candidate indexes are numbered in ascending order of time, and are expressed as I (j), 0 ≦ j ≦ m. Similarly to the description of FIG. 10, j is a loop control variable.

処理P61は図10の第1の方法と同様に、一連の処理を繰り返し行うか否かのループ制御を行なうものであり、この方法には次の6通りの方法があり、そのうちのいずれか1つを用いてループ制御が行われる。
(1) 奇数のjについては小さいものから大きいものの順、および偶数のjについては大きいものから小さいものの順に処理を行なう。
(2) 奇数のjについては大きいものから小さいものの順、および偶数のjについては小さいものから大きいものの順に処理を行なう。
(3) j=1から[m/2]まで、およびj=m−1から[m/2]+1まで、順に処理を行なう。
(4) j=[m/2]から1まで、およびj=[m/2]+1からm−1まで、順に処理を行なう。
(5) j=1からm−1まで順に処理を行なう。
(6) j=m−1から1まで順に処理を行なう。
処理P62から処理P70までは、図10の第1の方法の処理P42から処理P50と同様のものである。
In the process P61, as in the first method of FIG. 10, loop control is performed to determine whether or not to repeat a series of processes. This method includes the following six methods, one of which is Loop control is performed using one of them.
(1) For odd-numbered j, processing is performed in order from the smallest to the largest, and for even-numbered j, the processing is performed from the largest to the smallest.
(2) For odd-numbered j, processing is performed from the largest to the smallest, and for even-numbered j, the processing is performed from the smallest to the largest.
(3) Processing is sequentially performed from j = 1 to [m / 2] and from j = m−1 to [m / 2] +1.
(4) Processing is sequentially performed from j = [m / 2] to 1, and j = [m / 2] +1 to m-1.
(5) Processing is performed sequentially from j = 1 to m-1.
(6) Processing is sequentially performed from j = m−1 to 1.
Process P62 to process P70 are the same as process P42 to process P50 of the first method in FIG.

処理P71では、まず、節点候補I(j)を節点候補I(j)−1に交換する。更に、元の第1目的関数の値を、この交換時において算出した第1目的関数の値に更新する。そしてこの更新を行った後、処理P61に戻る。
処理P72は、図10の第1の方法の処理P52と同様である。
処理P73では、まず、節点候補I(j)を節点候補I(j)+1に交換する。更に、元の第1目的関数の値を、この交換時において算出した第1目的関数の値に更新する。そしてこの更新を行った後、処理P61に戻る。
処理P74と処理P75は、図10の第1の方法の処理P54と処理P55と同様のものである。
処理P76では、節点候補I(j)を節点候補I(j)−1に交換する。次に、元の第1目的関数の値を、この交換時において算出した第1目的関数の値に更新する。そしてこの更新を行った後、処理P61に戻る。
In the process P71, first, the node candidate I (j) is exchanged for the node candidate I (j) -1. Further, the original value of the first objective function is updated to the value of the first objective function calculated at the time of this exchange. And after performing this update, it returns to the process P61.
The process P72 is the same as the process P52 of the first method in FIG.
In the process P73, first, the node candidate I (j) is exchanged with the node candidate I (j) +1. Further, the original value of the first objective function is updated to the value of the first objective function calculated at the time of this exchange. And after performing this update, it returns to the process P61.
Process P74 and process P75 are the same as process P54 and process P55 of the first method in FIG.
In the process P76, the node candidate I (j) is exchanged with the node candidate I (j) -1. Next, the original value of the first objective function is updated to the value of the first objective function calculated at the time of this exchange. And after performing this update, it returns to the process P61.

処理P77では、節点候補I(j)を節点候補I(j)+1に交換する。次に、元の第1目的関数の値を、この交換時において算出した第1目的関数の値に更新する。そしてこの更新を行った後、処理P61に戻る。
全てのループ制御変数jについて、以上の処理が終了したならば、処理P78の終了判定を行なうが、これについては図10の第1の方法の処理P58と同様である。処理P79については、図10の第1の方法の処理P59と同様である。
In the process P77, the node candidate I (j) is exchanged with the node candidate I (j) +1. Next, the original value of the first objective function is updated to the value of the first objective function calculated at the time of this exchange. And after performing this update, it returns to the process P61.
When the above processing is completed for all the loop control variables j, it is determined whether or not the processing P78 is finished, which is the same as the processing P58 of the first method in FIG. The process P79 is the same as the process P59 of the first method in FIG.

この第2の方法は、第1の方法が節点候補に関して一連の処理を実行し終わった時点で第1目的関数値の変更を行うのに対し、節点候補を更新する毎に第1目的関数の値も更新するものである。これら第1,第2の方法のいずれが準最適節点候補の決定方法として優れているかは、データの性質に依存しているので一該には言えないが、一般に目的関数値の収束は第1の方法の方が速いものと思われる。   In the second method, the first objective function value is changed when the first method finishes executing a series of processing on the node candidates. On the other hand, each time the node candidates are updated, the first method The value is also updated. Which of these first and second methods is superior as a sub-optimal node candidate determination method depends on the nature of the data, so it cannot be said to be obvious. Generally, the convergence of the objective function value is the first. This method seems to be faster.

以上の図10による第1の方法、または図11による第2の方法によって、準最適節点候補が決定されたならば、図2の処理P9により、準最適節点候補を前述の補間関数により、処理P5と同様の補間を行う。次に、処理P10によって、補間により得られた1次元時系列データと元の1次元時系列データとの誤差を処理P6と同様に算出する。   If the sub-optimal node candidate is determined by the first method shown in FIG. 10 or the second method shown in FIG. 11, the sub-optimal node candidate is processed by the above-described interpolation function in process P9 of FIG. Interpolation similar to P5 is performed. Next, an error between the one-dimensional time series data obtained by the interpolation and the original one-dimensional time series data is calculated in the same manner as in the process P6.

処理P11では、処理P10で算出した誤差から、この誤差の最大値と誤差平均と誤差分散との重み付け加算で定義された第2目的関数の値を算出する。この第2目的関数が本来の節点に関する誤差の評価関数である。そしてその重みの値は、例えば、誤差の最大値だけが問題となる時は、最大誤差の重みを“1”、誤差平均と誤差分散については“0”とすればよい。それ以外にも、処理P7における第1目的関数の時と全く同様に、重みを最大誤差、誤差平均、誤差分散について均等に割り振りたいときには、例えば各重みとそれらの値の積が全て等しくなるように決めたり、最初から決めておく場合は、例えば重み係数の値を予め全て“1/3”とするなどのように決めるようにすればよく、また、第1目的関数の時の、各重みに対する割合などを基準として決定してもよい。   In process P11, the value of the second objective function defined by the weighted addition of the maximum value of the error, the error average, and the error variance is calculated from the error calculated in process P10. This second objective function is an error evaluation function for the original node. For example, when only the maximum error value is a problem, the weight value may be “1” for the maximum error and “0” for the error average and error variance. Other than that, when it is desired to assign the weights equally for the maximum error, the error average, and the error variance, just as in the case of the first objective function in the process P7, for example, the products of the respective weights and their values are all equal. Or when determining from the beginning, for example, all the values of the weighting factor may be determined to be “1/3” in advance, and each weight at the time of the first objective function is determined. You may determine on the basis of the ratio with respect to.

処理P12では、処理P11で求めた第2目的関数値に対する閾値判定を行なう。例えば、最大誤差の重みを“1”、誤差平均と誤差分散については“0”とした時には、処理P1において、最初に入力した、近似精度誤差の値そのものを閾値とすればよい。この場合は、全てのデータが近似精度以内か否かの判定を行なっていることになる。閾値判定の結果、閾値より大きいと判定されたときは処理P13に移行し、そうでないときは、処理P14へと移行する。   In the process P12, a threshold value determination is performed on the second objective function value obtained in the process P11. For example, when the weight of the maximum error is “1” and the error average and the error variance are “0”, in the process P1, the approximate accuracy error value input first may be used as a threshold value. In this case, it is determined whether all the data are within the approximate accuracy. As a result of the threshold determination, when it is determined that the value is larger than the threshold, the process proceeds to process P13. Otherwise, the process proceeds to process P14.

処理P13では、元の節点数に増分量を加算することで、変更後の節点数を得る。その際の増分量は、予め決めておく。
そして、節点数を所定量増加させると処理P4に戻り、節点候補の決定以降の一連の処理を行い、処理P12で第2目的関数の値が閾値以下と判定されるまで、これらの一連の処理を繰り返す。
In process P13, the number of nodes after the change is obtained by adding the increment amount to the original number of nodes. The increment amount at that time is determined in advance.
When the number of nodes is increased by a predetermined amount, the process returns to process P4, a series of processes after determination of the node candidates are performed, and the series of processes until the value of the second objective function is determined to be equal to or less than the threshold in process P12. repeat.

そして処理P12で第2目的関数の値が閾値以下と判定されると上述のように処理P14に移行するが、処理P14では、初期時刻と時間間隔量、および、求まった節点候補のインデックス番号とその時のデータ値を出力する。この場合の出力データの形式は、図16の(a)のようになる。   If it is determined in process P12 that the value of the second objective function is equal to or smaller than the threshold value, the process proceeds to process P14 as described above. In process P14, the initial time, the time interval amount, and the obtained node candidate index number and The data value at that time is output. The format of the output data in this case is as shown in FIG.

なお、インデックスの出力に関しては、節点候補の個数が最初に入力した1次元時系列データの個数の半分以下か、以上かによって切替えて出力する方法もある。つまり、半分以下の時は、それを示す識別子と節点候補のインデックス番号を出力し、以上の場合は、それを示す識別子と節点候補以外のインデックスを列記する。
また、扱う1次元時系列データの初期時刻と時間間隔が常に一定で、既知の場合は、処理P14での出力において、初期時刻と時間間隔を省略してもよい。
Regarding the output of the index, there is a method of switching and outputting depending on whether the number of node candidates is less than half of the number of one-dimensional time-series data input first or more. That is, when it is less than half, the identifier indicating it and the index number of the node candidate are output, and in the above case, the identifier indicating it and the index other than the node candidate are listed.
Further, when the initial time and time interval of the one-dimensional time series data to be handled are always constant and known, the initial time and time interval may be omitted in the output in the process P14.

このように、本実施の形態1によれば、1次元時系列データを構成する各データのなかから初期の節点候補を決定し、補間関数を用いてこの初期の節点候補から元の1次元時系列データを近似する1次元時系列データを生成して、これらの誤差を算出,評価し、その誤差評価が所期の範囲内に収まるように節点候補を移動させて準最適な節点候補を算出し、この補間関数を用いて準最適な節点候補から元の1次元時系列データを近似する1次元時系列データを生成して、これらの誤差を算出,評価し、その誤差評価が所期の範囲内に収まらないならば、節点数を増やして以上の処理を繰り返すことにより、節点の位置と個数の両者に関して最適化を行い、節点以外のデータについてはこれを伝送しないことによりデータを圧縮するようにしたので、与えられた1次元時系列データの性質に合わせた圧縮が行なうことができる。
また、そのデータの圧縮率は近似精度によってコントロールされるので、伸長後の誤差は前もって把握することができる。
As described above, according to the first embodiment, an initial node candidate is determined from each data constituting the one-dimensional time-series data, and the original one-dimensional time is determined from the initial node candidate using an interpolation function. Generate one-dimensional time-series data that approximates the series data, calculate and evaluate these errors, and move the node candidates so that the error evaluation falls within the expected range to calculate a sub-optimal node candidate Then, using this interpolation function, one-dimensional time-series data that approximates the original one-dimensional time-series data is generated from the quasi-optimal node candidates, and these errors are calculated and evaluated. If it does not fall within the range, the number of nodes is increased and the above processing is repeated to optimize both the position and number of nodes, and data other than the nodes is not transmitted and the data is compressed. I did In, it can be compressed to suit the nature of the one-dimensional time series data given is performed.
Further, since the compression rate of the data is controlled by the approximation accuracy, the error after decompression can be grasped in advance.

実施の形態2.
実施の形態1では1次元時系列データ圧縮処理をソフトウエアにより実現したが、このデータ圧縮処理は専用のハードウエアにより実現してもよい。
図4は図1の処理フローを専用ハード化した時系列データ圧縮装置を示すものであり、図において、40aは1次元時系列データとその近似精度値の入力を行う入力手段、10aはこの1次元時系列データを近似する補間関数が通過する節点の候補を算出する節点候補算出手段、10bはこの節点候補算出手段10aにより算出された節点候補の位置を最適化する節点位置最適化手段、10cはこの節点位置最適化手段10bにより得られた節点を通る補間関数と元の1次元時系列データとの誤差が入力手段40aで入力した近似精度値に応じた値を満足しているか否かを判定する判定手段、10dはこの判定手段10cで近似精度を満足していないと判定された場合に、節点数を変化させる節点数変更手段、40bは判定手段10cにより、節点を通る補間関数と元の1次元時系列データとの誤差が入力手段40aで入力した近似精度値に応じた値を満足している場合に圧縮情報としてこの節点およびそのインデックスを出力する出力手段である。
Embodiment 2. FIG.
In the first embodiment, the one-dimensional time-series data compression process is realized by software. However, this data compression process may be realized by dedicated hardware.
FIG. 4 shows a time-series data compression apparatus in which the processing flow of FIG. 1 is implemented as dedicated hardware. In the figure, 40a is an input means for inputting one-dimensional time-series data and its approximate accuracy value, and 10a is this 1 Node candidate calculation means 10b for calculating a node candidate through which an interpolation function approximating dimensional time-series data passes, node position optimization means 10c for optimizing the position of the node candidate calculated by this node candidate calculation means 10a, 10c Indicates whether the error between the interpolation function passing through the node obtained by the node position optimizing means 10b and the original one-dimensional time-series data satisfies a value corresponding to the approximate accuracy value input by the input means 40a. The determining means 10d for determining determines the number of nodes to change the number of nodes when the determining means 10c determines that the approximate accuracy is not satisfied, and 40b is determined by the determining means 10c. Output means for outputting the node and its index as compression information when the error between the interpolation function passing through the node and the original one-dimensional time series data satisfies a value corresponding to the approximate accuracy value input by the input means 40a. It is.

次に動作について説明する。図4に示すように、入力手段40aにおいて、圧縮すべき1次元時系列データとその近似精度値を入力し、節点候補算出手段10aにおいて、1次元時系列データを構成する全ての1次元データのなかから節点候補を算出し、所定の補間関数がこの節点データを通ることにより元の1次元時系列データを近似した1次元時系列データを生成できるような節点候補を算出し、節点位置最適化手段10bにおいて、この節点候補を移動して節点位置の最適化を行い、判定手段10cにおいて、この最適化を行った節点候補を通る所定の補間曲線と元の1次元時系列データとの誤差に基づく値が入力手段40aにおいて入力した近似精度値の範囲内か否かを判定し、近似精度の範囲内であれば、直ちに出力手段40bにより節点位置の最適化を行った節点候補とそのインデックスを圧縮した1次元時系列データとして出力する。   Next, the operation will be described. As shown in FIG. 4, the input means 40a inputs the one-dimensional time series data to be compressed and its approximate accuracy value, and the node candidate calculation means 10a inputs all the one-dimensional data constituting the one-dimensional time series data. Node candidates are calculated from them, and node candidates that can generate one-dimensional time-series data that approximates the original one-dimensional time-series data by passing through this node data by a predetermined interpolation function are calculated, and node positions are optimized. The means 10b moves the node candidate to optimize the node position, and the determination means 10c determines the error between a predetermined interpolation curve passing through the optimized node candidate and the original one-dimensional time series data. It is determined whether or not the base value is within the range of the approximate accuracy value input in the input unit 40a. If the value is within the range of the approximate accuracy, the node position is immediately optimized by the output unit 40b. Node candidate is output as one-dimensional time series data obtained by compressing the index.

また、判定手段10cにおいて、近似精度の範囲内に入らないことが判明すれば、節点数変更手段10dにおいて、節点数を適宜増加あるいは減少して節点数の最適化を行う。
この節点数変更手段10dにより節点数の変更を行った後に、節点候補算出手段10aに戻って再度節点候補の算出を行い、以下同様の処理を繰り返す。
If it is determined that the determination means 10c does not fall within the approximate accuracy range, the node number changing means 10d optimizes the number of nodes by appropriately increasing or decreasing the number of nodes.
After the number of nodes is changed by the node number changing means 10d, the node candidate calculation means 10a is returned to calculate the node candidates again, and the same processing is repeated thereafter.

図5は図4の時系列データ圧縮装置のより詳細な構成を示すものである。
図において、40aは外部よりデータ圧縮すべき1次元時系列データおよびその近似精度を入力するための入力手段、11はこの1次元時系列データに対しインデックスを付加するインデックス付加手段、12はこの1次元時系列データを近似する補間関数が通過する節点の初期の個数を算出する初期節点数算出手段、13は補間関数が通過する節点の候補を決定する節点候補決定手段、14はこの節点候補を通る補間関数により節点候補の間にデータを補間する補間実行手段、15はこの補間関数により得られた1次元時系列データと元の1次元時系列データとの間の誤差を算出する誤差算出手段、16はこの誤差の評価関数である第1の目的関数値を算出する第1目的関数算出手段、17はこの節点候補を適宜移動して準最適節点候補を決定する準最適節点候補決定手段、18はこの準最適節点候補を通る補間関数により準最適節点候補の間にデータを補間する補間実行手段、19はこの補間関数により得られた1次元時系列データと元の1次元時系列データとの間の誤差を算出する誤差算出手段、20はこの誤差の評価関数である第2の目的関数値を算出する第2目的関数算出手段、21はこの第2目的関数の関数値が元の1次元時系列の近似精度に応じた閾値を越えたか否かを判定する閾値判定手段、22は第2目的関数の関数値が元の1次元時系列データの近似精度に応じた閾値を越えた場合に節点数を変更する節点数変更手段、40bはこの第2目的関数の関数値が元の1次元時系列データの近似精度に応じた閾値を越えない場合に準最適節点候補を元の1次元時系列データの圧縮データとして、インデックスとともに出力する出力手段である。
FIG. 5 shows a more detailed configuration of the time-series data compression apparatus of FIG.
In the figure, 40a is an input means for inputting one-dimensional time-series data to be compressed from the outside and its approximation accuracy, 11 is an index adding means for adding an index to the one-dimensional time-series data, and 12 is this 1 An initial node number calculating means for calculating the initial number of nodes through which the interpolation function approximating the dimensional time series data passes, 13 is a node candidate determining means for determining node candidates through which the interpolation function passes, and 14 is the node candidate. Interpolation execution means for interpolating data between nodal candidates using a passing interpolation function, 15 is an error calculation means for calculating an error between the one-dimensional time series data obtained by this interpolation function and the original one-dimensional time series data , 16 is a first objective function calculation means for calculating a first objective function value that is an evaluation function of this error, and 17 is a node for moving the node candidate as appropriate to obtain a suboptimal node candidate A sub-optimal node candidate determining means 18 for determining, an interpolation executing means 18 for interpolating data between sub-optimal node candidates by an interpolation function passing through the sub-optimal node candidate, and 19 a one-dimensional time-series data obtained by the interpolation function. Error calculating means for calculating an error between the original and one-dimensional time series data, 20 is a second objective function calculating means for calculating a second objective function value that is an evaluation function of the error, and 21 is a second objective function calculating means. Threshold determination means for determining whether or not the function value of the objective function exceeds a threshold corresponding to the approximation accuracy of the original one-dimensional time series, and 22 is an approximation of the original one-dimensional time series data whose function value is the second objective function The node number changing means 40b for changing the number of nodes when the threshold value according to accuracy is exceeded, 40b is used when the function value of the second objective function does not exceed the threshold value according to the approximation accuracy of the original one-dimensional time series data. One-dimensional time series based on suboptimal node candidates As compressed data over data, an output unit that outputs with indexes.

次に動作について説明する。
まず、入力手段40aでは、データ圧縮すべき1次元時系列データと、これを近似する補間関数の近似精度値の入力を行なう。インデックス付加手段11では1次元時系列データに対しその時刻の順にインデックスをつける。この時刻としては1次元時系列データのサンプル時刻や発生時刻や入力時刻等を用いることができる。なお、このインデックスは時刻の代わりに順次増加するデータや順次減少するデータを用いてもよい。初期節点数算出手段12では初期の節点数を算出する。その際に使用する節点数の初期値は、補間関数の種類に応じて決まるため、予め、その初期値を設定しておけばよく、従って、例えば、初期のデータ数に対する比を予め決めておくことでこれを算出することができる。ここでは、図2の場合と同様に、使用する節点数の初期値として1次元時系列データ全体の個数の1/aという形で(但し、a>0とする)、初期の節点数を算出するものとする。
Next, the operation will be described.
First, the input means 40a inputs one-dimensional time-series data to be compressed and an approximate accuracy value of an interpolation function that approximates the data. The index adding means 11 attaches indexes to the one-dimensional time series data in the order of the times. As this time, a sample time, generation time, input time, or the like of the one-dimensional time series data can be used. Note that this index may use data that increases sequentially or data that decreases sequentially instead of time. The initial node number calculating means 12 calculates the initial node number. Since the initial value of the number of nodes used at that time is determined in accordance with the type of the interpolation function, it is only necessary to set the initial value in advance. Therefore, for example, the ratio to the initial number of data is determined in advance. This can be calculated. Here, as in the case of FIG. 2, the initial number of nodes is calculated in the form of 1 / a of the total number of one-dimensional time-series data (where a> 0) as the initial value of the number of nodes to be used. It shall be.

節点候補決定手段13では、データ圧縮すべき1次元時系列データの中から、その始めと終りのデータを必ず含み、かつ残りのデータについてはランダムな間隔でデータを選択し、これらを合計すれば上述の算出した節点数と同数となるように節点候補を決定する。
この操作は図13あるいは図14に示すものと同様に行う。
この節点候補決定手段13で行う操作は節点候補の位置の初期値を決めるものであり、この種の問題には乱数を用いるのが有効であることが知られているが、本実施の形態2の場合でも、乱数を用いて節点位置を選択した方が近似等間隔で選択した場合よりも実験的に良い値が得られている。
The node candidate determination means 13 always includes data at the beginning and end of the one-dimensional time series data to be compressed, and selects the remaining data at random intervals, and sums them. Node candidates are determined so as to be equal to the calculated number of nodes.
This operation is performed in the same manner as shown in FIG.
The operation performed by the node candidate determination means 13 is to determine the initial value of the position of the node candidate, and it is known that it is effective to use a random number for this type of problem. Even in this case, a better value is obtained experimentally when the node positions are selected using random numbers than when they are selected at approximately equal intervals.

補間実行手段14ではインデックス番号を独立変数とする補間関数により、各節点候補の間を補間するデータを発生して、元の1次元時系列データを近似する1次元時系列データを得、これと元の1次元時系列データとの誤差を算出する。
この補間関数は図2の場合と同様、スプライン関数や離散フーリエ変換を用いた級数展開表現、離散コサイン変換を用いた級数展開表現などを使用できる。
The interpolation execution means 14 generates data for interpolating between node candidates by an interpolation function having an index number as an independent variable, and obtains one-dimensional time-series data that approximates the original one-dimensional time-series data. An error from the original one-dimensional time series data is calculated.
As in the case of FIG. 2, this interpolation function can use a series expansion expression using a spline function or a discrete Fourier transform, a series expansion expression using a discrete cosine transform, or the like.

誤差算出手段15では、図14のように、節点候補以外の1次元時系列データと補間関数との誤差を算出する。図14の場合、誤差の算出は絶対値誤差を用いて行っているが、この誤差算出は2乗誤差などを用いて行ってもよい。   The error calculation means 15 calculates an error between the one-dimensional time series data other than the nodal candidate and the interpolation function as shown in FIG. In the case of FIG. 14, the error is calculated using an absolute value error. However, this error calculation may be performed using a square error or the like.

第1目的関数算出手段16では、誤差算出手段15で算出した誤差から、第1目的関数の値を算出する。この第1目的関数は、誤差算出手段15で算出した誤差の最大値と誤差平均と誤差分散をまず求め、これらを重み付け加算して算出することができる。   The first objective function calculation means 16 calculates the value of the first objective function from the error calculated by the error calculation means 15. This first objective function can be calculated by first obtaining the maximum value of error calculated by the error calculation means 15, the error average, and the error variance, and adding these to weight.

準最適節点候補決定手段17では第1目的関数の値が最小となるように節点候補の変更を繰り返し行ない、準最適節点候補を決定するのであるが、これについては、図2の場合と同様,図10に示した第1の方法と図11に示した第2の方法の2通りがある。   The sub-optimal node candidate determination means 17 repeatedly changes the node candidate so that the value of the first objective function is minimized, and determines the sub-optimal node candidate. This is the same as in the case of FIG. There are two methods, the first method shown in FIG. 10 and the second method shown in FIG.

図10による第1の方法、または図11による第2の方法によって、準最適節点候補が決定されたならば、図5の補間実行手段18により、準最適節点候補を前述の補間関数により、補間実行手段14と同様に補間する。次に、誤差算出手段19によって、補間により得られた1次元時系列データと元の1次元時系列データとの誤差を誤差算出手段15と同様に算出する。   If the sub-optimal node candidate is determined by the first method according to FIG. 10 or the second method according to FIG. 11, the sub-optimal node candidate is interpolated by the interpolation function by the interpolation execution means 18 of FIG. Interpolation is performed in the same manner as the execution means 14. Next, the error calculation means 19 calculates the error between the one-dimensional time series data obtained by interpolation and the original one-dimensional time series data in the same manner as the error calculation means 15.

第2目的関数算出手段20では、誤差算出手段19で算出した誤差から、この誤差の最大値と誤差平均と誤差分散との重み付け加算で定義された第2目的関数の値を算出する。この第2目的関数が本来の節点に関する誤差の評価関数である。そしてその重みの値は、例えば、誤差の最大値だけが問題となる時は、最大誤差の重みを“1”、誤差平均と誤差分散については“0”とすればよい。それ以外にも、第1目的関数算出手段16における第1目的関数の時と全く同様に、重みを最大誤差、誤差平均、誤差分散について均等に割り振りたいときには、例えば各重みとそれらの値の積が全て等しくなるように決めたり、最初から決めておく場合は、例えば重み係数の値を予め全て“1/3”とするなどのように決めるようにすればよく、また、第1目的関数の時の、各重みに対する割合などを基準として決定してもよい。   The second objective function calculation means 20 calculates the value of the second objective function defined by the weighted addition of the maximum value of the error, the error average, and the error variance from the error calculated by the error calculation means 19. This second objective function is an error evaluation function for the original node. For example, when only the maximum error value is a problem, the weight value may be “1” for the maximum error and “0” for the error average and error variance. Other than that, when it is desired to assign the weights equally for the maximum error, the error average, and the error variance in the same manner as the first objective function in the first objective function calculation means 16, for example, the product of the respective weights and their values. Are determined to be equal to each other, or are determined from the beginning, for example, the values of the weighting factors are all determined to be “1/3” in advance, and the first objective function You may determine on the basis of the ratio with respect to each weight, etc. at the time.

閾値判定手段21では、第2目的関数算出手段20で求めた第2目的関数値に対する閾値判定を行なう。例えば、最大誤差の重みを“1”、誤差平均と誤差分散については“0”とした時には、入力手段40aにおいて、最初に入力した、近似精度誤差を閾値とすればよい。この場合は、全てのデータが近似精度以内か否かの判定を行なっていることになる。閾値判定の結果、閾値より大きいと判定されたときは節点数変更手段22に移行し、そうでないときは、出力手段40bへと移行する。   The threshold determination means 21 performs threshold determination for the second objective function value obtained by the second objective function calculation means 20. For example, when the maximum error weight is “1” and the error average and error variance are “0”, the approximation accuracy error input first in the input means 40a may be used as a threshold value. In this case, it is determined whether all the data are within the approximate accuracy. As a result of the threshold determination, when it is determined that the value is larger than the threshold, the process shifts to the node number changing means 22, and when not, the process shifts to the output means 40b.

節点数変更手段22では、節点数の変更を元の節点数に増分を加算することで得る。その際の増分量は、予め決めておく。
そして、節点数を所定量増加させると節点候補決定手段13に戻り、節点候補の決定以降の一連の処理を行い、閾値判定手段21で第2目的関数の値が閾値以下と判定されるまで、これらの一連の処理を繰り返す。
The node number changing means 22 obtains the change in the number of nodes by adding an increment to the original number of nodes. The increment amount at that time is determined in advance.
Then, when the number of nodes is increased by a predetermined amount, the process returns to the node candidate determination unit 13, performs a series of processes after the node candidate determination, and until the threshold value determination unit 21 determines that the value of the second objective function is equal to or less than the threshold value. These series of processes are repeated.

そして閾値判定手段21で第2目的関数の値が閾値以下と判定されると上述のように出力手段40bに移行するが、出力手段40bでは、初期時刻と時間間隔量、および、求まった節点候補のインデックス番号とその時のデータ値を出力する。この場合の出力データの形式は、図16の(a)のようになる。   When the threshold value determination unit 21 determines that the value of the second objective function is equal to or less than the threshold value, the process proceeds to the output unit 40b as described above. In the output unit 40b, the initial time, the time interval amount, and the obtained node candidate are obtained. The index number and the data value at that time are output. The format of the output data in this case is as shown in FIG.

なお、インデックスの出力に関しては、節点候補の個数が最初に入力した1次元時系列データの個数の半分以下か、以上かによって切替えて出力する方法もある。つまり、半分以下の時は、それを示す識別子と節点候補のインデックス番号を出力し、以上の場合は、それを示す識別子と節点候補以外のインデックスを列記する。
また、扱う1次元時系列データの初期時刻と時間間隔が常に一定で、既知の場合は、出力手段40bでの出力において、初期時刻と時間間隔を省略してもよい。
Regarding the output of the index, there is a method of switching and outputting depending on whether the number of node candidates is less than half of the number of one-dimensional time-series data input first or more. That is, when it is less than half, the identifier indicating it and the index number of the node candidate are output, and in the above case, the identifier indicating it and the index other than the node candidate are listed.
If the initial time and time interval of the one-dimensional time series data to be handled are always constant and known, the initial time and time interval may be omitted in the output by the output means 40b.

このように、本実施の形態2によれば、1次元時系列データを構成する各データのなかから初期の節点候補を決定し、補間関数を用いてこの初期の節点候補から元の1次元時系列データを近似する1次元時系列データを生成して、これらの誤差を算出,評価し、その誤差評価が所期の範囲内に収まるように節点候補を移動させて準最適な節点候補を算出し、この補間関数を用いて準最適な節点候補から元の1次元時系列データを近似する1次元時系列データを生成して、これらの誤差を算出,評価し、その誤差評価が所期の範囲内に収まらないならば、節点数を増やして以上の処理を繰り返すことにより、節点の位置と個数の両者に関して最適化を行い、節点以外のデータについてはこれを伝送しないことによりデータを圧縮する処理を専用ハードウエアにより行うようにしたので、与えられた1次元時系列データの性質に合わせた圧縮を迅速に行なうことができる。
また、そのデータの圧縮率は近似精度によってコントロールされるので、伸長後の誤差は前もって把握することができる。
As described above, according to the second embodiment, an initial node candidate is determined from each data constituting the one-dimensional time series data, and the original one-dimensional time is determined from the initial node candidate using an interpolation function. Generate one-dimensional time-series data that approximates the series data, calculate and evaluate these errors, and move the node candidates so that the error evaluation falls within the expected range to calculate a sub-optimal node candidate Then, using this interpolation function, one-dimensional time-series data that approximates the original one-dimensional time-series data is generated from the quasi-optimal node candidates, and these errors are calculated and evaluated. If it does not fall within the range, the number of nodes is increased and the above processing is repeated to optimize both the position and number of nodes, and data other than the nodes is not transmitted and the data is compressed. Dedicated processing Since to carry out the Douea, it is possible to perform compression tailored to the nature of the one-dimensional time series data given rapidly.
Further, since the compression rate of the data is controlled by the approximation accuracy, the error after decompression can be grasped in advance.

実施の形態3.
次に、本発明の実施の形態3の時系列データ圧縮方法について、図面を参照しながら説明する。
この実施の形態3は、実施の形態1の時系列データ圧縮方法において、いわゆる0列、即ち、1次元時系列データの各データがほぼ“0”とみなし得る範囲内に収まるものが連続する場合に、その処理を省略できるようにしたものである。
Embodiment 3 FIG.
Next, a time-series data compression method according to Embodiment 3 of the present invention will be described with reference to the drawings.
In this third embodiment, in the time-series data compression method according to the first embodiment, the so-called 0-sequence, that is, one in which each data of the one-dimensional time-series data falls within a range that can be regarded as almost “0” is continuous. Further, the processing can be omitted.

図6は本発明の実施の形態3における時系列データ圧縮方法の処理の流れを示すものである。この図6に示したように、全体の処理は図1に示したものと同様であるが、この実施の形態3では、入力処理P4aの直後に判定処理P1fを設け、入力処理P4aで入力された1次元時系列データが近似精度内におさまるものの場合は直ちに出力処理P4bに移行し、近似精度内に収まらない場合のみ、図1と同様に、節点候補の算出処理P1a等の処理を行うようにしたものである。   FIG. 6 shows the flow of processing of the time-series data compression method in Embodiment 3 of the present invention. As shown in FIG. 6, the entire process is the same as that shown in FIG. 1, but in the third embodiment, a determination process P1f is provided immediately after the input process P4a, and is input in the input process P4a. If the one-dimensional time series data falls within the approximate accuracy, the process immediately proceeds to the output process P4b. Only when the one-dimensional time series data does not fall within the approximate precision, the node candidate calculation process P1a and the like are performed as in FIG. It is a thing.

図7は、図6の処理をより詳しく示すもので、この図7の処理は、例えば図3のコンピュータにより、第11段階S11から第20段階S20までで実行される。この場合、図3のコンピュータのメインメモリ3には、図7の処理に相当するプログラムが予め、あるいはプログラム記録媒体からロードされる等して記憶されている。第11段階S11は処理P21から処理P23までで、第12段階S12は処理P24で、第13段階S13は処理P25で、第14段階S14は処理S26と処理S27とで、第15段階S15は処理P28で、第16段階S16は処理P29で、第17段階S17は処理P30と処理P31とで、第18段階S18は処理P32で、第19段階S19は処理P25から処理P34までで、第20段階S20は処理P35で実行される。   FIG. 7 shows the process of FIG. 6 in more detail, and the process of FIG. 7 is executed from the 11th stage S11 to the 20th stage S20 by, for example, the computer of FIG. In this case, the main memory 3 of the computer of FIG. 3 stores a program corresponding to the processing of FIG. 7 in advance or loaded from a program recording medium. The 11th step S11 is from the process P21 to the process P23, the 12th stage S12 is the process P24, the 13th stage S13 is the process P25, the 14th stage S14 is the process S26 and the process S27, and the 15th stage S15 is the process. In P28, the 16th stage S16 is the process P29, the 17th stage S17 is the process P30 and the process P31, the 18th stage S18 is the process P32, the 19th stage S19 is the process P25 to the process P34, the 20th stage. S20 is executed in process P35.

以上のように構成された各処理について詳細に説明する。
処理P21から処理P23までの処理については、図2に示す,本発明の実施の形態1の処理P1から処理P3までの処理と同様のものである。
処理P24については、与えられた1次元時系列データの全てのデータ値の絶対値が、処理21において入力された近似精度以下であるか否かについての判定を行なう。その際、近似精度が入力された精度以下であると判定された場合は、いわゆる0列に該当する場合であり、この場合、本実施の形態3の情報圧縮方法では情報圧縮が行われないので、直ちに処理P35に移行する。これに対し、少なくとも1つのデータ値の絶対値が近似精度より大きい場合は、処理P25に移行する。
Each process configured as described above will be described in detail.
The processes from the process P21 to the process P23 are the same as the processes from the process P1 to the process P3 according to the first embodiment of the present invention shown in FIG.
For the process P24, it is determined whether or not the absolute values of all the data values of the given one-dimensional time series data are equal to or less than the approximate accuracy input in the process 21. At this time, when it is determined that the approximate accuracy is equal to or less than the input accuracy, it corresponds to a so-called zero column. In this case, information compression is not performed in the information compression method of the third embodiment. Immediately, the process proceeds to process P35. On the other hand, if the absolute value of at least one data value is greater than the approximate accuracy, the process proceeds to process P25.

処理P25から処理P34までの処理については、図2における処理P4から処理P13までの処理と同様である。
処理P35については、第13段階S13ないし第19段階S19を経て来たた場合には、本発明の実施の形態1の処理P14と同様に図16(a)の形式でデータを出力する。これに対し、処理P24によって直接処理P35に移行して来た場合には、図16における(b)の形式で出力する。つまり、初期時刻と時間間隔と、全てのデータ値が“0”である旨を示す識別子を出力する。
The processes from the process P25 to the process P34 are the same as the processes from the process P4 to the process P13 in FIG.
As for the process P35, when the 13th step S13 to the 19th step S19 have been performed, the data is output in the format of FIG. 16A in the same manner as the process P14 of the first embodiment of the present invention. On the other hand, when the process P24 has directly shifted to the process P35, the data is output in the format (b) in FIG. That is, an identifier indicating that the initial time, the time interval, and all data values are “0” is output.

このように、本実施の形態3によれば、データが近似精度内で“0”とみなし得る範囲内に収まる場合には、その圧縮処理を省略できるようにしたので、“0”とみなせるデータが連続する場合にはその処理を省略でき、特にその個数が多い場合にはより高速なデータ圧縮処理が可能となる効果がある。   As described above, according to the third embodiment, when the data falls within the range that can be regarded as “0” within the approximate accuracy, the compression process can be omitted, and therefore the data that can be regarded as “0”. The processing can be omitted in the case where the data continues, and particularly when the number is large, there is an effect that the data compression processing can be performed at a higher speed.

実施の形態4.
実施の形態3では1次元時系列データ圧縮処理をソフトウエアにより実現したが、このデータ圧縮処理は専用のハードウエアにより実現してもよい。
図8は図6の処理フローを専用ハード化した時系列データ圧縮装置を示すものであり、図において、図4と同一符号は同一または相当するものを示す。
10fは判定手段であり、入力手段40aと節点候補算出手段10aとの間に設けられ、入力手段40aで入力された1次元時系列データが近似精度内におさまるものの場合は直ちに出力手段40bに移行し、近似精度内に収まらない場合のみ、図6と同様に、節点候補の算出手段10aに移行し一連のデータ圧縮処理を行うように、処理の切換制御を行うものである。
Embodiment 4 FIG.
In the third embodiment, the one-dimensional time-series data compression process is realized by software. However, this data compression process may be realized by dedicated hardware.
FIG. 8 shows a time-series data compression apparatus in which the processing flow of FIG. 6 is implemented as dedicated hardware. In the figure, the same reference numerals as those in FIG. 4 denote the same or corresponding parts.
Reference numeral 10f denotes a determination unit, which is provided between the input unit 40a and the node candidate calculation unit 10a. If the one-dimensional time series data input by the input unit 40a falls within the approximate accuracy, the process immediately shifts to the output unit 40b. However, only when it does not fall within the approximate accuracy, the process switching control is performed so that the process proceeds to the node candidate calculation means 10a and a series of data compression processes are performed as in FIG.

図9は図8の時系列データ圧縮装置のより詳細な構成を示すものであり、図において、図5と同一符号は同一または相当するものを示す。23は入力手段40aとインデックス付加手段11との間に設けられた近似精度内判定手段であり、図8の判定手段10fと同様、入力手段40aとインデックス付加手段11との間に設けられている。   FIG. 9 shows a more detailed configuration of the time-series data compression apparatus of FIG. 8. In the figure, the same reference numerals as those in FIG. 5 denote the same or corresponding parts. 23 is an in-approximation-accuracy determination unit provided between the input unit 40a and the index addition unit 11, and is provided between the input unit 40a and the index addition unit 11 as in the determination unit 10f of FIG. .

次に図9の動作について説明する。
この図9の時系列データ圧縮装置は、入力手段40aとインデックス付加手段11との間に近似精度内判定手段23を有しており、近似精度内判定手段23が、入力手段40aで入力された1次元時系列データが近似精度内におさまるか否かの判定を行い、近似精度内におさまる場合は本時系列データ圧縮装置によるデータ圧縮動作が行われない場合であるので、直ちに出力手段40bに移行し、近似精度内に収まらない場合のみ、図6と同様に、インデックス付加手段11に移行し一連のデータ圧縮処理を行うように、処理の切換制御を行うものである。
Next, the operation of FIG. 9 will be described.
The time-series data compression apparatus of FIG. 9 has an approximate accuracy determining unit 23 between the input unit 40a and the index adding unit 11, and the approximate accuracy determining unit 23 is input by the input unit 40a. It is determined whether or not the one-dimensional time-series data falls within the approximate accuracy. If the one-dimensional time-series data falls within the approximate accuracy, the data compression operation by the time-series data compression apparatus is not performed. As in FIG. 6, the process switching control is performed so that the process proceeds to the index adding means 11 and a series of data compression processes are performed only when the shift does not fall within the approximate accuracy.

このように、本実施の形態4によれば、データが近似精度内で“0”とみなし得る範囲内に収まる場合には、その圧縮処理を省略できるようにしたので、“0”とみなせるデータが連続する場合にその処理を省略でき、特にその個数が多い場合にはより高速なデータ圧縮処理が可能となり、しかもこれらの処理を専用ハードウエアにより行うようにしたので、より一層の高速化が可能となる効果がある。   As described above, according to the fourth embodiment, when the data falls within the range that can be regarded as “0” within the approximate accuracy, the compression process can be omitted, and therefore the data that can be regarded as “0”. Can be omitted, especially when the number is large, it is possible to perform higher-speed data compression processing, and since these processing are performed by dedicated hardware, further speedup can be achieved. There is a possible effect.

実施の形態5.
以下では、実施の形態1または実施の形態3の圧縮方法によりデータ圧縮された1次元時系列データを伸長する方法について説明する。
この実施の形態5では、まず、圧縮されたデータの伸長に関して、図16の(a)の形式だけで圧縮されたデータが供給されていることが保証されている場合について説明する。
Embodiment 5 FIG.
Hereinafter, a method for decompressing one-dimensional time-series data that has been data-compressed by the compression method of the first or third embodiment will be described.
In the fifth embodiment, first, a description will be given of a case where it is guaranteed that compressed data is supplied only in the format of FIG.

図17は実施の形態1の圧縮方法によりデータ圧縮された1次元時系列データ、即ち図16の(a)の形式だけで圧縮されたデータが供給されている場合のデータの伸長方法を示すものである。この伸長方法は3段階により構成されており、図において、P5aは実施の形態1による1次元時系列データ圧縮方法で圧縮された圧縮データ等を入力する入力処理、P101aは補間関数によって圧縮データを補間し伸長を行うデータ伸長処理、P5bは伸長した1次元時系列データを出力する出力処理である。   FIG. 17 shows a data decompression method when one-dimensional time-series data compressed by the compression method of the first embodiment, that is, data compressed only in the format of FIG. It is. This decompression method is composed of three stages. In the figure, P5a is input processing for inputting compressed data and the like compressed by the one-dimensional time series data compression method according to Embodiment 1, and P101a is compressed data by an interpolation function. Data expansion processing for interpolation and expansion, and P5b is output processing for outputting expanded one-dimensional time-series data.

次にその処理方法について説明する。入力処理P5aにおいて、実施の形態1による1次元時系列データ圧縮方法で圧縮された圧縮データと、このデータを伸長した時に生成すべきデータの個数を入力する。次に、データ伸長処理P101aにおいて、データを圧縮する時に使用したのと同じ補間関数によって圧縮データを補間し伸長を行う。そして、出力処理P5bにおいて、データ伸長処理P101aによって伸長された1次元時系列データを出力する。   Next, the processing method will be described. In the input process P5a, the compressed data compressed by the one-dimensional time-series data compression method according to the first embodiment and the number of data to be generated when this data is expanded are input. Next, in the data decompression process P101a, the compressed data is interpolated and decompressed by the same interpolation function used when compressing the data. In the output process P5b, the one-dimensional time series data expanded by the data expansion process P101a is output.

図18はこの図17の伸長方法をより詳しく示したものである。
図において、第1段階S31は図17の入力処理P5aと同様の入力処理P101から構成されている。第2段階S32は圧縮データを補間するデータ補間処理P102,伸長したデータを算出するデータ算出処理P103,伸長したデータに対応する時刻を算出する時刻算出処理P104から構成されている。第3段階S33は図17の出力処理P5bと同様の出力処理P105から構成されている。
FIG. 18 shows the expansion method of FIG. 17 in more detail.
In the figure, the first stage S31 includes an input process P101 similar to the input process P5a of FIG. The second stage S32 includes a data interpolation process P102 for interpolating the compressed data, a data calculation process P103 for calculating the expanded data, and a time calculation process P104 for calculating the time corresponding to the expanded data. The third step S33 includes an output process P105 similar to the output process P5b of FIG.

この図18に詳細な処理が示された,図17の処理は、例えば、図3のコンピュータにより、第1段階S31から第3段階S33までで実行される。この場合、図3のコンピュータのメインメモリ3には、図17の処理に相当するプログラムが予め、あるいはプログラム記録媒体からロードされる等して記憶されている。   The detailed processing shown in FIG. 18 is executed by the computer shown in FIG. 3, for example, from the first step S31 to the third step S33. In this case, the main memory 3 of the computer of FIG. 3 stores a program corresponding to the processing of FIG. 17 in advance or loaded from a program recording medium.

次にその伸長方法について説明する。まず、その第1段階S31において、入力処理P101により、実施の形態1による1次元時系列データ圧縮方法で圧縮された圧縮データと、このデータを伸長した時に生成すべきデータの個数を入力する。   Next, the expansion method will be described. First, in the first step S31, the compressed data compressed by the one-dimensional time-series data compression method according to the first embodiment and the number of data to be generated when this data is expanded are input by the input process P101.

次に第2段階S32において、データ補間処理P102により、データを圧縮する時に使用したのと同じ補間関数によって圧縮データを補間し、データの連続化を図り、データ算出処理P103により、その連続化されたものから必要とする個数分のデータを算出し、時刻算出処理P104により、初期時間と時間間隔から時刻を必要とするデータの個数分だけ算出する。但し、補間関数は、圧縮の時と同様にインデックスを独立変数とする関数であり、圧縮データのインデックス列の値を用いて補間関数を生成する。   Next, in the second step S32, the data interpolation process P102 interpolates the compressed data with the same interpolation function used when compressing the data, and the data is made continuous, and the data calculation process P103 makes it continuous. The required number of data is calculated from the data, and the time calculation process P104 calculates the number of data that requires time from the initial time and the time interval. However, the interpolation function is a function having an index as an independent variable as in the case of compression, and an interpolation function is generated using the value of the index string of the compressed data.

そして、第3段階S33において、出力処理P105により、第2段階S32で算出したデータと時刻を伸長した1次元時系列データとして出力する。
以上の伸長方法から分かるように、1次元時系列データを復元する時には、データ数は元のものとは異なった個数にも伸長できる。これは換言すると、1次元時系列データの時間変更を行なうことが可能であることを意味しており、その制御は入力されるデータ数によって行なうことが可能であることを意味している。
Then, in the third stage S33, the output process P105 outputs the data calculated in the second stage S32 and the time as one-dimensional time-series data expanded.
As can be seen from the above decompression method, when restoring one-dimensional time-series data, the number of data can be decompressed to a number different from the original one. In other words, this means that it is possible to change the time of the one-dimensional time-series data, and that control can be performed according to the number of input data.

このように、本実施の形態5によれば、実施の形態1の方法により情報圧縮された1次元時系列データを伸長でき、しかもその伸長を行うにあたって生成するデータの個数を元の1次元時系列データに対し任意に増減でき、かつその際データの性質を損なうことなく生成データの個数の増減を行うことができる1次元時系列データの伸長方法が得られる効果がある。   As described above, according to the fifth embodiment, the one-dimensional time-series data compressed by the method of the first embodiment can be expanded, and the number of data generated when the expansion is performed is the original one-dimensional time. There is an advantage that a one-dimensional time-series data expansion method that can arbitrarily increase / decrease the series data and can increase / decrease the number of generated data without impairing the properties of the data is obtained.

実施の形態6.
実施の形態5では1次元時系列データ伸長処理をソフトウエアにより実現したが、このデータ伸長処理は専用のハードウエアにより実現してもよい。
図19は図17の処理フローを専用ハード化した時系列データ伸長装置を示すものであり、実施の形態2の圧縮装置によりデータ圧縮された1次元時系列データ、即ち図16の(a)の形式だけで圧縮されたデータが供給されている場合のデータの伸長装置を示すものである。図において、50aは実施の形態2による時系列データ圧縮装置で圧縮された圧縮データ等を入力する入力手段、20aは補間関数によって圧縮データを補間し伸長を行うデータ伸長手段、50bは伸長した1次元時系列データを出力する出力手段である。
Embodiment 6 FIG.
In the fifth embodiment, the one-dimensional time-series data expansion process is realized by software. However, this data expansion process may be realized by dedicated hardware.
FIG. 19 shows a time-series data decompression device in which the processing flow of FIG. 17 is implemented as dedicated hardware. One-dimensional time-series data compressed by the compression device of the second embodiment, that is, FIG. 1 shows a data decompression apparatus when data compressed only in a format is supplied. In the figure, 50a is an input means for inputting compressed data compressed by the time-series data compression apparatus according to the second embodiment, 20a is a data expansion means for interpolating and expanding compressed data by an interpolation function, and 50b is an expanded 1 It is an output means for outputting dimension time series data.

次にその動作について説明する。入力手段50aにより、実施の形態2による時系列データ圧縮装置で圧縮された圧縮データと、このデータを伸長した時に生成すべきデータの個数を入力する。次に、データ伸長手段20aにより、データを圧縮する時に使用したのと同じ補間関数によって圧縮データを補間し伸長を行う。そして、出力手段50bにより、データ伸長手段20aによって伸長された1次元時系列データを出力する。   Next, the operation will be described. The input means 50a inputs the compressed data compressed by the time-series data compression apparatus according to the second embodiment and the number of data to be generated when this data is expanded. Next, the data decompression means 20a interpolates and decompresses the compressed data using the same interpolation function used when compressing the data. Then, the output means 50b outputs the one-dimensional time series data expanded by the data expansion means 20a.

図20はこの図10の伸長装置の構成をより詳しく示したものである。
図において、50aは図19の入力手段50aと同様に構成された入力手段である。21は入力されたデータに対しデータ補間処理を行うデータ補間手段、22は補間されたデータから伸長されたデータを算出するデータ算出手段、23はデータに対応する時刻を算出する時刻算出手段である。50bは図19の出力手段50bと同様に構成された出力手段である。
FIG. 20 shows in more detail the configuration of the expansion device of FIG.
In the figure, reference numeral 50a denotes an input means configured similarly to the input means 50a of FIG. Reference numeral 21 denotes data interpolation means for performing data interpolation processing on input data, 22 denotes data calculation means for calculating data expanded from the interpolated data, and 23 denotes time calculation means for calculating a time corresponding to the data. . Reference numeral 50b denotes output means configured similarly to the output means 50b of FIG.

次にその動作について説明する。まず、入力手段50aにより、実施の形態2による時系列データ圧縮装置で圧縮された圧縮データと、このデータを伸長した時に生成すべきデータの個数を入力する。
次にデータ補間手段21により、データを圧縮する時に使用したのと同じ補間関数によって圧縮データを補間し、データの連続化を図り、データ算出手段22により、その連続化されたものから必要とする個数分のデータを算出し、時刻算出手段23により、初期時間と時間間隔から時刻を必要とするデータの個数分だけ算出する。但し、補間関数は、圧縮の時と同様にインデックスを独立変数とする関数であり、圧縮データのインデックス列の値を用いて補間関数を生成する。
Next, the operation will be described. First, the input means 50a inputs the compressed data compressed by the time-series data compression apparatus according to the second embodiment and the number of data to be generated when the data is expanded.
Next, the data interpolation means 21 interpolates the compressed data with the same interpolation function that was used when compressing the data to make the data continuous, and the data calculation means 22 requires the data from the continuous data. The number of data is calculated, and the time calculation means 23 calculates the number of data requiring time from the initial time and the time interval. However, the interpolation function is a function having an index as an independent variable as in the case of compression, and an interpolation function is generated using the value of the index string of the compressed data.

そして、出力手段50bにより、算出したデータと時刻を、伸長した1次元時系列データとして出力する。
このように、本実施の形態6によれば、実施の形態2の装置により情報圧縮された1次元時系列データを専用ハードにより高速に伸長でき、しかもその伸長を行うにあたって生成するデータの個数を元の1次元時系列データに対し任意に増減でき、かつその際データの性質を損なうことなく生成データの個数の増減を行うことができる効果がある。
Then, the output means 50b outputs the calculated data and time as decompressed one-dimensional time series data.
As described above, according to the sixth embodiment, the one-dimensional time series data compressed by the apparatus of the second embodiment can be decompressed at high speed by the dedicated hardware, and the number of data to be generated when performing the decompression is reduced. The original one-dimensional time-series data can be arbitrarily increased or decreased, and the number of generated data can be increased or decreased without impairing the properties of the data.

実施の形態7.
次に、実施の形態3の圧縮方法によりデータ圧縮された1次元時系列データを伸長する方法について説明する。
この実施の形態7では、図16(a)の形式と図16(b)の形式のデータが混在して供給されている場合について説明する。
Embodiment 7 FIG.
Next, a method for decompressing the one-dimensional time series data compressed by the compression method of the third embodiment will be described.
In the seventh embodiment, a case will be described in which data in the format of FIG. 16A and data in the format of FIG.

図21は実施の形態3の圧縮方法によりデータ圧縮された1次元時系列データ、即ち、図16(a)の形式と図16(b)の形式が混在してデータが供給されている場合のデータの伸長方法を示すものである。この伸長方法は4段階により構成されており、図において、図17と同一符号は同一または相当するものを示す。
P101bは圧縮データの形式の判別を行なうデータ形式判別処理、P101cは圧縮データが全て“0”であると判別された場合にその伸長を行う0データ伸長処理である。
FIG. 21 shows one-dimensional time-series data compressed by the compression method of the third embodiment, that is, the case where data is supplied in a mixture of the format of FIG. 16 (a) and the format of FIG. 16 (b). It shows a data decompression method. This decompression method is composed of four stages, and in the figure, the same reference numerals as those in FIG. 17 denote the same or corresponding elements.
P101b is a data format determination process for determining the format of the compressed data, and P101c is a 0 data expansion process for expanding the compressed data when it is determined that all the compressed data is “0”.

次にその伸長方法について説明する。図16(a)の形式でデータが供給された場合、データ形式判別処理P101bは、そのデータをデータ伸長処理P101aに渡し、以下、図17と同様にそのデータを伸長し、出力処理P5bにより出力する。
これに対し、図16(b)の形式でデータが供給された場合、データ形式判別処理P101bは、そのデータを0データ伸長処理P101cに渡し、所定の期間にわたって全てが“0”のデータを生成しこれを図17と同様に出力処理P5bにより出力する。
Next, the expansion method will be described. When data is supplied in the format of FIG. 16 (a), the data format determination process P101b passes the data to the data expansion process P101a, and then expands the data in the same manner as in FIG. 17 and outputs it by the output process P5b. To do.
On the other hand, when data is supplied in the format shown in FIG. 16B, the data format determination process P101b passes the data to the 0 data decompression process P101c, and generates all “0” data over a predetermined period. This is output by the output process P5b as in FIG.

図22はこの図21の伸長方法をより詳しく示したものである。
この図22に詳細が示された,図21の処理は例えば図3のコンピュータにより実行される。この場合、図3のコンピュータには、図22の処理に相当するプログラムが予め、あるいはプログラム記録媒体からロードされる等して記憶されている。
FIG. 22 shows the expansion method of FIG. 21 in more detail.
The process of FIG. 21, whose details are shown in FIG. 22, is executed by the computer of FIG. 3, for example. In this case, the computer of FIG. 3 stores a program corresponding to the processing of FIG. 22 in advance or loaded from a program recording medium.

図において、第1段階S41は図18の入力処理P101と同様の入力処理P101から構成されている。第2段階S42はデータ形式判別処理P106,0データ算出処理P107,時刻算出処理P108から構成されている。第3段階S43は図18の第2段階S32と同様、データ補間処理P102,データ算出処理P103,時刻算出処理P104から構成されている。第3段階S44は図18の出力処理P105と同様の出力処理P105から構成されている。   In the figure, the first step S41 includes an input process P101 similar to the input process P101 of FIG. The second stage S42 includes a data format discrimination process P106, a 0 data calculation process P107, and a time calculation process P108. The third stage S43 includes a data interpolation process P102, a data calculation process P103, and a time calculation process P104, as in the second stage S32 of FIG. The third stage S44 includes an output process P105 similar to the output process P105 of FIG.

次にその伸長方法について説明する。まず、第1段階S41において、入力処理P101により、1次元時系列データ圧縮方法で圧縮された圧縮データと伸長した時のデータ数を入力する。   Next, the expansion method will be described. First, in the first step S41, the compressed data compressed by the one-dimensional time series data compression method and the number of data when decompressed are input by the input process P101.

次に第2段階S42において、データ形式判別処理P106において、圧縮データの形式の判別を行ない、図16の(b)の形式の場合、つまり、圧縮データが全て“0”であることを示す識別子の場合は、0データ算出処理P107により、そのデータ数と同数分の“0”を算出し、時刻算出処理P108により、初期時間と時間間隔から時刻をデータ数分だけ算出する。これら算出された“0”データとその時刻は第4段階S44における出力処理P105により1次元時系列データとして出力される。   Next, in the second step S42, in the data format discrimination process P106, the format of the compressed data is discriminated, and in the case of the format of FIG. 16B, that is, an identifier indicating that all the compressed data is “0”. In this case, “0” corresponding to the number of data is calculated by the 0 data calculation process P107, and the time is calculated by the number of data from the initial time and the time interval by the time calculation process P108. The calculated “0” data and its time are output as one-dimensional time series data by the output process P105 in the fourth step S44.

これに対し、第3段階S43は、第2段階S42で圧縮データが全て“0”であることを示す識別子ではないと判別された場合、つまり図16の(a)の形式の場合で、この時は、図18の第2段階S32と同様に、圧縮する時に使用した補間関数によって圧縮データを補間し、データの連続化を図り、連続化されたものから入力処理で指定した個数分のデータを算出し、初期時間と時間間隔から時刻をデータと同数分だけ算出する。但し、補間関数は、圧縮の時と同様にインデックスを独立変数とする関数で、圧縮データのインデックス列の値を用いて補間関数を生成する。   On the other hand, the third stage S43 is a case where it is determined in the second stage S42 that the compressed data are not all “0” identifiers, that is, in the case of the format of FIG. At the same time as in the second step S32 of FIG. 18, the compressed data is interpolated by the interpolation function used at the time of compression, the data is made continuous, and the data corresponding to the number specified by the input processing is obtained from the continuous data. The time is calculated from the initial time and the time interval by the same number as the data. However, the interpolation function is a function having an index as an independent variable as in the case of compression, and an interpolation function is generated using the value of the index string of the compressed data.

そして、第4段階S44において、図18の第2段階S32と同様に、第2段階S42または第3段階S43で算出したデータと時刻を、データ伸長した1次元時系列データとして出力する。   Then, in the fourth stage S44, similarly to the second stage S32 in FIG. 18, the data and time calculated in the second stage S42 or the third stage S43 are output as one-dimensional time-series data expanded.

以上の伸長方法から分かるように、1次元時系列データを復元する時には、データ数は元のものとは異なった個数にも伸長できる。これは換言すると、1次元時系列データの時間変更を行なうことが可能であることを意味しており、その制御は入力されるデータ数によって行なうことが可能であることを意味している。   As can be seen from the above decompression method, when restoring one-dimensional time-series data, the number of data can be decompressed to a number different from the original one. In other words, this means that it is possible to change the time of the one-dimensional time-series data, and that control can be performed according to the number of input data.

このように、本実施の形態7によれば、実施の形態3の方法により情報圧縮された1次元時系列データを伸長でき、しかもその伸長を行うにあたって生成するデータの個数を元の1次元時系列データに対し任意に増減でき、かつその際データの性質を損なうことなく生成データの個数の増減を行うことができる1次元時系列データの伸長方法が得られる効果がある。   As described above, according to the seventh embodiment, the one-dimensional time-series data compressed by the method of the third embodiment can be decompressed, and the number of data generated when the decompression is performed is the original one-dimensional time. There is an advantage that a one-dimensional time-series data expansion method that can arbitrarily increase / decrease the series data and can increase / decrease the number of generated data without impairing the properties of the data is obtained.

実施の形態8.
実施の形態7では1次元時系列データ伸長処理をソフトウエアにより実現したが、このデータ伸長処理は専用のハードウエアにより実現してもよい。
図23は図21の処理フローを専用ハード化した時系列データ伸長装置を示すものであり、実施の形態4の圧縮装置によりデータ圧縮された1次元時系列データ、即ち、図16(a)の形式と図16(b)の形式が混在してデータが供給されている場合のデータの伸長装置を示すものである。図において、図19と同一符号は同一または相当するものを示す。20bは圧縮データの形式の判別を行なうデータ形式判別手段、20cは圧縮データが全て“0”であると判別された場合にその伸長を行う0データ伸長手段である。
Embodiment 8 FIG.
In the seventh embodiment, the one-dimensional time-series data expansion process is realized by software. However, the data expansion process may be realized by dedicated hardware.
FIG. 23 shows a time-series data decompression apparatus in which the processing flow of FIG. 21 is made into dedicated hardware. One-dimensional time-series data compressed by the compression apparatus of the fourth embodiment, that is, FIG. FIG. 17 shows a data decompression apparatus when data is supplied in a mixed format and the format of FIG. In the figure, the same reference numerals as those in FIG. 19 denote the same or corresponding parts. Reference numeral 20b denotes data format discrimination means for discriminating the format of the compressed data, and 20c denotes zero data decompression means for decompressing the compressed data when it is determined that all the compressed data is "0".

次にその伸長動作について説明する。図16(a)の形式でデータが供給された場合、データ形式判別手段20bは、そのデータをデータ伸長手段20aに渡し、以下、図19と同様にそのデータを伸長し、出力手段50bにより出力する。   Next, the decompression operation will be described. When data is supplied in the format of FIG. 16 (a), the data format discrimination means 20b passes the data to the data decompression means 20a, and thereafter decompresses the data in the same manner as in FIG. 19 and outputs it by the output means 50b. To do.

これに対し、図16(b)の形式でデータが供給された場合、データ形式判別手段20bは、そのデータを0データ伸長手段20cに渡し、所定の期間にわたって全てが“0”のデータを生成しこれを図19と同様に出力手段50bにより出力する。 On the other hand, when data is supplied in the format of FIG. 16 (b), the data format discrimination means 20b passes the data to the 0 data decompression means 20c and generates all “0” data over a predetermined period. This is output by the output means 50b as in FIG.

図24はこの図23の伸長装置をより詳しく示したものである。図において、図20と同一符号は同一または相当する部分を示す。24は入力されたデータの形式を判別するデータ形式判別手段、25は“0”データを算出する0データ算出手段、26は“0”データに対応する時刻を算出する時刻算出手段である。
次にその伸長動作について説明する。まず、入力手段50aにより、時系列データ圧縮装置で圧縮された圧縮データと伸長した時のデータ数を入力する。
FIG. 24 shows the expansion device of FIG. 23 in more detail. In the figure, the same reference numerals as those in FIG. 20 denote the same or corresponding parts. Reference numeral 24 denotes data format discrimination means for discriminating the format of input data, reference numeral 25 denotes zero data calculation means for calculating “0” data, and reference numeral 26 denotes time calculation means for calculating a time corresponding to “0” data.
Next, the decompression operation will be described. First, the input means 50a inputs the compressed data compressed by the time-series data compression device and the number of data when decompressed.

次に、データ形式判別手段24において、圧縮データの形式の判別を行ない、図16の(b)の形式の場合、つまり、圧縮データが全て“0”であることを示す識別子の場合は、0データ算出手段25により、そのデータ数と同数分の“0”を算出し、時刻算出手段26により、初期時間と時間間隔から時刻をデータ数分だけ算出する。これら算出された“0”データとその時刻は出力手段50bにより1次元時系列データとして出力される。   Next, the data format discriminating means 24 discriminates the format of the compressed data. In the case of the format of FIG. 16B, that is, in the case of an identifier indicating that all the compressed data is “0”, 0 The data calculation means 25 calculates “0” corresponding to the number of data, and the time calculation means 26 calculates the time by the number of data from the initial time and the time interval. The calculated “0” data and its time are output as one-dimensional time series data by the output means 50b.

これに対し、データ形式判別手段24において、圧縮データが全て“0”であることを示す識別子ではないと判別された場合、つまり図16の(a)の形式のデータが入力された場合は、図20と同様に、圧縮する時に使用した補間関数によって圧縮データを補間し、データの連続化を図り、連続化されたものから入力手段50aによって指定された個数分のデータを算出し、初期時間と時間間隔から時刻をデータと同数分だけ算出する。但し、補間関数は、圧縮の時と同様にインデックスを独立変数とし、圧縮データのインデックス列の値を用いて補間関数を生成する。
そして、出力手段50bにおいて、図20と同様に、算出したデータと時刻を、データ伸長した1次元時系列データとして出力する。
On the other hand, when the data format discriminating unit 24 discriminates that the compressed data is not an identifier indicating that all of the compressed data is “0”, that is, when data in the format of FIG. As in FIG. 20, the compressed data is interpolated by the interpolation function used at the time of compression, the data is made continuous, the number of data designated by the input means 50a is calculated from the continuous data, and the initial time The time is calculated from the time interval by the same number as the data. However, the interpolation function uses an index as an independent variable as in the compression, and generates an interpolation function using the value of the index string of the compressed data.
Then, the output means 50b outputs the calculated data and time as one-dimensional time-series data obtained by decompressing data, as in FIG.

このように、本実施の形態8によれば、実施の形態4の装置により情報圧縮された1次元時系列データを専用ハードウエアで高速に伸長でき、しかもその伸長を行うにあたって生成するデータの個数を元の1次元時系列データに対し任意に増減でき、かつその際データの性質を損なうことなく生成データの個数の増減を行うことができる効果がある。   As described above, according to the eighth embodiment, the one-dimensional time-series data compressed by the apparatus of the fourth embodiment can be decompressed at high speed by dedicated hardware, and the number of data generated when the decompression is performed. Can be arbitrarily increased / decreased from the original one-dimensional time-series data, and the number of generated data can be increased / decreased without impairing the properties of the data.

実施の形態9.
なお、本発明は1次元の時系列データにのみ適用できるものではなく、多次元の、即ち複数の1次元時系列データに関する圧縮,伸長に対しても、同様の圧縮,伸長方法や圧縮,伸長装置を適用して実現できる。
例えば、複数の1次元時系列データに対する圧縮は、本発明の実施の形態1,3による圧縮方法や実施の形態2,4による圧縮装置を繰り返し使用することでこれを実行できる。
Embodiment 9 FIG.
Note that the present invention is not applicable only to one-dimensional time series data, and the same compression, decompression method, and compression / decompression are applicable to compression and decompression of multidimensional, that is, a plurality of one-dimensional time series data. It can be realized by applying the device.
For example, compression for a plurality of one-dimensional time series data can be performed by repeatedly using the compression method according to the first and third embodiments of the present invention and the compression device according to the second and fourth embodiments.

本実施の形態9では、このような多次元の時系列データに対しその圧縮を行う場合について、Motion Data Compressionを例にとって説明する。
このMotion Data Compressionは既に述べたように、人を剛体多関節物体とみなしてその動きを表現する場合に、人の動きを表現する多次元時系列データのデータ量を圧縮するための手法である。
In the ninth embodiment, a case where such multidimensional time-series data is compressed will be described using Motion Data Compression as an example.
This Motion Data Compression is a technique for compressing the data amount of multi-dimensional time-series data that expresses the movement of a person when the movement is expressed by regarding the person as a rigid articulated object as described above. .

Motion Dataは人をモデルとする剛体多関節物体の代表点位置の並進ベクトルと、姿勢ベクトルの3次元空間の座標軸に対する回転量と、各ジョイント(関節)の並進ベクトルと、局所座標系の各座標軸に対する回転量で構成される。   Motion Data is a translation vector of representative point positions of a rigid and articulated object modeled on a person, a rotation amount of a posture vector with respect to a coordinate axis in a three-dimensional space, a translation vector of each joint (joint), and each coordinate axis of a local coordinate system. The amount of rotation for

つまり、剛体多関節物体のジョイント数をm、時系列の長さをnとすると、Motion Dataは
{Mi =(Cxi,Cyi,Czi,θi Cx,θi Cy,θi Cz,xi jt0,yi jt0,zi jt0,θi jtx0,θi jty0,θi jtz0,・・・,xi jtm-1,yi jtm-1,zi jtm-1,θi jtxm-1,θi jtym-1,θi jtzm-1)|i=0,1,・・・,n−1}
で与えられる。但し、この例では回転の順序をx軸,y軸,z軸の順に設定しており、Cxi,Cyi,Czi はルート、即ち剛体上の位置の基準となるポイントの座標値、θi Cx,θi Cy,θi Czはジョイントの姿勢制御角、xi jt0,yi jt0,zi jt0はジョイントのスライド量、θi jtx0,θi jty0,θi jtz0,・・・,xi jtm-1,yi jtm-1,zi jtm-1,θi jtxm-1,θi jtym-1,θi jtzm-1はm個のジョイントのx軸,y軸,z軸回りの回転角である。
That is, if the number of joints of the rigid articulated object is m and the length of the time series is n, the Motion Data is {M i = (Cx i, Cy i, Cz i, θ i Cx , θ i Cy , θ i Cz , X i jt0 , y i jt0 , z i jt0 , θ i jtx0 , θ i jty0 , θ i jtz0 ,..., X i jtm−1 , y i jtm−1 , z i jtm−1 , θ i jtxm −1 , θ i jtym−1 , θ i jtzm−1 ) | i = 0, 1,..., N−1}
Given in. However, in this example, the order of rotation is set in the order of x-axis, y-axis, and z-axis, and Cx i, Cy i, and Cz i are the coordinate values of the root, that is, the reference point of the position on the rigid body, θ i Cx , θ i Cy , θ i Cz are joint attitude control angles, x i jt0 , y i jt0 , z i jt0 are joint slide amounts, θ i jtx0 , θ i jty0 , θ i jtz0,. x i jtm-1 , y i jtm-1 , z i jtm-1 , θ i jtxm-1 , θ i jtym-1 , θ i jtzm-1 are the x, y, and z axes of the m joints Is the rotation angle.

図25はこのMotion Dataの圧縮方法を示すもので、図において、P200はMotion Dataを入力するMotion Data入力処理、P201は多次元の時系列データであるMotion Dataを次元数と同数の1次元の時系列データに分解する多次元時系列データ分解処理、P202は分解された1次元の時系列データを実施の形態1あるいは実施の形態3の圧縮方法を用いて圧縮する1次元時系列データ圧縮処理、P203は次元数と同数の1次元時系列データの圧縮が全て終了したか否かを判定する判定処理、P204は圧縮された多次元の時系列データを出力する出力処理である。
図25の処理は、例えば、図3のコンピュータにより、実行される。この場合、図3のコンピュータのメインメモリ3には、図25の処理に相当するプログラムが予め、あるいはプログラム記録媒体からロードされる等して記憶されている。
FIG. 25 shows this Motion Data compression method. In FIG. 25, P200 is Motion Data input processing for inputting Motion Data, and P201 is Motion Data that is multi-dimensional time-series data. Multidimensional time-series data decomposition processing that decomposes into time-series data, P202 is a one-dimensional time-series data compression processing that compresses the decomposed one-dimensional time-series data using the compression method of the first or third embodiment. P203 is a determination process for determining whether or not the compression of the same number of one-dimensional time-series data as the number of dimensions has been completed, and P204 is an output process for outputting the compressed multi-dimensional time-series data.
The process in FIG. 25 is executed by, for example, the computer in FIG. In this case, the main memory 3 of the computer in FIG. 3 stores a program corresponding to the processing in FIG. 25 in advance or loaded from a program recording medium.

次にその処理について説明する。まず、入力処理P200により、多次元時系列データとしてのMotion Dataを入力する。次に、分解処理P201により、Motion Dataを要素毎の1次元の時系列データに分解し、各1次元時系列データにインデックス番号を与える。   Next, the process will be described. First, in the input process P200, Motion Data as multidimensional time series data is input. Next, by the decomposition process P201, Motion Data is decomposed into one-dimensional time-series data for each element, and an index number is given to each one-dimensional time-series data.

この分解処理P201以降の処理は実施の形態1または実施の形態3の1次元時系列データの圧縮方法と同様のものである。
即ち、分解処理P201の後の1次元時系列データ圧縮処理P202により、実施の形態1または実施の形態3と同様の圧縮方法により、分解後の各々の1次元時系列データに対し圧縮処理を行う。
そして、判定処理P203により、全ての1次元時系列データに対し圧縮処理を行ったと判定された時に、出力処理P204により、圧縮された各々の1次元時系列データ、即ち圧縮された,多次元のMotion Dataを出力する。
The processes after the decomposition process P201 are the same as the one-dimensional time-series data compression method according to the first or third embodiment.
That is, the one-dimensional time-series data compression process P202 after the decomposition process P201 performs compression processing on each one-dimensional time-series data after decomposition by the same compression method as in the first or third embodiment. .
Then, when it is determined by the determination process P203 that compression processing has been performed on all the one-dimensional time series data, each of the compressed one-dimensional time series data, that is, the compressed multidimensional data is output by the output process P204. Outputs Motion Data.

このように、本実施の形態9によれば、多次元時系列データを複数の1次元時系列データに圧縮して、各1次元時系列データ毎に実施の形態1または実施の形態3と同様の圧縮方法を適用して圧縮を行うようにしたので、或る1次元時系列データに関して、元の1次元時系列データと補間関数との誤差が少なくデータの圧縮が行われないような区間が存在したとしても、この区間と同じ区間に関して残りの1次元時系列データのなかにはデータ圧縮できるものが存在することが多いため、多次元時系列データ全体として見れば、元の1/4ないし1/5程度にデータ圧縮を行うことが可能となる。
この多次元時系列データとして、例えば、剛体多関節物(人間)の関節角の時系列データを使用した場合に関する実験では、近似精度にも依存するが、圧縮率0.168ないし0.264を得ることができた。
Thus, according to the ninth embodiment, multidimensional time series data is compressed into a plurality of one-dimensional time series data, and each one-dimensional time series data is the same as in the first or third embodiment. Since compression is performed by applying the compression method, there is an interval in which, with respect to certain one-dimensional time-series data, there is little error between the original one-dimensional time-series data and the interpolation function, and data compression is not performed. Even if it exists, in many cases, the remaining one-dimensional time-series data can be compressed with respect to the same section as this section. Therefore, when viewed as the whole multi-dimensional time-series data, the original 1/4 to 1 / Data compression can be performed to about 5.
As an example of this multi-dimensional time-series data, for example, in the case of using the time-series data of the joint angle of a rigid multi-joint object (human), the compression rate is 0.168 to 0.264, depending on the approximation accuracy. I was able to get it.

なお、このような、剛体多関節の各関節角の動作を表す1次元時系列データの場合には、誤差が動作の先端に向かって累積していく。従って、近似精度を一定にする場合には、そのような関係のない1次元時系列データに対して用いた値より小さくする必要が生じるが、この場合は、全体の圧縮率が低下することになる。このような不具合を避けるためには、近似精度を一定とせずに、剛体多関節物体の元の方の関節に関しては近似精度を通常の場合より小さくとり、先頭に向かって近似精度を順次増加させて用いることで、圧縮率の低下を、近似精度を一定にしておく場合よりは防ぐことができる。
また、時間に関して不等間隔な1次元時系列データに対しては、時間とデータの各々を独立した1次元のデータとして本実施の形態9の多次元時系列データ圧縮方法を適用し、各々を独立に圧縮すればよい。
Note that in the case of such one-dimensional time-series data representing the motion of each joint angle of a rigid multi-joint, errors accumulate toward the tip of the motion. Therefore, in order to make the approximation accuracy constant, it is necessary to make it smaller than the value used for the one-dimensional time-series data having no such relationship, but in this case, the overall compression rate is reduced. Become. In order to avoid such problems, the approximation accuracy is not constant and the approximation accuracy of the original joint of the rigid and articulated object is made smaller than usual, and the approximation accuracy is gradually increased toward the top. Therefore, the compression rate can be prevented from lowering than when the approximation accuracy is kept constant.
In addition, for one-dimensional time-series data with unequal intervals with respect to time, the multi-dimensional time-series data compression method according to the ninth embodiment is applied to time and data as independent one-dimensional data, What is necessary is just to compress independently.

実施の形態10.
実施の形態9は多次元の時系列データの圧縮処理をソフトウエアにより実現したが、このデータ圧縮処理は専用のハードウエアにより実現してもよい。
図26は図25の処理フローを専用ハード化した多次元時系列データ圧縮装置を示すものであり、図において、100aはMotion Dataを入力するMotion Data入力手段、51は多次元の時系列データであるMotion Dataをその次元と同数の1次元の時系列データに分解する多次元時系列データ分解手段、52は分解された1次元の時系列データを実施の形態2あるいは実施の形態4の圧縮装置と同様の構成を用いて圧縮する1次元時系列データ圧縮手段、53は次元数と同数の1次元時系列データの圧縮が全て終了したか否かを判定する判定手段、100bは圧縮された,多次元の時系列データを出力する出力手段である。
Embodiment 10 FIG.
In the ninth embodiment, the compression processing of multi-dimensional time series data is realized by software. However, this data compression processing may be realized by dedicated hardware.
FIG. 26 shows a multi-dimensional time-series data compression apparatus in which the processing flow of FIG. 25 is made into dedicated hardware. In the figure, 100a is a Motion Data input means for inputting Motion Data, and 51 is multi-dimensional time-series data. Multidimensional time-series data decomposing means for decomposing a certain Motion Data into the same number of one-dimensional time-series data, 52 is the compression apparatus of the second or fourth embodiment for decomposing one-dimensional time-series data 1-dimensional time-series data compressing means for compressing using the same configuration as the above, 53 is a determining means for determining whether or not the compression of the same number of one-dimensional time-series data as the number of dimensions has been completed, 100b is compressed, It is an output means for outputting multidimensional time series data.

次にその動作について説明する。まず、入力手段100aにより、多次元時系列データとしてのMotion Dataを入力する。次に、多次元時系列データ分解手段51により、Motion Dataを要素毎の1次元の時系列データに分解し、各1次元時系列データにインデックス番号を与える。
この分解手段51以降の動作は実施の形態2または実施の形態4の1次元時系列データの圧縮動作と同様のものである。
即ち、分解手段51の後の1次元時系列データ圧縮手段52により、実施の形態2または実施の形態4と同様の圧縮動作により、分解後の各々の1次元時系列データに対し圧縮処理を行う。
Next, the operation will be described. First, Motion Data as multidimensional time series data is input by the input means 100a. Next, the multi-dimensional time series data decomposition means 51 decomposes the Motion Data into one-dimensional time series data for each element, and gives an index number to each one-dimensional time series data.
The operation after the decomposing means 51 is the same as the one-dimensional time-series data compression operation in the second or fourth embodiment.
That is, the one-dimensional time-series data compression means 52 after the decomposition means 51 performs compression processing on each one-dimensional time-series data after decomposition by the same compression operation as in the second or fourth embodiment. .

そして、判定手段53により、全ての1次元時系列データに対し圧縮処理を行ったと判定された時に、出力手段100bにより、圧縮された各々の1次元時系列データ、即ち圧縮された多次元のMotion Dataを出力する。   When the determination unit 53 determines that all the one-dimensional time series data has been compressed, the output unit 100b compresses each one-dimensional time series data, that is, compressed multi-dimensional Motion. Data is output.

このように、本実施の形態10によれば、多次元時系列データを複数の1次元時系列データに圧縮して、各1次元時系列データ毎に実施の形態2または実施の形態4と同様の圧縮動作を適用して圧縮を行うようにしたので、専用ハードにより高速に圧縮動作を実行することができ、しかも、或る1次元時系列データに関して、元の1次元時系列データと補間関数との誤差が少なくデータの圧縮が行われないような区間が存在したとしても、この区間と同じ区間に関して残りの1次元時系列データのなかにはデータ圧縮できるものが存在することが多いため、多次元時系列データ全体として見れば、元の1/4ないし1/5程度にデータ圧縮を行うことが可能となる。
この多次元時系列データとして、例えば、剛体多関節物(人間)の関節角の時系列データを使用した場合に関する実験では、近似精度にも依存するが、圧縮率0.168ないし0.264を得ることができた。
Thus, according to the tenth embodiment, multidimensional time series data is compressed into a plurality of one-dimensional time series data, and each one-dimensional time series data is the same as in the second embodiment or the fourth embodiment. Therefore, the compression operation can be performed at high speed by using dedicated hardware, and the original one-dimensional time series data and the interpolation function can be obtained with respect to certain one-dimensional time series data. Even if there is a section where data is not compressed and data is not compressed, the remaining one-dimensional time-series data for the same section as this section often contains data that can be compressed. When viewed as the entire time-series data, data compression can be performed to about 1/4 to 1/5 of the original time series data.
As an example of this multi-dimensional time-series data, for example, in the case of using the time-series data of the joint angle of a rigid multi-joint object (human), the compression rate is 0.168 to 0.264, depending on the approximation accuracy. I was able to get it.

なお、このような、剛体多関節の各関節角の動作を表す1次元時系列データの場合には、誤差が動作の先端に向かって累積していく。従って、近似精度を一定にする場合には、そのような関係のない1次元時系列データに対して用いた値より小さくする必要が生じるが、この場合は、全体の圧縮率が低下することになる。このような不具合を避けるためには、近似精度を一定とせずに、剛体多関節物体の元の方の関節に関しては近似精度を通常の場合より小さくとり、先頭に向かって近似精度を増加させて用いることで、圧縮率の低下を、近似精度を一定にしておく場合よりは防ぐことができる。
また、時間に関して不等間隔な1次元時系列データに対しては、時間とデータの各々を独立した1次元のデータとして本実施の形態10の多次元時系列データ圧縮装置を適用し、各々を独立に圧縮すればよい。
Note that in the case of such one-dimensional time-series data representing the motion of each joint angle of a rigid multi-joint, errors accumulate toward the tip of the motion. Therefore, in order to make the approximation accuracy constant, it is necessary to make it smaller than the value used for the one-dimensional time-series data having no such relationship, but in this case, the overall compression rate is reduced. Become. In order to avoid such a problem, the approximation accuracy is not constant, but the approximation accuracy of the original joint of the rigid articulated object is made smaller than usual, and the approximation accuracy is increased toward the top. By using this, it is possible to prevent the compression rate from being lowered than when the approximation accuracy is kept constant.
In addition, for one-dimensional time-series data with unequal intervals with respect to time, the multi-dimensional time-series data compression apparatus according to the tenth embodiment is applied to time and data as independent one-dimensional data. What is necessary is just to compress independently.

実施の形態11.
本実施の形態11では、実施の形態9により圧縮された多次元時系列データの伸長方法を扱うものである。図27は図25の圧縮方法により圧縮されたMotion Dataの伸長を例にとってその伸長方法を示すもので、図において、P300は圧縮されたMotion Dataを入力する多次元圧縮データ入力処理、P301は圧縮された多次元の時系列データを複数の,圧縮された1次元の時系列データに分解する多次元圧縮データ分解処理、P302は分解された1次元の時系列データを実施の形態5あるいは実施の形態7の伸長方法を用いて伸長する1次元時系列データ伸長処理、P303は一連の1次元時系列データの伸長が終了したか否かを判定する判定処理、P304は伸長された一連の1次元時系列データを出力する出力処理である。
この図27の処理は、例えば図3のコンピュータにより実行される。この場合、図3のコンピュータのメインメモリ3には、図27の処理に相当するプログラムが予め、あるいはプログラム記録媒体からロードされる等して記憶されている。
Embodiment 11 FIG.
In the eleventh embodiment, the multidimensional time-series data decompression method compressed according to the ninth embodiment is handled. FIG. 27 shows an example of decompression of Motion Data compressed by the compression method of FIG. 25. In FIG. 27, P300 is a multidimensional compressed data input process for inputting compressed Motion Data, and P301 is a compression. Multi-dimensional compressed data decomposition processing for decomposing the multi-dimensional time-series data into a plurality of compressed one-dimensional time-series data, and P302 represents the decomposed one-dimensional time-series data in Embodiment 5 or One-dimensional time-series data decompression process that decompresses using the decompression method of aspect 7, P303 is a determination process that determines whether or not a series of one-dimensional time-series data has been decompressed, and P304 is a series of decompressed one-dimensional data This is an output process for outputting time series data.
The processing in FIG. 27 is executed by, for example, the computer in FIG. In this case, the main memory 3 of the computer of FIG. 3 stores a program corresponding to the processing of FIG. 27 in advance or loaded from a program recording medium.

次にその処理フローについて説明する。まず、入力処理P300により、圧縮されたMotion Dataを入力する。次に、分解処理P301により、圧縮されたMotion Dataを要素毎の1次元の圧縮時系列データに分解し、各圧縮1次元時系列データにインデックス番号を与える。
この分解処理P301以降の処理は実施の形態5または実施の形態7の1次元時系列データの伸長方法と同様のものである。
即ち、分解処理P301の後の1次元時系列データ伸長処理P302により、実施の形態5または実施の形態7と同様の伸長方法により、分解後の各々の1次元時系列データに対し伸長処理を行う。
Next, the processing flow will be described. First, in the input process P300, the compressed Motion Data is input. Next, in the decomposition process P301, the compressed Motion Data is decomposed into one-dimensional compressed time series data for each element, and an index number is given to each compressed one-dimensional time series data.
The processes after the decomposition process P301 are the same as the one-dimensional time-series data expansion method according to the fifth or seventh embodiment.
That is, by the one-dimensional time-series data expansion process P302 after the decomposition process P301, the expansion process is performed on each one-dimensional time-series data after decomposition by the same expansion method as in the fifth or seventh embodiment. .

そして、判定処理P303により、全ての1次元時系列データに対し伸長処理を行ったと判定された時に、出力処理P304により、圧縮された各々の1次元時系列データ、即ち伸長された多次元のMotion Dataを出力する。
このように、本実施の形態11によれば、圧縮された多次元時系列データを複数の1次元時系列データに分解して、各1次元時系列データ毎に実施の形態5または実施の形態7と同様の伸長方法を適用して伸長を行うようにしたので、多次元の圧縮された時系列データに対してもその伸長処理を行うことができる。
When it is determined that the decompression process has been performed on all the one-dimensional time series data by the determination process P303, each of the compressed one-dimensional time series data, that is, the decompressed multidimensional Motion is output by the output process P304. Data is output.
As described above, according to the eleventh embodiment, the compressed multidimensional time-series data is decomposed into a plurality of one-dimensional time-series data, and the five-dimensional or fifth embodiment is obtained for each one-dimensional time-series data. Since the decompression method similar to 7 is applied, the decompression process can be performed even on multi-dimensional compressed time-series data.

そしてその伸長を行う際、生成するデータの個数は元のデータとは異なる個数に設定することが可能なため、特にMotion Dataを伸長する場合、元のデータに比べて生成するデータの個数を増すことにより、元の剛体多関節物体よりも遅く動作する剛体多関節物体の映像を生成したり、逆に生成するデータの個数を減らすことにより、元の剛体多関節物体よりも速く動作する剛体多関節物体の映像を生成したりすることが可能であり、物体の動作の編集を容易に行うことが可能となる。   When the decompression is performed, the number of data to be generated can be set to a number different from that of the original data. Therefore, particularly when decompressing Motion Data, the number of data to be generated is increased compared to the original data. Therefore, by generating images of rigid articulated objects that move slower than the original rigid articulated object, or by reducing the number of data to be generated in reverse, the rigid body moving faster than the original rigid articulated object It is possible to generate an image of a joint object, and it is possible to easily edit the motion of the object.

実施の形態12.
実施の形態11は多次元の時系列データの伸長処理をソフトウエアにより実現したが、このデータ伸長処理は専用のハードウエアにより実現してもよい。
図28は図27の処理フローを専用ハード化した多次元時系列データ伸長装置を示すものであり、図において、200aは圧縮されたMotion Dataを入力する多次元圧縮データ入力手段、61は圧縮された多次元の時系列データを複数の,圧縮された1次元の時系列データに分解する多次元圧縮データ分解手段、62は分解された1次元の時系列データを実施の形態6あるいは実施の形態8の伸長装置と同様の構成を用いて伸長する1次元時系列データ伸長手段、63は一連の1次元時系列データの伸長が終了したか否かを判定する判定手段、200bは伸長された一連の1次元時系列データを出力する出力処理である。
Embodiment 12 FIG.
In the eleventh embodiment, the expansion processing of multidimensional time series data is realized by software, but this data expansion processing may be realized by dedicated hardware.
FIG. 28 shows a multidimensional time-series data decompression apparatus in which the processing flow of FIG. 27 is implemented as dedicated hardware. In FIG. 28, 200a is multidimensional compressed data input means for inputting compressed Motion Data, and 61 is compressed. Multidimensional compressed data decomposing means for decomposing the multidimensional time-series data into a plurality of compressed one-dimensional time-series data, and 62 is the sixth embodiment or the sixth embodiment. 1 is a one-dimensional time-series data decompression unit that decompresses using the same configuration as the decompression apparatus 8; 63 is a determination unit that determines whether or not a series of one-dimensional time-series data has been decompressed; and 200b is a decompressed series. Output processing for outputting the one-dimensional time-series data.

次にその動作について説明する。まず、入力手段200aにより、圧縮されたMotion Dataを入力する。次に、分解手段61により、圧縮されたMotion Dataを要素毎の1次元の圧縮時系列データに分解し、各圧縮1次元時系列データにインデックス番号を与える。
この分解手段61以降の処理は実施の形態6または実施の形態8の1次元時系列データの伸長装置と同様のものである。
即ち、分解手段61の後の1次元時系列データ伸長手段62により、実施の形態6または実施の形態8と同様の伸長装置により、分解後の各々の1次元時系列データに対し伸長処理を行う。
Next, the operation will be described. First, the compressed motion data is input by the input means 200a. Next, the decomposition unit 61 decomposes the compressed Motion Data into one-dimensional compressed time series data for each element, and gives an index number to each compressed one-dimensional time series data.
The processing after the decomposing means 61 is the same as that of the one-dimensional time-series data expansion apparatus of the sixth embodiment or the eighth embodiment.
That is, the one-dimensional time-series data expansion means 62 after the decomposition means 61 performs expansion processing on each one-dimensional time-series data after decomposition by the expansion device similar to that of the sixth embodiment or the eighth embodiment. .

そして、判定手段63により、全ての1次元時系列データに対し伸長処理を行ったと判定された時に、出力手段200bにより、圧縮された各々の1次元時系列データ、即ち伸長された多次元のMotion Dataを出力する。
このように、本実施の形態12によれば、圧縮された多次元時系列データを複数の1次元時系列データに分解して、各1次元時系列データ毎に実施の形態6または実施の形態8と同様の伸長装置を適用して伸長を行うようにしたので、多次元の圧縮された時系列データに対してもその伸長処理を専用ハードにより高速に行うことができる。
When the determining unit 63 determines that all the one-dimensional time series data has been decompressed, the output unit 200b compresses each compressed one-dimensional time series data, that is, decompressed multidimensional Motion. Data is output.
Thus, according to the twelfth embodiment, the compressed multi-dimensional time series data is decomposed into a plurality of one-dimensional time series data, and the sixth embodiment or the sixth embodiment is obtained for each one-dimensional time series data. Since the decompression device similar to 8 is applied to perform decompression, the decompression processing can be performed at high speed even for multi-dimensional compressed time-series data using dedicated hardware.

そしてその伸長を行う際、生成するデータの個数は元のデータとは異なる個数に設定することが可能なため、特にMotion Dataを伸長する場合、元のデータに比べて生成するデータの個数を増すことにより、元の剛体多関節物体よりも遅く動作する剛体多関節物体の映像を生成したり、逆に生成するデータの個数を減らすことにより、元の剛体多関節物体よりも速く動作する剛体多関節物体の映像を生成したりすることが可能であり、物体の動作の編集を容易に行うことが可能となる。   When the decompression is performed, the number of data to be generated can be set to a number different from that of the original data. Therefore, particularly when decompressing Motion Data, the number of data to be generated is increased compared to the original data. Therefore, by generating images of rigid articulated objects that move slower than the original rigid articulated object, or by reducing the number of data to be generated in reverse, the rigid body moving faster than the original rigid articulated object It is possible to generate an image of a joint object, and it is possible to easily edit the motion of the object.

以上のように、本発明にかかる時系列データ圧縮方法、時系列データ圧縮プログラムを記録した記録媒体、および時系列データ圧縮装置は、3次元CG画像として表現された剛体多関節物体を表わす多次元時系列データを分解した1次元時系列データを圧縮する用途に用いて好適である。   As described above, the time-series data compression method, the recording medium on which the time-series data compression program is recorded, and the time-series data compression apparatus according to the present invention are multidimensional representing a rigid articulated object expressed as a three-dimensional CG image. It is suitable for use for compressing one-dimensional time series data obtained by decomposing time series data.

本発明の実施の形態1における時系列データ圧縮方法の処理構成図。The processing block diagram of the time series data compression method in Embodiment 1 of this invention. 本発明の実施の形態1における時系列データ圧縮方法の処理構成図。The processing block diagram of the time series data compression method in Embodiment 1 of this invention. 本発明の各実施の形態における時系列データ圧縮方法,時系列データ伸長方法の実行に使用するコンピュータを示す図。The figure which shows the computer used for execution of the time series data compression method in each embodiment of this invention, and a time series data expansion | extension method. 本発明の実施の形態2における時系列データ圧縮装置の構成図。The block diagram of the time series data compression apparatus in Embodiment 2 of this invention. 本発明の実施の形態2における時系列データ圧縮装置の構成図。The block diagram of the time series data compression apparatus in Embodiment 2 of this invention. 本発明の実施の形態3における時系列データ圧縮方法の処理構成図。The processing block diagram of the time series data compression method in Embodiment 3 of this invention. 本発明の実施の形態3における時系列データ圧縮方法の処理構成図。The processing block diagram of the time series data compression method in Embodiment 3 of this invention. 本発明の実施の形態4における時系列データ圧縮装置の構成図。The block diagram of the time series data compression apparatus in Embodiment 4 of this invention. 本発明の実施の形態4における時系列データ圧縮装置の構成図。The block diagram of the time series data compression apparatus in Embodiment 4 of this invention. 準最適節点候補の第1の決定方法の説明図。Explanatory drawing of the 1st determination method of a suboptimal node candidate. 準最適節点候補の第2の決定方法の説明図。Explanatory drawing of the 2nd determination method of a suboptimal node candidate. 1次元時系列データの説明図。Explanatory drawing of 1-dimensional time series data. 1次元時系列データの節点候補の説明図。Explanatory drawing of the node candidate of 1-dimensional time series data. 1次元時系列データの節点候補による補間の説明図。Explanatory drawing of the interpolation by the node candidate of 1-dimensional time series data. 準最適節点候補の選択方法の説明図。Explanatory drawing of the selection method of a suboptimal node candidate. 圧縮データ形式の説明図。Explanatory drawing of a compression data format. 本発明の実施の形態5における時系列データ伸長方法の処理構成図。The processing block diagram of the time series data expansion | extension method in Embodiment 5 of this invention. 本発明の実施の形態5における時系列データ伸長方法の処理構成図。The processing block diagram of the time series data expansion | extension method in Embodiment 5 of this invention. 本発明の実施の形態6における時系列データ伸長装置の構成図。The block diagram of the time series data expansion | extension apparatus in Embodiment 6 of this invention. 本発明の実施の形態6における時系列データ伸長装置の構成図。The block diagram of the time series data expansion | extension apparatus in Embodiment 6 of this invention. 本発明の実施の形態7における時系列データ伸長方法の処理構成図。The processing block diagram of the time series data expansion | extension method in Embodiment 7 of this invention. 本発明の実施の形態7における時系列データ伸長方法の処理構成図。The processing block diagram of the time series data expansion | extension method in Embodiment 7 of this invention. 本発明の実施の形態8における時系列データ伸長装置の構成図。The block diagram of the time series data expansion | extension apparatus in Embodiment 8 of this invention. 本発明の実施の形態8における時系列データ伸長装置の構成図。The block diagram of the time series data expansion | extension apparatus in Embodiment 8 of this invention. 本発明の実施の形態9における多次元時系列データ圧縮方法の処理構成図。The processing block diagram of the multidimensional time series data compression method in Embodiment 9 of this invention. 本発明の実施の形態10における多次元時系列データ圧縮装置の構成図。The block diagram of the multidimensional time series data compression apparatus in Embodiment 10 of this invention. 本発明の実施の形態11における多次元時系列データ圧縮方法の処理構成図。The processing block diagram of the multidimensional time series data compression method in Embodiment 11 of this invention. 本発明の実施の形態12における多次元時系列データ圧縮方法の構成図。The block diagram of the multidimensional time series data compression method in Embodiment 12 of this invention.

符号の説明Explanation of symbols

P1a,P1b,P1c,P1d,P1e,P1f,P4a,P5a,P4b,P5b,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P41,P42,P43,P44,P45,P46,P47,P48,P49,P50,P51,P52,P53,P54,P55,P56,P57,P58,P59,P61,P62,P63,P64,P65,P66,P67,P68,P69,P70,P71,P72,P73,P74,P75,P76,P77,P78,P79,P101,P101a,P102,P103,P104,P105,P106,P107,P108,P200,P201,P202,P203,P204 処理、
S1,S2,S3,S4,S5,S6,S7,S8,S9,S11,S12,S13,S14,S15,S16,S17,S18,S19,S20 段階
1 CPU
2 データメモリ
3 メインメモリ
4 入出力装置
5 バス
6 外部記憶装置
40a,50a 入力手段
10a 節点候補算出手段
10b 節点位置最適化手段
10c 判定手段
10d 節点数最適化手段
10e 判定手段
10f 判定手段
20a データ伸長手段
20b データ形式判別手段
20c 0データ伸長手段
21 データ補間手段
22 データ算出手段
23 時刻算出手段
24 データ形式判別手段
25 0データ算出手段
26 時刻算出手段
40b,50b 出力手段
11 インデックス付加手段
12 初期節点数算出手段
13 節点候補決定手段
14 補間手段
15 誤差算出手段
16 第1目的関数算出手段
17 準最適節点候補決定手段
18 補間実行手段
19 誤差算出手段
20 第2目的関数算出手段
21 閾値判定手段
22 節点数変更手段
23 近似精度内判定手段
P1a, P1b, P1c, P1d, P1e, P1f, P4a, P5a, P4b, P5b, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P21, P22, P23, P24, P25, P26, P27, P28, P29, P30, P31, P32, P33, P34, P35, P41, P42, P43, P44, P45, P46, P47, P48, P49, P50, P51, P52, P53, P54, P55, P56, P57, P58, P59, P61, P62, P63, P64, P65, P66, P67, P68, P69, P70, P71, P72, P73, P74, P75, P76, P77, P78, P79, P101, P101a, P102, P103, P104, P105, P10 , P107, P108, P200, P201, P202, P203, P204 processing,
S1, S2, S3, S4, S5, S6, S7, S8, S9, S11, S12, S13, S14, S15, S16, S17, S18, S19, S20 Stage 1 CPU
2 Data memory 3 Main memory 4 Input / output device 5 Bus 6 External storage device 40a, 50a Input means 10a Node candidate calculation means 10b Node position optimization means 10c Judgment means 10d Node number optimization means 10e Judgment means 10f Judgment means 20a Data expansion Means 20b Data format discrimination means 20c 0 Data expansion means 21 Data interpolation means 22 Data calculation means 23 Time calculation means 24 Data format discrimination means 25 0 Data calculation means 26 Time calculation means 40b, 50b Output means 11 Index addition means 12 Initial node number Calculation means 13 Node candidate determination means 14 Interpolation means 15 Error calculation means 16 First objective function calculation means 17 Suboptimal node candidate determination means 18 Interpolation execution means 19 Error calculation means 20 Second objective function calculation means 21 Threshold determination means 22 Number of nodes Change hand Stage 23 Means for determining within approximate accuracy

Claims (3)

CG画像処理分野における1次元時系列データの圧縮方法であって、
前記1次元時系列データと近似精度の入力を行う第1の工程と、
前記1次元時系列データを近似する補間関数の節点候補を算出する第2の工程と、
前記節点候補に基づき前記補間関数により発生した1次元時系列データと元の1次元時系列データとの誤差を算出し、誤差の最大値と誤差の平均値と誤差の分散との重み付け加算で算出される第1の目的関数の値を算出する第3の工程と、
前記第1の目的関数の値が最小となるように節点候補の変更を繰り返し行い、準最適節点候補を決定する第4の工程と、
前記第4の工程で算出した目的関数の最小値が前記近似精度に基づいて定めた閾値を越えると判断された場合に、節点候補数を変更し、前記第2の工程に戻る第5の工程と、
前記第4の工程で算出した目的関数の最小値が前記近似精度に基づいて定めた閾値を超えないと判断された場合に、当該準最適節点候補のデータとこれに対応する時刻のデータとを圧縮された情報として出力する第6の工程とを含む、
ことを特徴とする時系列データ圧縮方法。
A compression method for one-dimensional time series data in the field of CG image processing,
A first step of inputting the one-dimensional time series data and approximate accuracy;
A second step of calculating node candidates of an interpolation function approximating the one-dimensional time series data;
Calculates the error between the one-dimensional time series data generated by the interpolation function based on the node candidates and the original one-dimensional time series data, and calculates the weighted addition of the maximum error value, the average error value, and the error variance. A third step of calculating a value of the first objective function to be performed;
A fourth step of repeatedly changing the nodal candidate so as to minimize the value of the first objective function and determining a suboptimal nodal candidate;
Fifth step of changing the number of node candidates and returning to the second step when it is determined that the minimum value of the objective function calculated in the fourth step exceeds a threshold value determined based on the approximation accuracy When,
When it is determined that the minimum value of the objective function calculated in the fourth step does not exceed the threshold value determined based on the approximation accuracy, the suboptimal node candidate data and the corresponding time data are obtained. A sixth step of outputting as compressed information,
A time-series data compression method.
CG画像処理分野における1次元時系列データ圧縮プログラムを記録した記録媒体であって、
前記1次元時系列データと近似精度の入力を行う第1の工程と、
前記1次元時系列データを近似する補間関数の節点候補を算出する第2の工程と、
前記節点候補に基づき前記補間関数により発生した1次元時系列データと元の1次元時系列データとの誤差を算出し、誤差の最大値と誤差の平均値と誤差の分散との重み付け加算で算出される第1の目的関数の値を算出する第3の工程と、
前記第1の目的関数の値が最小となるように節点候補の変更を繰り返し行い、準最適節点候補を決定する第4の工程と、
前記第4の工程で算出した目的関数の最小値が前記近似精度に基づいて定めた閾値を越えると判断された場合に、節点候補数を変更し、前記第2の工程に戻る第5の工程と、
前記第4の工程で算出した目的関数の最小値が前記近似精度に基づいて定めた閾値を超えないと判断された場合に、当該準最適節点候補のデータとこれに対応する時刻のデータとを圧縮された情報として出力する第6の工程とを含む、
各工程をコンピューターに実行させるための時系列データ圧縮プログラムを記録した記録媒体。
A recording medium recording a one-dimensional time-series data compression program in the CG image processing field,
A first step of inputting the one-dimensional time series data and approximate accuracy;
A second step of calculating node candidates of an interpolation function approximating the one-dimensional time series data;
Calculates the error between the one-dimensional time series data generated by the interpolation function based on the node candidates and the original one-dimensional time series data, and calculates the weighted addition of the maximum error value, the average error value, and the error variance. A third step of calculating a value of the first objective function to be performed;
A fourth step of repeatedly changing the nodal candidate so as to minimize the value of the first objective function and determining a suboptimal nodal candidate;
Fifth step of changing the number of node candidates and returning to the second step when it is determined that the minimum value of the objective function calculated in the fourth step exceeds a threshold value determined based on the approximation accuracy When,
When it is determined that the minimum value of the objective function calculated in the fourth step does not exceed the threshold value determined based on the approximation accuracy, the suboptimal node candidate data and the corresponding time data are obtained. A sixth step of outputting as compressed information,
A recording medium on which a time-series data compression program for causing a computer to execute each step is recorded.
CG画像処理分野における1次元時系列データの圧縮装置であって、
前記1次元時系列データと近似精度の入力を行う入力手段と、
前記1次元時系列データを近似する補間関数の節点候補を算出する節点候補算出手段と、
前記節点候補に基づき前記補間関数により発生した1次元時系列データと元の1次元時系列データとの誤差を算出し、誤差の最大値と誤差の平均値と誤差の分散との重み付け加算で算出される第1の目的関数の値を算出する判定手段と、
前記第1の目的関数の値が最小となるように節点候補の変更を繰り返し行い、準最適節点候補を決定する節点位置最適化手段と、
前記判定手段により、前記第1の目的関数の最小値が前記近似精度に基づいて定めた閾値を越えると判断された場合に、節点候補数を変更し、該節点数が変更された1次元時系列データを前記前記節点候補算出手段に入力する節点数変更手段と、
前記判定手段により、前記目的関数の最小値が前記近似精度に基づいて定めた閾値を超えないと判断された場合に、当該準最適節点候補のデータとこれに対応する時刻のデータとを圧縮された情報として出力する出力手段とを備えた、
ことを特徴とする時系列データ圧縮装置。
A compression apparatus for one-dimensional time-series data in the field of CG image processing,
Input means for inputting the one-dimensional time-series data and approximate accuracy;
Node candidate calculation means for calculating node candidates of an interpolation function approximating the one-dimensional time series data;
Calculates the error between the one-dimensional time series data generated by the interpolation function based on the node candidates and the original one-dimensional time series data, and calculates the weighted addition of the maximum error value, the average error value, and the error variance. Determining means for calculating a value of the first objective function to be performed;
Node position optimizing means for repeatedly changing node candidates so as to minimize the value of the first objective function, and determining sub-optimal node candidates;
When the determination means determines that the minimum value of the first objective function exceeds a threshold determined based on the approximation accuracy, the number of node candidates is changed, and the one-dimensional time when the number of nodes is changed Node number changing means for inputting series data to the node candidate calculating means;
When it is determined by the determination means that the minimum value of the objective function does not exceed a threshold value determined based on the approximation accuracy, the suboptimal node candidate data and the corresponding time data are compressed. Output means for outputting the information as
A time-series data compression apparatus characterized by the above.
JP2006069863A 1996-07-29 2006-03-14 Time-series data compression method, recording medium recording a time-series data compression program, and time-series data compression apparatus Expired - Fee Related JP4012557B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006069863A JP4012557B2 (en) 1996-07-29 2006-03-14 Time-series data compression method, recording medium recording a time-series data compression program, and time-series data compression apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP19871796 1996-07-29
JP2006069863A JP4012557B2 (en) 1996-07-29 2006-03-14 Time-series data compression method, recording medium recording a time-series data compression program, and time-series data compression apparatus

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP20364597A Division JPH10126275A (en) 1996-07-29 1997-07-29 Compressing method and expanding method, compressing program recording medium and expanding program recording medium, and compressing device and expanding device for linear time-series data

Publications (2)

Publication Number Publication Date
JP2006203937A JP2006203937A (en) 2006-08-03
JP4012557B2 true JP4012557B2 (en) 2007-11-21

Family

ID=36961454

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006069863A Expired - Fee Related JP4012557B2 (en) 1996-07-29 2006-03-14 Time-series data compression method, recording medium recording a time-series data compression program, and time-series data compression apparatus

Country Status (1)

Country Link
JP (1) JP4012557B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6343986B2 (en) 2014-03-17 2018-06-20 富士通株式会社 Information processing apparatus, program, information processing method
CN114726379B (en) * 2022-06-13 2022-09-13 西安热工研究院有限公司 Self-adaptive compression method and system based on time sequence database sample storage characteristics

Also Published As

Publication number Publication date
JP2006203937A (en) 2006-08-03

Similar Documents

Publication Publication Date Title
EP0822517B1 (en) One-dimensional time series data compression method and one-dimensional time series data decompression method.
Kuznetsov et al. Differentiable IIR filters for machine learning applications
WO2001050325A2 (en) Lossless data compression
Munro Symbolic methods in control system analysis and design
JP4012557B2 (en) Time-series data compression method, recording medium recording a time-series data compression program, and time-series data compression apparatus
Bettayeb et al. Design of sliding mode controllers for nonlinear fractional-order systems via diffusive representation
JPH10126275A (en) Compressing method and expanding method, compressing program recording medium and expanding program recording medium, and compressing device and expanding device for linear time-series data
US6009200A (en) Dynamic image processing apparatus and method
JP3735187B2 (en) Data conversion apparatus and method for encoding and editing time-series data
Boykin et al. Multirate sampled-data systems analysis via vector operators
JPH0313066A (en) Method and apparatus for color correction
JP4701400B2 (en) Motion learning system and control method thereof
Tokatli et al. Using fractional order elements for haptic rendering
US7324980B2 (en) Information processing apparatus and method
WO2022270319A1 (en) Motion data management system, motion data management method, and program
Padhy et al. Time moments and its extension for reduction of mimo discrete interval systems
WO2022196308A1 (en) Data processing device, data processing method, and program
Heredia et al. Piecewise Volterra filters based on the threshold decomposition operator
Spires Lossless Image Compression via the Lifting Scheme
US6195461B1 (en) Dynamic image processing apparatus and method
JP3991629B2 (en) Data operation processing method and recording medium recording data operation processing program
Rogers et al. Stability analysis for discrete linear multipass processes with non-unit memory
Hunter et al. Micro-Robotics and the Study of Muscle: Special Problems in Control, System Identification and Modelling
Jemai et al. A new schema of Image Compression using wavelet networks
MILLER A time-domain approach to z-domain model identification

Legal Events

Date Code Title Description
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: 20070815

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070907

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100914

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110914

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120914

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees