JP7135955B2 - データ圧縮方法、データ圧縮装置 - Google Patents

データ圧縮方法、データ圧縮装置 Download PDF

Info

Publication number
JP7135955B2
JP7135955B2 JP2019050301A JP2019050301A JP7135955B2 JP 7135955 B2 JP7135955 B2 JP 7135955B2 JP 2019050301 A JP2019050301 A JP 2019050301A JP 2019050301 A JP2019050301 A JP 2019050301A JP 7135955 B2 JP7135955 B2 JP 7135955B2
Authority
JP
Japan
Prior art keywords
data
character string
compression
converting
compression method
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.)
Active
Application number
JP2019050301A
Other languages
English (en)
Other versions
JP2020155834A (ja
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.)
Denso Corp
Original Assignee
Denso Corp
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 Denso Corp filed Critical Denso Corp
Priority to JP2019050301A priority Critical patent/JP7135955B2/ja
Priority to US16/816,468 priority patent/US11443456B2/en
Publication of JP2020155834A publication Critical patent/JP2020155834A/ja
Application granted granted Critical
Publication of JP7135955B2 publication Critical patent/JP7135955B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0076Distributed coding, e.g. network coding, involving channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y40/00IoT characterised by the purpose of the information processing
    • G16Y40/30Control
    • G16Y40/35Management of things, i.e. controlling in accordance with a policy or in order to achieve specified objectives
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0097Relays

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

本発明は、データを圧縮するデータ圧縮方法、データ圧縮装置に関する。
近年、産業分野でもいわゆるモノのインターネットの導入が進んでいる。以下、モノのインターネットを、IoTと称する。このようなIoTでは、装置の制御データの収集などが行われている。このように収集されたデータは、例えば装置の故障に対する保全に利用することができるため、長期間に渡って記憶しておくことが求められる。そして、例えば特許文献1には、収集したデータを圧縮することで少ない記憶容量で保持可能にすることが提案されている。
特開平5-344358号公報
しかしながら、産業用の装置は、例えば十数ミリ秒レベルの制御周期ごとに制御データを収集する必要があることが想定される。また、産業用の装置は、長時間の動作を毎日行うことも想定される。その結果、保存すべきデータ量が膨大になってしまう。そのため、産業用の装置を想定したIoTでは、さらに効率のよい圧縮方法が求められている。
また、産業用の装置の場合には、上記したように保全を目的としてデータ収集が行われることもあり、圧縮したデータを欠落なく元のデータに戻せることも必要とされる。
本開示の目的は、上記した事情に鑑みてなされたものであり、データを可逆的且つ効率よく圧縮することができるデータ圧縮方法、データ圧縮装置を提供することにある。
本開示のデータ圧縮方法は、文字および数字の少なくとも一方を含むデータを圧縮するものであって、データを0と1の文字列データに変換する工程と、文字列データに含まれている0と1をそれぞれ1ビットのデータとみなして、二次元配列のデータ領域に配置する工程と、データ領域に配置されたデータを、画像処理手法を用いて可逆圧縮する工程と、を含む。
実施形態のデータ圧縮装置を含むIoTシステムの構成を模式的に示す図 PLCの出力態様の一例を時系列と個別の時刻とで示す図 PLCから送信されるCSVデータの一例を模式的に示す図 CSVデータを圧縮する圧縮処理の流れを示す図 CSVデータを文字列化データに変換する態様を模式的に示す図 文字列データの一例を模式的に示す図 データ領域の一例を模式的に示す図 疑似画像データの生成態様を模式的に示す図 可逆圧縮データの一例をPGN形式で視覚的に示す図 可逆圧縮データからCSVデータを再生する再生処理の流れを示す図
以下、実施形態について図面を参照しながら説明する。
図1に示すように、本実施形態のデータ圧縮装置1は、産業用の装置である例えばプログラマブルロジックコントローラ2(以下、PLC2)が接続されたInternet of Thingsシステム3(以下、IoTシステム3)を構成しており、PLC2の制御データを収集する。このPLC2は、詳細は後述するが、自身に設けられているリレーの開閉状態やセンサ4の検出値などの制御データを、カンマ区切りのテキストファイル形式(以下、CSV形式)で出力する。なお、PLC2にセンサ4が接続されない構成の場合もある。
そして、データ圧縮装置1は、PLC2から送信されたCSV形式のデータを圧縮するとともに、通信回線5を介して外部の記憶装置6に圧縮したデータを保存する。つまり、本実施形態の場合、CSV形式のデータが圧縮対象になっている。この通信回線5には他の国内拠点7や海外拠点8などが接続されており、必要応じて、記憶装置6からそれらの拠点に圧縮したデータが送信される。なお、記憶装置6を設けずにデータ圧縮装置1に圧縮されたデータを記憶する構成や、記憶装置6とデータ圧縮装置1の双方に記憶する構成とすることもできる。
このデータ圧縮装置1は、制御部1a、通信部1b、変換部1c、配置部1d、圧縮部1eおよび再生部1fなどを備えている。制御部1aは、図示しない記憶媒体に記憶されているコンピュータプログラムを実行することにより、データ圧縮装置1の全体を制御する。
通信部1bは、PLC2との間の通信を行うとともに、通信回線5を介して外部の記憶装置6や国内拠点7あるいは海外拠点8との間の通信を行う。この通信回線5は、いわゆるインターネットを想定している。
詳細は後述するが、変換部1cは、通信部1bで受信したCSV形式のデータを、0と1の文字列データに変換する。配置部1dは、変換部1cで変換した文字列データを、例えばメモリ上に設けた二次元配列のデータ領域に配置する。圧縮部1eは、データ領域に配置された文字列データを、画像処理手法を用いて可逆圧縮する。再生部1fは、可逆圧縮されたデータを元の形式ここではCSV形式のデータに再生する。
次に、上記した構成の作用について説明する。
まず、PLC2から送信される制御データについて、センサ4が接続されている状態を例にして簡単に説明する。このPLC2は、図2に時系列として示すように、例えば4つのリレーA~リレーDを有しており、センサ4で対象物の位置を検出しているものとする。
図2の場合、PLC2は、時刻T0から制御データの記録を開始しており、その後、制御周期ごとに制御データを記録している。このとき、PLC2は、リレーA~リレーDの開閉状態とセンサ4の検出値とを時系列で記録している。なお、図2に示す制御データは一例である。
このため、制御データを解析すれば、図2に個別の時刻として示すように、例えば時刻T0であればリレーAは開状態、リレーBは閉状態、リレーCは開状態、リレーDは閉状態となっており、そのときの対象物の位置が800であったことなどを把握できる。
そして、PLC2は、図3に示すように、例えば動作サイクルごと、あるいは、所定の期間ごとに制御データをCSV形式でデータ圧縮装置1に送信する。以下、データ圧縮装置1に送信されるCSV形式のデータを、CSVデータ9と称する。
このCSVデータ9には、リレーの開閉状態が、開状態であればOFF、閉状態であればONのように、目視で把握可能な文字として記録されている。つまり、CSVデータ9には、文字および数字の少なくとも一方、ここでは双方が含まれている。また、CSVデータ9には、データを記憶した時刻を示すT0等のタイムスタンプが含まれている。なお、図3に示すCSVデータ9は、あくまでも一例である。
このようなCSVデータ9を受信することにより、データ圧縮装置1や他の装置は、例えば表計算ソフトを使って図2に示した時系列のデータの確認や、トラブルが発生した際の制御データとの突き合わせ、あるいは、他の製造ラインの立ち上げの基準にするなど、CSVデータ9を活用することができる。
ただし、前述のように、PLC2のような産業用の装置では、例えば十数ミリ秒レベルの制御周期ごとに制御データが更新されることがある。また、PLC2は、長時間の動作を毎日行うことも想定される。そのため、例えば10ミリ秒ごとに制御データが更新されるとすると、1秒間で100回分の制御データが更新され、その際、収集すべきデータの種類が1000種類であったとすると、1秒間で10万個のデータを蓄積する必要がある。そのため、例えば24時間連続稼動している場合には、1日で86億個といった膨大なデータを蓄積する必要がある。
そして、そのような膨大なデータを蓄積するためには、大容量の記憶装置6を様子縷々必要がある等、投資コストも膨大になる。また、蓄積するデータ量が膨大になると、他の記憶装置6に蓄積したり他の拠点に送信したりする場合に多大な時間が掛かり、即応性が悪化してしまう。さらに、蓄積したデータを故障に対する保全や製造ラインの立ち上げなどに利用するためには、圧縮しても欠落なく元のデータに戻せることも必要とされる。
そこで、データ圧縮装置1は、まず、PLC2から送信されてくるCSVデータ9から幾つかの無駄を省くことにより、まずデータ量を削減し、その状態で圧縮することにより最終的なデータ量を削減している。なお、ここで言う無駄とは、仮に削除した場合であっても元のデータを復元することができることを意味している。
ここで、上記した図3に示すCSVデータ9を例にして、CSVデータ9に含まれる無駄について説明する。CSVデータ9には、例えばT0というタイムスタンプ、データの区切りを示す「,」で示すカンマの文字、リレーの状態を示す「ON」や「OFF」の文字、「800」として示すセンサ4の検出値といった数値データなどが含まれている。
まず、1つ目の無駄として、カンマの文字が考えられる。カンマの文字は、データの区切りとして挿入されているため、データの数とほぼ同数が含まれている。そのため、カンマの文字を削減することができれば、圧縮すべきデータの数を単純計算で1/2程度に削減することができる。
また、本実施形態のようにPLC2から送信されるCSVデータ9を対象とする場合、そのCSVデータ9は、制御データが所定のフォーマットで記憶されている。より具体的に言えば、PLC2から送信されるCSVデータ9は、リレーの開閉状態や数値などのデータが、予め定められた位置に、予め定められた順序で、予め定められた数が記憶されているそのため、仮にカンマを削除しても、元のデータの並びや区切りを把握することができる。
次に、2つ目の無駄として、文字コードが考えられる。CSVデータ9には、上記した文字や数値データなどが、文字コードとして含まれている。例えば「800」という数値データは、「8」と「0」と「0」の数字の組み合わせで構成されている。そして、例えば「8」の数字は、文字コードでは16進数の「38」で表され、コンピュータで扱える2進数としては「00111000」の8ビット分のデータ量となる。そのため、CSV上で「800」と記録されている場合、そのデータ量は24ビット分になる。そのため、後述するように数値を2進数に変換し、「0」と「1」を1ビットのデータとして扱うことにより、1つの文字に相当するデータ量を、1/8にまで削減することができる。
また、3つ目の無駄として、リレーの状態を示す「ON」や「OFF」の文字が考えられる。リレーは、開状態または閉状態の2状態を取り得るため、端的に言えば、0か1の1文字でその開閉状態を表すことができる。つまり、CSVデータ9に含まれる「ON」や「OFF」の文字そのものが無駄であると考えられる。そのため、後述するように例えば「ON」を「1」、「OFF」を1に割り当てることで、データ量を1/2または11/3にまで削減することができる。
そして、データ圧縮装置1は、以下のようにして、これらの無駄を省いている。なお、以下に説明する処理は変換部1c等によって行われるものの、ここでは説明の簡略化のために、データ圧縮装置1を主体にして説明する。
データ圧縮装置1は、図4に示す圧縮処理を実行し、ステップS1において、CSVデータ9を取得する。なお、CSVデータ9を受信すると自動的に圧縮処理を開始する構成とすることもできるし、CSVデータ9を一時的に記憶しておき、ユーザにより圧縮するための操作が入力されたら圧縮処理を開始する構成とすることもできる。また、以下に示すステップS2~S5の処理は順不同であり、その順序を入れ替えることができる。
取得したCSVデータ9には、例えば図5に元データとして示すように、時刻T0、データの区切りを示す「,」で示すカンマの文字、リレーの状態を示す「ON」や「OFF」の文字、「800」として示すセンサ4の検出値などの数値データが含まれている。
データ圧縮装置1は、圧縮処理のステップS2において、CSVデータ9に含まれている文字、ここではリレーの状態を示す「ON」または「OFF」の文字を、0と1の何れかに割り当てる。本実施形態では、開状態を示す「OFF」の文字を0に割り当て、閉状態を示す「ON」の文字を1に割り当てている。これにより、図5に割り当て後データとして示すように、「ON」および「OFF」の文字が、対応する0または1のビットで表される。また、割り当て後データから元データを再生することもできる。
続いて、データ圧縮装置1は、圧縮処理のステップS3において、数値データを2進数に変換する。例えば数値データが「800」であった場合、データ圧縮装置1は、「800」を固定ビット幅ここでは16ビット幅の2進数である「0000001100100000」に変換する。これにより、図5に2進化後後データとして示すように、数値データが対応する0と1の文字列で表される。
なお、変換する際のビット幅は、数値データが取り得る範囲をカバーできる固定値であればよく、8ビット幅や32ビット幅とすることもできる。また、2進化後データから元の割り当て後データを再生することもできる。
続いて、データ圧縮装置1は、圧縮処理のステップS4において、タイムスタンプを削除する。これにより、図5に時刻削除後データとして示すように、制御データを0と1の文字列で表すことができる。
なお、タイムスタンプを削除した場合には、時刻削除後データ単体でみると、データと時刻との対応付けがなくなっている。ただし、CSVデータ9には上記したように例えば制御周期ごとに制御データが記憶されている。そのため、ある制御データとその次に記憶されている制御データとの時間間隔は、制御周期に一致することになる。
そして、後述するように、最初に記憶されているタイムスタンプは圧縮後のデータを保存する際のファイル名に用いられる。このため、ステップS4の時点でタイムスタンプを削除したとしても、圧縮後にタイムスタンプを復帰させて時系列の変化を把握したりすることは可能である。つまり、時刻削除後データから元の2進化後データを再生することができる。
続いて、データ圧縮装置1は、圧縮処理のステップS5において、カンマの文字を削除する。これにより、図5に文字列化データとして示すように、0と1の文字だけを含む状態になる。この場合、上記したように、PLC2であれば所定のフォーマットでデータが記憶されているため、カンマの文字を削除したとしても、文字列化データの最初の4文字はリレーの開閉状態を示し、その次の16文字は位置を2進数で示していることを把握することができる。つまり、文字列化データから元の時刻削除後データを再生することができる。
そして、データ圧縮装置1は、CSVデータ9の全体を文字列化データに変換することにより、図6に示す文字列データ10を生成する。この文字列データ10は、「0」と「1」の文字だけが含まれたデータである。そのため、端的に言えば、各文字を2進数の1ビットと見なすことにより、例えば文字列データ10の例えば最初の8文字を8ビットデータのようにして扱うことができる。
続いて、データ圧縮装置1は、圧縮処理のステップS6において、文字列データ10を、メモリ上に用意したデータ領域11に二次元配列で配置する。このデータ領域11は、図7に示すように、一般的なビットマップ画像と同様に、X×Yの画素数を有するドットマトリックス型の2次元領域であって、各画素にそれぞれ階調が設定されている。本実施形態では、各画素にいわゆるフルカラーと同等の24ビットの階調が設定されている。なお、画素数は圧縮対象となるデータ量に応じて適宜設定すればよく、また、階調も圧縮対象となるデータ量に応じて8ビットや16ビットに適宜設定することができる。
具体的には、データ圧縮装置1は、図8に示すように、例えばある時刻の文字列データ10であるDnを直列に配置し、その全体を、階調に対応する個別データであるBnに分割する。なお、Dendは最後の時刻の文字列データ10を示し、Bendは最後の個別データを意味している。
本実施形態の場合、文字列データ10の文字数が20個の場合を例にしている。そのため、複数の文字列データ10から1つの個別データに文字が割り当てられることになる。なお、文字列データ10の文字数が階調よりも多い場合には、1つの文字列データ10に複数の個別データが割り当てられることになる。また、最後の個別データは、階調分の文字列データ10がない場合には、ダミーの文字列が挿入される。また、個別データに分割してもデータの並びおよび数は変化しないため、個別データから文字列データ10を再生することができる。
そして、データ圧縮装置1は、個別データの「0」、「1」の文字を、各画素の階調の1ビットに割り当てながら、全ての個別データをデータ領域11に配置する。以下、個別データが配置されたデータ領域11を、擬似的なビットマップ画像データとみなして、便宜的に疑似画像データ12と称する。
続いて、データ圧縮装置1は、圧縮処理のステップS7において、疑似画像データ12をPortable Network Graphics(以下、PNG)形式の画像処理手法を用いて可逆圧縮する。PNG形式は、周知のように、辞書方式と呼ばれる圧縮方法であり、予め定められたパターンを読み取って数値化する手法である。また、PNG形式の圧縮手法は、コンピュータの分野で広く採用されており、実績も参考になるコードも充実している。以下、可逆圧縮されたデータを、可逆圧縮データ13と称する。
そして、データ圧縮装置1は、PNG形式で圧縮した可逆圧縮データ13をPNGファイルとして保存する。このとき、データ圧縮装置1は、最初のデータの時刻であるT0またはT0を特定可能なファイル名でPNGファイルを保存する。これにより、可逆圧縮データ13単独で、最初にデータが記録された時刻を特定でき、その後のデータは、制御周期を累積することにより、各データが記録された時刻を再生することができる。
このようにして生成された可逆圧縮データ13は、一例ではあるが、例えばCSVデータ9のファイルサイズが600KBであった場合、カンマの削除や「ON」や「OFF」の文字を「0」と「1」に割り当てることで文字数を削減し、「0」や「1」の文字をそれぞれ1ビットのデータとして扱い、それをPNG形式で圧縮することにより、ファイルサイズが3.6KB程度にまで圧縮されることが確認できた。また、各種のCSVデータ9で試したところ、概ね1/1000から1/1500程度まで圧縮されるも確認できた。
このように、本実施形態のデータ圧縮装置1および圧縮方法によれば、記憶装置6の容量を大きく削減することができ、また、記憶装置6の容量が同じであればより長期間に渡ってデータを蓄積することができ、さらには、通信回線5の負荷の低減並びにデータの通信に要する時間を大きく削減することができた。
ところで、PNG形式で可逆圧縮した可逆圧縮データ13は、そのデータ構造がPNG形式の画像ファイルと一致する。そのため、図9に示すように、可逆圧縮データ13は、例えば画像ソフトによって表示することができる。この画像を見ても元のデータを類推することは困難であるものの、例えば正常動作時の可逆圧縮データ13とトラブルが発生したときの可逆圧縮データ13とを対比させることで、制御の食い違いの有無や発生時刻等をある程度視覚的に推測することはできる。
ただし、保全のためには、元のCSVデータ9が必要になると考えられる。そのため、データ圧縮装置1あるいは他の拠点等に設置されているコンピュータは、以下のようにして可逆圧縮データ13から元のデータを再生する。以下、データ圧縮装置1を例にして説明する。
データ圧縮装置1は、図10に示す再生処理を実行し、ステップS10において可逆圧縮データ13を取得すると、ステップS11において再生パラメータを読み出す。この再生パラメータは、対象となるPLC2の形式やデータフォーマットを含んでおり、上記した手順で圧縮された可逆圧縮データ13から元のCSVデータ9を再生するための情報として予め記憶されている。
なお、可逆圧縮データ13は、PNG形式の画像ファイルと同等に扱えるため、そのヘッダにPLC2の型式やデータフォーマットを特定可能なテキスト文字列を再生パラメータとして記録しておく構成とすることもできる。これにより、可逆圧縮データ13単体で元のCSVデータ9を再生することができる。あるいは、可逆圧縮データ13に添付してパラメータファイルを保存する構成等にすることもできる。
続いて、データ圧縮装置1は、ステップS12において、取得した再生パラメータを用いて、上記した可逆圧縮の逆の手順を踏むことにより、可逆圧縮データ13を元のCSVデータ9に再生する。これにより、元のCSVデータ9のままの利用が可能になる。
このように、データ圧縮装置1並びに圧縮方法は、データを可逆的且つ効率よく圧縮するとともに、圧縮したデータからの元のデータの再生を行う。
以上説明した実施形態によれば、次のような効果を得ることができる。
実施形態のデータ圧縮方法は、文字および数字の少なくとも一方を含むデータを圧縮するものであって、データを0と1の文字列データ10に変換する工程と、文字列データ10に含まれている0と1をそれぞれ1ビットのデータとみなして二次元配列のデータ領域11に配置する工程と、データ領域11に配置されたデータを、画像処理手法を用いて可逆圧縮する工程と、含んでいる。
このように、元のデータに含まれている文字を0と1に変換して1ビットのデータとして扱うことで、8ビットのデータ量を必要とする文字コードに比べて、圧縮すべきデータ量を単純計算で1/8に削減することが可能となる。また、データ領域11に配置された各ビットを「0」と「1」の文字に対応付けし直すことにより、データ領域11のデータを元のデータに再生することも可能となる。したがって、データを可逆的且つ効率よく圧縮することができる。
また、必要となる記憶装置6の容量を大きく削減することができるとともに、記憶装置6の容量が同じであればより長期間に渡ってデータを蓄積することができるため、設備コストやランニングコストを大きく低減することができる。また、通信回線5の負荷の低減並びにデータの通信に要する時間を大きく削減することができるため、システムに掛かるコストだけでなく、周辺設備に掛かるコストも低減することができる。
画像処理手法を用いて可逆圧縮する工程では、PNG形式の画像処理手法を用いる。PNG形式の画像処理手法は、周知の技術であるため、新たに圧縮アルゴリズムを作る必要がなく、投資コストを抑制することができる。勿論、圧縮率も高いため、データ領域11に配置したデータを効率よく可逆圧縮することができる。また、コンピュータの分野で広く採用されており、信頼性も十分である。
圧縮対象となるデータには、区切りを表すカンマの文字が含まれており、文字列データ10に変換する工程では、カンマの文字を削除する。カンマの文字は、データの区切りとして挿入されているため、データの数とほぼ同数が含まれている。そのため、カンマの文字を削減することができれば、圧縮すべきデータの数を単純計算で1/2程度に削減することができ、より効率的にデータを圧縮することができる。
圧縮対象となるデータには、数値データが含まれており、文字列データ10に変換する工程では、数値データを、固定ビット幅の2進数に変換する。PLC2の場合、センサ4の検出値のような数値データが含まれていることがある。そして、数値データは、いわゆるアナログデータであり、CSVデータ9上で異なる文字数となることがある。
そのため、数値データが取り得る範囲をカバーできる固定ビット幅とすることにより、文字列化データの文字数を統一でき、配置や再生が容易になる。また、圧縮処理の途中で一時的に文字数つまりはデータ量が元のデータより増加したとしても、変換した「0」と「1」を1ビットに割り付けて圧縮することで、最終的なデータ量を大きく削減することができる。
圧縮対象となるデータは、PLC2から送信されるものであって、リレーの状態を表すONまたはOFFの文字列が含まれており、文字列データ10に変換する工程では、ONとOFFの文字列を1と0とに割り当てる。これにより、圧縮すべきデータ量を予め1/2あるいは1/3に削減することができる。
圧縮対象となるデータは、PLC2から送信されるものであって、制御周期のタイムスタンプに対応付けられており、対応付けられている最初のタイムスタンプを、可逆圧縮したデータを保存する際のファイル名とする。これにより、圧縮すべきデータからタイムスタンプ分のデータ量を削減でき、より圧縮率を高めることができる。
また、実施形態のように可逆圧縮データを元のCSVデータ9に再生する再生処理を行うことにより、故障に対する保全等に利用することができる。このとき、データ量が小さいことから、例えば他の拠点にデータを送信する際の通信時間を短縮できる。したがって、故障からの迅速な復帰を期待できる。
また、実施形態のように可逆圧縮したデータと可逆圧縮したデータを元のデータに再生するためのパラメータとを、1つのファイルとして保存する構成とすることができる。これにより、可逆圧縮データ単体で元のCSVデータ9を再生でき、利便性が向上するともにまた、蓄積しておくファイル数を削減でき、管理を容易にすることができる。
また、データ圧縮装置1は、上記したデータ圧縮方法を実施するために、データを0と1の文字列データ10に変換する変換部1cと、変換部1cで変換した文字列データ10を、二次元配列のデータ領域11に配置する配置部1dと、データ領域11に配置されたデータを画像処理手法を用いて可逆圧縮する圧縮部1eとを備えている。このような構成のデータ圧縮装置1によっても、データを可逆的且つ効率よく圧縮することができるなど、上記したデータ圧縮方法と同様の効果を得ることができる。
また、データ圧縮装置1の制御部1aに上記したデータ圧縮方法を実行するコンピュータプログラムによっても、データを可逆的且つ効率よく圧縮することができるなど、上記したデータ圧縮方法と同様の効果を得ることができる。
実施形態ではリレーの状態も含めてデータを記憶する構成を例示したが、なお、リレーは、1回の動作サイクル中において頻繁に開閉されることは少なく、また、一旦開状態または閉状態になると、その状態がしばらくの間継続することになる。そして、開閉状態が変化していないにも関わらずデータとして蓄積することは、無駄であると考えることができる。つまり、「ON」や「OFF」の文字列の回数が考えられる。
そのため、圧縮対象となるデータがPLC2から送信されるものであって、リレーの状態を表すデータが含まれている場合には、リレーの状態が切り替えられたタイミングを記憶することで、より効率よく圧縮することができる。この場合、リレーの開閉状態が変化した場合に例えば専用のデータ列を所定の規則に従って挿入することにより、例えば実施形態の図5に例示した各時刻の20ビットのデータを、4ビット分を省略した16ビットのデータとすることができ、圧縮率を大きく向上させることができる。
実施形態では個別データを順番にデータ領域11に配置する例を示したが、1つの文字列化データが1画素の階調に納まる場合には、1画素に1つの文字列化データを配置する構成とすることもできる。
実施形態では図8のようにデータ領域11の行方向に向けて順番に配置する例を示したが、列方向に向けて順番に配置する構成とすることもできる。
実施形態では予めデータ領域11を用意する例を示したが、例えば行数つまりは横方向の画素数を予め設定しておき、個別データを順番に配置していくことで、列数つまりは縦方向の画素数を決めることもできる。勿論、列数の画素数を予め設定しておき、個別データを順番に配置していくことで、行数を決めることもできる。
本開示は、実施例に準拠して記述されたが、本開示は当該実施例や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、さらには、それらに一要素のみ、それ以上、あるいはそれ以下、を含む他の組み合わせや形態をも、本開示の範疇や思想範囲に含まれるものである。
本開示に記載の制御部1a及びその手法は、コンピュータプログラムにより具体化された一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリを構成することによって提供された専用コンピュータにより、実現されてもよい。あるいは、本開示に記載の制御部及びその手法は、一つ以上の専用ハードウェア論理回路によってプロセッサを構成することによって提供された専用コンピュータにより、実現されてもよい。もしくは、本開示に記載の制御部1a及びその手法は、一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリと一つ以上のハードウェア論理回路によって構成されたプロセッサとの組み合わせにより構成された一つ以上の専用コンピュータにより、実現されてもよい。また、コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に記憶されていてもよい。
図面中、1はデータ圧縮装置、1cは変換部、1dは配置部、1eは圧縮部、2はPLC(プログラマブルロジックコントローラ)、4はセンサ、9はCSVデータ、10は文字列データ、11はデータ領域、13は可逆圧縮データを示す。

Claims (9)

  1. 文字および数字の少なくとも一方を含むデータを圧縮するデータ圧縮方法であって、
    前記データを、0と1の文字列データに変換する工程(S2、S3、S4、S5)と、
    前記文字列データに含まれている0と1をそれぞれ1ビットのデータとみなして、二次元配列の疑似的な画像データとしてのデータ領域の各画素の階調に対応付けて配置する工程(S6)と、
    前記データ領域に配置されたデータを、画像処理手法を用いて可逆圧縮する工程(S7)と、
    を含むデータ圧縮方法。
  2. 前記可逆圧縮する工程は、PNG形式の画像処理手法を用いて可逆圧縮する工程(S7)を含む請求項1記載のデータ圧縮方法。
  3. 前記データには、区切りを表すカンマの文字が含まれており、
    前記文字列データに変換する工程は、カンマの文字を削除する工程(S5)を含む請求項1または2記載のデータ圧縮方法。
  4. 前記データには、数値データが含まれており、
    前記文字列データに変換する工程は、数値データを、固定ビット幅の2進数に変換する工程(S3)を含む請求項1から3のいずれか一項記載のデータ圧縮方法。
  5. 前記データは、プログラマブルロジックコントローラから送信されるものであって、リレーの状態を表すONまたはOFFの文字が含まれており、
    前記文字列データに変換する工程は、ONとOFFの文字を1と0とに割り当てる工程(S2)を含む請求項1から4のいずれか一項記載のデータ圧縮方法。
  6. 前記データは、プログラマブルロジックコントローラから送信されるものであって、制御周期のタイムスタンプが含まれており、
    前記文字列データに変換する工程は、タイムスタンプを削除する工程(S4)を含む請求項1から5のいずれか一項記載のデータ圧縮方法。
  7. 前記データは、プログラマブルロジックコントローラから送信されるものであって、リレーの状態を表すデータが含まれており、
    前記リレーの状態が切り替えられたタイミングを記憶する請求項1から6のいずれか一項記載のデータ圧縮方法。
  8. 前記データは、プログラマブルロジックコントローラから送信されるものであって、制御周期のタイムスタンプが含まれており、
    可逆圧縮したデータを保存する際、最初のタイムスタンプをファイル名に用いる請求項1から7のいずれか一項記載のデータ圧縮方法。
  9. 文字および数字の少なくとも一方を含むデータを圧縮するデータ圧縮装置(1)であって、
    前記データを、0と1の文字列データに変換する変換部(1c)と、
    前記変換部で変換した文字列データに含まれる0と1をそれぞれ1ビットのデータとみなして、二次元配列の疑似的な画像データとしてのデータ領域の各画素の階調に対応付けて配置する配置部(1d)と、
    前記データ領域に配置されたデータを、画像処理手法を用いて可逆圧縮する圧縮部(1e)と、
    を備えるデータ圧縮装置。
JP2019050301A 2019-03-18 2019-03-18 データ圧縮方法、データ圧縮装置 Active JP7135955B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019050301A JP7135955B2 (ja) 2019-03-18 2019-03-18 データ圧縮方法、データ圧縮装置
US16/816,468 US11443456B2 (en) 2019-03-18 2020-03-12 Data compression method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019050301A JP7135955B2 (ja) 2019-03-18 2019-03-18 データ圧縮方法、データ圧縮装置

Publications (2)

Publication Number Publication Date
JP2020155834A JP2020155834A (ja) 2020-09-24
JP7135955B2 true JP7135955B2 (ja) 2022-09-13

Family

ID=72515233

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019050301A Active JP7135955B2 (ja) 2019-03-18 2019-03-18 データ圧縮方法、データ圧縮装置

Country Status (2)

Country Link
US (1) US11443456B2 (ja)
JP (1) JP7135955B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113163198B (zh) * 2021-03-19 2022-12-06 北京百度网讯科技有限公司 图像压缩方法、解压方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005516554A6 (ja) 2002-02-01 2005-08-11 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 可変長カラー・コードを用いる、パレット化されたカラー画像の圧縮
JP2008147489A (ja) 2006-12-12 2008-06-26 Tokyo Electron Ltd 群管理システム、サーバ装置、およびプログラム
JP2013080443A (ja) 2011-10-05 2013-05-02 Pioneer Electronic Corp 画面共有方法、および、画面共有処理装置
US20180336177A1 (en) 2017-05-16 2018-11-22 Fujitsu Limited Computer-readable recording medium, encoding device, and encoding method

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3183952B2 (ja) 1992-06-10 2001-07-09 日置電機株式会社 判定波形圧縮データ作成保持装置
US5870693A (en) * 1996-03-01 1999-02-09 Sony Display Device (Singapore) Pte. Ltd. Apparatus and method for diagnosis of abnormality in processing equipment
JPH10341163A (ja) 1997-06-09 1998-12-22 Fujitsu Ltd データ圧縮方法
JP3430484B2 (ja) * 1997-08-15 2003-07-28 株式会社エヌ・ティ・ティ・ドコモ北海道 送信機、受信機、送受信機、およびデータ伝送システム
KR20040077921A (ko) * 2002-02-01 2004-09-07 코닌클리케 필립스 일렉트로닉스 엔.브이. 가변 길이 칼라 코드들로 팔레트화된 칼라 화상들의 압축
KR100750166B1 (ko) * 2005-11-15 2007-08-21 삼성전자주식회사 무선 네트워크 환경에서 효율적인 데이터 재전송 장치 및방법
US7860589B2 (en) * 2006-03-02 2010-12-28 Rockwell Automation Technologies, Inc. Programmatic access to controller construct and variable names
US20080133175A1 (en) * 2006-12-03 2008-06-05 Lobuono Mark Anthony Test interface for software-based sequence of event recording systems
JP4953145B2 (ja) 2010-08-02 2012-06-13 Necシステムテクノロジー株式会社 文字列データ圧縮装置及びその方法並びに文字列データ復元装置及びその方法
US20120205436A1 (en) * 2011-02-16 2012-08-16 Augme Technologies, Inc. System for enhanced barcode decoding and image recognition and method therefor
US20130009785A1 (en) * 2011-07-07 2013-01-10 Finn Clayton L Visual and Audio Warning System Including Test Ledger for Automated Door
JP5829226B2 (ja) * 2013-02-28 2015-12-09 本田技研工業株式会社 ナビゲーションシステム、情報提供方法及び移動通信端末
US9830369B1 (en) * 2013-05-14 2017-11-28 Jsonar, Inc. Processor for database analytics processing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005516554A6 (ja) 2002-02-01 2005-08-11 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 可変長カラー・コードを用いる、パレット化されたカラー画像の圧縮
JP2008147489A (ja) 2006-12-12 2008-06-26 Tokyo Electron Ltd 群管理システム、サーバ装置、およびプログラム
JP2013080443A (ja) 2011-10-05 2013-05-02 Pioneer Electronic Corp 画面共有方法、および、画面共有処理装置
US20180336177A1 (en) 2017-05-16 2018-11-22 Fujitsu Limited Computer-readable recording medium, encoding device, and encoding method
JP2018195956A (ja) 2017-05-16 2018-12-06 富士通株式会社 符号化プログラム、符号化装置および符号化方法

Also Published As

Publication number Publication date
US11443456B2 (en) 2022-09-13
JP2020155834A (ja) 2020-09-24
US20200302649A1 (en) 2020-09-24

Similar Documents

Publication Publication Date Title
KR101074010B1 (ko) 블록 단위 데이터 압축 및 복원 방법 및 그 장치
CN101594150B (zh) 测量数据的高效压缩方法
US8407378B2 (en) High-speed inline data compression inline with an eight byte data path
JP7099487B2 (ja) データ管理システム、データ管理方法、および、データ管理プログラム
CN105027071B (zh) 管理对存储数据单元的操作
EP3154202B1 (en) Encoding program, encoding method, encoding device, decoding program, decoding method, and decoding device
KR20150125012A (ko) 저장된 데이터 유닛들의 동작 관리
CN110021369B (zh) 基因测序数据压缩解压方法、系统及计算机可读介质
CN112379655B (zh) 一种基于星载日志系统的卫星在轨自主管理方法
WO2012040391A1 (en) Compressed distributed storage systems and methods for providing same
JP7135955B2 (ja) データ圧縮方法、データ圧縮装置
JP5556809B2 (ja) 情報処理システム、情報圧縮装置、情報復元装置、情報処理方法及びそのプログラム
CN111241062A (zh) 一种数据库备份元数据的迁移方法及装置
JP5719321B2 (ja) 画像処理用高速データ保存方法及び装置
CN107623855A (zh) 一种基于压缩编码的高嵌入率数据隐写装置及隐写方法
JP6633937B2 (ja) ヒストリデータ記録装置および方法
CN108334582B (zh) 一种实时数据库中历史数据的压缩方法
CN105009068A (zh) 管理对存储数据单元的操作
JP2017216644A (ja) データ圧縮プログラム、データ圧縮方法、データ圧縮装置、データ復元プログラム、データ復元方法、及びデータ復元装置
JP5483405B2 (ja) ログファイル管理システム、ログファイル管理方法及びプログラム
JP2006259937A (ja) データ収集装置およびデータ復元装置
JP7404734B2 (ja) データ圧縮装置、履歴情報管理システム、データ圧縮方法およびデータ圧縮プログラム
JP2830697B2 (ja) データ処理装置
CN104821829B (zh) 一种哈夫曼树保存方法及系统
JP4953145B2 (ja) 文字列データ圧縮装置及びその方法並びに文字列データ復元装置及びその方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210716

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220323

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: 20220802

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220815

R151 Written notification of patent or utility model registration

Ref document number: 7135955

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151