JP2825960B2 - データ圧縮方法及び復元方法 - Google Patents

データ圧縮方法及び復元方法

Info

Publication number
JP2825960B2
JP2825960B2 JP2275835A JP27583590A JP2825960B2 JP 2825960 B2 JP2825960 B2 JP 2825960B2 JP 2275835 A JP2275835 A JP 2275835A JP 27583590 A JP27583590 A JP 27583590A JP 2825960 B2 JP2825960 B2 JP 2825960B2
Authority
JP
Japan
Prior art keywords
dictionary
character string
character
input
encoded
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 - Lifetime
Application number
JP2275835A
Other languages
English (en)
Other versions
JPH04149766A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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
Priority to JP2275835A priority Critical patent/JP2825960B2/ja
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to EP98201928A priority patent/EP0878915A3/en
Priority to EP98201926A priority patent/EP0871295B1/en
Priority to PCT/JP1991/000252 priority patent/WO1991013395A1/ja
Priority to DE69133481T priority patent/DE69133481T2/de
Priority to EP91904319A priority patent/EP0472730B1/en
Priority to DE69133377T priority patent/DE69133377T2/de
Priority to EP98201925A priority patent/EP0871294B1/en
Priority to DE69132187T priority patent/DE69132187D1/de
Priority to KR1019910701461A priority patent/KR950013228B1/ko
Publication of JPH04149766A publication Critical patent/JPH04149766A/ja
Priority to US08/003,876 priority patent/US5254990A/en
Application granted granted Critical
Publication of JP2825960B2 publication Critical patent/JP2825960B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【発明の詳細な説明】 [概要] 符号化が済んだ直前文字列の最終文字との従属関係
(履歴)に基づく索引で複数辞書の中の1つを指定し、
入力文字列を指定辞書に登録した既に符号化済みの部分
列の内、最大長一致する部分列の参照番号で指定してLZ
W符号に符号化すると共にLZW符号から文字列を復元する
データ圧縮方法及び復元方法に関し、 複数辞書の初期登録を簡単にして符号化効率を向上す
ることを目的とし、 処理対象となる全文字種の数より少ない所定数の辞書
から成る辞書群で構成して各辞書毎に全文字種を1文字
単位に参照番号を付けて初期登録するように構成する。
[産業上の利用分野] 本発明は、ユニバーサル符号の一種である増分分解型
の改良として知られたLZW符号によるデータ圧縮方法及
び復元方法に関する。
近年、文字コード、ベクトル情報、画像など様々な種
類のデータがコンピュータで扱われるようになってお
り、扱われるデータ量も急速に増加してきている。大量
のデータを扱うときは、データの中の冗長な部分を省い
てデータ量を圧縮することで、記憶容量を減らしたり、
速く伝送したりできるようになる。
このように様々なデータを1つの方式でデータ圧縮で
きる方法としてユニバーサル符号化が提案されている。
ここで、本発明の分野は、文字コードの圧縮に限ら
ず、様々なデータに適用できるが、以下では、情報理論
で用いられている呼称を踏襲し、データの1ワード単位
を文字と呼び、データが任意ワードつながったものを文
字列と呼ぶことにする。
ユニバーサル符号の代表的な方法として、ジブ−レン
ペル(Ziv−Lempel)符号がある(詳しくは、例えば宗
像「Ziv−Lempelのデータ圧縮法」、情報処理、Vol.26,
No.1,1985年を参照のこと)。
Ziv−Lempel符号では ユニバーサル型と、 増分分解型(Incremental parsing) の2つのアルゴリズムが提案されている。
更に、ユニバーサル型アルゴリズムの改良として、LZ
SS符号がある(T.C.Bell,“Better OPM/L Text Compres
sion",IEEE Trans.on Commun.,Vol.COM−34,No.12,Dec.
1986参照)。
また、増分分解型アルゴリズムの改良としては、LZW
(Lempel−Ziv−Welch)符号がある(T.A.Welch,“A Te
chnique for High−Performance Data Compression",Co
mputer,June 1984参照)。
これらの符号の内、高速処理ができることと、アルゴ
リズムの簡単さからLZW符号が記憶装置のファイル圧縮
などで使われるようになっている。
[従来の技術] 従来のLZW符号の符号化アルゴリズムのフローチャー
トを第5図に示し、また復号化アルゴリズムのフローチ
ャートを第6図に示す。
まずLZW符号化は、書き替え可能な辞書を持ち、入力
文字列の中を相異なる文字列に分け、この文字列を出現
した順に番号を付けて辞書に登録すると共に、現在入力
している文字列を辞書に登録してある最長一致文字列の
参照番号だけで表して符号化するものである。
第7図にLZW符号化の具体例を示し、また第9図にLZW
復号化の具体例を示し、さらに第8図に符号化と復号化
で使用される辞書の内容を示す。尚、第7,8,9図にあっ
ては、説明を簡単にするためabcの3文字の組合せから
なる文字列を圧縮、復元する場合を例にとっている。
まず第5図のLZW復号化の処理を説明すると次のよう
になる。
ステップS1(以下、「ステップ」を省略): 予め全文字につき1文字からなる文字列を初期値とし
て登録してから符号化を始める。S1の符号化は入力した
最初の文字Kにより辞書を検索して参照番号ωを求め、
これを語頭文字列(prefix string)とする。
S2:入力データの次の文字Kを読み込む。
S3:文字入力が終了したか否かをチェックする。
S4:S1で求めた語頭文字列ωにS2で読み込んだ文字Kを
加えた(ωK)が辞書にあるか否か探す。
S5:もし、S4で文字列(ωK)が辞書にあれば、S5で文
字列(ωK)を参照番号ωに置き換え、再びS2に戻って
文字列(ωK)が辞書から探せなくなるまで最大一致長
の探索を続ける。
S6:もし、S4で文字列(ωK)が辞書になければ、S6に
進んでS1で求めた文字Kの参照番号ωを符号語code
(ω)として出力し、また文字列(ωK)に新たな参照
番号を付加して辞書に登録し、更にS2の入力文字Kを参
照番号ωに置き換えると共に、辞書アドレスnをインク
リメントしてS2に戻って次の文字Kを読み込む。
第7,8図を参照して具体的に説明すると次のようにな
る。
まず第7図の入力データinputは左から右へと読む。
最初の文字aを入力した時、辞書には文字aの他に一致
する文字列がないので、OUTPUT CODE 1(参照番号ω)
を符号語して出力する。そして文字aを語頭文字列ωと
する。
次に2番目の文字bを入力したとすると、この入力文
字を語頭文字列ωに加えた拡張文字列ωK=abは辞書に
ないことから、文字bのOUTPUT CODE 2を符号語として
出力する。そして、拡張文字列ωK=abに参照番号4を
付けて辞書に登録する。実際の辞書登録は第8図の右側
に示すように文字列1bとして登録される。そして文字b
が語頭文字列ωとなる。
続いて3番目の文字aを入力したとすると、文字aに
語頭文字列ωを加えた拡張文字列ωK=ba=2aは辞書に
ないことから、文字bのOUTPIT CODE 2を符号語として
出力した後、拡張文字列ωK=baを2aで表わし、参照番
号5を付けて辞書に登録する。そして文字aが開当たな
語頭文字列ωとなる。
4番目の入力文字bについては拡張文字列ωK=abは
1bの符号語4として既に辞書に登録されているので、文
字列ωKを新たな語頭文字列ωとし、5番目の文字cを
入力して拡張文字列ωK=4c=abcを作る。この拡張文
字列ωK=abcは辞書に登録されていないことから、文
字列ab=1bのOUTPUT CODE 4を符号語として出力し、拡
張文字列ωK=abcを辞書に4cの形で符号語6として登
録する、以下同様に、この処理を続ける。
次に第6図に復号化処理を説明する。この復号化で
は、復号化と同様に予め辞書に全文字につき一文字から
なる文字列を初期値として登録してから復号を始める。
S1:最初の符号CODEを読み込み参照番号ωを復号する。
現在の参照番号ωをOLDωとし、最初の符号は既に辞書
に登録された一文字の参照番号いずれかに該当すること
から、入力参照番号ωに一致する文字D(K)を探し出
し、文字Kを出力する。尚、出力した文字Kは後の例外
処理のためFINcharにセットしておく。
S2:次の符号CODEを読み込む。
S3:新たな符号があるか否か、即ち符号入力の終了の有
無をチェックする。
S4:読み込んだ符号CODEから参照番号ωを復号し、INω
としてセットする。
S5:S4で入力された符号CODEが辞書に登録されているか
否(ω≧n)かチェックする。
S6:通常、入力した符号語は前回までの処理で辞書に登
録されているため、S6に進んで参照番号ωに対応する文
字列D(ω′K)を辞書から読み出す。
S7:文字列Kを一時的にスタックし、参照番号ω′を新
たなωとして再度S6に戻り、このS6の手順を再帰的に参
照番号ωが1文字に至まで繰り返す。
S8:S7でスタックした文字をLILO(Last In Fast Out)
形式でポップアップして出力する。同時に、前回使った
参照番号OLDωと今回復元した文字列の最初の一文字K
を組(OLDω,K)と表した文字列に、新たな参照番号n
を付加して辞書に登録する。
このLZW復号処理を第9図について具体的に説明する
と次のようになる。
まず最初の入力符号は1であり、1文字a,b,cについ
ては既に参照番号1,2,3として第1表に示すように辞書
に登録されているため、辞書の参照により符号1に一致
する参照番号の文字列aに置き換えて出力する。次の符
号2についても同様にして文字bに置き換えて出力す
る。このとき前回処理した符号と今回復号した最初の一
文字bとを組み合わせた(1b)に新たな参照番号4を付
加して辞書に登録する。
3番目の符号4は辞書の探索により1bからabと置き換
えて文字列abを出力する。同時に前回処理した符号2と
今回復号した文字列の1番目の文字aとの組合せた文字
列2a(=ba)を新たな参照番号5を付加して辞書に登録
する。
以下同様に、この処理を繰り返す。
第9図の復号化では次の例外処理がある。
この例外処理は、第6番目の入力符号8の復号で生ず
る。符号8は復号時に辞書に定義されておらず、復号で
きない。この場合には、前回処理した符号5に前回符号
した文字列baの最初の一文字bを加えた文字列5bを求
め、更に2ab,babと置き換えられて出力される。そし
て、文字列の出力語に前回の符号語5に今回復号した文
字列の文字bを加えた文字列5bに参照番号8を付加して
辞書に登録する。
この例外処理は第6図の復号化処理フローのS5,S9の
処理を通じて行なわれ、最終的にS8で文字列の出力と新
たな文字例に参照番号を付加した辞書への登録が行なわ
れる。
尚、第4図,第5図の符号化/復号化処理は、同じ辞
書を作り出しながら行なう。
[発明が解決しようとする課題] このように従来のLZW符号では、入力文字列の中を相
異なる文字列に分けて符号化するとき、現在符号化中の
各文字列は以前の文字列とは独立に出現するとして符号
化する形式を取っている。
この方法は、無記憶情報源の符号化には問題ない。し
かし、実際の文章等、多くのデータは記憶情報源とみな
され、従来のLZW符号では文字列が出現する履歴を十分
利用できておらず、データ圧縮後も文字列の出現の従属
性については冗長性が残る欠点があった。
このような欠点に対し本願発明者等は、符号化文字列
に対して直前の文字列の最終文字との従属関係、即ち履
歴を辞書に取り込むことによって文字列間の冗長性を削
減し、圧縮率を高めるようにしたデータ圧縮および復元
方式を提案としている。
具体的には第10図に示すように、辞書10を複数個の辞
書10−1,10−2,10−3,10−4に分けて索引を付けてお
き、例えば直前の文字列abの最終文字bを索引にして特
定の辞書10−2を選択する。各辞書10−1〜10−4に
は、索引文字に後続してつながる文字列のみを登録して
おく。
この方法によれば、従来、辞書中の文字列を全体から
見た参照番号で指定していたのに対し、索引につながる
系列だけの参照番号で指定できるので小さい参照番号を
使用でき、LZW符号を短く表現して符号化効率を向上さ
せることができる。
しかし、この方法では次のように初期値の設定法が問
題となる。
LZW符号ではバイト単位にデータを扱うとき、符号語
を簡単にし、参照番号だけで表すため、256個の全文字
種の初期値として予め辞書に登録しておく。この初期登
録を第10図の方法に適用すると、総て文字種256を索引
とした256子の辞書を使用し、各辞書毎に初期登録する
ことから、256×256(64K)個を予め登録しておくこと
が必要になる。実際には、64K個のうち使われないもの
も多いので、そのまま初期値を登録する方法では使用し
ない文字分だけ参照番号が大きくなって符号化効率が低
下する。
そこで初期値を予め辞書に登録しておかず、1文字か
らなる文字列が新たに出現したとき辞書に登録すれば、
初期値を登録しておくことの非効率を解決できる。しか
し、この方法を採ると、符号語を全て参照番号で表すこ
とはできず、符号語が1文字からなる文字列は生データ
を符号化するものと、2文字以上の文字列は参照番号符
号化するものとに分ける必要があり、アルゴリズムが複
雑になる問題点があった。
本発明は、このような問題点に鑑みてなされたもの
で、符号化が済んだ直前文字列の最終文字との従属関係
に基づく索引で複数辞書の中の1つを指定して符号化及
び復元する場合、従属関係をまとめることで複数辞書の
初期登録を簡単にして符号化効率を向上するようにした
データ圧縮方法及び復元方法を提供することを目的とす
る。
[課題を解決するための手段] 第1図は本発明の原理説明図である。
まず本発明は、入力文字列を辞書10に登録された既に
符号化済みの部分列の内、最大長一致する部分列の参照
番号で指定してLZW符号に符号化するデータ圧縮方法に
関する。
このようなデータ圧縮方法として本発明にあっては、
辞書10を、処理対象となる全文字種の数より少ない所定
数の辞書10−1〜10−Nから成る辞書群で構成して各辞
書10−1〜10−N毎に全文字種を1文字単位に参照番号
を付けて初期登録しておく。
そして、入力文字列の符号化時には、以前に符号化済
みの文字列との従属関係(履歴)を示す索引情報に従っ
て辞書群の中の特定の辞書10−iを指定して符号化し、
同時に指令辞書10−iに入力文字列がなかった場合に
は、以前の符号化済み文字列の参照番号に次の1文字を
加えた文字列を新たな参照番号を付けて登録することを
特徴とする。
ここで、入力文字列の符号化時には、直前に符号化済
みの文字列の最終文字コードの一部分から得られた索引
情報に従って辞書群の中の特定の辞書10−1を指定す
る。さらに具体的には、直前に符号化済みの文字列の最
終文字コードの上位ビットで示される索引情報に従って
前記辞書群の中の特定の辞書10−iを指定する。
一方、入力文字列の符号化時には、直前に符号化済み
の文字列の最終文字コードによりルックアップテーブル
を参照して得られた索引情報に従って前記辞書群の中の
特定の辞書10−1を指定してもよい。具体的には、直前
に符号化済みの文字列の最終文字コードの上位ビットに
よりルックアップテーブルを参照して得られた索引情報
に従って前記辞書群の中の特定の辞書10−iを指定す
る。
また本発明は、入力文字列を辞書10に登録された既に
符号化済みの部分列の内、最大長一致する部分列の参照
番号で指定して符号化された符号語から元の文字列を復
元するデータ復元方式を対象とし、辞書10を、処理対象
となる全文字種の数より少ない所定数の辞書10−1〜10
−Nから成る辞書群で構成して各辞書10−1〜10−N毎
に全文字種を1文字単位に参照番号を付けて初期登録し
ておく。そして、入力符号語の復元時には、以前に復元
済みの文字列との従属関係を示す索引情報に従って前記
辞書群の中の特定の辞書10−1を指定して復元し、復元
毎に、以前に復元済み文字列の参照番号に、今回復元し
た文字列の最初の1文字を加えた文字列を新たな参照番
号を付けて登録することを特徴とする。ここで復元時に
使用する特定辞書10−iの指定は、符号化の場合と同じ
である。
[作用] このような構成を備えた本発明のデータ圧縮方法及び
復元方法によれば、次の作用が得られる。
まず直前文字列の最終文字との従属関係を示す履歴
は、そのままだと256通りの状態があるが、文字の出現
には偏りがあり、256通りのうち出現しない状態もあ
る。そこで、本発明は最終文字の履歴をマージして縮小
し、有為な少数通りの状態、例えば8〜16通りに帰着さ
せ、辞書の数を減らす。
履歴の状態数が少数であるため、全文字種256子の各
辞書への初期値として登録数は、履歴数、即ち辞書数×
256個であり、大きな無駄は出ないようにできる。
履歴をまとめる方法として、例えば、符号化済直前文
字列の最終文字の上位4ビットを取れば、履歴は16個の
状態にまとめられる。履歴のまとめ方としては、辞書を
有効に使う上では均等に出現する状態を用いるのが望ま
しい。しかし、必ずしも文字中の生データのビットを用
いる必要はなく、データの大まかな性質な合わせて、符
号化済直前文字列の最終文字を履歴の状態に対応付ける
ルックアップ・テーブル(LUT)を用意して、直前文字
の履歴状態、即ち辞書の索引を指定してもよい。
[実施例] 第2図は本発明の一実施例を示した実施例構成図であ
る。
第2図において、12は制御手段としてのCPUであり、C
PU12に対してはプログラムメモリ14とデータメモリ26が
接続される。
プログラムメモリ14にはコントロールソフト16、LZW
符号を用いた最大一致長検索を行なう最大一致長検索ソ
フト18、入力文字列をLZW符号に変換する符号化ソフト2
0、符号化ソフト20でLZW符号に変換された符号を元の文
字列に復元する復号化ソフト22、及び処理対象となる全
文字種、例えば256個の文字種を初期登録する辞書初期
値作成ソフト24を備える。
一方、データメモリ26には、これから符号化しようと
する文字列、或いはこれから復号化しようとする符号列
を格納するデータバッファ28と、LZW符号を対象とした
符号化及び復号化の際に逐次作成されながら使用される
辞書10を備える。
辞書10は、例えば符号化済み文字列の最終文字コード
の上位4ビットでなる従属関係を示す索引情報により分
類される場合を例にとると、256個の全文字種に対し16
個の辞書10−1〜10−16で構成される。符号化文字決の
最終文字コードの上位4ビットによる辞書の索引指定
は、直接指定しても良いが、以下の説明にあっては、ル
ックアップテーブル(LUT)を参照して辞書の索引を読
出して指定する場合を例にとる。
この第3図の実施例における本発明のデータ圧縮及び
復元の概略は次のようになる。
CPU12はコントロールソフト16による制御のもとに辞
書初期値作成ソフト24を起動し、辞書初期値作成処理を
行なう。具体的には、辞書初期値作成ソフト24は全て文
字種256のを1文字ずつ参照番号を付けて辞書を構成す
る16個の辞書10−1〜10−6のそれぞれに登録する。
データメモリ26のデータバッファ28は符号化すべきデ
ータを外部から一定長の複数文字分を一時に格納し、符
号化ソフト20の要求に従って一文字ずつ受渡す。そし
て、データバッファ28の文字が空になるつど、同様に外
部から複数文字分を取込む。
次に第3図のフローチャートを参照して本発明の符号
化アルゴリズムを説明する。
第3図において、まずS1においては次の処理を行う。
直前文字列の最終文字て選択するN個の各辞書Di(但
し、i=1,・・・,N)に一文字からなる文字列全種を初
期値として予め登録する。本発明にあっては、全て文字
種256に対し辞書の総数NはN=16個と少なくなってい
る。
各辞書Diの参照番号の総数をn1で管理し、初期化のと
き、辞書数N個のn1に n1=(文字種+1) をセットする。
直前の文字列からの履歴、即ち直前文字列の最終文字
コードの上位4ビットをPKとし、初期値としてPKにPK=
0をセットする。
最初の文字を入力Kし、これを参照番号(語頭文字
列)ωに直す。
直前文字列の最終文字K1から履歴状態に対応つけるLU
Tをセットする。但し、最初は直前文字列はないので、
直前文字列の最終文字を示すK1はK1=0にセットすると
共に、K1=0でLUTから得られる索引PKはPK=0となる
ようにLUTをセットしておく。
このようなS1の処理が終了するとS4〜S7の手順に従っ
て符号化する。このS4〜S7の手順は、基本的には第5図
に示した従来と同じである。
相違点は、従来のLZW符号化では辞書は1個だけだっ
たのに対して、本発明にあっては、最初はS1、それ以降
はS6に示す符号化済みの文字列の最終文字K1によりLUT
を参照して得られた履歴状態LUT(K1)=PKによって複
数個の辞書から特定の辞書DPKを選択して、選択した辞
書DPKに登録されている文字列と照合して最大一致長文
字列を探し、最大一致長を一文字伸ばした文字列ωKを
選択した辞書DPKに登録する点が異なる。
S8で辞書DPKに登録した後は、辞書DPKの参照番号を管
理するカウンタnPKがnPK=nPK+1と1つインクリメン
トされる。また、前述したように次の文字列の辞書を選
ぶために最終文字K1よりLUTを用いて新たな履歴状態PK
が求められる。
次に本発明の復号化アルゴリズムを第4図を参照して
説明する。
復号化は、符号化の逆の動作となる。まずS100に示す
辞書の初期化は符号化と同様である。S1〜S8の手順は、
第7図の従来方式と基本的に同じである。
本発明の復号化が異なる点は、入力した符号CODEから
S4で参照番号ωを復号した後、直前の文字列の最終文字
から求めた履歴状態PKを使用して辞書DPKを選び、選択
した辞書DPKの中から参照番号ωに対応する文字列を求
める。
辞書への新たな文字列の登録は、LZW符号化の場合と
同様であるが、符号化のときより1テンポ遅れて行なわ
れる。即、符号化の際には注目文字列の符号化を終了し
た時点で一文字伸ばした文字列ωK(注目文字列+次の
1文字)を辞書に登録しているが、復号化では、注目文
字列ωを一文字伸ばすときは次の文字列の先頭文字と合
わせて辞書に登録するため、次の文字列の復元が終了し
た時点で登録を行なう。
具体的にはS7に示すように、直前文字列の参照番号OL
Dωと復元文字列の第1文字K1の組を、直前の前の文字
列の最終文字から履歴状態PK1で選ばれた辞書DPK1に登
録することになる。そこで、復元した文字列を伸ばして
次に登録するときのために現在の履歴状態PKをPK1に移
しておき、復元文字列の最終文字K2より、新たな履歴状
態を求めるようにしている。
尚、上記の実施例は、全文字種256個に対して辞書を
履歴状態に従って16個で構成する場合を例にとるもので
あったが、必要に応じて全て文字種の総数以下であれば
適宜の辞書数としてよい。
また文字種の数も必要に応じて適宜に定められるもの
である。
[発明の効果] 以上説明したように本発明によれば、簡単で無駄なく
文字列の履歴状態に従った複数辞書の初期値登録がで
き、符号化中の文字列に対して以前に出現した文字列の
履歴も採り入れることができるため、文字列間の冗長性
が削減され、従来のLZW符号より高い圧縮率が得られる
とともに、符号が参照番号のみで表わされるので簡単な
アルゴリズムで実行できる。
【図面の簡単な説明】
第1図は本発明の原理説明図; 第2図は本発明の実施例構成図; 第3図は本発明の符号化アルゴリズムのフローチャー
ト; 第4図は本発明の復号化アルゴリズムのフローチャー
ト; 第5図は従来のLZW符号化アルゴリズムのフローチャー
ト; 第6図は従来のLZW復号化アルゴリズムのフローチャー
ト; 第7図は従来のLZW符号化の具体例説明図; 第8図は辞書構成例の説明図; 第9図は従来のLZW復号化の具体例説明図; 第10図は本願発明者等が既に提案している部分列分解と
文字列間の履歴の取込を行った符号化説明図である。 [符号の説明] 10,10−1〜10−N;辞書 12:CPU 14:プログラムメモリ 16:コントロールソフト 18:最大一致長検索ソフト 20:符号化ソフト 22:復号化ソフト 24:辞書初期値作成ソフト 26:データメモリ 28:データバッファ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 千葉 広隆 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (56)参考文献 特開 昭60−116228(JP,A) 特開 平3−262331(JP,A) 特開 平3−270417(JP,A) (58)調査した分野(Int.Cl.6,DB名) H03M 7/40

Claims (10)

    (57)【特許請求の範囲】
  1. 【請求項1】入力文字列を辞書(10)に登録された既に
    符号化済みの部分列の内、最大長一致する部分列の参照
    番号で指定して符号化するデータ圧縮方法に於いて、 前記辞書(10)を、処理対象となる全文字種の数より少
    ない所定数の辞書(10−1〜10−N)から成る辞書群で
    構成して各辞書(10−1〜10−N)毎に少なくとも全文
    字種を1文字単位に参照番号を付けて初期登録してお
    き、 入力文字列の符号化時には、以前に符号化済みの文字列
    との従属関係を示す索引情報に従って前記辞書群の中の
    特定の辞書(10−i)を指定して符号化し、 指定辞書(10−i)を入力文字列がなかった場合には、
    以前の符号化済みの文字列の参照番号に次の1文字を加
    えた文字列を新たな参照番号を付けて登録することを特
    徴とするデータ圧縮方法。
  2. 【請求項2】請求項1記載のデータ圧縮方法に於いて、 入力文字列の符号化時には、直前に符号化済みの文字列
    の最終文字コードの一部分から得られた索引情報に従っ
    て前記辞書群の中の特定の辞書(10−i)を指定するこ
    とを特徴とするデータ圧縮方法。
  3. 【請求項3】請求項2記載のデータ圧縮方法に於いて 入力文字列の符号化時には、直前に符号化済みの文字列
    の最終文字コードの上位ビットで示される索引情報に従
    って前記辞書群の中の特定の辞書(10−i)を指定する
    ことを特徴とするデータ圧縮方法。
  4. 【請求項4】請求項1記載のデータ圧縮方法に於いて、 入力文字列の符号化時には、直前に符号化済みの文字列
    の最終文字コードによりルックアップテーブルを参照し
    て得られた索引情報に従って前記辞書群の中の特定の辞
    書(10−i)を指定することを特徴とするデータ圧縮方
    法。
  5. 【請求項5】請求項4記載のデータ圧縮方法に於いて、 入力文字列の符号化時には、直前に符号化済みの文字列
    の最終文字コードの上位ビットから作成された索引情報
    に従って前記辞書群の中の特定の辞書(10−i)を指定
    することを特徴とするデータ圧縮方法。
  6. 【請求項6】入力文字列を辞書(10)に登録された既に
    符号化済みの部分列の内、最大長一致する部分列の参照
    番号で指定して符号化された符号語から元の文字列を復
    元するデータ復元方法に於いて、 前記辞書(10)を、処理対象となる全文字種の数より少
    ない所定数で辞書(10−1〜10−N)から成る辞書群で
    構成して各辞書(10−1〜10−N)毎に少なくとも全文
    字種を1文字単位に参照番号を付けて初期登録してお
    き、 入力符号語の復元時には、以前に復元済みの文字列との
    従属関係を示す索引情報に従って前記辞書群の中の特定
    の辞書(10−i)を指定して復元し、 復元毎に、以前に還元済みの文字列の参照番号に、今回
    復元した文字列の最初の1文字を加えた文字列を新たな
    参照番号を付けて登録することを特徴とするデータ復元
    方法。
  7. 【請求項7】請求項6記載のデータ復元方法に於いて、 入力符号語の復元時には、直前に復元済みの文字列の最
    終文字コードの一部分から得られた索引情報に従って前
    記辞書群の中の特定の辞書(10−i)を指定することを
    特徴とするデータ復元方法。
  8. 【請求項8】請求項7記載のデータ復元方法に於いて、 入力符号語の復元時には、直前に復元済みの文字列の最
    終文字コードの上位ビットで示される索引情報に従って
    前記辞書群の中の特定の辞書(10−i)を指定すること
    を特徴とするデータ復元方法。
  9. 【請求項9】請求項6記載のデータ復元方法に於いて、 入力符号語の復元時には、直前に復元済みの文字列の最
    終文字コードによりルックアップテーブルを参照して得
    られた索引情報に従って前記辞書群の中の特定の辞書
    (10−i)を指定することを特徴とするデータ復元方
    法。
  10. 【請求項10】請求項9記載のデータ復元方法に於い
    て、 入力符号語の復元時には、直前に復元済みの文字列の最
    終文字コードの上位ビットによりルックアップテーブル
    を参照して得られた索引情報に従って前記辞書群の中の
    特定の辞書(10−i)を指定することを特徴とするデー
    タ復元方法。
JP2275835A 1990-02-26 1990-10-15 データ圧縮方法及び復元方法 Expired - Lifetime JP2825960B2 (ja)

Priority Applications (11)

Application Number Priority Date Filing Date Title
JP2275835A JP2825960B2 (ja) 1990-10-15 1990-10-15 データ圧縮方法及び復元方法
DE69132187T DE69132187D1 (de) 1990-02-26 1991-02-26 Verfahren zur komprimierung und wiederherstellung von daten und gerät dazu
PCT/JP1991/000252 WO1991013395A1 (en) 1990-02-26 1991-02-26 Data compression and restoration method and device therefor
DE69133481T DE69133481T2 (de) 1990-02-26 1991-02-26 Verfahren und Vorrichtung zur Kompression und Dekompression von Daten
EP91904319A EP0472730B1 (en) 1990-02-26 1991-02-26 Data compression and restoration method and device therefor
DE69133377T DE69133377T2 (de) 1990-02-26 1991-02-26 Verfahren und Vorrichtung zur Komprimierung und Dekomprimierung von Daten
EP98201928A EP0878915A3 (en) 1990-02-26 1991-02-26 Method and apparatus for compression and decompression of data
EP98201926A EP0871295B1 (en) 1990-02-26 1991-02-26 Method and apparatus for compression and decompression of data
KR1019910701461A KR950013228B1 (ko) 1990-02-26 1991-02-26 데이타 압축과 복원방법 및 그 장치
EP98201925A EP0871294B1 (en) 1990-02-26 1991-02-26 Method and apparatus for compression and decompression of data
US08/003,876 US5254990A (en) 1990-02-26 1993-01-11 Method and apparatus for compression and decompression of data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2275835A JP2825960B2 (ja) 1990-10-15 1990-10-15 データ圧縮方法及び復元方法

Publications (2)

Publication Number Publication Date
JPH04149766A JPH04149766A (ja) 1992-05-22
JP2825960B2 true JP2825960B2 (ja) 1998-11-18

Family

ID=17561096

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2275835A Expired - Lifetime JP2825960B2 (ja) 1990-02-26 1990-10-15 データ圧縮方法及び復元方法

Country Status (1)

Country Link
JP (1) JP2825960B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008078390A1 (ja) * 2006-12-26 2008-07-03 Fujitsu Limited データ圧縮装置およびデータ復元装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2774350B2 (ja) * 1990-03-20 1998-07-09 富士通株式会社 データ圧縮方法および圧縮データのデータ復元方法
JP2590287B2 (ja) * 1990-03-13 1997-03-12 富士通株式会社 データ圧縮方法およびデータ圧縮装置

Also Published As

Publication number Publication date
JPH04149766A (ja) 1992-05-22

Similar Documents

Publication Publication Date Title
US5870036A (en) Adaptive multiple dictionary data compression
JP3241788B2 (ja) データ圧縮方式
JP3231105B2 (ja) データ符号化方式及びデータ復元方式
JP3038223B2 (ja) データ圧縮方式
JP2825960B2 (ja) データ圧縮方法及び復元方法
JP3350118B2 (ja) データ符号化方式及びデータ復元方式
JP3105598B2 (ja) ユニバーサル符号を用いたデータ圧縮方式
JP3241787B2 (ja) データ圧縮方式
JP3242795B2 (ja) データ処理装置及びデータ処理方法
JP3038233B2 (ja) データ圧縮及び復元装置
JP2774350B2 (ja) データ圧縮方法および圧縮データのデータ復元方法
JP3388768B2 (ja) データ圧縮及び復元方式
JPH05152971A (ja) データ圧縮・復元方法
JP3088740B2 (ja) データ圧縮及び復元方式
JP3012677B2 (ja) Zl符号化方法
JP3132774B2 (ja) データ圧縮・復元装置
JPH0683574A (ja) データ圧縮及び復元方式
JPH06161705A (ja) データ符号化方式及びデータ復元方式
JP2999561B2 (ja) データ圧縮及び復元装置
JP3015483B2 (ja) データ圧縮及び復元方式
JP2952067B2 (ja) データ圧縮方式
JP3038234B2 (ja) データ圧縮装置の辞書検索方式
JP2999587B2 (ja) データ圧縮及び復元方式
JP3058711B2 (ja) データ圧縮及び復元方法
JP3012678B2 (ja) データ圧縮方法