JPH0856164A - データ符号化復号化装置及び方法 - Google Patents

データ符号化復号化装置及び方法

Info

Publication number
JPH0856164A
JPH0856164A JP6290051A JP29005194A JPH0856164A JP H0856164 A JPH0856164 A JP H0856164A JP 6290051 A JP6290051 A JP 6290051A JP 29005194 A JP29005194 A JP 29005194A JP H0856164 A JPH0856164 A JP H0856164A
Authority
JP
Japan
Prior art keywords
code
data
consecutive
code word
huffman
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.)
Withdrawn
Application number
JP6290051A
Other languages
English (en)
Inventor
Kazuhiro Saito
和浩 斎藤
Riido Deebitsudo
リード デービッド
Hadoson Maikeru
ハドソン マイケル
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Publication of JPH0856164A publication Critical patent/JPH0856164A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 (修正有) 【目的】 「1の連続数」テーブル、「残りの符号語」
テーブル、及び「符号長」テーブルを利用して符号化又
は復号化することにより、テーブル容量を削減し、その
コストを低くする。 【構成】 上記入力データをアドレスとして、符号語の
最初の1又は、0の連続数を表す第1のデータを生成す
る第1のテーブル手段101と、前記の1又は、0の連
続したビットの残りの符号語を表す第2のデータを生成
する第2のテーブル手段102と、その符号語の符号長
を表す第3のデータを生成する第3のテーブル手段10
3を有する。また、テーブルを用いて符号データを復号
化して復号データを得る復号化装置であって、符号デー
タの1又は、0の連続数をカウントする手段と、前記符
号データの1又は、0の連続したビットから、残りの有
効なビットを生成する手段と、前記カウント結果と残り
の有効ビットをアドレスとして、復号データとその符号
長を生成するテーブル手段を有する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、データ特に画像データ
等の符号化、復号化を行なうデータ符号化復号化装置及
びその方法に関するものである。
【0002】
【従来の技術】膨大な画像データ等を圧縮して、そのデ
ータ量を少なくして、その通信時間やその保存のための
メモリ量を削減するための方法として、ハフマンの符号
化法がある。この方法の基本的な考え方は、発生確率の
高い入力データ(シンボル)には短い符号語を、低いデ
ータには長い符号語を割り当てることにより、トータル
の符号語長を短くするものである。
【0003】以下、図5〜図7を用いてハフマン符号化
方法を説明する。図5は、ハフマン符号の作成手順を示
すテーブルで、第1列目は入力されたシンボルを、第2
列目はその出現確率を、第3列目はそのシンボルの発生
確率に従ってそのシンボルに対応する符号語を作成する
ための手順を示すものである。このテーブルにおいて、
手順がより分かりやすくなるように、シンボルは出現確
率の高いものから低いものへと順に並べてある。
【0004】先ず、出現確率の低いシンボルを2つ選
び、低い方に“1”、高い方に“0”の符号を割り当て
る。この例では、シンボル「7」に“1”、シンボル
「6」に“0”を割り当てている。次に、この2つのシ
ンボルの出現確率を加算し、この2つのシンボルの出現
確率を加算する。この加算値の示す確率と残りのシンボ
ルの中から、出現確率の低い2つのものを選ぶ。図5の
例では、出現確率の低い2つのシンボル、シンボル
「5」(出現確率0.04)と加算されたシンボル(出
現確率 0.03)が選択される。選ばれた2つのシン
ボルはそれぞれ“1”と“0”が割り当てられる。この
例では“1”を加算されたシンボルに割り当て、“0”
をシンボル「5」に割り当てる。
【0005】低いほうから選ばれた2つの出現確率の加
算処理と、その処理に続く、出現確率の低い2つのシン
ボルの選択と、そして“1”又は“0”を割り当てる処
理とを、未処理のシンボル数が1になるまで繰り返す。
図5の例では、シンボル「4」から加算処理して得られ
たシンボルの出現確率は「0.13」で、残されたどの
2つのシンボル(「0」、「1」、「2」、「3」)の
出現確率よりも大きいので、最も出現確率の低い2つの
シンボル「2」と「3」が選ばれる。
【0006】この“1”と“0”の割り当て処理におい
て、“1”は必ず符号が長い方のシンボルに、“0”は
短い方のシンボルに割り当てられる。未処理のシンボル
が1つ残されたとき、すべてのシンボルに符号を割り当
てたことになる。そして、途中で割り当てていった符号
を逆順に呼び出すことによって符号語が作成される。例
えば、シンボル「6」の符号は「111110」で、シ
ンボル「7」の符号は「111111」となる。
【0007】その符号語を図5の第4列目に示す。第5
列目は、その符号語の符号長(マイナス1)を示し、シ
ンボルに対応する発生した符号と符号長は同じ行に示さ
れる。次に、図6はこのようなハフマン符号化方法を用
いて、入力されるシンボルを符号化して1次元に並べた
ものを16ビット単位の符号データ列にし、これをメモ
リ605に格納するための符号化装置を説明するための
ブロック図である。
【0008】図6中、601はシンボルの入力装置であ
り、シンボルが画像データである場合はスキャナ等を示
す。602は入力されたシンボルに対応する符号語を出
力するための符号化テーブルである。603は入力され
たシンボルに対応する符号語の長さを出力する符号長テ
ーブルである。604は符号化テーブル602からの符
号語を符号長テーブル603からの符号長を用いて1次
元に並べ、それを16ビット単位に区切るためのバレル
シフタであり、このバレルシフタ604からの符号デー
タはメモリ605に16ビット単位で格納される。
【0009】図7は、圧縮された符号データ列をシンボ
ルに復号して出力装置へ転送するための装置を説明する
ためのブロック図である。符号データはメモリ701に
格納される。バレルシフタ702は16ビットの符号デ
ータをメモリ701から受け取るとそれぞれの符号語を
符号化テーブル703と符号長テーブル704へ出力す
る。復号化テーブル703は夫々の符号に対応する元の
シンボルに変換し、符号長テーブル704は符号を符号
長情報に変換する。符号長情報はバレルシルタ702で
シフトされ、次の符号が復号化テーブル703と符号長
テーブル704に対応できるようにする。このバレルシ
フタによるシフト処理は、バレルシフタ内で空ビットを
作る。バレルシフタ702内の16以上のビット位置が
空ビットとなったとき、次の16ビットの符号データが
メモリ701から 702に出力される。この処理を繰
り返すことにより、一次元に並べられた符号データは最
終的に符号化過程で入力された元のシンボル列に復号さ
れる。この復号されたシンボルは出力装置705へ送ら
れる。
【0010】尚、この従来例では復号化のためにテーブ
ルを用いているが、テーブルを用いずに復号化アルゴリ
ズムを用いて復号化する方法も存在する。しかし、この
アルゴリズムを用いた場合は、その処理を1ビットずつ
行なうため、16ビットの符号語の復号化には、少なく
とも16回の処理が必要となる。従って、高速の復号化
が求められる装置においては、ここで示したような復号
化テーブルを用いるのが一般的である。
【0011】
【発明が解決しようとする課題】しかしながら、上記従
来例では、符号化装置に、 2の(シンボルのビット数)乗 × (符号語のビット
数+符号長のビット数) のテーブル用メモリが必要となる。
【0012】即ち、図6の装置では72ビットのメモリ
が必要である。また、復号化装置には、 2の(符号語のビット数)乗 × (シンボルのビット
数+符号長のビット数) のテーブル用メモリが必要となる。
【0013】即ち、図7の装置では384ビットのメモ
リが必要である。したがって、シンボル、符号語、符号
長のビット数が大きくなるに従って、大容量のメモリが
必要となりコストが高くなるという欠点があった。そこ
で、本発明は、この大容量メモリを削減し、コストを低
くすることを目的とする。
【0014】
【課題を解決するための手段】本発明は、上述の目的を
達成するために、テーブルを用いて入力データを符号化
して符号語を生成する符号化装置であって、入力データ
をアドレスとして、符号語の最初の1又は0の連続数を
表す第1のデータを生成する第1のテーブル手段と、上
記入力データをアドレスとして、前記1又は0の連続し
たビットの残りの符号語を表す第2のデータを生成する
第2のテーブル手段と、上記入力データをアドレスとし
て、その符号語の符号長を表す第3のデータを生成する
第3のテーブル手段を有することを特徴とする。
【0015】また、テーブルを用いて符号データを復号
化して復号データを得る復号化装置において、符号デー
タの“1”又は、0の連続数をカウントする手段と、前
記符号データの“1”又は、0の連続したビットから、
残りの有効なビットを出力する手段と、前記カウント結
果と残りの有効ビットをアドレスとして、復号データと
その符号長を生成するテーブル手段を有することを特徴
とする復号化方法を提供するものである。
【0016】このような発明によれば、シンボルから符
号語を生成するためのテーブルとして、最初の1の連続
数を表すテーブルと残りの符号語を表すテーブルで構成
することにより、テーブルの容量を削減しコストを低く
することができる。この構成により、符号化テーブル内
のデータをより少ないビット数で表現することができ
る。
【0017】また、符号データからシンボルを生成する
ためのテーブルとして、符号語の最初の連続する1をよ
り効率的に表現することにより、テーブルの容量を削減
し、そのコストを低くすることができる。このような構
成によれば、より少ないデータビット数で復号化テーブ
ルに使用される符号を表現することができ、その結果、
復号化テーブルと符号長テーブルの容量を削減すること
ができる。
【0018】
【実施例】以下、本発明の好適な実施例を図1乃至図4
を用いて詳細に説明する。本実施例は、ハフマン符号と
して、より長い符号に“1”を割り当てた場合について
説明する。先ず、本実施例の原理を図2を用いて説明す
る。
【0019】図2は本実施例で用いられる「符号語」、
「1の連続数」、「残りの符号語」、そして「符号長
(-1)」の関係を説明するためのテーブルである。同
図において、左から第1列目は入力シンボル、第2列目
は符号語、第3列目は1の連続数、第4列目は残りの符
号語、第5列目は、符号長を表している。本実施例で
は、入力されたシンボルを、効率的にハフマン符号を表
現するデータ形式に符号化する。このデータ形式は順に
ハフマン符号に変換される。入力されたシンボルを最初
に符号化するのに使われるデータ形式は、「1の連続
数」と「残りの符号語」及び「符号長(-1)」の3つ
の領域に分けられる。本実施例では、符号化テーブルは
この3つの領域を生成するために使われる。本実施例の
目的は、ハフマン符号そのものを記憶する場合に比して
「1の連続数」と「残りの符号語」及び「符号長デー
タ」のためのテーブル容量を削減することである。
【0020】図2において、符号は入力されたシンボル
に対応するハフマン符号を示す。「1の連続数」は符号
化されたシンボルの先頭から連続する1のビット数を示
している(第2列目)。「残りの符号語」は符号から、
連続する1とその次の0を除いた残りのビットを示す。
テーブルの最後の行は「シンボル」、「符号」、「1の
連続数」、「残りの符号語」、そして「符号長」を表す
のに必要なビット数を示している。図2の例では、「シ
ンボル」は16進法で表され、8ビットの長さである。
本実施例では最高256のシンボルを扱うことが可能で
ある。「符号」、つまりハフマン符号は、例えば最長1
6ビットの符号である。後で説明するが、「1の連続
数」は4ビット、「残りの符号語」は6ビット、そして
「符号長(-1)」は4ビットである。
【0021】符号語は可変長であるため符号語によって
その符号長は異なるが、最長の符号長は16ビットであ
る。本実施例では、1の連続数を4ビット、残りの符号
語を6ビットとするので、1の連続数の後に引き続く符
号が7ビット以上になる符号語は存在しないものとす
る。
【0022】図2において、「1の連続数」の列はハフ
マン符号において最も左のビットから引き続く1の数を
表す。「残りの符号語」の列は、連続する1と、0を除
くビットで構成される。「符号長(-1)」の列は、ハ
フマン符号の長さから1を引いたものを示す。シンボル
25(16進法)に対応する第1行目の符号語「101
0」を例にあげて説明する。この場合には1の連続数は
先頭の1つだけである。残りの符号語は先頭の1と次の
0を除く「10xxxx」であるから(xは有効外のビット
を示す。)、これに対応する符号長−1は「0011」
となる。
【0023】また、第2行におけるシンボルOA(16進
法)に対応する符号語は「00」であり、連続する1は
存在しないので、1の連続数は「0000」となり、そ
れ故、符号長−1の「0001」に対応する残りの符号
語は「0xxxxx」となる。以下同様に、シンボルに対応
する符号語と、その1の連続数とその残りの符号語をテ
ーブルに示す。
【0024】このように、本実施例では「1の連続数」
を4ビットのデータ、「残りの符号語」を6ビットのデ
ータ、また「符号長」を4ビットのデータの計14ビッ
トで、表している。このように本実施例によると、シン
ボルを「1の連続数」、「残りの符号語」、「符号長」
で表すことによりより短いビット数で表すことができ
る。
【0025】即ち、先に説明した従来技術の符号化装置
では、 2の(シンボルのビット数)乗 × (最大符号語のビ
ット数+符号長のビット数) のメモリ(テーブル)が必要となるため、図2のシンボ
ルを符号化するには、 28 × (16+4) = 5120ビット のメモリが必要となる。
【0026】しかし、本実施例の場合には、 2の(シンボルビット数)乗 ×(1の連続数のビット
数+残りの符号語のビット数+符号長のビット数) のメモリで構成できる。これによれば、図2のシンボル
を符号化するために、 28 × (4+6+4) = 3584ビット のメモリで構成することができ、メモリ容量を大幅に削
減してそのコストを低くすることができる。
【0027】次に上述のような符号化を行なう符号化装
置の構成及び符号化方法を図1及び図3を用いて説明す
る。本実施例における符号化装置は、図1に示すように
入力装置105、「1の連続数」テーブル101、「残
りの符号語」テーブル102、「符号長テーブル」10
3、ハフマン符号化器104、メモリ106及び全体の
動作を制御する制御手段(CPU)107にて概略構成さ
れている。上記CPU107には符号化制御プログラム
(後述)などのプログラムを格納するROM108、及び
一時記憶手段としてのRAM109が接続されている。
【0028】また、本実施例における上記入力装置とし
てはスキャナやビデオカメラ等があり、これらの入力装
置からの画像信号はDCT等の直交変換されると共に量子
化され、これによって得られた量子化データを入力シン
ボルとする。図1に示される構成の装置により、テーブ
ル101ないし103の容量は、従来の装置に比べて削
減される。
【0029】このような構成の符号化装置において、上
記CPU107は入力装置105を介して伝送されてきた
入力データに対する最適なハフマンテーブルを作成、も
しくはROM108に格納されているハフマンテーブルこ
のテーブルを読み出し、上記各テーブル101〜103
の内容を生成、もしくは、読み出されたテーブルデータ
に書き換える。これらの処理は、ROM108に格納され
たハフマンテーブル生成用のプログラムに基づいて実行
される。
【0030】また、本実施例の装置は、図示しない入力
手段がテーブル101〜103の内容を決定するために
JPEGやMPEG等の符号化方式を指定することにより、実行
される。テーブルのデータは、各種符号化方式に対応し
てあらかじめ生成され、上記ROM108に格納される。
入力手段によって符号化方式が指定された場合、指定さ
れた方式に対応するテーブルのデータを選択してROM1
08から読み出し、「1の連続数」テーブル101、
「残りの符号語」テーブル102、「符号長」テーブル
103へロードする。
【0031】テーブル101〜103が上記のとおり構
成され、又は書き換えられると、上記入力装置105を
介して入力されてくるシンボルは、上記「1の連続数」
テーブル101、「残りの符号語」テーブル102、及
び「符号長」テーブル103の各アドレスとして夫々に
出力される。「1の連続数」テーブル101ではそのシ
ンボルに対応するハフマン符号語の1の連続数を、「残
りの符号語」テーブル102ではそのシンボルに対応す
る符号語の残りの符号語を、そして、符号長テーブル1
03ではそのシンボルの符号長−1を、ハフマン符号化
手段104に夫々出力する。
【0032】なお、上記「1の連続数」テーブル101
に格納されたデータは、シンボルに対応したハフマン符
号における一番左からの1の連続数を表している。「1
の連続数」テーブル101は入力されたシンボルによる
索引に対応する4ビットの形式でデータを出力する。ま
た、同様に上記「残りの符号語」テーブル102には、
シンボルに対応したハフマン符号における先頭から連続
した1と、その後に引き続く先頭の1ビット「0」を除
いたデータが格納されている。「残りの符号語」テーブ
ル102のデータフォーマットは6ビットで、入力され
たシンボルによる索引に対応してデータを出力する。
【0033】上記ハフマン符号化手段104は、上記
「1の連続数」、「残りの符号語」に関するデータから
ハフマン符号語を演算して生成する演算手段(不指示)
及び生成されたハフマン符号を16ビットのシーケンシ
ャルなデータに変換するバレルシフタから構成されてい
る。ここで、「残りの符号語」とは、ハフマンコードの
一部である。そして、上記演算手段は「1の連続数」の
ビット数に相当するハフマン符号を生成し、それにハフ
マン符号0を付け加え、更に残りの符号語を付け加える
ことにより、入力シンボルに対応する「完全な」ハフマ
ン符号を生成する。このハフマン符号化手段104は上
述のように伝送されてくる「1の連続数」と「残りの符
号語」との各データを符号長データに基づいて区切り、
夫々のデータのハフマン符号化を行なう。
【0034】その後、16ビット単位に分割された符号
データは、メモリ106に一旦格納される。次に、この
ような符号化装置の動作を図3に示すフローチャートを
用いて説明する。図3は、ハフマンテーブルの生成(ま
たは、選択)処理から、そのハフマンテーブルに対応す
る「1」の連続数テーブル、残りの符号語テーブル、符
号長テーブル等の作成処理、そして、作成したテーブル
を用いての実際の符号化を行なう処理を示すフローチャ
ートである。
【0035】ステップS300〜ステップS305まで
は、ハフマンテーブルを生成(または、選択)し、さら
に、そのハフマンテーブルに対応する「1」の連続数テ
ーブル、残りの符号語テーブル、符号長テーブル等を作
成する手順を示す。また、ステップS306以降はハフ
マン符号化の手順を示す。ステップS301では、入力
されるデータに基づき最適なハフマンテーブルの生成を
行なう。ハフマンテーブルの生成の代わりに、その入力
データに使用するハフマンテーブルが指定されていると
きは、ROM108内のその指定されたハフマンテーブ
ルを用いる。これにより、入力されるデータに対応する
ハフマン符号語とその符号長が決定される。
【0036】ステップS302〜ステップS305の手
順を説明する。ステップS301にて作成され(あるい
は選択された)ハフマンテーブル中の1つの符号語の
「1」の連続数をカウントし、その連続数を「1の連続
数テーブル」101(図1)に格納する。次に、ステッ
プS303では、その符号語の残りの符号部分を抽出し
て、そのデータを残りの符号語テーブル102(図1)
に格納する。そして、ステップS304では、ステップ
S301にて決定された符号長を符号長テーブル103
に格納する。ステップS305では、当該ハフマンテー
ブル中の全ての符号語に対してステップS302〜ステ
ップS304の処理が実行されたかどうかを判定する。
実行されていない場合には、ステップS302に移行
し、実行されていた場合にはステップS306に移行す
る。
【0037】ステップS306では、ステップS302
からステップS304にて生成されたテーブルを用い
て、実際の符号化処理を開始する。ステップS307で
は、「1」の連続数テーブル101を用いて「1」の連
続数を出力する。ステップS308では、残りの符号語
テーブル102を用いて残りの符号語を出力する。ステ
ップS309では、符号長テーブル103を用いて符号
長を出力する。そして、ステップS310では、これら
「1」の連続数、残りの符号語、符号長を用いて入力デ
ータに対するハフマン符号語を生成する。このステップ
S310が、図1のハフマン符号化手段104に対応す
る。ステップS311では、全ての入力データに対する
符号化処理が終了したかどうかを判定する。終了してい
ない場合には、ステップS307に移行し、符号化処理
を継続する。また、終了した場合には、ステップS31
2に移行し、全ての圧縮処理を終了する。
【0038】このようにして、ハフマンテーブルを生成
すること、さらに、本実施例のシステムに特有の「1」
の連続数テーブル、残りの符号語テーブル、符号長テー
ブルを生成すること、そして、全ての入力データに対す
るハフマン符号化を処理すること実現することができ
る。このように、本実施例によると従来のものより容量
の小さいテーブル101〜103を使用することにより
入力データから「完全な」ハフマン符号を生成すること
ができる。
【0039】入力データは様々な発生確率のシンボルを
含むので、ハフマン符号は入力データに応じて選ばれ
る。本実施例の装置は入力データに基づいてテーブル1
01〜103のデータを決定、そして設定する。従っ
て、この装置は圧縮効率を下げることなく、各種の入力
データに対応することができる。なお、この動作におい
て、ステップS301〜S305は必ずしなければなら
ないものではなく、必要に応じて新たなデータに書き換
えるようにすればよい。
【0040】次に、本発明の復号化装置の構成及び復号
化方法について説明する。図4は本発明の復号化装置を
説明する図であり、この復号化装置における処理は基本
的に先の符号化における処理の逆となる。図4におい
て、401はバレルシルタ、402はカウンタ、403
は「残りの符号語」用のバレルシフタ、404は復号化
テーブル、405は符号長テーブル、406は入力装置
であるメモリ、407は出力装置、408は動作制御を
行なうためのCPUであり、このCPU408にはROM409
と、復号化プログラム及び上述した符号化装置で用いた
テーブルデータに対応した復号化テーブルのテーブルデ
ータを格納するRAM410が接続されている。
【0041】上記メモリ406は、上述した符号化装置
のメモリ106から伝送される符号化データをバッファ
する。また、前記符号化装置は、テーブル101-10
3に格納されたハフマンテーブルデータに対応するデー
タも、メモリに伝送する。メモリ406は、また、CD-R
OM等の各種通信装置から伝送されてくる符号化データを
受信する。CPU408は情報データを取り込んで、上記
復号化テーブル404及び符号長テーブル405を書き
換える。
【0042】なお、CD-ROM等の各種通信装置から伝送さ
れてくる符号化データを復号する場合には、CPU408
は伝送されてくる符号化データのヘッダ等から符号化方
式を検出し、検出された符号化方式に対応したハフマン
テーブルに基づく復号化テーブル404及び符号長テー
ブル405を書き換える。バレルシフタ401は内部に
31ビットのレジスタがあり、そのMSB側の16ビット
がカウンタ402やバレフシフタ403へ出力される。
【0043】そして、バレルシフタ401は、バレフシ
ルタ401から出力されている符号のビット数を示す符
号長テーブルのデータに示される符号長分のシフト動作
を行う。そしてバレルシフタ401からの有効ビットが
16ビット未満の場合はメモリ406からの新たな符号
データを無効ビット開始後、レジスタに入力する。この
バレルシフタ401によるシフト動作は、バレルシフタ
のレジスタに出力する次の符号語を16ビットに合わせ
るものである。カウンタ402は、内部レジスタからの
1の連続数をカウントし、その値は復号化テーブル40
4とバレルシフタ403及び符号長テーブル405に出
力される。
【0044】バレルシフタ403は、1の連続数とその
次の「0」の1ビットの後の6ビットを、残りの符号語
として、復号化テーブル404と符号長テーブル405
に出力する。復号化テーブル404は符号に対応する復
号データを出力する。復号化テーブル104は、カウン
タ402からの1の連続数(4ビット)とバレルシフタ
403からの残りの符号語(6ビット)の10ビットを
アドレスとして、入力する。
【0045】符号長テーブル405は、符号の符号長−
1を出力する。符号長テーブル405は、カウンタ40
2からの1の連続数(4ビット)とバレルシフタ403
からの残りの符号語(6ビット)の10ビットをアドレ
スとし、その符号語の符号長をバレルシルタ401へ出
力して次のデータの読み込みを行なわせる。このような
復号化装置によれば、上記各テーブルの容量を従来の復
号化装置のテーブルに比して大幅に削減することができ
る。
【0046】即ち、従来技術の復号化装置では、 2の(最大符号語のビット数)乗 × (シンボルのビ
ット数+符号長のビット数) のメモリが必要となるため、本実施例と同じ復号化を行
なうには、 216 × (8+4) = 786kビット のメモリが必要となる。
【0047】しかし、本実施例の装置を用いることによ
り、 2の(1の連続数のビット数+残りの符号のビット数)
乗 ×(シンボルのビット数+符号長のビット数) 即ち、 2(4+6) × (8+4) = 12.3kビット のメモリで構成することができ、メモリ容量を大幅に削
減し、そのコストを低くすることができる。
【0048】また、本実施例では「1の連続数」の次は
必ず0となるために「1の連続数」と「残りの符号語」
との間の1ビットを削減することができる。更に、本実
施例においては入力した符号化データに基づいて復号化
テーブル404等を書き換えているため、各種方式にて
符号化された符号化データを復号することができる。
【0049】なお、本実施例はハフマン符号に符号化す
る走査方向に連続する1が検出されるものであるが、0
を割り当てた場合には図2に示した符号語における1と
0が反対になるので、そのような場合には「1の連続
数」に換えて「0の連続数」を用いて符号化、復号化す
ればよい。上記の実施例は、本発明がハフマン符号化方
法に応用されたものであるが、これに限るものではな
く、発生確率の低い入力シンボルにより長い符号を、発
生確率の高い入力シンボルにより短い符号を割り当てる
方法を応用できるなら、その符号化方法であってもよ
い。
【0050】
【発明の効果】以上説明したように、本発明の符号化装
置においては、入力データに基づいて符号語と符号長を
生成するテーブルで構成するのではなく、入力データに
基づいて符号語の「1の連続数」と「残りの符号語」と
「符号長」とを生成するテーブルで構成することによ
り、そのテーブルのためのメモリ容量を削減し、そのコ
ストを低くすることができる。
【0051】また、本発明の復号化装置においては、符
号長テーブルと「1の連続数」をカウントするカウンタ
と、そのカウント結果である「1の連続数」と「残りの
符号語」をアドレスとする復号化テーブルとで構成する
ことによりテーブルのためのメモリ容量を大幅に削減す
ることができ、そのコストを大きく削減することができ
る。
【図面の簡単な説明】
【図1】本発明の符号化の処理を説明する図である。
【図2】本実施例で用いられる符号語、1の連続数、残
りの符号語と符号長の関係を説明するための図である。
【図3】符号語から本実施例のための1の連続数とその
残りの符号語のテーブルを生成するための方法について
説明するための図である。
【図4】本発明の復号化の処理を説明する図である。
【図5】ハフマン符号語の作成手順を説明するための図
である。
【図6】ハフマン符号語を用いて符号化する装置を説明
するための図である。
【図7】ハフマン符号データの復号化する装置を説明す
るための図である。
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H04N 7/24 (72)発明者 マイケル ハドソン オーストラリア国,ニューサウスウエール ズ州 2162,チェスター ヒル, マーク ス エスティ. 23

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 テーブルを用いて入力データを符号化し
    て符号語を生成する符号化装置において、 上記入力データをアドレスとして、符号語の最初の1又
    は0の連続数を表す第1のデータを生成する第1のテー
    ブル手段と、 上記入力データをアドレスとして、前記1又は0の連続
    したビット以外の残りの符号語を表す第2のデータを生
    成する第2のテーブル手段と、 上記入力データをアドレスとして、その符号語の符号長
    を表す第3のデータを生成する第3のテーブル手段を有
    することを特徴とする符号化装置。
  2. 【請求項2】 入力データを符号化する方法において、 上記入力データに対応する符号語の最初の1又は0の連
    続数を生成し、 上記入力データに対応する符号語の最初の1又は0の連
    続したビットを除く残りの符号語を生成し、 上記入力データに対応する符号語の符号長を生成し、 上記最初の1又は0の連続数と最初の1または0の連続
    したビットを除く残りの符号語と符号長とを用いて、上
    記入力データに対応する符号語を生成することを特徴と
    する符号化方法。
  3. 【請求項3】 テーブルを用いて符号データを復号化し
    て復号データを得る復号化装置において、 符号データの1又は0の連続数をカウントする手段と、 前記符号データの1又は0の連続したビットを除く残り
    の有効なビットを生成する手段と、 前記カウント結果と残りの有効ビットをアドレスとし
    て、復号データとその符号長を生成するテーブル手段と
    を有することを特徴とする復号化装置。
  4. 【請求項4】 符号化された入力データを復号する方法
    において、 1または0の連続数と、この1または0の連続数に引き
    続く残りの符号語を用いて復号化することを特徴とする
    復号化方法。
JP6290051A 1994-08-12 1994-11-24 データ符号化復号化装置及び方法 Withdrawn JPH0856164A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
AU70246/94 1994-08-12
AU70246/94A AU672321B2 (en) 1994-08-12 1994-08-12 Data encoding and decoding apparatus and method

Publications (1)

Publication Number Publication Date
JPH0856164A true JPH0856164A (ja) 1996-02-27

Family

ID=3753517

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6290051A Withdrawn JPH0856164A (ja) 1994-08-12 1994-11-24 データ符号化復号化装置及び方法

Country Status (2)

Country Link
JP (1) JPH0856164A (ja)
AU (1) AU672321B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001339312A (ja) * 2000-03-24 2001-12-07 Matsushita Electric Ind Co Ltd 可変長復号化回路

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102237878B (zh) * 2010-04-20 2015-09-02 慧荣科技股份有限公司 一种霍夫曼解码方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4899149A (en) * 1986-02-28 1990-02-06 Gary Kahan Method of and apparatus for decoding Huffman or variable-length coees
US5254991A (en) * 1991-07-30 1993-10-19 Lsi Logic Corporation Method and apparatus for decoding Huffman codes
US5181031A (en) * 1991-07-30 1993-01-19 Lsi Logic Corporation Method and apparatus for decoding huffman codes by detecting a special class

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001339312A (ja) * 2000-03-24 2001-12-07 Matsushita Electric Ind Co Ltd 可変長復号化回路
JP4559652B2 (ja) * 2000-03-24 2010-10-13 パナソニック株式会社 可変長復号化回路

Also Published As

Publication number Publication date
AU672321B2 (en) 1996-09-26
AU7024694A (en) 1996-02-22

Similar Documents

Publication Publication Date Title
JP3349617B2 (ja) ハフマンデコーダー
JP3332619B2 (ja) 復号装置およびその方法
JP3341962B2 (ja) 可変長復号器及び可変長符号値を復号化する方法
JPH0799812B2 (ja) 信号符号化装置および信号復号化装置、並びに信号符号化復号化装置
US5594435A (en) Permutation-based data compression
CN1163686A (zh) 编码方法及系统以及译码方法及系统
RU2611249C1 (ru) Модификатор энтропии и способ его использования
JP2836467B2 (ja) 2値シンボルの符号化・復号化回路
CN110602498A (zh) 一种自适应有限状态熵编码的方法
JPH05183443A (ja) 符号変換方法
US6489903B2 (en) Data encoding method, data encoding apparatus, data decoding method, and data decoding apparatus
JP3269359B2 (ja) データ符号化装置およびその方法ならびにデータ復号化装置およびその方法
JPH08186723A (ja) 画像処理装置用エンコーダ
JPH0856164A (ja) データ符号化復号化装置及び方法
JP3009993B2 (ja) ハフマン復号化装置
JP2000261324A (ja) ハフマン復号化回路
US5903675A (en) System and method for compressing data using a dynamically changing compression window
JP2001217722A (ja) 情報符号化装置及び情報符号化方法及びコンピュータ読み取り可能な記憶媒体
JPH0629861A (ja) データ圧縮方法
JPH0884260A (ja) 2次元画像データの圧縮方式および伸長方式
JPH08167855A (ja) ハフマン復号化回路
JP3108243B2 (ja) 符号化及び復号化装置
JP2689020B2 (ja) 符号伸長方法及び描画装置
JPH05341955A (ja) データ圧縮および復元方式
JP3138342B2 (ja) 可変長符号の復号装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20020205