JP3482820B2 - データ符号化方法およびデータ符号化装置ならびにデータ復号化方法およびデータ復号化装置 - Google Patents

データ符号化方法およびデータ符号化装置ならびにデータ復号化方法およびデータ復号化装置

Info

Publication number
JP3482820B2
JP3482820B2 JP16705397A JP16705397A JP3482820B2 JP 3482820 B2 JP3482820 B2 JP 3482820B2 JP 16705397 A JP16705397 A JP 16705397A JP 16705397 A JP16705397 A JP 16705397A JP 3482820 B2 JP3482820 B2 JP 3482820B2
Authority
JP
Japan
Prior art keywords
prediction
bit
symbol
input
dominant
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
JP16705397A
Other languages
English (en)
Other versions
JPH10285050A (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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP16705397A priority Critical patent/JP3482820B2/ja
Publication of JPH10285050A publication Critical patent/JPH10285050A/ja
Application granted granted Critical
Publication of JP3482820B2 publication Critical patent/JP3482820B2/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)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、2値のビット列を
圧縮するデータ符号化方法およびデータ符号化装置なら
びに圧縮された2値のデータを伸長するデータ復号化方
法およびデータ復号化装置に関する。
【0002】
【従来の技術】従来、“0”と“1”からなる2値信号
を扱う情報理論の世界では、算術符号化方式と呼ばれる
ものが知られている。この算術符号化方式は、エントロ
ピー符号化方式であり、本質的に可逆符号化(ロスレ
ス)の性質を持つものである。そして、その原理は、エ
ライアスの符号化として知られている無記憶情報源に対
する理想的符号化方式を実用可能な形に再編成したもの
となっている。すなわち、算術符号とは、“0”と
“1”の直線上の対応区間を各シンボルの生起確率に応
じて不等長に分割していき、対象シンボル系列を対応す
る部分区間に割り当て、再帰的に分割を繰り返していく
ことにより得られた区間内に含まれる点の座標を、少な
くとも他の区間と区別できる2進小数で表現してそのま
ま符号とするものである。
【0003】この算術符号化方式は、有限個の情報源シ
ンボルに特定の符号語を対応させるブロック符号に比
べ、符号器の規模が必要メモリ量などのハードウェアが
小さくて済むこと、高い効率を期待できることおよび適
応符号化が容易なこと等の利点がある。このこと等か
ら、2値信号を扱う情報理論の世界では、この算術符号
化方式がその情報の持つエントロピーに最も近いレベル
に圧縮できるとされ、最も効率の良い符号化方式と言わ
れている。なお、この算術符号化方式は、特に、マルコ
ア情報源の符号化に適するものとなっている。
【0004】この算術符号化方式として、Qコーダ、算
術符号型MELコード、Mini−Maxコーダ等が提
案されている。そして、これらの算術符号を改善したも
のとして、QMコーダと呼ばれている方式が知られてい
る。このQMコーダは、カラー静止画符号化標準(JP
EG)および2値画像符号化標準(JBIG)の両標準
において、共通に使用されている。なお、このQMコー
ダは、2値情報源用の符号であり、JPEGのような多
値情報源の符号化にあたっては、その多値情報源を2値
化するための前処理を必要としている。このような場
合、符号化すべき2値シンボル数は増大するが、多値情
報源としての情報量を増大させることなしに2値系列に
変換することが可能となっている。
【0005】このQMコーダは、JPEGおよびJBI
Gの規定の中にその仕組みについて詳細に述べられてい
るが、ここでは後述する本発明との比較のために、その
概要を図12に基づき簡単に説明する。なお、算術復号
型のエントロピー復号器の構成は、エントロピー符号器
の構成と実質的に同一であるので、ここではその説明は
省略する。
【0006】この算術符号型のエントロピー符号器とな
るQMコーダ101は、算術演算部102と、状態記憶
器として機能する発生確率生成手段103とを含んで構
成される。この発生確率生成手段103内には、符号化
に必要なシンボル発数確率を決定するために必要な状態
パラメータテーブルが書き込まれている。上記の状態パ
ラメータは、入力される状態信号106によって特定さ
れる。そして、この状態信号106によって特定された
状態パラメータのテーブルに対し、算術演算部102は
演算パラメータ更新時のデータを、読出しアドレスとし
て出力し、これにより特定される発生確率生成手段10
3のデータが算術演算部102へ向け出力される。算術
演算部102は、このようにして入力されるデータに基
づき、入力されるデータ104を符号化データ105に
圧縮し、符号化して出力する。なお、発生確率生成手段
103には、状態信号106が入力される。これは例え
ば、マルコフモデルと呼ばれるような手法等により求め
られる参照画素データ等であり、圧縮率を高めるために
利用される信号である。
【0007】このように構成されるQMコーダの動作に
ついて図13のフローチャートに基づき説明する。ま
ず、QMコーダ101内のレジスタAに0xFFFF
を、レジスタCに0x0000を代入する。また、確率
推定のためのインデックスSTを初期化する(ステップ
S100)。次に、符号化対象のシンボル(1ビット)
を取り込む(ステップS101)。そして、取り込んだ
シンボルが、優勢シンボルか劣勢シンボルかを判定する
(ステップS102)。優勢シンボルの時はステップS
103に進み、劣勢シンボルの時はステップS106に
進む。
【0008】インデックスSTによって確率推定テーブ
ルLSZを参照し、劣勢シンボルの生起確率を求め、さ
らに、それをレジスタAから減じることにより優勢シン
ボルの生起確率を求め、その値をレジスタAに代入する
(ステップS103)。その後、レジスタAの最上位ビ
ットが“1”かどうか調べる(ステップS104)。
“1”ならステップS105に進み、“0”ならステッ
プS114に進む。そして、“1”のときは、インデッ
クスSTによって確率推定テーブルNMPSを参照し、
次のシンボルの符号化のためのインデックスSTを求め
ておく(ステップS105)。
【0009】ステップS102において、劣勢シンボル
のときは、インデックスSTによって確率推定テーブル
LSZを参照し、劣勢シンボルの生起確率を求め、それ
をレジスタAに代入する(ステップS106)。その
後、レジスタCにレジスタAの値を加える(ステップS
107)。そして、インデックスSTによって確率推定
テーブルSWITCHを参照し(ステップS108)、
これが“1”のときはステップS109に進み、優勢シ
ンボルを変更する。
【0010】一方、ステップS110では、インデック
スSTによって確率推定テーブルNLPSを参照し、次
のシンボルの符号化のためのインデックスSTを求めて
おく。そして、ステップS111ではレジスタA,レジ
スタCを共に1ビット左シフトする。この左シフトによ
り、レジスタCから溢れた最上位ビットを符号語として
出力する(ステップS112)。そして、ステップS1
13において、レジスタAの最上位ビットが“1”かど
うか調べ、“1”のときは、ステップS111に戻って
シフトを繰り返す。最上位ビットが“0”のときはステ
ップS114にいき、符号化したシンボルが最後のシン
ボルなら終了する。そうでなければステップS101に
戻る。
【0011】このようにして、QMコーダ101は、確
率推定テーブルLSZ,NMPS,NLPSを利用して
入力されてくる2値のビット列を圧縮して符号化する。
【0012】
【発明が解決しようとする課題】しかしながら、このQ
Mコーダ101等の算術符号化方式は、符号化効率は良
いものの図13に示すフローチャートに示されるよう
に、1ビットずつ符号化するため符号化速度が遅いもの
となっている。このため、実用面では、レンベル・ジブ
系(=LZ系)の符号化方式が優勢となっている。しか
し、このLZ系の符号化方式は、符号化効率が算術符号
化方式にくらべ、かなり落ちるものとなっている。この
ように、従来の技術には、符号化効率が算術符号化方式
程度に良く、しかも符号加速度がLZ系程度に速いもの
が存在していない状況である。
【0013】本発明は、算術符号化方式とほぼ同程度の
符号化および復号化効率を達成すると共に符号化および
復号化速度を大幅に向上させ、LZ系の速度に近づけた
新しいデータ符号化方法およびデータ符号化装置ならび
にデータ復号化方法およびデータ復号化装置を提供する
ことを目的とする。
【0014】
【課題を解決するための手段】かかる目的を達成するた
め、請求項1記載のデータ符号化方法では“0”および
“1”からなる2値のビット列を入力する際、“0”ま
たは“1”のいずれか一方を優勢シンボルとし、いずれ
か他方を劣勢シンボルとすると共に、その優勢シンボル
がn個連続すると予測し、そのn個を予測ビット数とし
て設定する予測設定工程と、入力された予測ビット数か
らなる注目系列について予測が当たったときに符号語と
して“0”または“1”のいずれか一方の信号を予測当
たり信号として出力し、次のn個のビット列を符号化す
る作業に移り、はずれたときに符号語として“0”また
は“1”のいずれか他方の信号を予測はずれ信号として
出力する予測結果出力工程と、予測が所定回数はずれた
ときに予測ビット数をn個より少ない新減少予測ビット
数として同様の予測設定工程と予測出力工程とを再帰的
に繰り返して行なうようにしている。
【0015】このように、優勢シンボルがn個連続する
ことを予測し、予測が当たったときには、n個のビット
が1つの予測当たり信号等で表示されることとなり、圧
縮効率が高まると共に符号化速度が速くなる。しかも予
測がはずれると、予測ビット数を減少させ、次の予測を
行うようにしたので、予測がはずれても圧縮効率や符号
化速度はそれ程減少しない。
【0016】また、請求項2記載の発明では、請求項1
記載のデータ符号化方法において、n個を偶数個とし、
予測が所定回数はずれたときに注目系列を2分割し、そ
の2分割された前半部の前半部注目系列のみに劣勢シン
ボルが存在するとき、新減少予測ビット数を予測ビット
数の1/2とし、2分割された後半部の後半部注目系列
に劣勢シンボルが存在するとき新減少予測ビット数を予
測ビット数の1/4としている。
【0017】一般的に、後半部注目系列に劣勢シンボル
が存在すると、次の注目系列に一層多くの劣勢シンボル
が存在する場合が多いのであるが、この請求項2記載の
発明では、そのような状況への対応ができ、符号化速度
や効率を上げることができる。
【0018】さらに、請求項3記載の発明では、請求項
1または2記載のデータ符号化方法において、新減少予
測ビット数が1となり、かつそのビットが劣勢シンボル
のとき、以降の符号化において従来の劣勢シンボルを優
勢シンボルとし、従来の優勢シンボルを劣勢シンボルと
して符号化するようにしている。その結果、入力データ
の実態に合わせ、適切な予測ができることとなり、高い
符号化速度や効率を維持できることとなる。
【0019】加えて、請求項4記載の発明では、請求項
1、2または3記載のデータ符号化方法において、所定
回数を1回としている。このため、予測ビット数を早め
に減少させることができ、一定の傾向を有するビット列
の符号化速度を速くできる。また、請求項5記載の発明
では、請求項1、2、3または4記載のデータ符号化方
法において、予測が規定回数当たったときに、予測ビッ
ト数をn個より多い新増加予測ビット数としている。こ
のため、予測が当たれば当たる程、圧縮効率が高まりか
つ符号化速度が速くなる。
【0020】また、請求項6記載のデータ符号化方法で
は、“0”および“1”からなる2値のビット列を入力
する際、“0”または“1”のいずれか一方を優勢シン
ボルとし、いずれか他方を劣勢シンボルとすると共に、
その優勢シンボルがn個連続すると予測し、そのn個を
予測ビット数として設定する予測設定工程と、入力され
た予測ビット数からなる注目系列について予測が当たっ
たときに符号語として“0”または“1”のいずれか一
方の信号を予測当たり信号として出力し、次のn個のビ
ット列を符号化する作業に移り、はずれたときに符号語
として“0”または“1”のいずれか他方の信号を予測
はずれ信号として出力する予測結果出力工程と、予測が
規定回数当たったときに、予測ビット数をn個より多い
新増加予測ビット数として同様の予測設定工程と予測結
果出力工程とを繰り返し行わせている。
【0021】この結果、予測が当たると、n個のビット
が1つの予測当たり信号等で表示されることとなり圧縮
効率が高まると共に符号化速度が速くなる。しかも予測
が当たれば当たる程、データの圧縮効率が一層高まると
共に符号化速度が一層速くなる。
【0022】さらに、請求項7記載の発明では、請求項
5または6記載のデータ符号化方法において、規定回数
を2回とし、新増加予測ビット数を予測ビット数の2倍
としている。このため、予測の当たりが続くこと、すな
わち、一定の傾向が出始めてから予測ビット数を変えて
いるので、データの圧縮効率を高めることができる。し
かもその値を従前の2倍としているので、ちょうど当た
りによって連続した優勢シンボルのビット数と同一とな
り、次の予測も当たる確率が高くなる。この結果、圧縮
効率を高めることができると共に符号化速度を速くする
ことができる。加えて、請求項8記載の発明では、請求
項1、2、3、4、5、6または7記載のデータ符号化
方法において、n個を2m(mは1以上の整数)個とし
ている。このため、予測がはずれたときの分割を均等分
割できると共にどんどん分割でき最後に1個のビット数
とすることができる。
【0023】また、請求項9記載の発明では、請求項8
記載のデータ符号化方法において、予測がはずれたとき
注目系列を2分割し、2分割された前半部の前半部注目
系列がすべて優勢シンボルのときは符号語として“0”
を出力し、2分割された後半部の後半部注目系列をさら
に2分割し、“0”または“1”の符号語を出力する前
半部当たり工程と、前半部注目系列に劣勢シンボルが存
在するときは符号語として“1”を出力すると共に、前
半部注目系列をさらに2分割し、“0”または“1”の
符号語を出力する前半部はずれ工程を有し、各分割され
た注目系列中に劣勢シンボルが存在する限り、その注目
系列の分割を繰り返し、前半部当たり工程と前半部はず
れ工程を再帰的に繰り返している。
【0024】この結果、QMコーダと同様な圧縮効率を
達成できると共にQMコーダの数倍の符号化速度を達成
できることとなる。
【0025】また、請求項10記載の発明では、請求項
8記載のデータ符号化方法において、予測がはずれたと
き注目系列を2分割し、2分割された後半部の後半部注
目系列がすべて優勢シンボルのときは符号語として
“0”を出力し、2分割された前半部の前半部注目系列
をさらに2分割し、“0”または“1”の符号語を出力
する後半部当たり工程と、後半部注目系列に劣勢シンボ
ルが存在するときは符号語として“1”を出力すると共
に、後半部注目系列をさらに2分割し、“0”または
“1”の符号語を出力する後半部はずれ工程を有し、各
分割された注目系列中に劣勢シンボルが存在する限り、
その注目系列の分割を繰り返し、後半部当たり工程と後
半部はずれ工程を再帰的に繰り返している。
【0026】この結果、QMコーダと同様な圧縮効率を
達成できると共にQMコーダの数倍の符号化速度を達成
できることとなる。
【0027】また、請求項11記載の発明では、“0”
および“1”からなる2値の入力ビット系列を圧縮して
符号化するデータ符号化装置において、“0”または
“1”のいずれか一方を優勢シンボルとし、いずれか他
方を劣勢シンボルとすると共にその優勢シンボルがn個
連続すると予測し、そのn個を予測ビット数として設定
する予測ビット長等演算設定部と、入力ビット系列を一
時記憶するバッファレジスタと、予測ビット長等演算設
定部およびバッファレジスタの各値を入力し、その入力
された予測ビット数からなる注目系列について予測が当
たったときに符号語として“0”または“1”のいずれ
か一方の信号を予測当たり信号として出力し、はずれた
ときに符号語として“0”または“1”のいずれか他方
の信号を予測はずれ信号として出力する判定部とを備
え、予測が所定回数はずれたときに予測ビット数をn個
より少ない新減少予測ビット数を予測ビット長等演算設
定部で設定し、予測が規定回数当たったときに予測ビッ
ト数をn個より多い新増加予測ビット数を予測ビット長
等演算設定部で設定している。
【0028】この結果、予測が当たればn個のビットが
1つの予測当たり信号等で表示されることとなり、圧縮
効率が高まると共に符号化速度が速くなる。しかも、予
測が当たれば当たる程、予測ビット数を多くしているの
で、一層圧縮効率が高まることとなる。加えて、予測が
はずれると、予測ビット数を減少させているので、予測
がはずれても圧縮効率や符号化速度はそれ程減少するこ
とはない。
【0029】さらに、請求項12記載のデータ符号化装
置では、入力ビット系列を一時記憶するレジスタ群より
なるバッファレジスタと、符号化する注目系列の先頭位
置を示す変数ofsを保持するレジスタおよび予測ビッ
ト長を示す変数widthを保持するレジスタを内蔵す
る予測ビット長演算部と、この予測ビット長演算部が出
力するバッファレジスタ上のofsの位置およびそのo
fsからwidthにより定まるバッファレジスタ上の
入力ビット系列を選択し、その入力ビット系列がすべて
優勢シンボルのとき符号ビット出力として1つの優勢シ
ンボルを出力し、劣勢シンボルが含まれるときは1つの
劣勢シンボルを出力する判定部と、バッファレジスタ内
の入力ビット系列の符号化が完了した旨の完了信号を予
測ビット長演算部より受けたとき入力ビット要求を行う
入出力制御信号発生部と、刻々変化するwidthの値
を保持しておくためのメモリとなるスタック・メモリ
と、予測ビット長演算部より過去の符号化の状態を入力
し、新たに入力する入力ビット系列の予測ビット長と優
勢シンボルを設定する予測ビット長・優勢シンボル設定
部とを備え、入出力制御信号発生部は完了信号を予測ビ
ット長演算部より受けたとき、バッファレジスタに対し
て予測ビット長・演算シンボル設定部によって新たに設
定された新予測ビット長で示される個数の入力ビット系
列の取り込みを指示している。
【0030】このように、刻々変化するwidthによ
って予測ビット長を変化させているので、予測が当たれ
ばn個のビットが1つの予測当たり信号等で表示される
こととなり、圧縮効率が高まると共に符号化速度が速く
なる。しかも、予測が当たれば当たる程、予測ビット数
を多くしているので、一層圧縮効率が高まることとな
る。加えて、予測がはずれると、予測ビット数を減少さ
せているので、予測がはずれても圧縮効率や符号化速度
はそれ程減少することはない。
【0031】また、請求項13記載のデータ復号化方法
では、符号化されたデータを入力し“0”および“1”
からなる2値のビット列に復号化するデータ復号化方法
において、“0”または“1”のいずれか一方を優勢シ
ンボルとし、いずれか他方を劣勢シンボルとすると共
に、その優勢シンボルがn個(nは1以上の整数)連続
すると予測したその予測結果を“0”および“1”から
なる2値のビット列で表した符号語を1ビットずつ入力
する入力工程を有し、入力された符号語が予測当たりの
値のとき優勢シンボルをn個連続して復号化すると共
に、予測当たりが所定回数連続したときはn個より多い
数の優勢シンボルが連続すると新たに予測するようにし
ている。
【0032】この結果、予測が当たっている場合、1つ
の符号語でn個の優勢シンボルを復号できるので、伸長
効率が高くなり、復号速度が速くなる。しかも予測が当
たっていればいる程、1つの符号語で復号できる優勢シ
ンボルの数を多くできるので一層伸長効率が高くなると
共に、復号速度が速くなる。
【0033】さらに、請求項14記載のデータ復号化方
法では、“0”または“1”のいずれか一方を優勢シン
ボルとし、いずれか他方を劣勢シンボルとすると共に、
その優勢シンボルがn個(nは1以上の整数)連続する
と予測したその予測結果を“0”および“1”からなる
2値のビット列で表した符号語を1ビットずつ入力する
入力工程と、入力された符号語が予測当たりの値のと
き、優勢シンボルをn個連続して復号化すると共に、入
力された符号語が予測はずれの値のとき、次の符号語を
入力する予測結果復号化工程と次の符号語の値が予測当
たりの値のとき優勢シンボルをn−m個連続して復号化
し、予測はずれの値のときは再度次の符号語を入力する
工程を再帰的に繰り返し、0<n−m≦1のときの予測
はずれ時に劣勢シンボルを復号化するようにしている。
【0034】このため、予測が当たっている場合、1つ
の符号語でn個の優勢シンボルを復号できるので、伸長
効率が高くなり、復号速度が速くなる。しかも予測が当
たっていればいる程、1つの符号語で復号できる優勢シ
ンボルの数を多くできるので一層伸長効率が高くなると
共に、復号速度が速くなる。加えて、予測はずれのとき
に予測ビット長を減らす作業を再帰的に繰り返し、最終
的に劣勢シンボルを復号化しているので、予測はずれが
生じても効率的にデータを復号化できる。
【0035】また、請求項15記載の発明では、符号化
されたデータとなる符号ビットを入力し、“0”および
“1”からなる2値のビット列からなる復号ビットに復
号化するデータ復号化装置において、“0”または
“1”のいずれか一方を優勢シンボルとし、いずれか他
方を劣勢シンボルとしたとき符号ビットの優勢シンボル
と予測ビット長n個を設定する予測ビット長等設定演算
部と、この予測ビット長等設定演算部からの復号ビット
出力許可信号を受けて入力中の符号ビットを所定の形で
一時保持すると共に復号ビットを出力する復号ビット設
定部とを備え、入力された符号ビットが優勢シンボルの
場合、復号ビット出力許可信号を出力し復号ビット設定
部に優勢シンボルを書き込むと共に優勢シンボルが所定
回数連続したときは予測ビット長をn個より多い数に変
更している。
【0036】この結果、予測が当たっている場合、1つ
の符号語でn個の優勢シンボルを復号できるので、伸長
効率が高くなり、復号速度が速くなる。しかも予測が当
たっていればいる程、1つの符号語で復号できる優勢シ
ンボルの数を多くできるので一層伸長効率が高くなると
共に、復号速度が速くなる。
【0037】さらに、請求項16記載の発明では、
“0”または“1”のいずれか一方を優勢シンボルと
し、いずれか他方を劣勢シンボルすると共にそのシンボ
ルがn個(nは1以上の整数)連続すると予測したその
予測結果を“0”および“1”からなる2値のビット列
で表した符号ビットを1ビットずつ入力する復号化する
復号化装置において、符号ビットの予測ビット長と優勢
シンボルを設定する予測ビット長・優勢シンボル設定部
と、この予測ビット長・優勢シンボル設定部から予測ビ
ット長と優勢シンボルならびに符号ビットを入力し、そ
の符号ビットの値に応じて復号ビット出力許可信号を出
力する予測ビット長演算部と、復号ビット出力許可信号
を入力し、入力中の符号ビットを所定の形で一時保持す
ると共に復号ビットを出力する復号ビット設定部とを備
え、予測ビット長演算部に入力された符号語が予測当た
りの値の時、優勢シンボルをn個連続して復号ビット設
定部に書き込むと共に、入力された符号語が予測はずれ
のとき次の符号ビットを入力し、その値が予測当たりの
値の時、優勢シンボルをn−m個(mは1以上の整数で
nより小さい値)連続して復号ビット設定部に書き込
み、予測はずれのときは再度次の符号を予測ビット長演
算部に入力するようにしている。
【0038】このため、予測が当たっている場合、1つ
の符号語でn個の優勢シンボルを復号できるので、伸長
効率が高くなり、復号速度が速くなる。しかも予測が当
たっていればいる程、1つの符号語で復号できる優勢シ
ンボルの数を多くできるので一層伸長効率が高くなると
共に、復号速度が速くなる。加えて、予測はずれのとき
に予測ビット長を減らす作業を再帰的に繰り返し、最終
的に劣勢シンボルを復号化しているので、予測はずれが
生じても効率的にデータを復号化できる。
【0039】本発明のデータ符号化方法およびデータ符
号化装置では、2値のビット列を入力する際、“0”か
“1”を優勢シンボルと定め、その優勢シンボルがn個
連続すると予測する。この予測が当たったときは、符号
語として“0”または“1”のいずれか一方を出力し、
符号化を完了する。はずれた場合は、“0”または
“1”のいずれか他方を出力すると共に、その注目系列
を分割し、それぞれの分割された系列の信号状態を上述
と同様な方法で確認し符号化していく。そして、予測が
当たるか分割が不可能になるまで、同様の分割と予測を
繰り返し符号化する。また、最初の予測ビット数nを予
測の当たりはずれに応じて変化させ、注目系列の確率変
動に追随させている。
【0040】また、本発明のデータ復号化方法およびデ
ータ復号化装置では、先に示したデータ符号化方法およ
びデータ符号化装置とは、逆のアルゴリズムを使用して
復号化している。
【0041】
【発明の実施の形態】以下、本発明の実施の形態の例を
図1から図11に基づき説明する。
【0042】まず、本発明のアルゴリズムの概要につい
て図1から図3に基づいて説明する。この発明のアルゴ
リズムは、QMコーダと同様、2値のビット列を圧縮の
対象としている。まず初期値として、“0”か“1”の
いずれかを優勢シンボルと定め、そのシンボルが連続す
ると予測する個数runを設定する。入力系列の出現確
率が不明の場合は、runを1に設定するのが良い。そ
の上で、以下に示すようなルールに従い符号化を進め
る。なお、個数runが予測ビット数に相当する。
【0043】図1に示すように、runで示される注目
系列がすべて優勢シンボルであると予測し、予測が当た
ったとき、符号語として“0”を出力し、この系列の符
号化を完了する。はずれた場合は“1”を出力し、次の
分割符号化工程を実行する。予測がはずれた場合は、図
2に示すように注目系列を前半部系列と後半部系列の2
つに分け、前半部がすべて優勢シンボルのときは符号語
として“0”を出力して、前半部系列の符号化を完了す
る。前半部系列に劣勢シンボルが存在するときは、符号
語として“1”を出力し、次の再分割の工程を実行す
る。前半部系列の符号化が完了したら注目系列を後半部
に移し、前半部系列と同様に符号化する。劣勢シンボル
が存在する系列は、可能な限り系列を分割して上述の分
割符号化工程を繰り返す。
【0044】なお、分割は必ずしも2つの均等分割とす
る必要はなく、不均等な分割としたり3つ以上の分割と
しても良い。また、予測が当たったとき“0”ではな
く、優勢シンボルを出力し、はずれた場合“1”ではな
く、劣勢シンボルを出力するようにしたり、予測当たり
で“1”を、予測はずれで“0”を出力するようにして
も良い。
【0045】以上がこの発明のデータ符号化の基本アル
ゴリズムであるが、さらに、入力系列の出現確率の変化
に追随し、符号化効率を向上させるため、以下の処理を
加えるようにしても良い。すなわち、runで予測した
系列が続けて所定回数、例えば、2回当たったとき、r
unを2倍等に増加させる。なお、予測が的中し続けた
場合、さらに予測範囲を拡大していくようにしても良
い。また、runで予測した系列の後半部系列に劣勢シ
ンボルが存在するとき、runを1/4等に減少させる
ようにしても良い。これは、後半部に劣勢シンボルが存
在するときは、次に続く系列に劣勢シンボルが多く含ま
れると判断されているためである。このため、runで
予測した系列の前半部系列のみに劣勢シンボルが存在す
るときは、後半部に劣勢シンボルが存在するときより多
い値、例えばrunを1/2倍するようにしても良い。
そして、runが1で、それが劣勢シンボルのときは、
以降の入力系列を反転させる。すなわち、優勢シンボル
を変更させる。
【0046】この発明における符号化プロセスは、図4
の符号化メインルーチンと図5の符号化サブルーチンに
より構成される。なお、図5中の符号化サブルーチン
は、サブルーチンから同じサブルーチンを呼び出すいわ
ゆる関数の再帰読出しを行っている。
【0047】まず、図4の符号化メインルーチンの各ス
テップについて説明する。なお、符号化の対象は2値の
ビット列からなる入力系列となっている。最初に、予測
の初期値runの設定と優勢シンボルの選択(“0”ま
たは“1”)を行う(ステップS0)。次に、ローカル
変数ofsに0を、widthにrunを代入する(ス
テップS1)。ここでofsは、符号化のために予め定
義した配列Aのポインタで、予測開始ビット位置を示
す。したがって初期値は0となる。widthはofs
で示したビット位置から何ビットを予測の対象にするか
を示す値で、ここでは、予測の初期値runが代入され
る。その後、予め定義した配列AのA〔ofs〕からA
〔width−1〕までに入力ビットを書き込む(ステ
ップS2)。そして、A〔ofs〕からA〔width
−1〕のすべての要素が優勢シンボルのときステップS
4へ進み、ひとつでも劣勢シンボルが含まれているとき
は、ステップS5へ進む。
【0048】予測が的中した場合、符号語として予測当
たり信号“0”を出力し、配列Aに取り込んだ系列の符
号化を完了する(ステップS4)。一方、予測はずれた
場合、符号語として予測はずれ信号“1”を出力する
(ステップS5)。そして、widthが1以上か否か
を検出する(ステップS6)。widthが1以下なら
これ以上分割できないので、ステップS7の符号化サブ
ルーチンへは移行せずステップS8へ移行する。一方、
widthが1を超えていると、図5の符号化サブルー
チンを呼び出す(ステップS7)。
【0049】ステップS8では、予測runの再設定と
必要ならば優勢シンボルの変更を行う。すなわち、この
ステップS8においては、基本的には予測が的中すれ
ば、runを大きくし、はずれれば小さくする。そして
runを小さくしても予測が所定回数はずれ続けるよう
なら、優勢シンボルの変更を行う。なお、予測の的中や
予測のはずれをどのように評価するかについては、さま
ざまな方法を採用することができる。たとえば、予測が
はずれた場合、直ちにrunを小さくしたり、2回以上
連続してはずれたとき、初めてrunを小さくする等の
方法を採用することができる。さらに、前半部系列もし
くは後半部系列のみはずれた場合と、両方はずれた場合
とでrunの縮小の度合いを異ならせる方法も採用でき
る。また、符号済みビット系列で所定の確率テーブルを
引き、次の予測runを設定する等の方式も採用可能で
ある。
【0050】符号化メインルーチンで1次予測がはずれ
た場合は、ステップS7で図5に示す符号化サブルーチ
ンを呼び出す。符号化サブルーチンへ渡す引き数は、o
fsとwidthである。以下、符号化サブルーチンの
各ステップについて説明する。
【0051】符号化サブルーチンでは、予測を前半部系
列と後半部系列に分けて行うため、予測の範囲を半分に
する(ステップS10)。すなわち、親ルーチンから引
き数として受け取ったwidthを1/2にする。そし
て、次のステップS11で、前半部系列(配列のA〔o
fs〕からA〔ofs+width−1〕まで)がすべ
て優勢シンボルか否かをチェックする。すべて優勢シン
ボルならステップS12へ進む。ひとつでも劣勢シンボ
ルが存在したら、直ちにステップS14へ進む。
【0052】前半部系列がすべて優勢シンボルなら、符
号語として“0”を出力する(ステップS12)。そし
て、前半部系列の先頭位置を示すポインタofsにwi
dthを加え、後半部系列の先頭位置を示すように変更
する。また、前半部系列がすべて優勢シンボルのとき
は、後半部系列に必ず劣勢シンボルが存在するので、後
半部系列の予測がはずれたことを示す符号語“1”を出
力する必要がない。したがって、後述するステップS2
0はスキップし、ステップS21に進む。
【0053】一方、前半部系列に劣勢シンボルが存在す
る場合、符号語として“1”を出力する(ステップS1
4)。次に、widthが1を超えているか否かをチェ
ックする(ステップS15)。1以下の場合、これ以上
分割できないので、子の符号化サブルーチン(ステップ
S16)の呼び出しをスキップし、ステップS17へ移
行する。なお、widthが2以上なら、さらに系列を
2つに分け、それぞれを符号化しなければならない。そ
のための子の符号化サブルーチンを呼び出す(ステップ
S16)。子の符号化サブルーチンは、図5に示した符
号化サブルーチンと全く同一となっている。つまり、こ
こでは、同一ルーチン(関数)の再帰呼び出しを行う。
【0054】符号化サブルーチンの再帰呼び出しによっ
て前半部系列の符号化を終了すると、前半部系列の先頭
位置を示すポインタofsにステップS10で設定した
widthを加え、後半部系列の先頭位置を示すように
変更する(ステップS17)。その後、後半部系列(配
列のA〔ofs〕からA〔ofs+width−1〕ま
で)がすべて優勢シンボルか否かをチェックする(ステ
ップS18)。すべて優勢シンボルならステップS19
へ進む。ひとつでも劣勢シンボルが存在したら、直ちに
ステップS20へ進む。そして、後半部系列がすべて優
勢シンボルなら、符号語として“0”を出力する(ステ
ップS19)。
【0055】一方、前半部系列に劣勢シンボルが存在す
る場合、符号語として“1”を出力する(ステップS2
0)。そして、次に、widthが1を超えているか否
かをチェックする(ステップS21)。1以下の場合、
これ以上分割できないので、子の符号化サブルーチンを
実行するステップS22をスキップし、次の注目系列の
符号化工程へリターンする。なお、後半部系列について
も、widthが2以上なら、さらに系列を2つに分
け、それぞれ符号化する。そのため図5に示す符号化サ
ブルーチンと同一の子の符号化サブルーチンを呼び出す
(ステップS22)。この符号化サブルーチンの再帰呼
び出しによって後半部系列の符号化を実行する。
【0056】以上のような符号化プロセスの具体例を次
に説明する。すなわち、符号化の具体例として、予測の
初期値runを8、優勢シンボルを“0”として、“0
0001001”として表される入力ビットを符号化す
る場合について説明する。
【0057】まず、図4の符号化メインルーチンのステ
ップS2で、A
〔0〕からA〔7〕に、上記の入力ビッ
トを入力する。ステップS3では、A
〔0〕からA
〔7〕のすべてが“0”かどうか判定する。上の例の場
合、ビット列に“1”が含まれているので、ステップS
5に移行し、まず符号語として“1”を出力する。続い
てステップS6では、widthの大きさをチェックす
るが、widthはこのとき8なので、符号化サブルー
チン(ステップS7)に進む。
【0058】符号化サブルーチンでは、まずステップS
10で、widthを1/2の4に設定する。そしてス
テップS11で、入力ビットの前半部、つまりA
〔0〕
からA〔3〕がすべて0かどうかチェックする。この場
合、すべて“0”なのでステップS12に進み、符号語
として“0”を出力する。以上で前半部系列の符号化が
完了する。続いてステップS13を実行し、後半部系列
の符号化に移るが、前半部系列がすべて“0”の場合、
後半部系列に“1”が含まれるのは明らかである。した
がって、ステップS21でwidthが1以下でない限
り後半部系列をさらに分割して符号化しなければならな
い。そこで、符号化サブルーチンを子プロセスとしてス
テップS22で再び呼び出す。なお、そのための前処理
として、上述したようにステップS13では、ofsに
widthを加え、ofsを後半部系列の先頭位置にセ
ットする。
【0059】ステップS22では、ofsとwidth
を引き数として子の符号化サブルーチンを呼び出す。子
の符号化サブルーチンを実行するステップS22では、
まず、図5に示す符号化サブルーチンのステップS10
でwidthをさらに半分にして2に変更する。次のス
テップS11では、前半部系列、すなわちA〔4〕とA
〔5〕が共に“0”であるか否かをチェックする。この
場合、A〔4〕が“1”なので、次のステップS14に
移行し、符号語として“1”を出力する。そしてステッ
プS15でwidthが1を超えていると判断し、孫プ
ロセスをステップS16で呼び出す。孫の符号化サブル
ーチンでは、まずステップS10においてwidthが
1となる。A〔4〕は“1”なのでステップS11から
ステップS14へ処理が移り、符号語“1”を出力す
る。ステップS15では、widthが1以下なので、
ステップS16をスキップし、ステップS17でofs
を5に変更する。A〔5〕は“0”なのでステップS1
8からステップS19に処理が移り、符号語“0”を出
力する。
【0060】次に、この孫の符号化サブルーチンから抜
けて、子の符号化サブルーチンのステップS17に戻
る。子の符号化サブルーチンのofsは4、width
は2であるから、ステップS17でofsは6に変更さ
れる。したがってステップS18では、A〔6〕とA
〔7〕をチェックすることになる。この場合、A〔7〕
が“1”なのでステップS20へ移行し、符号語“1”
を出力する。そして、再び孫の符号化サブルーチンをス
テップS22で呼び出す。孫の符号化サブルーチンで
は、A〔6〕が“0”なのでステップS12で符号語
“0”を出力する。そして、widthが1なので、ス
テップS22をスキップして子の符号化サブルーチンに
復帰する。
【0061】子の符号化サブルーチンに復帰したプロセ
スは、さらに符号化メインルーチンに復帰し、ステップ
S8で予測runの再設定と、優勢シンボルの再設定を
行う。この例の場合、1次予測ははずれたが、2次予測
で前半部が的中したので、runを8から4に変更し、
優勢シンボルは引き続き“0”とする処理を施す。な
お、予測runの設定は、2回続けてはずれたときに変
更する等の設定にしても良い。
【0062】以上のような符号化プロセスによって、入
力ビットである“00001001”が“101101
0”の符号化系列となる。したがってこの場合、8ビッ
トの入力系列が7ビットに圧縮されたことになる。
【0063】次に、以上のような符号化プロセスを行わ
せるデータ符号化装置を図6に基づいて説明する。
【0064】このデータ符号化装置は、図4および図5
で説明した入力ビットに相当する入力ビット系列1を、
後述する入出力制御信号発生部5の指示により、一時記
憶するレジスタ群であるバッファレジスタ2と、このバ
ッファレジスタ2のデータおよび後述する予測ビット長
演算部4のデータを入力し比較する判定部3と、図4お
よび図5で説明した2つの変数ofsとwidthを保
持するレジスタAとレジスタBを内蔵する予測ビット長
演算部4と、入出力を制御する入出力制御信号発生部5
と、刻々変化するwidthの値を保持しておくための
メモリであるスタック・メモリ6と、予測ビット長とな
るrunと優勢シンボルを設定する予測ビット長・優勢
シンボル設定部7とから主に構成される。
【0065】バッファレジスタ2は、少なくとも、予測
ビット長・優勢シンボル設定部7が設定する最大予測ビ
ット長runに対応するビット数の入力ビット系列1を
記憶する容量を持っている。また、予測ビット長・優勢
シンボル設定部7の指示で、入力ビット系列1を反転さ
せて入力する機能も持っている。
【0066】判定部3は、予測ビット長演算部4が出力
するバッファレジスタ2上の位置ofsと、そのofs
から予測の対象となるビット数を示すwidthにより
定まるバッファレジスタ2上の入力ビット系列1を選択
し、それらがすべて“0”のとき、符号ビット10とし
て、すなわち予測当たり信号の符号語として“0”を出
力し、“1”が含まれるとき予測はずれ信号として
“1”を出力する。
【0067】予測ビット長演算部4は、上述のとおり2
つの変数ofsとwidthを保持するレジスタAとレ
ジスタBを内蔵する。これらの変数のうちwidth
は、入出力制御信号発生部5より入力する符号化開始信
号を受けて、予測ビット長・優勢シンボル設定部7が出
力する1次予測のためのビット長runに設定され、一
方、ofsは0に初期化される。
【0068】この初期化後、次のサイクルより、予測ビ
ット長演算部4は、このofsとwidthで定まるバ
ッファレジスタ2上の入力ビット系列1の論理を判定部
3に調べさせ、その判定結果を取り込む。判定結果が
“1”のとき、すなわち、予測がはずれたときは、レジ
スタBのwidthを1/2にすると同時に、その値を
スタック・メモリ6に書き込む。ただし、widthが
すでに1のときはこの限りでなく、このときは、レジス
タAのofsにレジスタBのwidth、すなわち1を
加算し、さらに、スタック・メモリ6より直前に書き込
んだwidthの値を読み出し、レジスタBにストアす
る。
【0069】判定結果が“0”の場合、すなわち、予測
が的中したときは、レジスタAのofsにレジスタBの
widthを加算し、さらに、スタック・メモリ6より
直前に書き込んだwidthの値を読み出し、レジスタ
Bにストアする。上述の処理は各サイクル毎に、入力ビ
ット系列1を判定しながら進められる。また、上述の符
号化処理を進めるにつれ、レジスタAのofsが徐々に
大きくなって行くが、このofsが一時予測runと等
しくなったとき、バッファレジスタ2に取り込んだ入力
ビット系列1の符号化が完了する。したがってこの時、
符号化完了の旨を伝える信号を入出力制御信号発生部5
に送り、入出力制御信号発生部5は、これを受けて、入
力ビット要求信号8をアクティブにし、同時にバッファ
レジスタ2に新たな入力ビット系列1の取り込みを指示
する。
【0070】入出力制御信号発生部5は、初期状態もし
くはバッファレジスタ2内の入力ビット系列1の符号化
が完了した旨の信号を予測ビット長演算部4より受けた
とき、入力ビット要求信号8をアクティブにすると共
に、バッファレジスタ2に対して、予測ビット長・優勢
シンボル設定部7により入力する予測runで示される
個数の入力ビット系列1の取り込みを指示する。そし
て、バッファレジスタ2に予測runで示される個数の
ビットが入力されると、今度は、符号化開始信号を予測
ビット長演算部4に対して出力する。また、その出力と
1サイクル遅れで符号化完了まで、同期信号となるスト
ローブ信号9をアクティブにする。
【0071】スタック・メモリ6は、上述のように刻々
変化するwidthの値を保持しておくためのメモリ
で、いわゆる先入れ後出しメモリである。すなわち、一
番最初に書き込んだ値を一番最後に出力するメモリ、逆
に言えば、一番最近書き込んだ値を一番最初に出力する
メモリである。このスタック・メモリ6には刻々変化す
るwidthの値が書き込まれる。
【0072】予測ビット長・優勢シンボル設定部7は、
予測ビット長演算部4から、過去の符号化の状態(予測
がどの程度的中したか、あるいは、どの程度はずれたか
等)を入力し、新たに入力するビット系列1の予測ビッ
ト長runと優勢シンボルを設定する。予測ビット長r
unは、予測ビット長演算部4へ入力し、優勢シンボル
設定信号はバッファレジスタ2へ入力する。
【0073】以上のような構成のデータ符号化装置によ
って先に示した符号化プロセスが実行される。そして、
この符号化プロセスの圧縮率と符号化時間を図7に示
す。この図7は、4種類のファイルについて本発明の符
号化プロセスを使用した場合の圧縮率と符号化時間を示
すと共に参考として、従来のQMコーダの圧縮率と符号
化時間も示すものとなっている。図7に示されるように
本発明のものは、圧縮率がQMコーダと同レベルであ
り、符号化時間は大幅に短縮されたものとなっている。
【0074】次に、本発明の復号化プロセスについて説
明する。復号化プロセスは、図8の復号化メインルーチ
ンと図9の復号化サブルーチンにより構成される。な
お、図9の復号化サブルーチンは、図5の符号化サブル
ーチンと同様、同じルーチン内で再帰呼び出しがおこな
われる。
【0075】まず図8の復号化メインルーチンの各ステ
ップについて説明する。最初に、予測の初期値runの
設定と優勢シンボルの選択を行う(ステップS30)。
なお、これらの値は当然符号化側と同じ値に設定する。
次に、ローカル変数ofsに0を、widthにrun
を代入する(ステップS31)。そして、符号ビット出
力10となる符号語を1ビット入力する(ステップS3
2)。次に、ステップS33で、符号語の論理をチェッ
クする。“0”ならステップS34へ移り、“1”なら
ステップS35へ進む。ここで、符号語“0”は予測が
的中したことを示す予測当たり信号となる。
【0076】符号語が“0”のときは、A〔ofs〕か
らA〔width−1〕まで優勢シンボルを書き込む
(ステップS34)。一方、符号語“1”は、予測がは
ずれたことを示す。そして、このときは、まず、wid
thの大きさをチェックし、1を超えていれば分割し、
再予測可能なのでステップS37に進み、復号化サブル
ーチンを呼び出す。1以下ならステップS36へ進み、
劣勢シンボルをA〔ofs〕に書き込む。
【0077】ステップS38では、予測runの再設定
と必要ならば優勢シンボルの変更を行う。この再設定お
よび変更は、当然符号化側と同じ規則にしたがって実行
される。ステップS38の次に、ステップS39におい
て、A〔ofs〕からA〔width−1〕の復号デー
タを出力する。
【0078】図8に示す復号化メインルーチンにおける
ステップS33の1次予測の判定で、予測がはずれた場
合は、ステップS37で、図9の復号化サブルーチンを
呼び出す。この復号化サブルーチンへ渡す引き数は、o
fsとwidthである。以下、復号化サブルーチンの
各ステップについて説明する。
【0079】まずwidthを1/2にして予測範囲を
2分割する(ステップS40)。次に、符号語を1ビッ
ト入力する(ステップS41)。なお、このビットは前
半部系列の予測結果である。次のステップS42におい
て入力した符号語の論理をチェックする。“0”の場合
はステップS43へ、“1”の場合はステップS45へ
移る。ここで符号語“0”は、予測が的中したことを示
す。したがって、前半部系列、すなわちA〔ofs〕か
らA〔ofs+width−1〕に優勢シンボルを書き
込む(ステップS43)。次に、ステップS44におい
て、前半部系列の先頭位置を示すポインタofsにwi
dthを加え、後半部系列の先頭位置を示すように変更
する。また、前半部系列の予測が的中した場合、後半部
系列に必ず劣勢シンボルが存在する。したがって、後半
部系列の予測判定を行うステップS49と、ステップS
50をスキップしてステップS52へ進む。
【0080】一方、符号語が“1”のとき、ステップS
42からステップS45へ移行し、widthの大きさ
をチェックする。1以下の場合、これ以上分割予測する
必要がない、すなわち復号ビットが確定したのでステッ
プS46に進む。2以上の場合は、さらに分割し予測す
る必要があるため、ステップS47で復号化サブルーチ
ンを呼び出す。ステップS46では、A〔ofs〕に劣
勢シンボルを書き込む。また、ステップS47では子プ
ロセスとして復号化サブルーチンを再帰呼び出しする。
【0081】ステップS46またはステップS47に続
いて、ステップS48が実行される。このステップS4
8では、前半部系列の先頭位置を示すポインタofsに
widthを加え、後半部系列の先頭位置を示すように
変更する。次に、符号語を1ビット入力する(ステップ
S49)。このビットは後半部系列の予測結果である。
ステップS50で、入力した符号語の論理をチェックす
る。“0”の場合はステップS51へ、“1”の場合は
ステップS52へ進む。
【0082】ここで符号語“0”は、予測が的中したこ
とを示す。したがって、後半部系列、すなわちA〔of
s〕からA〔ofs+width−1〕に優勢シンボル
を入力する(ステップS51)。一方、符号語が“1”
のとき、ステップS52へ進み、widthの大きさを
チェックする。“1”以下の場合、これ以上分割予測す
る必要がない、すなわち復号ビットが確定したので、ス
テップS53に移り、A〔ofs〕に劣勢シンボルを書
き込む。2以上の場合は、さらに分割し予測する必要が
あるため、ステップS54で子プロセスとして復号化サ
ブルーチンを呼び出す。
【0083】次に、この復号化プロセスを具体例に基づ
いて説明する。すなわち、先ほどの符号化の具体例で得
られた“1011010”の符号ビット出力10を用い
て、具体的に復号化プロセスを説明する。なお、符号化
時と同様、予測の初期値runを8、優勢シンボルを0
として復号を実行する。
【0084】まず、ステップS32で最初の符号ビット
を入力する。これは“1”なのでステップS35に進
み、widthの大きさをチェックする。このときwi
dthは8だからステップS37で、復号化サブルーチ
ンを呼び出す。この復号化サブルーチンでは、ステップ
S40でwidthを半分の4に変更した後、ステップ
S41で2番目の符号ビットを入力する。これは“0”
なのでステップS43に進み、ここで前半部系列、すな
わちA
〔0〕からA〔3〕に“0”を書き込む。続くス
テップS44でofsを4に変更した後、ステップS5
2からステップS54へと進む。このステップS54に
おいて、子プロセスとして子の復号化サブルーチンを呼
び出す。
【0085】子の復号化サブルーチンでは、ステップS
40でwidthをさらに半分にし2に変更した後、ス
テップS41で3番目の符号ビットを入力する。これは
“1”なのでステップS45を経由してステップS47
で、孫プロセスとして孫の復号化サブルーチンを呼び出
す。この孫の復号化サブルーチンでは、ステップS40
でwidthが1に変更された後、ステップS41で4
番目の符号ビットを入力する。これは“1”なのでステ
ップS45へ進む。このときwidthが1なので、ス
テップS46へ進み、ここでA〔4〕に1を書き込む。
続いてステップS48で、ofsを5に変更した後、ス
テップS49で5番目の符号ビットを入力する。これは
“0”なのでステップS51に進み、ここでA〔5〕に
“0”を書き込む。
【0086】その後、子の復号化サブルーチンへ復帰
し、ステップS48でofsを4から6に変更する。続
くステップS49では6番目の符号ビットを入力する。
これは“1”なので、ステップS52を経由してステッ
プ54へ進み、ここで再び孫プロセスとして孫の復号化
サブルーチンを呼び出す。孫の復号化サブルーチンは、
まずステップS40でwidthが1に変更された後、
ステップS41で7番目の符号ビットを入力する。この
ビットは“0”なのでステップS43でA〔6〕に0を
書き込む。続くステップS44でofsを7に変更し、
ステップS52では、widthが“1”なので、ステ
ップS53に進み、ここでA〔7〕に1を書き込む。
【0087】この後、子の復号化サブルーチンおよび復
号化サブルーチンに復帰し、さらに復号化メインルーチ
ンに復帰する。復帰した復号化メインルーチンでは、ス
テップS38で予測runの再設定と優勢シンボルの再
設定を行う。そして、ステップS39で復号化データを
〔0〕からA〔7〕より出力する。
【0088】以上の復号化プロセスにより得られた復号
化データは、“00001001”であり、もとの入力
ビット系列1が復元されることとなる。
【0089】次に、以上のような復号化プロセスを行わ
せるデータ復号化装置について、図10に基づいて説明
する。
【0090】このデータ復号化装置は、予測ビット長で
あるrunと優勢シンボルを設定する予測ビット長・優
勢シンボル設定部11と、2つの変数ofsとwidt
hを保持するレジスタAとレジスタBを内蔵する予測ビ
ット長演算部12と、刻々変化するwidthの値を保
持しておくためのメモリであるスタック・メモリ13
と、入出力を制御する入出力制御信号発生部14と、復
号ビットを設定する復号ビット設定部15とから主に構
成されている。
【0091】ここで、予測ビット長・優勢シンボル設定
部11は、予測ビット長演算部12より、過去の復号の
状態(予測がどの程度的中したか、あるいは、どの程度
はずれたか等)を入力し、新たに入力する符号ビット1
0の予測ビット長runと優勢シンボルを設定する。予
測ビット長runは、予測ビット長演算部12へ入力
し、優勢シンボル設定信号は復号ビット設定部15に入
力する。
【0092】予測ビット長演算部12は、上述したとお
り、2つの変数ofsとwidthを保持するレジスタ
AとレジスタBを内蔵するものとなっている。widt
hは、予測ビット長・優勢シンボル設定部11が設定す
る1次予測のためのビット長runが設定され、ofs
は0に初期化される。レジスタB、すなわちwidth
の値は、入出力制御信号発生部14に供給される。一
方、初期化後、入力した符号ビット10が“1”で、か
つwidthが2以上の時、widthを1/2して、
スタック・メモリ13に書き込む。ただし、width
が1の場合は、復号ビット出力許可信号を復号ビット設
定部15と入出力制御信号発生部14に出力し、同時に
レジスタAのofsにレジスタBのwidthを加算
後、スタック・メモリ13から直前に書き込んだwid
thを読み出し、レジスタBに保持させる。
【0093】また、符号ビット10が“0”の場合、復
号ビット出力許可信号を復号ビット設定部15と入出力
制御信号発生部14に出力し、同時にレジスタAのof
sにレジスタBのwidthを加算後、スタック・メモ
リ13から直前に書き込んだwidthを読み出し、レ
ジスタBに保持させる。そして、ofsは復号が進むに
つれ、徐々に大きくなって行く。そこで、このofsと
runが等しくなったとき、ひとつの予測単位の符号ビ
ット10の復号が完了したことを示す信号を発生し、こ
の信号を予測ビット長・優勢シンボル設定部11に出力
する。予測ビット長・優勢シンボル設定部11は、この
信号を受けて、次の符号ビット10のための予測ビット
長runの再設定や優勢シンボルの再設定を行う。
【0094】スタック・メモリ13は、上述のように刻
々変化するwidthの値を保持しておくためのメモリ
で、いわゆる先入れ後出しメモリである。すなわち、一
番最初に書き込んだ値を一番最後に出力するメモリ、逆
に言えば、一番最近書き込んだ値を一番最初に出力する
メモリとなっている。
【0095】入出力制御信号発生部14は、有効な復号
ビット20を出力中であることを示すストローブ信号1
6を発生するブロックである。予測ビット長演算部12
より、復号ビット出力許可信号を受けて、そのときwi
dthで指定された期間、ストローブ信号16を出力す
る。また、ストローブ信号16が、2サイクル以上アク
ティブとなる場合は、2サイクル目から符号ビット要求
信号17をノン・アクティブにして、新たな符号ビット
10の入力を抑制すると同時に、予測ビット長演算部1
2の動作も一時停止させる。
【0096】復号ビット設定部15は、予測ビット長演
算部12からの復号ビット出力許可信号を受けて、その
とき入力中の符号ビット10を一時保持するレジスタで
構成される。また、予測ビット長・優勢シンボル設定部
11の指示により、必要に応じて復号ビット20を反転
させる。
【0097】以上のような構成のデータ復号化装置によ
って先に示した復号化プロセスが実行される。この復号
化プロセスを使用した場合の復号化時間は、図7に示す
符号化時間と同様、QMコーダに比べ非常に短くなって
いる。すなわち、復号化プロセスは、符号化プロセスと
逆のアルゴリズムを使用するため、符号化時間が短縮さ
れれば、復号化時間も短縮されることとなる。
【0098】なお、上述の各実施の形態は、本発明の好
適な実施の形態の例であるが、これに限定されるもので
はなく、本発明の要旨を逸脱しない範囲において、種々
変形実施可能である。例えば、予測が当たったときに出
力する符号語としては“0”ではなく“1”とし、予測
がはずれたときは“1”ではなく0”としたり、予測が
当たったときは優勢シンボルを出力し、予測がはずれた
ときは劣勢シンボルを出力するようにしても良い。ま
た、新減少予測ビット数を元の予測ビット数の1/2で
はなく、1/3や1/4等にしたり、元の予測ビット数
から所定数を差し引いた数等とすることができる。一
方、新増加予測ビット数も元の予測ビット数の2倍では
なく、3倍や4倍等にしたり、元の予測ビット数に所定
数を加えた数等とすることができる。なお、新増加予測
ビット数を無制限とせず、所定の値、例えば256ビッ
ト等、2の倍数を最大値とするようにしても良い。ま
た、新減少予測ビット数の最小値としては1ではなく、
2や3等他の数値としても良い。また、分割符号化工程
において、分割を2分割ではなく、3分割や4分割等に
したり、前半部注目系列と後半部注目系列とを不均等に
分割しても良い。さらに、予測がはずれたときの分割等
の再帰的繰り返しをビット数が1になるまで行うのでは
なく、ビット数が2や3等の数になったら終了させ、そ
の後は、入力ビット系列1をそのまま出力させたり、Q
Mコーダで符号化したりするようにしても良い。
【0099】さらに、上述の実施の形態では、予測がは
ずれた場合、まず、前半部に注目して前半部の符号化を
行い、続いて後半部の符号化を行っているが、まず後半
部から符号化や復号化を行うようにしても良い。すなわ
ち、すべて、後半部を優先して、符号化および復号化を
行うようにしても良い。また、優先部分を前半部にした
り、後半部にしたり、適宜混ぜ合わせて符号化および復
号化を行うようにしても良い。
【0100】さらに、上述の実施の形態では、予測ビッ
ト数runで定まる注目系列がすべて優勢シンボルと予
測し、予測が当たった場合は、符号語として、“0”等
を出力し、はずれた場合は、“1”等を出力すると共
に、さらに系列を2分割し、予測が的中するか分割が不
可能になるまで、同様の操作を行い、符号化を行ってい
る。しかし、予測ビット数が比較的短いもの、例えば、
1、2、4、8等の場合は、予め、符号化テーブルを用
意しておき、そのテーブルを参照することによって、1
サイクルで符号化を行うようにしても良い。例えば、予
測ビット数が2のときで、優勢シンボルを“0”とした
場合、入力ビット系列1が“00”のとき、符号ビット
10は“0”となり、“01”のときは“10”とな
り、“10”のときは“110”となり、“11”のと
きは“111”となるので、この関係を予め符号化テー
ブルとして用意しておくようにするものである。このよ
うな方法を交えることにより、さらに符号化時間を短縮
することができる。この場合、予測ビット数runによ
って、符号化テーブルを選択し符号化を行えば、上述の
実施の形態と同様な符号ビット10が得られる。また、
復号化においても同様に、復号化テーブルを用意し、予
測ビット数runで選択されるテーブルを参照すること
で、復号化時間を短縮した復号化を行うことができる。
【0101】また、本発明はいわば予測ランレングス符
号化方式とも言えるものであるが、この予測ランレング
ス符号化方式は、2値の系列データ以外に多値系列につ
いても適用することができる。すなわち、多値系列のデ
ータを工夫によって2値のビット列として扱うようにす
れば本発明の予測ランレングス符号化方式および復号化
方式を適用することができる。例えば、ビット・プレー
ンに分けて、各ビット・プレーンをこの予測ランレング
ス符号化方式で符号化するようにしても良い。また、最
上位ビットからプレーン毎にこの予測ランレングス符号
化方式にて符号化を行い、“1”が出現した時点で続く
下位ビットを直接ストリームに出力するようにしても良
い。
【0102】また、この予測ランレングス符号化方式を
多値系列に適用する方式としては、ビット・プレーンで
はなくレベル・プレーン、例えばシンボルが8ビットの
場合、256のレベル・プレーンに分けて行う方法もあ
る。例えば、入力シンボルをグループに分け、グループ
番号をこの予測ランレングス符号化方式で符号化する方
法が考えられる。具体的には、例えば、入力シンボルを
図11に示すように、グループ分けし、まず入力シンボ
ルがグループ番号0か0以外かを示す判定ビットをこの
予測ランレングス符号化方式で符号化する。もし入力シ
ンボルが0ならこのシンボルの符号化を完了するが、そ
うでない場合はさらにグループ番号が1か1以外かを示
す判定ビットをこの予測ランレングス符号化方式で符号
化する。このようにして、グループ番号が確定するま
で、判定ビットを予測ランレングス符号化方式で符号化
し、確定したグループ番号が2以上の場合は、必要とす
る付加ビットを直接ストリームに出力する。この方法
は、グループ番号が確定した時点で、上位の判定ビット
の符号化を行わないので、処理速度が向上する。
【0103】以上のような、多値系列への本発明の適用
は、データ符号化の場合に限らず当然のことながら、デ
ータ復号化の場合にも同様なアルゴリズムによって適用
することができる。
【0104】
【発明の効果】以上説明したように、本発明のデータ符
号化方法およびデータ符号化装置では、QMコーダ並み
の符号化効率が得られる一方、符号化速度がQMコーダ
に比べ非常に速いものとなる。このため、現在使用され
ている各種の2値ビット列圧縮方式の中で最も実用性の
面で優れたものとなる。
【0105】また、本発明のデータ復号化方法およびデ
ータ復号化装置では、同様に、QMコーダ並みの伸長効
率が得られる一方、復号化速度がQMコーダに比べ非常
に速いものとなる。このため、現在利用されている各種
の2値ビット列復号方式の中で、実用上最も優れたもの
となり、利便性が向上する。
【図面の簡単な説明】
【図1】本発明のアルゴリズムの概要を説明するための
図で、注目系列と予測ビット数runとの関係を示す図
である。
【図2】本発明のアルゴリズムの概要を説明するための
図で、図1の注目系列を分割した状態を示す図である。
【図3】本発明のアルゴリズムの概要を説明するための
図で、図2の前半部注目系列をさらに分割した状態を示
す図である。
【図4】本発明の符号化プロセスを説明するためのフロ
ーチャートで、符号化メインルーチンを示すフローチャ
ートである。
【図5】本発明の符号化プロセスを説明するためのフロ
ーチャートで、符号化サブルーチンを示すフローチャー
トである。
【図6】本発明のデータ符号化装置の実施の形態の構成
を示すブロック図である。
【図7】本発明のデータ符号化方法およびデータ符号化
装置による圧縮率と符号化時間を示す図である。
【図8】本発明の復号化プロセスを説明するためのフロ
ーチャートで、復号化メインルーチンを示すフローチャ
ートである。
【図9】本発明の復号化プロセスを説明するためのフロ
ーチャートで、復号化サブルーチンを示すフローチャー
トである。
【図10】本発明のデータ復号化装置の実施の形態の構
成を示すブロック図である。
【図11】本発明のアルゴリズムを多値系列データに適
用する場合の1列を説明するための図で、入力シンボル
を複数のグループに分けた状態を示す図である。
【図12】従来の算術符号型のエントロピー符号器であ
るQMコーダの構成を示す図である。
【図13】図12のQMコーダの動作を示すフローチャ
ートである。
【符号の説明】
1 入力ビット系列 2 バッファレジスタ 3 判定部 4 予測ビット長演算部 5 入出力制御信号発生部 6 スタック・メモリ 7 予測ビット長・優勢シンボル設定部 8 入力ビット要求信号 9 ストローブ信号 10 符号ビット 11 予測ビット・優勢シンボル設定部 12 予測ビット長演算部 13 スタック・メモリ 14 入出力制御信号発生部 15 復号ビット設定部 16 ストローブ信号 17 符号ビット要求信号 20 復号ビット run 予測ビット数

Claims (16)

    (57)【特許請求の範囲】
  1. 【請求項1】 “0”および“1”からなる2値のビッ
    ト列を入力する際、“0”または“1”のいずれか一方
    を優勢シンボルとし、いずれか他方を劣勢シンボルとす
    ると共に、その優勢シンボルがn個連続すると予測し、
    そのn個を予測ビット数として設定する予測設定工程
    と、入力された上記予測ビット数からなる注目系列につ
    いて予測が当たったときに符号語として“0”または
    “1”のいずれか一方の信号を予測当たり信号として出
    力し、次のn個のビット列を符号化する作業に移り、は
    ずれたときに符号語として“0”または“1”のいずれ
    か他方の信号を予測はずれ信号として出力する予測結果
    出力工程と、予測が所定回数はずれたときに上記予測ビ
    ット数をn個より少ない新減少予測ビット数として同様
    の予測設定工程と予測出力工程とを再帰的に繰り返すこ
    とを特徴とするデータ符号化方法。
  2. 【請求項2】 前記n個を偶数個とし、前記予測が所定
    回数はずれたときに前記注目系列を2分割し、その2分
    割された前半部の前半部注目系列のみに劣勢シンボルが
    存在するとき、前記新減少予測ビット数を前記予測ビッ
    ト数の1/2とし、2分割された後半部の後半部注目系
    列に劣勢シンボルが存在するとき前記新減少予測ビット
    数を前記予測ビット数の1/4としたことを特徴とする
    請求項1記載のデータ符号化方法。
  3. 【請求項3】 前記新減少予測ビット数が1となり、か
    つそのビットが劣勢シンボルのとき、以降の符号化にお
    いて従来の劣勢シンボルを優勢シンボルとし、従来の優
    勢シンボルを劣勢シンボルとして符号化するようにした
    ことを特徴とする請求項1または2記載のデータ符号化
    方法。
  4. 【請求項4】 前記所定回数を1回としたことを特徴と
    する請求項1、2または3記載のデータ符号化方法。
  5. 【請求項5】 “0”および“1”からなる2値のビッ
    ト列を入力する際、“0”または“1”のいずれか一方
    を優勢シンボルとし、いずれか他方を劣勢シンボルとす
    ると共に、その優勢シンボルがn個連続すると予測し、
    そのn個を予測ビット数として設定する予測設定工程
    と、入力されたn個のビット列からなる注目系列につい
    て予測が当たったときに符号語として“0”または
    “1”のいず れか一方の信号を予測当たり信号として出
    力し、次のn個のビット列を符号化する作業に移り、は
    ずれたときに符号語として“0”または“1”のいずれ
    か他方の信号を予測はずれ信号として出力する予測結果
    出力工程と、予測が規定回数当たったときに、上記予測
    ビット数をn個より多い新増加予測ビット数として同様
    の予測設定工程と予測結果出力工程とを繰り返し行うこ
    とを特徴とするデータ符号化方法。
  6. 【請求項6】“0”および“1”からなる2値のビット
    列を入力する際、“0”または“1”のいずれか一方を
    優勢シンボルとし、いずれか他方を劣勢シンボルとする
    と共に、その優勢シンボルがn個連続すると予測し、そ
    のn個を予測ビット数として設定する予測設定工程と、
    入力された上記予測ビット数からなる注目系列について
    予測が当たったときに符号語として“0”または“1”
    のいずれか一方の信号を予測当たり信号として出力し、
    次のn個のビット列を符号化する作業に移り、はずれた
    ときに符号語として“0”または“1”のいずれか他方
    の信号を予測はずれ信号として出力する予測結果出力工
    程と、予測が所定回数はずれたときに上記予測ビット数
    をn個より少ない新減少予測ビット数として同様の予測
    設定工程と予測出力工程とを再帰的に繰り返し、前記予
    測が規定回数当たったときに、前記予測ビット数をn個
    より多い新増加予測ビット数とすることを特徴とするデ
    ータ符号化方法。
  7. 【請求項7】 前記規定回数を2回とし、前記新増加予
    測ビット数を前記予測ビット数の2倍としたことを特徴
    とする請求項5または6記載のデータ符号化方法。
  8. 【請求項8】 前記n個を2m(mは0以上の整数)と
    したことを特徴とする請求項1、2、3、4、5、6ま
    たは7記載のデータ符号化方法。
  9. 【請求項9】 前記予測がはずれたとき前記注目系列を
    2分割し、2分割された前半部の前半部注目系列がすべ
    て前記優勢シンボルのときは符号語として“0”を出力
    し、2分割された後半部の後半部注目系列をさらに2分
    割し、“0”または“1”の符号語を出力する前半部当
    たり工程と、上記前半部注目系列に前記劣勢シンボルが
    存在するときは符号語として“1”を出力すると共に、
    上記前半部注目系列をさらに2分割し、“0”または
    “1”の符号語を出力する前半部はずれ工程とを有し、
    各分割された注目系列中に劣勢シンボルが存在する限
    り、その注目系列の分割を繰り返し、前記前半部当たり
    工程と前記前半部はずれ工程を再帰的に繰り返すことを
    特徴とする請求項8記載のデータ符号化方法。
  10. 【請求項10】 前記予測がはずれたとき前記注目系列
    を2分割し、2分割された後半部の後半部注目系列がす
    べて前記優勢シンボルのときは符号語として“0”を出
    力し、2分割された前半部の前半部注目系列をさらに2
    分割し、“0”または“1”の符号語を出力する後半部
    当たり工程と、上記後半部注目系列に前記劣勢シンボル
    が存在するときは符号語として“1”を出力すると共
    に、上記後半部注目系列をさらに2分割し、“0”また
    は“1”の符号語を出力する後半部はずれ工程とを有
    し、各分割された注目系列中に劣勢シンボルが存在する
    限り、その注目系列の分割を繰り返し、前記後半部当た
    り工程と前記後半部はずれ工程を再帰的に繰り返すこと
    を特徴とする請求項8記載のデータ符号化方法。
  11. 【請求項11】 “0”および“1”からなる2値の入
    力ビット系列を圧縮して符号化するデータ符号化装置に
    おいて、“0”または“1”のいずれか一方を優勢シン
    ボルとし、いずれか他方を劣勢シンボルとすると共にそ
    の優勢シンボルがn個連続すると予測し、そのn個を予
    測ビット数として設定する予測ビット長等演算設定部
    と、入力ビット系列を一時記憶するバッファレジスタ
    と、上記予測ビット長等演算設定部および上記バッファ
    レジスタの各値を入力し、その入力された上記予測ビッ
    ト数からなる注目系列について予測が当たったときに符
    号語として“0”または“1”のいずれか一方の信号を
    予測当たり信号として出力し、はずれたときに符号語と
    して“0”または“1”のいずれか他方の信号を予測は
    ずれ信号として出力する判定部とを備え、上記予測が所
    定回数はずれたときに上記予測ビット数をn個より少な
    い新減少予測ビット数を上記予測ビット長等演算設定部
    で設定し、上記予測が規定回数当たったときに、上記予
    測ビット数をn個より多い新増加予測ビット数を上記予
    測ビット長等演算設定部で設定することを特徴とするデ
    ータ符号化装置。
  12. 【請求項12】 入力ビット系列を一時記憶するレジス
    タ群よりなるバッファレジスタと、符号化する注目系列
    の先頭位置を示す変数ofsを保持するレジスタおよび
    予測ビット長を示す変数widthを保持するレジスタ
    を内蔵する予測ビット長演算部と、この予測ビット長演
    算部が出力する上記バッファレジスタ上のofsの位置
    およびそのofsから上記widthにより定まる上記
    バッファレジスタ上の入力ビット系列を選択し、その入
    力ビット系列がすべて優勢シンボルのとき符号ビット出
    力として1つの優勢シンボルを出力し、劣勢シンボルが
    含まれるときは1つの劣勢シンボルを出力する判定部
    と、上記バッファレジスタ内の入力ビット系列の符号化
    が完了した旨の完了信号を上記予測ビット長演算部より
    受けたとき入力ビット要求を行う入出力制御信号発生部
    と、刻々変化する上記widthの値を保持しておくた
    めのメモリとなるスタック・メモリと、上記予測ビット
    長演算部より過去の符号化の状態を入力し、新たに入力
    する入力ビット系列の予測ビット長と優勢シンボルを設
    定する予測ビット長・優勢シンボル設定部とを備え、上
    記入出力制御信号発生部は上記完了信号を上記予測ビッ
    ト長演算部より受けたとき上記バッファレジスタに対し
    て上記予測ビット長・演算シンボル設定部によって新た
    に設定された新予測ビット長で示される個数の入力ビッ
    ト系列の取り込みを指示することを特徴とするデータ符
    号化装置。
  13. 【請求項13】 符号化されたデータを入力し“0”お
    よび“1”からなる2値のビット列に復号化するデータ
    復号化方法において、“0”または“1”のいずれか一
    方を優勢シンボルとし、いずれか他方を劣勢シンボルと
    すると共に、その優勢シンボルがn個(nは1以上の整
    数)連続すると予測したその予測結果を“0”および
    “1”からなる2値のビット列で表した符号語を1ビッ
    トずつ入力する入力工程を有し、入力された符号語が予
    測当たりの値のとき上記優勢シンボルをn個連続して復
    号化すると共に、予測当たりが所定回数連続したときは
    上記n個より多い数の優勢シンボルが連続すると新たに
    予測するようにしたことを特徴とするデータ復号化方
    法。
  14. 【請求項14】 “0”または“1”のいずれか一方を
    優勢シンボルとし、いずれか他方を劣勢シンボルとする
    と共に、その優勢シンボルがn個(nは1以上の整数)
    連続すると予測したその予測結果を“0”および“1”
    からなる2値のビット列で表した符号語を1ビットずつ
    入力する入力工程と、入力された符号語が予測当たりの
    値のとき、上記優勢シンボルをn個連続して復号化する
    と共に、入力された符号語が予測はずれの値のとき、次
    の符号語を入力する予測結果復号化工程と上記次の符号
    語の値が予測当たりの値のとき上記優勢シンボルをn−
    m個連続して復号化し、予測はずれの値のときは再度次
    の符号語を入力する工程を再帰的に繰り返し、0<n−
    m≦1のときの予測はずれ時に劣勢シンボルを復号化す
    るようにしたことを特徴とするデータ復号化方法。
  15. 【請求項15】 符号化されたデータとなる符号ビット
    を入力し、“0”および“1”からなる2値のビット列
    からなる復号ビットに復号化するデータ復号化装置にお
    いて、“0”または“1”のいずれか一方を優勢シンボ
    ルとし、いずれか他方を劣勢シンボルとしたとき上記符
    号ビットの優勢シンボルと予測ビット長n個を設定する
    予測ビット長等設定演算部と、この予測ビット長等設定
    演算部からの復号ビット出力許可信号を受けて入力中の
    符号ビットを所定の形で一時保持すると共に復号ビット
    を出力する復号ビット設定部とを備え、入力された符号
    ビットが上記優勢シンボルの場合、復号ビット出力許可
    信号を出力し上記復号ビット設定部に上記優勢シンボル
    を書き込むと共に、上記優勢シンボルが所定回数連続し
    たときは上記予測ビット長をn個より多い数に変更する
    ことを特徴とするデータ復号化装置。
  16. 【請求項16】 “0”または“1”のいずれか一方を
    優勢シンボルとし、いずれか他方を劣勢シンボルすると
    共にそのシンボルがn個(nは1以上の整数)連続する
    と予測したその予測結果を“0”および“1”からなる
    2値のビット列で表した符号ビットを1ビットずつ入力
    する復号化する復号化装置において、上記符号ビットの
    予測ビット長と上記優勢シンボルを設定する予測ビット
    長・優勢シンボル設定部と、この予測ビット長・優勢シ
    ンボル設定部から予測ビット長と優勢シンボルならびに
    上記符号ビットを入力し、その符号ビットの値に応じて
    復号ビット出力許可信号を出力する予測ビット長演算部
    と、上記復号ビット出力許可信号を入力し、入力中の符
    号ビットを所定の形で一時保持すると共に復号ビットを
    出力する復号ビット設定部とを備え、上記予測ビット長
    演算部に入力された符号語が予測当たりの値の時、上記
    優勢シンボルをn個連続して上記復号ビット設定部に書
    き込むと共に、上記入力された符号語が予測はずれのと
    き次の符号ビットを入力し、その値が予測当たりの値の
    時、上記優勢シンボルをn−m個(mは1以上の整数で
    nより小さい値)連続して上記復号ビット設定部に書き
    込み、予測はずれのときは再度次の符号を予測ビット長
    演算部に入力するようにしたことを特徴とするデータ復
    号化装置。
JP16705397A 1996-06-25 1997-06-24 データ符号化方法およびデータ符号化装置ならびにデータ復号化方法およびデータ復号化装置 Expired - Fee Related JP3482820B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16705397A JP3482820B2 (ja) 1996-06-25 1997-06-24 データ符号化方法およびデータ符号化装置ならびにデータ復号化方法およびデータ復号化装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP16500096 1996-06-25
JP8-165000 1996-06-25
JP16705397A JP3482820B2 (ja) 1996-06-25 1997-06-24 データ符号化方法およびデータ符号化装置ならびにデータ復号化方法およびデータ復号化装置

Publications (2)

Publication Number Publication Date
JPH10285050A JPH10285050A (ja) 1998-10-23
JP3482820B2 true JP3482820B2 (ja) 2004-01-06

Family

ID=26489898

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16705397A Expired - Fee Related JP3482820B2 (ja) 1996-06-25 1997-06-24 データ符号化方法およびデータ符号化装置ならびにデータ復号化方法およびデータ復号化装置

Country Status (1)

Country Link
JP (1) JP3482820B2 (ja)

Also Published As

Publication number Publication date
JPH10285050A (ja) 1998-10-23

Similar Documents

Publication Publication Date Title
US5710562A (en) Method and apparatus for compressing arbitrary data
US5696507A (en) Method and apparatus for decoding variable length code
EP1832000B1 (en) Device and data method for selective compression and decompression and data format for compressed data
JP3136796B2 (ja) 可変長符号デコーダ
US6215906B1 (en) Data compression and restoration system for encoding an input character on the basis of a conditional appearance rate obtained in relation to an immediately preceding character string
US5436626A (en) Variable-length codeword encoder
CN101095284A (zh) 用于有选择地压缩和解压缩的设备与数据方法以及压缩数据的数据格式
KR0178201B1 (ko) 가변 길이 복호화 장치
US6546053B1 (en) System and method for decoding signal and method of generating lookup table for using in signal decoding process
JP2011066557A (ja) データ処理装置およびデータ処理方法
JPH10341167A (ja) 可変長符号復号化回路
US6055273A (en) Data encoding and decoding method and device of a multiple-valued information source
KR20040012403A (ko) 가변 길이 코드 복호화 장치 및 방법
JP7767561B2 (ja) 受信したデータを処理する装置
JP3482820B2 (ja) データ符号化方法およびデータ符号化装置ならびにデータ復号化方法およびデータ復号化装置
JP3014997B2 (ja) 可変長符号復号装置
US5654806A (en) Code manipulation for a high speed JPEG decoder
US5991340A (en) Method and system for encoding and decoding data using run prediction
JPH07107303A (ja) ハフマン符号の復号化方法
US5754128A (en) Variable-length code encoding and segmenting apparatus having a byte alignment unit
JP3648944B2 (ja) データ符号化方法およびデータ符号化装置ならびにデータ復号化方法およびデータ復号化装置
GB2311704A (en) Compression of arbitrary data using context modelling and entropy coding
JP2003174365A (ja) 復号化装置及びその方法
JPH10126276A (ja) 多値情報源のデータ符号化方法およびデータ符号化装置ならびに多値情報源のデータ復号化方法およびデータ復号化装置
KR0125126B1 (ko) 고속 가변길이부호 복호화 장치

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

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

Free format text: PAYMENT UNTIL: 20081017

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20091017

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20101017

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20101017

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20111017

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20121017

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20121017

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20131017

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees