JP3247804B2 - データ圧縮方法、データ圧縮/伸長方法、符号語データ数制限装置 - Google Patents

データ圧縮方法、データ圧縮/伸長方法、符号語データ数制限装置

Info

Publication number
JP3247804B2
JP3247804B2 JP17984694A JP17984694A JP3247804B2 JP 3247804 B2 JP3247804 B2 JP 3247804B2 JP 17984694 A JP17984694 A JP 17984694A JP 17984694 A JP17984694 A JP 17984694A JP 3247804 B2 JP3247804 B2 JP 3247804B2
Authority
JP
Japan
Prior art keywords
codewords
coefficients
predetermined number
data
token
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
JP17984694A
Other languages
English (en)
Other versions
JPH07106979A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Publication of JPH07106979A publication Critical patent/JPH07106979A/ja
Application granted granted Critical
Publication of JP3247804B2 publication Critical patent/JP3247804B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、データ圧縮/伸長技術
の分野に係り、特に、2つの独立したデコーディング・
プロセス間のデータバッファリング用記憶装置を持つ場
合に好適なデータ圧縮方法、データ圧縮/伸長方法、符
号語データ数制限装置に関する。
【0002】
【従来の技術】現在、データ圧縮方式はコンピュータシ
ステムにおいて広く利用されている。これらのデータ圧
縮方式は、複数のステージを結合することによって圧縮
または伸長を行なう構成となっている。これらのステー
ジには、データ圧縮系のカスケード接続が含まれよう。
例えば、Joint Photographic Experts Group(JP
EG)静止画像圧縮規格では、2次元の離散的コサイン
変換によってデータを変換した後、その係数が量子化さ
れる。その後に、DC係数の差分パルスコード変調(D
PCM)とAC係数のランレングス・エンコーディング
が続き、最後に、その結果がハフマン符号化される。デ
ータ圧縮システムの伸長部は圧縮部を逆にしたものであ
るので、複数のデコーダがカスケード接続され同様に連
続したステージとなる。
【0003】ある種のデータ圧縮手法は損失性(loss
y)である。損失性圧縮手法においては、圧縮中に入力
データの一部が削除され、あるいは量子化される結果、
圧縮データを伸長しても入力データの完全な複製を得ら
れない。損失性画像圧縮は複数のステージを用いて達成
されることが多い。そのようなシステムの例が図1に示
されている。
【0004】これらカスケード接続された各ステージが
異なった速度で動作することが少なくない。非同期のス
テージがカスケード接続されたリアルタイムシステムの
場合、データバッファリングは設計上の一つの重要点に
なる。
【0005】図1を参照するに、損失性圧縮器101は
入力データ110を速度Rで受け取る。この損失性圧縮
器101は、例えば、入力データ110に応答して係数
を設定速度Rで出力する変換符号(TC)圧縮器であ
る。損失性圧縮器101の出力はランレングス・エンコ
ーダ(RLE)102の入力に結合される。ランレング
ス・エンコーダ102は、速度Rで、損失性圧縮器10
1の出力を受け取って圧縮する。ランレングス・エンコ
ーダ102は可変長のエンコーダであって、その入力に
応答し、一定速度でないR−Gの平均速度でトークンを
生成する。ランレングス・エンコーダ102によって生
成されたトークンはエンコーダ103の入力に加えら
れ、エンコーダ103は受け取ったトークンを符号語に
エンコードする。これらの符号語はR−Gの平均速度で
生成され、そして記憶されあるいはチャネルにより伝送
される。
【0006】図1のシステムにより圧縮されたデータス
トリームの伸長は、ステージが逆のものであることを別
にすれば圧縮の場合と非常に似ている。デコーダ106
は圧縮データストリームを受け取って、一定速でないR
−Gの平均速度でトークンを生成する。このトークンは
ランレングス・エンコーダ105に受け取られ、このラ
ンレングス・エンコーダ105は速度Rで係数を生成す
る。この係数は損失性伸長器104に受け取られ、損失
性伸長器104は再生データ入力111を出力する。
【0007】上述のように、損失性画像圧縮システム中
の各ステージは異なった速度で動作する。各ステージの
速度はRとR−Gで、R>G≧0である。このようにな
るのは、主に可変長エンコーディング(すなわちランレ
ングス・エンコーダ/デコーダ)のためである。この例
にあっては、エンコーダとデコーダはRの速度で動作で
き、同期動作が可能であるので、全く問題はない。しか
し、そうでない場合には、エンコーダ及びデコーダの速
度を平均化するためにバッファリングが必要である。
【0008】従来、速度の遅い方のステージが少なくと
もRのバースト速度で動作できないときには、先入れ/
先出し(FIFO)バッファが使用される。FIFOバ
ッファは、動作速度の違うステージ間を接続するための
周知の非同期解決策である。FIFOバッファは、それ
が一杯になるまで、前段の高速側ステージがその最高速
度で動作することを可能にする。FIFOバッファは本
質的に出力コード・レートを平均化する。
【0009】FIFOバッファのサイズは、平均化を行
なうべき時間の長さによって決まる。言い換えれば、F
IFOバッファのサイズによって、平均化のウインドウ
が決定される。FIFOバッファのサイズが画像のサイ
ズと等しいならば、FIFOバッファは全てのバースト
速度に対応できる。しかしながら、FIFOバッファの
サイズを大きくすればするほどコストが増加し、さら
に、一般的に、バッファのサイズの増加分に格納される
ケースは稀であるので、サイズ増加の効果が逓減する。
【0010】また、エンコーダとデコーダはしばしば特
定用途向けIC(ASIC)で実現される。バッファが
必要な場合、そのバッファをデコーダと同一のICチッ
プ中に含めてもよい。その記憶サイズはチップの全体サ
イズと直接関係する。バッファサイズが大きくなるほ
ど、そのICのサイズが大きくなる。ICが大型化すれ
ば、それだけコストが上昇するのが普通である。チップ
サイズを抑えてチップの総コストを減らすには、バッフ
ァのサイズを可能な限り減らすことが望ましてい。した
がって、システムコストを効果的に減らすためには、必
要とされるバッファ記憶サイズを減らすのが望ましい。
【0011】
【発明が解決しようとする課題】本発明の主たる目的
は、損失性圧縮装置中のバッファのサイズを削減するた
めの方法と装置を提供することと、伸長装置中の複数ス
テージ間に使用されるバッファのサイズを削減すること
である。
【0012】
【課題を解決するための手段】本発明の一態様による圧
縮/伸長装置によれば、エンコーディング系において、
リアルタイム画像データを複数ブロックに分割し、各ブ
ロックを例えば離散的コサイン変換することにより係数
に変換し、この係数をランレングス・エンコーディング
してトークン(第1符号語)を生成し、トークンをハフ
マン・エンコーディングすることによって圧縮データス
トリーム(第2符号語)を得る。デコーディング系にお
いて、圧縮データストリームのハフマン・デコーディン
によりトークンを生成し、トークンのランレングス・
デコーディングによって係数を生成し、係数を画像デー
タに伸長する。
【0013】エンコーディング系のハフマン・エンコー
ディングのステージに入力する各ブロックのトークン数
(符号語データ数)を所定数に制限する。一例では、ラ
ンレングス・エンコーディングのステージで生成された
各ブロックのトークン数を計数し、計数値が所定値に達
したときに、強制的にEOB指示を出し、残りのトーク
ンを切り捨てる。また、一例では、上記所定数は、デコ
ーディング系のハフマン・デコーディングのステージの
後に置かれるバッファメモリのサイズに応じてユーザに
より選択される。
【0014】
【作用】ハフマン・エンコーディングのステージに入力
される1ブロックあたりのトークン数が制限されること
により、当該ステージより出力される1ブロックあたり
の符号語数が制限される。したがって、デコーディング
系のハフマン・デコーディングのステージの扱う1ブロ
ックあたりの符号語数が制限される結果、当該ステージ
の後のデータバッファのメモリサイズの削減が可能にな
る。このバッファと当該ステージとは同一チップ上に実
現されることが多いので、バッファサイズの削減により
チップサイズを小さくでき、システムコストの引下げ等
に効果がある。
【0015】なお、以上の説明は理解を容易にするため
に、やや具体的な本発明の一態様について述べたもので
あり、その範囲に本発明が限定されるものではない。後
記実施例の説明及び特許請求の範囲の記載から理解され
るように、本発明には、2つのカスケード接続されたデ
コーディング・ステージ間のバッファのサイズを削減す
るための新規な方法及び装置、データを複数のデータブ
ロックにエンコードするための新規な方法及び装置、複
数のデータブロックを複数のシンボルにエンコードする
ための新規な方法及び装置、並びに、複数のシンボルを
予め決められた数のシンボルに制限するための新規な方
法及び装置が含まれる。
【0016】
【実施例】以下、本発明によるデータ圧縮及び伸長の方
法並びに装置について述べる。以下の詳細な説明におい
て、本発明の完全な理解のためにクロック速度、ビット
レート、バッファサイズ等々の様々な具体例を提示す
る。しかし、このような具体例によらずに本発明を実施
できることは、当業者には明白であろう。また、周知の
方法、関数、部品及び手順については詳細には述べない
が、これは本発明を無用に難解にすることを避けるため
である。
【0017】<本発明の圧縮/伸長システム> 図2は本発明の圧縮/伸長システムの一実施例のブロッ
ク図である。図2に示したシステムは損失性圧縮システ
ムである。図2に含まれている図1中の対応ブロックそ
れぞれを特定の構成にした場合、本システムは図1のシ
ステムと非常に似た動作をする。
【0018】図2において、リアルタイム画像データは
変換圧縮器202に受け取られ、変換圧縮器202は係
数を出力として生成する。この出力はランレングス・エ
ンコーダ203に受け取られるようにその入力に結合さ
れている。ランレングス・エンコーダ203はトークン
(第1符号語)を生成するが、このトークンは前EOB
(EarlyEnd of Block)回路211に受け取られる。
前EOB回路211の出力するトークンは、FIFO2
12に受け取られるように結合されている。FIFO2
12はオプションであって、本発明を採用するため必要
とされるものではない。ハフマン・エンコーダ204は
FIFO212からのトークンを受け取るように接続さ
れ、そのトークンをエンコードして圧縮データ(第2符
号語)を生成する。この圧縮データはチャネル205へ
出力される。チャネル205は、メモリすなわち記憶装
置を含むか、あるいは通信媒体を含む。
【0019】チャネル205より、圧縮データ(第2符
号語)はハフマン・デコーダ206に受け取られる。ハ
フマン・デコーダ206は圧縮データをトークン(第1
符号語)へとデコードする。ハフマン・デコーダ206
の出力トークンはFIFO207に格納される。本発明
にあっては、FIFO207は、FIFO以外の記憶装
置もしくはバッファでもよい。FIFO207に格納さ
れたトークンはランレングス・デコーダ208に受け取
られる。ランレングス・デコーダ208はトークンを係
数へとデコードし、この係数は変換伸長器209に受け
取られる。変換伸長器209の出力はリアルタイム画像
データである。
【0020】変換圧縮器202、ランレングス・エンコ
ーダ203、前EOB回路211、FIFO212(オ
プション)及びハフマン・エンコーダ204は、本発明
システムのエンコーディング部を構成する。ハフマン・
デコーダ206、FIFO207、、ランレングス・デ
コーダ208及び変換伸長器209は、本発明システム
のデコーディング部を構成する。
【0021】本発明において、ハフマン・デコーダ20
6及びFIFO207は、単一の特定用途向けIC(A
SIC)に統合される。FIFO207はオンチップ
(onchip)であるので、そのサイズは直接的にASIC
の全体サイズを左右する。本発明は、データ圧縮システ
ムに必要なFIFO深さを制限する。一例では、FIF
O207のデコーダFIFO深さは、8ビット・トーク
ンの16個分に、トークンに関連した、あるいは規格
(例えばJPEG)によって必要な、あるビット数を加
えた値にまで制限される。このようにして、ASICの
サイズも同様に制限される。
【0022】図3は図2のシステムの動作のフローチャ
ートである。リアルタイム画像データはラスタースキャ
ン順で変換圧縮器102に受け取られる(処理ブロック
301)。ある例では、変換圧縮器202は、JPEG
規格を使用して画像データを圧縮する(処理ブロック3
02)。変換圧縮器202は、最初に画像を8×8画素
ブロックに分割し、次に、各ブロックに変換を施し係数
を生成する。本発明においては、変換圧縮器202は離
散的コサイン変換(DCT)を施す。本発明では、これ
らの変換係数はつぎに不均等に量子化されることによ
り、64個の量子化係数が得られる。この量子化係数は
つぎにジグザグ順にランレングス・エンコーダ203へ
提供される。
【0023】ランレングス・エンコーダ203は、係数
のジグザグ系列に対しランレングス・エンコーディング
を行なって、トークン(第1符号語)を生成する(処理
ブロック303)。ランレングス・エンコーダ203
は、ゼロ係数のシリーズを、あるカテゴリを持つ一つの
トークン及びゼロトークンの個数を示す計数値へエンコ
ードする。JPEGでは、3種類のトークンがある。各
ブロック毎に、DC係数はDCトークンとなる。非ゼロ
AC係数はACトークンとなる。ACトークンは2つの
パートからなる。ACトークンの一つのパートは、非ゼ
ロAC係数のサイズを表わす。ACトークンのもう一つ
のパートは、ジクザグ順で、非ゼロAC係数の前に連続
したゼロAC係数の個数を表わす。EOB(End of B
lock)トークンは、ブロックの最後の非ゼロ係数がエン
コードされた後に生成される(ただし、最後の係数が非
ゼロの場合は生成されない)。
【0024】トークンは前EOB回路211に受け取ら
れ、この前EOB回路211は個々のブロックのトーク
ン数をある所定数までに制限する(処理ブロック30
4)。これは、一例では、所定数を超えたトークンをす
べて切り捨てることによって行なわれる。トークンはつ
ぎにFIFO212に格納される(処理ブロック30
5)。ただし、FIFO212が使用されるのは、ラン
レングス・エンコーダ203とハフマン・エンコーダ2
04とが、その速度の整合しない時に同期して動作でき
るようにするためである。データが利用できるようにな
った時に、それがエンコードされ、システムのエンコー
ディング部が一つのパイプラインのごとくであるなら
ば、FIFO212は必要とされない。
【0025】トークンは(FIFO212から、あるい
はFIFO212がシステムに含まれていないときは前
EOB回路211から)、ハフマン・エンコーダ204
に受け取られて符号語(第2符号語)へエンコードされ
る(処理ブロック306)。ハフマン・エンコーダ20
4から出力される符号語は、圧縮データを表わしてお
り、チャネル205へ出力されるか、メモリに格納され
る(処理ブロック307)。
【0026】伸長動作は圧縮動作を逆にしたものであ
る。圧縮データはチャネル205よりハフマン・デコー
ダ206に受け取られ、ハフマン・デコーダ206はト
ークン(第1符号語)を生成する(処理ブロック30
8)。FIFO207は、トークンを、ランレングス・
デコーダ208がデコードすることができるまで格納す
る(処理ブロック309)。ランレングス・デコーダ2
08はFIFO207から受け取ったトークンをデコー
ドし係数を生成する(処理ブロック310)。これら係
数は、変換伸長器209に受け取られ画像データへ伸長
される(処理ブロック311)。
【0027】本発明においては、FIFO212,20
7はオプションであり、異速度で動作するステージ間の
非同期を解決するために導入し得る。例えば、FIFO
212はランレングス・エンコーダ203とハフマン・
エンコーダ204の動作速度が異なる時に導入されるこ
とになろうし、FIFO207はハフマン・デコーダ2
06とランレングス・デコーダ208の動作速度が異な
る時に導入されることになろう。
【0028】本発明は、ハフマン・デコーダ206の扱
う符号語数を制限することによって、FIFO207の
サイズを制限する。本発明においては、ハフマン・デコ
ーダ206の扱う符号語数を制限するために、ハフマン
・エンコーダ204により生成される符号語数を制限す
る。ハフマン・エンコーダ204により生成される符号
語数は、ハフマン・エンコーダ204の扱うトークン数
と直接関係している。ハフマン・エンコーダ204によ
り受け取られてエンコードされるトークン数を制限する
ために、本発明は所定数を超えるトークンを持つブロッ
クを切り詰める。所定数を超えるトークンを持つブロッ
クの切り詰めは、ランレングス・エンコーダ203によ
り生成されたトークンの個数がユーザにより選ばれた閾
値に達した時に強制的にEOBトークン(EOBデー
タ)にすることによってなされる。ある例では、所定の
トークン数は1ブロックあたり32トークンである。ト
ークンを生成するのは非ゼロ係数だけであるので、各ブ
ロックの非ゼロAC係数の個数を制限することによりF
IFOの要求が減少する。ゆえに、通常のEOB条件よ
り前に強制的に前EOBトークンを出すことにより、ハ
フマン・エンコーダ204での1ブロックあたりのトー
クン数は直接的に制限される。
【0029】ランレングス・エンコーダ203とハフマ
ン・エンコーダ204の間に速度不整合がある場合、シ
ステムのエンコーディング部のFIFO212のサイズ
を減らすために本発明を利用できる。この場合、ブロッ
ク中の所定数を超える係数部分は切り詰められる結果、
生成可能なトークン数は、ある所定の最大数に制限され
る。このように、1ブロックあたりのトークン数は直接
的に制限される。
【0030】ハフマン・エンコーダまたはデコーダが扱
うことになる1ブロックあたりの最大トークン数は、動
作速度の比によって決めることができる。例えば、損失
性圧縮器202が20MHzの速度で動作し、ハフマン
・エンコーダ204が10MHzの速度で動作する場
合、ハフマン・エンコーダ204が処理可能な最大の平
均速度(R−G)は [10Mトークン/s/20M成分/s]×64成分/ブロック =32トークン/ブロック である。ここで、成分とはこの例では係数である。ゆえ
に、この例の場合、1ブロックあたりのトークン数は3
2に制限される。このシステムはまた、損失性圧縮器の
半分の速度で動作するデコーダについて、エンコーダが
同様の速度で動作しようとしまいと、補償できる。
【0031】なお、本発明はブロック・ベースの圧縮伸
長方式だけに限定されるものではなく、本発明はデータ
が予め定義されたユニットに分割される他の方式でね利
用できる。また、本発明は、係数及びトークンを用いる
場合に利用できるだけでなく、単位がいくつかの成分を
包含する方式にも利用できる。
【0032】<前EOBプロセス> 本発明の当該プロセスが図4に示されている。本発明に
おいて、当該プロセスはトークン計数値をゼロに初期化
することから始まる(処理ブロック400)。ある例で
は、この初期化は各ブロックの先頭で起こる。エンコー
ディング・プロセスの結果としてトークンが生成される
(処理ブロック401)。つぎに、本発明はトークンが
生成される時にトークンの個数を計数する(処理ブロッ
ク402)。テストによって、ブロックのトークン全て
が出払ったかを確認する(処理ブロック403)。そう
であれば当該ブロックの処理は終了するが、そうでなけ
れば処理ブロック404より処理が続く。
【0033】テストにより、出力トークン数がユーザの
選んだ限界値に達したかを確かめる(処理ブロック40
4)。ある例では、ユーザにより選択される限界値は3
2トークンである。あるブロックに関し、ユーザの選択
した限界値に達すると、処理は処理ブロック405に進
み、EOBトークンが発行され、当該ブロックの残りの
係数は捨てられる。限界値に達しないときは、引き続き
トークンが生成されハフマン・エンコーダによりエンコ
ーディングされ、そして処理は処理ブロック401より
継続する。
【0034】システムの出力は完全にJPEG互換であ
る。さらに、本発明は非損失性符号器の前に損失性ステ
ージを付加する。このエンコーダに損失性ステージを追
加することにより、本発明はデコーダ中の非損失性ステ
ージにおける速度不整合による障害を回避する。
【0035】なお、残りの係数を捨てることは、そのブ
ロックの高い周波数の係数をより重く量子化することと
同等であり、高い周波数の係数が多いブロックしか影響
を受けない。高い周波数の係数を除去しても、再生画像
には視覚的に殆ど不利益をもたらさない。
【0036】<前EOB回路の構成> 図5は前EOBを遂行するために必要な回路の一例のブ
ロック図である。図5において、前EOB回路500は
カウンタ501、レジスタ502、コンパレータ50
3、マルチプレクサ504及びANDゲート505から
なる。カウンタ501のイネーブル入力はTOKEN_
CLKに接続される。カウンタ501のリセット入力は
BLOCK_CLK信号に接続される。カウンタ501
の出力はコンパレータ503のA入力に接続される。コ
ンパレータ503のB入力はレジスタ502の出力に接
続される。レジスタ502の入力は6本のデータ線D0
−D5と書き込みイネーブル(WEN)信号からなって
いる。コンパレータ503の出力はANDゲート505
の一方の入力に接続される。ANDゲート505の他方
の入力はTOKEN_CLK信号に接続される。AND
ゲート505の出力はハフマンクロックパルスHUFF
MAN_ENC_CLKである。コンパレータ503の
出力はマルチプレクサ(MUX)504の制御入力にも
接続される。MUX504の一方の入力はハフマン・デ
コーダにより生成されたトークンと接続される。MUX
504の他方の入力はEOBトークン(EOB_TOK
EN)に接続される。EOB_TOKYNは、ある例で
は布線論理和とされ、他の例ではプログラムされる。M
UX504の出力はハフマン・エンコードされるべきト
ークン(HUFFMAN_ENC_TOKEN)であ
る。
【0037】カウンタ501は、TOKEN_CLK信
号を介して各ブロックのトークン数を計数する。カウン
タ501は各ブロックの終わりでリセットされる。ある
例では、カウンタ501は、新しいブロックの始まりで
付勢されるBLOCK_CLK信号を利用してリセット
される。レジスタ502は許された最大数のトークンを
保持する。この値は、WEN信号を付勢することにより
レジスタ502に書き込まれる。WEN信号が付勢され
る時に、データ入力D0−D5のビットがレジスタ502
にラッチされて記憶される。一例では、レジスタ502
は6ビットのカウンタであり、したがって0から63ま
での数を記憶できる。
【0038】コンパレータ503は、カウンタ501の
値をレジスタ502の値と比較する。レジスタ502の
値がカウンタ501の値以上である間、コンパレータ5
03の出力は”1”(例えば、高電位)である。この”
1”出力によってMUX504のトークン出力の選択が
なされる結果、ハフマン・エンコードされるトークンが
出力される。また、コンパレータ503の”1”バイナ
リ出力はANDゲート505をイネーブルするので、T
OKEN_CLKが高電位の時に各クロックはHUFF
MAN_ENC_CLK信号としてANDゲート505
より有効に出力される。カウンタ501の値がレジスタ
502の値以上であるときは、コンパレータ503の出
力が0であることによって、トークンの限界値を超えた
ことを表示する。この場合、ANDゲート505の入力
の一つが0であるため、ANDゲート505のトークン
クロック出力はディセーブルされる。また、コンパレー
タ503の”0”バイナリ出力は、MUX503の0入
力を選択させることにより、MUX504よりEOBト
ークンを出力させる。かくして、レジスタ502の値が
カウンタ501の値より大きい間はトークンが生成され
る。そうでないときは、EOBトークンが出され、EO
B条件が真となってカウンタ501がリセットされるま
でトークンは出力されない。
【0039】この前EOB回路500は、ブロック中の
画素数より1つ少ない値にレジスタ502を初期化する
ことによってディセーブルすることができる。ブロック
が8×8のサイズである例では、63なる値をレジスタ
502に設定すると前EOB回路500はディセーブル
になる。トークン計数値が63以上になるまでコンパレ
ータが1を出力し続けるからである。それでも、この時
に、EOBは自動的に発行される。したがって、強制の
EOBトークンが生成されることはない。
【0040】本発明において、デコーダは変更がない。
したがって、本発明を実施するために、本発明のデコー
ディングに関しては変更不要である。よって、既存のデ
コーダ・チップをそのまま本発明システムのデコーディ
ング部分を実現するために使用できる。
【0041】本発明のみかけの画像品質は、前EOBト
ークン方式によって悪化はしない。JPEG方式におい
ては、変換係数は不均一に量子化される。一般的に、高
い周波数の係数がより重く量子化されるが、これは人間
の視覚系が高い空間周波数に対して感度が低いためであ
る。本発明は、高い周波数の係数だけを切り捨てること
により、上記特性を利用し、本発明の前EOBを用いな
いで圧縮した画像と、人間の視覚系の認識できる限りに
おいて実質的に同一品質の画像を生成する。さらに、非
ゼロAC係数の多いブロック(したがって前EOBによ
って切り捨てられることになるブロック)は視覚的に目
立ちやすい。人間の視覚系は画像の目立つ領域を量子化
しても気付きにくいので、見かけの画質劣化は少ない。
ゆえに、本発明の方法及び装置は、エンコーダから出力
される1ブロックあたりのACトークン数を直接的に制
限する。このようにして、視覚的品質あるいはシステム
のビットレートに殆ど影響を与えることなく、かつ、よ
り少ないハードウエアコストにて、予め決めたサイズの
デコーダを実現することができる。
【0042】以上の記述より当業者には本発明の様々な
変形及び修正が明らかであろうが、図面を用いて説明し
た上記実施例は本発明を限定することを意図したもので
ないことは言うまでもない。
【0043】
【発明の効果】以上の説明から理解されるように、本発
明によれば、伸長/圧縮システム内の異動作速度のステ
ージ間のバッファのサイズを削減し、システムコストを
引き下げることができ、また、バッファサイズの削減に
よる実質的な画像品質の悪化を回避できる等の効果を得
られる。
【図面の簡単な説明】
【図1】損失性画像圧縮システムのブロック図である。
【図2】本発明のデータ圧縮システムの一実施例のブロ
ック図である。
【図3】本発明の圧縮/伸長プロセスのフローチャート
である。
【図4】本発明の前EOBプロセスのフローチャートで
ある。
【図5】本発明の前EOB(End of Block)回路の回
路図である。
【符号の説明】
101 損失性圧縮器 102 ランレングス・エンコーダ 103 エンコーダ 104 損失性伸長器 105 ランレングス・デコーダ 106 デコーダ 202 変換圧縮器 203 ランレングス・エンコーダ 204 ハフマン・エンコーダ 205 チャネル 206 ハフマン・デコーダ 207 FIFO 208 ランレングス・デコーダ 209 変換伸長器 211 前EOB回路 212 FIFO 501 カウンタ 502 レジスタ 503 コンパレータ 504 マルチプレクサ(MUX) 505 ANDゲート
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H03M 7/30 H03M 7/40

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 画像データを圧縮して複数の係数からな
    る複数のブロックを生成するステップ、 該複数ブロックの各ブロック内の複数係数をエンコード
    して複数の第1符号語を生成する第1エンコーディング
    ステップ、 該複数の第1符号語を複数の第2符号語にエンコードす
    るステップであって、該第1符号語の個数を所定個数に
    制限するための制限ステップを含む、第2エンコーディ
    ングステップからなり該制限ステップは、エンコードされた第1符号語の個数
    を計数して計数値を生成するステップ、該計数値を該所
    定個数の比較するステップ、及び、該計数値が該所定個
    数を超えるときに該ブロックの残りの部分の代わりにE
    OB指示を出力するステップからなることを特徴とする
    データ圧縮方法
  2. 【請求項2】 画像データを圧縮して複数の係数からな
    る複数のブロックを生成するステップ、 該複数ブロックの各ブロック内の複数係数をエンコード
    して複数の第1符号語を生成する第1エンコーディング
    ステップ、 該複数の第1符号語を複数の第2符号語にエンコードす
    るステップであって、該第1符号語の個数を所定個数に
    制限するための制限ステップを含む、第2エンコーディ
    ングステップ該複数の第2符号語を複数のデコードされた第1符号語
    にデコードする第1デコーディングステップ該複数のデコードされた第1符号語をバッファに格納す
    るステップ該バッファに格納された該複数のデコードされた第1符
    号語をデコードして複数の係数を生成する第2デコーデ
    ィングステップ、 及び 該係数を画像データに伸長するステップからなり、 該制限ステップは、エンコードされたトークン第1符号
    語の個数を計数して計数値を生成するステップ、該計数
    値を該所定個数の比較するステップ、及び、該計数値が
    該所定個数を超えるときに該ブロックの残りの部分の代
    わりにEOB指示を出力するステップからなることを特
    徴とするデータ圧縮/伸長方法。
  3. 【請求項3】 請求項2記載のデータ圧縮/伸長方法に
    おいて、該所定個数は該バッファメモリのサイズに応じ
    てユーザにより決められることを特徴とするデータ圧縮
    /伸長方法
  4. 【請求項4】 エンコードされる符号語の個数を制限す
    るための装置であって該符号語の個数を計数して該符号語の計数値を生成する
    カウンタ手段、 所定数を記憶するための記憶手段、 該所定数と該計数値とを比較し、該計数値が該所定数を
    超えるときに第1の状態の信号を出力し、該計数値が該
    所定数以下のときに第2の状態の信号を出力する、該記
    憶手段及び該カウンタ手段に接続されたコンパレータ手
    段、 及び 第1及び第2の入力並びに制御入力を有し、該第1
    の入力が該符号語を入力し、該第2の入力がEOB指示
    に入力し、該制御入力が該第1・第2の状態の信号を受
    けるように接続され、該信号が該第1の状態であること
    に応答してEOB指示を出力し、該信号が該第2の状態
    であることに応答して該符号語を出力するマルチプレク
    サ手段からなる符号語データ数制限装置。
JP17984694A 1993-08-17 1994-08-01 データ圧縮方法、データ圧縮/伸長方法、符号語データ数制限装置 Expired - Fee Related JP3247804B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10737693A 1993-08-17 1993-08-17
US08/107376 1993-08-17

Publications (2)

Publication Number Publication Date
JPH07106979A JPH07106979A (ja) 1995-04-21
JP3247804B2 true JP3247804B2 (ja) 2002-01-21

Family

ID=22316320

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17984694A Expired - Fee Related JP3247804B2 (ja) 1993-08-17 1994-08-01 データ圧縮方法、データ圧縮/伸長方法、符号語データ数制限装置

Country Status (3)

Country Link
US (1) US5535290A (ja)
JP (1) JP3247804B2 (ja)
DE (1) DE4429017B4 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9267232B2 (en) 2005-03-24 2016-02-23 Tarkett Inc. Synthetic turf system having an infill trapping structure

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0576749B1 (en) 1992-06-30 1999-06-02 Discovision Associates Data pipeline system
US6330665B1 (en) 1992-06-30 2001-12-11 Discovision Associates Video parser
US6079009A (en) 1992-06-30 2000-06-20 Discovision Associates Coding standard token in a system compromising a plurality of pipeline stages
US6067417A (en) 1992-06-30 2000-05-23 Discovision Associates Picture start token
US6435737B1 (en) 1992-06-30 2002-08-20 Discovision Associates Data pipeline system and data encoding method
US5603012A (en) * 1992-06-30 1997-02-11 Discovision Associates Start code detector
US5809270A (en) 1992-06-30 1998-09-15 Discovision Associates Inverse quantizer
US5768561A (en) 1992-06-30 1998-06-16 Discovision Associates Tokens-based adaptive video processing arrangement
US6047112A (en) 1992-06-30 2000-04-04 Discovision Associates Technique for initiating processing of a data stream of encoded video information
US5828907A (en) 1992-06-30 1998-10-27 Discovision Associates Token-based adaptive video processing arrangement
US6112017A (en) 1992-06-30 2000-08-29 Discovision Associates Pipeline processing machine having a plurality of reconfigurable processing stages interconnected by a two-wire interface bus
US5805914A (en) 1993-06-24 1998-09-08 Discovision Associates Data pipeline system and data encoding method
US5861894A (en) 1993-06-24 1999-01-19 Discovision Associates Buffer manager
JP3332580B2 (ja) * 1994-06-14 2002-10-07 キヤノン株式会社 画像再生装置及び画像再生方式
US5654806A (en) * 1996-05-06 1997-08-05 Xerox Corporation Code manipulation for a high speed JPEG decoder
US5959560A (en) * 1997-02-07 1999-09-28 Said; Amir Data compression via alphabet partitioning and group partitioning
US6266419B1 (en) * 1997-07-03 2001-07-24 At&T Corp. Custom character-coding compression for encoding and watermarking media content
US6111844A (en) * 1997-07-03 2000-08-29 At&T Corp. Quality degradation through compression/decompression
KR100354531B1 (ko) 1998-05-06 2005-12-21 삼성전자 주식회사 실시간 복호화를 위한 무손실 부호화 및 복호화 시스템
US7167259B2 (en) 2000-05-16 2007-01-23 International Business Machines Corporation System and method for merging line work objects using tokenization and selective compression
US7668186B1 (en) * 2006-03-07 2010-02-23 Xilinx, Inc. Token ecosystem for buffer management
US9418450B2 (en) 2006-08-31 2016-08-16 Ati Technologies Ulc Texture compression techniques
US8458457B2 (en) * 2007-02-02 2013-06-04 Red Hat, Inc. Method and system for certificate revocation list pre-compression encoding
US20230052538A1 (en) * 2021-08-13 2023-02-16 Meta Platforms, Inc. Systems and methods for determining token rates within a rate-distortion optimization hardware pipeline

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4394774A (en) * 1978-12-15 1983-07-19 Compression Labs, Inc. Digital video compression system and methods utilizing scene adaptive coding with rate buffer feedback
US4922273A (en) * 1987-04-02 1990-05-01 Konica Corporation Compression method of halftone image data
FR2630277B1 (fr) * 1988-04-15 1992-10-16 Thomson Csf Procede de codage et de decodage d'informations, par blocs, et dispositifs de codage et de decodage, pour la mise en oeuvre de ce procede
US5051840A (en) * 1988-12-14 1991-09-24 Fuji Photo Film Co., Ltd. Device for coding a picture signal by compression
US5046121A (en) * 1989-01-31 1991-09-03 Konica Corporation Image data compression apparatus
US5086488A (en) * 1989-08-19 1992-02-04 Mitsubishi Denki Kabushiki Kaisha Transform coding apparatus
US5142380A (en) * 1989-10-23 1992-08-25 Ricoh Company, Ltd. Image data processing apparatus
US5063608A (en) * 1989-11-03 1991-11-05 Datacube Inc. Adaptive zonal coder
JP3071205B2 (ja) * 1990-01-23 2000-07-31 オリンパス光学工業株式会社 画像データの符号化装置および符号化方法
US5303058A (en) * 1990-10-22 1994-04-12 Fujitsu Limited Data processing apparatus for compressing and reconstructing image data
US5262854A (en) * 1992-02-21 1993-11-16 Rca Thomson Licensing Corporation Lower resolution HDTV receivers

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9267232B2 (en) 2005-03-24 2016-02-23 Tarkett Inc. Synthetic turf system having an infill trapping structure

Also Published As

Publication number Publication date
US5535290A (en) 1996-07-09
JPH07106979A (ja) 1995-04-21
DE4429017B4 (de) 2005-10-13
DE4429017A1 (de) 1995-04-27

Similar Documents

Publication Publication Date Title
JP3247804B2 (ja) データ圧縮方法、データ圧縮/伸長方法、符号語データ数制限装置
JP3210516B2 (ja) データ圧縮方式
US6678422B1 (en) Method and apparatus for image data compression with low memory requirement
US5774594A (en) Signal compression device
JP3007496B2 (ja) 可変長復号化器
US5606370A (en) Sync restoring method for variable-length decoding and apparatus thereof
JP3022784B2 (ja) 高速の可変長復号化装置
EP0945022A1 (en) Efficient fixed-length block compression and decompression
JP2831888B2 (ja) Hdtv復号化器
US5706001A (en) Run-length decoding apparatus for use in a video signal decoding system
EP0692913B1 (en) Digital coding/decoding apparatus using variable length codes
US6055272A (en) Run length encoder
EP0708565A2 (en) Variable-length decoding apparatus using relative addressing
US5696506A (en) Apparatus for variable-length decoding image signals using a run equivalent signal
US5668547A (en) Runlength coding method and apparatus for use in a video signal encoding system
JPH048975B2 (ja)
US6594398B1 (en) Method and apparatus for run-length encoding video data
JP3835273B2 (ja) 画像符号化復号装置
US6353634B1 (en) Video decoder using bi-orthogonal wavelet coding
KR0166721B1 (ko) 가변장 복호화기
US5654704A (en) Video variable length code encoder with EOB insertion responsive to word length
US5561422A (en) Method and apparatus for variable length coding with reduced memory requirement
JP3049265B2 (ja) 画像データ符号化回路
JPH0621830A (ja) 2次元ハフマン符号化方法
EP0729277B1 (en) Circuit for zero-run developing run/level sets and method for zero-run developing the same

Legal Events

Date Code Title Description
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

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

Free format text: PAYMENT UNTIL: 20071102

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20081102

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20081102

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20091102

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20101102

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees