JP3181996B2 - 画像データ圧縮/復元方法 - Google Patents

画像データ圧縮/復元方法

Info

Publication number
JP3181996B2
JP3181996B2 JP24042392A JP24042392A JP3181996B2 JP 3181996 B2 JP3181996 B2 JP 3181996B2 JP 24042392 A JP24042392 A JP 24042392A JP 24042392 A JP24042392 A JP 24042392A JP 3181996 B2 JP3181996 B2 JP 3181996B2
Authority
JP
Japan
Prior art keywords
data
bit
pixel
unit
predetermined
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 - Fee Related
Application number
JP24042392A
Other languages
English (en)
Other versions
JPH0690362A (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
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP24042392A priority Critical patent/JP3181996B2/ja
Publication of JPH0690362A publication Critical patent/JPH0690362A/ja
Application granted granted Critical
Publication of JP3181996B2 publication Critical patent/JP3181996B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は画像データ圧縮/復元方
法に係わり、特にユニバーサル符号などデータを所定ビ
ット長単位で扱う場合でも、単位データ内での冗長性の
取り込みを可能とした画像データ圧縮方法、画像データ
復元方法、画像データ圧縮/復元方法に関する。
【0002】近年、OA(オフィスオートメーション)
の発展に伴い、ファクシミリ通信、光ディスクファイル
システムなどで、文字コード情報や画像情報が大量に扱
われるようになってきており、伝送や蓄積を効率的に行
うためにデータの圧縮が必須となっている。文字コード
の効率的な圧縮方式には、Ziv-Lempel符号に代表される
ユニバーサル符号が有り、画像情報の効率的な圧縮方式
には、MH方式(Modified Huffman Coding)、MMR
(Modified Modified READ)方式、予測符号化方式が有
る。ユニバーサル符号は、情報源の統計的な性質を予め
仮定しないため、種々のタイプ(文字コード、オブジェ
クトコードなど)のデータに適用可能であるが、文字コ
ード情報と画像情報は統計的性質が大きく異なるため、
ユニバーサル符号化方式をそのまま画像情報に適用して
も1/2程度の圧縮率しか得られず、MH方式、MMR
方式等の画像情報用の圧縮方式に較べて、非常に低いも
のとなっている。このため、従来は、文字コード情報と
画像情報を異なる方式で圧縮していたが、1つのシステ
ムで両者を扱う場合、ハード上の負担が大きくなってい
た。本発明はこのような状況に鑑み、画像データの持つ
冗長性を取り除き、効率良く圧縮できるようにするもの
である。
【0003】
【従来の技術】近年、OAで扱う文書や画像の情報量が
急速に増加してきており、ファクシミリ通信、光ディス
クファイルシステムなどで、伝送や蓄積を効率的に行う
ため、データ中の冗長な部分を除くデータ圧縮が不可欠
となっている。文字情報を対象とした効率の良い圧縮方
式として、ジブ−レンペル(Ziv-Lempel)符号に代表さ
れるユニバーサル符号が有る(宗像「Ziv-Lempelのデー
タ圧縮法」、情報処理、Vol.26,No.1,1985年参照)。こ
のZiv-Lempel符号では、ユニバーサル型と、増分分
解型(Incremental parsing)の2つのアルゴリズムが提
案されており、ユニバーサル型アルゴリズムを用いた実
用的な方法として、LZSS符号(T.C. Bell,"Better
OMP/L Text Compression",IEEE Trans. on Commun., Vo
l. COM-34, No.12, Dec.1986)があり、又、増分分解型
アルゴリズムを用いた実用的な方法として、LZW(Le
mpel-Ziv-Welch) 符号がある(T.A. Welch,"A Technique
for High-Performance Data Compression", Computer,
June 1984) 。
【0004】LZSS符号 LZSS符号化においては、既に出現して符号化済の入
力データを記憶部(Pバッファ)に記憶すると共に、符
号化済データの任意の位置から始まる部分列データより
入力データと最大長に一致する部分データ列を探し、該
一致部分データ列の先頭文字の記憶部(Pバッファ)に
おけるアドレスと一致長とを示す情報により、入力デー
タ列を符号化する。このLZSS符号化においては、演
算量は多いが、高圧縮率が得られる。
【0005】図21はかかるLZSS符号化の説明図で
あり、1はQバッファ、2はPバッファである。入力文
字コードが1バイトで表現されるものとして、Qバッフ
ァ1は例えば4ビットのインデックス情報(アドレス)
を持ち、これから符号化する16(=24 )個の文字列
を格納するもの、Pバッファ2は例えば12ビットのイ
ンデックス情報(アドレス)を持ち、最新に符号化され
た4096(=212)個の文字列を格納するものであ
る。
【0006】図示しないユニバーサル符号化部は、Qバ
ッファ1の先頭からの文字列とPバッファ2の任意の位
置から始まる文字列とを照合して最大長一致部分文字列
3を求め、「該部分文字列のPバッファにおける一致開
始位置p1 」と「部分文字列の一致長q1 」とを用いて
Qバッファの部分文字列3´を符号化して記憶する。し
かる後、ユニバーサル符号化部はQバッファ1内の符号
化した文字列3´をPバッファ2に移すと共に該文字列
数分の最も古い符号化済み文字列をPバッファ2から捨
て、かつ符号化した文字列3´の文字数分の新たな文字
列をQバッファ1内に入力し、以降、前述の符号化処理
を継続する。尚、最大一致長が1の場合には、符号化せ
ず、Qバッファ1の先頭文字データ(生データという)
をそのまま記憶する。これは、符号化データとして2バ
イト必要であるが、生データは1バイトで済むからであ
る。
【0007】そして、8個の符号化データ又は生データ
が記憶されれば、図21(b)に示すように、符号化デ
ータと生データの識別を表示するための8個のフラグビ
ットより成る識別データを先頭に附加し(”0”は符号
データ、”1”は生データ)、この一組のデータを順次
出力する。
【0008】LZW符号 一方、LZW符号化においては、書換可能な辞書を設
け、入力文字列を相異なる文字列に分け、この文字列を
出現した順に番号を付けて辞書に登録すると共に、現在
入力している文字列を辞書に登録してある最長一致文字
列の辞書番号だけで表して符号化する。このLZW符号
化によれば、圧縮率はLZSS符号化より劣るが、シン
プルで、計算も容易で、高速処理ができることから記憶
装置のファイル圧縮、データ伝送などで使われるように
なっている。
【0009】図22はLZW符号化の説明図、図23は
辞書構成の説明図、図24はLZW符号化処理の流れ図
である。なお、説明を簡単にするために、a,b,c3
文字からなる文字列を対象にするものとする。予め、全
文字につき一文字からなる文字列(a,b,c)に登録
番号を付して辞書に初期登録すると共に、辞書アドレス
Nを文字種数M+1とする(図22のステップ10
1)。
【0010】かかる状態で、最初の文字Kを入力し、該
文字の登録番号を参照番号ωとし、これを語頭文字列
(prefix string)とする(ステップ102)。次いで、
入力データの次の文字Kを読み込み(ステップ10
3)、ステップ102で求めた語頭文字列ωにステップ
103で読み込んだ文字Kを加えた文字列(ωK)が現
在の辞書にあるか否かを検索する(ステップ104)。
【0011】文字列(ωK)が辞書に存在すれば、文字
列(ωK)をωに置き換え(ステップ105)、しかる
後、入力データが終了したか判断し(ステップ10
6)、データが終了していなければステップ103に戻
り以降の処理を繰り返し、文字列(ωK)が辞書から探
せなくなるまで最大一致長文字列の検索を続ける。一
方、ステップ106において、入力データが終了してい
れば、参照番号ωを符号語 code(ω)として出力して
(ステップ107)、符号化処理を終了する。
【0012】最長一致文字列の検索が続行して、ステッ
プ104において、文字列(ωK)が辞書に存在しなく
なれば、参照番号ωを符号語code(ω) として出力し、
又、文字列(ωK)に新たな登録番号Nを附加して辞書
に登録し、更に、ステップ103で読み込んだ文字Kの
登録番号を参照番号ωに書き換えると共に、辞書アドレ
スNをインクリメントする(ステップ108)。次い
で、ステップ106により入力データが終了したか判断
し、判断結果に応じて以降の処理を繰り返す。
【0013】図22及び図23を参照してLZW符号化
を具体的に説明すると、以下のようになる。即ち、図2
2の入力データを左から右に向けて1文字ずつ読み込
む。最初の文字aを読み込んだ時、辞書にはaの他に一
致する文字列はないから、aの登録番号「1」(参照番
号ω=1)を符号語(code(ω))として出力する。そ
して、拡張した文字列abに登録番号4を付けて辞書に
登録する。実際の登録は文字列「1b」の形となる。続
いて、2番目の文字bが入力文字列の先頭になる。辞書
にはbの他に一致する文字列がないので、bの登録番号
(参照番号)2を符号語として出力し、拡張した文字列
baを実際には2aの形で登録番号5を付けて辞書に登
録する。
【0014】以上により、3番目の文字aが入力文字列
の先頭になる。辞書には先頭文字aが存在するから、該
文字の登録番号1に次の文字bを付した文字列「1b」
が存在するか調べる。文字列「1b」が存在するから、
該文字列の登録番号4に次の文字cを付した文字列「4
c」が存在するか調べる。文字列「4c」は存在しない
から、最長一致文字列「1b」の登録番号「4」を符号
語として出力し、拡張した文字列「4c」に登録番号6
を付して辞書登録し、以降同様に符号化と辞書登録を繰
り返して全入力文字のLZW符号化処理を実行する。
【0015】因みに、図25はLZW復号化処理の流れ
図であり、復号化処理では、符号化の逆の操作が行われ
る。即ち、復号化に際しては、符号化と同様に、全文字
につき一文字からなる文字列(a,b,c)に登録番号
を付して辞書に初期登録すると共に、辞書アドレスNを
文字種数M+1とする(図25のステップ201)。
ついで、最初の符号CODEを読み込み、該符号CODEをOLDc
ode とする。又、最初の符号は既に辞書に登録された一
文字の登録番号のいずれかに該当することから、入力符
号CODE(=登録番号)が示す文字Kを出力する。又、出
力した文字Kは後の例外処理のためにcharとして設定す
る(以上、ステップ202)。
【0016】しかる後、次の符号CODEを読み込んでNEWc
ode としてセットすると共に(ステップ203)、符号
CODE(=登録番号)が辞書に定義(登録)されているか
否かをチェックする(ステップ204)。通常、入力し
た符号CODE(=登録番号)は前回までの処理で辞書に登
録されているから、ステップ204において「NO」と
なるから、次に、符号CODE(=登録番号)が指示する辞
書の登録文字列が(ωK)か判断する。即ち、符号CODE
が指示する辞書の登録文字列が( ωK)のように、参照
番号ωと文字Kの結合文字列であるか判断する(ステッ
プ205)。
【0017】参照番号ωと文字Kの結合文字列であれ
ば、文字Kを一時的にスタックし、参照番号ωの符号語
code(ω)(実際にはcode(ω)=ω)を新たなCODEと
し、かつ、文字数Cを1だけカウントアップし(ステッ
プ206)、ステップ205に戻る。以降、ステップ2
05、206の処理をCODEが示す登録文字列が一文字に
至まで再帰的に繰り返す。
【0018】ステップ205において、CODEが示す文字
列が一文字の場合には、即ち、符号CODEが指示する辞書
の登録文字列が(K)の場合には、Kを出力し、しかる
後、スタックしたC個の文字列をLIFO(Last In Fa
st Out)形式でポップアップして出力する。又、前回の
復号化において使用した符号OLDcode に、今回復号した
文字列の先頭文字Kを附加した文字列(OLDcode ,K)
を登録番号Nを付して辞書に登録し、Nをインクリメン
トする(N+1→N)。更に、復号文字列の先頭文字K
をcharとし、かつ、NEWcode をOLDcode とする(以上、
ステップ207)。
【0019】以降、符号入力が終了したか判断し(ステ
ップ208)、終了していなければステップ203に戻
り次の符号を読み込んで復号処理を繰り返す。ところ
で、符号化処理においては、ある文字列の符号化と、該
文字列に次の先頭文字を附加した文字列の辞書登録とを
同時に行うため、次の符号化処理において直前に符号化
した文字列の符号語を使用できる。しかし、復号化処理
においては、直前に復号した文字列に、今回復号した文
字列の先頭文字列を附加した文字列を辞書登録するた
め、辞書登録が符号化処理に較べて1回遅れる。このた
め、符号化処理において、直前に符号化した文字列の符
号語を使用すると、復号化処理において、該符号語が登
録(定義)されていない場合を生じる。この場合がステ
ップ204においてCODEが定義されていない状態にな
り、「YES」となる。
【0020】例えば、図26に示すように符号化に際し
て、文字列「a・・・z」に対してOLDcode を出力する
と共に、文字列「a・・・za」をNEWcode として辞書
登録し、次の文字列「a・・・za」をNEWcode で出力
し、文字列「a・・・zab」を辞書登録する。さて、
復号側で符号語NEWcode を読み込んだ時、該符号語は復
号側で辞書登録されていないので、復号ができない。し
かし、NEWcode とOLDcode を比較すると、以下の関係NE
Wcode の文字列=OLDcode の文字列+OLDcode の文字列
の先頭文字(char) がある。このため、ステップ204
で「NO」となれば、セットされているcharをスタック
すると共に、OLDcode をCODEとみなし、かつ、OLDcode
にcharを附加した文字列をNEWcode とし(ステップ20
9)、以降、CODEを用いてステップ205以降の処理を
行う。
【0021】図27を参照して復号化処理を具体的に説
明すると以下のようになる。最初の入力符号は「1」で
あり、一文字a,b,cについては既に登録番号1,
2,3として辞書登録されているから(図23と同
様)、辞書の参照により符号「1」に一致する登録番号
の文字列aに置き換えて出力する。次に、符号「2」に
ついても同様にして文字bに置き換えて出力する。この
時、前回処理した符号と今回復号した最初の一文字bと
を組み合わせた「1b」に新たな登録番号4を附加して
辞書に登録する。
【0022】3番目の符号「4」は辞書の検索により、
「1b」から「ab」と置き換えて文字列「ab」を出
力する。同時に、前回処理した符号「2」と今回復号し
た1番目の文字aとを組み合わせた文字列「2a(=b
a)」に新たな登録番号を附加して辞書に登録する。以
下、同様に、復号処理を繰り返す。尚、図25のステッ
プ209の例外処理は、第6番目の入力符号「8」の復
号で生じる。符号「8」は復号時に辞書に定義されてお
らず、復号できない。この場合には、前回処理した符号
「5」に前回復号した文字列「ba」の最初の一文字b
を加えた文字列「5b」を求め、更に「2ab」、「b
ab」と置き換えられて出力される。そして、前回の符
号語「5」に今回復号した文字列の文字bを加えた文字
列「5b」に登録番号「8」を附加して辞書登録する。
【0023】このように、Ziv-Lempel符号は、現在の文
字コードの系列を、符号化済みの過去の系列に対する複
製として符号化するものであり、文字コードからなる文
書情報を1/2〜数分の1程度に圧縮することができ
る。Ziv-Lempel符号に代表されるユニバーサル符号は、
情報保存型のデータ圧縮方式であり、データ圧縮時に情
報源の統計的な性質を予め仮定しないため、「万能」の
名が示す通り、種々のタイプ(文字コード、オブジェク
トコードなど)のデータに適用することができる。
【0024】一方、画像情報を対象とした効率の良い圧
縮方式として、モディファイドハフマン符号方式(M
H方式;Modified Huffman Coding)、モディファイド
モディファイドリード方式(MMR;Modified Modifie
d READ(Relative Address Designate Coding))方
式、予測符号化方式が有る。MH方式 MH方式は、2値画像に対する1次元圧縮方式として国
際標準(ファクシミリ通信G3規格)となっている。こ
のMH方式は、白または黒の画素が連続する長さ(Run
Length)をハフマン符号で可変長符号化してデータ圧縮
するものであり、ハフマン符号は、符号語数を減らすた
め、64ビット以下の長さを表すターミネイティング符
号と64の倍数を表すメイクアップ符号とで構成され
る。通常の文書画像であれば、MH方式により、数分の
1に圧縮できる。
【0025】MMR方式 MMR方式は2値画像に対する2次元圧縮方式として国
際標準(ファクシミリ通信G4規格)となっている。こ
のMMR方式は、主走査方向に見ていって白から黒、又
は黒から白に変化する画素を変化画素とし、隣接する走
査線間で変化画素の表す白黒パターンの境界のずれ(変
化画素相対アドレス)が小さいという変化画素の接続関
係に着目してデータ圧縮するものである。MMR方式に
より、通常の文書画像であれば、数分の1から10数分
の1に圧縮できる。
【0026】予測符号化方式 TV会議システム、ハイビジョン放送等で実用化されて
いる。規則正しい模様の画像や平坦な画像は、1枚の画
像が有する空間的冗長度が大きく、隣接する画素間の相
関が強い。このような画像の場合、すでに符号化された
画素の値から次に符号化すべき画素の値を予測し、予測
できなかった成分だけ抽出して符号化することで、大幅
に圧縮できる。また、動きの小さい動画像においては、
相続くフレームの画像が互いに類似していて、時間的冗
長度が大きい。このような場合、前フレームとの差分を
符号化することで、圧縮可能となる。
【0027】
【発明が解決しようとする課題】ところで、MH方式、
MMR方式、予測符号化方式のいずれも画像情報用の圧
縮方式なので、文字コード情報には適用できない。シス
テムが文字コード情報と画像情報のいずれも扱うような
場合、文字コード用の圧縮方式と画像用の圧縮方式を別
個に用意するのが有利であるが、ハード的な負担が大と
なってしまう。一方、前述したユニバーサル符号は、そ
の汎用性から画像情報にも適用でき、文字コードと画像
情報のいずれもユニバーサル符号で圧縮することができ
る。但し、画像情報は文字コード情報と較べて統計的性
質が大きく異なっており、Ziv-lempel符号を適用した場
合、1/2程度の圧縮ができるだけで、MMR方式、予
測符号化方式などに較べると、圧縮率が非常に低いとい
う問題があった。これは、ユニバーサル符号はデータを
バイト単位で処理するため、バイト単位の文字コードに
適合しているものの、画像情報ではバイト単位で見たと
き、種々のパターンが均等に出現して、1バイト中のビ
ット単位の冗長性を捕らえることができないからであ
り、換言すれば、MMR方式が画像の2次元的相関を利
用してデータ圧縮するのに対し、ユニバーサル符号は時
系列で出現する文字コードを1次元的相関を利用して圧
縮するという相違が有るからである。
【0028】以上から本発明の目的は、画像データの持
つ冗長性を取り除き、効率良く圧縮できるようにした画
像データ圧縮方法、画像データ復元方法、画像データ圧
縮/復元方法を提供することである。
【0029】
【課題を解決するための手段】図1は本発明の原理説明
図である。10は2次元的に構成された原画像データを
格納する画像バッファ、12は画像バッファに格納され
た画像データを互いに隣接するn個の画素毎に分け、該
n個の画素を一括したnビット長単位のデータを逐次読
み出して出力する区分け読出部、14は前回までに区分
け読出部から入力された単位データに基づき、単位デー
タ内での所定の1又は複数の各ビット別に、該ビットの
論理値が他の所定の1又は複数のビットの論理値の組み
合わせを条件として生起する確率を求める確率計算部、
16は確率計算部の計算結果を参照して、今回、区分け
読出部から入力した単位データの所定の1又は複数の各
ビットを、該ビットの条件付論理生起確率が大のとき
「0」(又は「1」)、小のとき「1」(又は「0」)
となるように置換するビット置換部である。18はビッ
ト置換部から出力されたデータを所定ビット長単位で、
ユニバーサル符号化して圧縮する符号化部である。
【0030】
【作用】画像バッファ10に格納された画像データは、
区分け読出部12で互いに隣接するn個の画素毎に分け
られ、該n個の画素を一括したnビット長単位のデータ
として逐次読み出されて、確率計算部14とビット置換
部16に入力される。確率計算部14は、前回までに入
力された単位データに基づき、単位データ内での所定の
1又は複数の各ビット別に、該ビットの論理値が他の所
定の1又は複数のビットの論理値の組み合わせを条件と
して生起する確率を求める。ビット置換部16は、今回
入力された単位データの所定の1又は複数の各ビット
を、該ビットの条件付論理生起確率が大のとき「0」
(又は「1」)、小のとき「1」(又は「0」)となる
ように置換したのち符号化部18へ出力する。符号化部
18は、ビット置換後のデータを所定ビット長単位でユ
ニバーサル符号化して出力する。
【0031】画像データの場合、隣接する画素間に相関
があるので、区分け読出部12により画像データを互い
に隣接するn個の画素毎に分けて、nビット長の単位デ
ータとすることで、単位データ内のビット間に相関を持
たせることができる。そして、確率計算部14とビット
置換部16の共働で、区分け読出部12からの入力デー
タの内、所定のビットが「0」と「1」のいずれの論理
値であっても、条件付論理生起確率が大のビットを
「0」(又は「1」)に置き換えて、所定ビット長とし
て見たとき「0」(又は「1」)の多いパターンに偏ら
せることができ、ビット単位の冗長度を減らし、その
後、所定ビット長単位でなされる符号化で高い圧縮率を
実現することが可能となる。
【0032】圧縮符号化データを所定の方式で復号化
し、nビット長単位の復号化データとし、前回までに完
全に復元された単位データに基づき、単位データ内での
所定の1又は複数のビットについて、各ビット別に、該
ビットの論理値が他の所定の1又は複数のビットの論理
値の組み合わせを条件として生起する確率を求めておく
とともに、今回復号化された単位データの所定の1又は
複数の各ビットを、逐次、該ビットの両論理値に係る条
件付論理生起確率の大小と、当該ビットの論理値との組
み合わせに従い所定論理値に逆置換して、完全に復元し
た単位データを得るようにし、各復元単位データを2次
元的に配列し直して画像データを再現する。これによ
り、圧縮時に、画像データを互いに隣接するn個の画素
毎に分けて、nビット長の単位データとし、かつ、符号
化の前段で、単位データ内でのビット単位の冗長度を削
減するように前処理されていても、復元側では、確実に
前処理される前の単位データを復元し、かつ、画像デー
タを再現することが可能となる。
【0033】圧縮時は、2次元的構成を有する画像デー
タを、互いに隣接するn個の画素毎に分け、該n個の画
素を一括したnビット長単位のデータで入力し、前回ま
でに入力された単位データに基づき、単位データ内での
所定の1又は複数のビットについて、各ビット別に、該
ビットの論理値が他の所定の1又は複数のビットの論理
値の組み合わせを条件として生起する確率を求めておく
とともに、今回入力された単位データの所定の1又は複
数の各ビットを、該ビットの条件付論理生起確率が大か
小かに従い、互いに異なる所定論理値に置換し、しかる
後、置換されたnビット長単位のデータを所定の方式で
符号化し、圧縮を行い、復元時は、圧縮符号化データを
所定の方式で復号化し、nビット長単位の復号化データ
とし、前回までに完全に復元された単位データに基づ
き、単位データ内での所定の1又は複数のビットについ
て、各ビット別に、該ビットの論理値が他の所定の1又
は複数のビットの論理値の組み合わせを条件として生起
する確率を求めておくとともに、今回復号化された単位
データの所定の1又は複数の各ビットを、逐次、該ビッ
トの両論理値に係る条件付論理生起確率の大小と、当該
ビットの論理値との組み合わせに従い所定論理値に逆置
換して、完全に復元した単位データを得るようにし、各
復元単位データを2次元に配列し直して画像データを再
現する。これにより、圧縮時は、画像データを互いに隣
接するn個の画素毎に分けて、nビット長の単位データ
とし、かつ、符号化の前段で、単位データ内でのビット
単位の冗長度を削減するように前処理することで、高い
圧縮率を実現可能となり、又、復元側では、確実に前処
理される前の単位データを復元し、かつ、画像データを
再現することが可能となる。
【0034】2次元的構成を有する画像データを、各画
素毎に、該画素に対する周辺所定範囲内の複数個の画素
の論理値を参照して、確率的に当該画素が「1」か
「0」かを予測し、当該画素の論理値と予測結果との一
致・不一致に従い、互いに異なる所定論理値に置換し、
置換後のn個の画素毎に一括したnビット長単位のデー
タを、所定の方式により符号化し、圧縮する。画像デー
タでは、或る画素と周辺画素間での相関が高く、複数の
周辺画素の論理値から確率的に当該画素の論理値を予測
したとき、実際の論理値と一致している場合が多い。よ
って、n個の画素毎に一括したnビット長の単位データ
では、各ビットが本来、「0」と「1」のいずれの論理
値であっても、予測結果と一致するビットを「0」(又
は「1」)に置き換えることで、nビット長として見た
とき「0」(又は「1」)の多いパターンに偏らせるこ
とができ、符号化を行う前に、ビット単位の冗長度を減
らしておくことができ、その後所定ビット長単位でなさ
れる符号化で高い圧縮率を実現することが可能となる。
【0035】圧縮符号化データを所定の方式で復号化
し、nビット長単位の復号化データとし、各復号化デー
タを2次元的な画像配列に直すとともに、各画素を、逐
次、それまでに完全に復元された画素の内、所定範囲内
の画素を参照して、確率的に当該画素が「1」か「0」
か予測しながら、該予測結果と当該画素の論理値の組み
合わせに従い所定論理値に逆置換して完全に復元した画
素に戻すことで、画像データを再現する。これにより、
圧縮時に、画像データの各画素を、周辺複数個の画素か
ら確率的に予測した論理値との一致・不一致に従い互い
に異なる論理値に置換することで、ビット単位の冗長度
を削減するように前処理されていても、復元側では、確
実に置換前の画素を復元し、画像データを再現すること
が可能となる。
【0036】圧縮時、2次元的構成を有する画像データ
を、各画素毎に、該画素に対する周辺所定範囲内の複数
個の画素の論理値を参照して、確率的に当該画素が
「1」か「0」かを予測し、当該画素の論理値と予測結
果との一致・不一致に従い、互いに異なる所定論理値に
置換し、置換後のn個の画素毎に一括したnビット長単
位のデータを、所定の方式により符号化し、圧縮するよ
うにし、復元時、圧縮符号化データを所定の方式で復号
化し、nビット長単位の復号化データとし、各復号化デ
ータを2次元的な画像配列に直すとともに、各画素を、
逐次、それまでに完全に復元された画素の内、所定範囲
内の画素を参照して、確率的に当該画素が「1」か
「0」か予測しながら、該予測結果と当該画素の論理値
の組み合わせに従い所定論理値に逆置換して完全に復元
した画素に戻して、画像データを再現する。これによ
り、圧縮時は、画像データが或る画素と周辺画素間での
相関が高く、複数の周辺画素の論理値から確率的に当該
画素の論理値を予測したとき、実際の論理値と一致して
いる場合が多いことを利用して、n個の画素毎に一括し
たnビット長の単位データでは、各ビットが本来、
「0」と「1」のいずれの論理値であっても、予測値と
一致するビットを「0」(又は「1」)に置き換えるこ
とで、nビット長として見たとき「0」(又は「1」)
の多いパターンに偏らせることができ、符号化を行う前
に、ビット単位の冗長度を減らし、その後所定ビット長
単位でなされる符号化で高い圧縮率を実現することが可
能となる。又、復元時は、確実に置換前の画素を復元
し、画像データを再現することが可能となる。
【0037】
【実施例】図2は本発明の第1実施例構成図であり、図
1と同一部分には同一符号を付している。10は2次元
的に構成された原画像データ(白画素を「0」,黒画素
を「1」とする2値画像データ、図3のVT参照)を格
納する画像バッファ、12は画像バッファに格納された
画像データを互いに隣接するn個の画素毎に分け、該n
個の画素を一括したnビット長単位のデータを逐次読み
出して出力する区分け読出部である。ここでは、図3に
示す如く、n=8とし、縦方向に並んだ8ライン分の8
個の画素(PXx,y 、PXx+1,y 、PXx+2,y 、PX
x+3,y 、PXx+4,y 、PXx+5,y 、PXx+6,y 、PX
x+7,y )毎に分け、一括して、1バイト単位のデータD
i として出力するものとする。画像データの場合、隣
接する画素間に相関があるので、区分け読出部12によ
り画像データを互いに隣接するn個の画素毎に分けて、
nビット長の単位データとすることで、単位データ内の
ビット間に相関を持たせることができる。
【0038】14は区分け読出部12から前回までに入
力されたnビット長単位の全データDT1 乃至DTi-1
に基づき、単位データ内での最上位桁を除く各ビット
(2SB〜LSB)別に、該ビットの論理値が他の所定
の1又は複数のビットの論理値の組み合わせを条件とし
て生起する確率を求める確率計算部であり、具体的に
は、1バイト単位でデータが入力される毎に、単位デー
タ内での最上位桁以外の各ビットに関し、最上位桁から
該ビットの1桁上までの論理値の組み合わせを条件とす
る条件付論理生起確率を累積的に求める。また、確率計
算部14は、単位データの最上位桁(MSB)について
は、単純に論理生起確率を累積的に求める。 16は確
率計算部の計算結果を参照して、区分け読出部12から
今回入力した単位データDTi に対し、最上位桁を除く
各ビットを、該ビットに係る条件付論理生起確率が大の
とき「0」、小のとき「1」となるように置換するビッ
ト置換部である。なお、ビット置換部16は単位データ
DTi の最上位桁については、該ビットの論理値に係る
論理生起確率が大のとき「0」、小のとき「1」となる
ように置換する。18はビット置換部から出力されたデ
ータをバイト単位で、ユニバーサル符号化する符号化部
である。
【0039】確率計算部14は図4に示す2分木テーブ
ルを書き換え自在に記憶するメモリ14Aを有してお
り、1バイトデータが入力される毎に、逐次、該データ
のMSBの累積的な論理生起確率を計算するとともに、
2SB乃至LSBの累積的な条件付論理生起確率を計算
し、メモリ14Aに更新記憶する。図4において、2分
木の1段目乃至8段目は、入力1バイトデータのMSB
乃至LSBに対応している。A(1) はMSBが「1」と
なる論理生起確率、A(2) はMSBが「0」となる論理
生起確率を表している。MSBが「1」となった累積頻
度をa(1) 、「0」となった累積頻度をa(2) とする
と、 A(1) =a(1) /(a(1)+a(2) ) A(2) =a(2) /(a(1)+a(2) ) として求められる。
【0040】B(1) はMSBが「1」であったときに、
2SBが「1」となる条件付論理生起確率、B(2) はM
SBが「1」であったときに、2SBが「0」となる条
件付論理生起確率、B(3) はMSBが「0」であったと
きに、2SBが「1」となる条件付論理生起確率、B
(4) はMSBが「0」であったときに、2SBが「0」
となる条件付論理生起確率を表している。MSBが
「1」かつ2SBが「1」となった累積頻度をb(1) 、
MSBが「1」かつ2SBが「0」となった累積頻度を
b(2) 、MSBが「0」かつ2SBが「1」となった累
積頻度をb(3) 、MSBが「0」かつ2SBが「0」と
なった累積頻度をb(4) とすると、 B(1) =b(1) /a(1) B(2) =b(2) /a(1) B(3) =b(3) /a(2) B(4) =b(4) /a(2) として求められる。
【0041】C(1) はMSBが「1」、2SBが「1」
であったときに、3SBが「1」となる条件付論理生起
確率、C(2) はMSBが「1」、2SBが「1」であっ
たときに、3SBが「0」となる条件付論理生起確率、
C(3) はMSBが「1」、2SBが「0」であったとき
に、3SBが「1」となる条件付論理生起確率、C(4)
はMSBが「1」、2SBが「0」であったときに、3
SBが「0」となる条件付論理生起確率、C(5) はMS
Bが「0」、2SBが「1」であったときに、3SBが
「1」となる条件付論理生起確率、C(6) はMSBが
「0」、2SBが「1」であったときに、3SBが
「0」となる条件付論理生起確率、C(7) はMSBが
「0」、2SBが「0」であったときに、3SBが
「1」となる条件付論理生起確率、C(8) はMSBが
「0」、2SBが「0」であったときに、3SBが
「0」となる条件付論理生起確率を表している。
【0042】MSBが「1」かつ2SBが「1」かつ3
SBが「1」となった累積頻度をc(1) 、MSBが
「1」かつ2SBが「1」かつ3SBが「0」となった
累積頻度をc(2) 、MSBが「1」かつ2SBが「0」
かつ3SBが「1」となった累積頻度をc(3) 、MSB
が「1」かつ2SBが「0」かつ3SBが「0」となっ
た累積頻度をc(4) 、MSBが「0」かつ2SBが
「1」かつ3SBが「1」となった累積頻度をc(5) 、
MSBが「0」かつ2SBが「1」かつ3SBが「0」
となった累積頻度をc(6) 、MSBが「0」かつ2SB
が「0」かつ3SBが「1」となった累積頻度をc(7)
、MSBが「0」かつ2SBが「0」かつ3SBが
「0」となった累積頻度をc(8) とすると、 C(1) =c(1) /b(1) C(2) =c(2) /b(1) C(3) =c(3) /b(2) C(4) =c(4) /b(2) C(5) =c(5) /b(3) C(6) =c(6) /b(3) C(7) =c(7) /b(4) C(8) =c(8) /b(4) として求められる。
【0043】以下、同様にして、D(1) 乃至D(16)が4
SBの種々の条件付論理生起確率、E(1) 乃至E(32)が
5SBの種々の条件付論理生起確率、F(1) 乃至F(64)
が6SBの種々の条件付論理生起確率、G(1) 乃至G(1
28) が7SBの種々の条件付論理生起確率、H(1) 乃至
H(256) がLSBの種々の条件付論理生起確率を表して
おり、所定の2つの累積頻度の割り算として求められ
る。なお、確率を求める割り算の分母と分子の累積頻度
がともに0のときは、確率=零とされる。1バイトデー
タが入力される毎に、確率計算部14は2分木テーブル
の各論理生起確率と条件付論理生起確率を計算し直し、
メモリ14Aに記憶された2分木テーブルを更新する。
【0044】ビット置換部16は、1バイトデータが入
力されると、その時点で確率計算部14のメモリ14A
に記憶されている2分木テーブルを参照して、ビット置
換を行う。具体的には、最上位桁を除く各ビット別に、
該ビットの実際の論理値に係る条件付論理生起確率の方
が、該ビットの反転論理値に係る条件付論理生起確率よ
り大きいとき、当該ビットを「0」に置換し、小さいと
き「1」に置換する。当該ビットの実際の論理値に係る
条件付論理生起確率と、当該ビットの反転論理値に係る
条件付論理生起確率が等しいときは、当該ビットが
「1」である方の条件付論理生起確率が大きいとして扱
う。また、最上位桁については、該ビットの論理値に係
る論理生起確率の方が、該ビットの反転論理値に係る論
理生起確率より大きいとき、当該ビットを「0」に置換
し、小さいとき「1」に置換する。当該ビットの実際の
論理値に係る論理生起確率と、当該ビットの反転論理値
に係る論理生起確率が等しいときは、当該ビットが
「1」である方の論理生起確率が大きいとして扱う。例
えば、前回までに入力された全ての単位データ(DT1
〜DTi-1 )に基づき求めた2分木テーブルが図5
(a)の如くであり、今回の1バイト分の原入力データ
DTi が図5(b)に示す如く、「01101101」
であったならば、DTi ´=「10010000」に置
換される。
【0045】図2に戻って、20は復元側において、ユ
ニバーサル符号化データをユニバーサル復号化する復号
化部、22は前回までに完全に復元された全ての単位デ
ータDR1 乃至DRi-1 に基づき、単位データ内での最
上位桁を除く各ビット(2SB〜LSB)別に、該ビッ
トの論理値が他の所定の1又は複数のビットの論理値の
組み合わせを条件として生起する確率を求める確率計算
部であり、具体的には、1バイト単位の復元データが入
力される毎に、単位データ内での最上位桁以外の各ビッ
トに関し、最上位桁から該ビットの1桁上までの論理値
を条件とする条件付論理生起確率を累積的に求める。ま
た、確率計算部22は復元データの最上位桁(MSB)
については、単純に論理生起確率を累積的に求める。
【0046】24は確率計算部の計算結果を参照して、
復号化部で復号された単位データ内の各ビットを、逐
次、MSB側から、ビットの両論理値に係る論理生起確
率又は条件付論理生起確率の大小と、当該ビットの論理
値との組み合わせに従い所定論理値に逆置換し、完全な
復元データを出力するビット逆置換部である。ビット逆
置換部24から出力された完全な復元データは、確率計
算部22に入力される。
【0047】確率計算部22は図4と同じ2分木テーブ
ルを書き換え自在に記憶するメモリ22Aを有してお
り、圧縮側の確率計算部14と全く同様にして、完全に
復元された1バイトデータが入力される毎に、逐次、該
データのMSBの累積的な論理生起確率を計算するとと
もに、2SB乃至LSBの累積的な条件付論理生起確率
を計算し、メモリ22Aに更新記憶させる。
【0048】ビット逆置換部24は、復号化部20から
復号化された1バイトデータが入力されると、その時点
で確率計算部22のメモリ22Aに記憶されている2分
木テーブルを参照して、ビットの逆置換を行う。具体的
には、まず、MSBについて、該ビットの論理値が
「1」であるときの論理生起確率の方が、「0」である
ときの論理生起確率より大きいとき(等しい場合を含
む)、当該ビットの実際の論理値が「0」のときは
「1」,「1」のときは「0」となるように逆置換し、
当該ビットの論理値が「1」であるときの論理生起確率
の方が、「0」であるときの論理生起確率より小さいと
き、当該ビットの実際の論理値が「0」のときは
「0」,「1」のときは「1」となるように逆置換す
る。次に、2SBについて、先に逆置換したMSBの論
理値を条件として、2SBの論理値が「1」であるとき
の条件付論理生起確率の方が、「0」であるときの条件
付論理生起確率より大きいとき(等しい場合を含む)、
当該ビットの実際の論理値が「0」のときは「1」,
「1」のときは「0」となるように逆置換し、当該ビッ
トの論理値が「1」であるときの条件付論理生起確率の
方が、「0」であるときの条件付論理生起確率より小さ
いとき、当該ビットの実際の論理値が「0」のときは
「0」,「1」のときは「1」となるように逆置換す
る。
【0049】次に3SBについて、先に逆置換したMS
Bと2SBの論理値を条件として、3SBの論理値が
「1」であるときの条件付論理生起確率の方が、「0」
であるときの条件付論理生起確率より大きいとき(等し
い場合を含む)、当該ビットの実際の論理値が「0」の
ときは「1」,「1」のときは「0」となるように逆置
換し、当該ビットの論理値が「1」であるときの条件付
論理生起確率の方が、「0」であるときの条件付論理生
起確率より小さいとき、当該ビットの実際の論理値が
「0」のときは「0」,「1」のときは「1」となるよ
うに逆置換する。4SB以降についても同様に、逐次、
自身より上位桁の逆置換後の論理値の組み合わせを条件
として、当該ビットの論理値が「1」であるときの条件
付論理生起確率の方が、「0」であるときの条件付論理
生起確率より大きいとき(等しい場合を含む)、当該ビ
ットの実際の論理値が「0」のときは「1」,「1」の
ときは「0」となるように逆置換し、当該ビットの論理
値が「1」であるときの条件付論理生起確率の方が、
「0」であるときの条件付論理生起確率より小さいと
き、当該ビットの実際の論理値が「0」のときは
「0」,「1」のときは「1」となるように逆置換す
る。
【0050】例えば、前回までに完全に復元された全て
の単位データ(DR1 〜DRi-1)に基づき求めた2分
木テーブルが図6(a)の如くであり、今回の1バイト
分の復号化データDRi ´が図6(b)に示す如く、
「10010000」であったならば、最終的に「01
101101」に逆置換される。
【0051】26はビット逆置換部24から逐次入力し
た復元単位データを画像バッファに再配列して、元の画
像データを再現させるデータ再配列部、28は復元画像
を格納する画像バッファである。図7に示す如く、復元
データDR1 は画像バッファ28の第1ライン乃至第8
ラインの第0列目に書き込み、DR2 は第1ライン乃至
第8ラインの第1列目に書き込み、以下同様にして、D
m+1 は第1ライン乃至第8ラインの第m列目に書き込
み、DRm+2 は第9ライン乃至第16ラインの第0列目
に書き込み、DRm+3 は第9ライン乃至第16ラインの
第1列目に書き込みという具合にする。
【0052】図8は上記した実施例の圧縮処理を示す流
れ図、図9は圧縮時のビット置換動作の説明図、図10
は復元処理を示す流れ図、図11と図12は復元時のビ
ット逆置換動作の説明図であり、以下、これらの図に従
って説明する。圧縮処理 データの圧縮を開始するとき、最初に確率計算部14は
メモリ14Aに記憶された2分木テーブルの各論理生起
確率及び条件付論理生起確率を全て零に初期設定する
(図8のステップ101)。次に、区分け読出部12が
画像バッファ10に格納された原画像データVTを、縦
方向に8ライン分の8個の画素毎に分けながら、該8個
の画素を一括した1バイトデータDTi を逐次読み出し
て出力する(ステップ102)。最初は、第1ラインか
ら第8ラインまでにつき、第0列の8個の画素を一括し
た1バイトデータDT1 を出力し、次に、第1列の8個
の画素を一括したDT2 を出力するという具合にして、
最後の第m列まで進んでDTm+1 を出力したならば、続
いて、第9ラインから第16ラインまでにつき、第0列
より1バイトデータDTm+2 を出力し、次に第1列より
DTm+3 を出力し、以下、同様の処理を繰り返す。画像
データの場合、隣接する画素間に相関があるので、区分
け読出部12により画像データを互いに隣接するn個の
画素毎に分けて、nビット長の単位データとすること
で、単位データDTi 内のビット間に相関を持たせるこ
とができる。
【0053】単位データがバイト単位で入力される毎
に、ビット置換部16は確率計算部14と共働して、ビ
ット単位での冗長度を取り除く前処理を行って、符号化
部18へ出力する。この前処理では、単位データを1つ
入力すると、まず、ビット置換部16が確率計算部14
のメモリ14Aに記憶された2分木テーブルを参照し
て、今回入力した単位データの各ビット別に、MSBは
該MSBの実際の論理値に対応する論理生起確率が、該
MSBの反転論理値に対応する論理生起確率より大きい
とき「0」,小さいとき「1」に置換し(2つの確率が
等しいときはMSBが「1」となっている方の確率が大
きいとして扱う)、2SB乃至LSBは、各ビットの実
際の論理値に係る条件付論理値に対応する条件付論理生
起確率が、該ビットの反転論理値に係る条件付論理生起
確率より大きいとき「0」,小さいとき「1」に置換し
(2つの確率が等しいときは当該ビットが「1」となっ
ている方の確率が大きいとして扱う)、置換後の1バイ
トの単位データを符号化部18へ出力する(ステップ1
03)。予め、2分木テーブルの初期化により、MSB
乃至LSBのいずれも、「1」となっている方の確率が
大きいとされるので、最初の入力データが、DT1
(11110101)であるとすると、ビット置換後の
データは、DT1 ´=(00001010)となる。
【0054】次に、確率計算部14は、今回入力した単
位データを用いて、2分木テーブルにおける1段目の論
理生起確率と2乃至8段目の条件付論理生起確率を計算
し直し、メモリ14Aに書き換え記憶させる(ステップ
104)。具体的には、DT1 の場合、MSBが「1」
なので、a(1) =1,a(2) =0となり、 A(1) =a(1) /(a(1) +a(2) ) =1/1 A(2) =a(1) /(a(1) +a(2) ) =0/1 A(1) +A(2) =1 となる。また、MSB=「1」の下で2SB=「1」と
なっているので、b(1) =1,b(2) =0となり、 B(1) =b(1) /a(1) =1/1 B(2) =b(2) /a(1) =0/1 B(1) +B(2) =1 となる(但し、B(3) ,B(4) は零のまま)。
【0055】更に、MSB=「1」,2SB=「1」の
下で3SB=「1」となっているので、c(1) =1,c
(2) =0となり、 C(1) =c(1) /b(1) =1/1 C(2) =c(1) /b(1) =0/1 C(1) +C(2) =1 となる(但し、C(3) 乃至C(8) は零のまま)。また、
MSB=「1」,2SB=「1」,3SB=「1」の下
で4SB=「1」となっているので、d(1) =1,d
(2) =0となり、 D(1) =d(1) /c(1) =1/1 D(2) =d(2) /c(1) =0/1 D(1) +D(2) =1 となる(但し、D(3) 乃至D(16)は零のまま)。
【0056】同様にして、5SB=「0」より、e(1)
=0,e(2) =1となり、E(1)=0/1,E(2) =1
/1となる(但し、E(3) 乃至E(32)は零のまま) 。ま
た、6SB=「1」より、f(3) =1,f(4) =0とな
り、F(3) =1/1,F(4) =0/1となる(但し、F
(1) ,F(2) ,F(5) 乃至F(64)は零のまま) 。また、
7SB=「0」より、g(5) =0,g(6) =1となり、
G(5) =0/1,G(6) =1/1となる(但し、G(1)
乃至G(4) ,G(7) 乃至G(128)は零のまま) 。また、
LSB=「1」より、h(11)=1,h(12)=0となり、
H(11)=1/1,H(12)=0/1となる(但し、H(1)
乃至H(10),H(13)乃至H(256) は零のまま) 。このよ
うにして、確率計算を終えたならば、メモリ14Aの2
分木テーブルを今回の計算結果で書き換えて更新する。
【0057】一方、符号化部18はビット置換された単
位データTD1 ´を入力すると、ユニバーサル符号化し
て圧縮し、符号化データを出力する(ステップ10
5)。次に、区分け読出部12が2番目の単位データを
出力すると(ステップ106でNO、102)、まず、
ビット置換部16が確率計算部14のメモリ14Aに記
憶された2分木テーブル(前回までに入力した単位デー
タに基づき、最新のテーブルとされている)を参照し
て、今回入力した単位データの各ビット別に、所定のビ
ット置換を行い、置換後の1バイトの単位データを符号
化部18へ出力する(ステップ103)。2番目の入力
データがDT2 =(11110010)であるとする
と、MSBの論理生起確率,2SB乃至4SB,6SB
乃至LSBについての条件付論理生起確率は「1」の方
が大、5SBの条件付論理生起確率は「0」の方が大と
なっているので、ビット置換後のデータDT2 ´=(0
0000101)となる(図9参照)。
【0058】次に、確率計算部14は、今回の入力デー
タを用いて、2分木テーブルにおける1段目の論理生起
確率と2乃至8段目の条件付論理生起確率を計算し直
し、メモリ14Aに書き換え記憶させる(ステップ10
4)。具体的には、DT2 のMSBが「1」なので、a
(1) =2,a(2) =0となり、 A(1) =a(1) /(a(1) +a(2) ) =2/2 A(2) =a(1) /(a(1) +a(2) ) =0/2 A(1) +A(2) =1 となる。また、MSB=「1」の下で2SB=「1」と
なっているので、b(1) =2,b(2) =0となり、 B(1) =b(1) /a(1) =2/2 B(2) =b(2) /a(1) =0/2 B(1) +B(2) =1 となる(但し、B(3) ,B(4) は零のまま)。
【0059】更に、MSB=「1」,2SB=「1」の
下で3SB=「1」となっているので、c(1) =2,c
(2) =0となり、 C(1) =c(1) /b(1) =2/2 C(2) =c(2) /b(1) =0/2 C(1) +C(2) =1 となる(但し、C(3) 乃至C(8) は零のまま)。また、
MSB=「1」,2SB=「1」,3SB=「1」の下
で4SB=「1」となっているので、d(1) =2,d
(2) =0となり、 D(1) =d(1) /c(1) =2/2 D(2) =d(2) /c(1) =0/2 D(1) +D(2) =1 となる(但し、D(3) 乃至D(16)は零のまま)。
【0060】同様にして、5SB=「0」より、e(1)
=0,e(2) =2となり、E(1)=0/2,E(2) =2
/2となる(但し、E(3) 乃至E(32)は零のまま) 。ま
た、6SB=「0」より、f(3) =1,f(4) =1とな
り、F(3) =1/2,F(4) =1/2となる(但し、F
(1) ,F(2) ,F(5) 乃至F(64)は零のまま) 。また、
7SB=「1」より、g(7) =1,g(8) =0となり、
G(7) =0/1,G(8) =1/1となる(但し、G(5)
=0/1、G(6) =1/1、G(1) 乃至G(4) ,G(9)
乃至G(128) は零のまま) 。また、LSB=「0」よ
り、h(13)=0,h(14)=1となり、H(13)=0/1,
H(14)=1/1となる(但し、H(11)=1/1、H(12)
=0/1、H(1) 乃至H(10),H(15)乃至H(256) は零
のまま) 。 このようにして、確率計算を終えたなら
ば、メモリ14Aの2分木テーブルを今回の計算結果で
書き換えて更新する。
【0061】ビット置換部16でビット置換された1バ
イトデータDT2 ´は符号化部18でユニバーサル符号
化されて出力される(ステップ105)。以下、同様に
して、逐次入力される単位データに対し、ビット置換部
16でのビット置換、確率計算部14での2分木テーブ
ルの更新、符号化部18での符号化を繰り返していく。
或る程度、処理が進み、前回までに入力された全ての単
位データ(DT1 〜DTi-1 )に基づき求めた2分木テ
ーブルが図5(a)の如くなった状態で、新たな今回の
1バイト分の入力データDTi が図5(b)に示す如
く、「01101101」であったならば、ビット置換
後のデータDTi ´は「10010000」となり、
「0」の多いパターンに変わることが判る。
【0062】画像の隣接する8個の画素を一括した単位
データでは、2SB以下の各ビットにつき、上位桁側の
ビットとの間に相関、即ち冗長度が存在しており条件付
論理生起確率に偏りが生じることになる。また、MSB
についても「0」又は「1」の出現頻度に偏りが生じる
場合が多い。このとき、論理生起確率や条件付論理生起
確率が大となったビットが「0」に置き換えられて、1
バイト長として見たとき「0」の多いパターンに偏るの
で、ビット単位の冗長度が減り、その後、1バイト単位
でなされる符号化で高い圧縮率を実現することが可能と
なる。画像バッファ10の画像データ全体について、処
理が終わったならば、圧縮処理を終える(ステップ10
6でYES)。
【0063】復元処理 データの復元を開始するとき、最初に確率計算部22は
メモリ22Aに記憶された2分木テーブルの各論理生起
確率及び条件付論理生起確率を全て零に初期設定する
(図10のステップ201)。ユニバーサル符号化デー
タが入力される毎に、復号化部20はユニバーサル復号
化を行い復号化データをビット逆置換部24へ出力する
(ステップ202、203)。例えば、最初の復号化デ
ータDR1 ´は(00001010)、2番目の復号化
データDR2 ´は(00000101)となる。復号化
データが1バイト単位で入力される毎に、ビット逆置換
部24は確率計算部22と共働して圧縮時での前処理と
逆の後処理を行って、圧縮側の単位データDTi データ
と同じ完全な復元データDRi を復元して出力する。
【0064】この後処理では、復号化データが1つ入力
されると、まず、ビット逆置換部24が確率計算部22
のメモリ22Aに記憶された2分木テーブルを参照し
て、今回入力した単位データの各ビットの内、MSBに
ついて、該ビットの論理値が「1」であるときの論理生
起確率の方が「0」であるときの論理生起確率より大き
いとき(等しい場合を含む)、当該ビットの実際の論理
値が「0」のときは「1」,「1」のときは「0」とな
るように逆置換し、当該ビットの論理値が「1」である
ときの論理生起確率の方が「0」であるときの論理生起
確率より小さいとき、当該ビットの実際の論理値が
「0」のときは「0」,「1」のときは「1」となるよ
うに逆置換する。
【0065】2SB乃至LSBについては、逐次、当該
ビットより上位桁側の各逆置換後の論理値の組み合わせ
を条件としながら、該ビットの論理値が「1」であると
きの条件付論理生起確率の方が、「0」であるときの条
件付論理生起確率より大きいとき(等しい場合を含
む)、当該ビットの実際の論理値が「0」のときは
「1」,「1」のときは「0」となるように逆置換し、
当該ビットの論理値が「1」であるときの条件付論理生
起確率の方が、「0」であるときの条件付論理生起確率
より小さいとき、当該ビットの実際の論理値が「0」の
ときは「0」,「1」のときは「1」となるように逆置
換する。LSBまで逆置換を終えたあとの1バイトの単
位データを完全な復元データとして外部へ出力するとと
もに確率計算部22に入力する(ステップ204)。予
め、2分木テーブルの初期化により、2分木テーブルは
全て、「1」となっている方の確率が大きいとされる。
この場合、最初の復号化データDR1 ´=(00001
010)に対するビットの逆置換は、図11に示す如く
進められて、逆置換後のデータは、DR1 =(1111
0101)となり、圧縮側でのDT1 と同一のデータが
復元される。
【0066】次に、確率計算部22は、今回の完全な復
元データDR1 を用いて、2分木テーブルにおける1段
目の論理生起確率と2乃至8段目の条件付論理生起確率
を計算し直し、メモリ22Aに書き換え記憶させる(ス
テップ205)。この際、それまでの2分木テーブルの
内容とデータDR1 が、圧縮側において、最初のデータ
DT1 を用いて確率計算し2分木テーブルの更新を行っ
たときと全く同じになっているので、2分木テーブルの
1段目はA(1) =1/1,A(2) =0/1、2段目はB
(1) =1/1,B(2) =0/1(但し、B(3) ,B(4)
は零のまま)、C(1) =1/1,C(2) =0/1(但
し、C(3) 乃至C(8) は零のまま)、D(1) =1/1,
D(2) =0/1(但し、D(3) 乃至D(16)は零のま
ま)、E(1) =0/1,E(2) =1/1(但し、E(3)
乃至E(32)は零のまま) 、F(3) =1/1,F(4) =0
/1(但し、F(1) ,F(2) ,F(5) 乃至F(64)は零の
まま) 、G(5) =0/1,G(6) =1/1(但し、G
(1) 乃至G(4) ,G(7) 乃至G(128) は零のまま) 、H
(11)=1/1,H(12)=0/1(但し、H(1) 乃至H(1
0),H(13)乃至H(256) は零のまま) となる。このよう
にして、確率計算を終えたならば、メモリ22Aの2分
木テーブルを今回の計算結果で書き換えて更新する。こ
の更新された2分木テーブルは、圧縮時に、最初の入力
データDT1 に基づき、更新されたものと完全に一致す
る。
【0067】ビット逆置換部24から出力された復元デ
ータDR1 は、データ再配列部26により、画像バッフ
ァ28の第1乃至第8ラインの第0列目に書き込まれる
(ステップ206、図7参照)。次に、復号化部20か
ら2番目の復号化データが出力されると(ステップ20
7でNO、202、203)、まず、ビット逆置換部2
4が確率計算部22のメモリ22Aに記憶された2分木
テーブル(前回までの完全な復元データに基づき、最新
のテーブルとされている)を参照して、今回入力した復
号化データの各ビット別に、逐次、所定のビット逆置換
を行い、逆置換後の1バイトの完全な復元データを外部
へ出力するとともに、確率計算部22に入力する(ステ
ップ204)。2番目の復号化データDR2 ´=(01
001011)については、ビットの逆置換は図12の
如く進行し、逆置換後の完全な復元データDR2 は(0
0000101)となり、圧縮時のDT2 と同一とな
る。
【0068】次に、確率計算部22は、今回の復号化デ
ータを用いて、2分木テーブルにおける1段目の論理生
起確率と2乃至8段目の条件付論理生起確率を計算し直
し、メモリ22Aに書き換え記憶させる(ステップ20
5)。この場合も、それまでの2分木テーブルの内容と
データDR2 が、圧縮側において、最初のデータDT2
を用いて確率計算し2分木テーブルの更新を行ったとき
と全く同じになっているので、2分木テーブルの1段目
はA(1) =2/2,A(2) =0/2、2段目はB(1) =
2/2,B(2) =0/2(但し、B(3) ,B(4) は零の
まま)、3段目はC(1) =2/2,C(2) =0/2(但
し、C(3) 乃至C(8) は零のまま)、4段目はD(1) =
2/2,D(2) =0/2(但し、D(3) 乃至D(16)は零
のまま)、5段目はE(1) =0/2,E(2) =2/2
(但し、E(3) 乃至E(32)は零のまま) 、6段目はF
(3) =1/2,F(4) =1/2(但し、F(1) ,F(2)
,F(5) 乃至F(64)は零のまま) 、7段目はG(7) =
0/1,G(8) =1/1(但し、G(5) =0/1、G
(6) =1/1、G(1) 乃至G(4) ,G(9) 乃至G(128)
は零のまま) 、8段目はH(13)=0/1,H(14)=1/
1となる(但し、H(11)=1/1、H(12)=0/1、H
(1) 乃至H(10),H(15)乃至H(256) は零のまま) 。こ
のようにして、確率計算を終えたならば、メモリ22A
の2分木テーブルを今回の計算結果で書き換えて更新す
る。この更新された2分木テーブルは、圧縮時に、2番
目の入力データDT2 に基づき、更新されたものと完全
に一致する。
【0069】ビット逆置換部24から出力された復元デ
ータDR2 は、データ再配列部26により、画像バッフ
ァ28の第1乃至第8ラインの第1列目に書き込まれる
(ステップ206)。以下、同様にして、逐次入力され
る復号化データに対し、ビット逆置換部24でのビット
逆置換、ビット逆置換後の復元データに基づく確率計算
部22での2分木テーブルの更新、データ再配列部26
によるデータ再配列を繰り返していく。
【0070】或る程度、処理が進み、前回までに復元さ
れた全ての単位データ(DR1 〜DRi-1 )に基づき求
めた2分木テーブルが図6(a)の如くなった状態で、
新たな今回の1バイト分の復号化データDRi ´が図6
(b)に示す如く、「00000101」であったなら
ば、ビット逆置換後のデータDRi は「1111001
0」となり、圧縮時における入力データDTi が復元さ
れる。新たなユニバーサル符号化データが入力されなく
なったら、復元処理を終了する。これにより、圧縮時に
符号化の前段で、ビット単位の冗長度を削減するように
前処理されていても、復元側では、確実に前処理される
前の単位データを復元することが可能となり、かつ、画
像バッファ28の中に画像データを再現することができ
る。
【0071】この第1実施例によれば、画像データを画
像の縦方向に隣接する8個の画素毎に分けて一括し、ビ
ット間に相関を持たせた1バイトデータとして逐次入力
し、該1バイトデータの各ビットが「0」と「1」のい
ずれの論理値であっても、論理生起確率又は条件付論理
生起確率が大のビットを「0」に置き換えて、1バイト
単位で見たとき「0」の多いパターンに偏らせること
で、ビット単位の冗長度を減らすことができ、その後、
1バイト単位でなされる符号化で、ベクトル符号化に並
ぶ高い圧縮率を実現することが可能となる。また、圧縮
時に符号化の前段で、単位データ内でのビット単位の冗
長度を削減するように前処理されていても復元側では、
確実に前処理される前の単位データを復元し、かつ、画
像データを再現することが可能となる。
【0072】なお、上記した第1実施例では、圧縮時に
ビット置換する際、論理生起確率や条件付論理生起確率
が大きいとき「0」に置換し、小さいとき「1」に置換
するようにしたが、反対に、確率が大きいとき「1」に
置換し、小さいとき「0」に置換するようにしてもよ
く、この場合、復元時のビット逆置換では、ビットの論
理値が「0」であるときの論理生起確率又は条件付論理
生起確率の方が、「1」であるときの論理生起確率又は
条件付論理生起確率より大きいとき(等しい場合を含
む)、当該ビットの実際の論理値が「1」のときは
「1」,「0」のときは「0」となるように逆置換し、
当該ビットの論理値が「0」であるときの条件付論理生
起確率の方が、「1」であるときの条件付論理生起確率
より小さいとき、当該ビットの実際の論理値が「1」の
ときは「0」,「0」のときは「1」となるように逆置
換すればよい。また、1バイトの単位データに対し、最
上位桁側から枝分かれさせて2分木テーブルを構成する
ようにしたが、最下位桁側から枝分かれさせて2分木テ
ーブルを構成してもよい。また、単位データの端のビッ
ト(MSBやLSB等)は、ビット置換の対象としない
ようにしてもよい。
【0073】また、上記した実施例では確率の計算及び
大小判断を、例えば、MSBについては、「1」の出現
頻度a(1) 、「0」の出現頻度a(2) を用いて、a(1)
とa(2) のいずれも0の場合を除き、 A(1) =a(1) /(a(1) +a(2) ) A(2) =a(2) /(a(1) +a(2) ) の如く分数計算で実際の確率を求め、A(1) ≧0.5 のと
きA(1) の確率大、A(1) <0.5 とし、A(2) >0.5 の
ときA(2) の確率大、A(2) ≦0.5 のとき確率小と判断
して行ったのと同じであるが、出現頻度a(1) とa(2)
自体を便宜上の確率とし、a(1) ≧a(2) のとき「1」
の確率大、a(1) <a(2) のとき「1」の確率小、a
(2) >a(1) のとき「0」の確率大、a(2) ≦a(1) の
とき「0」の確率小と判断するようにしてもよい。2S
B以降についても同様である。
【0074】また、圧縮方式としてユニバーサル符号を
例に挙げたが、他の方式であってもよい。更に、圧縮側
の区分け読出部は画像の縦方向に隣接した8個の画素毎
に分け、一括して1バイトデータとするようにしたが、
図13(a)のDTaに示す如く、互いに同一ライン内
で横に隣接する8個の画素毎に分け一括して1バイトデ
ータとしてもよく、或いは、図13(b)のDTbに示
す如く、上下2ラインに渡る範囲で、互いに隣接する8
個の画素毎に分け一括して1バイトデータとするように
してもよく、復元側のデータ再配列部は、圧縮側での区
分けの仕方に応じて元の画像データが再現できるように
再配列するようにすればよい。
【0075】図14は本発明の第2実施例構成図であ
る。30は2次元的に構成された原画像データ(白画素
を「0」,黒画素を「1」とする2値画像データ、図1
5(a)のVT参照)を格納する画像バッファ、32は
画像バッファに格納された画像データを互いに隣接する
n個の画素毎に分け、該n個の画素を一括したnビット
長単位のデータを逐次読み出して出力する区分け読出部
である。ここでは、図15(a)に示す如く、縦方向に
並んだ8ライン分の8個の画素に毎に分け、一括して、
1バイト単位のデータ(DU1 ,DU2 ,・・,D
i ,・・)として読み出し出力するものとする。34
は区分け読出部から今回単位データの出力に当たった8
個の画素の位置情報(ライン番号xと列番号yの組み合
わせからなる画像バッファのアドレス)を入力し、各画
素毎に、該画素に対する周辺所定範囲内の複数個の画素
の論理値を参照して、確率的に当該画素が「1」か
「0」かを予測し、8個の画素分を一括した予測データ
WUi を出力する予測部である。
【0076】一般的には、図15(a)に示す如く、P
x,y 、PXx+1,y 、PXx+2,y、PXx+3,y 、PX
x+4,y 、PXx+5,y 、PXx+6,y 、PXx+7,y の8個の
画素を今回の予測対象とすると、画素PXx,y について
の参照画素は、PXx-2,y-1 、PXx-2,y 、PX
x-2,y+1 、PXx-1,y-1 、PXx-1,y 、PXx-1,y+1
PXx,y-2 、PXx,y-1 の8個の画素である(一点鎖線
Aの範囲)。 該8個の内、4つ以上が「1」であれば
予測論理値=「1」、逆に、5つ以上が「0」であれば
予測論理値=「0」とする。画素PXx+1,y についての
参照画素は、PXx-1,y-1 、PXx-1,y 、P
x-1,y+1 、PXx,y-1 、PXx,y 、PXx, y+1 、PX
x+1,y-2 、PXx+1,y-1 の8個の画素、画素PXx+2,y
についての参照画素は、PXx,y-1 、PXx,y 、PX
x,y+1 、PXx+1,y-1 、PXx+1,y 、PXx+1, y+1 、P
x+2,y-2 、PXx+2,y-1 の8個の画素、画素PX
x+3,y についての参照画素は、PXx+1,y-1 、PX
x+1,y 、PXx+1,y+1 、PXx+2,y-1 、PXx+2,y 、P
x+2,y+1 、PXx+3,y-2 、PXx+3,y-1 の8個の画
素、画素PXx+4,y についての参照画素は、PX
x+2,y-1 、PXx+2,y 、PXx+2,y+1 、PXx+3,y-1
PXx+3,y 、PXx+3,y+1 、PXx+4,y-2 、PX
x+4,y-1 の8個の画素、画素PXx+5,y についての参照
画素は、PXx+3,y-1 、PXx+3,y 、PXx+3,y+1 、P
x+4,y-1 、PXx+4,y 、PXx+4,y+1 、P
x+5,y-2 、PXx+5,y-1 の8個の画素、画素PX
x+6,y についての参照画素は、PXx+4,y-1 、PX
x+4,y 、PXx+4,y+1 、PXx+5,y-1 、PXx+5,y 、P
x+5,y+1 、PXx+6,y-2 、PXx+6,y-1 の8個の画
素、画素PXx+7,y についての参照画素は、PX
x+5,y-1 、PXx+5,y 、PXx+5,y+1 、PXx+6,y-1
PXx+6,y 、PXx+6,y+1 、PXx+7,y-2 、PX
x+7,y-1 の8個の画素である。
【0077】図15(a)の場合、画素群PXx,y 乃至
PXx+7,y に係る1バイトデータDUi =(01101
101)に対応する予測データWUi は(011111
11)となる(図15(b)参照)。但し、第1ライン
と第2ラインに係る画素、第0列と第1列に係る画素、
第m列に係る画素が予測対象のとき、参照画素が足りな
いので、予測部34は図15(a)に示す如く、原画像
データ(VT)の回りに予め論理値が定められた拡張画
素エリアを設定して予測を行う。ここでは各拡張画素の
論理値は全て「1」(=黒)とする。
【0078】36はビット置換部であり、区分け読出部
32から入力した1バイトデータDUi を、予測部34
から入力した予測データWUi を用いて、各ビット毎
に、当該画素の論理値と予測結果との一致・不一致に従
い、互いに異なる所定論理値に置換して出力する。具体
的には、1バイトデータDUi の各ビットが「0」と
「1」のいずれの論理値であっても、予測結果と一致す
るビットを「0」に置き換え、一致しないビットは
「1」に置き換える。そして、ビット置換後の1バイト
データDUi ´として出力する。図15(a)の1バイ
トデータDUi の場合、ビット置換後の1バイトデータ
DUi ´は(00010010)となる(図18(c)
参照)。38はビット置換部でビット置換されたデータ
をバイト単位で、ユニバーサル符号化する符号化部であ
る。
【0079】画像データでは、或る画素と周辺画素間で
の相関が高く、複数の周辺画素の論理値から確率的に当
該画素の論理値を予測したとき、実際の論理値と一致し
ている場合が多い。よって、n個の画素毎に一括したn
ビット長の単位データでは、各ビットが本来、「0」と
「1」のいずれの論理値であっても、予測結果と一致す
るビットを「0」(又は「1」)に置き換えることで、
nビット長として見たとき「0」(又は「1」)の多い
パターンに偏らせることができ、符号化を行う前に、ビ
ット単位の冗長度を減らしておくことができ、その後所
定ビット長単位でなされる符号化で高い圧縮率を実現す
ることが可能となる。
【0080】40は復元側において、ユニバーサル符号
化データをユニバーサル復号化する復号化部であり、復
号化データDV1 ´、DV2 ´、・・、DVi ´、・・
を1バイト単位で出力する。42は復号化部から逐次入
力した1バイト単位の復号化データを画像バッファに再
配列するデータ再配列部、44は画像データを格納する
画像バッファである。データ再配列部42は、復号化デ
ータDV1´を画像バッファ44の第1乃至第8ライン
の第0列目に書き込み、DV2 ´を第1乃至第8ライン
の第1列目に書き込むという具合にして、第1ライン乃
至第8ライン分につき第m列までの再配列を終えたなら
ば、次に、復号化データDVm+2 ´を画像バッファの第
9ライン乃至第16ラインの第0列目に書き込み、DV
m+3 ´を第9ライン乃至第16ラインの第1列目に書き
込むという具合にして、画像バッファ44の中に復号化
データDV1 ´、DV2 ´、・・を再配列する(図16
(a)参照)。
【0081】46は画像バッファ44から各画素を1個
ずつ順に読み出す画素読出部であり、読み出し順序は、
PX1,0 ´、PX1,1 ´、・・、PX1,m ´、PX2,0
´、PX2,1 ´、PX2,2 ´、・・、PX2,m ´、PX
3,0 ´、・・という具合に、画像の走査順序と同じであ
る。48は画像読出部から今回画素データの出力に当た
った位置情報(ライン番号xと列番号yの組み合わせか
らなる画像バッファのアドレス)を入力し、該画素PX
x,y ´に対する周辺所定範囲内の複数個の画素の論理値
を参照して、確率的に当該画素が「1」か「0」かを予
測し、予測データWVx,y を出力する予測部である。
【0082】一般的には、図16(a)に示す如く、P
x,y ´の画素を今回の予測対象とすると、参照画素
は、圧縮側と同様に、PXx-2,y-1 、PXx-2,y 、PX
x-2,y+1 、PXx-1,y-1 、PXx-1,y 、PXx-1,y+1
PXx,y-2 、PXx,y-1 の8個の画素である(一点鎖線
Bの範囲)。 但し、PXx,y ´の如くダッシュ付はビ
ット逆置換前の画素を示し、PXx,y の如くダッシュ無
はビット逆置換後の画素を示す。また、第1ラインと第
2ラインに係る画素、第0列と第1列に係る画素、第m
列に係る画素が予測対象のとき、参照画素が足りないの
で、予測部48は図16(a)に示す如く、画像データ
(VR´)の回りに予め論理値が定められた拡張画素エ
リアを設定して予測を行う。ここでも拡張画素の論理値
は圧縮側と同じく全て「1」(=黒)とする。
【0083】50はビット逆置換部であり、画素読出部
46から入力した1ビットの画素データPXx,y ´を、
予測部48から入力した予測データWVx,y を用いて、
該予測結果と当該画素の論理値の組み合わせに従い所定
論理値に逆置換し、置換後の画素データPXx,y で画像
バッファの元の画素を書き換えて完全に復元した画像デ
ータを再現する。具体的には、予測データの示す当該画
素の予測結果が「1」のとき、画素データの示す当該画
素の論理値が「0」であれば「1」に逆置換し、当該画
素の論理値が「1」であれば「0」に逆置換する。ま
た、予測データの示す当該画素の予測結果が「0」のと
き、画素データの示す当該画素の論理値が「0」であれ
ば「0」に逆置換し、当該画素の論理値が「1」であれ
ば「1」に逆置換する。この結果、画像バッファ44の
中に、圧縮側の原画像データと完全に同一の画像データ
が再現されることになる。
【0084】図17は上記した第2実施例の圧縮処理を
示す流れ図、図18は圧縮時のビット置換動作の説明
図、図19は復元処理を示す流れ図、図20は復元時の
ビット逆置換動作の説明図であり、以下、これらの図に
従って説明する。圧縮処理 データの圧縮を開始するとき、まず、区分け読出部32
が画像バッファ30に格納された原画像データVTを、
縦方向に8ライン分の8個の画素毎に分けながら、該8
個の画素を一括した1バイトデータDUi を逐次読み出
して出力する(図17のステップ301)。最初は、第
1ラインから第8ラインまでにつき、第0列の8個の画
素を一括した1バイトデータDU1 を出力する。データ
DU1 のMSB乃至LSBは、画像バッファ30のPX
1,0 、PX2,0 、PX3,0 、PX4,0 、PX5,0 、PX
6,0 、PX7,0 、PX8,0 の画素である。区分け読出部
32は、今回読み出した各画素の位置情報を予測部34
へ出力する。
【0085】予測部34は入力した位置情報に基づき、
まず、PX1,0 の画素に着目し、該画素周辺所定範囲に
存在する画素の論理値を参照して、確率的に着目画素の
論理値を予測する。ここでは、図15(a)でのPX
-1,-1 、PX-1,0、PX-1,1、PX0,-1、PX0,0 、P
0,1 、PX1,-2、PX1,-1の画素が参照画素となり、
この内、4つ以上「1」であれば予測値=「1」、5つ
以上「0」であれば予測値=「0」であることから
「1」が予測値となる。次に、PX2,0 の画素に着目し
たとき、PX0,-1、PX0,0 、PX0,1 、PX1,-1、P
1,0 、PX1,1 、PX2,-2、PX2,-1の画素が参照画
素となり、予測値は「1」となる。また、PX3,0 の画
素に着目したとき、PX1,-1、PX1,0 、PX1,1 、P
2,-1、PX2,0 、PX2,1 、PX3,-2、PX3,-1の画
素が参照画素となり、予測値は同じく「1」となる。以
下、同様にして着目画素PX4,0 、PX5,0 、P
6,0 、PX7,0 についても予測値は「1」となる。こ
のようにして、予測が終わったならば、予測部34はP
1,0 乃至PX7, 0 の各予測値をMSB乃至LSBとし
て並べた1バイトの予測データWU1 =(111111
11)を出力する(ステップ302)。
【0086】続いて、ビット置換部36は区分け読出部
32から入力した1バイトデータDT1 を、予測部34
から入力した予測データWU1 を参照してビット置換す
る。具体的には、1バイトデータDT1 の各ビット毎
に、該ビットの論理値が予測データWU1 の対応するビ
ットの予測値と一致しているときは「0」、不一致のと
きは「1」に置換する(ステップ303)。DU1
(11110101)に対しては、MSB乃至4SBと
6SB,LSBが一致し、5SBと7SBが不一致なの
で置換後の1バイトデータDU1 ´は(0000101
0)となる。ビツト置換後の1バイトデータDU1 ´は
符号化部38に入力されてユニバーサル符号化されて出
力される(ステップ304)。
【0087】次に、区分け読出部32は画像バッファ3
0から第1ラインから第8ラインまでにつき、第1列目
の8個の画素を一括した1バイトデータDU2 を出力
し、今回読み出した各画素の位置情報を予測部34へ出
力する(ステップ305でNO、301)。予測部34
は入力した位置情報に基づき、まず、PX1,1 の画素に
着目し、該画素周辺所定範囲に存在する画素の論理値を
参照して、確率的に着目画素の論理値を予測する。ここ
では、図15(a)のPX-1,0、PX-1,1、PX-1,2
PX0,0 、PX0,1 、PX0,2 、PX1,-1、PX1,0
画素が参照画素となり、予測値は「1」となる。次に、
PX2,1 の画素に着目したとき、PX0,0 、PX0,1
PX0,2 、PX1,0 、PX1,1 、PX1,2 、PX2,-1
PX2,0 の画素が参照画素となり、予測値は「1」とな
る。以下、同様にして、着目画素PX3,1 乃至PX6,1
の予測値は「1」、着目画素PX7,1 の予測値は
「0」、着目画素PX8,1 の予測値は「1」となる。こ
のようにして、予測が終わったならば、予測部34は今
回求めた予測値をMSBからLSBにかけて並べた1バ
イトの予測データWU2 =(11111101)を出力
する(ステップ302)。
【0088】続いて、ビット置換部36は区分け読出部
32から入力した1バイトデータDU2 を、予測部34
から入力した予測データWU2 を参照してビット置換す
る(ステップ303)。DU2 =(11110010)
なので置換後の1バイトデータDU2 ´は(00001
111)となる。ビツト置換後の1バイトデータDT2
´は符号化部38に入力されてユニバーサル符号化され
て出力される(ステップ304)。
【0089】以下、同様にして、画像バッファ30から
の互いに隣接する8個の画素に係る1バイトデータDU
i の読み出し、該データDUi に係る各画素毎の確率的
な論理値予測、予測結果と実際の論理値との関係に基づ
くビット置換、ビット置換後の1バイトデータDUi ´
に対するユニバーサル符号化を繰り返していく。途中、
図15(a)に示したPXx,y 乃至PXx+7,y の8個の
画素に基づく1バイトデータDUi =(0110110
1)が入力されたとき、対応する予測データはWUi
(01111111)なので、ビット置換後のデータD
i ´=(00010010)となり、「0」の多いパ
ターンとなる。
【0090】一般に、画像データでは、或る画素と周辺
画素間での相関が高く、複数の周辺画素の論理値から確
率的に当該画素の論理値を予測したとき、実際の論理値
と一致している場合が多い。よって、n個の画素毎に一
括したnビット長の単位データでは、各ビットが本来、
「0」と「1」のいずれの論理値であっても、予測結果
と一致するビットを「0」(又は「1」)に置き換える
ことで、nビット長として見たとき「0」(又は
「1」)の多いパターンに偏らせることができ、符号化
を行う前に、ビット単位の冗長度を減らしておくことが
でき、その後所定ビット長単位でなされる符号化で高い
圧縮率を実現することが可能となる。画像バッファ30
に未処理のデータがなくなったら圧縮処理を終える(ス
テップ305でYES)。
【0091】復元処理 データの復元を開始すると、ユニバーサル符号化データ
が入力される毎に、復号化部40はユニバーサル復号化
を行い1バイト単位の復号化データDV1´、DV
2 ´、DV3 ´、・・をデータ再配列部42へ出力す
る。データ再配列部42は、復号化データDV1 ´を画
像バッファ44の第1乃至第8ラインの第0列目に書き
込み、DV2 ´を第1乃至第8ラインの第1列目に書き
込むという具合にして、第1ライン乃至第8ライン分に
つき第m列までの再配列を終えたならば、次に、復号化
データDVm+2 ´を画像バッファの第9ライン乃至第1
6ラインの第0列目に書き込み、DVm+3 ´を第9ライ
ン乃至第16ラインの第1列目に書き込むという具合に
して、画像バッファ44の中に復号化データDV1 ´、
DV2 ´、・・を再配列する(図19のステップ401
〜404の繰り返し、図16(a)参照)。
【0092】再配列が終わったならば、画素読出部46
は、まず、画像バッファ44の第1ラインで第0列の画
素データPX1,0 ´を読み出しビット逆置換部50へ出
力するとともに、アドレス(1,0)を予測部48とビ
ット逆置換部50へ出力する(ステップ405)。続い
て予測部48は、画像バッファ44のPX1, 0 ´を着目
画素とし、該画素の周辺所定範囲の画素を参照して確率
的な論理値を予測し、予測データWV1,0 を出力する
(ステップ406、図16(a)参照)。具体的には、
PX-1,-1 、PX-1,0、PX-1,1、PX0,-1、P
0,0 、PX0,1 、PX1,-2、PX1,-1の8個の画素を
参照画素とし、この内、4つ以上論理値が「1」となっ
ていれば予測値=「1」とし、5つ以上論理値が「0」
となっていれば予測値=「0」とする。図16(a)の
場合、予測データWV1,0 は「1」となる(図16
(b)参照)。
【0093】画素データPX1,0 ´と予測データWV
1,0 を入力したビット逆置換部50は、予測結果と当該
画素の論理値の組み合わせに従い所定論理値に逆置換
し、PX1,0 として画像バッファ44の元の画素を書き
換える(ステップ407、図20の(a)参照)。具体
的には、予測データの示す当該画素の予測結果が「1」
のとき、画素データの示す当該画素の論理値が「0」で
あれば「1」に逆置換し、当該画素の論理値が「1」で
あれば「0」に逆置換する。また、予測データの示す当
該画素の予測結果が「0」のとき、画素データの示す当
該画素の論理値が「0」であれば「0」に逆置換し、当
該画素の論理値が「1」であれば「1」に逆置換する。
ここでは、PX1,0 ´=「0」、WV1,0 =「1」なの
で、PX1,0 ´を「1」に逆置換し、PX1,0 として画
像バッファ44のアドレス(1,0)に書き込む。
【0094】次に、画素読出部46は第1ラインの第1
列の画素データPX1,1 ´を読み出してビット逆置換部
50へ出力するとともに、アドレス(1,1)を予測部
48とビット逆置換部50へ出力する(ステップ408
でNO、405)。予測部48は、PX-1,0、P
-1,1、PX-1,2、PX0,0 、PX0,1 、PX0,2、P
1,-1、PX1,0 の8個の画素を参照画素とし、この
内、4つ以上論理値が「1」となっていれば予測値は
「1」とし、5つ以上論理値が「0」となっていれば予
測値は「0」とした予測データWV1,1 を出力する(ス
テップ406)。PX1,0 については先にビット逆置換
されているので、正しい予測値が得られる。ここでは、
予測データWV1,1 は「1」となる(図16(b)参
照)。続いて、ビット逆置換部50は、PX1,1 ´=
「0」、WV1,1 =「0」なのでPX1,1 ´を「1」に
逆置換し、PX1,1 として画像バッファ44のアドレス
(1,1)に書き込む(ステップ407)。
【0095】以下、同様にして、画像バッファ44の第
1ラインの第2列目から第m列目、第2ラインの第0列
目から第m列目、第3ラインの第0列目から第m列目と
いう順序で、画素読出部46が画素データPXx,y ´を
読み出すとともに、予測部48が当該画素PXx,y ´に
対し所定範囲内の拡張画素データ及び(又は)それまで
に逆置換された画素を参照して、当該画素に対する予測
値を求め、ビット逆置換部50が当該画素の論理値と予
測値から所定の逆置換を行い、画像バッファ44の元の
アドレスに書き込むという処理を順に繰り返していく。
例えば、図16(a)のアドレス(x,y)の画素につ
いては、復号化されたデータDVi ´のMSBに基づく
論理値は「0」であり、PXx-2,y-1 、PXx-2,y 、P
x-2,y+1 、PXx-1,y-1 、PXx-1,y 、P
x-1,y+1 、PXx, y-2 、PXx,y-1 の参照画素に基づ
く予測値は「0」なので、当該画素の逆置換論理値は
「0」となり(図16(b)、図20(c))、画像バ
ッファ44のアドレス(x,y)は「0」に書き換えら
れる。画像バッファ44の中に未処理の画素データが無
くなったならば、復元処理を終える(ステップ408で
YES)。このとき、画像バッファ44には圧縮側の原
画像データと同一の画像データが完全に再現されること
になる。
【0096】この第2実施例によると、画像データで
は、或る画素と周辺画素間での相関が高く、複数の周辺
画素の論理値から確率的に当該画素の論理値を予測した
とき、実際の論理値と一致している場合が多い。よっ
て、n個の画素毎に一括したnビット長の単位データで
は、各ビットが本来、「0」と「1」のいずれの論理値
であっても、予測結果と一致するビットを「0」(又は
「1」)に置き換えることで、nビット長として見たと
き「0」(又は「1」)の多いパターンに偏らせること
ができ、符号化を行う前に、ビット単位の冗長度を減ら
しておくことができ、その後所定ビット長単位でなされ
る符号化で高い圧縮率を実現することが可能となる。ま
た、復元側では、確実に置換前の画素を復元し、画像デ
ータを再現することが可能となる。
【0097】なお、上記した第2実施例では、圧縮側に
おいてビット置換する際、予測結果と画素の論理値が一
致するとき「0」、不一致のとき「1」に置き換えるよ
うにしたが、逆に、予測結果と画素の論理値が一致する
とき「1」、不一致のとき「0」に置き換えるようにし
てもよく、この場合、復元側でビット逆置換する際、画
素の予測結果が「1」のとき、画素の論理値が「1」で
あれば「1」に逆置換し、当該画素の論理値が「0」で
あれば「0」に逆置換し、また、予測結果が「0」のと
き、画素の論理値が「1」であれば「0」に逆置換し、
当該画素の論理値が「0」であれば「1」に逆置換すれ
ばよい。また、圧縮側において、画像バッファから縦方
向に隣接する8個の画素毎に分けて読みだし1バイトデ
ータDUi とするようにしたが、図13(a)の場合と
同様に、横方向に隣接する8個の画素毎に分けて読み出
したり、図13(b)の場合と同様に、連続する2つの
ラインから上下に隣接する4つづつに分けて読み出すよ
うにしてもよい。
【0098】また、圧縮側において、画像バッファから
8個の画素単位でデータの読み出し、論理値の予測とビ
ット置換を行い、1バイトデータを符号化部へ出力する
ようにしたが、1画素単位でデータの読み出し、論理値
の予測、ビット置換を行い、該置換後のデータを、第2
の画像バッファに書き込んでいき、全画素につき終了し
たあと、区分け読出部により、第2の画像バッファから
互いに隣接する8個の画素毎に分けて読み出し、1バイ
トデータとして符号化部に入力するようにしてもよい。
以上、本発明を実施例、変形例により説明したが、本発
明は請求の範囲に記載した本発明の主旨に従い種々の変
形が可能であり、本発明はこれらを排除するものではな
い。
【0099】
【発明の効果】以上、本発明によれば、2次元的構成を
有する画像データを、互いに隣接するn個の画素毎に分
け、該n個の画素を一括したnビット長単位のデータで
入力し、前回までに入力された単位データに基づき、単
位データ内での所定の1又は複数のビットについて、各
ビット別に、該ビットの論理値が他の所定の1又は複数
のビットの論理値の組み合わせを条件として生起する確
率を求めておくとともに、今回入力された単位データの
所定の1又は複数の各ビットを、該ビットの条件付論理
生起確率が大か小かに従い、互いに異なる所定論理値に
置換し、しかる後、置換されたnビット長単位のデータ
を所定の方式で符号化し、圧縮を行うように構成したか
ら、画像データの場合、隣接する画素間に相関があるの
で、画像データを互いに隣接するn個の画素毎に分け
て、nビット長の単位データとすることで、単位データ
内のビット間に相関を持たせることができ、そして、単
位データの内、所定のビットが「0」と「1」のいずれ
の論理値であっても、条件付論理生起確率が大のビット
を「0」(又は「1」)に置き換えて、所定ビット長と
して見たとき「0」(又は「1」)の多いパターンに偏
らせることができ、ビット単位の冗長度を減らし、その
後、所定ビット長単位でなされる符号化で高い圧縮率を
実現することが可能となる。
【0100】また、圧縮符号化データを所定の方式で復
号化し、nビット長単位の復号化データとし、前回まで
に完全に復元された単位データに基づき、単位データ内
での所定の1又は複数のビットについて、各ビット別
に、該ビットの論理値が他の所定の1又は複数のビット
の論理値の組み合わせを条件として生起する確率を求め
ておくとともに、今回復号化された単位データの所定の
1又は複数の各ビットを、逐次、該ビットの両論理値に
係る条件付論理生起確率の大小と、当該ビットの論理値
との組み合わせに従い所定論理値に逆置換して、完全に
復元した単位データを得るようにし、各復元単位データ
を2次元的に配列し直して画像データを再現するように
構成したから、圧縮時に、画像データを互いに隣接する
n個の画素毎に分けて、nビット長の単位データとし、
かつ、符号化の前段で、単位データ内でのビット単位の
冗長度を削減するように前処理されていても、復元側で
は、確実に前処理される前の単位データを復元し、か
つ、画像データを再現することが可能となる。
【0101】また、圧縮時は、2次元的構成を有する画
像データを、互いに隣接するn個の画素毎に分け、該n
個の画素を一括したnビット長単位のデータで入力し、
前回までに入力された単位データに基づき、単位データ
内での所定の1又は複数のビットについて、各ビット別
に、該ビットの論理値が他の所定の1又は複数のビット
の論理値の組み合わせを条件として生起する確率を求め
ておくとともに、今回入力された単位データの所定の1
又は複数の各ビットを、該ビットの条件付論理生起確率
が大か小かに従い、互いに異なる所定論理値に置換し、
しかる後、置換されたnビット長単位のデータを所定の
方式で符号化し、圧縮を行い、復元時は、圧縮符号化デ
ータを所定の方式で復号化し、nビット長単位の復号化
データとし、前回までに完全に復元された単位データに
基づき、単位データ内での所定の1又は複数のビットに
ついて、各ビット別に、該ビットの論理値が他の所定の
1又は複数のビットの論理値の組み合わせを条件として
生起する確率を求めておくとともに、今回復号化された
単位データの所定の1又は複数の各ビットを、逐次、該
ビットの両論理値に係る条件付論理生起確率の大小と、
当該ビットの論理値との組み合わせに従い所定論理値に
逆置換して、完全に復元した単位データを得るように
し、各復元単位データを2次元に配列し直して画像デー
タを再現するように構成したから、圧縮時は、画像デー
タを互いに隣接するn個の画素毎に分けて、nビット長
の単位データとし、かつ、符号化の前段で、単位データ
内でのビット単位の冗長度を削減するように前処理する
ことで、高い圧縮率を実現可能となり、又、復元側で
は、確実に前処理される前の単位データを復元し、か
つ、画像データを再現することが可能となる。
【0102】また、2次元的構成を有する画像データ
を、各画素毎に、該画素に対する周辺所定範囲内の複数
個の画素の論理値を参照して、確率的に当該画素が
「1」か「0」かを予測し、当該画素の論理値と予測結
果との一致・不一致に従い、互いに異なる所定論理値に
置換し、置換後のn個の画素毎に一括したnビット長単
位のデータを、所定の方式により符号化し、圧縮するよ
うに構成したから、画像データでは、或る画素と周辺画
素間での相関が高く、複数の周辺画素の論理値から確率
的に当該画素の論理値を予測したとき、実際の論理値と
一致している場合が多い。よって、n個の画素毎に一括
したnビット長の単位データでは、各ビットが本来、
「0」と「1」のいずれの論理値であっても、予測結果
と一致するビットを「0」(又は「1」)に置き換える
ことで、nビット長として見たとき「0」(又は
「1」)の多いパターンに偏らせることができ、符号化
を行う前に、ビット単位の冗長度を減らしておくことが
でき、その後所定ビット長単位でなされる符号化で高い
圧縮率を実現することが可能となる。
【0103】また、圧縮符号化データを所定の方式で復
号化し、nビット長単位の復号化データとし、各復号化
データを2次元的な画像配列に直すとともに、各画素
を、逐次、それまでに完全に復元された画素の内、所定
範囲内の画素を参照して、確率的に当該画素が「1」か
「0」か予測しながら、該予測結果と当該画素の論理値
の組み合わせに従い所定論理値に逆置換して完全に復元
した画素に戻すことで、画像データを再現するように構
成したから、圧縮時に、画像データの各画素を、周辺複
数個の画素から確率的に予測した論理値との一致・不一
致に従い互いに異なる論理値に置換することで、ビット
単位の冗長度を削減するように前処理されていても、復
元側では、確実に置換前の画素を復元し、画像データを
再現することが可能となる。
【0104】また、圧縮時、2次元的構成を有する画像
データを、各画素毎に、該画素に対する周辺所定範囲内
の複数個の画素の論理値を参照して、確率的に当該画素
が「1」か「0」かを予測し、当該画素の論理値と予測
結果との一致・不一致に従い、互いに異なる所定論理値
に置換し、置換後のn個の画素毎に一括したnビット長
単位のデータを、所定の方式により符号化し、圧縮する
ようにし、復元時、圧縮符号化データを所定の方式で復
号化し、nビット長単位の復号化データとし、各復号化
データを2次元的な画像配列に直すとともに、各画素
を、逐次、それまでに完全に復元された画素の内、所定
範囲内の画素を参照して、確率的に当該画素が「1」か
「0」か予測しながら、該予測結果と当該画素の論理値
の組み合わせに従い所定論理値に逆置換して完全に復元
した画素に戻して、画像データを再現するように構成し
たから、圧縮時は、画像データが或る画素と周辺画素間
での相関が高く、複数の周辺画素の論理値から確率的に
当該画素の論理値を予測したとき、実際の論理値と一致
している場合が多いことを利用して、n個の画素毎に一
括したnビット長の単位データでは、各ビットが本来、
「0」と「1」のいずれの論理値であっても、予測値と
一致するビットを「0」(又は「1」)に置き換えるこ
とで、nビット長として見たとき「0」(又は「1」)
の多いパターンに偏らせることができ、符号化を行う前
に、ビット単位の冗長度を減らし、その後所定ビット長
単位でなされる符号化で高い圧縮率を実現することが可
能となる。又、復元時は、確実に置換前の画素を復元
し、画像データを再現することが可能となる。
【図面の簡単な説明】
【図1】本発明の原理説明図である。
【図2】本発明の第1実施例構成図である。
【図3】区分け読出部の動作説明図である。
【図4】2分木テーブルの説明図である。
【図5】ビット置換方法を示す説明図である。
【図6】ビット逆置換方法を示す説明図である。
【図7】データ再配列部の動作説明図である。
【図8】圧縮処理を示す流れ図である。
【図9】ビット置換動作の説明図である。
【図10】復元処理を示す流れ図である。
【図11】ビット逆置換動作の説明図である。
【図12】ビット逆置換動作の説明図である。
【図13】画像バッファからの他の単位データ読出法を
示す説明図である。
【図14】本発明の第2実施例構成図である。
【図15】原画像データからの単位データの読出と論理
予測の説明図である。
【図16】画像データの再配列、画素読出、論理予測の
説明図である。
【図17】圧縮処理を示す流れ図である。
【図18】ビット置換動作の説明図である。
【図19】復元処理を示す流れ図である。
【図20】ビット逆置換動作の説明図である。
【図21】LZSS符号化方式の説明図である。
【図22】LZW符号化方式の説明図である。
【図23】辞書構成の説明図である。
【図24】LZW符号化処理を示す流れ図である。
【図25】LZW復号化処理を示す流れ図である。
【図26】LZW復号化の例外時における説明図であ
る。
【図27】LZW復号化の説明図である。
【符号の説明】
10、28、30、44 画像バッファ 12、32 区分け読出部 14、22 確率計算部 16、36 ビット置換部 18、38 復号化部 24、50 ビット逆置換部 26、42 データ再配列部 34、48 予測部 46 画素読出部
───────────────────────────────────────────────────── フロントページの続き (72)発明者 千葉 広隆 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (56)参考文献 特開 平6−44038(JP,A) 特開 平3−70268(JP,A) 特開 平3−58574(JP,A) 特開 平6−38048(JP,A) (58)調査した分野(Int.Cl.7,DB名) H04N 1/41 - 1/419

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】 2次元的構成を有する画像データ(V
    T)を、互いに隣接するn個の画素毎に分け、該n個の
    画素(PXx,y 、PXx+1,y 、PXx+2,y、P
    x+3,y 、PXx+4,y 、PXx+5,y 、PXx+6,y 、PX
    x+7,y )を一括したnビット長単位のデータ(DTi
    で入力し、 前回までに入力された単位データ(DT1 〜DTi-1
    に基づき、単位データ内での所定の1又は複数のビット
    について、各ビット別に、該ビットの論理値が他の所定
    の1又は複数のビットの論理値の組み合わせを条件とし
    て生起する確率(B(1) 〜H(256) )を求めておくとと
    もに、 今回入力された単位データ(DTi )の所定の1又は複
    数の各ビットを、該ビットの条件付論理生起確率が大か
    小かに従い、互いに異なる所定論理値に置換し、 しかる後、置換されたnビット長単位のデータ(DTi
    ´)を所定の方式で符号化し、圧縮を行うようにしたこ
    と、 を特徴とする画像データ圧縮方法。
  2. 【請求項2】 圧縮符号化データを所定の方式で復号化
    し、nビット長単位の復号化データ(DRi ´)とし、 前回までに完全に復元された単位データ(DR1 〜DR
    i-1 )に基づき、単位データ内での所定の1又は複数の
    ビットについて、各ビット別に、該ビットの論理値が他
    の所定の1又は複数のビットの論理値の組み合わせを条
    件として生起する確率(B(1) 〜H(256) )を求めてお
    くとともに、 今回復号化された単位データ(DRi ´)の所定の1又
    は複数の各ビットを、逐次、該ビットの両論理値に係る
    条件付論理生起確率の大小と、当該ビットの論理値との
    組み合わせに従い所定論理値に逆置換して、完全に復元
    した単位データ(DRi )を得えるようにし、 各復元単位データ(DRi )を2次元的に配列し直して
    画像データ(VR)を再現するようにしたこと、 を特徴とする画像データ復元方法。
  3. 【請求項3】 圧縮時は、2次元的構成を有する画像デ
    ータ(VT)を、互いに隣接するn個の画素毎に分け、
    該n個の画素(PXx,y 、PXx+1,y 、PXx+2,y 、P
    x+3,y 、PXx+4,y 、PXx+5,y 、PXx+6,y 、PX
    x+7,y)を一括したnビット長単位のデータ(DTi
    で入力し、 前回までに入力された単位データ(DT1 〜DTi-1
    に基づき、単位データ内での所定の1又は複数のビット
    について、各ビット別に、該ビットの論理値が他の所定
    の1又は複数のビットの論理値の組み合わせを条件とし
    て生起する確率(B(1) 〜H(256) )を求めておくとと
    もに、 今回入力された単位データ(DTi )の所定の1又は複
    数の各ビットを、該ビットの条件付論理生起確率が大か
    小かに従い、互いに異なる所定論理値に置換し、 しかる後、置換されたnビット長単位のデータ(DTi
    ´)を所定の方式で符号化し、圧縮を行い、 復元時は、圧縮符号化データを所定の方式で復号化し、
    nビット長単位の復号化データ(DRi ´)とし、 前回までに完全に復元された単位データ(DR1 〜DR
    i-1 )に基づき、単位データ内での所定の1又は複数の
    ビットについて、各ビット別に、該ビットの論理値が他
    の所定の1又は複数のビットの論理値の組み合わせを条
    件として生起する確率(B(1) 〜H(256) )を求めてお
    くとともに、 今回復号化された単位データ(DRi ´)の所定の1又
    は複数の各ビットを、逐次、該ビットの両論理値に係る
    条件付論理生起確率の大小と、当該ビットの論理値との
    組み合わせに従い所定論理値に逆置換して、完全に復元
    した単位データ(DRi )を得るようにし、 各復元単位データ(DRi )を2次元に配列し直して画
    像データ(VR)を再現するようにしたこと、 を特徴とする画像データ圧縮/復元方法。
  4. 【請求項4】 2次元的構成を有する画像データ(V
    T)を、各画素(PXx,y )毎に、該画素に対する周辺
    所定範囲内の複数個の画素(PXx-2,y-1、P
    x-2,y 、PXx-2,y+1 、PXx-1,y-1 、PXx-1,y
    PXx-1,y+1 、PXx,y-2 、PXx,y-2 )の論理値を参
    照して、確率的に当該画素が「1」か「0」かを予測
    し、 当該画素(PXx,y )の論理値と予測結果との一致・不
    一致に従い、互いに異なる所定論理値に置換し、 置換後のn個の画素毎に一括したnビット長単位のデー
    タ(DUi ´)を、所定の方式により符号化し、圧縮す
    るようにしたこと、 を特徴とする画像データ圧縮方法。
  5. 【請求項5】 圧縮符号化データを所定の方式で復号化
    し、nビット長単位の復号化データ(DVi ´)とし、 各復号化データ(DVi ´)を2次元的な画像配列に直
    すとともに、各画素(PXx,y ´)を、逐次、それまで
    に完全に復元された画素の内、所定範囲内の画素(PX
    x-2,y-1 、PXx-2,y 、PXx-2,y+1 、PXx-1,y-1
    PXx-1, y 、PXx-1,y+1 、PXx,y-2 、PXx,y-2
    の論理値を参照して、確率的に当該画素が「1」か
    「0」か予測しながら、該予測結果と当該画素の論理値
    の組み合わせに従い所定論理値に逆置換して完全に復元
    した画素(PXx,y )に戻すことで、画像データを再現
    するようにしたこと、 を特徴とする画像データ復元方法。
  6. 【請求項6】 圧縮時、2次元的構成を有する画像デー
    タ(VT)を、各画素(PXx,y )毎に、該画素に対す
    る周辺所定範囲内の複数個の画素(PXx-2,y-1 、PX
    x-2,y 、PXx-2,y+1 、PXx-1,y-1 、PXx-1,y 、P
    x-1, y+1 、PXx,y-2 、PXx,y-2 )の論理値を参照
    して、確率的に当該画素が「1」か「0」かを予測し、 当該画素(PXx,y )の論理値と予測結果との一致・不
    一致に従い、互いに異なる所定論理値に置換し、 置換後のn個の画素毎に一括したnビット長単位のデー
    タ(DUi ´)を、所定の方式により符号化し、圧縮す
    るようにし、 復元時、圧縮符号化データを所定の方式で復号化し、n
    ビット長単位の復号化データ(DVi ´)とし、 各復号化データ(DVi ´)を2次元的な画像配列に直
    すとともに、各画素(PX´x,y )を、逐次、それまで
    に完全に復元された画素の内、所定範囲内の画素(PX
    x-2,y-1 、PXx-2,y 、PXx-2,y+1 、PXx-1,y-1
    PXx-1, y 、PXx-1,y+1 、PXx,y-2 、PXx,y-2
    の論理値を参照して、確率的に当該画素が「1」か
    「0」か予測しながら、該予測結果と当該画素の論理値
    の組み合わせに従い所定論理値に逆置換して完全に復元
    した画素PXx,y に戻すことで、画像データを再現する
    ようにしたこと、 を特徴とする画像データ圧縮/復元方法。
JP24042392A 1992-09-09 1992-09-09 画像データ圧縮/復元方法 Expired - Fee Related JP3181996B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24042392A JP3181996B2 (ja) 1992-09-09 1992-09-09 画像データ圧縮/復元方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24042392A JP3181996B2 (ja) 1992-09-09 1992-09-09 画像データ圧縮/復元方法

Publications (2)

Publication Number Publication Date
JPH0690362A JPH0690362A (ja) 1994-03-29
JP3181996B2 true JP3181996B2 (ja) 2001-07-03

Family

ID=17059261

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24042392A Expired - Fee Related JP3181996B2 (ja) 1992-09-09 1992-09-09 画像データ圧縮/復元方法

Country Status (1)

Country Link
JP (1) JP3181996B2 (ja)

Also Published As

Publication number Publication date
JPH0690362A (ja) 1994-03-29

Similar Documents

Publication Publication Date Title
US7365658B2 (en) Method and apparatus for lossless run-length data encoding
JP3541930B2 (ja) 符号化装置及び復号化装置
KR20030040567A (ko) 허프만 디코딩을 수행하는 방법
JP3241788B2 (ja) データ圧縮方式
JP3231105B2 (ja) データ符号化方式及びデータ復元方式
Mathpal et al. A research paper on lossless data compression techniques
JP3181996B2 (ja) 画像データ圧縮/復元方法
JP3127016B2 (ja) データ圧縮及び復元方法
JPH0644038A (ja) データ圧縮方法、データ復元方法、データ圧縮/復元方法
US20080001790A1 (en) Method and system for enhancing data compression
JP3266419B2 (ja) データ圧縮・伸長方式
JP3241787B2 (ja) データ圧縮方式
JP3124887B2 (ja) データ圧縮・復号方式
JPH0628149A (ja) 複数種類データのデータ圧縮方法
JP2755464B2 (ja) 画像データ圧縮方式
JPH06161705A (ja) データ符号化方式及びデータ復元方式
CN115514967B (zh) 基于二进制块双向编码的图像压缩方法及图像解压方法
JP2840420B2 (ja) 画像データ圧縮及び復元方式
JP3105330B2 (ja) 画像データの圧縮復元方式
JP2934603B2 (ja) 可変長さコードの復号化方法及びその装置
JPH0884260A (ja) 2次元画像データの圧縮方式および伸長方式
JPH05176187A (ja) データ圧縮・復元装置
JP3083550B2 (ja) データ圧縮及び復元方法
JP3239664B2 (ja) 可変長符号復号方法
JP3100206B2 (ja) データ圧縮方法

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010410

LAPS Cancellation because of no payment of annual fees