JPH11317673A - ランレングス符号化方法及び復号化方法 - Google Patents

ランレングス符号化方法及び復号化方法

Info

Publication number
JPH11317673A
JPH11317673A JP12434898A JP12434898A JPH11317673A JP H11317673 A JPH11317673 A JP H11317673A JP 12434898 A JP12434898 A JP 12434898A JP 12434898 A JP12434898 A JP 12434898A JP H11317673 A JPH11317673 A JP H11317673A
Authority
JP
Japan
Prior art keywords
value
code
format
constant
numerical
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
JP12434898A
Other languages
English (en)
Other versions
JP3676078B2 (ja
Inventor
Yoshitsugu Inoue
喜嗣 井上
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.)
Ricoh Co Ltd
Original Assignee
Ricoh 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP12434898A priority Critical patent/JP3676078B2/ja
Publication of JPH11317673A publication Critical patent/JPH11317673A/ja
Application granted granted Critical
Publication of JP3676078B2 publication Critical patent/JP3676078B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】比較的小さな容量である画像データの圧縮率の
向上を図る。 【解決手段】「0」以上の有限の整数であるRL値を、
RL値がCS≦RL<T+CSとなるT個の値をとり得
る形式Sの符号と、RL値がCM≦RL<{2(W × n)
CM}となる2(W × n)個(nは整数)の値をとり得る形
式Mの符号とで構成される符号群に符号化する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は画像データ等を圧
縮伸張するための符号化方法及び復号化方法、特にプリ
ンタ等の省メモリ機構に好適な高速性と高圧縮率化に関
するものである。
【0002】
【従来の技術】近年、例えばレーザプリンタ等の印刷装
置では、印刷のための画像データを圧縮(符号化)して
一時的に蓄積し、伸張(復号化)しながら実際の印刷を
行い、必要なメモリを削減する、いわゆる省メモリ技術
が広く用いられている。このような省メモリ技術の基本
的な目的はメモリを削減することによりコストダウンを
図ることにあるので、圧縮伸張のために複雑な専用ハー
ドウェアを備えることは好ましくなく、したがって装置
の制御を実行するプロセッサにこれらの圧縮伸張処理を
ソフトウェア的に行わせしめる、いわゆるミドルウェア
の利用が一般的となっている。
【0003】データ圧縮の方式に関しては多数の技術が
開示されているが、上記のような目的に用いる場合に
は、一次元圧縮と称される比較的単純な方式を用いるこ
とが普通である。一般に、二次元静止画像を対象とする
場合には、副走査方向のデータ相関を加味して行う二次
元圧縮のほうが高い圧縮率が得られることがよく知られ
ているが、二次元圧縮は処理内容が複雑であるため、印
刷速度や解像度が年々向上するなかで上記のようにソフ
トウェアで処理することが難しいためである。
【0004】一次元圧縮としては、ファクシミリ装置等
に用いられるMH符号やワイル符号が広く知られている
が、可変長符号であるため、特にソフトウェアで処理す
る場合の処理速度という観点から見て、上記のような目
的に用いる適しているとは言えない。
【0005】一般にランレングス符号化と呼ばれるもの
は、ランレングス(以下、RLという)数値をある固定
長で表現するもので、処理が単純であり、処理速度やハ
ードウェア化する場合の回路規模(コスト)という観点
からは適しているが、RL値が固定長で表現できる値を
超える場合には、反対色のランが「0」である「0」ラ
ン符号を挟んで複数の数値の和に分解して符号化するた
め、可変符号長を持つMH符号に比べて圧縮率が非常に
悪いという問題があり、幾つかの改善技術が開示されて
いる。
【0006】例えば、特開平6−189145号公報に
示されたラン長符号化方法は、長さが異なる複数の固定
ランレングス符号に固定ランレングス符号タイプを識別
する符号長エリアを設け、白画素と黒画素のそれぞれの
長さに応じて相応しい固定ランレングス符号に画素数を
記載して符号化することにより圧縮率の向上を図るよう
にしている。この方法によるならば、ランレングス符号
化の簡素さと、より短いランにより短い符号を割り当て
ることができるという特徴を有し、高い処理速度と圧縮
率の向上が期待できる。
【0007】また、特許第2573849号公報に示さ
れたデータ圧縮装置は、1以上の所定の整数Bとそれぞ
れ整数である変数n,Wとを用い、RL値をn×2(B
w)の形式に順次分解し、同一のデータが連続しているこ
とを示す連続識別符号と変数W及び変数nとを示すラン
レングス符号とを含む圧縮データを生成するようにして
データ圧縮効率を高めるようにしている。
【0008】
【発明が解決しようとする課題】しかしながら特開平6
−189145号公報に示されたラン長符号化方法は、
固定ランレングス符号タイプを識別する少なくとも1ビ
ットの符号長エリアが設けてあるため、ある符号が有す
るビット幅をw、それに含まれる符号長エリアのビット
数をvとすると、符号が表現できるランレングスの最大
値は(2(w-v)−1)となってしまい、かつ、ランレン
グスの数値をそのまま符号の数値部としているので、よ
り大きなランレングスを表す符号はより小さい値を表現
する符号の値を含むものであるという冗長性を持つこと
になる。したがってこの方法によって高い処理速度を得
るために複数の符号を一定の倍数となるよう定義する場
合には、MH符号のような可変長符号に匹敵するような
圧縮率を得ることは困難である。逆に、圧縮率を改善す
るために倍数とならないような可変長符号をきめ細かく
定義する場合には、固定長符号に期待される処理速度を
損なうとともに符号長エリアで表現すべき符号のビット
数が増大し、十分な圧縮率向上が期待できないという短
所がある。
【0009】また、特許第2573849号公報に示さ
れたデータ圧縮装置のように、RL値をn×2(B w)
形式に順次分解することは、2進数をBビット単位でW
桁に分解することであり、ランレングスの数値を表現す
る部分での冗長性を排除できるが、このデータ圧縮装置
では多値データ、すなわち複数ビットデータが同一値で
連続する場合の連続数をランレングスとして扱うものの
みであり、連続識別符号が多値データと同じ内容のデー
タに割り当てられ、ランレングスが「0」となる場合の
符号化方式が明示されていない等、二値データに実施す
ることには多くの問題が残されている。また変数Wを決
定する処理は、より短いランレングス値においてより多
くの繰り返し処理を必要とするため処理速度上好ましく
ないという短所がある。さらに変数Wを固定長またはそ
の倍数の形式で符号化すると、符号量が非常に大きくな
り、これを防ぐために整数Bの値を小さく設定すると、
より多くの繰り返し処理を必要としてしまう。
【0010】この発明はかかる短所を改善し、個々の符
号が固定長Wまたはその倍数長である複数形式により構
成され、且つ、ビット幅Wの最も短い符号は2(W-1)
より多い数値を表現できるものである符号群に符号化し
て、特に圧縮対象とする元データが比較的小さな容量で
あるものに最適なランレングス符号化方法及び復号化方
法を提供することを目的とするものである。
【0011】
【課題を解決するための手段】この発明に係るランレン
グス符号化方法は、画像データ等を走査して得られるラ
ンレングス(以下、RLという)の数値列を入力し、入
力された個々のRL値を固定長W又はその倍数長の符号
に変換して出力するランレングス符号化方法であって、
第1の形式Sの符号と第2の形式Mの符号を有し、第1
の形式Sの符号は、固定長Wを有し、その数値Eは所定
の定数T未満であり、数値Eに所定の定数CSを加えた
値がRL値に対応し、第2の形式Mの符号は、形式Sの
定数T以上である数値の1個である開始記号Jと固定長
W又はその倍数長の数値部Fとで構成され、数値部Fの
数値に所定の定数CMを加えた値がRL値に対応し、
「0」以上の有限の整数であるRL値を、上記形式Sの
符号と単一の形式Mの符号又は複数の形式Mの符号とで
構成される符号群に符号化することを特徴とする。
【0012】この発明に係る第2のランレングス符号化
方法は、画像データ等を走査して得られるRLの数値列
を入力し、入力された個々のRL値を固定長W又はその
倍数長の符号に変換して出力するランレングス符号化方
法であって、第1の形式Sの符号と第2の形式Mの符号
と第3の形式Lの符号を有し、第1の形式Sの符号は、
固定長Wを有し、その数値Eは所定の定数T未満であ
り、数値Eに所定の定数CSを加えた値がRL値に対応
し、第2の形式Mの符号は、形式Sの定数T以上である
数値の1個である開始記号Jと固定長W又はその倍数長
の数値部Fとで構成され、数値部Fの数値に所定の定数
CMを加えた値がRL値に対応し、第3の形式Lの符号
は、形式Sの定数T以上である数値の1個である開始記
号Kと固定長W単位で可変数の数値部とで構成され、数
値部の構成単位は数値断片と同形式情報が継続するか否
かを示す1ビットのフラグとで構成され、フラグにより
停止されるまで後続の数値断片をつなぎ合わせた数値に
固有の定数CLを加えた値がRL値に対応し、「0」以
上の有限の整数であるRL値を形式Sの符号と「0」を
含む適宜数の形式Mの符号及び形式Lの符号とで構成さ
れる符号群に符号化することを特徴とする。
【0013】上記形式Sに固有の定数C=0で、形式S
の符号は0≦RL≦(T−1)なるRL値に対応し、形
式Mと形式Lの符号は対応するRL数値の昇順に並べ
て、形式Mと形式Lの固有の定数Cは直前の符号が対応
するRL値の最大値に「1」を加えると良い。
【0014】また、上記形式Sに固有の定数C=1で、
形式Sの符号は1≦RL≦TなるRL値に対応し、形式
Mと形式Lの符号は対応するRL数値の昇順に並べて、
形式Mと形式Lの固有の定数Cは直前の符号が対応する
RL値の最大値に「1」を加えたものであり、RL値の
「0」は、最大のRL値を表現する形式Lの符号におい
て有効なRL値として存在しない数値Zとして、好まし
くは、数値Zは物理的に有限な加算器を用いて行う数値
部に所定の定数Cを加える演算の結果が桁あふれにより
「0」なる結果を生じる数値で表現することが望まし
い。
【0015】さらに、上記符号単位のビット幅である固
定長Wは2n(nは自然数)ビット、好ましくは4ビッ
トであることが望ましい。
【0016】また、上記形式Sの符号の定数T=12と
した第1の符号であり、第2,第3,第4の符号は数値
部Fが4ビット幅の形式Mの符号であり、第5の符号は
形式Lの符号であり、第1から第5の符号は対応するR
L値領域が順次大きくなるように配置され、第2から第
5の符号の開始記号J1〜J3及びKには「12」〜「1
5」の値が適宜に割り当てると良い。
【0017】また、上記形式Sの符号の定数T=12と
した第1の符号であり、第2,第3,第4の符号は、数
値部Fが4ビット幅の形式Mの符号であり、第5の符号
は形式Lの符号であり、第1から第5の符号は、「0」
値の場合を除き対応するRL値領域が順次大きくなるよ
うに配置され、第2から第5の符号の開始記号J1〜J3
及びKには「12」〜「15」の値が適宜に割り当てて
も良い。
【0018】また、上記RL値が1個入力された時点
で、入力されたRL値が第2の符号の定数C2未満であ
るときに、RL値の下位4ビットを形式Sの符号として
出力し、RL値が第2の符号の定数C2以上で第3の符
号の定数C3未満であるときに、第2の符号の開始記号
1と(RL−C2)の下位4ビットとを形式Mの符号と
して出力し、RL値が第3の符号の定数C3以上で第4
の符号の定数C4未満であるときに、第3の符号の開始
記号J2と(RL−C3)の下位4ビットとを形式Mの符
号として出力し、RL値が第4の符号の定数C4以上で
第5の符号の定数C5未満であるときに、第4の符号の
開始記号J3と(RL−C4)の下位4ビットとを形式M
の符号として出力し、RL値が第5の符号の定数C5
上のときに形式Lの開始記号Kを出力し、(RL−
5)を数値Gとし、その時点の数値Gの値と「8」と
を比較し、数値Gが「8」以上であれば、数値Gの下位
3ビットの上位に「0」を補い4ビットの情報Fとして
抽出して符号の数値部として出力し、数値Gを3ビット
右にシフトして数値Gが「8」未満となるまで繰り返
し、数値Gの値が「8」未満となった時点で数値Gの下
位3ビットに所定の停止フラグを付加した値を符号とし
て出力する。
【0019】また、上記RL値が入力された時点である
1個が入力された時点で、入力されたRL値が「0」で
ある場合にはRL値を数値Zに変更し、入力されたRL
値が第2の符号の定数C2未満であるときに、RL値の
下位4ビットを形式Sの符号として出力し、RL値が第
2の符号の定数C2以上で第3の符号の定数C3未満であ
るときに、第2の符号の開始記号J1と(RL−C2)の
下位4ビットとを形式Mの符号として出力し、RL値が
第3の符号の定数C3以上で第4の符号の定数C4未満で
あるときに、第3の符号の開始記号J2と(RL−C3
の下位4ビットとを形式Mの符号として出力し、RL値
が第4の符号の定数C4以上で第5の符号の定数C5未満
であるときに、第4の符号の開始記号J3と(RL−
4)の下位4ビットとを形式Mの符号として出力し、
RL値が第5の符号の定数C5以上のときに形式Lの開
始記号Kを出力し、(RL−C5)を数値Gとし、その
時点の数値Gの値と「8」とを比較し、数値Gが「8」
以上であれば、数値Gの下位3ビットの上位に「0」を
補い4ビットの情報Fとして抽出して符号の数値部とし
て出力し、数値Gを3ビット右にシフトして数値Gが
「8」未満となるまで繰り返し、数値Gの値が「8」未
満となった時点で数値Gの下位3ビットに所定の停止フ
ラグを付加した値を符号として出力する。
【0020】ランレングス復号化方法は、上記ランレン
グス符号化方法により生成された符号列データを入力
し、入力した符号列データを順次RL値に復元して出力
するランレングス復号化方法であって、符号列を4ビッ
ト幅の符号単位として入力し、入力した第1番目の符号
単位の数値が第2の符号の定数C2未満であるときに、
第1番目の符号単位の数値に第1の符号の定数C1を加
えた値をRL値として出力し、第1番目の符号単位の数
値が第2の符号の定数C2以上で第2の符号の開始信号
1と一致したときに、第2番目の符号単位を読み込
み、第2番目の符号単位の数値に第2の符号の定数C2
を加えた値をRL値として出力し、第1番目の符号単位
の数値が第2の符号の開始信号J1と一致しなく第3の
符号の開始信号J2と一致したときに、第2番目の符号
単位を読み込み、第2番目の符号単位の数値に第3の符
号の定数C3を加えた値をRL値として出力し、第1番
目の符号単位の数値が第3の符号の開始信号J2と一致
しなく第4の符号の開始信号J3 と一致したときに、第
2番目の符号単位を読み込み、第2番目の符号単位の数
値に第4の符号の定数C4を加えた値をRL値として出
力し、第1番目の符号単位の数値が第4の符号の開始信
号J3と一致しないときに、復元したRL値を格納し出
力するための一時記憶RLと変数hとを「0」に初期化
し、新たな符号単位を入力し、RLをRL値と新たな符
号単位の下位3ビットを変数h分右にシフトした値との
ビット毎の論理和演算の結果値で更新し、新たな符号単
位が「8」未満の数値であるときに、変数hを「h+
3」で更新し、新たな符号単位を入力する段階以降を繰
り返し、新たな符号単位が「8」以上の数値になったと
きに、その時点でのRLの値に第5の符号の定数C5
加えた値をRLとして出力することを特徴とする。
【0021】
【発明の実施の形態】この発明の一次元圧縮装置は画像
データをランレングス符号化するものであり、順次入力
したRL数値を、第1の形式Sの符号と第2の形式Mの
符号で構成される符号群に符号化する。形式Sの符号は
固定長Wを有し、その数値E(符号無し)は所定の定数
T未満のものであり、且つ、数値Eに所定の定数CSを
加えた値がRL値に対応し、RL=E+CSである。数
値Eの値は上記の定義より0≦E<Tなる値を持ち、し
たがってRL値は、CS≦RL<T+CSとなるT個の
値をとり得る。形式Mの符号は形式Sの定数T以上であ
る数値の一個である開始記号Jと2n(nは整数)ビッ
トの固定長Wまたはその倍数長(W×n)の数値部Fと
で構成され、且つ、数値部Fの数値に所定の定数CMを
加えた値がRL値に対応し、RL=F+CMである。数
値部Fの値は上記の定義より0≦F<2(W × n)となり、
RL値はCM≦RL<{2(W × n)+CM}となる2(W ×
n)個の値をとり得ることになる。この形式Mの符号は単
数又は複数セット有する。
【0022】一般的にRL値は、「0」以上の有限な値
をとる整数であるので、形式S及び単数または複数の形
式Mの各符号について、定数TとRL値とを対応づける
定数CS,CMの各値とを適宜に定めることにより、容
易に所望のRL値範囲を包含する符号群を得ることがで
きる。
【0023】そして入力したRL数値を所定の符号に変
換するとき、各符号の符号長は明らかに固定長Wまたは
その整数倍となっている。すなわち最も短い符号語はW
ビット幅である。Wビットの情報が表現できる数値は2
W個であるが、この中に符号長を表現するためのエリア
を設ける場合には、例えそれが1ビットであっても、そ
れ以外の部分が表す数値は2(W-1)個と1/2になる。
しかしながら形式Sの符号はT個の値を表現でき、定数
Tの最大値は2Wより第2の形式Mの符号のセット数を
減じた値とすることができる。したがって形式Mの符号
のセット数を2(W-1)より小さな値となるようにするこ
とで、最も短い符号である形式Sの符号は符号長エリア
を設ける場合より大きな情報量に対応する数値を表現す
ることができる。
【0024】
【実施例】図1はこの発明の一実施例の一次元圧縮装置
の構成を示すブロック図である。図に示すように、一次
元圧縮装置1は画像データをランレングス符号化するも
のであり、ランレングス(以下、RLという)測定手段
11と符号化手段12及び符号格納手段13を有する。
RL測定手段11は画像データを一次元的に走査してR
L数値列を生成するとともに、符号化手段12に起動
(初期化)と停止(RL数値列出力完了)を通知する。
符号化手段12はRL測定手段11で生成したRL数値
を順次入力して所定の符号に変換する。符号格納手段1
3は符号化手段12で変換した符号データを記憶手段2
等に適時格納する。このRL測定手段11と符号化手段
12及び符号格納手段13はプロセッサの処理制御機能
を用いるソフトウェアで構成しても良いし、一部又は全
部をハードウェアで構成しても良い。また、RL測定手
段11と符号格納手段13は、例えばMH符号を用いる
圧縮方式と同様もので良く、公知の技術で容易に実現で
きる。さらに、白または黒の色により異なる符号を生成
する場合には、RL値とともに色の情報を入力するか、
起動後最初に入力されるRL値の色を固定して符号化手
段12で管理する等の手段が必要となるが、以下の実施
例は色による符号の切り替えは行わないものを示す。
【0025】符号化手段12は、RL測定手段11から
順次入力したRL数値を、図2に示すように、形式Sの
符号と形式Mの符号で構成される符号群に符号化する。
形式Sの符号は、固定長Wを有し、その数値E(符号無
し)は所定の定数T未満のものであり、且つ、数値Eに
所定の定数CSを加えた値がRL値に対応し、RL=E
+CSである。数値Eの値は上記の定義より0≦E<T
なる値を持ち、したがってRL値は、CS≦RL<T+
CSとなるT個の値をとり得る。形式Mの符号は、形式
Sの定数T以上である数値の一個である開始記号Jと2
n(nは整数)ビットの固定長Wまたはその倍数長(W
×n)の数値部Fとで構成され、且つ、数値部Fの数値
に所定の定数CMを加えた値がRL値に対応し、RL=
F+CMである。数値部Fの値は上記の定義より0≦F
<2(W × n)となり、RL値はCM≦RL<{2(W × n)
CM}となる2(W × n)個の値をとり得ることになる。こ
の形式Mの符号は単数又は複数セット有する。この形式
Mの符号を複数セット設けるための必要条件は、固有の
開始符号Jを割り当てるために、形式Sの定数T以上と
なる数値が少なくとも複数分存在するよう定義されてい
ることのみであり、容易に複数セット設けることができ
る。
【0026】一般的にRL値は、「0」以上の有限な値
をとる整数であるので、形式S及び単数または複数の形
式Mの各符号について、定数TとRL値とを対応づける
定数CS,CMの各値とを適宜に定めることにより、容
易に所望のRL値範囲を包含する符号群を得ることがで
きる。但し、定数CS,CMの定義に際しては、各符号
を対応する数値が重複しないように定めることが、情報
のエントロピーを下げるという意味で好ましい。
【0027】上記のようにRL測定手段11から入力し
たRL数値を所定の符号に変換するとき、各符号の符号
長は明らかに固定長Wまたはその整数倍となっている。
すなわち最も短い符号語はWビット幅である。Wビット
の情報が表現できる数値は、2W個であるが、この中に
符号長を表現するためのエリアを設ける場合には、例え
それが1ビットであっても、それ以外の部分が表す数値
は2(W-1)個と1/2になる。しかしながら形式Sの符
号はT個の値を表現でき、前記の必要条件から定数Tの
最大値は2Wより第2の形式Mの符号のセット数を減じ
た値とすることができる。したがって形式Mの符号のセ
ット数を2(W-1)より小さな値となるようにすること
で、最も短い符号である形式Sの符号は符号長エリアを
設ける場合より大きな情報量に対応する数値を表現する
ことができる。
【0028】上記説明においては、Wビット幅の数値T
以上の値に割り振られる記号は形式Mの符号の開始記号
Jであるもののみを説明したが、EOLといった特殊符
号や別途の制御符号又は別途の符号の開始記号として割
り当てるという改良も行うことができる。
【0029】上記実施例は、RL測定手段11から順次
入力したRL数値を符号化手段12で形式Sの符号と形
式Mの符号で構成される符号群に符号化する場合につい
て説明したが、形式Sの符号と形式Mの符号で構成され
る符号群に他の形式Lの符号を追加した実施例を説明す
る。形式Lの符号は図3に示すように、形式Sの定数T
以上である数値の1個である開始記号Kと固定長W単位
で可変数の数値部Fとで構成されている。数値部Fの構
成単位は数値断片Fi(i=1〜n)と、同形式情報が
継続するか否かを示す1ビットのフラグFgとで構成さ
れ、フラグFgにより停止されるまで後続の数値断片を
つなぎ合わせた数値に固有の定数CLを加えた値がRL
値に対応する。すなわち、RL={Fn,・・・F1
+CLである。この式により表現される数値はCL以上
の任意の整数となるので、CL≦RLである任意のRL
値に対応することができる。
【0030】一般的にRL値は「0」以上の有限な値を
とる整数であるので、上記形式Sの符号と無し(0個)
を含む適宜数の形式Mの符号及び形式Lの符号の各符号
について、定数TとRL値とを対応づける定数C(C
S,CM,CL)の値を適宜に定めることにより、所望
のRL値範囲を包含する符号群を容易に得ることができ
る。但し、定数C(CS,CM,CL)の定義に際して
は、各符号を対応する数値が重複しないように定めるこ
とが、情報のエントロピーを下げるという意味で好まし
い。
【0031】上記のような符号群において、各符号の符
号長は明らかにWまたはその倍数となっている。また、
形式Lの符号が対応するRL値の最大値に制限が無いた
め、非常に大容量のデータを符号化の対象とする場合、
すなわちRL値の最大値が大きく、且つ符号の単位長で
あるWに小さな値を用いる場合にも、形式Mの符号を多
数備える必要が無く、符号の種類により上限値が制限さ
れる定数Tの値を大きくすることができるので、最も短
い符号である形式Sの符号は符号長エリアを設ける場合
より大きな情報量に対応する符号を得ることができる。
【0032】上記説明においては、Wビット幅の数値の
T以上の値に割り振られる記号は形式Lの開始記号Kと
形式Mの符号の開始記号Jであるもののみを説明した
が、例えば、EOLといった特殊符号や別途の制御符号
又は別途の符号の開始記号として割り当てるという改良
も行うことができる。
【0033】この形式Sの符号と複数の形式Mの符号と
形式Lの符号の符号群に符号化する場合を図4を参照し
て説明する。図4は形式Sの符号40と形式Mの符号4
1,42,43と形式Lの符号44の符号群に符号化す
る場合を示す。図4において、形式Sの符号40は定数
1=0、すなわち形式Sの符号40は、0≦RL≦
(T−1)なるRL値に対応するものであり、形式Mの
符号41の定数C2は定数Tすなわち形式Sの符号40
が対応するRL値の最大値に「1」を加えたものであ
り、形式Mの符号42,43と形式Lの符号44は対応
するRL数値の昇順に並べて、それぞれの定数C3
4,C5は直前のRL値領域に対応する符号に対応する
RL値の最大値に「1」を加えたものである。
【0034】このようにして各符号40〜44が対応す
るRL数値に重複が無く、且つ、より小さなRL値に対
してより短い符号を割り当てることができる。例えば各
符号40〜44の固定長Wを2n(nは自然数)ビッ
ト、好ましくは4ビットとし、最も短い4ビットの第1
の符号40には、T=12すなわち、0≦RL≦11と
いうRL値域が対応し、形式Mの符号41〜43の開始
記号J1〜J3と形式Lの符号44の開始記号Kには「1
2」〜「15」の値が割り当てられ、形式Mの第2の符
号41にはC2=12で、12≦RL≦27というRL
値域が対応し、第3の符号42にはC3=28で、28
≦RL≦43というRL値域が対応し、第4の符号44
にはC4=44で、44≦RL≦59というRL値域が
対応して、次に短い8ビットの形式Mの符号41〜43
には「12」〜「59」という値域が割り当てられる。
形式Lの第5の符号44は、第1の符号長を単位とする
可変長の符号であり、C5=60で、60≦RLのRL
値域に対応する。このようにして各符号40〜44が対
応するRL数値に重複が無く、且つ、より小さなRL値
に対してより短い符号を割り当てることができる。
【0035】この図4に示す符号形式は、レーザプリン
タで実際に印刷に供される多様な画像データに対する評
価を通して600dpiなる解像度に対して高い解像度
が得られるよう定めたものであり、ファクシミリに用い
られるCCITT勧告のG3符号である可変長形式のM
H符号より平均約3パーセント低いだけという圧縮率を
観測することができた。また、より高い解像度あるいは
相対的に小さなRL値の発生頻度が低い画像データを主
な対象とする場合には、定数Tの値を「1」又は「2」
程度減らして、Fが4ビット幅の形式Mの符号数を1又
は2個追加した符号形式を用いることにより、より高い
圧縮率が得られる場合が多い。
【0036】図5は形式Sの符号の定数C1=1とした
符号形式を示す。この定数C1=1とした形式Sの符号
50は、0≦RL≦TなるRL値に対応するものであ
り、形式Mの符号51の固有の定数C2は(T+1)、
すなわち、形式Sの符号50が対応するRL値の最大値
に「1」を加えたものであり、形式Mの符号52,53
と形式Lの符号54は対応するRL数値の昇順に並べ
て、それぞれ固有の定数C3 ,C4,C5は、直前のRL
値領域に対応する符号に対応するRL値の最大値に
「1」を加えたものである。また、RL値の「0」は、
これらの符号群で最大のRL値(有限値)を表現する符
号においてRL値として存在しない数値Zとして、好ま
しくは、数値Zは物理的に有限な加算器を用いて行う数
値部に所定の定数Cを加える演算の結果が桁あふれによ
り「0」なる結果を生じる数値で表現される。
【0037】この符号群で符号化することにより各符号
50〜54が対応するRL数値に重複が無く、且つ、R
L値の「0」なる値を例外として、より小さなRL値に
対してより短い符号が割り当てることができる。例えば
各符号50〜54の固定長Wを4ビットとし、最も短い
4ビットの形式Sの第1の符号50には、T=12、C
1=1,すなわち、1≦RL≦12というRL値域が対
応し、形式Mの符号51〜53の開始記号J1〜J3と形
式Lの符号54の開始記号Kには「12」〜「15」の
値が割り当てられ、形式Mの第2の符号51にはC2
13で、13≦RL≦28というRL値域が対応し、第
3の符号52にはC3=29で、29≦RL≦44とい
うRL値域が対応し、第4の符号53にはC4=45
で、45≦RL≦60というRL値域が対応して、次に
短い8ビットの形式Mの符号51〜53に「13」〜
「60」という値域が割り当てられる。形式Lの第5の
符号44は、第1の符号長を単位とする可変長の符号で
あり、C5=61で、61≦RLとRL=0のRL値域
に対応することができる。
【0038】この図5に示した符号形式による符号化で
は、あるRL値の入力を1個の符号として出力するの
で、RL値が有効な値として「0」となるのは、RL測
定手段11が最初にランを数える色と反対の色で始まる
場合、すなわち、通常のように白から測定を始めたとき
に、画像データが黒から始まっている場合のみである。
したがって、この値に対応する符号を最も長い符号に割
り当てて相対的に他の符号が対応する値域を上げること
で圧縮率の改善を図ることができる。
【0039】一方、RL値の「0」なる値に対応する値
を表す符号として、物理的に有限な加算器を用いて行う
数値部に所定の定数Cを加える演算の結果が桁あふれに
より「0」なる結果を生じる数値を符号化したもので表
現されるものであれば、RL値と符号とを対応づける式
は同一のものとなる。但し、この特徴を利用するために
は、復号化手段で用いられる加算器が所望の結果を生じ
るものであるという条件が必要となり、処理の一部をハ
ードウェアで行う場合には注意が必要である。
【0040】この図5に示した符号形式もレーザプリン
タで実際に印刷に供される多様な画像データに対する評
価を通して600dpiなる解像度に対して高い解像度
が得られるよう定めたものであり、可変長形式のMH符
号より平均約2パーセント低いだけという圧縮率を観測
することができた。
【0041】また、図4,図5に示した符号形式で行う
符号化をすべてソフトウェアで処理し、中高速のレーザ
プリンタの省メモリー機構として実施する場合には、印
刷時の復号化を支援するハードウェア装置を設けること
が好ましい場合がある。これは、印刷動作に追従して伸
張を行うソフトウェアの処理能力を次頁の画像データの
生成に振り向けることでプリンタの持つ印刷速度で連続
印刷することが容易になるためである。通常のプロセッ
サにはバレルシフタに相当する処理命令が備わっている
ので、形式Sと形式M及び形式Lの符号による符号化方
法のように、ある固定長単位の符号を生成することによ
るメリットは符号化の段階であれ復号化の段階であれ、
あまり大きいものではなく、また、その長さが2n(n
は自然数)ビットであるか否かといった差異は殆ど生じ
ない。一方、ハードウェアによる伸張器について考察す
るならば、符号が記憶されている記憶装置からの入力
は、8ビット、16ビット、32ビット又は64ビット
といった2nビットの単位で行われることが普通である
ので、符号の基本単位長を2nビットとすると、バレル
シフタといった複雑な機構を設ける必要が無くなる。例
えば固定長Wを4ビットとし、図6に示すように、32
ビット幅の入力バッファに格納された8個の符号要素の
任意の一個を復号化処理のためバッファに格納するため
の経路を設けるには、8対1のデータセレクタを4個設
ければよいという簡素なものとなる。そこで図4、図5
に示す各符号40〜44,50〜54の固定長Wを2n
ビット、好ましくは4ビットとしたのである。
【0042】次に図4又は図5に示した符号形式によ
り、ある1個のRL入力値を符号に変換して出力する処
理を図7のフローチャートを参照して説明する。図7に
おいて、両横二重線の長方形で示す処理は定義済み処理
を示し、RL測定手段11からのRL値入力又は符号格
納手段13に対する符号出力の処理であることを示す。
また、各記号の意味は次の通りである。RLはRL測定
手段11より入力されるRL値又はそれを保持する一次
記憶を示す。E,F,J1〜J3及びKは図4又は図5に
示された4ビット長の符号または符号単位の出力又はそ
れを保持する一時記憶であり、説明のため異なる記号を
用いているが、符号格納手段13に対する出力という意
味では共通のものである。C1〜C5は図4又は図5に示
された各符号の定数を示し、Zは図5に示す符号形式で
RL値が「0」である値を表すためのRL値の定数、G
はRL値を形式Lの符号に変換するときに、RL値を3
ビットづつの数値断片として分解するために局所的に用
いる一時記憶を示す。
【0043】RL測定手段11から符号化手段12にあ
る1個のRL値が入力されると(ステップS1)、図5
に示す符号形式で符号化する場合は、まず、RL値が
「0」であるか否を調べ(ステップS2)、RL値が
「0」である場合には、RL値を定数値Zの値に変更し
てから符号化処理に入る(ステップS3)。また、図4
に示す符号形式で符号化する場合は、RL値が入力され
ると(ステップS1)、直ちに符号化処理に入る。
【0044】符号化処理にはいると、まずRL値が定数
2未満であるか否を判断し(ステップS4)、RL値
が定数C2未満である場合には(RL−C1)の下位4ビ
ットを符号として出力する処理を行い符号化して形式S
の符号を生成して終了する(ステップS5)。RL値が
定数C2以上である場合には、引き続いてRL値が定数
3未満であるか否を判断し(ステップS6)、RL値
が定数C3未満である場合には、定数J1を開始記号とし
て出力する処理と、(RL−C2)の下位4ビットとを
数値部として出力する処理とを行い処理を終了する(ス
テップS7,S8)。RL値が定数C3以上である場合
には、引き続いてRL値が定数C4未満であるか否を判
断し(ステップS9)、RL値が定数C4未満である場
合には、定数J2を開始記号として出力する処理と、
(RL−C3)の下位4ビットとを数値部として出力す
る処理とを行い処理を終了する(ステップS10,S1
1)。RL値が定数C4以上である場合には、引き続い
てRL値が定数C5未満であるか否を判断し(ステップ
S12)、RL値が定数C5未満である場合には、定数
3を開始記号として出力する処理と、(RL−C43
の下位4ビットとを数値部として出力する処理とを行い
処理を終了する(ステップS13,S14)。このステ
ップ6からステップ14の処理により、各々のRL値の
値域に応じた形式Mの符号が生成される。
【0045】RL値が定数C5以上である場合には、定
数Kを開始記号として出力する処理と(RL−C5)な
る数値を数値Gとする処理とを行う(ステップS15,
S16)。次に、その時点の数値Gの値と「8」とを比
較し(ステップS17)、数値Gが「8」以上であれ
ば、数値Gの下位3ビットの上位に「0」を補い4ビッ
トの情報Fとして抽出し符号の数値部の1個として出力
する処理と、数値Gを3ビット右にシフトする処理とを
Gが「8」未満となるまで繰り返し(ステップS18,
S19,S17)、Gの値が「8」未満となった時点で
数値Gの下位3ビットに所定の停止フラグを付加した値
を符号として出力する処理を行い処理を終了する(ステ
ップS20)。
【0046】この処理において、数値Gの値が「8」以
上であることは、以降に続く数値Gの下位3ビットを4
ビットの情報Fとして抽出し符号の数値部の1個として
出力する処理と、数値Gを3ビット右にシフトする処理
とを行った後でもGの値が「0」とならないことを示
し、3ビットを4ビットに拡張する際に補われた1ビッ
トの「0」は、数値部の情報が継続することを示すグラ
フとして用いられるものである。数値Gの下位3ビット
を上位に1ビット「0」を補って4ビットの情報として
抽出する処理は、数値Gと2進数表現の0111である
数値「7」との各ビットの論理積演算を行うことで容易
に達成される。逆に数値Gが「8」未満であることは、
数値Gを3ビット分右にシフトすると「0」になること
を示し、以降は数値Gの下位3ビットに所定の停止フラ
グを付加した値を符号の数値部の最後の1個として出力
する処理が行われる。この所定の停止グラフとは4ビッ
トの符号単位の最初のビットに前記と逆の「1」である
1ビットを3ビットの数値断片に付加するものである。
一方、この段階では数値Gの値が「8」未満となってい
るので、ステップ20の処理に示すように数値Gと2進
数表現1000の数値「8」との各ビットの論理和演算
を行うことで容易に目的の符号単位を得ることができ
る。以上の処理により形式Lの符号が生成される。
【0047】上記処理は、入力されたある1個のRL値
を符号化することについて説明したが、順次入力される
RL数値列に対して個々のRL値に対して同様の処理を
行うことにより所望の符号列を生成することができる。
【0048】また、個々のRL値の符号化処理に着目す
るならば、以上の説明から明らかなように、より小さい
RL値を符号に変換する一連の処理は、より大きなRL
値を符号に変換する一連の処理より少ない処理数で構成
されていることがわかる。特に、形式Lの符号を生成す
る一連の処理(ステップS15〜S20)でも、処理の
内容が下位3ビットを数値断片として抽出する、すなわ
ち、数値の下位側から符号化するものであることから、
前記の特徴が達成されていることが容易に理解できる。
【0049】上記のようにして一次元圧縮装置1で符号
化し記憶手段2等に格納した符号データを復号化する一
次元伸張装置について説明する。一次元伸張装置3は、
図8に示すように、符号読出手段31と復号化手段32
と描画手段33を有する。符号読出手段31は記憶手段
2等に格納された符号列データを順次読み出す。復号化
手段32は符号読出手段31で読み出した符号データを
入力し、順次RL値に復号化して画像データに変換す
る。描画手段33は復号化手段32で変換した画像デー
タを出力する。また、符号読出手段31は復号化手段3
2に起動(初期化)を通知するとともに、符号読出手段
31と描画手段33の何れかが処理の完了を検出して複
号化手段32に対して処理の終了を通知する。この符号
読出手段31と復号化手段32と描画手段33もプロセ
ッサの処理制御機能を用いるソフトウェアで構成しても
良いし、一部又は全部をハードウェアで構成しても良
い。また符号読出手段31と描画手段33は、例えばM
H符号を用いる圧縮方式と同様のもので良く、公知の技
術で容易に実現できる。
【0050】上記のように構成された一次元伸張装置3
で、ある1個の符号単位をRL値に復元して出力する処
理を図9のフローチャートを参照して説明する。図8に
おいて、両横二重線の長方形で示す処理は定義済み処理
を示し、符号読出手段31から復号化手段32に入力す
る4ビット単位の符号入力又は復号化手段32から描画
手段33に対するRL値出力の処理を示す。記号Xは符
号読出手段31より入力される4ビットの符号単位を格
納するための一次記憶を示し、RLは復元したRL値を
格納し出力するための一時記憶を示す。J1〜J3は形式
Mの符号の開始記号(定数)、C1〜C5はは図4,図5
の各符号の定数、uは複数設けた形式Mの符号の各々の
値域に応じた定数を格納するための一時記憶、hは形式
Lの符号の数値断片の連接を行う際のビット位置(左シ
フト量)を格納するための一時記憶を示す。
【0051】符号読出手段31から復号化手段32にあ
る1個の符号単位が入力すると(ステップS31)、復
号化手段32は符号単位を入力した一時記憶Xの数値が
定数C2未満であるか否を判断し(ステップS32)、
一時記憶Xの数値が定数C2未満である場合には、一時
記憶Xの数値に定数C1を加えた値をRL値として出力
する処理を行い処理を終了する(ステップS33)。図
4に示した符号形式の場合、定数C1=0であるので、
この場合には一時記憶Xの数値をRL値として出力する
処理を行う。なお、RL値はある所定のビット幅を有す
るものであり、一時記憶Xの数値は4ビットの数値であ
るので、Xの上位に「0」が補われる符号無し拡張が行
われる。
【0052】一時記憶Xの数値が定数C2以上であると
きは、一時記憶Xの数値が所定の定数である開始記号J
1と一致かどうかを判断し(ステップS34)、一時記
憶Xの数値が開始記号J1と一致しているときは、一時
記憶uに定数C2の値を代入する(ステップS35)。
一時記憶Xの数値が開始記号J1と一致していないとき
は、一時記憶Xの数値が開始記号J2と一致かどうかを
判断し(ステップS36)、一時記憶Xの数値が開始記
号J2と一致しているときは、一時記憶uに定数C3の値
を代入する(ステップS37)。一時記憶Xの数値が開
始記号J2と一致していないときは、一時記憶Xの数値
が開始記号J3と一致かどうかを判断し(ステップS3
8)、一時記憶Xの数値が開始記号J3と一致している
ときは、一時記憶uに定数C4の値を代入する(ステッ
プS39)。次に一時記憶Xに新たな符号単位の数値を
入力し、一時記憶Xの新たな符号単位の数値と一時記憶
uに格納された値との加算値をRL値として出力する処
理をして処理を終了する(ステップS40,S41)。
このようにして各々のRL値の値域に応じた形式Mの符
号を復号することができる。この場合もRL値はある所
定のビット幅を有するものであり、一時記憶Xの数値X
は4ビットの数値であるので、計算及び代入に際しては
一時記憶Xの上位に「0」が補われる符号無し拡張が行
われる。
【0053】また、一時記憶Xの数値が定数C2以上で
あり、J1、J2、J3のいずれにも一致しない場合に
は、まず、RLとhとを「0」なる値に初期化する処理
を行い(ステップS42)、次に一時記憶Xに新たな符
号単位を入力する処理と、RLをRL値とこの符号単位
の下位3ビットすなわち数値「7」とのビット毎の論理
積をh分右にシフトした値とのビット毎の論理和演算の
結果値で更新する処理とを行い(ステップS43,S4
4)、一時記憶Xの数値が「8」未満の数値である継続
フラグの場合には、hを「h+3」なる値で更新する処
理を行った後(ステップS45,S46)、上記新たな
符号単位を入力する処理以降の各処理を繰り返し、一時
記憶Xの数値が「8」以上の数値である最終フラグの場
合には(ステップS45)、その時点でのRLの値に定
数C5の値を加えた値をRL値として出力する処理を行
って処理を終了する(ステップS47)。この処理によ
り形式Lの符号が復号される。
【0054】なお、RL値の「0」が数値Zに変換され
て形式Lの符号として符号化されているときに、この符
号を復号する場合には、ステップS47の(RL+
5)の演算結果が桁あふれにより「0」なる結果を生
じて復号化が行われる。例えば、32ビット幅の演算器
を用いて処理が行われる場合には、「0」なる数値を変
換するZは「−C5」で、図5の符号形式では「−6
1」、16進数表記では「FFFFFFC3」である。
この数値が符号化そして復元された時点で「C5」、図
5の符号形式では「61」を加算することで「0」なる
結果が導かれる。このようにして「0」なる数値を数値
Zとして識別可能であるが、このような数値を使用しな
い場合には、上記(RL+C5)の処理時点で「0」な
るRL値を出力すれば良い。
【0055】上記実施例は、入力されたある1個の符号
をRL値に復号化する場合について説明したが、順次入
力される符号列に対して個々の符号単位に対して同様の
処理を行うことで所望のRL値列を復元することができ
る。
【0056】また、上記各実施例は2値画像データの圧
縮伸張について説明したが、基本的に「0」以上の整数
である数値を符号化あるいは復号化するものであるの
で、例えば、多値データの連続数を表現する符号化方式
等に応用するもできる。
【0057】
【発明の効果】この発明は以上説明したように、個々の
符号を固定長Wまたはその倍数長である複数形式により
構成し、ビット幅Wの最も短い形式Sの符号は2(W-1)
より大きな値とすることができるT個の値を表現するこ
とができるから、符号長エリアを設けるような場合より
圧縮率の優れた符号化を実現することができる。
【0058】また、さらに大きなRL値に対して1個の
符号形式で対応できる形式Lの符号を設けることによ
り、形式Mの符号を多数設ける必要がなく、その結果、
定数Tの値を大きく設定でき、特に圧縮対象とする元デ
ータが比較的大きな容量である場合にも、符号長エリア
を設けるような場合より圧縮率の優れた符号化を実現す
ることができる。
【0059】また、形式Sに固有の定数C=0で、形式
Sの符号は0≦RL≦(T−1)なるRL値に対応し、
形式Mと形式Lの符号は対応するRL数値の昇順に並べ
て、形式Mと形式Lの固有の定数Cは直前の符号が対応
するRL値の最大値に「1」を加えることにより、より
小さなRL値がより短い符号に符号化され、且つ、各符
号が対応するRL値には重視が無いので、一般的な画像
データ等に対して圧縮率の優れた符号化を実現すること
ができる。
【0060】さらに、発生頻度が極端に低いRL値の
「0」を最大長の符号に対応づけることにより、相対的
に短い符号が対応するRL値の値域が上昇しているの
で、一般的な画像データ等に対して、より圧縮率の優れ
た符号化を実現できる。
【0061】また、符号長を2nビットまたはその倍数
長とすることにより、圧縮器や伸長器等のハードウェア
を簡素に構成することができる。
【0062】さらに、第1の符号である形式Sの符号の
定数T=12とし、第2,第3,第4の符号を数値部F
が4ビット幅の形式Mの符号とし、第5の符号を形式L
の符号として、第1から第5の符号は対応するRL値領
域が順次大きくなるように配置し、第2から第5の符号
の開始記号J1〜J3及びKには「12」〜「15」の値
を適宜に割り当てて、プリンタの印刷データに対する評
価を通して最適化された符号群を定義することにより、
プリンタのフレームバッファの圧縮に用いるに適した符
号化を実現することができる。
【0063】また、第1の符号である形式Sの符号の定
数T=12とし、第2,第3,第4の符号を数値部Fが
4ビット幅の形式Mの符号とし、第5の符号を形式Lの
符号し、第1から第5の符号は「0」値の場合を除き対
応するRL値領域が順次大きくなるように配置し、第2
から第5の符号の開始記号J1〜J3及びKには「12」
〜「15」の値が適宜に割り当てて、プリンタの印刷デ
ータに対する評価を通して最適化された符号群を定義し
ているから、プリンタのフレームバッファの圧縮に用い
るに最適の符号化を実現することができる。
【0064】さらに、より短いRL値に関する符号化処
理制御がより短い段階を含むよう構成することにより、
一般的な画像データ等に対してより高速に符号化するこ
とができる。
【0065】また、符号化処理の前に、発生頻度が極端
に低いRL値の「0」を所定の値Zに変換することによ
り、より高速に符号化することができる。
【0066】さらに、より短いRL値に関する復号化処
理制御をより短い段階を含むよう構成することにより、
一般的な画像データ等に対して高速に復号化することが
できる。
【図面の簡単な説明】
【図1】この発明の実施例の一次元圧縮装置の構成を示
すブロック図である。
【図2】形式Sの符号と形式Mの符号の構成図である。
【図3】形式Lの符号の構成図である。
【図4】形式Sの符号と3個の形式Mの符号と形式Lの
符号の構成図である。
【図5】形式Sの符号と3個の形式Mの符号と形式Lの
符号の他の構成図である。
【図6】入力バッファと復号化バッファの構成を示す説
明図である。
【図7】符号化処理を示すフローチャートである。
【図8】一次元伸張装置の構成図である。
【図9】復号化処理を示すフローチャートである。
【符号の説明】
1 一次元圧縮装置 2 記憶手段 3 一次元伸張装置 11 RL測定手段 12 符号化手段 13 符号格納手段 31 符号読出手段 32 復号化手段 33 描画手段

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 画像データ等を走査して得られるランレ
    ングス(以下、RLという)の数値列を入力し、入力さ
    れた個々のRL値を固定長W又はその倍数長の符号に変
    換して出力するランレングス符号化方法であって、 第1の形式Sの符号と第2の形式Mの符号を有し、第1
    の形式Sの符号は、固定長Wを有し、その数値Eは所定
    の定数T未満であり、数値Eに所定の定数CSを加えた
    値がRL値に対応し、第2の形式Mの符号は、形式Sの
    定数T以上である数値の1個である開始記号Jと固定長
    W又はその倍数長の数値部Fとで構成され、数値部Fの
    数値に所定の定数CMを加えた値がRL値に対応し、 「0」以上の有限の整数であるRL値を、上記形式Sの
    符号と単一の形式Mの符号又は複数の形式Mの符号とで
    構成される符号群に符号化することを特徴とするランレ
    ングス符号化方法。
  2. 【請求項2】 画像データ等を走査して得られるRLの
    数値列を入力し、入力された個々のRL値を固定長W又
    はその倍数長の符号に変換して出力するランレングス符
    号化方法であって、 第1の形式Sの符号と第2の形式Mの符号と第3の形式
    Lの符号を有し、第1の形式Sの符号は、固定長Wを有
    し、その数値Eは所定の定数T未満であり、数値Eに所
    定の定数CSを加えた値がRL値に対応し、第2の形式
    Mの符号は、形式Sの定数T以上である数値の1個であ
    る開始記号Jと固定長W又はその倍数長の数値部Fとで
    構成され、数値部Fの数値に所定の定数CMを加えた値
    がRL値に対応し、第3の形式Lの符号は、形式Sの定
    数T以上である数値の1個である開始記号Kと固定長W
    単位で可変数の数値部とで構成され、数値部の構成単位
    は数値断片と同形式情報が継続するか否かを示す1ビッ
    トのフラグとで構成され、フラグにより停止されるまで
    後続の数値断片をつなぎ合わせた数値に固有の定数CL
    を加えた値がRL値に対応し、 「0」以上の有限の整数であるRL値を形式Sの符号と
    「0」を含む適宜数の形式Mの符号及び形式Lの符号と
    で構成される符号群に符号化することを特徴とするラン
    レングス符号化方法。
  3. 【請求項3】 上記形式Sに固有の定数C=0で、形式
    Sの符号は0≦RL≦(T−1)なるRL値に対応し、
    形式Mと形式Lの符号は対応するRL数値の昇順に並べ
    て、形式Mと形式Lの固有の定数Cは直前の符号が対応
    するRL値の最大値に「1」を加えたものである請求項
    1又は2記載のランレングス符号化方法。
  4. 【請求項4】 上記形式Sに固有の定数C=1で、形式
    Sの符号は1≦RL≦TなるRL値に対応し、形式Mと
    形式Lの符号は対応するRL数値の昇順に並べて、形式
    Mと形式Lの固有の定数Cは直前の符号が対応するRL
    値の最大値に「1」を加えたものであり、RL値の
    「0」は、最大のRL値を表現する形式Lの符号におい
    て有効なRL値として存在しない数値Zとして、好まし
    くは、数値Zは物理的に有限な加算器を用いて行う数値
    部に所定の定数Cを加える演算の結果が桁あふれにより
    「0」なる結果を生じる数値で表現されるものである請
    求項1又は2記載のランレングス符号化方法。
  5. 【請求項5】 上記符号単位のビット幅である固定長W
    は2n(nは自然数)ビット、好ましくは4ビットであ
    る請求項1,2,3又は4記載のランレングス符号化方
    法。
  6. 【請求項6】 上記形式Sの符号の定数T=12とした
    第1の符号であり、第2,第3,第4の符号は数値部F
    が4ビット幅の形式Mの符号であり、第5の符号は形式
    Lの符号であり、第1から第5の符号は対応するRL値
    領域が順次大きくなるように配置され、第2から第5の
    符号の開始記号J1〜J3とKには「12」〜「15」の
    値を割り当てた請求項3記載のランレングス符号化方
    法。
  7. 【請求項7】 上記形式Sの符号の定数T=12とした
    第1の符号であり、第2,第3,第4の符号は、数値部
    Fが4ビット幅の形式Mの符号であり、第5の符号は形
    式Lの符号であり、第1から第5の符号は、「0」値の
    場合を除き対応するRL値領域が順次大きくなるように
    配置され、第2から第5の符号の開始記号J1〜J3及び
    Kには「12」〜「15」の値が適宜に割り当てられた
    請求項4記載のランレングス符号化方法。
  8. 【請求項8】 上記RL値が1個入力された時点で、入
    力されたRL値が第2の符号の定数C2未満であるとき
    に、RL値の下位4ビットを形式Sの符号として出力
    し、RL値が第2の符号の定数C2以上で第3の符号の
    定数C3未満であるときに、第2の符号の開始記号J1
    (RL−C2)の下位4ビットとを形式Mの符号として
    出力し、RL値が第3の符号の定数C3以上で第4の符
    号の定数C4 未満であるときに、第3の符号の開始記号
    2と(RL−C3)の下位4ビットとを形式Mの符号と
    して出力し、RL値が第4の符号の定数C4以上で第5
    の符号の定数C5未満であるときに、第4の符号の開始
    記号J3と(RL−C4)の下位4ビットとを形式Mの符
    号として出力し、RL値が第5の符号の定数C5以上の
    ときに形式Lの開始記号Kを出力し、(RL−C5)を
    数値Gとし、その時点の数値Gの値と「8」とを比較
    し、数値Gが「8」以上であれば、数値Gの下位3ビッ
    トの上位に「0」を補い4ビットの情報Fとして抽出し
    て符号の数値部として出力し、数値Gを3ビット右にシ
    フトして数値Gが「8」未満となるまで繰り返し、数値
    Gの値が「8」未満となった時点で数値Gの下位3ビッ
    トに所定の停止フラグを付加した値を符号として出力す
    る請求項6記載のランレングス符号化方法。
  9. 【請求項9】 上記RL値が入力された時点である1個
    が入力された時点で、入力されたRL値が「0」である
    場合にはRL値を数値Zに変更し、入力されたRL値が
    第2の符号の定数C2未満であるときに、RL値の下位
    4ビットを形式Sの符号として出力し、RL値が第2の
    符号の定数C2以上で第3の符号の定数C3未満であると
    きに、第2の符号の開始記号J1と(RL−C2)の下位
    4ビットとを形式Mの符号として出力し、RL値が第3
    の符号の定数C3以上で第4の符号の定数C4未満である
    ときに、第3の符号の開始記号J2と(RL−C3)の下
    位4ビットとを形式Mの符号として出力し、RL値が第
    4の符号の定数C4 以上で第5の符号の定数C5未満であ
    るときに、第4の符号の開始記号J3と(RL−C4)の
    下位4ビットとを形式Mの符号として出力し、RL値が
    第5の符号の定数C5以上のときに形式Lの開始記号K
    を出力し、(RL−C5)を数値Gとし、その時点の数
    値Gの値と「8」とを比較し、数値Gが「8」以上であ
    れば、数値Gの下位3ビットの上位に「0」を補い4ビ
    ットの情報Fとして抽出して符号の数値部として出力
    し、数値Gを3ビット右にシフトして数値Gが「8」未
    満となるまで繰り返し、数値Gの値が「8」未満となっ
    た時点で数値Gの下位3ビットに所定の停止フラグを付
    加した値を符号として出力する請求項7記載のランレン
    グス符号化方法。
  10. 【請求項10】 請求項8又は請求項9記載のランレン
    グス符号化方法により生成された符号列データを入力
    し、入力した符号列データを順次RL値に復元して出力
    するランレングス復号化方法であって、 符号列を4ビット幅の符号単位として入力し、入力した
    第1番目の符号単位の数値が第2の符号の定数C2未満
    であるときに、第1番目の符号単位の数値に第1の符号
    の定数C1を加えた値をRL値として出力し、 第1番目の符号単位の数値が第2の符号の定数C2以上
    で第2の符号の開始信号J1と一致したときに、第2番
    目の符号単位を読み込み、第2番目の符号単位の数値に
    第2の符号の定数C2を加えた値をRL値として出力
    し、 第1番目の符号単位の数値が第2の符号の開始信号J1
    と一致しなく第3の符号の開始信号J2と一致したとき
    に、第2番目の符号単位を読み込み、第2番目の符号単
    位の数値に第3の符号の定数C3を加えた値をRL値と
    して出力し、 第1番目の符号単位の数値が第3の符号の開始信号J2
    と一致しなく第4の符号の開始信号J3と一致したとき
    に、第2番目の符号単位を読み込み、第2番目の符号単
    位の数値に第4の符号の定数C4を加えた値をRL値と
    して出力し、 第1番目の符号単位の数値が第4の符号の開始信号J3
    と一致しないときに、復元したRL値を格納し出力する
    ための一時記憶RLと変数hとを「0」に初期化し、新
    たな符号単位を入力し、RLをRL値と新たな符号単位
    の下位3ビットを変数h分右にシフトした値とのビット
    毎の論理和演算の結果値で更新し、新たな符号単位が
    「8」未満の数値であるときに、変数hを「h+3」で
    更新し、新たな符号単位を入力する段階以降を繰り返
    し、新たな符号単位が「8」以上の数値になったとき
    に、その時点でのRLの値に第5の符号の定数C5を加
    えた値をRLとして出力することを特徴とするランレン
    グス復号化方法。
JP12434898A 1998-05-07 1998-05-07 ランレングス符号化方法及び圧縮装置 Expired - Lifetime JP3676078B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP12434898A JP3676078B2 (ja) 1998-05-07 1998-05-07 ランレングス符号化方法及び圧縮装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12434898A JP3676078B2 (ja) 1998-05-07 1998-05-07 ランレングス符号化方法及び圧縮装置

Publications (2)

Publication Number Publication Date
JPH11317673A true JPH11317673A (ja) 1999-11-16
JP3676078B2 JP3676078B2 (ja) 2005-07-27

Family

ID=14883157

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12434898A Expired - Lifetime JP3676078B2 (ja) 1998-05-07 1998-05-07 ランレングス符号化方法及び圧縮装置

Country Status (1)

Country Link
JP (1) JP3676078B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011114525A (ja) * 2009-11-26 2011-06-09 Dainippon Printing Co Ltd 数値データ列の符号化/復号化の方法および装置
JP2011250436A (ja) * 2003-07-01 2011-12-08 Thomson Licensing ビット・マップ・データのランレングス符号化方法、復号方法、およびディスク
WO2013140530A1 (ja) * 2012-03-19 2013-09-26 富士通株式会社 プログラム、圧縮データ生成方法、伸張方法、情報処理装置、および記録媒体
JP2013541295A (ja) * 2010-09-30 2013-11-07 マイクロソフト コーポレーション 画像圧縮のためのエントロピーコーダー

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6629165B2 (ja) 2016-10-07 2020-01-15 株式会社東芝 データ圧縮装置、及び、データ伸張装置、並びに、データ圧縮伸張装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011250436A (ja) * 2003-07-01 2011-12-08 Thomson Licensing ビット・マップ・データのランレングス符号化方法、復号方法、およびディスク
JP2011114525A (ja) * 2009-11-26 2011-06-09 Dainippon Printing Co Ltd 数値データ列の符号化/復号化の方法および装置
JP2013541295A (ja) * 2010-09-30 2013-11-07 マイクロソフト コーポレーション 画像圧縮のためのエントロピーコーダー
WO2013140530A1 (ja) * 2012-03-19 2013-09-26 富士通株式会社 プログラム、圧縮データ生成方法、伸張方法、情報処理装置、および記録媒体
US9094041B2 (en) 2012-03-19 2015-07-28 Fujitsu Limited Encoding method, information processing apparatus, and recording medium

Also Published As

Publication number Publication date
JP3676078B2 (ja) 2005-07-27

Similar Documents

Publication Publication Date Title
RU2125765C1 (ru) Способ и устройство сжатия символов, стохастический кодер (варианты)
US5032838A (en) Variable length code parallel decoding apparatus and method
EP0412047A1 (en) Method and system for arithmetic coding and decoding
EP0776569B1 (en) Method and system for encoding and decoding image data
US6614939B1 (en) Image compression apparatus and decoding apparatus suited to lossless image compression
US5177622A (en) Method and apparatus for detecting run length of two successive pixels and subjecting run length to universal coding
JPH08317227A (ja) 復号化装置
JP3872217B2 (ja) ディザ画像の2値表現処理方法、ディザ画像の圧縮2値表現圧縮解除方法、及びディザ画像の圧縮及び圧縮解除システム
JP3676078B2 (ja) ランレングス符号化方法及び圧縮装置
US5198898A (en) Data compressing system for compressing serial image data with color information
JP4009808B2 (ja) 画像処理装置
JP3901514B2 (ja) 画像圧縮方法、その復元方法及びそのプログラム
US6947606B2 (en) Skim encoding method for compression of a two dimensional array of data
JPH09121170A (ja) デジタル画像信号の圧縮・復元を行う方法及び装置
JPS6282723A (ja) 画像符号化方法
JPH05151349A (ja) 画像データ圧縮方法および符号化回路
JP4008428B2 (ja) 画像圧縮方法
JPH0723238A (ja) 画像データ圧縮及び復元装置
JP3321226B2 (ja) 符号化復号化方法
JP2615215B2 (ja) 画像データ圧縮方式
JPH01302917A (ja) データ圧縮方式
JPH04145768A (ja) 画像データ圧縮及び復元方式
JPH07255053A (ja) ジグザグスキャン回路
JPH03236680A (ja) 画像データ圧縮方式
JPH06178130A (ja) データ圧縮装置及びデータ復元装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050201

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050404

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050427

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090513

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100513

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110513

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120513

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120513

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130513

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130513

Year of fee payment: 8

EXPY Cancellation because of completion of term