JP3603000B2 - ハフマン符号化装置、ハフマン符号化方法およびハフマン符号化処理プログラムを記録した記録媒体 - Google Patents
ハフマン符号化装置、ハフマン符号化方法およびハフマン符号化処理プログラムを記録した記録媒体 Download PDFInfo
- Publication number
- JP3603000B2 JP3603000B2 JP2000023480A JP2000023480A JP3603000B2 JP 3603000 B2 JP3603000 B2 JP 3603000B2 JP 2000023480 A JP2000023480 A JP 2000023480A JP 2000023480 A JP2000023480 A JP 2000023480A JP 3603000 B2 JP3603000 B2 JP 3603000B2
- Authority
- JP
- Japan
- Prior art keywords
- coefficient
- data
- huffman encoding
- huffman
- coefficients
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/007—Transform coding, e.g. discrete cosine transform
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Discrete Mathematics (AREA)
- Multimedia (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Description
【発明の属する技術分野】
本発明は、離散コサイン変換されたデータをハフマン符号に符号化するハフマン符号化装置、ハフマン符号化方法およびハフマン符号化処理プログラムを記録した記録媒体に関する。
【0002】
【従来の技術】
画像データは非常に多くの情報量を含んでいる。そのため、画像データをそのままの形で処理するのは、メモリ容量および通信速度の点で実用的ではない。そこで、画像データ圧縮技術が重要となる。
【0003】
画像データ圧縮の国際標準の一つとしてJPEG(Joint Photographic Expert Group)がある。JPEGでは、非可逆符号化を行うDCT(離散コサイン変換)方式と、二次元空間でDPCM(Differential PCM) を行う可逆符号化方式が採用されている。以下、DCT方式の画像データ圧縮を説明する。
【0004】
図7はDCT方式の画像データ圧縮を実行するハフマン符号化装置のブロック図である。
【0005】
DCT変換器100は、入力される原画像データを離散コサイン変換(以下、DCT変換と呼ぶ)し、DCT係数を出力する。このDCT変換では、まず、図8に示すように、画像データを複数の8×8画素ブロックに分割する。図9に示すように、1つの8×8画素ブロック内には、64個の画素データPXY(X,Y=0,…,7)が含まれる。分割された8×8画素ブロックに対して二次元DCT変換を行うと、64個のDCT係数SUV(U,V=0,…,7)が得られる。
【0006】
DCT係数S00はDC係数と呼ばれ、残りの63個のDCT係数はAC係数と呼ばれる。図9に示すように、DCT変換されたブロックの左から右に進むにつれて高周波の水平周波数成分を多く含み、上から下へ進むにつれて高周波の垂直周波数成分を多く含むことになる。
【0007】
図7の量子化器110は、DCT変換器100から出力されたDCT係数を8×8個の量子化係数QUV(U,V=0,…,7)からなる量子化テーブルを用いて次式により量子化し、量子化されたDCT係数γUV(U,V=0,…,7)を出力する。
【0008】
γUV=round(SUV/QUV) …(1)
ここで、roundは最も近い整数への整数化処理を示す。この量子化により画質および符号化情報量が制御される。図10に量子化器110から出力されるDCT係数の一例を示す。図10において“A”,“B”,“C”,“D”,“E”,“F”は“0”以外の値を表している。
【0009】
図7のハフマン符号化部120は、量子化器110から出力されたDCT係数γUVをハフマン符号に符号化し、符号化データを出力する。DC係数の符号化では、1つ前のブロックのDC係数と現在のブロックのDC係数との差分値を求め、その差分値を符号化する。この場合、DC係数の差分値がグループ分けされ、各差分値にグループ番号SSSSが割り当てられ、各グループ番号SSSSに対してハフマン符号が割り当てられる。
【0010】
AC係数の符号化では、図11に示すように、AC係数が、まず、ジグザグスキャンによって一次元に配列される。この一次元に配列されたAC係数は、連続する“0”の係数(無効係数)の数を示すラン長NNNNと“0”以外の係数(有効係数)の値とを用いて符号化される。この場合、有効係数はグループ分けされ、各有効係数にグループ番号SSSSが割り当てられる。AC係数の符号化では、ラン長NNNNとグループ番号SSSSとの組み合わせに対してハフマン符号が割り当てられる。
【0011】
図12にDC係数のためのハフマン符号テーブルの一例を示す。例えば、グループ番号SSSSが“0”であるDC係数の差分値には符号長が2のハフマン符号“00”が割り当てられ、グループ番号SSSSが“1”であるDC係数の差分値には符号長が3のハフマン符号“010”が割り当てられ、グループ番号SSSSが“2”であるDC係数の差分値には符号長が3のハフマン符号“010”が割り当てられている。
【0012】
なお、図12のハフマン符号テーブルにおいて、グループ番号SSSSはDC係数の差分値が属するグループを限定するだけである。1つのグループに属するDC係数のうちの1つを特定するために付加ビットが用いられる。
【0013】
図13にAC係数のためのハフマン符号テーブルの一例を示す。例えば、ラン長とグループ番号との組み合わせNNNN/SSSSが“0/0”であるAC係数には符号長が4のハフマン符号“1010”が割り当てられ、NNNN/SSSSが“0/1”であるAC係数には符号長が2のハフマン符号“00”が割り当てられ、NNNN/SSSSが“0/2”であるAC係数には符号長が2のハフマン符号“01”が割り当てられている。
【0014】
なお、図13のハフマン符号テーブルにおいて、グループ番号SSSSは有効係数が属するグループを限定するだけである。1つのグループに属する有効係数のうちの1つを特定するために付加ビットが用いられる。
【0015】
【発明が解決しようとする課題】
図14は図7に示した従来のハフマン符号化装置におけるハフマン符号化処理の一例を示す模式図である。
【0016】
図14に示すように、DCT係数SUVに上式(1)により量子化を行い、量子化されたDCT係数γUVを得る。図14の例では、DCT係数S00が“260”であり、量子化係数Q00が“16”である場合に、量子化されたDCT係数γ00は“16”となる。同様にして、γ01=4、γ02=−2、γ10=−7、γ11=3、γ21=−1、γ30=−1となり、他の量子化されたDCT係数γUVは0となる。
【0017】
量子化されたDCT係数γUVをジグザグスキャンにより一次元に配列し、連続する“0”の係数の数を示すラン長および有効係数を求める。最初の有効係数(DC係数)は“16”となる。以降、ラン長と有効係数との組み合わせは、“0/4”、“0/−7”、“1/3”、“0/−2”、“2/−1”、“0/−1”となり、最後のラン長は“54”となる。
【0018】
上記の従来のハフマン符号化装置において、データの圧縮率を変更する場合には、量子化テーブルに含まれる8×8個の量子化係数QUVを変える必要がある。そのため、データの圧縮率を制御するための処理が煩雑となる。
【0019】
本発明の目的は、データの圧縮率を容易に変更することが可能なハフマン符号化装置、ハフマン符号化方法およびハフマン符号化処理プログラムを記録した記録媒体を提供することである。
【0020】
【課題を解決するための手段および発明の効果】
(1)第1の発明
第1の発明に係るハフマン符号化装置は、一連のデータをハフマン符号に符号化するハフマン符号化装置であって、DCT係数を予め定められた量子化係数を用いて量子化し、量子化されたDCT係数に整数化処理を行わず一連のデータを出力する量子化手段と、一連のデータの各々が所定範囲内にあるか否かを判定する判定手段と、一連のデータのうち所定範囲内にあるデータを無効係数とするとともに所定範囲内にないデータを整数化処理して有効係数とし、連続する無効係数の数と有効係数との組み合わせを用いて符号化を行う符号化手段とを備えたものである。
【0021】
本発明に係るハフマン符号化装置においては、DCT係数が予め定められた量子化係数を用いて量子化され、量子化されたDCT係数に整数化処理が行われず一連のデータが量子化手段により出力される。判定手段により一連のデータの各々が所定範囲内にあるか否かが判定される。そして、符号化手段において、一連のデータのうち所定範囲内にあるデータが無効係数とされ、所定範囲内にないデータが整数化処理されて有効係数とされ、連続する無効係数の数と有効係数との組み合わせを用いて符号化が行われる。
【0022】
この場合、判定手段における所定範囲を任意に変更することにより無効係数の数を任意に調整することができる。したがって、データの圧縮率を容易に変更することが可能となる。
【0024】
また、判定手段における所定範囲を任意に変更することにより無効係数の数を任意に調整することができるので、量子化手段において量子化係数を変えることなくデータの圧縮率を容易に変更することができる。
【0025】
(2)第2の発明
第2の発明に係るハフマン符号化方法は、DCT係数を予め定められた量子化係数を用いて量子化し、量子化されたDCT係数に整数化処理を行わず一連のデータを出力し、一連のデータをハフマン符号に符号化するハフマン符号化方法であって、一連のデータの各々が所定範囲内にあるか否かを判定し、一連のデータのうち所定範囲内にあるデータを無効係数とするとともに所定範囲内にないデータを整数化処理して有効係数とし、連続する無効係数の数と有効係数との組み合わせを用いて符号化を行うものである。
【0026】
本発明に係るハフマン符号化方法においては、DCT係数が予め定められた量子化係数を用いて量子化され、量子化されたDCT係数に整数化処理が行われず一連のデータが出力される。一連のデータの各々が所定範囲内にあるか否かが判定され、一連のデータのうち所定範囲内にあるデータが無効係数とされ、所定範囲内にないデータが整数化処理されて有効係数とされる。そして、連続する無効係数の数と有効係数との組み合わせを用いて符号化が行われる。
【0027】
この場合、所定範囲を任意に変更することにより無効係数の数を任意に調整することができる。したがって、データの圧縮率を容易に変更することが可能となる。
【0029】
また、所定範囲を任意に変更することにより無効係数の数を任意に調整することができるので、量子化係数を変えることなくデータの圧縮率を容易に変更することが可能となる。
【0030】
(3)第3の発明
第3の発明に係るハフマン符号化処理プログラムを記録した記録媒体は、演算処理装置が読み込み可能なハフマン符号化処理プログラムを記録した記録媒体であって、DCT係数を予め定められた量子化係数を用いて量子化し、量子化されたDCT係数に整数化処理を行わず一連のデータを出力する処理と、ハフマン符号化処理プログラムは、一連のデータの各々が所定範囲内にあるか否かを判定する処理と、一連のデータのうち所定範囲内にあるデータを無効係数とするとともに所定範囲内にないデータを整数化処理して有効係数とし、連続する無効係数の数と有効係数との組み合わせを用いて符号化を行う処理とを、演算処理装置に実行させるものである。
【0031】
本発明に係るハフマン符号化処理プログラムによれば、DCT係数が予め定められた量子化係数を用いて量子化され、量子化されたDCT係数に整数化処理が行われず一連のデータが出力される。一連のデータの各々が所定範囲内にあるか否かが判定され、一連のデータのうち所定範囲内にあるデータが無効係数とされ、所定範囲内にないデータが整数化処理されて有効係数とされる。そして、連続する無効係数の数と有効係数との組み合わせを用いて符号化が行われる。
【0032】
この場合、所定範囲を任意に変更することにより無効係数の数を任意に調整することができる。したがって、データの圧縮率を容易に変更することが可能となる。
【0034】
また、所定範囲を任意に変更することにより無効係数の数を任意に調整することができるので、量子化係数を変えることなくデータの圧縮率を容易に変更することができる。
【0035】
【発明の実施の形態】
図1は本発明の一実施例におけるハフマン符号化装置の構成を示すブロック図である。
【0036】
図1において、ハフマン符号化装置1は、DCT変換器10、量子化器20、比較器30、ラン長カウンタ40および符号化器50を含む。比較器30、ラン長カウンタ40および符号化器50がハフマン符号化部60を構成する。
【0037】
DCT変換器10は、入力される原画像データを離散コサイン変換(以下、DCT変換と呼ぶ)し、DCT係数を出力する。このDCT変換では、まず、図8に示したように画像データを複数の8×8画素ブロックに分割する。図9に示したように、1つの8×8画素ブロック内には、64個の画素データPXY(X,Y=0,…,7)が含まれる。分割された8×8画素ブロックに対して二次元DCT変換を行うと、64個のDCT係数SUV(U,V=0,…,7)が得られる。上述したように、DCT係数S00はDC係数と呼ばれ、残りの63個のDCT係数はAC係数と呼ばれる。
【0038】
量子化器20は、DCT変換器10から出力されたDCT係数SUVを8×8個の量子化係数QUV(U,V=0,…,7)からなる量子化テーブルを用いて次式により量子化し、量子化されたDCT係数γUV(U,V=0,…,7)を出力する。
【0039】
γUV=SUV/QUV …(2)
本実施例の量子化では、SUV/QUVの計算結果に整数化処理を行っていない。したがって、量子化されたDCT係数γUVは小数点以下の値を有する。
【0040】
比較器30には、調整可能なしきい値THが設定されている。比較器30は、量子化器20から出力されるDCT係数γUVが次式を満足するか否かを判定する。
【0041】
|γUV|≦TH …(3)
この比較器30は、量子化されたDCT係数γUVが上式(3)を満足する場合には、その量子化されたDCT係数γUVを無効係数とみなす。この場合、比較器30は、無効係数の検出を示す検出信号CTを出力する。また、比較器30は、量子化されたDCT係数γUVが上式(3)を満足しない場合には、その量子化されたDCT係数γUVを有効係数とみなす。この場合、比較器30は、量子化されたDCT係数γUVを最も近い整数へ整数化し、整数化されたDCT係数を有効係数VCとして出力するとともに、リセット信号RSを出力する。また、比較器30は、1ブロック分の8×8個の量子化されたDCT係数γUVの処理が終了したときにもリセット信号RSを出力する。
【0042】
ラン長カウンタ40は、比較器30から出力される検出信号CTをカウントし、カウント結果をラン長RLとして出力する。また、ラン長カウンタ40は、比較器30から出力されるリセット信号RSに応答してカウント結果を0にリセットする。ラン長RLは、連続する無効係数の数、すなわち上式(3)を満足する連続するDCT係数γUVの数を表わしている。
【0043】
符号化器50は、比較器30から出力される有効係数VCおよびラン長カウンタ40から出力されるラン長RLに基づいてハフマン符号化を行い、符号化データを出力する。
【0044】
DC係数の符号化では、1つ前のブロックのDC係数と現在のブロックのDC係数との差分値を求め、その差分値を符号化する。この場合、DC係数の差分値はグループ分けされ、各差分値にグループ番号SSSSが割り当てられ、各グループ番号SSSSに対してハフマン符号が割り当てられる。
【0045】
AC係数の符号化では、図11に示したように、AC係数が、まず、ジグザグスキャンによって一次元に配列される。この一次元に配列されたAC係数は、連続する無効係数の数を示すラン長RLと有効係数VCとを用いて符号化される。この場合、有効係数VCはグループ分けされ、各有効係数VCにグループ番号SSSSが割り当てられる。AC係数の符号化では、ラン長RLとグループ番号SSSSとの組み合わせに対してハフマン符号が割り当てられる。
【0046】
図2に図1のハフマン符号化装置1において用いられるAC係数のためのハフマン符号テーブルの一例を示す。例えば、ラン長とグループとの組み合わせRL/SSSSが“0/0”であるAC係数には符号長が4のハフマン符号“1010”が割り当てられ、RL/SSSSが“0/1”であるAC係数には符号長が2のハフマン符号“00”が割り当てられ、RL/SSSSが“0/2”であるAC係数には符号長が2のハフマン符号“01”が割り当てられている。
【0047】
なお、図2のハフマン符号テーブルにおいて、グループ番号SSSSは有効係数が属するグループを限定するだけである。1つのグループに属する有効係数のうちの1つを特定するために付加ビットが用いられる。
【0048】
実際の符号化処理では、1つのブロック内の最後の量子化されたDCT係数γ77が無効係数の場合には、最後の有効係数の直後にEOB(End of Block)を付け、ブロックの符号化を終了する。1つのブロック内の最後の量子化されたDCT係数γ77が有効係数の場合にはEOBを付けない。また、1つのブロック内の連続する無効係数の数が15を超える場合には、連続する16個の無効係数のラン長RLを表わすZRLを残りのラン長RLが15以下になるまで繰り返して付与する。
【0049】
本実施例では、比較器30が判定手段に相当し、ラン長カウンタ40および符号化器50が符号化手段を構成する。また、量子化器20が量子化手段に相当する。
【0050】
図1のハフマン符号化装置におけるDCT変換器10、量子化器20およびハフマン符号化部60は、集積回路等のハードウェアにより実現することができ、あるいはコンピュータ等のハードウェアおよびソフトウェアにより実現することもできる。
【0051】
次に、図1のハフマン符号化装置1をハードウェアおよびソフトウェアにより実現した例を示す。図3は図1のハフマン符号化装置1のハードウェア構成を示すブロック図である。
【0052】
ハフマン符号化装置1は、CPU(中央演算処理装置)11、RAM(ランダムアクセスメモリ)12、ROM(リードオンリメモリ)13および外部記憶装置14により構成される。外部記憶装置14は、ハードディスクドライブ、フロッピィディスクドライブ、CD−ROMドライブ等の記録媒体駆動装置15、およびハードディスク、フロッピィディスク、CD−ROM等の記録媒体16からなる。
【0053】
ROM13には、システムプログラムが格納されている。また、記録媒体16にはハフマン符号化処理プログラムが記録されている。CPU11は、ROM13に格納されたシステムプログラムに従って動作し、記録媒体16に記録されたハフマン符号化処理プログラムを記録媒体駆動装置15を介して読み込み、そのハフマン符号化処理プログラムをRAM12上で実行する。
【0054】
それにより、図1のDCT変換器10によるDCT変換処理、量子化器20による量子化処理およびハフマン符号化部60による符号化処理が実現される。この符号化処理には、ラン長RLおよび有効係数VCの出力処理が含まれる。
【0055】
図4は図3の記録媒体16に記録されたハフマン符号化処理プログラムにおけるラン長RLおよび有効係数VCの出力処理を示すフローチャートである。
【0056】
まず、ラン長RLを0に設定する(ステップS1)。次に、量子化器20により量子化されたDCT係数γUVを入力する(ステップS2)。そして、量子化されたDCT係数γUVの絶対値がしきい値TH以下であるか否かであるかを判別する(ステップS3)。
【0057】
量子化されたDCT係数γUVの絶対値がしきい値TH以下の場合には、その量子化されたDCT係数γUVを無効係数とみなし、ラン長RLに1を加算し(ステップS4)、ステップS2に戻る。
【0058】
ステップS3において、量子化されたDCT係数γUVの絶対値がしきい値THよりも大きい場合には、その量子化されたDCT係数γUVを整数化して有効係数VCとして出力する(ステップS5)。また、現在のラン長RLを出力する(ステップS6)。そして、ステップS1に戻り、次の量子化されたDCT係数γUVについてステップS1〜S6の処理を実行する。
【0059】
なお、上述のように、実際の符号化処理では、1つのブロック内の連続する無効係数の数が15を越える場合には、連続する16個の無効係数のラン長を表すZRLを残りのラン長が15以下になるまで繰り返して出力する。
【0060】
上記の例では、ハフマン符号化処理プログラムが外部記憶装置14の記録媒体16に記録されているが、ハフマン符号化処理プログラムをROM13に格納し、CPU11がROM13に格納されたハフマン符号化処理プログラムを読み込んでRAM12上で実行してもよい。また、通信回線等の通信媒体を介して受信したハフマン符号化処理プログラムをRAM12上で実行してもよい。この場合には、通信媒体が記録媒体となる。
【0061】
図5は図1のハフマン符号化装置1におけるハフマン符号化処理の一例を示す模式図である。図5の例では、しきい値THが0.2に設定されている。
【0062】
図5に示すように、DCT係数SUVに上式(2)により量子化を行い、量子化されたDCT係数γUVを得る。
【0063】
図5の例では、DCT係数S00が“260”であり、量子化係数Q00が“16”である場合に、量子化されたDCT係数γ00は“16.3”となる。同様にして、γ01=4.4、γ02=−1.6、γ03=0.3、γ10=−6.6、γ11=3.0、γ13=−0.4、γ21=−0.6、γ30=−0.6、γ41=−0.3となり、これらの量子化されたDCT係数γUVは上式(3)を満足しないため、有効係数とみなす。他の量子化されたDCT係数γUVは上式(3)を満足するため、無効係数とみなす。
【0064】
量子化されたDCT係数γUVをジグザグスキャンにより一次元に配列し、上式(3)を満足する連続する無効係数の数を示すラン長RLを求めるとともに、上式(3)を満足しない量子化されたDCT係数γUVを4捨5入により整数化して有効係数VCとして求める。この場合、整数化により“0”となる量子化されたDCT係数γUVは“1”に切り上げて有効係数VCとして出力する。例えば、量子化されたDCT係数γUV=0.3は“1”として出力する。
【0065】
ブロック内の先頭の有効係数VC(DC係数)は“16”となる。先頭の有効係数VCの前にはラン長RLが存在しない。以降、ラン長RLと有効係数VCとの組み合わせは、“0/4”、“0/−7”、“1/3”、“0/−2”、“0/1”、“1/−1”、“0/1”、“3/1”、“5/1”となり、最後のラン長RLは“44”となる。図5の例では、データの圧縮率が図14の例に比べて低くなっている。
【0066】
図6は図1のハフマン符号化装置1におけるハフマン符号化処理の他の例を示す模式図である。図6の例では、しきい値THが1.5に設定されている。
【0067】
図6に示すように、DCT係数SUVに上式(2)により量子化を行い、量子化されたDCT係数γUVを得る。
【0068】
図6の例では、DCT係数S00が“260”であり、量子化係数Q00が“16”である場合に、量子化されたDCT係数γ00は“16.3”となる。同様にして、γ01=4.4、γ02=−1.6、γ10=−6.6、γ11=3.0となり、これらの量子化されたDCT係数γUVは上式(3)を満足しないため、有効係数とみなす。他の量子化されたDCT係数γUVは上式(3)を満足するため、無効係数とみなす。
【0069】
量子化されたDCT係数γUVをジグザグスキャンにより一次元に配列し、上式(3)を満足する連続する無効係数の数を示すラン長RLを求めるとともに、上式(3)を満足しない量子化されたDCT係数γUVを4捨5入により整数化して有効係数VCとして求める。
【0070】
ブロック内の先頭の有効係数VC(DC係数)は“16”となる。先頭の有効係数VCの前にはラン長RLが存在しない。以降、ラン長RLと有効係数VCとの組み合わせは、“0/4”、“0/−7”、“1/3”、“0/−2”となり、最後のラン長RLは“59”となる。図6の例では、データの圧縮率が図14の例に比べて高くなっている。
【0071】
上記のように、本実施例のハフマン符号化装置1においては、しきい値THを任意に調整することにより量子化器20から出力される量子化されたDCT係数γUVのうち無効係数とみなすDCT係数γUVの数を任意に調整することができ、連続する無効係数の数を示すラン長RLを任意に調整することができる。したがって、量子化テーブルに含まれる8×8個の量子化係数QUVを変えることなくデータの圧縮率を容易に変更することが可能となる。
【0072】
なお、上記実施例では、量子化器20による量子化においてSUV/QUVの計算結果に整数化処理を行っていないが、量子化の際に上式(1)で示したようにSUV/QUVの計算結果に整数化処理を行ってもよい。
【0073】
また、上記実施例では、量子化されたDCT係数γUVの絶対値がしきい値TH以下の場合にそのDCT係数γUVを無効係数とみなしているが、無効係数とみなす量子化されたDCT係数γUVの範囲は、任意に設定することができる。
【図面の簡単な説明】
【図1】本発明の一実施例におけるハフマン符号化装置の構成を示すブロック図である。
【図2】図1のハフマン符号化装置に用いられるAC係数のためのハフマン符号テーブルの一例を示す図である。
【図3】図1のハフマン符号化装置のハードウェア構成を示すブロック図である。
【図4】図3の記録媒体に記録されたハフマン符号化処理プログラムにおけるラン長および有効係数の出力処理を示すフローチャートである。
【図5】図1のハフマン符号化装置におけるハフマン符号化処理の一例を示す模式図である。
【図6】図1のハフマン符号化装置におけるハフマン符号化処理の他の例を示す模式図である。
【図7】従来のハフマン符号化装置の構成を示すブロック図である。
【図8】画像データのブロック化を示す図である。
【図9】8×8画素ブロックおよびDCT変換されたブロックを示す図である。
【図10】量子化されたDCT係数の一例を示す図である。
【図11】ジグザグスキャンを説明するための図である。
【図12】DC係数のためのハフマン符号テーブルの一例を示す図である。
【図13】従来のハフマン符号化装置に用いられるAC係数のためのハフマン符号テーブルの一例を示す図である。
【図14】従来のハフマン符号化装置におけるハフマン符号化処理の一例を示す模式図である。
【符号の説明】
1 ハフマン符号化装置
10 DCT変換器
11 CPU
12 RAM
13 ROM
14 外部記憶装置
15 記録媒体駆動装置
16 記録媒体
20 量子化器
30 比較器
40 ラン長カウンタ
50 符号化器
60 ハフマン符号化部
Claims (3)
- 一連のデータをハフマン符号に符号化するハフマン符号化装置であって、
DCT係数を予め定められた量子化係数を用いて量子化し、量子化されたDCT係数に整数化処理を行わず一連のデータを出力する量子化手段と、
一連のデータの各々が所定範囲内にあるか否かを判定する判定手段と、
前記一連のデータのうち前記所定範囲内にあるデータを無効係数とするとともに前記所定範囲内にないデータを整数化処理して有効係数とし、連続する無効係数の数と有効係数との組み合わせを用いて符号化を行う符号化手段とを備えたことを特徴とするハフマン符号化装置。 - 一連のデータをハフマン符号に符号化するハフマン符号化方法であって、
DCT係数を予め定められた量子化係数を用いて量子化し、量子化されたDCT係数に整数化処理を行わず一連のデータを出力し、一連のデータの各々が所定範囲内にあるか否かを判定し、前記一連のデータのうち前記所定範囲内にあるデータを無効係数とするとともに前記所定範囲内にないデータを整数化処理して有効係数とし、連続する無効係数の数と有効係数との組み合わせを用いて符号化を行うことを特徴とするハフマン符号化方法。 - 演算処理装置が読み込み可能なハフマン符号化処理プログラムを記録した記録媒体であって、
前記ハフマン符号化処理プログラムは、
DCT係数を予め定められた量子化係数を用いて量子化し、量子化されたDCT係数に整数化処理を行わず一連のデータを出力する処理と、
一連のデータの各々が所定範囲内にあるか否かを判定する処理と、
前記一連のデータのうち前記所定範囲内にあるデータを無効係数とするとともに前記所定範囲内にないデータを整数化処理して有効係数とし、連続する無効係数の数と有効係数との組み合わせを用いて符号化を行う処理とを、前記演算処理装置に実行させることを特徴とするハフマン符号化処理プログラムを記録した記録媒体。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000023480A JP3603000B2 (ja) | 2000-02-01 | 2000-02-01 | ハフマン符号化装置、ハフマン符号化方法およびハフマン符号化処理プログラムを記録した記録媒体 |
| US09/774,922 US6606039B2 (en) | 2000-02-01 | 2001-01-31 | Huffman encoder, Huffman encoding method and recording medium having program for Huffman encoding process recorded thereon |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000023480A JP3603000B2 (ja) | 2000-02-01 | 2000-02-01 | ハフマン符号化装置、ハフマン符号化方法およびハフマン符号化処理プログラムを記録した記録媒体 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2001217721A JP2001217721A (ja) | 2001-08-10 |
| JP3603000B2 true JP3603000B2 (ja) | 2004-12-15 |
Family
ID=18549634
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000023480A Expired - Fee Related JP3603000B2 (ja) | 2000-02-01 | 2000-02-01 | ハフマン符号化装置、ハフマン符号化方法およびハフマン符号化処理プログラムを記録した記録媒体 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US6606039B2 (ja) |
| JP (1) | JP3603000B2 (ja) |
Families Citing this family (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003006643A (ja) * | 2001-06-25 | 2003-01-10 | Canon Inc | 画像処理装置及びその方法、プログラム |
| JP4090862B2 (ja) | 2002-04-26 | 2008-05-28 | 松下電器産業株式会社 | 可変長符号化方法および可変長復号化方法 |
| EP2282310B1 (en) | 2002-09-04 | 2012-01-25 | Microsoft Corporation | Entropy coding by adapting coding between level and run-length/level modes |
| JP3769753B2 (ja) * | 2003-03-24 | 2006-04-26 | ソニー株式会社 | 符号化装置および符号化方法、記録媒体、並びにプログラム |
| US7463372B2 (en) * | 2004-01-30 | 2008-12-09 | Canon Kabushiki Kaisha | Recording system and control method therefor |
| JP2007043495A (ja) * | 2005-08-03 | 2007-02-15 | Fujitsu Ltd | 画像処理装置及び画像処理方法 |
| EP2120448A1 (en) * | 2008-05-14 | 2009-11-18 | Thomson Licensing | Method of processing of a compressed image into a gamut mapped image using spatial frequency analysis |
| US8406307B2 (en) | 2008-08-22 | 2013-03-26 | Microsoft Corporation | Entropy coding/decoding of hierarchically organized data |
| FR2948792B1 (fr) * | 2009-07-30 | 2011-08-26 | Oberthur Technologies | Procede de traitement de donnees protege contre les attaques par faute et dispositif associe |
| TWI562621B (en) | 2011-06-30 | 2016-12-11 | Samsung Electronics Co Ltd | Apparatus of decoding video |
| CN112399181B (zh) * | 2019-08-19 | 2022-08-26 | 华为技术有限公司 | 图像编解码的方法、装置和存储介质 |
Family Cites Families (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0260748B1 (de) | 1986-09-13 | 1994-07-13 | Philips Patentverwaltung GmbH | Verfahren und Schaltungsanordung zur Bitratenreduktion |
| CA1296430C (en) * | 1986-11-10 | 1992-02-25 | Masahide Kaneko | Encoding system capable of accomplishing a high efficiency by anterior and/or posterior processing to quantization |
| DE68909592T2 (de) | 1989-07-04 | 1994-05-11 | Rai Radiotelevisione Italiana | Vorrichtung zur Redundanzreduktion in Blöcken digitaler Videodaten in DCT-Kodierung. |
| US5086488A (en) * | 1989-08-19 | 1992-02-04 | Mitsubishi Denki Kabushiki Kaisha | Transform coding apparatus |
| JP2880533B2 (ja) | 1989-09-01 | 1999-04-12 | 富士通株式会社 | 画像帯域圧縮符号化方式 |
| JP2881886B2 (ja) | 1989-12-30 | 1999-04-12 | ソニー株式会社 | 映像信号符号化方法及びその装置 |
| JP3012698B2 (ja) * | 1991-01-29 | 2000-02-28 | オリンパス光学工業株式会社 | 画像データの符号化装置および符号化方法 |
| JP2670201B2 (ja) * | 1991-08-30 | 1997-10-29 | 富士写真フイルム株式会社 | 画像データ圧縮符号化装置および方法 |
| JP3196906B2 (ja) * | 1992-08-21 | 2001-08-06 | 富士ゼロックス株式会社 | 画像信号の符号化装置 |
| KR0183688B1 (ko) | 1994-01-12 | 1999-05-01 | 김광호 | 영상부호화방법 및 장치 |
| DE69516734T2 (de) * | 1994-02-01 | 2000-09-28 | Canon Kk | Bildverarbeitungsverfahren und -gerät |
| JP3204290B2 (ja) | 1995-02-09 | 2001-09-04 | 住友電気工業株式会社 | 表面弾性波素子 |
| US6175594B1 (en) * | 1998-05-22 | 2001-01-16 | Ati Technologies, Inc. | Method and apparatus for decoding compressed video |
| EP1045593A4 (en) * | 1998-11-04 | 2007-06-06 | Mitsubishi Electric Corp | DECODER AND IMAGE ENCODER |
-
2000
- 2000-02-01 JP JP2000023480A patent/JP3603000B2/ja not_active Expired - Fee Related
-
2001
- 2001-01-31 US US09/774,922 patent/US6606039B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JP2001217721A (ja) | 2001-08-10 |
| US6606039B2 (en) | 2003-08-12 |
| US20010011959A1 (en) | 2001-08-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3356663B2 (ja) | 画像符号化装置、画像符号化方法および画像符号化プログラムを記録した記録媒体 | |
| JP4365957B2 (ja) | 画像処理方法及びその装置及び記憶媒体 | |
| JP3603000B2 (ja) | ハフマン符号化装置、ハフマン符号化方法およびハフマン符号化処理プログラムを記録した記録媒体 | |
| JPH10243399A (ja) | 符号量制御装置及び該符号量制御装置を含む動画像符号化装置 | |
| JPH07107300A (ja) | 画像符号化装置 | |
| CN101502122A (zh) | 编码装置及编码方法 | |
| JPH08242378A (ja) | 標準adct圧縮像を効率的に繰り返し圧縮解除する方法 | |
| JP3082585B2 (ja) | 画像情報符号化処理装置、画像情報復号化処理装置及び画像情報符号化復号化処理装置 | |
| JP3532963B2 (ja) | 画像圧縮装置 | |
| JP3105906B2 (ja) | 画像処理装置 | |
| JP3835273B2 (ja) | 画像符号化復号装置 | |
| JPH0723385A (ja) | 高能率符号化装置 | |
| JP3559314B2 (ja) | 画像圧縮装置 | |
| JPH03238970A (ja) | 変換符号化方式 | |
| CN100566419C (zh) | 以无损的方式编码数字图像数据的设备和方法 | |
| JPH04255190A (ja) | 画像データ圧縮装置 | |
| JP3049265B2 (ja) | 画像データ符号化回路 | |
| JP3024386B2 (ja) | 符号化装置 | |
| JP2003333339A (ja) | 画像符号化装置及び画像符号化方法 | |
| JP2820807B2 (ja) | 画像データ符号化方法 | |
| JPH05276391A (ja) | 画像圧縮装置及び画像圧縮方法 | |
| JP2931328B2 (ja) | 画像信号圧縮符号化装置 | |
| JP3001758B2 (ja) | ハフマン符号化装置およびハフマン符号化方法 | |
| JP4049583B2 (ja) | 画像圧縮プログラム及びこれを記録したコンピュータ読み取り可能な記録媒体並びに画像圧縮装置 | |
| JPH05304612A (ja) | 画像処理装置及び方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040415 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040420 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040616 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040706 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040921 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040927 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 3603000 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081001 Year of fee payment: 4 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091001 Year of fee payment: 5 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091001 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101001 Year of fee payment: 6 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111001 Year of fee payment: 7 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111001 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121001 Year of fee payment: 8 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121001 Year of fee payment: 8 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121001 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131001 Year of fee payment: 9 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |