JPH05110450A - 符号生成装置 - Google Patents

符号生成装置

Info

Publication number
JPH05110450A
JPH05110450A JP27065191A JP27065191A JPH05110450A JP H05110450 A JPH05110450 A JP H05110450A JP 27065191 A JP27065191 A JP 27065191A JP 27065191 A JP27065191 A JP 27065191A JP H05110450 A JPH05110450 A JP H05110450A
Authority
JP
Japan
Prior art keywords
code
code length
circuit
value
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
JP27065191A
Other languages
English (en)
Inventor
Yuji Konno
裕司 今野
Tadayoshi Nakayama
忠義 中山
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
Priority to JP27065191A priority Critical patent/JPH05110450A/ja
Publication of JPH05110450A publication Critical patent/JPH05110450A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 【目的】 任意のシンボル系列からハフマン符号を生成
する際に、その符号長の最大値を指定できる符号生成装
置を提供する。 【構成】 入力端子1より入力されたシンボル系列{S
i }の生起確率列{Pi}が生起確率べき乗化回路2に
て2-n単位に切り捨てられ、{Pi ′}となる。次に入
力端子4より制限する最大符号長Lが生起確率切り上げ
回路3に入力され、2-Lよりも小さい生起確率{P
i ′}が2-Lに切り上げられ、{Pi″}に変換され、
データ並べ換え回路5,生起確率更新回路6及び判定回
路7にてPi ″/Pi の値が計算され、ΣPi ″の値が
“1”以上になるまで、値の小さい順に{Pi },{P
i″}が並べ替えられ、ハフマン符号割り当て回路8に
てli =−log2i ″が計算され、その値に応じて
シンボル{Si }にハフマン符号が割り当てられる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は符号生成装置、特に画像
データ等の圧縮符号化に際し、ハフマン符号を生成する
符号生成装置に関するものである。
【0002】
【従来の技術】従来、画像データを符号化する際に用い
られるエントロピー符号化の1つに、D.H.Huffman によ
って提案されたハフマン符号化方法がある。これは、基
となる画像データに直交変換等の系列変換を行うことに
よって得られた系列シンボルに対し、その生起確率の高
いシンボルには短い符号を、生起確率の低いシンボルに
は長い符号を割り当て、符号化効率を上げるものであ
る。
【0003】上述のハフマン符号は、次のような手順で
符号を生成している。 M個の情報源シンボルS1 ,S2 ,…,SM を生起
確率の順に並べる。 生起確率の最も小さいシンボル2個をまとめ、これ
を1つのシンボルに置き換え、その2つの確率の和を新
しいシンボルの生成確率とする。 再び確率の順に並べ直す。 上記,の手続きを最後に確率1のシンボルが残
るまで繰り返す。 以上の手順により符号の木を作り、最後に枝分かれ
に従って“0”と“1”の符号を割り当てる。図4は、
上述の手順を用いてハフマン符号を生成した例を示す図
である。
【0004】以上説明したように、従来のハフマン符号
を生成する手順は、シンボル系列の生起確率からボトム
アップ式に符号を得るものである。
【0005】
【発明が解決しようとしている課題】しかしながら、上
記従来例では、一般にハフマン符号の符号長が最大何ビ
ット長になるかは与えられたシンボル系列によって異な
る。実際、このハフマン符号を用いた画像符号化システ
ムをハード上で実現するためには、そのハフマン符号の
復号過程において、ルックアップテーブル(復号RO
M)を用いている。すなわち、ハフマン符号を復号デー
タが格納されている復号ROMにアドレスとして与え、
復号データを得るというものである。この際、復号RO
Mのメモリ容量はアドレスとして入力されるハフマン符
号の符号長が最大なものに合わせて、その符号長が示す
アドレス空間を有するだけの容量を確保しなければなら
ない。
【0006】従って、ハフマン符号の最大符号長が長く
なればなるほど、復号ROMのメモリ容量も大きなもの
となり、コストも増す。このように、ハフマン符号を用
いて画像符号化システムを構成する場合には、ハフマン
符号の最大符号長がシステム設計に関わる一要因となっ
ている。
【0007】また、上述した如く、従来の方法では、ハ
フマン符号の作成に際し、基にする画像データによって
作成されるハフマン符号の最大符号長が異なってくるた
め、画像符号化システムのシステム設計を行う場合、あ
る任意の画像データに対し、一意にハフマン符号の最大
符号長を決定できないという欠点があった。
【0008】本発明は、上記課題を解決するために成さ
れたもので、任意のシンボル系列からハフマン符号を生
成する際に、その符号長の最大値を指定できる符号生成
装置を提供することを目的とする。
【0009】
【課題を解決するための手段】及び
【作用】上記目的を達成するために、本発明の符号生成
装置は以下の構成を有する。
【0010】すなわち、任意のシンボル系列からハフマ
ン符号を生成する符号生成装置において、シンボル系列
の生起確率に基づいて符号長を求める符号長演算手段
と、該符号長演算手段により求めた符号長に応じて符号
を生成する符号生成手段とを有する。
【0011】また好ましくは、前記符号長演算手段は、
シンボル系列の生起確率を2のべき乗化し、その指数の
絶対値を符号長とすることを特徴とする。
【0012】更に好ましくは、前記符号長演算手段は、
最大の符号長をLとすると、2のべき乗化した生起確率
の中から2-Lよりも小さい値の生起確率を2-Lに切り上
げて符号長を求めることを特徴とする。
【0013】
【実施例】以下、図面を参照して本発明に係る好適な一
実施例を詳細に説明する。
【0014】図1は、基となるシンボル系列の生起確率
と制限するハフマン符号最大符号長とを入力することに
より、所望のハフマン符号を得るまでの処理を示すブロ
ック図である。
【0015】ハフマン符号と、その基となるシンボル系
列の生起確率との関係を見てみると、一般的に、生起確
率が2-n(nは自然数)になっているシンボルに割り当
てられるハフマン符号の符号長はnビットとなる。この
性質を利用して以下の手順により最大符号長を制限した
ハフマン符号を生成することができる。ここで、シンボ
ルSi (i=1,2,…,M)の生起確率をPi とし、
制限するハフマン符号の最大符号長をLとする。 Pi を2-n単位に切り捨て、この結果をPi′とす
る。 2-Lより小さいPi ′を全て2-Lに切り上げ、この
結果をPi ″とする。 Pi ″/Pi の値の小さい順にソートする。 ΣPi ″≦1の範囲でPi ″/Pi の値が最小とな
るPi ″を2倍する。 上記手続き,をΣPi ″が“1”に等しくなる
か、2倍できるPi ″がなくなるまで繰り返す。 得られたPi ″=2-nからli =−log2i
により、ハフマン符号長li を得る。 li の値によってシンボルSi にハフマン符号を割
り当てていく。
【0016】以上の手続きをブロック図で示したのが図
1である。図示するように、入力端子1よりハフマン符
号を作成する際の基となるシンボル系列{Si }の生起
確率列{Pi }が入力される。これが生起確率べき乗化
回路2によって値が2-n単位に切り捨てられ、{P
i ′}となる。次に、入力端子4より制限する最大符号
長Lが生起確率切り上げ回路3に入力され、これを基
に、回路3によって値が2-Lよりも小さい生起確率{P
i ′}が2-Lに切り上げられ、{Pi ″}に変換され出
力される。次に、変換された生起確率{Pi″}と信号
線10からの生起確率列{Pi }とがそれぞれデータ並
べ換え回路5に入力され、データ並べ換え回路5にてP
i ″/Pi の値が計算され、その値の小さい順に{P
i },{Pi ″}が並べ替えられる。そして、並べ替え
られた{Pi ″}が生起確率更新回路6に入力され、P
i ″/Pi の値が最小となるPi ″の値を2倍する。
【0017】次に、更新された{Pi ″}が判定回路7
に入力され、判定回路7でΣPi ″が計算され、その値
と“1”が比較される。その結果、ΣPi ″が“1”よ
りも小さい場合には、再びデータ並べ替え回路5に{P
i ″}が戻される。この判定回路7にてΣPi″の値が
“1”以上になるまで、生起確率の並べ替え、更新、判
定が繰り返される。また、判定回路7によってΣPi
が“1”以上になると、{Pi ″}がハフマン符号割り
当て回路8に入力される。そして、この回路8でハフマ
ン符号の符号長の値となるli =−log2i ″が計
算され、その値に応じてシンボル{Si }にハフマン符
号が割り当てられる。
【0018】具体的には、まずハフマン符号割り当て回
路8にて計算されたハフマン符号の符号長{li }をそ
の値の小さい順に並べ替える。その結果、図2に示すよ
うに、シンボル系列{Si }に対してそれぞれハフマン
符号長{li }が得られたとすれば、その中で最もli
の小さいシンボルS1 に対して値が“0”となるハフマ
ン符号が与えられる。つまり、図2の例では、シンボル
1 のハフマン符号長l1 が“2”であることから2ビ
ットのハフマン符号“00”を与える。
【0019】次に、シンボルSi に対してハフマン符号
i が割り当てられた時、シンボルSi+1 には、li+1
=li であれば、ハフマン符号Hi+1 としてHi
“1”を加算し、ビット長はそのままのハフマン符号が
割り当てられる。つまり、図2の例では、シンボルS2
に対して“01”が割り当てられる。また、li+1 >l
iであれば、Hi+1 としてHi に“1”を加算した後、
(li+1 −li)の分だけ左へビットシフトさせる。つ
まり、図2の例では、S3 に“100”が割り当てられ
る。このようにして、すべてのシンボルに対してハフマ
ン符号を割り当てていき、得られたハフマン符号{H
i }が出力端子9より出力される。
【0020】以上の処理を行うことにより、シンボル系
列の生起確率は2-n単位で、その最小値が2-Lとなり、
この生起確率の指数の絶対値をハフマン符号の符号長と
することから、その最大の符号長はLとなる。
【0021】従って、このハフマン符号生成器を用いれ
ば、一般的に基となるシンボル系列からハフマン符号を
作成する際に、最大符号長を制限して符号を得ることが
可能である。
【0022】
【他の実施例】次に、本発明に係る他の実施例を図面を
参照して以下に詳述する。
【0023】図3は、他の実施例におけるハフマン符号
生成手順を示すブロック図である。この実施例は、基と
なるシンボル系列の生起確率が元々2-n単位に極近い値
となっているか、或いは制限する最大符号長が小さく、
ほぼ固定長符号化に近い状態になっている場合に、前述
した実施例で示した手続きを行った結果、ΣPi ″の
値が“1”を越えてしまうような場合に対処したもので
ある。すなわち、前述した手続きの処理を行った後、
次のような手続きを行う。 ′ ΣPi ″>1の時、Pi ″>2-Lの中でPi ″/
i を計算する。 ′ Pi ″/Pi の最大となるPi ″の値を2分の1
にする。 ′ 上記手続き′,′をΣPi ″≦1になるまで
繰り返す。
【0024】以下、前述した手続き,と同じ処理を
行う。これらの手順の流れを図3にブロック図で示す。
尚、前述した実施例と同じ機能を有する構成要素には図
1と同一符号を付し、図1と異なる点についてのみ説明
を行う。
【0025】図3に示すように、生起確率切り上げ回路
3によって最小値が2-Lである2のべき乗単位の生起確
率{Pi ″}が判定回路11に入力され、ここで、ΣP
i ″が計算され、その値と“1”が比較される。その結
果、ΣPi ″が“1”以下の場合、1ビットのモード信
号Mの値を“0”として信号線12に出力する。また、
“1”より大きい場合には、モード信号Mの値を“1”
として出力する。このモード信号Mはデータ並べ替え回
路15、生起確率更新回路16、判定回路17にそれぞ
れ入力される。そして、モード信号Mの値が“0”の場
合、この実施例での回路15,16,17は前述した実
施例での回路5,6,7と全く同じ処理を行う。
【0026】一方、モード信号Mの値が“1”の場合、
データ並べ替え回路15は、判定回路11からの生起確
率{Pi ″}と信号線10より入力される生起確率Pi
とを入力し、Pi ″/Pi の値を計算する。そして、P
i ″>2-Lである中で、その値の大きい順に{Pi
{Pi ″}を並べ替える。並べ替えられた{Pi ″}が
生起確率更新回路16に入力され、Pi ″>2-Lである
中で、Pi ″/Pi の値が最大となるPi ″の値を2分
の1倍する。次に、更新された{Pi ″}が判定回路1
7に入力され、ΣPi ″が計算され、その値が“1”よ
り大きい場合には再びデータ並べ替え回路15に{P
i ″}が戻される。すなわち、モード信号Mが“1”の
場合には、判定回路17でΣPi ″の値が“1”以下に
なるまで生起確率の並べ替え、更新、判定を繰り返す。
以下、前述した実施例と同様の処理を行い、ハフマン符
号を得る。
【0027】以上の処理を行うことにより、任意のデー
タを基にハフマン符号を作成する際に、ほぼ固定長符号
化に近くなってしまうように、最大符号長を与えた場合
にも復号可能なハフマン符号が生成できる。
【0028】以上説明したように、実施例によれば、ハ
ード設計上必要な任意の最大符号長に制限されたハフマ
ン符号を生成することができる。これにより、ハード設
計上最適な最大符号長のハフマン符号を用いることによ
り、コスト削減を図ることができる。
【0029】尚、本発明は、複数の機器から構成される
システムに適用しても、1つの機器から成る装置に適用
しても良い。また、システム或いは装置にプログラムを
供給することによって達成される場合にも適用できるこ
とは言うまでもない。
【0030】
【発明の効果】以上説明したように、本発明によれば、
任意のシンボル系列からハフマン符号を生成する際に、
その符号長の最大値を指定できることにより、画像符号
化システムのメモリ容量を節減することが可能となる。
【図面の簡単な説明】
【図1】本実施例におけるハフマン符号生成回路を示す
ブロック図である。
【図2】シンボル系列に割り当てられた符号長と、符号
長によって生成されたハフマン符号を説明する図であ
る。
【図3】他の本実施例におけるハフマン符号生成回路を
示すブロック図である。
【図4】従来例におけるハフマン符号生成手順を説明す
る図である。
【符号の説明】
2 生起確率べき乗化回路 3 生起確率切り上げ回路 5 データ並べ替え回路 6 生起確率更新回路 7 判定回路 8 ハフマン符号割り当て回路

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 任意のシンボル系列からハフマン符号を
    生成する符号生成装置において、 シンボル系列の生起確率に基づいて符号長を求める符号
    長演算手段と、 該符号長演算手段により求めた符号長に応じて符号を生
    成する符号生成手段とを有することを特徴とする符号生
    成装置。
  2. 【請求項2】 前記符号長演算手段は、シンボル系列の
    生起確率を2のべき乗化し、その指数の絶対値を符号長
    とすることを特徴とする請求項1記載の符号生成装置。
  3. 【請求項3】 前記符号長演算手段は、最大の符号長を
    Lとすると、2のべき乗化した生起確率の中から2-L
    りも小さい値の生起確率を2-Lに切り上げて符号長を求
    めることを特徴とする請求項1記載の符号生成装置。
JP27065191A 1991-10-18 1991-10-18 符号生成装置 Withdrawn JPH05110450A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27065191A JPH05110450A (ja) 1991-10-18 1991-10-18 符号生成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27065191A JPH05110450A (ja) 1991-10-18 1991-10-18 符号生成装置

Publications (1)

Publication Number Publication Date
JPH05110450A true JPH05110450A (ja) 1993-04-30

Family

ID=17489061

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27065191A Withdrawn JPH05110450A (ja) 1991-10-18 1991-10-18 符号生成装置

Country Status (1)

Country Link
JP (1) JPH05110450A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007104362A (ja) * 2005-10-05 2007-04-19 Mitsubishi Electric Corp コード割当装置、シミュレーション装置、コード割当方法、シミュレーション方法、コード割当プログラムおよびシミュレーションプログラム
JP2010093414A (ja) * 2008-10-06 2010-04-22 Fujitsu Ltd 情報処理プログラム、情報処理装置、および情報処理方法
WO2013108685A1 (ja) * 2012-01-17 2013-07-25 ソニー株式会社 符号化装置および符号化方法、復号装置および復号方法、プログラム
JP2017195628A (ja) * 2017-06-26 2017-10-26 富士通株式会社 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法及び復号化装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007104362A (ja) * 2005-10-05 2007-04-19 Mitsubishi Electric Corp コード割当装置、シミュレーション装置、コード割当方法、シミュレーション方法、コード割当プログラムおよびシミュレーションプログラム
JP4589213B2 (ja) * 2005-10-05 2010-12-01 三菱電機株式会社 コード割当装置、コード割当方法およびコード割当プログラム
JP2010093414A (ja) * 2008-10-06 2010-04-22 Fujitsu Ltd 情報処理プログラム、情報処理装置、および情報処理方法
WO2013108685A1 (ja) * 2012-01-17 2013-07-25 ソニー株式会社 符号化装置および符号化方法、復号装置および復号方法、プログラム
JPWO2013108685A1 (ja) * 2012-01-17 2015-05-11 ソニー株式会社 符号化装置および符号化方法、復号装置および復号方法、プログラム
US9754599B2 (en) 2012-01-17 2017-09-05 Sony Corporation Encoder and encoding method, decoder and decoding method, and program
US10255925B2 (en) 2012-01-17 2019-04-09 Sony Corporation Encoder and encoding method, decoder and decoding method, and program
US10607618B2 (en) 2012-01-17 2020-03-31 Sony Corporation Encoder and encoding method, decoder and decoding method, and program
JP2017195628A (ja) * 2017-06-26 2017-10-26 富士通株式会社 符号化プログラム、符号化方法、符号化装置、復号化プログラム、復号化方法及び復号化装置

Similar Documents

Publication Publication Date Title
US5960116A (en) Image processing apparatus and method for performing prediction data encoding
JP3017379B2 (ja) 符号化方法、符号化装置、復号方法、復号器、データ圧縮装置及び遷移マシン生成方法
JP4559631B2 (ja) 可変長から可変長へのエントロピー符号化のためのコードブック構成
EP0381078B1 (en) Coding method of image information
JPH0793586B2 (ja) データ圧縮モデル選択方法及びシステム
BRPI0718239B1 (pt) processo de codificação de fonte de informação, processo de decodificação de fonte de informação, aparelho e codificação de fonte de informação e aparelho de decodificação de fonte de informação
KR20190038746A (ko) 데이터 인코딩 방법, 장치 및 저장매체
US6252992B1 (en) Variable length coding
CN110602498B (zh) 一种自适应有限状态熵编码的方法
JP3593884B2 (ja) 符号化装置および復号装置
US11606103B2 (en) Data compression method, data compression device, data decompression method, and data decompression device
JPH05110450A (ja) 符号生成装置
KR102659349B1 (ko) 데이터 압축 장치 및 방법
US10613797B2 (en) Storage infrastructure that employs a low complexity encoder
Ziv A universal prediction lemma and applications to universal data compression and prediction
Howard et al. Parallel lossless image compression using Huffman and arithmetic coding
JPH104557A (ja) 画像処理装置、及び方法、及びその方法を記憶した記憶媒体
JP3350385B2 (ja) 符号生成方法および符号化方法
Nangir et al. A new recursive algorithm for universal coding of integers
KR0182181B1 (ko) 적응차분 펄스부호변조 복원회로
JP3146092B2 (ja) 符号化装置及び復号化装置
KR101573983B1 (ko) 데이터 압축 및 데이터 복원 방법과 장치
JP3113765B2 (ja) 可変長符号デコード回路
Zhang Compression by model combination
Howard et al. Fast and E cient Lossless Image Compression,"

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