JPH0818981A - データ圧縮・伸長方式 - Google Patents

データ圧縮・伸長方式

Info

Publication number
JPH0818981A
JPH0818981A JP14742594A JP14742594A JPH0818981A JP H0818981 A JPH0818981 A JP H0818981A JP 14742594 A JP14742594 A JP 14742594A JP 14742594 A JP14742594 A JP 14742594A JP H0818981 A JPH0818981 A JP H0818981A
Authority
JP
Japan
Prior art keywords
data
image data
code
unit
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP14742594A
Other languages
English (en)
Other versions
JP3266419B2 (ja
Inventor
Takaaki Hayashi
隆昭 林
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.)
Kyocera Corp
Original Assignee
Kyocera 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 Kyocera Corp filed Critical Kyocera Corp
Priority to JP14742594A priority Critical patent/JP3266419B2/ja
Publication of JPH0818981A publication Critical patent/JPH0818981A/ja
Application granted granted Critical
Publication of JP3266419B2 publication Critical patent/JP3266419B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

(57)【要約】 (修正有) 【目的】本発明は、プリンタやファクシミリ等の印刷画
像を良好に圧縮伸長することができるデータ圧縮及び伸
長方式を提供する。 【構成】本発明は、ユニバーサル符号による第1の符号
化部103と、同一データのランレングスによる第2の
符号化部104と、同一データの連続を計数する計数部
101と、計数部により計数された計数値を所定の値と
比較する比較部102から構成され、比較部の結果に従
って第1の符号化部と第2の符号化部のいずれかを動作
させ、第1の符号化部と第2の符号化部による符号化デ
ータを統合してから出力する出力部105から構成され
る画像データ圧縮方式(a)と、その画像データ圧縮方
式による圧縮符号を復号するための画像データ伸長方式
(b)である。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ユニバーサル符号を用
いたプリンタやファクシミリ等の印刷画像におけるデー
タ圧縮及び伸長方式に関する。
【0002】
【従来の技術】近年、計算機や画像入出力機器の発展に
より、OAの分野でも、テキスト、図形、網点・ディザ
画像等の多様な画像が混在したデータを取り扱うように
なってきた。また、画像の高解像度化も進み画像データ
量は莫大なものとなってきている。そのため、多様かつ
高解像な画像データを圧縮するためのデータ圧縮方式
が、現在求められている。上述のような画像データでは
局所的にデータの統計的性質が異なるため、データ圧縮
処理の進行とともにデータの統計的性質が変動してもデ
ータ圧縮効率が極端に低下することのないユニバーサル
符号によるデータ圧縮方式が望まれている。そのような
データ圧縮方式として、入力データの既に処理し終えた
部分から入力データに最適になるような参照辞書を逐次
構成していくことにより、データの統計的性質に依存せ
ず最適な圧縮が可能なLempel-Zivの符号化方法が提案さ
れている。
【0003】Lempel-Zivの符号化方法は、参照辞書の作
成方法によって動的辞書方式とスライド辞書方式に分類
されている( 詳しくは、インターフェース 1992 年 vo
l.8 No.183 " データ圧縮アルゴリズムとその実現" を
参照) 。動的辞書方式は、入力データ列を増分分解(Inc
remental Parsing) といわれる方法で部分データ列に分
解し、その部分データ列を辞書に登録していき、その辞
書を参照しながら入力データの符号化処理を進めていく
アルゴリズムである。また、スライド辞書方式は、符号
化済データ列を順次参照バッファに蓄えていき、参照バ
ッファを辞書として参照しながら入力データの符号化処
理を進めていくアルゴリズムである。動的辞書方式はア
ルゴリズムの容易さでスライド辞書方式に勝っている
が、逆にスライド辞書方式は圧縮率で動的辞書方式に勝
るといわれており、それぞれデータ圧縮の分野で広く使
われている。さらに、動的辞書方式の改良としてLZW(Le
mpel-Ziv-Welch) 符号、スライド辞書方式の改良として
LZSS(Lempel-Ziv-Storer-Szymanski) 符号が提案されて
いる。
【0004】LZSS方式の符号化・復号化処理を図4を用
いて説明する。ここで、入力画像データ中の個々のワー
ド単位を文字と呼び、文字が任意の数だけ連なったもの
を文字列と呼ぶことにする。また、これ以降1文字は1
バイトで構成されているものとする。
【0005】LZSS方式の符号化処理の流れを図4(a)
に示す。まず、参照辞書の初期化を行う(S401)。
参照辞書の初期化は参照バッファの内容を全て0にする
ことにより行われる。また、符号出力用のカウンタcを
1にセットしておく。次に、画像データを先読みバッフ
ァに入力する(S402)。参照バッファと先読みバッ
ファの概念的な構成は図5のようになっていて、例えば
入力文字列がABC・・・PQRとすると符号化処理の
初期状態は図5(a)となる。
【0006】次に、入力文字列と一致する最長の文字列
を辞書から探索する(S403)。そして、このときの
一致長Mの値を調べる(S404)。ここで、一致長L
が3以上のときは一致文字列の参照辞書中の位置Aと一
致長Mの値を符号化することにより圧縮符号を生成する
(S405)。例えば図5(b)のように先読みバッフ
ァ中の入力文字列と最長一致する文字列AB・・・Eが
参照バッファ中から検索されると位置Aと一致長Mの組
(A、M)が符号化されることになる。このときの符号
長は参照バッファ長と先読みバッファ長により定まり、
それぞれLp、Lqとすると、位置Aの符号長は最低で
もlog(Lp)以上の整数値であり、一致長Mの符号
長は最低でもlog(Lqー2)以上の整数値でなけれ
ばならない。ただし、このときの対数の底は2である。
例えば、参照バッファ長が4kバイトで先読みバッファ
長が18バイトのときは位置Pの符号長は12ビット、
一致長Mの符号長は4ビットとなり、圧縮符号の符号長
は16ビット(=2バイト)となる。また、圧縮符号で
あることを示すフラグビット1が同時に出力される。次
に、一致長Mが3未満のときは入力文字Dを1文字その
まま符号化することにより非圧縮符号を生成する(S4
06)。1文字は1バイトで表されるので、非圧縮符号
の符号長は1バイトとになる。また、非圧縮符号である
ことを示すフラグビット0が同時に出力される。
【0007】次に、辞書の更新が行われる(S40
7)。辞書の更新は符号化された文字数分だけ古い文字
から順に参照バッファから削除し、符号化した文字を先
読みバッファから参照バッファへ移動させることで達成
される。この動作は概念的には参照バッファ及び先読み
バッファ上を文字列がシフトしていきスライドしていく
ようにみえる。例えば、図5(b)で符号化された文字
列AB・・・Eは辞書更新により参照バッファへと順次
スライドしていき、参照バッファの左端から古いデータ
が捨てられていく。
【0008】ここで、実際に出力される符号形式につい
て説明する。一般に、LZSS方式ではバイト処理を行い易
くする関係上8個の符号をまとめて1つの符号ブロック
を作成し、符号ブロック単位で出力するようにしてい
る。符号ブロックの一例を示すと、図5(c)のように
なる。まず、符号ブロックの先頭に8個の符号のフラグ
ビットをまとめて1バイトにしたフラグコードを置き、
それに続けて8個の符号を置く。図5(c)の例では、
フラグコード01101110なので、非圧縮符号・圧
縮符号・圧縮符号・・・の順に符号が配置されているこ
とがわかる。よって、符号ブロックの出力はS402か
らS407までの符号化処理の過程を8回行う毎に1回
行われるので、符号出力用のカウンタcの値により制御
できる。すなわち、まず、カウンタcの値を調べて(S
408)、カウンタcの値が8でなければS405又は
S406で作成された符号とフラグビットをバッファメ
モリに蓄えておき、カウンタcの値を1だけ増加してお
いて、再びS402に戻る(S409)。また、カウン
タcの値が8ならばバッファメモリに蓄えられた符号を
符号ブロックとして出力し、カウンタcの値を1にセッ
トし、再びS402に戻る(S410)。そして、S4
02では先読みバッファの右端から新たに文字列が入力
され、以上の符号化処理を継続し、処理すべき画像デー
タが無くなるまで処理を続ける。
【0009】LZSS方式の復号化処理の流れを図4(b)
に示す。まず、符号化処理のときと同様に参照バッファ
の内容を全て0にすることにより参照辞書の初期化を行
う(S421)。また、フラグコードを入力するための
カウンタcの値を1にセットする。次に、フラグコード
を入力し(S422)、フラグコードの値を調べる(S
423)。そして、フラグコードの値が1ならば圧縮符
号を入力し(S424)、0ならば非圧縮符号を入力す
る(S426)。ここで、本従来例のLZSS符号では非圧
縮符号は1バイト、圧縮符号は2バイトで符号化される
ので、S424では2バイト、S426では1バイトの
符号が入力される。
【0010】圧縮符号が入力されると、その符号に従っ
て辞書の検索が行われる(S425)。辞書の検索は参
照バッファ中の文字列の位置と文字列長を圧縮符号を復
号して求め、その文字列を画像データとして取り出す。
非圧縮符号が入力されると、非圧縮符号は1文字分の画
像データを表しているので、圧縮符号を復号化して得ら
れた画像データ、あるいは非圧縮符号から得られた画像
データが出力されることになる(S427)。こうして
1つの符号が復号されると、符号化処理のときと同様に
辞書が更新される(S428)。つまり、ここで復号さ
れた文字列の文字数だけ参照バッファから最も古い文字
から順に削除され、また、ここで復号された文字列を参
照バッファに挿入する。
【0011】次に、符号ブロックは前述したようにフラ
グコードの続いて8個の符号が存在するので、その8個
の符号を読み終えたならば再びフラグコードを入力し、
そうでなければ圧縮符号又は非圧縮符号を入力すること
となる。そこで、フラグコード入力用のカウンタcの値
を調べて(S429)、その値が8ならばカウンタの値
を1にセットし(S430)、再びS422でフラグコ
ードを入力し、処理を続ける。また、カウンタcの値が
8でなければ、カウンタcの値を1だけ増加させて、S
423で再び次のフラグの値を調べ処理を続ける。以上
の復号化処理を処理すべき符号が無くなるまで続ける。
【0012】LZSS方式は処理するデータの性質によらず
ある程度データ圧縮が可能であるが、印刷用の画像デー
タのように、同一データの長大なランが続くようなもの
に対しては高圧縮が望めないという欠点があった。それ
は、LZSS方式が一度に符号化できるデータ量は先読みバ
ッファ長によって制限されるためである。一般に先読み
バッファ長は10数バイトから数10バイト程度である
のに対して、画像データでは同一データのランが数百バ
イトから数キロバイト続くことも頻繁に生じる。そのた
め、そのような長大なランのもつ冗長性を充分に除去す
ることができないため、圧縮効率が低くなるという問題
が生じる。
【0013】このような問題の解決方法として、特開平
5-176187に開示されている方法がある。その符号化方式
を図6(a)に示し、復号化方式を図6(b)に示す。
ここで開示されている符号化方式は、画像データを入力
し、中間データ変換手段601によりパターンレングス
処理等により画像データの相関性を除去した中間データ
に変換した後、符号化手段602により中間データをユ
ニバーサル符号化方式で符号化を行い、圧縮符号を出力
している。また、ここで開示されている復号化方式は、
圧縮符号を入力し、復号化手段611によりユニバーサ
ル復号化方式で復号化を行い、元の中間データを作成し
た後、中間データ逆変換手段612により中間データを
画像データに復元し、出力するものである。
【0014】
【発明が解決しようとする課題】しかしながら、従来技
術においては、符号化処理においては中間データ変換手
段とLZSS方式による符号化手段が直列に配置され、ま
た、復号化手段においてはLZSS方式による復号化手段と
中間データ逆変換手段が直列に配置されているため、特
にソフトウェアにより従来技術の構成を実現しようとす
るとユニバーサル符号化及び復号化を単体で行う場合に
比較して圧縮処理速度が低下するという問題があった。
特にプリンタ等の印刷分野ではエンジン部分の処理速度
に対して伸長速度が遅れることは致命的であり、データ
伸長部の高速性が問題となる。
【0015】本発明はこのような点に鑑み、データ圧縮
及び伸長の処理速度を低下させることなく相関性の高い
画像データを良好に圧縮することができる画像データ圧
縮及び伸長方式を提供する。
【0016】
【課題を解決するための手段】本発明は、これらの課題
を解決するためのものであり、ラスタ状の画像データを
圧縮する画像データ圧縮方式において、符号化済の画像
データ列を辞書として参照し、入力画像データ列と最長
一致する画像データ列を少なくとも辞書の開始アドレス
と一致長により表すことによって符号化し、画像データ
を圧縮する第1の符号化部と、画像データ中に同一デー
タの連続が現れた場合、少なくともそのデータの連続が
現れた画像データ中の位置と、そのデータ種と、その連
続長を符号化し、画像データを圧縮する第2の符号化部
と、入力画像データ中の同一データの連続数を計数する
計数部と、前記計数部により計数された計数値と所定の
しきい値を比較する比較部と、符号化したデータを出力
する出力部とから構成され、前記比較部による比較結果
にもとづいて選択された前記第1の符号化部又は前記第
2の符号化部によって入力画像データがランダムに圧縮
符号化されたデータが前記出力部によって前記入力画像
データの順番に出力されるデータ圧縮方式を提供す
る。。
【0017】さらに、請求項1記載のデータ圧縮方式に
おいて圧縮符号化された入力信号を解析し、前記第1の
符号化部によって符号化されたものか、前記第2の符号
化部によって符号化されたものかを識別する解析部と、
前記解析部によって前記第1の符号化部による圧縮符号
であることが解析されたときには画像データを伸長する
第1の復号化部と、前記第2の符号化部による圧縮符号
であることが解析されたときには画像データを伸長する
第2の復号化部と、復号化した画像データを出力する出
力部とから構成され、前記解析部による解析結果にもと
づいて選択された前記第1の復号化部又は前記第2の復
号化部によって入力画像データがランダムに復号化され
たデータが前記出力部によって前記入力画像データの順
番に出力されるデータ伸長方式を提供する。
【0018】さらに、 前記第1の符号化部はLZSS(Lem
pel-Ziv-Storer-Szymanski) 符号化部であり、M個の符
号毎にLZSS符号ブロックから構成されていることを特徴
とする請求項1記載のデータ圧縮方式を提供する。
【0019】さらに、前記第2の符号化部で符号化され
た同一データの連続が現れた画像データ中の位置は、前
記LZSS符号ブロックが表わすデータ列の先頭からの相対
位置、あるいは直前に現れた同一データの連続の画像デ
ータ中の位置からの相対位置で表わされる請求項3記載
のデータ圧縮方式を提供する。
【0020】
【作用】本発明の構成によれば、同一データの連続長の
計数値によりユニバーサル符号とバイトランレングス符
号を切り換えることにより、簡単な構成によりテキスト
等の長いランを持つ画像も疑似中間調画像等の細かく変
化する画像も良好に圧縮することができる。
【0021】
【実施例】以下、図面を用いて本発明の実施例について
説明する。ここで、入力画像データは、8個の画素毎に
一塊にした8bitで表されるものとする。
【0022】本発明のデータ圧縮及び伸長方式の実施例
を図面をもとにして説明する。図1は、本発明のデータ
圧縮及び伸長方式の最も基本的な構成である。まず、デ
ータ圧縮方式の基本構成について図1(a)を用いて説
明する。ラン計数部101は入力画像データDに連続す
る同一データが現れたときに、そのランが連続する長さ
を計数し、その計数値Nを出力する。比較部102は計
数値Nが入力され、計数値Nと予め定められたしきい値
Nthを比較する。そして、計数値Nがしきい値Nth
以下のときは制御コードUが出力され、計数値Nがしき
い値Nthより大きいときは制御コードRが出力され
る。データの符号化は制御コードU/Rによってユニバ
ーサル符号化部103又はバイトランレングス(BRL )
符号化部104のいずれかが選択されて行われる。制御
コードがUのときはユニバーサル符号化部103が選択
され、入力画像データD、計数値Nがユニバーサル符号
化部103に入力され、それぞれの入力値をもとに符号
化が行われる。制御コードがRのときはBRL 符号化部1
04が選択され、入力画像データD、計数値NがBRL 符
号化部104に入力され、それぞれの入力値をもとに符
号化が行われる。それぞれの符号化部で生成された符号
は出力部105により一つの符号にまとめられ、出力符
号Cとして出力される。
【0023】次に、データ伸長方式の基本構成について
図1(b)を用いて説明する。解析部111は入力符号
Cに含まれる識別符号を解析し、入力符号Cがユニバー
サル復号化部112で復号化されるべき符号かBRL 復号
化部113で復号化されるべき符号かを識別する。そし
て、識別結果に従って制御コードU/Rを出力し、ま
た、復号に必要な入力符号Cを出力する。データの復号
化は制御コードU/Rによってユニバーサル復号化部1
12又はBRL 復号化部113のいずれかが選択されて行
われる。制御コードがUのときはユニバーサル復号化部
112が選択され、入力符号Cがユニバーサル復号化部
112に入力され、復号化が行われる。
【0024】制御コードがRのときはBRL 復号化部11
3が選択され、入力符号CがBRL 復号化部113に入力
され、復号化が行われる。それぞれの復号化部で復元さ
れた画像データは出力部105により一つの画像データ
にまとめられ、出力データDとして出力される。
【0025】次に、LZSS方式を用いて本発明の符号化処
理を実現した実施例について、図2及び図7を使って説
明する。ここで、参照バッファ及び先読みバッファの大
きさはそれぞれ4kバイト及び18バイトとする。最初
に、符号化処理の初期化が行われる(S201)。ここ
では、LZSS符号化のための参照辞書の初期化を行い、入
力画像データの先頭にポインタnをセットする。そし
て、画像データをn番目から順次入力していく(S20
2)。このとき入力される画像データ列が図7(a)で
示される様にABC・・CDE・・EFGHであるとす
る。次に、同一データのランを計数し、その計数値をN
に代入する。(S203)。そして、S203で得た計
数値Nを所定のしきい値Nthと比較し(S204)、
計数値Nがしきい値Nthより小さいときはLZSS符号化
を行い(S205)、計数値Nがしきい値Nth以上の
ときはS203により計数された同一データのランをパ
ックすることによりBRL 符号化を行う(S206)。ま
た、S205、S206では符号化されたデータ数だけ
入力画像データのポインタnを増加させる。図7(a)
の画像データ列では文字CとEについてのランがしきい
値Nthより大きいとすると、比較部の処理より概念的
には入力画像データが図7(b)と図7(c)で表され
る二つのデータ列に分解され、それぞれがLZSS符号化手
段とBRL 符号化手段で符号化されることになる。
【0026】このように、LZSS及びBRL 符号化された2
系統に分割された圧縮データを一つの符号列に統合して
出力する(S207)。そして、再びS202に戻り、
処理を継続する。このS202からS207までのステ
ップを入力画像データが無くなるまで継続することによ
り画像データの圧縮が行われる。
【0027】ここで、本実施例によれば本画像データ圧
縮方式は図7(a)のような画像データ列を図7
(b)、(c)のような二つのデータ列に分解して処理
しているので、後で復号処理を行う際にそれぞれのデー
タの並び順が明確になるように符号化されている必要が
ある。そのために、本発明ではBRL にパックされた文字
列が図7(b)の文字列のどこに挿入されるかを示す挿
入位置をBRL 符号に付加することとする。このとき、挿
入位置は入力画像データ中の絶対アドレスで示しても良
いが、その場合入力画像データ数メガバイトの大きさを
持つので挿入位置を表すコードに3から4バイト必要と
なってしまう。そこで、BRL データの挿入位置を個々の
LZSS符号ブロック内におけるアドレスで示すことにす
る。LZSS符号は一つの符号が表す最大の文字列長は先読
みバッファ長で制限され、本実施例では18文字とな
る。よって、一つのLZSS符号ブロックは最大18x8=
144文字の画像データ列を表すことになるので、この
画像データ列内にBRL データを挿入する位置は8ビッ
ト、すなわち1バイトあれば符号化することができる。
【0028】符号形式のより具体的な例を図8に示す。
最初に、LZSS符号化処理による符号形式は従来例で説明
した通りであり、非圧縮符号又は圧縮符号である個々の
符号LZCを8個づつまとめて一つの符号ブロックを形
成する。一方のBRL 符号化処理による符号は連続する画
像データの値を示す連続文字COLとそのランの長さを
示す連続長LEN及び、そのBRL データがLZSS符号ブロ
ックが表している画像データのどの位置に挿入されるか
を示す挿入位置POSから構成されている。例えば、あ
るLZSS符号ブロックが表すデータ列が図7(b)であ
り、もともとの画像データ列が図7(a)であったとす
る。図7(b)の文字列の各文字の位置をA=0、B=
1、D=2・・・とすると、文字CについてのBRL デー
タは文字Dの直前に挿入されるので、文字Dの位置で挿
入位置POSを表すことができ、挿入位置POS=2と
なる。文字EについてのBRL データは文字Fの直前に挿
入されるので、挿入位置POS=3となる。また、挿入
位置は上記のように全ての符号をLZSS符号ブロックの示
す文字列の先頭からの相対位置で表す必要はなく、現在
のBRL データの相対位置と直前のBRL データの相対位置
との差分で表すことも可能である。図7の例では文字C
の挿入位置はLZSS符号ブロック内で出てくる最初のBRL
データなので、初期挿入位置値を0とし、挿入位置PO
Sの値は現在の挿入位置の値と初期挿入位置値の差をと
り2ー0=2とする。そして、文字Eの挿入位置は現在
の挿入位置の値と直前のBRL データの絶対位置の値との
差をとり3ー2=1とする。こうして作成されたBRL 符
号は個々のLZSS符号ブロック毎に対応するもの同士でBR
L 符号ブロックを構成することができる。一般に一つの
LZSS符号ブロック内に挿入されるBRL データの数は不定
なので、BRL 符号ブロックは個々のBRL符号RLCがN
個(Nは0以上)集まって構成されている。実際に符号
が出力されるときは対応するLZSS符号ブロックとBRL 符
号ブロックが対になって出力される。このとき、BRL 符
号ブロックの大きさが不定なので、LZSS符号ブロックと
BRL 符号ブロックの境界が明確であるようにしなければ
ならない。この方法として、図8の出力符号形式(a)
にあるようにBRL 符号ブロックとLZSS符号ブロックの間
に区切りコードESCを入れる方法と、出力符号形式
(b)にあるようにBRL 符号ブロックの先頭にヘッダコ
ードHEADを入れる方法ある。例として、区切りコー
ドESCには挿入位置POSで使用されない値、すなわ
ち本実施例においては144以上の任意の値を利用すれ
ば良く、またヘッダコードHEADには少なくともBRL
符号ブロックに含まれるBRL 符号の数を持っていれば良
い。
【0029】次に、LZSS方式を用いて本発明の復号化処
理を実現した実施例について、図3及び図9を使って説
明する。最初に、復号化処理の初期化が行われる(S3
01)。ここでは、LZSS符号化のための参照辞書の初期
化を行い、入力圧縮符号の先頭にポインタnをセットす
る。そして、圧縮符号をn番目から順次入力し、入力し
た符号数だけnを増加させる(S302)。そして、入
力した圧縮符号がLZSS方式ので符号化されたものかBRL
方式で符号化されたものかを判別し(S303)、LZSS
方式による圧縮符号はLZSS復号化処理が行われ(S30
4)、BRL 方式による圧縮符号はBRL 復号化処理が行わ
れる(S305)。S303における圧縮符号の各復号
化部への振り分けは次のように行われる。まず、図8の
出力符号形式(a)の圧縮符号に対しては、先頭の符号
はBRL 符号とし、以下区切りコードが現れるまではBRL
符号とし、区切りコードが現れたら、続く符号はLZSS符
号なのでまずフラグコードを読み、フラグコードに従っ
てその後のLZC1からLZC8までの8個の符号はLZ
SS符号とする。そして、また区切りコードが現れるまで
入力符号はBRL 符号であるとし、以降同様に続ける。図
8の出力符号形式(b)の圧縮符号に対しては、まずヘ
ッダコードを読み、そこに書かれているBRL 符号ブロッ
クに含まれるBRL符号数Nを読み、その数だけRLC1
からRLNまではBRL 符号とし、次にフラグコードに基
づくLZC1からLZC8までをLZSS符号とし、以下同
様に続ける。
【0030】次に、S304及びS305により個別に
復号化されたデータは、ひとつのデータに結合して、画
像データとして出力される(S306)。このときの、
LZSS復号化データとBRL 復号化データの出力方法を図9
により更に詳しく説明する。なお、このときのデータ列
の例として図7で示したデータ列を用いる。まず、図9
(a)のようにLZSS符号を復号した結果”ABDFG
H”が上段のLZSSデータバッファに記憶される。また、
復号する前のBRL 符号を下段のBRL 符号バッファに記憶
する。ここで、BRL 符号は挿入位置POS、連続文字C
OL、連続長LENの順番に書かれている。それぞれの
記号にPOSiのように添え字iが付されているとき
は、それがi番目のBRL 符号であることを示している。
また、データ読み出し用のカウンタCNTを初期値0に
セットする。まず、カウンタCNTの値と最初のBRL 符
号の挿入位置POS1の値を比較する。ここでは、CN
T=0、POS1=2と値が異なっているので、LZSSデ
ータバッファから1文字”A”を出力し、カウンタ値を
1だけインクリメントする(図9(b))。次も、CN
T=1、POS1=2と値が異なるので、同様に”B”
を出力し、カウンタ値を1だけインクリメントする(図
9(c))。図9(c)では、CNT=POS1=2と
カウンタ値と挿入位置の値が等しくなるので、BRL デー
タを出力する。このときの連続文字COL1=”C”な
ので、文字Cを連続長LEN1で表される文字数分だけ
出力する(図9(c))。さらに、次のBRL 符号の挿入
位置とカウンタを比較すると、CNT=2、POS2=
3と値が異なるので、LZSSデータバッファから文字”
D”を出力し、カウンタ値をインクリメントする(図9
(e))。同様に、カウンタ値と挿入位置の値が等しい
ときはBRL 符号を復号して出力し、それぞれの値が異な
るときはLZSSデータバッファから1文字出力するように
処理を進めると、最終的には図9(g)のようになり、
出力画像データ”ABC・・・CDE・・・EFGH”
が得られる。これは元々の画像データ図7(a)と等し
く、正しく復号されたことが分かる。以上の画像データ
出力方法はBRL 符号の挿入位置が相対位置で示されてい
ても、ほとんど同様の手続きで行われる。一つ異なるの
は、カウンタと比較される挿入位置の値を前回の値と順
次足し合わせていくことだけである。
【0031】すなわち、POSi=POSi+POS
(iー1)として挿入位置の値を更新するということで
ある。
【0032】
【発明の効果】以上に説明したように本発明によれば、
画像の統計的性質に依存しないユニバーサル符号化部に
BRL 符号化部を組み合わせることにより、符号化部のユ
ニバーサル性を保存したままテキスト等の同一データの
長いランを有するデータをより高圧縮することができ
る。
【0033】また、BRL 符号化・復号化部は簡単な構成
で実現可能で、ユニバーサル符号化・復号化処理を単体
で行うことに比べて処理量はほとんど増加せず、処理速
度の劣化がない。
【0034】特に、プリンタ等の印刷処理で要求される
復号化処理の高速性が劣化することなく、画像データの
圧縮・伸長を行うことができる。
【図面の簡単な説明】
【図1】本発明のデータ圧縮及び伸長方式の基本構成を
示す図
【図2】LZSS方式を利用した符号化処理の流れを示す図
【図3】LZSS方式を利用した復号化処理の流れを示す図
【図4】LZSS符号化及び復号化処理を説明するための図
【図5】LZSS方式の辞書の構成を説明するための図
【図6】従来のデータ圧縮及び伸長方式の構成を示す図
【図7】本実施例の入力データの流れを説明するための
【図8】本実施例の符号形式を説明するための図
【図9】本実施例の復号化処理の画像データ出力処理を
説明するための図
【符号の説明】
101 ラン計数部 102 比較部 103 ユニバーサル符号化部 104 BRL符号化部 105 出力部 111 符号解析部 112 ユニバーサル復号化部 113 BRL復号化部
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H04N 1/41 Z

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】ラスタ状の画像データを圧縮する画像デー
    タ圧縮方式において、符号化済の画像データ列を辞書と
    して参照し、入力画像データ列と最長一致する画像デー
    タ列を少なくとも辞書の開始アドレスと一致長により表
    すことによって符号化し、画像データを圧縮する第1の
    符号化部と、画像データ中に同一データの連続が現れた
    場合、少なくともそのデータの連続が現れた画像データ
    中の位置と、そのデータ種と、その連続長を符号化し、
    画像データを圧縮する第2の符号化部と、入力画像デー
    タ中の同一データの連続数を計数する計数部と、前記計
    数部により計数された計数値と所定のしきい値を比較す
    る比較部と、符号化したデータを出力する出力部とから
    構成され、前記比較部による比較結果にもとづいて選択
    された前記第1の符号化部又は前記第2の符号化部によ
    って入力画像データがランダムに圧縮符号化されたデー
    タが前記出力部によって前記入力画像データの順番に出
    力されることを特徴とするデータ圧縮方式。
  2. 【請求項2】請求項1記載のデータ圧縮方式において圧
    縮符号化された入力信号を解析し、前記第1の符号化部
    によって符号化されたものか、前記第2の符号化部によ
    って符号化されたものかを識別する解析部と、前記解析
    部によって前記第1の符号化部による圧縮符号であるこ
    とが解析されたときには画像データを伸長する第1の復
    号化部と、前記第2の符号化部による圧縮符号であるこ
    とが解析されたときには画像データを伸長する第2の復
    号化部と、復号化した画像データを出力する出力部とか
    ら構成され、前記解析部による解析結果にもとづいて選
    択された前記第1の復号化部又は前記第2の復号化部に
    よって入力画像データがランダムに復号化されたデータ
    が前記出力部によって前記入力画像データの順番に出力
    されることを特徴とするデータ伸長方式。
  3. 【請求項3】前記第1の符号化部はLZSS(Lempel-Ziv-St
    orer-Szymanski) 符号化部であり、M個の符号毎にLZSS
    符号ブロックから構成されていることを特徴とする請求
    項1記載のデータ圧縮方式。
  4. 【請求項4】前記第2の符号化部で符号化された同一デ
    ータの連続が現れた画像データ中の位置は、前記LZSS符
    号ブロックが表わすデータ列の先頭からの相対位置、あ
    るいは直前に現れた同一データの連続の画像データ中の
    位置からの相対位置で表わされることを特徴とする請求
    項3記載のデータ圧縮方式。
JP14742594A 1994-06-29 1994-06-29 データ圧縮・伸長方式 Expired - Fee Related JP3266419B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14742594A JP3266419B2 (ja) 1994-06-29 1994-06-29 データ圧縮・伸長方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14742594A JP3266419B2 (ja) 1994-06-29 1994-06-29 データ圧縮・伸長方式

Publications (2)

Publication Number Publication Date
JPH0818981A true JPH0818981A (ja) 1996-01-19
JP3266419B2 JP3266419B2 (ja) 2002-03-18

Family

ID=15430032

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14742594A Expired - Fee Related JP3266419B2 (ja) 1994-06-29 1994-06-29 データ圧縮・伸長方式

Country Status (1)

Country Link
JP (1) JP3266419B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000052937A1 (fr) * 1999-03-04 2000-09-08 Sega Enterprises, Ltd. Procede de codage et de decodage d'informations relatives a des images
US7245396B2 (en) 2001-12-06 2007-07-17 Canon Kabushiki Kaisha Image data coding apparatus, image data decoding apparatus, image data coding method and image data decoding method
JP2010154156A (ja) * 2008-12-25 2010-07-08 Casio Electronics Co Ltd データ圧縮装置
US8125364B2 (en) 2007-08-13 2012-02-28 Nec Corporation Data compression/decompression method
JP2012160985A (ja) * 2011-02-02 2012-08-23 Fuji Xerox Co Ltd 情報処理装置及び情報処理プログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000052937A1 (fr) * 1999-03-04 2000-09-08 Sega Enterprises, Ltd. Procede de codage et de decodage d'informations relatives a des images
US7245396B2 (en) 2001-12-06 2007-07-17 Canon Kabushiki Kaisha Image data coding apparatus, image data decoding apparatus, image data coding method and image data decoding method
US8125364B2 (en) 2007-08-13 2012-02-28 Nec Corporation Data compression/decompression method
JP2010154156A (ja) * 2008-12-25 2010-07-08 Casio Electronics Co Ltd データ圧縮装置
JP2012160985A (ja) * 2011-02-02 2012-08-23 Fuji Xerox Co Ltd 情報処理装置及び情報処理プログラム

Also Published As

Publication number Publication date
JP3266419B2 (ja) 2002-03-18

Similar Documents

Publication Publication Date Title
JP3541930B2 (ja) 符号化装置及び復号化装置
JP3009727B2 (ja) 改良形データ圧縮装置
JP4479530B2 (ja) データ圧縮装置、及びデータ復元装置
US5933104A (en) Method and system for compression and decompression using variable-sized offset and length fields
US7365658B2 (en) Method and apparatus for lossless run-length data encoding
JP3337633B2 (ja) データ圧縮方法及びデータ復元方法並びにデータ圧縮プログラム又はデータ復元プログラムを記録したコンピュータ読み取り可能な記録媒体
US6744388B1 (en) Hardware-friendly general purpose data compression/decompression algorithm
KR100314419B1 (ko) 변형렘펠-지브1을인코딩하기위한방법및장치
EP0903866B1 (en) Method and apparatus for data compression
US5857035A (en) Arithmetic coding compressor for encoding multiple bit values
KR100536980B1 (ko) 데이터 압축 방법, 데이터 압축해제 방법 및 데이터 압축 장치
JP2010136417A (ja) データ圧縮装置、及びデータ復元装置
US6301394B1 (en) Method and apparatus for compressing data
KR100906041B1 (ko) 폰트 압축 및 검색 방법 및 장치
JP3266419B2 (ja) データ圧縮・伸長方式
EP0340039A2 (en) Search tree data structure encoding for textual substitution data compression systems
JP2003264703A (ja) データ符号化装置、データ符号化方法、及びそのプログラム
KR19980081236A (ko) 데이터 압축/복원 방법 및 압축 장치
US7193541B2 (en) Representation of sign in encoding scheme
JP3124887B2 (ja) データ圧縮・復号方式
JPH05134847A (ja) データ圧縮方法
JP3073072B2 (ja) 画像データ圧縮及び復元方式
JPH05241776A (ja) データ圧縮方式
EP0494038A2 (en) Run-length encoding in extensible character sets
EP0834832A2 (en) Arithmetic image coding

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090111

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090111

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100111

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110111

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees