(57)【要約】【課題】圧縮対象データの急激な変化を記録しつつ、圧縮対象データの圧縮効率を向上するようにデータを変換すること。【解決手段】データ変換装置１００は、選択部２０３によって、時系列な複数の圧縮対象データを含む圧縮対象データ群の中から任意の圧縮対象データを選択する。選択後、データ変換装置１００は、判断部２０４によって選択された圧縮対象データの値と、圧縮対象データの前後の圧縮対象データの値と、に基づいて、選択された圧縮対象データが間引き可能か否かを判断する。データ変換装置１００は、変換部２０５によって、間引き可能と判断された場合、選択された圧縮対象データを構成するビット列を全ビットが同一の値のビット列に変換する。変換後、データ変換装置１００は、出力部２０６によって変換部２０５による変換後の圧縮対象データを含む圧縮対象データ群を出力する。【選択図】図２
2011217151.tif 000002
【特許請求の範囲】
【請求項１】
時系列な複数の圧縮対象データを含む圧縮対象データ群の中から任意の圧縮対象データを選択する選択手段と、
前記選択手段によって選択された圧縮対象データの値と、当該圧縮対象データの前後の圧縮対象データの値と、に基づいて、前記選択された圧縮対象データが間引き可能か否かを判断する判断手段と、
前記判断手段によって間引き可能と判断された場合、前記選択された圧縮対象データを構成するビット列を全ビットが同一の値のビット列に変換する変換手段と、
前記変換手段による変換後の圧縮対象データを含む圧縮対象データ群を出力する出力手段と、
を備えることを特徴とするデータ変換装置。
【請求項２】
前記変換手段は、
前記判断手段によって間引き可能と判断された場合、前記圧縮対象データ内の間引きしたか否かを示す識別情報の値と、前記選択された圧縮対象データの値とを、全ビットが同一の値のビット列に変換することを特徴とする請求項１に記載のデータ変換装置。
【請求項３】
前記圧縮対象データの値と前記圧縮対象データの前の圧縮対象データの値との第１の差分と、前記圧縮対象データの後の圧縮対象データの値と前記圧縮対象データの値との第２の差分と、を算出する算出手段と、をさらに備え、
前記判断手段は、
前記算出手段によって算出された第１の差分と第２の差分との差分の絶対値が所定の判断値以下である場合、前記圧縮対象データが間引き可能であると判断することを特徴とする請求項１または２に記載のデータ変換装置。
【請求項４】
前記選択手段によって選択された圧縮対象データの値の絶対値が所定の閾値以下であることを検出する検出手段と、をさらに備え、
前記変換手段は、
前記検出手段によって前記所定の閾値以下と検出された場合、前記選択された圧縮対象データを構成するビット列を０のビット列に変換することを特徴とする請求項１〜３のいずれか一つに記載のデータ変換装置。
【請求項５】
時系列な複数の復元対象データを含む復元対象データ群の中から前記復元対象データ内の間引きされたか否かを示す識別情報に基づいて、間引きされた復元対象データを検出する検出手段と、
前記検出手段によって間引きされた復元対象データが検出された場合、検出された復元対象データの前後の復元対象データが間引きされたか否かを判断する判断手段と、
前記判断手段によって前記前後の復元対象データが間引きされていないと判断された場合、前記前後の復元対象データの値に基づいて、前記検出された復元対象データの値を算出する算出手段と、
前記間引きされた復元対象データの値を前記算出手段によって算出された値に変換する変換手段と、
を備えることを特徴とするデータ変換装置。
【請求項６】
コンピュータが、
時系列な複数の圧縮対象データを含む圧縮対象データ群の中から任意の圧縮対象データを選択する選択工程と、
前記選択工程によって選択された圧縮対象データの値と、当該圧縮対象データの前後の圧縮対象データの値と、に基づいて、前記選択された圧縮対象データが間引き可能か否かを判断する判断工程と、
前記判断工程によって間引き可能と判断された場合、前記選択された圧縮対象データを構成するビット列を全ビットが同一の値のビット列に変換する変換工程と、
前記変換工程による変換後の圧縮対象データを含む圧縮対象データ群を出力する出力工程と、
を実行することを特徴とするデータ変換方法。
【請求項７】
コンピュータに、
時系列な複数の圧縮対象データを含む圧縮対象データ群の中から任意の圧縮対象データを選択する選択工程と、
前記選択工程によって選択された圧縮対象データの値と、当該圧縮対象データの前後の圧縮対象データの値と、に基づいて、前記選択された圧縮対象データが間引き可能か否かを判断する判断工程と、
前記判断工程によって間引き可能と判断された場合、前記選択された圧縮対象データを構成するビット列を全ビットが同一の値のビット列に変換する変換工程と、
前記変換工程による変換後の圧縮対象データを含む圧縮対象データ群を出力する出力工程と、
を実行させることを特徴とするデータ変換プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを変換するデータ変換装置、データ変換方法、およびデータ変換プログラムに関する。
【背景技術】
【０００２】
従来から、潮位や水位を計測、蓄積した後に、解析することによって防災に役立てる技術が存在する。たとえば、水位データを利用した技術として、水位を計測し、水位変化が観測されないときに水位計の異常を検出する技術が開示されている（たとえば、下記特許文献１を参照。）。
【０００３】
また、潮位データの中で、特に最新のデータは、津波監視等に使われ、リアルタイムに活用されている。一方、数時間以上経過した潮位データは、過去の記録となり、１秒間ごとのデータを保持する必要がない。潮位データを利用するシステムでは、保存データ量を削減する方法として、一定時間間隔でデータを間引く方法が取られる場合もある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−１９５１２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述した特許文献１にかかる技術においては、計器の異常を検出するために潮位の変化を蓄積する必要がある。しかしながら、１秒間隔のデータを保持するとデータが膨大となってしまうという問題があった。また、データの特徴を残しつつ、データを間引くことにより保持するデータを減少させた場合に、不均一な時間間隔となるため、時間データを保持する必要があり、データ量が増量する可能性があるという問題があった。
【０００６】
本発明は、上述した問題点を解消するため、圧縮対象データの急激な変化を記録しつつ、圧縮対象データの圧縮効率を向上できるデータ変換装置、データ変換方法、およびデータ変換プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するため、開示のデータ変換装置は、時系列な複数の圧縮対象データを含む圧縮対象データ群の中から任意の圧縮対象データを選択し、選択された圧縮対象データの値と、圧縮対象データの前後の圧縮対象データの値と、に基づいて、選択された圧縮対象データが間引き可能か否かを判断し、間引き可能と判断された場合、選択された圧縮対象データを構成するビット列を全ビットが同一の値のビット列に変換し、変換後の圧縮対象データを含む圧縮対象データ群を出力することを要件とする。
【発明の効果】
【０００８】
本データ変換装置、データ変換方法、およびデータ変換プログラムによれば、圧縮対象データの急激な変化を記録しつつ、圧縮対象データの圧縮効率を向上することができるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】実施の形態にかかるデータ変換装置１００のハードウェア構成を示すブロック図である。
【図２】データ変換装置１００の機能的構成を示すブロック図である。
【図３】潮位データの間引き・圧縮処理時におけるデータフローを示す説明図である。
【図４】潮位データの伸長・復元時におけるデータフローを示す説明図である。
【図５】潮位偏差のデータフォーマットを示す説明図である。
【図６】実測潮位と推算潮位の関係を示す説明図である。
【図７】潮位偏差の算出方法の概略を示す説明図である。
【図８】潮位偏差を等時間間隔にて間引きする方法の概略を示す説明図である。
【図９】潮位偏差を潮位偏差ゼロへ近似する方法の概略を示す説明図である。
【図１０】潮位偏差を傾きに基づいて近似する方法の概略を示す説明図である。
【図１１】傾きに基づいて近似した前後の潮位偏差を示す説明図である。
【図１２】図１１における潮位偏差の数値を示す説明図である。
【図１３】潮位データの伸長・復元時における傾き間引きビットフラグの処理順序を示す説明図である。
【図１４】潮位データの間引き・圧縮処理を示すフローチャートである。
【図１５】潮位データの復元処理を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下に添付図面を参照して、本発明にかかるデータ変換装置、データ変換方法、およびデータ変換プログラムの好適な実施の形態を詳細に説明する。
【００１１】
（データ変換装置のハードウェア構成）
図１は、実施の形態にかかるデータ変換装置１００のハードウェア構成を示すブロック図である。図１において、データ変換装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１と、ＲＯＭ（Ｒｅａｄ‐Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０３と、を備えている。また、記憶装置としてデータ変換装置１００は、磁気ディスクドライブ１０４と、磁気ディスク１０５と、光ディスクドライブ１０６と、光ディスク１０７と、を備えている。また、ユーザやその他の機器との入出力装置として、データ変換装置１００は、ディスプレイ１０８と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）１０９と、キーボード１１０と、マウス１１１と、スキャナ１１２と、プリンタ１１３と、を備えている。また、各構成部はバス１１５によってそれぞれ接続されている。
【００１２】
ここで、ＣＰＵ１０１は、データ変換装置の全体の制御を司る。ＲＯＭ１０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ１０３は、ＣＰＵ１０１のワークエリアとして使用される。磁気ディスクドライブ１０４は、ＣＰＵ１０１の制御にしたがって磁気ディスク１０５に対するデータのリード／ライトを制御する。磁気ディスク１０５は、磁気ディスクドライブ１０４の制御で書き込まれたデータを記憶する。
【００１３】
光ディスクドライブ１０６は、ＣＰＵ１０１の制御にしたがって光ディスク１０７に対するデータのリード／ライトを制御する。光ディスク１０７は、光ディスクドライブ１０６の制御で書き込まれたデータを記憶したり、光ディスク１０７に記憶されたデータをコンピュータに読み取らせたりする。
【００１４】
ディスプレイ１０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ１０８は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００１５】
Ｉ／Ｆ１０９は、通信回線を通じてＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどのネットワーク１１４に接続され、このネットワーク１１４を介して他の装置に接続される。そして、Ｉ／Ｆ１０９は、ネットワーク１１４と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ１０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００１６】
キーボード１１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス１１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００１７】
スキャナ１１２は、画像を光学的に読み取り、データ変換装置内に画像データを取り込む。なお、スキャナ１１２は、ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）機能を持たせてもよい。また、プリンタ１１３は、画像データや文書データを印刷する。プリンタ１１３には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
【００１８】
（データ変換装置１００の機能的構成）
次に、データ変換装置１００の機能的構成について説明する。図２は、データ変換装置１００の機能的構成を示すブロック図である。データ変換装置１００は、間引き・圧縮部２０１と復元部２２１と、を含む構成である。間引き・圧縮部２０１は、圧縮データ変換部２０２と、圧縮部２０９と、を含む構成である。圧縮データ変換部２０２は、選択部２０３と、判断部２０４と、変換部２０５と、出力部２０６と、算出部２０７と、検出部２０８と、を含む構成である。
【００１９】
復元部２２１は、伸長データ変換部２２２と、伸長部２２３と、を含む構成である。伸長データ変換部２２２は、検出部２２４と、判断部２２５と、算出部２２６と、変換部２２７と、検索部２２８と、設定部２２９と、を含む構成である。間引き・圧縮部２０１、復元部２２１は、記憶装置に記憶されたプログラムをＣＰＵ１０１が実行することにより、その機能を実現する。記憶装置とは、具体的には、たとえば、図１に示したＲＯＭ１０２、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などである。または、Ｉ／Ｆ１０９を経由して他のＣＰＵが実行することにより、その機能を実現してもよい。
【００２０】
なお、間引き・圧縮部２０１と復元部２２１は、それぞれ単独の装置であってもよい。すなわち、間引き・圧縮部２０１を機能的構成とするデータ変換装置と、復元部２２１を機能的構成とするデータ変換装置とし、各装置が運用されてもよい。また、圧縮データ変換部２０２と圧縮部２０９は、それぞれの単独の装置であってもよい。すなわち、圧縮データ変換部２０２を機能的構成とするデータ変換装置と、圧縮部２０９を機能的構成とする圧縮装置とし、情報を送受信できるように各装置が運用されてもよい。同様に、伸長部２２３を機能的構成とする伸長装置と、伸長データ変換部２２２を機能的構成とするデータ変換装置とし、情報を送受信できるように各装置が運用されてもよい。本実施の形態では、説明を単純化するために間引き・圧縮部２０１と復元部２２１を持ったデータ変換装置１００で説明を行う。
【００２１】
間引き・圧縮部２０１は、圧縮対象データを間引きし、圧縮する機能を有する。圧縮対象データとは、潮位データのことである。また、圧縮対象データは、計測器によって計測された物理量であってもよい。たとえば、温度や湿度、気圧などの気象データなどである。具体的には、間引き・圧縮部２０１は、潮位計から計測されたデータを圧縮する際にデータサイズが小さくなるように間引きし、圧縮処理を行う。間引き・圧縮部２０１の詳細については、図３にて後述する。
【００２２】
圧縮データ変換部２０２は、圧縮対象データを間引きし、圧縮する際に圧縮率が向上するようにデータを変換する機能を有する。具体的には、圧縮データ変換部２０２は、同じビット列が連なるように潮位データの変換を行う。具体的なデータ変換処理は、選択部２０３〜検出部２０８の機能によって行われる。
【００２３】
選択部２０３は、時系列な複数の圧縮対象データを含む圧縮対象データ群の中から任意の圧縮対象データを選択する機能を有する。具体的には、たとえば、選択部２０３は、潮位データの中から任意の潮位データを選択する。なお、選択されたデータは、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などの記憶領域に記憶される。
【００２４】
判断部２０４は、選択部２０３によって選択された圧縮対象データの値と、圧縮対象データの前後の圧縮対象データの値と、に基づいて、選択された圧縮対象データが間引き可能か否かを判断する機能を有する。また、判断部２０４は、算出部２０７によって算出された第１の差分と第２の差分との差分の絶対値が所定の判断値以下である場合、圧縮対象データが間引き可能であると判断してもよい。第１の差分と第２の差分は、それぞれ選択された圧縮データを中心した前後の傾きを示している。所定の判断値は、間引き可能とみなす傾きの差の許容範囲となる傾き許容範囲である。
【００２５】
具体的には、たとえば、圧縮対象データの値が、前後の圧縮対象データの値の平均値となる場合に、判断部２０４は、間引き可能として判断する。平均値は、相加平均でもよいし、相乗平均でもよいし、調和平均でもよい。また別の判断方法として、第１の差分が２［ｍｍ］で、第２の差分が−１［ｍｍ］であれば、傾きの差の絶対値は３［ｍｍ］となり、傾き許容範囲がたとえば５［ｍｍ］であれば、判断部２０４は、間引き可能として判断してもよい。なお、判断結果は、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などの記憶領域に記憶される。
【００２６】
変換部２０５は、判断部２０４によって間引き可能と判断された場合、選択された圧縮対象データを構成するビット列を全ビットが同一の値のビット列に変換する機能を有する。また、変換部２０５は、判断部２０４によって間引き可能と判断された場合、圧縮対象データ内の間引きしたか否かを示す識別情報の値と、選択された圧縮対象データの値とを、全ビットが同一の値のビット列に変換してもよい。また、変換部２０５は、検出部２０８によって所定の閾値以下と検出された場合、選択された圧縮対象データを構成するビット列を０のビット列に変換してもよい。
【００２７】
具体的には、たとえば、潮位データが１６ビットで表現されており、判断部２０４によって間引き可能と判断された場合、変換部２０５は、潮位データをビットがすべて１となるビット列０ｘＦＦＦＦに変換する。また、潮位データが、最上位の１ビットが潮位データ内の間引きしたか否かを示す識別情報となる間引きビットフラグを示し、残りのビット列が潮位データの値を示す場合を想定する。このとき、判断部２０４によって間引き可能と判断された場合、変換部２０５は、間引きビットフラグに１を設定し、潮位データの値に０ｘ７ＦＦＦを設定する。なお、変換された圧縮対象データは、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などの記憶領域に記憶される。
【００２８】
出力部２０６は、変換部２０５による変換後の圧縮対象データを含む圧縮対象データ群を出力する機能を有する。出力先としては、Ｉ／Ｆ１０９による外部装置への送信などがある。また、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などの記憶領域に記憶することとしてもよい。
【００２９】
算出部２０７は、圧縮対象データの値と圧縮対象データの前の圧縮対象データの値との第１の差分と、圧縮対象データの後の圧縮対象データの値と圧縮対象データの値との第２の差分と、を算出する機能を有する。具体的には、たとえば、時刻Ｔ1の潮位データが選択された場合に、算出部２０７は、第１の差分として、時刻Ｔ1の潮位データ−時刻Ｔ0の潮位データを算出する。続けて、算出部２０７は、第２の差分として、時刻Ｔ2の潮位データ−時刻Ｔ1の潮位データを算出する。なお、算出された結果は、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などの記憶領域に記憶される。
【００３０】
検出部２０８は、選択部２０３によって選択された圧縮対象データの値の絶対値が所定の閾値以下であることを検出する機能を有する。所定の閾値とは、ゼロにみなせる値である。具体的には、たとえば、検出部２０８は、選択された潮位データが−３［ｍｍ］、２［ｍｍ］であり、所定の閾値がたとえば５［ｍｍ］であれば、近似できる潮位データとして検出する。なお、検出された潮位データは、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などの記憶領域に記憶される。
【００３１】
圧縮部２０９は、出力部２０６によって出力された圧縮対象データを圧縮する機能を有する。具体的には、たとえば、圧縮部２０９は、潮位データ群をランレングス法によって圧縮する。または、異なる暗号化方法が適用されてもよい。なお圧縮されたデータは、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などの記憶領域に記憶される。
【００３２】
復元部２２１は、圧縮されたデータを伸張して復元対象データを取得し、間引きされた復元対象データを復元する機能を有する。具体的には、復元部２２１は、圧縮された潮位データを伸張後、間引きされていないデータから補間することにより、間引きされたデータを復元する。復元部２２１の詳細については、図４にて後述する。
【００３３】
伸長データ変換部２２２は、伸長された復元対象データを変換する機能を有する。具体的には、伸長データ変換部２２２は、間引きされた潮位データを間引きされていない潮位データから算出し、間引きされた潮位データの値を算出された値に変換する。具体的なデータ変換処理は、検出部２２４〜設定部２２９の機能によって行われる。
【００３４】
伸長部２２３は、圧縮されたデータを伸長する機能を有する。具体的には、たとえば、伸長部２２３は、ランレングス法によって伸長する。また、その他の暗号化方法である場合であってもよい。伸長部２２３は、圧縮されたデータのフォーマットや、圧縮されたデータのファイル名に付属された拡張子などから、どの暗号化方法で暗号化されたかを特定する。なお、伸長されたデータは、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などの記憶領域に記憶される。
【００３５】
検出部２２４は、時系列な複数の復元対象データを含む復元対象データ群の中から復元対象データ内の間引きされたか否かを示す識別情報に基づいて、間引きされた復元対象データを検出する機能を有する。具体的には、たとえば、検出部２２４は、潮位データの中で、間引きされたか否かを示す識別情報となる傾き間引きビットフラグが１に設定されている復元対象データを検出する。なお、検出された潮位データは、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などの記憶領域に記憶される。
【００３６】
判断部２２５は、検出部２２４によって間引きされた復元対象データが検出された場合、検出された復元対象データの前後の復元対象データが間引きされたか否かを判断する機能を有する。具体的には、たとえば、判断部２２５は、検出された潮位データの前後の潮位データが傾き間引きビットフラグが１ならば間引きされたと判断し、０ならば間引きされていないと判断する。なお、判断結果は、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などの記憶領域に記憶される。
【００３７】
算出部２２６は、判断部２２５によって前後の復元対象データが間引きされていないと判断された場合、前後の復元対象データの値に基づいて、検出された復元対象データの値を算出する機能を有する。また、算出部２２６は、設定部２２９によって設定された前方および後方の復元対象データの値および時刻と検出された復元対象データの時刻とに基づいて、検出された復元対象データの値を算出してもよい。
【００３８】
具体的には、たとえば、時刻Ｔ2の潮位データが間引かれており、時刻Ｔ1の潮位データが１０［ｍｍ］、時刻Ｔ3の潮位データが１４［ｍｍ］であれば、時刻Ｔ2の潮位データは中間の値となる１２［ｍｍ］となる。
【００３９】
また、前方および後方の復元対象データが設定されている場合は、以下のように検出された復元対象データの値を算出してもよい。
【００４０】
Ｄnの値＝（後方の復元対象データの値−前方の復元対象データの値）＊（Ｄnの時刻−前方の復元対象データの時刻）／（後方の復元対象データの時刻−前方の復元対象データの時刻）
【００４１】
なお、算出結果は、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などの記憶領域に記憶される。
【００４２】
変換部２２７は、間引きされた復元対象データの値を算出部２２６によって算出された値に変換する機能を有する。具体的には、たとえば、間引かれていた時刻Ｔ2の潮位データが１２［ｍｍ］と算出された場合に、変換部２２７は、時刻Ｔ2の潮位データの値を１２に変換する。なお、変換された復元対象データは、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などの記憶領域に記憶される。
【００４３】
検索部２２８は、判断部２２５によって検出された復元対象データの前の復元対象データが間引きされたと判断された場合、検出された復元対象データから時系列の前方向に向かって間引きされていない復元対象データを検索する機能を有する。また、検索部２２８は、判断部２２５によって検出された復元対象データの後の復元対象データが間引きされたと判断された場合、検出された復元対象データから時系列の後方向に向かって間引きされていない復元対象データを検索してもよい。
【００４４】
具体的には、たとえば、時刻Ｔ3の潮位データが間引きされており、さらに時刻Ｔ2の潮位データが間引きされている場合を想定する。検索部２２８は、続けて時刻Ｔ1の潮位データが間引かれていないかを確認し、間引かれていなければ、時刻Ｔ1を検索結果として出力する。なお、検索結果は、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などの記憶領域に記憶される。
【００４５】
設定部２２９は、検索部２２８によって検索された復元対象データを前方の復元対象データに設定し、検出された復元対象データの次の復元対象データを後方の復元対象データに設定する機能を有する。また、設定部２２９は、検索部２２８によって検索された復元対象データを後方の復元対象データに設定してもよい。
【００４６】
具体的には、たとえば、時刻Ｔ3の潮位データが間引きされており、検索部２２８によって、間引きされていない復元対象データとして、時刻Ｔ0の潮位データが検索された場合、時刻Ｔ0の潮位データを前方の復元対象に設定する。なお、検索結果は、ＲＡＭ１０３、磁気ディスク１０５、光ディスク１０７などの記憶領域に記憶される。
【００４７】
図３は、潮位データの間引き・圧縮処理時におけるデータフローを示す説明図である。データ変換装置１００は、間引き・圧縮部２０１によって、潮位データを間引きし、圧縮効率の高いデータ形式に変換した後に、圧縮する。間引き・圧縮処理は以下の第一段階〜第五段階の処理で構成される。
【００４８】
間引き・圧縮の第一段階の処理は、潮位計から計測された、ノイズを含む潮位データを任意のフィルタリングにより事前に補正を行う処理である。フィルタリング後のデータは、実測潮位となる。実測潮位については、図６にて後述する。間引き・圧縮の第二段階の処理は、ノイズ除去潮位データとなる実測潮位から潮位偏差に変換する処理である。変換には、潮位の予測値である推算潮位が使用される。間引き・圧縮の第二段階の処理の詳細と潮位偏差については、図７にて後述する。
【００４９】
間引き・圧縮の第三段階の処理は、潮位偏差を特徴を打ち消さない程度の小さな時間間隔で間引くことによりデータ量を減らす処理と、潮位偏差の絶対値が一定値以下の場合に潮位偏差＝０とすることで、データの特徴を損なわない範囲で近似化する処理である。前半の処理にて、潮位偏差は、サンプリング周期補正潮位偏差に変換される。サンプリング周期補正潮位偏差のデータフォーマットは、図５にて後述する。また、前半の処理の詳細は、図８にて、後半の処理の詳細は図９にて後述する。
【００５０】
間引き・圧縮の第四段階の処理は、サンプリング周期補正潮位偏差を時系列順に走査し、前に保存した値との傾きの差の絶対値が一定値以下の場合は、データを間引きする処理である。第四段階の処理にて、サンプリング周期補正潮位偏差は、傾き補正潮位偏差に変換される。なお、間引きされたデータは、傾き補正潮位偏差のビットフラグに間引きされたことを示す値が設定される。傾き補正潮位偏差のデータフォーマットは、図５にて後述する。また、間引き・圧縮の第四段階の処理の詳細は、図１０〜１２にて後述する。
【００５１】
間引き・圧縮の第五段階の処理は、傾き補正潮位偏差を圧縮対象データとして可逆圧縮する処理である。傾き補正潮位偏差は、間引き処理を行った箇所は０または１が連続して存在し、たとえばランレングス圧縮であれば高い圧縮率で圧縮することができる。
【００５２】
図４は、潮位データの伸長・復元時におけるデータフローを示す説明図である。データ変換装置１００は、圧縮データを受け取ると、復元部２２１によって以下の復元処理である第一段階〜第三段階の処理で構成される。
【００５３】
復元の第一段階の処理は、圧縮データを伸長する処理である。間引き・圧縮処理にて使用された圧縮アルゴリズムを利用して、データ変換装置１００は、圧縮データから復元対象データとなる傾き補正潮位偏差を取得する。
【００５４】
復元の第二段階の処理は、傾き間引きビットフラグを時系列順に走査し、傾きによる間引きされたデータを検出したら、その前後の間引きされていないデータから線形に補間する処理である。復元の第二段階の処理で、傾き補正潮位偏差は、線形補間潮位偏差に変換される。復元の第二段階の処理の詳細は、図１３にて後述する。
【００５５】
復元の第三段階の処理は、線形補間潮位偏差から潮位データを復元する処理である。復元には、間引き・圧縮の第二段階の処理にて使用された推算潮位が使用される。
【００５６】
図５は、潮位偏差のデータフォーマットを示す説明図である。フォーマット５０１は、サンプリング周期補正潮位偏差で使用されるフォーマットであり、フォーマット５０２は、傾き補正潮位偏差で使用されるフォーマットである。
【００５７】
フォーマット５０１は、先頭時刻フィールドとサンプリング周期フィールドとサンプリング数フィールドで構成されるヘッダ部と、補正潮位偏差フィールドで構成されるデータ部とで構成される。また、補正潮位偏差フィールドは、サンプリング数フィールドに設定された数Ｎ分となる補正潮位偏差１、・・・、補正潮位偏差Ｎで構成される。先頭時刻フィールドは、補正潮位偏差１の時刻を年月日時分（ｙｙｙｙｍｍｄｄＨＨＭＭ）で示す文字列で表現された値が格納される。サンプリング周期フィールドは、補正潮位偏差が何秒間隔で記録されているかを示す値が格納されている。たとえば、サンプリング周期フィールドに“１０”が設定されていれば、１０秒おきに補正潮位偏差が記録されていることになる。
【００５８】
補正潮位偏差フィールドは、１６ビットのビット列であり、最上位ビットは未使用であり、０固定である。下位の１５ビットは、補正潮位偏差値が設定される。補正潮位偏差値は、１５ビットを１の補数で表現し、−１６３８３（０ｘ４０００）〜＋１６３８３（０ｘ３ＦＦＦ）の値が設定できる。
【００５９】
フォーマット５０２も、フォーマット５０１と同様に、先頭時刻フィールドとサンプリング周期フィールドとサンプリング数フィールドで構成されるヘッダ部と、補正潮位偏差フィールドで構成されるデータ部とで構成される。フォーマット５０２の補正潮位偏差フィールド以外のフィールドは、フォーマット５０１と同等の設定値が格納されるため、説明を省略する。
【００６０】
フォーマット５０２の補正潮位偏差フィールドは、１６ビットのビット列であり、最上位ビットは傾き間引きビットフラグとして使用される。値が１の場合には、傾きで潮位偏差が間引かれたことを示し、間引かれていない場合は０が設定される。補正潮位偏差値は、１５ビットを１の補数で表現し、−１６３８３（０ｘ４０００）〜＋１６３８３（０ｘ３ＦＦＦ）の値が設定できる。また、傾き間引きビットフラグが１の場合、補正潮位偏差値は０ｘ７ＦＦＦが設定される。
【００６１】
図６は、実測潮位と推算潮位の関係を示す説明図である。グラフ６０１は、実測潮位と推算潮位の時間経過に伴う潮位の値を示している。グラフ６０１は、横軸が時間であり、縦軸が潮位を示している。実測潮位とは、潮位計の測定結果であり、グラフ６０１の例では、１秒おきにサンプリングしたデータをプロットしている。また、潮位計の測定時に他の電流や磁気などの影響によってノイズが発生する場合には、間引き・圧縮処理の第一段階として、生潮位データからノイズを除去し、除去されたデータが実測潮位となる。推算潮位とは、月や太陽の動きなどから考慮して計算された、１時間ごとの潮位を予測した値である。１時間の間の推算潮位は、前後のデータから補間して算出されたデータを取得することができる。
【００６２】
表６０２は、測定時刻が２０：００：００と２３：００：００における実測潮位と推算潮位の値である。測定時刻が２０：００：００における実測潮位Ｍ１は、−１５６［ｍｍ］となる。また、１５ビット１の補数で表現される１６進数表記では、０ｘ７Ｆ６３となる。同様に、同時刻の推算潮位Ｅ１も−１５６［ｍｍ］（０ｘ７Ｆ６３）となる。また、測定時刻が２３：００：００における実測潮位Ｍ２は、１７５［ｍｍ］（０ｘ００ＡＦ）、同時刻の推算潮位Ｅ２は、８４［ｍｍ］（０ｘ００５４）となる。
【００６３】
図７は、潮位偏差の算出方法の概略を示す説明図である。グラフ７０１は、潮位偏差の時間経過に伴う潮位の値を示している。グラフ７０１は、横軸が時間であり、縦軸が潮位偏差を示している。間引き・圧縮の第二段階の処理となる潮位偏差の算出は、実測潮位から推算潮位を減じることで求められる潮位偏差は、実測潮位や推算潮位に比べて絶対値の小さい値であり、データ量を削減したことになる。
【００６４】
表７０２は、測定時刻が２０：００：００と２３：００：００における潮位偏差の値である。測定時刻が２０：００：００における潮位偏差Ｄ１はＭ１−Ｅ１で求められ、０［ｍｍ］（０ｘ００００）となる。測定時刻が２３：００：００における潮位偏差Ｄ２はＭ２−Ｅ２で求められ、９１［ｍｍ］（０ｘ００５Ｂ）となる。
【００６５】
図８は、潮位偏差を等時間間隔にて間引きする方法の概略を示す説明図である。グラフ８０１は、間引き前のグラフを示し、グラフ８０２は、間引き後のグラフを示している。また、間引き前のグラフ８０１、間引き後のグラフ８０２は、横軸が時間であり、縦軸が潮位偏差を示している。間引き前のグラフ８０１では、１０秒間隔の潮位偏差を示しており、間引き後のグラフ８０２は、３０秒間隔の潮位偏差を示している。
【００６６】
具体的には、たとえば、間引き前のグラフ８０１での点ｄ０〜点ｄ６のうち、点ｄ１、点ｄ２、点ｄ４、点ｄ５は、３０秒間隔となった間引き後のグラフ８０２では間引かれている。このように、データ変換装置１００は、潮位偏差を特徴を打ち消さない程度の小さな等時間間隔で間引くことにより、データ量を減らす。この時、等時間間隔にて間引きされた潮位偏差は、サンプリング周期フィールドが“１０”から“３０”に再設定され、さらに、補正潮位偏差も対応する時刻のデータが削除される。
【００６７】
図９は、潮位偏差を潮位偏差ゼロへ近似する方法の概略を示す説明図である。グラフ９０１は、潮位偏差ゼロへの近似前のグラフを示し、グラフ９０２は、潮位偏差ゼロへの近似後のグラフを示す。表９０３は、グラフ９０２にて近似された値の一覧である。近似前のグラフ９０１、近似後のグラフ９０２は、横軸が時間であり、縦軸が潮位偏差を示している。近似前のグラフ９０１は、潮位偏差として、点ｄ０〜点ｄ１２が存在する。このうち、近似するか否かを判断する閾値Ａから生成される範囲−Ａ〜Ａの間にプロットされた点となる点ｄ８〜点ｄ１１が近似対象の点となる。近似後のグラフ９０２では、点ｄ８が点Ｄ８に、点ｄ９が点Ｄ９に、点ｄ１０が点Ｄ１０に、点ｄ１１が点Ｄ１１に、変換されている。
【００６８】
表９０３では、点ｄ８〜点ｄ１１の近似された値の一覧が示されている。潮位偏差をゼロとみなす許容範囲Ａを５［ｍｍ］と設定した場合、ｄ８：＋３［ｍｍ］がＤ８：０［ｍｍ］に近似されたことになる。同様に、ｄ９：−２［ｍｍ］がＤ９：０［ｍｍ］へ、ｄ１０：＋３［ｍｍ］がＤ１０：０［ｍｍ］へ、ｄ１１：−２［ｍｍ］がＤ１１：０［ｍｍ］へ近似されている。このように、ゼロに近い値を近似することで、データの特徴を損なわない程度でデータ量を削減することができる。この時、潮位偏差ゼロへ近似された潮位偏差は、ゼロに近似された補正潮位偏差値がオール０の値（０ｘ００００）に設定される。
【００６９】
図１０は、潮位偏差を傾きに基づいて近似する方法の概略を示す説明図である。グラフ１００１は、傾きによる間引き前のグラフを示し、グラフ１００２は、傾きによる間引き後のグラフを示す。間引き前のグラフ１００１、間引き後のグラフ１００２は、横軸が時間であり、縦軸が潮位偏差を示している。また、グラフ１００１、グラフ１００２の前提として、データ量はＮ個あり、データの時間間隔はΔＴである。
【００７０】
たとえば、時刻Ｔnの場合の潮位偏差の傾きは、（Ｄn+1−Ｄn）／ΔＴで求めることができる。求められた傾きと前回傾きを保存したデータの傾き（Ｄp+1−Ｄp）／ΔＴとの差分が傾き補正許容範囲Ｂ／ΔＴより小さい場合に、潮位偏差を間引くことにする。このとき、比較の対象となる差分と傾き補正許容範囲は、共にΔＴで除算を行っているため、省略することができる。
【００７１】
また、前回傾きを保存したデータ（Ｔp，Ｄp）は、初期値として（Ｔ0，Ｄ0）を使用する。上記により、今回の傾きと前回傾きを保存したデータとの傾き差Ｉnと傾き補正許容範囲Ｂとを比較する不等式は下記（１）式となる。
【００７２】
｜（Ｄp+1−Ｄp）−（Ｄn+1−Ｄn）｜＝Ｉn＜Ｂ  ・・・（１）
【００７３】
（１）式を適用するデータは、始点となるＤ0と終点となるＤNとＤn＝０となるＤn以外のデータである。（１）式を適用し、Ｉn＜Ｂとなったデータは、傾き間引きビットフラグ１を設定し、下位１５ビットの補正潮位偏差値にオール１（０ｘ７ＦＦＦ）を設定する。
【００７４】
図１１は、傾きに基づいて近似した前後の潮位偏差を示す説明図である。グラフ１１０１は、間引き前のグラフを示し、グラフ１１０２は、間引き後のグラフを示している。また、間引き前のグラフ１１０１、間引き後のグラフ１１０２は、横軸が時間であり、縦軸が潮位偏差を示している。グラフ上には、点Ｄ0〜点Ｄ12が存在する。点Ｄ0〜点Ｄ12の具体的な数値データに関しては、図１２にて後述する。図１１では、点Ｄ1、点Ｄ2、点Ｄ5、点Ｄ6が傾きによる間引きが行われている。
【００７５】
図１２は、図１１における潮位偏差の数値を示す説明図である。傾き補正判定の許容範囲を５［ｍｍ］とする。初めに、点Ｄ0の傾き補正の判定を行う。点Ｄ0の傾き補正前の潮位偏差値は、１０［ｍｍ］である。点Ｄ0は始点のため、傾き補正判定を行わない。したがって、点Ｄ0の傾き補正後の傾きビットフラグは０（０ｘ００００）、潮位偏差値は１０［ｍｍ］（０ｘ０００Ａ）、傾き潮位偏差は、０ｘ０００Ａとなる。
【００７６】
次に、点Ｄ1の傾き補正の判定を行う。点Ｄ1の傾き補正前の潮位偏差値は、１２［ｍｍ］である。点Ｄ1における（１）式は、
【００７７】
｜（Ｄ1−Ｄ0）−（Ｄ2−Ｄ1）｜＝０＜５
【００７８】
となり、（１）式の不等式を満たすため、傾き補正が行われる。したがって、点Ｄ1の傾き補正後の傾きビットフラグは１（０ｘ８０００）、潮位偏差値は間引きされた値である０ｘ７ＦＦＦ、傾き潮位偏差は、０ｘＦＦＦＦとなる。
【００７９】
続けて、点Ｄ2の傾き補正の判定を行う。点Ｄ2の傾き補正前の潮位偏差値は、１４［ｍｍ］である。点Ｄ2における（１）式は、
【００８０】
｜（Ｄ1−Ｄ0）−（Ｄ3−Ｄ2）｜＝３＜５
【００８１】
となり、（１）式の不等式を満たすため、傾き補正が行われる。したがって、点Ｄ2の傾き補正後の傾きビットフラグは１（０ｘ８０００）、潮位偏差値は間引きされた値である０ｘ７ＦＦＦ、傾き潮位偏差は、０ｘＦＦＦＦとなる。
【００８２】
続けて、点Ｄ3の傾き補正の判定を行う。点Ｄ3の傾き補正前の潮位偏差値は、１３［ｍｍ］である。点Ｄ3における（１）式は、
【００８３】
｜（Ｄ1−Ｄ0）−（Ｄ4−Ｄ3）｜＝９≧５
【００８４】
となり、（１）式の不等式を満たさないため、傾き補正は行わない。したがって、点Ｄ3の傾き補正後の傾きビットフラグは０（０ｘ００００）、潮位偏差値は１３［ｍｍ］（０ｘ０００Ｄ）、傾き潮位偏差は、０ｘ０００Ｄとなる。また、傾きを保存したことになり、（Ｔp，Ｄp）＝（Ｔ3，Ｄ3）となる。
【００８５】
続けて、点Ｄ4の傾き補正の判定を行う。点Ｄ4の傾き補正前の潮位偏差値は、２４［ｍｍ］である。点Ｄ4における（１）式は、
【００８６】
｜（Ｄ4−Ｄ3）−（Ｄ5−Ｄ4）｜＝１６≧５
【００８７】
となり、（１）式の不等式を満たさないため、傾き補正は行われない。したがって、点Ｄ4の傾き補正後の傾きビットフラグは０（０ｘ００００）、潮位偏差値は２４［ｍｍ］（０ｘ００１８）、傾き潮位偏差は、０ｘ００１８となる。また、傾きを保存したことになり、（Ｔp，Ｄp）＝（Ｔ4，Ｄ4）となる。
【００８８】
続けて、点Ｄ5の傾き補正の判定を行う。点Ｄ5の傾き補正前の潮位偏差値は、１９［ｍｍ］である。点Ｄ5における（１）式は、
【００８９】
｜（Ｄ5−Ｄ4）−（Ｄ6−Ｄ5）｜＝４＜５
【００９０】
となり、（１）式の不等式を満たすため、傾き補正が行われる。したがって、点Ｄ5の傾き補正後の傾きビットフラグは１（０ｘ８０００）、潮位偏差値は間引きされた値である０ｘ７ＦＦＦ、傾き潮位偏差は、０ｘＦＦＦＦとなる。
【００９１】
続けて、点Ｄ6の傾き補正の判定を行う。点Ｄ6の傾き補正前の潮位偏差値は、１８［ｍｍ］である。点Ｄ6における（１）式は、
【００９２】
｜（Ｄ5−Ｄ4）−（Ｄ7−Ｄ6）｜＝１＜５
【００９３】
となり、（１）式の不等式を満たすため、傾き補正が行われる。したがって、点Ｄ6の傾き補正後の傾きビットフラグは１（０ｘ８０００）、潮位偏差値は間引きされた値である０ｘ７ＦＦＦ、傾き潮位偏差は、０ｘＦＦＦＦとなる。
【００９４】
続けて、点Ｄ7の傾き補正の判定を行う。点Ｄ7の傾き補正前の潮位偏差値は、１２［ｍｍ］である。点Ｄ7における（１）式は、
【００９５】
｜（Ｄ5−Ｄ4）−（Ｄ8−Ｄ7）｜＝７≧５
【００９６】
となり、（１）式の不等式を満たさないため、傾き補正が行われない。したがって、点Ｄ7の傾き補正後の傾きビットフラグは０（０ｘ００００）、潮位偏差値は１２［ｍｍ］（０ｘ０００Ｃ）、傾き潮位偏差は、０ｘ０００Ｃとなる。また、傾きを保存したことになり、（Ｔp，Ｄp）＝（Ｔ7，Ｄ7）となる。
【００９７】
点Ｄ8〜点Ｄ11については、潮位偏差値が０［ｍｍ］であるため、傾き補正判定を行わない。最後に、点Ｄ12の傾き補正の判定を行う。点Ｄ12の傾き補正前の潮位偏差値は、−１０［ｍｍ］である。点Ｄ12は終点のため、傾き補正判定を行わない。したがって、点Ｄ12の傾き補正後の傾きビットフラグは０（０ｘ００００）、潮位偏差値は−１０［ｍｍ］（０ｘ７ＦＦ５）、傾き潮位偏差は、０ｘ７ＦＦ５となる。
【００９８】
図１３は、潮位データの伸長・復元時における傾き間引きビットフラグの処理順序を示す説明図である。伸長・復元時には、データ変換装置１００は、補正潮位偏差の傾き間引きビットフラグを先頭から読み出す。データ変換装置１００は、傾き間引きビットフラグが１である補正潮位偏差を検出した場合、変数Ｘに検出した時間位置の一つ前の時間位置を設定する。変数Ｘに設定された値が前方の復元対象データの時刻となる。また、データ変換装置１００は、変数Ｙに変数Ｘに設定した時間位置の補正潮位偏差値を設定する。変数Ｘに設定された値が前方の復元対象データの値となる。図１３の例では、時間位置３にてビット１を検出するので、データ変換装置１００は変数Ｘに２を設定し、変数Ｙに点Ｄ2の潮位偏差値を設定する。
【００９９】
続けて、データ変換装置１００は、傾き間引きビットフラグが０である補正潮位偏差を検出した場合、変数Ｘ＋１〜検出された時間位置−１の潮位偏差値を、変数Ｙと検出された時間位置の潮位偏差値とから、線形補間することによって算出する。検出された時間位置が後方の復元対象データの時刻となり、検出された時間位置の潮位偏差値が後方の復元対象データの値となる。図１３の例では、時間位置６にてビット０を検出するので、データ変換装置１００は、変数Ｙと点Ｄ6の潮位偏差値とから、時間位置３〜時間位置５の潮位偏差値を線形補間する。
【０１００】
図１４は、潮位データの間引き・圧縮処理を示すフローチャートである。図１４と図１５のフローチャートにて、潮位偏差１は、サンプリング周期補正潮位偏差を示し、潮位偏差２は、傾き補正潮位偏差を示し、潮位偏差３は、線形補間潮位偏差を示す。また、ステップＳ１４０１〜ステップＳ１４０７までが、間引き・圧縮の第三段階の処理を示し、ステップＳ１４０８〜ステップＳ１４１８までが、間引き・圧縮の第四段階の処理を示す。
【０１０１】
データ変換装置１００は、変数ｉに０を設定する（ステップＳ１４０１）。設定後、データ変換装置１００は、変数ｉがｉｍａｘ以下かを判断する（ステップＳ１４０２）。変数ｉがｉｍａｘ以下である場合（ステップＳ１４０２：Ｙｅｓ）、データ変換装置１００は、間引き間隔ごとに潮位偏差（Ｔi，Ｄi）を読み出す（ステップＳ１４０３）。読み出す潮位偏差とは、間引き・圧縮の第二段階の処理が終了した後の潮位偏差である。読み出し後、データ変換装置１００は、潮位偏差１が潮位偏差許容範囲以下かを、｜Ｄi｜＜Ａが成り立つかで判断する（ステップＳ１４０４）。
【０１０２】
｜Ｄi｜＜Ａである場合（ステップＳ１４０４：Ｙｅｓ）、データ変換装置１００は、潮位偏差１の補正潮位偏差値に０を設定する（ステップＳ１４０５）。｜Ｄi｜≧Ａである場合（ステップＳ１４０４：Ｎｏ）、データ変換装置１００は、潮位偏差１のＴiの補正潮位偏差値にＤiを設定する（ステップＳ１４０６）。ステップＳ１４０５、またはステップＳ１４０６終了後、データ変換装置１００は、変数ｉをインクリメントし（ステップＳ１４０７）、ステップＳ１４０２の処理に移行する。
【０１０３】
変数ｉがｉｍａｘより大きい場合（ステップＳ１４０２：Ｎｏ）、データ変換装置１００は、潮位偏差１の全データを、潮位偏差２のフォーマットにコピーする（ステップＳ１４０８）。コピー後、データ変換装置１００は、初期値設定として、前回保存データの先頭からの位置Ｐを０に設定する（ステップＳ１４０９）。これにより、前回保存データの傾きを示すＤp+1−Ｄpは、Ｄ1−Ｄ0となる。
【０１０４】
データ変換装置１００は、変数ｎに１を設定し（ステップＳ１４１０）、データ変換装置１００は、変数ｎがＮ−１以下かを判断する（ステップＳ１４１１）。変数ｎがＮ−１以下である場合（ステップＳ１４１１：Ｙｅｓ）、Ｄnが０と異なるかを判断する（ステップＳ１４１２）。異なる場合（ステップＳ１４１１：Ｙｅｓ）、データ変換装置１００は、傾き差Ｉnを、Ｉn＝｜（Ｄp+1−Ｄp）−（Ｄn+1−Ｄn）｜から算出する（ステップＳ１４１３）。算出後、データ変換装置１００は、Ｉnが傾き許容範囲Ｂより小さいかを判断する（ステップＳ１４１４）。
【０１０５】
ＩnがＢより小さい場合（ステップＳ１４１４：Ｙｅｓ）、データ変換装置１００は、潮位偏差２のＴnの傾き間引きビットフラグに１を設定する（ステップＳ１４１５）。設定後、データ変換装置１００は、潮位偏差２のＴnの補正潮位偏差値にＡＬＬ１となる値（０ｘ７ＦＦＦ）を設定する（ステップＳ１４１６）。ＩnがＢ以上の場合（ステップＳ１４１４：Ｎｏ）、データ変換装置１００は、前回保存データの先頭からの位置Ｐをｎに設定する（ステップＳ１４１７）。Ｄnが０である場合（ステップＳ１４１２：Ｎｏ）、ステップＳ１４１６、またはステップＳ１４１７の処理終了後、データ変換装置１００は、変数ｎをインクリメントし（ステップＳ１４１８）、ステップＳ１４１１の処理に移行する。変数ｎがＮ−１より大きい場合（ステップＳ１４１１：Ｎｏ）、データ変換装置１００は、潮位データの間引き・圧縮処理を終了する。
【０１０６】
図１５は、潮位データの復元処理を示すフローチャートである。図１５は復元の第二段階の処理を示している。データ変換装置１００は、潮位偏差３のＴ0の補正潮位偏差値Ｄ0に潮位偏差２と同じ値を設定する（ステップＳ１５０１）。設定後、データ変換装置１００は、潮位偏差２に対して時系列順に走査するため、変数ｎに１を設定する（ステップＳ１５０２）。設定後、データ変換装置１００は、変数ｎがＮ以下かを判断する（ステップＳ１５０３）。変数ｎがＮ以下である場合（ステップＳ１５０３：Ｙｅｓ）、データ変換装置１００は、潮位偏差２のＴnの傾き間引きビットフラグが０かを判断する（ステップＳ１５０４）。
【０１０７】
Ｔnの傾き間引きビットフラグが０でない場合（ステップＳ１５０４：Ｎｏ）、データ変換装置１００は、潮位偏差２のＴn-1の傾き間引きビットフラグが０かを判断する（ステップＳ１５０５）。Ｔn-1の傾き間引きビットフラグが０の場合（ステップＳ１５０５：Ｙｅｓ）、データ変換装置１００は、ｎ−１を変数Ｘに記憶する（ステップＳ１５０６）。記憶後、データ変換装置１００は、潮位偏差３のＴn-1の補正潮位偏差値を変数Ｙに記憶する（ステップＳ１５０７）。ステップＳ１５０７の終了後、または、Ｔn-1の傾き間引きビットフラグが０でない場合（ステップＳ１５０５：Ｎｏ）、変数ｎをインクリメントし（ステップＳ１５１４）、ステップＳ１５０３の処理に移行する。
【０１０８】
Ｔnの傾き間引きビットフラグが０の場合（ステップＳ１５０４：Ｙｅｓ）、データ変換装置１００は、潮位偏差２のＴn-1の傾き間引きビットフラグが０かを判断する（ステップＳ１５０８）。Ｔn-1の傾き間引きビットフラグが０でない場合（ステップＳ１５０８：Ｎｏ）、データ変換装置１００は、変数ｍにＸ＋１を設定する（ステップＳ１５０９）。設定後、データ変換装置１００は、変数ｍがｎ−１以下かを判断する（ステップＳ１５１０）。変数ｍがｎ−１以下である場合（ステップＳ１５１０：Ｙｅｓ）、データ変換装置１００は、潮位偏差３のＴmの補正潮位偏差値Ｄmに（Ｄn−Ｙ）＊（ｍ−Ｘ）／（ｎ−Ｘ）を設定する（ステップＳ１５１１）。
【０１０９】
ステップＳ１５１１の処理にて、変数ｍによって値が変化する箇所は、ｍ−Ｘの部分だけであるため、データ変換装置１００は、（Ｄn−Ｙ）／（ｎ−Ｘ）をあらかじめ算出しておき、Ｓ１５１１の処理では、算出された値に（ｍ−Ｘ）を乗じることで、補正潮位偏差値Ｄmを算出してもよい。これにより、データ変換装置１００は、線形補間を行う点が２つ以上ある場合に処理を高速化することができる。
【０１１０】
設定後、データ変換装置１００は、変数ｍをインクリメントし（ステップＳ１５１２）、ステップＳ１５１０の処理に移行する。Ｔn-1の傾き間引きビットフラグが０の場合（ステップＳ１５０８：Ｙｅｓ）、または、変数ｍがｎ−１より大きい場合（ステップＳ１５１０：Ｎｏ）、データ変換装置１００は、潮位偏差３のＴnの補正潮位偏差値Ｄnに潮位偏差２と同じ値を設定する（ステップＳ１５１３）。ステップＳ１５１３の処理を終了後、データ変換装置１００は、ステップＳ１５１４の処理に移行する。変数ｎがＮより大きい場合（ステップＳ１５０３：Ｎｏ）、データ変換装置１００は、潮位データの復元処理を終了する。
【０１１１】
以上説明したように、データ変換装置、データ変換方法、およびデータ変換プログラムによれば、間引き可能か否かを圧縮対象データの値と前後の圧縮対象データとで判断し、間引き可能時に圧縮対象データを同一の値のビット列に変換し出力する。これにより、同一のビットが連続して出現することになり、データの圧縮効率を高めることができる。
【０１１２】
また、データ変換装置は、圧縮対象データが間引き可能と判断された場合に圧縮対象データ内の間引きしたか否かを示す識別情報の値と、選択された圧縮対象データの値とを、同一の値のビット列に変換してもよい。これにより、同一のビットが連続して出現することになり、データの圧縮効率を高めることができる、さらに、識別情報には間引きしたという情報が設定されるため、復元時にはその識別情報を参照することで間引きしたか否かを判断することができる。
【０１１３】
また、データ変換装置は、圧縮対象データの値と前後の圧縮対象データの値の差分を算出し、２つの差分の絶対値が所定の判断値以下であれば間引き可能と判断してもよい。これにより、同一のビットが連続して出現することになり、データの圧縮効率を高めることができるうえに、傾きが急となった箇所はデータを残すことができ、データ復元時、より正確なデータを再現することができる。
【０１１４】
また、データ変換装置は、圧縮対象データの値の絶対値が所定の閾値以下の場合に、圧縮対象データを０のビット列に変換してもよい。これにより、０ビットの連続する頻度が高まり、データの圧縮効率を高めることができる。
【０１１５】
また、データ変換装置は、復元対象データの間引きされたか否かを示す識別情報によって間引きされた復元対象データを検出し、間引きされていない前後の復元対象データから、間引きされた復元対象データを算出する。算出後、復元装置は、間引きされた復元対象の値を算出された値に変換する。これにより、間引きされた値であっても識別情報に基づいてデータを復元することができる。
【０１１６】
また、間引きされた復元対象データの前の復元対象データも間引きされていた場合、時系列の前方向に検索し、間引きされていない復元対象データを検索してもよい。これにより、前方向に連続して間引きされていても識別情報に基づいてデータを復元することができる。また、前方向に連続して間引きされている場合は、２つ目の値を復元する際に、１つの目の復元で算出した途中結果を使用できるため、高速に処理することができる。
【０１１７】
同様に、間引きされた復元対象データの後の復元対象データも間引きされていた場合、時系列の後方向に検索し、間引きされていない復元対象データを検索してもよい。これにより、前方向と同様に、後方向に連続して間引きされていても識別情報に基づいてデータを復元することができる。
【０１１８】
なお、本実施の形態で説明したデータ変換方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本データ変換プログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本データ変換プログラムは、インターネット等のネットワークを介して配布してもよい。
【０１１９】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１２０】
（付記１）時系列な複数の圧縮対象データを含む圧縮対象データ群の中から任意の圧縮対象データを選択する選択手段と、
前記選択手段によって選択された圧縮対象データの値と、当該圧縮対象データの前後の圧縮対象データの値と、に基づいて、前記選択された圧縮対象データが間引き可能か否かを判断する判断手段と、
前記判断手段によって間引き可能と判断された場合、前記選択された圧縮対象データを構成するビット列を全ビットが同一の値のビット列に変換する変換手段と、
前記変換手段による変換後の圧縮対象データを含む圧縮対象データ群を出力する出力手段と、
を備えることを特徴とするデータ変換装置。
【０１２１】
（付記２）前記変換手段は、
前記判断手段によって間引き可能と判断された場合、前記圧縮対象データ内の間引きしたか否かを示す識別情報の値と、前記選択された圧縮対象データの値とを、全ビットが同一の値のビット列に変換することを特徴とする付記１に記載のデータ変換装置。
【０１２２】
（付記３）前記圧縮対象データの値と前記圧縮対象データの前の圧縮対象データの値との第１の差分と、前記圧縮対象データの後の圧縮対象データの値と前記圧縮対象データの値との第２の差分と、を算出する算出手段と、をさらに備え、
前記判断手段は、
前記算出手段によって算出された第１の差分と第２の差分との差分の絶対値が所定の判断値以下である場合、前記圧縮対象データが間引き可能であると判断することを特徴とする付記１または２に記載のデータ変換装置。
【０１２３】
（付記４）前記選択手段によって選択された圧縮対象データの値の絶対値が所定の閾値以下であることを検出する検出手段と、をさらに備え、
前記変換手段は、
前記検出手段によって前記所定の閾値以下と検出された場合、前記選択された圧縮対象データを構成するビット列を０のビット列に変換することを特徴とする付記１〜３のいずれか一つに記載のデータ変換装置。
【０１２４】
（付記５）時系列な複数の復元対象データを含む復元対象データ群の中から前記復元対象データ内の間引きされたか否かを示す識別情報に基づいて、間引きされた復元対象データを検出する検出手段と、
前記検出手段によって間引きされた復元対象データが検出された場合、検出された復元対象データの前後の復元対象データが間引きされたか否かを判断する判断手段と、
前記判断手段によって前記前後の復元対象データが間引きされていないと判断された場合、前記前後の復元対象データの値に基づいて、前記検出された復元対象データの値を算出する算出手段と、
前記算出手段によって算出された値を前記間引きされた復元対象データの値に変換する変換手段と、
を備えることを特徴とするデータ変換装置。
【０１２５】
（付記６）前記判断手段によって前記検出された復元対象データの前の復元対象データが間引きされたと判断された場合、前記検出された復元対象データから時系列の前方向に向かって間引きされていない復元対象データを検索する検索手段と、
前記検索手段によって検索された復元対象データを前方の復元対象データに設定し、前記検出された復元対象データの次の復元対象データを後方の復元対象データに設定する設定手段と、をさらに備え、
前記算出手段は、
前記設定手段によって設定された前方および後方の復元対象データの値および時刻と前記検出された復元対象データの時刻とに基づいて、前記検出された復元対象データの値を算出することを特徴とする付記５に記載のデータ変換装置。
【０１２６】
（付記７）前記検索手段は、
前記判断手段によって前記検出された復元対象データの後の復元対象データが間引きされたと判断された場合、前記検出された復元対象データから時系列の後方向に向かって間引きされていない復元対象データを検索し、
前記設定手段は、
前記検索手段によって検索された復元対象データを前記後方の復元対象データに設定することを特徴とする付記５または６に記載のデータ変換装置。
【０１２７】
（付記８）コンピュータが、
時系列な複数の圧縮対象データを含む圧縮対象データ群の中から任意の圧縮対象データを選択する選択工程と、
前記選択工程によって選択された圧縮対象データの値と、当該圧縮対象データの前後の圧縮対象データの値と、に基づいて、前記選択された圧縮対象データが間引き可能か否かを判断する判断工程と、
前記判断工程によって間引き可能と判断された場合、前記選択された圧縮対象データを構成するビット列を全ビットが同一の値のビット列に変換する変換工程と、
前記変換工程による変換後の圧縮対象データを含む圧縮対象データ群を出力する出力工程と、
を実行することを特徴とするデータ変換方法。
【０１２８】
（付記９）コンピュータが、
時系列な複数の復元対象データを含む復元対象データ群の中から前記復元対象データ内の間引きされたか否かを示す識別情報に基づいて、間引きされた復元対象データを検出する検出工程と、
前記検出工程によって間引きされた復元対象データが検出された場合、検出された復元対象データの前後の復元対象データが間引きされたか否かを判断する判断工程と、
前記判断工程によって前記前後の復元対象データが間引きされていないと判断された場合、前記前後の復元対象データの値に基づいて、前記検出された復元対象データの値を算出する算出工程と、
前記算出工程によって算出された値を前記間引きされた復元対象データの値に変換する変換工程と、
を実行することを特徴とするデータ変換方法。
【０１２９】
（付記１０）コンピュータに、
時系列な複数の圧縮対象データを含む圧縮対象データ群の中から任意の圧縮対象データを選択する選択工程と、
前記選択工程によって選択された圧縮対象データの値と、当該圧縮対象データの前後の圧縮対象データの値と、に基づいて、前記選択された圧縮対象データが間引き可能か否かを判断する判断工程と、
前記判断工程によって間引き可能と判断された場合、前記選択された圧縮対象データを構成するビット列を全ビットが同一の値のビット列に変換する変換工程と、
前記変換工程による変換後の圧縮対象データを含む圧縮対象データ群を出力する出力工程と、
を実行させることを特徴とするデータ変換プログラム。
【０１３０】
（付記１１）コンピュータに、
時系列な複数の復元対象データを含む復元対象データ群の中から前記復元対象データ内の間引きされたか否かを示す識別情報に基づいて、間引きされた復元対象データを検出する検出工程と、
前記検出工程によって間引きされた復元対象データが検出された場合、検出された復元対象データの前後の復元対象データが間引きされたか否かを判断する判断工程と、
前記判断工程によって前記前後の復元対象データが間引きされていないと判断された場合、前記前後の復元対象データの値に基づいて、前記検出された復元対象データの値を算出する算出工程と、
前記算出工程によって算出された値を前記間引きされた復元対象データの値に変換する変換工程と、
を実行させることを特徴とするデータ変換プログラム。
【符号の説明】
【０１３１】
１００  データ変換装置
２０１  間引き・圧縮部
２０２  圧縮データ変換部
２０３  選択部
２０４  判断部
２０５  変換部
２０６  出力部
２０７  算出部
２０８  検出部
２０９  圧縮部
２２１  復元部
２２２  伸長データ変換部
２２３  伸長部
２２４  検出部
２２５  判断部
２２６  算出部
２２７  変換部
２２８  検索部
２２９  設定部
【図１】
2011217151.tif 000003
【図２】
2011217151.tif 000004
【図３】
2011217151.tif 000005
【図４】
2011217151.tif 000006
【図５】
2011217151.tif 000007
【図６】
2011217151.tif 000008
【図７】
2011217151.tif 000009
【図８】
2011217151.tif 000010
【図９】
2011217151.tif 000011
【図１０】
2011217151.tif 000012
【図１１】
2011217151.tif 000013
【図１２】
2011217151.tif 000014
【図１３】
2011217151.tif 000015
【図１４】
2011217151.tif 000016
【図１５】
2011217151.tif 000017