JP3171776B2 - 圧縮方法及びコンテキスト・モデラー - Google Patents

圧縮方法及びコンテキスト・モデラー

Info

Publication number
JP3171776B2
JP3171776B2 JP31392695A JP31392695A JP3171776B2 JP 3171776 B2 JP3171776 B2 JP 3171776B2 JP 31392695 A JP31392695 A JP 31392695A JP 31392695 A JP31392695 A JP 31392695A JP 3171776 B2 JP3171776 B2 JP 3171776B2
Authority
JP
Japan
Prior art keywords
context
pixel
identity
value
result
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
JP31392695A
Other languages
English (en)
Other versions
JPH08228342A (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 JPH08228342A publication Critical patent/JPH08228342A/ja
Application granted granted Critical
Publication of JP3171776B2 publication Critical patent/JP3171776B2/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/507Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction using conditional replenishment

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】
【発明の属する技術分野】本発明は画像圧縮に係り、特
に、デジタル画像シーケンスの圧縮に関する。
【0002】
【従来の技術】デジタル画像の圧縮は、圧縮前の画像の
ビットを再配列して、使用ビット数の少ない圧縮画像を
生成するプロセスである。非損失性(lossless)圧縮に
よる場合、圧縮画像は圧縮前の原画像を完全に復元でき
るだけの情報を含んでいる。ある種の圧縮プロセスは損
失性(lossy)であり、圧縮前の画像をほぼ復元できる
だけである。損失性圧縮が利用されるアプリケーション
の場合、デジタル画像の性格及び圧縮スキームは再現画
像が原画像に十分に似ていれば損失を問題にしないよう
なものである。例えば、ある損失性圧縮スキームでは、
わずかではあるが色のバリエーション又は画像の鮮明度
が失われる。
【0003】損失性圧縮は、画像を完全には復元できな
いが、非損失性圧縮より高い圧縮率を得られることが多
い点で有利である。しかしながら、アプリケーションに
よっては、損失は許されず圧縮は非損失性でなければな
らない。このようなアプリケーションには、効率的な非
損失性圧縮が必要である。ここで、効率とは得られる圧
縮率を意味する。したがって、ある入力画像を1/4の
サイズに圧縮する(圧縮率=4:1)圧縮装置は、その
画像を1/2サイズに圧縮する(圧縮率=2:1)圧縮
装置より効率がよい。計算能力を一定としたときの圧縮
の実行速度は、ここで述べない一点を除いて圧縮装置の
効率の尺度とは別物である。
【0004】デジタル画像は、画素に割り当てられた画
素値(簡略化のため、”画素”と”画素値”が同じ意味
でしばしば用いられる)の集まり(通常、二次元配列)
により記述される。画素値は、画像を生成するために画
素に塗る色を指定する。画像が”パレット化された”
(palettized)画像であるときには、画素値は色値を直
接には指定せず、各索引と色値との相互参照を格納して
いる色テーブルに対する索引である。パレット化画像が
パレット化しない画像に比べ有利な点は、色テーブル中
の一つの値を変更するだけで一群の同一色の画素を変更
できることである。このようなパレット化画像の性質
は、ビデオゲームで特に有用である。例えば、ビデオゲ
ームは、レーシングカーの一つのパレット化画像を記憶
し、各プレイヤーに異なった色テーブルを割り当てるこ
とによりプレイヤー毎に違った色のレーシングカーを表
示することができるだろう。
【0005】パレット化画像の不利な点は、パレット化
画像が通常、非損失性圧縮しなければならないことであ
る。損失性圧縮では、画素値の軽微なエラーを生じるこ
とがある。パレット化されない画像の場合、このような
軽微なエラーは通常、色値の僅かなずれとなり、画像に
は殆ど影響しない。しかし、パレット化した画像では、
このエラーは索引値の僅かなずれとなり、これは色の大
きなずれとなるので画像を大幅に変化させる。
【0006】一つの圧縮方法がZandi等により、本
発明の譲受人に譲渡された米国特許出願第08/20
0,233号(”Compression of Palletized Image
s andBinarization for Bitwise Coding of M-ary
Alphabets Therefor”,1994年2月23日受理)
で提案されている。この出願の内容は引用により本明細
書に組み込まれ、また、”Zandi”と呼ばれる。Z
andiでは、色テーブルの存在が圧縮システムのため
にうまく利用される。画像の画素値はテーブルの任意の
索引であるから、テーブルのエントリーを設定し直して
も、画素値により指定されるテーブルエントリーの色値
が変わらない限り、情報は失われない。このような制約
の下で、画素値はそのビットが圧縮しやすくなるように
再割り当てされる。
【0007】Zandiの圧縮方法は非常に効率がよい
が、動きのある表示(例えばビデオシーケンス)を作り
出す多数の画像を記憶する必要がある場合には、毎秒の
ビデオシーケンスのために60もの画像すなわちフレー
ムを生成しなければならないので、さらに高い圧縮率が
必要である。1画像あたり256画素×240画素,8
ビット画素値の解像度では、圧縮しない1フレームに6
1440バイト(8ビット/バイト)のメモリが必要で
あるので、1秒の(60フレーム)のビデオシーケンス
のために、それが圧縮されないときには3,686,4
00バイトのメモリが必要である。
【0008】ビデオシーケンスを使いビデオカートリッ
ジで提供されるビデオゲームにとって、優れた圧縮が重
要である。ゲームの命令、固定画像及びビデオシーケン
スが全てリード・オンリー・メモリ(ROM)に格納さ
れるからである。ビデオカートリッジを安価にしなけれ
ばならない場合、ビデオゲームのデザイナーは限られた
ROMサイズに無理にあわせなければならないことが多
い。ゆえに、彼らは、限られたROMにより多くのシー
ンを収容可能にする、あるいは、より小さく安価なRO
Mを記憶に使用できるようにする、より優れた圧縮を要
望する。
【0009】圧縮装置は、圧縮すべき入力ブロックより
シンボルをシーケンシャルに読み込み、それらを圧縮し
て出力ファイルを生成する。入力ファイルが一つのデジ
タル画像又はフレームのシーケンス(各フレームは1つ
のデジタル画像である)である場合、シンボルは画素値
である。画素値は、シーケンシャルに読みとられる時に
は、通常、最上行の画素から始まって最下行の画素へ向
かうような順序で読みとられ、各行内では左から右へと
読みとられる。圧縮されようとしている原画素は”カレ
ント”(current)画素と呼ばれ、プライア(prior)画
素は処理済みの画素を意味し、”アプカミング”(upco
ming)画素はまだ処理されていない画素を意味し、”ネ
クスト”(next)画素はカレント画素のすぐ後に処理さ
れるアプカミング画素である。ある圧縮装置は一度にカ
レント画素の1ビットを圧縮し、この場合、処理される
ビットはカレント・ビットプレーンにあるといわれる。
【0010】圧縮装置は、カレント・シンボルを若干の
圧縮ビット(符号語)に変換するコーダー(coder)を
含んでいる。全てのシンボルに対する符号語が出力ブロ
ックを形成する。あるコーダーでは、入力シンボルと出
力符号語との関係は固定している。適応的エントロピー
・コーダーでは、その関係はカレント・シンボルの生起
確率に応じて変わる。エントロピー・コーダーがそのよ
うに呼ばれるのは、データをエントロピーにより規定さ
れる理論的な圧縮限界まで圧縮しようとするからであ
る。エントロピーは、平均的に、シンボルSを、その生
起確率の逆数の2の対数より少ないビット数には符号化
し得ないと規定する。すなわち、シンボルSの生起確率
をPとすると、圧縮ブロックにおいてシンボルSを抽出
できるように表現するためには、少なくともN=log
2 (1/P)ビットが必要とされる。したがって、非損
失性圧縮の場合、エントロピー限界を越える圧縮率は不
可能である。
【0011】ハフマン・コーダーでは、1符号語あたり
のビット数は整数でなければならないので、いくつかの
符号語は、その生起確率に対するエントロピーにより必
要とされるビット数より、端数ビット分多いビットで表
現されることになる。このような丸めを行うので、ハフ
マン・コーダーは、非整数のビットを用いて符号語を表
現できるエントロピー・コーダーほどは圧縮しない。非
整数ビット数の符号語の使用は、符号語を互いにオーバ
ーラップさせることにより可能になる。
【0012】1符号語のビット数が非整数の場合でも、
確率は正確には決まらないので、画像をエントロピー限
界までは圧縮できない。勿論、画像全体を調べることに
より入力画像中の各画素値の生起確率を正確に測定でき
るが、伸長装置側でカレント画素を伸長しようとする時
に入手できない情報はカレント画素をどのように符号化
すべきか決定するのに用いられるべきでない。そうでな
いと、伸長装置はカレント画素を復号するための十分な
情報を得られないことになる。
【0013】幸い、プライア画素だけに基づいた確率予
測によって、エントロピー・コーダーに対し適切な入力
が提供される。確率予測を改善するため、条件付き確率
予測を考慮したコンテキストが用いられる。すなわち、
あるコンテキストが与えられれば、カレント画素となる
画素の確率Pが決まる。伸長装置がカレント画素を復号
する前にコンテキストを決定できるように、コンテキス
トはプライア画素だけに依存すべきである。画素のコン
テキストの決定要素を選択するものは、コンテキスト・
モデルとして知られている。例えば、あるコンテキスト
・モデルでは、圧縮される画素に対するコンテキスト
は、その直前のプライア画素によって決定される。ある
コンテキスト・モデルを使って確率がより良好に予測さ
れるならば、そのコンテキスト・モデルはより良好な圧
縮をもたらす。
【0014】コンテキスト・モデルが最も良く働いた時
には、コンテキストは符号化されるシンボルもしくは画
素の的確な予測子である。例えば、画素Pのコンテキス
トがCで、Pがその画素値をそのコンテキストで持つ確
率が0.50であるときには、その画素の符号化のため
に1ビットだけ必要である。しかし、その確率が0.7
0ならば、1/2ビットしか必要でない。画素が予測可
能性がよければよいほど、その画素の符号化に必要なビ
ット又はビットの部分が少なくてよいので、コンテキス
ト・モデルが優れているほど圧縮率がよくなる。同一色
の大きな領域を持つ画像の場合、近傍画素の色はカレン
ト画素の色の良好な予測子であり、したがって、良好な
コンテキスト・モデルの一つは、近傍画素の色によりコ
ンテキストが決定されるモデルである。
【0015】しかし、良好なコンテキスト・モデルを用
いる場合であっても、さらに高い圧縮率が可能であるし
望ましい。
【0016】
【発明が解決しようとする課題】本発明の目的は、改良
した画像圧縮の方法及びそのための改良したコンテキス
ト・モデラー(modeller)を提供することにある。
【0017】
【課題を解決するための手段】本発明によれば、複数入
力シンボル中の入力シンボルを圧縮するための方法が提
供される。この方法は、原画素を、該原画素と画素値が
同一性関係にあるとみなせる位置的に関連した画素(同
一性画素)と比較し、同一性結果を判定するステップ
と、該同一性結果の判定のために第1コンテキストモデ
ル(同一性コンテキストモデル)に従って、該原画素に
関連した少なくとも一つのコンテキスト画素もしくはそ
の位置に依存する同一性(sameness)コンテキストを決
定するステツプと、該同一性結果及び該同一性コンテキ
ストをエントロピー・コーダーへ出力するステップと、
該同一性結果が否定で、該原画素と該同一性画素とが等
しくない場合、第2コンテキストモデル(剰余コンテキ
ストモデル)に従って、該原画素に関連したコンテキス
ト画素もしくはその位置によって規定される剰余(resi
dual)コンテキストを決定して、剰余結果として該原画
素の表現及び剰余コンテキストをエントロピー・コーダ
ーへ出力するステップと、該エントロピー・コーダーを
使って、該同一性結果及び該剰余結果を符号化するステ
ップを有することを主たる特徴とするものである。
【0018】本発明によれば、画素が入力され、結果値
及びコンテキスト値がエントロピー・コーダーに出力さ
れるところの、圧縮又は伸長システム用のコンテキスト
・モデラーが提供される。このコンテキスト・モデラー
は、複数のクロックサイクルのそれぞれにおいて画素を
受け取るために接続され、カレント画素値を格納する入
力画素レジスタ、 該入力画素レジスタに接続されて該入
力画素レジスタの前の内容を格納し、それをコンテキス
トデータ用として出力するフレーム記憶、該フレーム記
憶及び該入力画素レジスタに接続され、該コンテキスト
データの第1の部分を該カレント画素値と比較し、同一
性表示を出力するコンパレータ、少なくとも該コンパレ
ータに接続され、少なくとも該同一性表示及び該コンテ
キストデータの第2の部分を記憶するコンテキストレジ
スタ該入力画素レジスタに接続され、該カレント画素
値に基づいた結果値を出力する結果出力手段該コンテ
キストレジスタに接続され、該同一性表示が肯定のとき
該コンテキストレジスタの内容のビットをマスクして
同一性コンテキスト値を生成する同一性マスク該コン
テキストレジスタに接続され、該同一性表示が否定する
ときに該コンテキストレジスタの内容のビットをマスク
して剰余コンテキスト値を生成する剰余マスク 該同一
性表示が肯定を示す時に該結果出力出段により出力され
た該結果値に対応する該コンテキスト値として該同一性
コンテキスト値を出力し、該同一性表示が否定を示す時
に該結果出力手段により出力された結果値に対応する該
コンテキスト値として該剰余コンテキスト値を出力する
制御ロジックを有することを主たる特徴とするものであ
る。
【0019】
【発明の実施の形態】本発明は、2つのコンテキスト・
セット、すなわち、カレント画素値が前フレームの対応
位置の画素と同一であるか判定するためのコンテキスト
を提供するコンテキスト・セットと、前フレームの画素
と同一でない画素値を符号化する時にコンテキストを提
供するもう一つのコンテキスト・セットとを用いること
により、ビデオ・シーケンスに対する圧縮を改善する。
【0020】本発明は、ビデオ・シーケンスの時間的に
接近した画素が、符号化しようとする画素のための貴重
なコンテキスト情報を提供すること、並びに、時間的に
接近した画素及び空間的に接近した画素が同一である場
合、その情報は、ただ一つのデシジョン(バイナリ・デ
シジョン、ただし1ビット程度に符号化されるもの)に
より表現できることに着目し、改善したコンテキストモ
デルを提供する。したがって、”同一性”(sameness)
判定を出力するコンテキスト・モデラーは、同一性が真
の時には処理をする必要も出力を出す必要もない。
【0021】同一性デシジョンを用いると計算が減る。
これは、同一性デシジョンを復号する時には、伸長装置
が画素を前フレームの対応画素と同じであると判断する
と、その画素に対しそれ以上の復号は必要でないからで
ある。
【0022】同一性テストに用いられる画素ペアは、二
つのフレームの対応した画素である必要はない。アプリ
ケーションによっては、同一性ビットは、カレント画素
値と前行の画素又は前フレームの位置がずれた画素の画
素値との同一性を表すこともあるからである。実際、カ
レント画素を、前に送られた任意の画素と比較してもよ
い。例えば、カメラが、フレーム間でシーンがどのよう
に変化するかを示すモーション・センサー出力を持って
いると、カレント画素を、カメラ自体の動きがなければ
前フレームの同一位置にあったであろう画素と比較して
もよい(このようなカメラは、1994年3月7日受理
された米国特許出願第08/207,244号に示され
ている)。また、テーブル・ルックアップ、モーション
予測方式、その他の方法を、カレント画素と比較される
べき前画素を決定論的に選択するために用いてもよい。
【0023】図1は圧縮が利用される一般化されたアプ
リケーションのブロック図である。このシステムでは、
データソースがデータを発生し、そのデータの最終的な
ユーザは制限されたチャネルにより時間的又は空間的に
データソースより分離されている。ユーザとデータソー
スとが分離していないか、チャネルが制限されていなけ
れば、実際には圧縮を必要としない。
【0024】図1は、ビデオカセット102、スチル画
像104、ビデオシーケンス105、レンダリング画像
を作成するワークステーション106等の幾つかのデー
タソースを示している。データソースが画像データ、特
に画像フレームのシーケンスである場合、圧縮しない画
像又はシーケンスには大量のメモリが必要であるので、
圧縮が必要である。フレーム・シーケンスに関連して本
発明を説明するが、本発明はフレーム・シーケンスのデ
ータと同様の性質を持つ他の種類のデータに対しても有
効である。
【0025】データが圧縮装置108に入力すると、圧
縮装置は、それが正しく設計されているならば、原デー
タより少ないビットからなる圧縮データを出力する。圧
縮装置108が非損失性の圧縮装置ならば、圧縮データ
のビットから原データを正確に復元可能である。データ
は、圧縮された後、あるチャネルへ加えられる。チャネ
ルの幾つかの例が図1に示されている。
【0026】チャネルの一つはコンパクトディスクRO
M(CD−ROM)であり、ソフトウエア及び大きな画
像ファイルの頒布のための手段として用いられる。一枚
のCD−ROMは600MB(メガバイト)の容量を持
つであろうが、複雑なコンピュータゲームの中には画像
の記憶のためにそれ以上の容量を必要とするものがあ
る。そこで、より多量のデータを一枚のCD−ROMに
納め、複数枚のディスクを絶えず交換する不便からユー
ザーを解放するため、データは一枚のCD−ROMに納
まるよう圧縮される。
【0027】もう一つのチャネルは、ビデオゲーム機用
のゲームカートリッジ112である。ゲームカートリッ
ジの制約はコストの問題である。すなわち、使用される
物理メモリが増えるにしたがって、各カートリッジの製
造コストが上昇する。圧縮を必要とする同様の制約は、
ディスクドライブ114やビデオテープカートリッジ1
16のような他の記憶メディアにも当てはまる。
【0028】ある種のチャネルの場合、制約は記憶容量
の制限ではなく、データ伝送回線118(電話回線、専
用回線、セルラー電話伝送網ケーブル、CD−ROM
等)又はパケット網120で問題となるような伝送時間
及び帯域幅の制限である。このようなアプリケーション
において、1単位時間に伝送可能なビット数が制限され
かつデータが高レートで必要とされる時、あるいは、伝
送メディアの利用コストが伝送されたビット数により決
まるような場合、圧縮が望ましい。
【0029】どのようにしてデータがデータソースで生
成され、データソースと時間的及び空間的に離れた最終
ユーザへ送られるとしても、最終ユーザによって、チャ
ネルを介して送られたもの及び予め分かっていることだ
けを使って、そのデータを伸長しなければならない。こ
の目的のために、伸長装置122は、圧縮装置108に
初めに与えられたデータソースを復元する。
【0030】ソースとユーザが分かれているために、送
られた情報しか、その情報の伸長のために利用できな
い。勿論、データソースが伸長装置112にヒントを与
えることもできようが、そのようなヒントは伝送の際に
帯域幅を要するでうあろうし、圧縮ファイルのサイズの
一部としてカウントされることは間違いない。データソ
ースがヒントを別のチャネルを通じて供給することも可
能であろうが、圧縮システムを適切に評価する際には、
このデータは同じ様に圧縮データの一部とみなされるべ
きである。勿論、メモリ及び体域幅を真に削減する一方
法は、データソースと最終ユーザのシステムにアプリオ
リ(a priori)データを永久的に(あるいはアプリケー
ションによっては半永久的に)記憶しておくことであ
る。しかし、この方法では、伝送できるデータの種類が
限定される。例えば、ビデオゲームのメーカーとビデオ
ゲームシステムのデザイナーは通常、データのフォーマ
ット方法及び圧縮方法について合意している。そうでな
いと、帯域幅の一部を画像サイズ等のセットアップ情報
の通信のために使う必要があろう。一例では、画像は2
56画素幅、240画素高さ、8ビット/画素に固定さ
れる。この情報を固定することにより、各画像の範囲の
境界決定のために帯域幅を使う必要がない。データソー
スとユーザシステムとの間で予め決めた情報は”アプリ
オリ情報”と呼ばれる。
【0031】図2は、圧縮されていない画像(フレー
ム)のシーケンスを表す原ファイル200及び原ファイ
ル200の圧縮したものを表す圧縮ファイル220と共
に圧縮装置108の詳細を示す。本システムにより実行
される圧縮を画像又は画像シーケンスとの関連で説明す
るが、同様の特性を持つ他のデータも本システムにより
圧縮可能である。
【0032】圧縮装置108は、圧縮ファイル220を
生成するために原データをコンテキスト・モデラー20
2C及びエントロピー・コーダー208Cに通す。コン
テキスト・モデラー202Cは、原画素と画素クロック
を受け取るための入力を有する。実施例によっては、原
データ(画素)はセルフクロッキングであり、画素クロ
ックは必要でない。コンテキスト・モデラー202C
は、結果(result)の値と、この結果値のためのコンテ
キストを明らかにするコンテキスト・ビン(bin)識別子
(ID)を結果クロックの各サイクル毎に出力する。こ
の結果値は、2進エントロピー・コーダーの場合には2
進値であり、M進コーダーの場合にはM進値である。勿
論、Zandiに教えられる如く、M進コーダーは2進
コーダーと追加のロジック又は処理によって実現でき
る。
【0033】データがセルフクロッキングでなければ、
結果クロックも出力される。入力がデータ記憶装置であ
り、かつ、圧縮装置108の要素がソフトウエアモジュ
ールによって実現されるときには、それら要素はソフト
ウエアの働きによってセルフクロッキングされるのが一
般的である。
【0034】コンテキスト・モデラー202Cは、カレ
ント画素によってフレーム記憶204Cを更新するた
め、及びフレーム記憶204Cからコンテキスト画素も
しくはコンテキストビットを読み出すため、フレーム記
憶204Cにも接続される。
【0035】ここで、エントロピー・コーダー208C
を構成する要素の幾つかを説明する。確率予測器210
Cは、コンテキスト・モデラー202Cより結果(resu
lt)とコンテキストビンIDを受け取るように接続さ
れ、確率値とoutcome値(2進ビットジェネレータの場
合は2進値)を出力する。必要ならば、確率予測器21
0Cはoutcomeクロックも出力する。確率予測器210
Cは、同一性コンテキストテーブル212C及び剰余
(residual)コンテキストテーブル214Cに、それら
テーブル内の確率値を更新し又読み出すために接続され
る。構成によっては、ハフマン又はTunstalのビ
ットジェネレータ等、他の非2進ビットジェネレータ
(多ビット・ジェネレータ)も可能である。
【0036】ビットジェネレータ216Cは、確率予測
器210Cより確率値とoutcome値を受け取って符号語
に対応したビットを出力し、端数ビットを端数ビット記
憶218Cに保存する。ビットジェネレータ216Cよ
り出力されるビットストリームが圧縮ファイル220を
形成する。
【0037】圧縮装置108はまた、コンテキスト・モ
デラー202Cに接続された2つの出力を持つコンテキ
ストモデル・コントローラ206Cを含む。その一方の
出力は同一性コンテキストモデル・マスクを与え、他方
の出力は剰余コンテキストモデル・マスクを与える。こ
れら二つのマスクがアプリオリ情報でなければ、それら
マスクはパス222Cを介し圧縮ファイル220に格納
される。
【0038】動作を説明する。画素クロックの各サイク
ル期間に、圧縮装置108は原画素を格納しているファ
イル200より入力画素(”カレント”画素)を受け取
る。圧縮装置108は、カレント画素に応じて、ある数
のビットを圧縮ファイル220へ出力する。ここで、こ
のビット数は圧縮装置108の状態に依存し、0ビット
のこともある(すなわち、入力画素サイクルでビットが
全く出力されないこともある)。ビットが出力されない
場合、圧縮装置108の内部状態は変更される。このこ
とは、その後の1つ又は複数の圧縮ビットに反映され
る。
【0039】各画素サイクルは、いくつかの結果もしく
はエントロピーサイクルに分割されるかもしれない。例
えば、画素が8ビットの大きさで、エントロピー・コー
ダーが2進コーダーの場合、各画素サイクルは8つの結
果もしくはエントロピーサイクルを持ち、各エントロピ
ーサイクルにつき1個のコンテキストビン値と結果ビッ
トがある。
【0040】コンテキスト・モデラー202Cは、入力
画素を受け取って、コンテキストビンIDと結果値の組
を1つ以上出力する。一実施例では、画素はある数のビ
ットで表され、1エントロピーサイクルで、結果値の1
ビットと1つのコンテキストビンIDが処理される。別
の実施例では、結果値は8ビット値であり、単一のコン
テキストIDが用いられ、エントロピー・コーダーは、
Witten,H.,R.Neal and J.G.Cleary,”Ar
ithmetic coding for data compression,”Comm. of t
he ACM,June 1987,Vol.30,pp.520
−540に述べられているような多シンボル算術コーダ
ーである。
【0041】コンテキスト・モデラー202Cは、以下
に詳述する方法によって、コンテキストビンIDと結果
を決定する。コンテキストは、デコーダーにより判定可
能なカレント画素の環境に関する何か、例えば、カレン
ト画素の左側に見つかる画素値、あるいは左側の画素値
と結果ビットのビットプレーン(例えばカレント画素内
の結果ビットの位置)とを組み合わせたようなサブコン
ビネーションの組み合わせを示す。幾つかの前画素だけ
が用いられる場合、これをデータのマルコフモデルと呼
ぶ。
【0042】コンテキストモデルは、カレント画素とそ
の周辺画素のどの属性をコンテキストの決定に用いるか
制御する。画素が圧縮装置108に入力される順序は分
かってので、コンテキスト・モデラー202Cは、カレ
ント画素がどのフレームのものかと、そのフレーム内の
カレント画素の位置が分かる。
【0043】最初、フレーム記憶204Cは空であるの
で、ごく初めの画素に対してはコンテキストを提供でき
ないかもしれない。しかし、フレーム記憶にアプリオリ
値を入れておくだけで、すべての結果のためのコンテキ
ストを用意できる。最初のフレームの後では、フレーム
記憶204Cには少なくとも1つのフルフレームが入っ
ている。フレーム記憶204Cが一杯になると、新しい
画素が格納される時に最も古い画素が上書きされる。フ
レーム記憶204Cは将来のコンテキストを決定するた
めに必要な値を保持できるだけの大きさがあれば足り
る。例えば、直前フレームより前の画素値を参照するコ
ンテキストがなければ、1フルフレーム分の記憶容量し
か必要でない。実施例によっては、フレーム記憶が既に
存在するので、追加のメモリは必要でない。
【0044】コンテキスト・モデラー202Cにより出
力されるコンテキストビンIDは、カレント画素のコン
テキスト、並びに同一性モード及び剰余(residual)モ
ードから選ばれた一つのモードを指示する。勿論、オー
バーラップしないコンテキストビンIDを適切に割り当
てれば、コンテキストビンIDが出力されるだけでよ
い。条件付き確率を二つのコンテキストテーブルに分け
たことを別にすれば、確率予測器210Cの動作は一般
的な確率予測器の動作と同様である。勿論、同一性コン
テキストビンIDを剰余コンテキストビンIDと区別で
きるならば、同一性コンテキストと剰余コンテキストの
合計数に等しいエントリー数を持つ単一のテーブルを用
いて確率予測器210Cを構成することができる。
【0045】コンテキスト及び結果が確率予測器210
Cへ出力されると、確率予測値(outcome)がビットジ
ェレータ216Cへ転送される。2進エントロピー・コ
ーダーでは、このoutcomeは結果が最高確率シンボルで
あるか否かを表す。このため、確率予測値は常に0.5
以上である。多シンボル算術コーダーではoutcomeは結
果に先行するリスト内の全シンボルの確率の予測値かも
しれない。
【0046】確率予測値及びoutcomeがビットジェネレ
ータ216Cに送られた後、結果は確率予測器210C
によって確率予測値の更新のために利用される。この更
新が終わると、当該コンテキストビンIDの次の出現に
対する確率予測値の準備ができるが、それは復号時に利
用可能な情報だけに基づいている(すなわち、カジュア
ル(casual)である)。
【0047】ビットジェネレータ216Cは、確率予測
器210Cにより与えられたoutcomeとその結果の確率
予測値を用いて内部状態すなわちビットジェネレータ2
16Cの状態を変更し、圧縮ビットをそれが適当ならば
出力する。ある実施例では、ビットジェネレータ216
Cは、Allen等に付与され本発明の譲受人に譲渡さ
れた米国特許第5,272,478号に見られるB−コ
ーダーのようなビットジェネレータである。ある実施例
では、エントロピー・コーダー208CはIBM社開発
のQ−コーダー、又は1993年2月10日受理された
米国特許出願第08/016,035号に示されている
リコー社のAllen等のABSコーダーのようなエン
トロピー・コーダーである。
【0048】図3は、圧縮装置108と同要素の多くを
持つ伸長装置122を詳細に示す。伸長装置122と圧
縮装置108の同様要素を区別するため、伸長装置12
2の要素は、添え字”C”に代えて添え字”D”を付け
た同様番号で表される。例えばコンテキスト・モデラー
202D、フレーム記憶204D、コンテキストモデル
・コンテローラ206D、並びに確率予測器210D,
コンテキストテーブル212D,214D、ビットジェ
ネレータ216D及び端数ビット記憶218Dからなる
エントロピー・デコーダー208Dというようにであ
る。伸長装置122と圧縮装置108との間に幾つかの
違いがあるが、とるに足りない。
【0049】伸長装置122においては、コンテキスト
ビンIDはフレーム記憶からの画素を用いて決定され、
コンテキスト・モデラー202Dは、そのようにして決
定したコンテキストビンIDを確率予測器210Dに与
える。確率予測器210Dは、2進エントロピー・コー
ダーの場合には最高確率シンボルのための確率を決定
し、また、多シンボル算術コーダーの場合には確率分布
を決定する。そして、ビットジェネレータ216Dは、
この確率情報並びに端数ビット記憶218D及び圧縮ビ
ットストリームを用いてoutcomeを決定する。このoutco
meは、確率予測器210Dに戻されるが、通常、圧縮プ
ロセスにおいて確率予測器210から出されたoutcome
と同じものである。次にビットジェネレータ216D
は、その端数ビット記憶218Dを更新する。
【0050】確率予測器210Dは、outcomeを用いて
結果(result)を決定する。この結果は、通常、符号化
時にコンテキスト・モデラー202Cにより初めに決定
された結果と同一である。確率予測器210Dは、この
結果をコンテキスト・モデラー202Dに渡した後、コ
ンテキストビンIDにマッチしたコンテキストメモリ2
12D又は214Dを更新する。コンテキスト・モデラ
ー202Dは、結果を用いてフレーム記憶を更新し、原
画素を生成し、そして次のコンテキストビンIDを決定
する。コンテキストモデル・コントローラ206Dは、
コンテキストモデル・コントローラ206Cと同じ動作
をする。
【0051】圧縮と伸長の両方を行なうシステムの場
合、コンテキスト・モデラー、フレーム記憶等のいくつ
かの要素は、同じものが圧縮装置と伸長装置の両方のた
めに働く。
【0052】図4は、コンテキスト・モデラー202C
の詳細ブロック図である。図示しないが、コンテキスト
・モデラー202Dの詳細構成も同様である。図4に示
されるように、コンテキスト・モデラー202Cは、カ
レント画素を保持するための画素レジスタ402、図6
に示されるプリコーディング・プロセスを実行するため
の制御ロジック404C、ビットプレーンが別々に処理
されるときにカレント画素のどのビットが現在処理され
ているか指示するためのビットプレーン(BP)レジス
タ406、カレント画素の位置を保持するためのカーソ
ル位置(CP)レジスタ408、同一性信号を発生する
ためのコンパレータ410、フルコンテキスト(ful co
ntext)レジスタ412、2つのコンテキスト・マスク
RMASK,SMASK、及び更新バッファ414から
なる。
【0053】コンテキスト・モデラー202C内部の相
互接続は次の通りである。画素レジスタ402は、カレ
ント画素のための入力と、画素クロックPCLKを受け
取るためののクロック入力とを有する。画素レジスタ4
02は、カレント画素を制御ロジック404C、コンパ
レータ410及び更新バッファ414に出力する。制御
ロジック404Cはまた、PCKL用のクロック入力、
並びに、カレント画素及びテストX==T(後述)の結
果のための入力も持っている。制御ロジック404C
は、ビットプレーン・インジケーター(BPレジスタ4
06へ送られる)用出力、更新バッファ414のクロッ
キングのための更新クロック(UCLK)の出力、コン
テキスト・マスクRMASK,SMASKの一つを選択
するためのモードセレクターの出力、及び結果値のため
の出力を有する。RMASKマスクは剰余モードでアク
ティブであるのに対し、SMASKは同一性モードでア
クティブである。アクティブなマスクは、カレント・コ
ンテキストを作るためフルコンテキスト・レジスタ41
2をマスクするのに用いられる。制御ロジック404C
の結果出力は、コンテキスト・モデラー202Cの結果
出力である。
【0054】更新クロックUCLKは、カレント画素の
ためのコンテキストが得られた後にフレーム記憶204
Cを更新するために更新バッファ414をクロックす
る。勿論、カレント画素のためのコンテキストを形成す
るどの画素も上書きすることなくカレント画素を保持で
きるだけのスペースがフレーム記憶204Cにあれば、
UCKLの代わりにPCLKを使用できる。
【0055】BPレジスタ406、コンパレーター41
0、CPレジスタ408はそれぞれフルコンテキスト・
レジスタ412にビット又は画素を供給する。そして、
レジスタ412の内容はモードで指定されたマスクによ
りマスクされ、マスクされた内容がコンテキスト・モデ
ラー202Cにより出力されるコンテキストビンIDと
して出力されるが、これについては図5及び以下の記述
により詳しく説明する。RMASK及びSMASKは、
コンテキストモデル・コントローラー206Cから様々
なマスクをロードさせるための入力を有する。
【0056】1画素クロック(PCLK)サイクル期間
におけるコンテキスト・モデラー202Cの動作を説明
する。まず、カレント画素が画素レジスタ402に読み
込まれる。CPレジスタ408は、カレント画素のため
のコンテキスト画素を取得するためにフレーム記憶20
4Cを”アドレス”する。典型的なコンテキストモデル
は、カレント画素の左側の画素がコンテキストを形成す
るというものである。この場合、左側の画素がフレーム
記憶204Cから読み出されることになろう。この時、
CPレジスタ408はカレント画素がどこにあるか、し
たがって”左側の画素”がどこに見つかるかを指示す
る。コンテキスト画素のいくらかが、コンパレータ41
0によって相互に及びカレント画素と比較される。図4
に示されるように、カレント画素(”X”と表示)は、
カレントフレーム中におけるカレント画素と同じ位置に
ある直前フレーム中の画素(”T”と表示)と比較され
る。この比較の結果は制御ロジック404Cへ与えられ
る。これ以外の比較の結果、例えば左側画素と前フレー
ムの対応画素との比較の結果はフルコンテキスト・レジ
スタ412へ送られる。
【0057】図5は、フルコンテキスト・レジスタ41
2及びコンテキストマスクの可能な一構成を示す(図5
には、図4と対応したスケールでは示されていないが、
明細書及び各図によってレジスタ及びマスクのビットの
対応関係は明らかである)。コンテキスト画素は、カレ
ント画素に関係した画素であるので、画素毎に異なる。
図5において、カレント画素は”X”と表され、Xの左
側の画素は”H”と表され、Xと同じ垂直カラムの直上
の画素は”V”と表され、Xの左上の画素は”D”と表
示される。Xの近傍にあるがH,V,Dより遠い画素
は、H1,H2,H3,V1,V2,D1,D2等々と
表される。右側と下の画素はコンテキストのために利用
されないが、カレント画素は復号可能である。というの
は、前に指摘したように、画像は上から下へ、左から右
へとシーケンシャルに圧縮され、また同じ順番で伸長さ
れるからである。
【0058】コンテキスト画素は2つ以上のフレームか
ら引き出されるかもしれない。これらの複数フレーム
は、カレントフレーム(C)、直前フレーム(P)、す
ぐ次のフレーム(N)、Nの次のフレーム(2N)とい
うように表されている。フルコンテキスト・レジスタ4
12は、42ビットがコンテキストモデルに包含可能で
あるとして示されている。実際的には、結果として得ら
れるコンテキストビンの数(2^46)は大きすぎて実
用的でないので、46ビット全部がコンテキストに影響
を与えるわけではない。表1は、一例としての幾つかの
同一性コンテキストモデルを、SMASKの値と一緒に
示す。勿論、構成に応じて、46ビットより多い又は少
ないビットを用いてもよく、及び/又は異なったコンテ
キストモデルを用いてもよい。
【0059】
【表1】
【0060】表1においては、簡単にするために、同一
性テストの結果a==ap を示すために関数S(a)が
用いられる。ここで、添え字pは前フレームからの画素
のビットを示すためにもちいられる。TはXpの代わり
に用いられる。モデル0は、同一性コーディングは使わ
ないが比較のために含められている。モデル1は同一性
コーディングを使うが、異なる同一性コンテキストを用
いない。
【0061】図6は、カレント画素を結果とそれに対す
るコンテキストに変換するためにコンテキスト・モデラ
ー202Cが実行するプロセスのフローチャートであ
る。初めに、コンテキストモデル・コントローラー20
6Cは同一性コンテキストモデル及び剰余コンテキスト
モデルを決定しSMASK及びRMASKをロードする
(ステップC1)。それらが設定されると、制御ロジッ
ク404Cは画素クロックをサイクルさせてカレント画
素を画素レジスタ402にロードする(ステップC
2)。ある実施例では、制御ロジック404Cはマスク
をカジュアルに適応変更する。
【0062】次に、フルコンテキスト・レジスタ412
を更新しSMASKでマスクすることにより、同一性コ
ンテキストが調決定される(ステップC3)。動的(適
応的)コンテキスト・モデリングが用いられるときに
は、初めに動的コンテキストモデルが決定される(ステ
ップC3’)。カレント画素をXとして、同一性テスト
X==Tが行われ(C4)、このテスト結果が真なら
ば、カレント画素の同一性コンテキストとともに結果値
1が出力される(C5)。同一性テストは、カレント画
素が前フレームの対応画素と同一であるか否か(すなわ
ち、カレント画素の色が前フレームと変わったか否か)
を検査する。このテストは、X==Tで表現され、コン
パレータ410によって実行される。コンパレータ41
0は、フレーム記憶204CよりTを読み込み、画素レ
ジスタ402よりXを読み込む。X==Tが真ならば、
カレント画素について他に情報を出力する必要はない。
【0063】X==Tが偽ならば、カレント画素の同一
性コンテキストとともに、否定テスト結果(0)が結果
として出力される(C6)。1画素について同一性結果
は一つしか出力されないから、ビットプレーン位置は同
一性コンテキストの要素ではない。同一性テストでXと
Tが異なるときには、コンテキスト・モデラー202C
は、X値の指示を出力しなければならない。これが、本
明細書では剰余コーディングと呼ばれる。同一性テスト
は、画素とプライア・フレームの画素の単なる時間的な
(temporal)同一性を越えて一般化されるが、テストが
X==Tの時には、同一性モードを時間的(temporal)
モードと呼ぶことができ、剰余モードを非時間的(nont
emporal)モードと呼ぶことができる。
【0064】剰余モードでは、原画素は一度に1ビット
出力される。こうするために、制御ロジック404Cは
BPレジスタ406を最初のビットプレーンを指すよう
に初期化し(C7)、カレント画素及びカレントビット
プレーンに対する剰余コンテキストを決定し(C8)、
b(BP,X)を結果として出力する(C9)。ここ
で、b()はビットプレーンBPにあるXのビットを取
り出す関数である。剰余コンテキストは”0”が先行し
同一性コンテキストは”1”が先行するので、コンテキ
スト出力と結果出力を受け取ったエントロピー・コーダ
ーは、同一性テストの結果と剰余結果とを区別できる。
【0065】剰余ビットが出力された後、ビットプレー
ンが最後のビットプレーンであるか確認するため、その
ビットプレーンがビットプレーン数(BPN)と比較さ
れる(C10)。他のビットプレーンが残っているとき
には、BPレジスタがインクリメントされ(C11)、
プロセスはステップC8より繰り返される。ビットプレ
ーンが残っていないときは、プロセスはステップC12
より継続し、圧縮すべき画素が残っているか確認するた
めのテストが行われる。このステップはステップC5の
後でも実行される。他の画素が残っているときは、制御
ロジック404CはUCKLをサイクルしてフレーム記
憶204Cを更新し(C13)、次にPCLKをサイク
ルして次の画素を取得する(C14)。画素が残ってい
ないときは、プロセスは終了する(C15)。
【0066】以上の説明及び図6は2進コーダーに適し
た剰余結果出力を述べたが、M進コーダーに適合するよ
うに調整することは簡単である。例えば、BPレジスタ
を省き、XがTと等しくない時に1画素につき一つの剰
余結果だけ出力する(XとTが等しい時には何も出力し
なくてよい)。
【0067】異なった剰余コンテキストモデルの例を表
2に示す。ビットプレーン・コーディングはカレントビ
ットプレーンを表現するために3ビットのコンテキスト
を用いるが、模擬M進コーディングはプライア・ビット
プレーンのビットに基づいた255のコンテキストを使
う(Zandiに述べられている)。表2においては、
簡単にするため、M進コーディングに必要なコンテキス
トの数は256に丸められている。
【0068】
【表2】
【0069】表2において、BPはカレントビットプレ
ーン値を指し、関数b()はパラメータ画素のためのビ
ットプレーンBPのビットの値を指す。各剰余コンテキ
ストモデルのためのRMASK用の値は表1のSMAS
Kと同じ方法で容易に決定できる。
【0070】図7は、伸長プロセスのフローチャートで
ある。このプロセスについて、図7並びに図3を参照し
て説明する。このプロセスは、コンテキスト・モデラー
202Dを含む伸長装置122により実行される。コン
テキスト・モデラー202Dはコンテキスト・モデラー
202Cと同様であるが、コンテキスト・モデラー20
2Dは結果を入力し、入力を出力するので、異なった制
御ロジックを必要とする点が相違する。
【0071】伸長プロセスが開始すると、同一性コンテ
キストモデルと剰余コンテキストモデルが決定される
(ステップD1)。当然、この同一性コンテキストモデ
ル及び剰余コンテキストモデルがアプリケーションを通
じて固定されるときには、コンテキストモデル・コント
ローラは必要でない。いくつかのコンテキストモデルが
用いられるときには、これらコンテキスモデルはプライ
ア・データに基づいて決定論的に決定されても、圧縮デ
ータとともに圧縮ファイル220に挿入されてもよい。
コンテキストモデル情報は圧縮プロセス中にパス222
C(図2に示されている)を経由して圧縮ファイル22
0へ送られ、また、伸長プロセス中にパス222Dを経
由し取り出される。
【0072】コンテキスト・モデラー202Dは次に、
カレント同一性コンテキストを決定し(ステップD
2)、これを確率予測器210Dへ出力する(ステップ
D3)。動的コンテキストモデル再構成(reconfigurat
ion)が圧縮に使用された場合には、伸長中ステップD
2の前にコンテキストモデルが再構成される(ステップ
D1’)。コンテキスト情報が与えられると、確率予測
器210Dは該コンテキストの確率をビットジェネレー
タ216Dに出力することができる。ビットジェネレー
タ216Dは、該情報を用いて圧縮画像から何ビット読
み出すべきか決定し、また、該情報を用いて、読み出し
たビットからの矛盾のないoutcomeと確率を決定する。
ビットジェネレータ216Dはoutcome値を確率予測器
210Dへ出力し、確率予測器210Dは該outcomeを
結果に変換し、カレントコンテキストに対するその確率
テーブルを更新し、そして、該結果をコンテキスト・モ
デラー202Dへ出力する(ステップD4)。圧縮画像
は順序付けられているので、最初のコンテキストは同一
性コンテキストであることが分かっている。
【0073】コンテキスト・モデラー202Dは結果を
チックする(D5)。結果が1ならば、カレントXがT
と同一であったということであり、コンテスト・モデラ
ー202Dはフレーム記憶204DよりTを読み出し、
Tをカレント画素として出力する(D6)。コンテキス
ト・モデラー202Dは次に他に画素があるかチェック
する(D7)。他に画素があるならばフレーム記憶20
4Dが画素Xで更新されるが(D8)、他に画素がなけ
ればプロセスは終了する(D9)。
【0074】ステップD5で同一性結果が0ならば、カ
レント画素がTと異なるということであるので、コンテ
キスト・モデラー202Dは剰余モードに入り、剰余結
果が否定同一性結果の後に続くことを期待する。剰余モ
ードでは、最初のビットプレーンを処理するため、カレ
ントビットプレーン(BP)を最初のビットプレーンに
設定し(D10)、カレントビットプレーンのための剰
余コンテキストを決定し(D11)、そのコンテキスト
を確率予測器210Dへ出力し(D12)、確率予測器
210Dから結果を受け取り(D13)、この結果をb
(BP,X)すなわちXの第BPビットとして出力する
(D14)。このビットは画素全体が得られるまで別々
に出力し又はバッファしてよい。
【0075】一つのビットプレーンに対する結果が得ら
れた後、制御ロジックが他にビットプレーンがあると判
定したときには(D15)、BPがインクリメントされ
(D16)処理はステップD11へ戻る。そうでないと
きには、カレント画素が出力され(D17)、制御ロジ
ックはステップD7へ戻って他に画素があるかチェック
する。
【0076】これで図面の説明を終わった。要約すれ
ば、図面に示したシステムを利用し、データは圧縮され
てから限定されたチャネルに通され、それから最終ユー
ザーにより伸長される。上記例はフレームのシーケンス
であるデータの圧縮に関するものであって、各フレーム
は一つのディジタイズ画像である。圧縮装置はフレーム
を圧縮するためにエントロピー・コーダーを用い、コン
テキスト・モデラーがモードに応じて、カレント画素の
ためのコンテキスト又はカレント画素のカレントビット
を提供する。カレント画素が同一性コンテキストのため
に用いられた画素と同一である場合、同一性モードで同
一性結果がエントロピー・コーダーへ指示され、二つ以
上の同一性コンテキストが用いられるときの結果に対す
る同一性コンテキスト以外は、カレント画素について他
の情報は与えられる必要がない。
【0077】上例において、同一性テストに用いられる
画素はカレント画素と同位置にあるプライア・フレーム
の画素であり、したがって同一性は時間的(temporal)
同一性である。同一性テストが否定ならば、すなわち、
それら画素が異なるときには、圧縮装置は剰余モードに
スイッチし、カレント画素が1つ以上の剰余コンテキス
ト及び剰余結果とともにエントロピー・コーダーへ与え
られる。
【0078】伸長装置は、フレームを伸長するために、
カレント画素に対するコンテキストを決定してビットス
トリームからカレント画素を復号する。コンテキストモ
デルの変更を可能にするため、コンテキストモデル・コ
ントローラが設けられる。コンテキストモデルが変更さ
れる場合、使用されるコンテキストモデルを圧縮データ
の一部に含めてもよい。
【0079】圧縮プロセスにおいて、同一性情報の利用
に関する相対的性能を測定するため、幾つかの実験が行
われた。この実験のために、三つのパレット化(palett
ized)フレームシーケンスが用いられた。第1のシーケ
ンスは、同一色背景上の動くテキストを表すシーケンス
であり、3色だけ使用する。第2のシーケンスは、静止
した格子板パターンの前方にあるレイトレーシングの球
体を表し、多数の色を使う。第3のシーケンスはアニメ
ーション映画のディジタイズドクリップ(digitized c
lip)であり、252色を使い、クリップ内で幾つかの
シーン変化がある。このデジタイズドクリップには、そ
れを取り込む過程で入り込んだノイズが含まれている。
表3は、同一性コーディングを使った場合と使わない場
合のこれら三つのシーケンスの圧縮性を示す。使用した
同一性テストは時間的(temporal)テストである。
【0080】
【表3】
【0081】表3に見られるように、同一性コーディン
グは多くのシーケンスの圧縮率を改善することができ
る。映画のシーケンスはいずれの場合もあまり圧縮性が
よくないが、一般的なノイズの殆どない生成又はデジタ
イズした高品質シーケンスは、レイトレーシングのシー
ケンスと取り込んだ映画シーケンスの間の結果をもたら
すと予想される。
【0082】これら三つのシーケンスについて、使用す
るのに最良の同一性コンテキストモデル及び剰余モデル
を決定するためにさらに実験が行われた。表3に対する
結果は、最良のパフォーマンスを提供する同一性コンテ
キストモデル及び剰余コンテキストモデルを使って得ら
れた(同一性コンテキストモデルは非同一性コーディン
グには無意味である)。実験結果は、カレント画素の前
フレーム画素TとM進コーディングに基づくコンテキス
ト(表2の剰余モデル3)が同一性コーディング及び非
同一性コーディングの両方で一番有効であった。同一性
コーディングでは、使用した剰余コーディングに関係な
く、同一性モデル6(表1)が全ての同一性モデル中で
最も有効であり、また、これら二つの組み合わせが総合
的に最も有効であった。
【0083】レイトレーシングのシーケンス及び映画シ
ーケンスのいずれについても、同一性コンテキスト10
が同一性コーディングのために最も有効との傾向であっ
たが、いずれの場合にも、それよりも複雑でない同一性
モデルであるコンテキスト数2^8のモデル6が、より
複雑な同一性モデルであるコンテキスト数2^17のモ
デル10とほぼ同様の性能を発揮した。
【0084】実験の結果を表4から表6に示す。これら
は、同一性コンテキストモデル及び剰余コンテキストモ
デルのそれぞれにより3つのシーケンスを圧縮した場合
のビットレート(bit rate)を表にしたものである
(圧縮しない画像のビットレートは8.0の場合)。各
同一性コンテキストモデルの最良結果にはアスタリスク
(”*”)が付けられており、各剰余モデルの最良結果
には十字記号(”†”)が付けられている。表1に示す
ように、同一性モデル0は非時間的な(nontemporal)ケ
ースである。実験はしなかったが、Zandiの教える
パレット再整理(reordering)を利用すれば、ビットプ
レーン剰余コーディング(モデル1とモデル4)の圧縮
率は改善されるはずである。
【0085】
【表4】
【0086】
【表5】
【0087】
【表6】
【0088】以上述べたことは本発明の説明のためのも
のであって、本発明を限定することを意図したものでは
ない。当業者にとって、以上の開示内容を吟味すれば本
発明の多くの変形が明白になろう。
【0089】
【発明の効果】以上の説明から明らかなように、本発明
によれば、ビデオシーケンス等の圧縮の目的に好適な改
良した圧縮方法と、そのための改良したコンテキスト・
モデラーを実現できる。
【図面の簡単な説明】
【図1】データを効率的に記憶及び伝送するために圧縮
及び伸長を利用する幾つかのアプリケーションのブロッ
ク図である。
【図2】図1に示した圧縮装置の詳細図である。
【図3】図1に示した伸長装置の詳細図である。
【図4】図2に示した圧縮装置のコンテキスト・モデラ
ーの詳細図である。
【図5】同一性コンテキスト及び剰余コンテキストを生
成するため前後関係画素がどのように用いられるかの説
明図である。
【図6】コンテキスト・モデラーにより実行されるプリ
コーディングプロセスのフローチャートである。
【図7】コンテキスト・モデラーにより実行される復号
プロセスのフローチャートである。
【符号の説明】
102 ビデオカセット 104 スチル画像 105 ビデオシーケンス 106 ワークステーション 108 圧縮装置 110 CD−ROM 112 ゲームカートリッジ 114 ディスクドライブ 116 ビデオテープカートリッジ 118 データ伝送回線 120 TCP/IPパケット網 122 伸長装置 124 圧縮フレームシーケンス 200 原ファイル 202C,202D コンテキスト・モデラー 204C,204D フレーム記憶 206C,206D コンテキストモデル・モデラー 208C エントロピー・コーダー 208D エントロピー・デコーダー 210C,210D 確率予測器 212C,212D 同一性コンテキストテーブル 214C,214D 剰余コンテキストテーブル 216C,216D ビットジェネレータ 218C,218D 端数ビット記憶 220 圧縮ファイル 222C,222D パス 402 画素レジスタ 404C 制御ロジック 406 ビットプレーン(BP)レジスタ 408 カーソルポインター(CP)レジスタ 412 フルコンテキストレジスタ
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平4−122174(JP,A) 特開 平6−224777(JP,A) 特開 平6−315089(JP,A) 特開 平8−265800(JP,A) (58)調査した分野(Int.Cl.7,DB名) H04N 7/24

Claims (23)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数入力シンボル中の入力シンボルを圧
    縮するための方法であって、 原画素を、該原画素と画素値が同一性関係にあるとみな
    せる位置的に関連した画素(以下、同一性画素と称す)
    と比較し、同一性結果を判定するステップと、 該同一性結果の判定のために第1コンテキストモデル
    (以下、同一性コンテキストモデルと称す)に従って、
    該原画素に関連した少なくとも一つのコンテキスト画素
    もしくはその位置に依存する同一性コンテキストを決定
    するステツプと、 該同一性結果及び該同一性コンテキストをエントロピー
    ・コーダーへ出力するステップと、 該同一性結果が否定で、該原画素と該同一性画素とが等
    しくない場合、第2コンテキストモデル(以下、剰余コ
    ンテキストモデルと称す)に従って、該原画素に関連し
    たコンテキスト画素もしくはその位置によって規定され
    る剰余コンテキストを決定して、剰余結果として該原画
    素の表現及び剰余コンテキストをエントロピー・コーダ
    ーへ出力するステップと、 該エントロピー・コーダーを使って、該同一性結果及び
    該剰余結果を符号化するステップを有する圧縮方法。
  2. 【請求項2】 請求項1記載の圧縮方法において、該原
    画素はフレームシーケンス中の画素であり、該同一性関
    係は、該同一性画素がカレントフレーム中の該原画素の
    画素位置に対応した位置にある前フレーム中の画素であ
    るという関係である、ことを特徴とする圧縮方法。
  3. 【請求項3】 請求項1記載の圧縮方法において、該原
    画素はフレームシーケンス中の画素であり、該同一性関
    係は、該同一性画素が少なくともシーン中の1点を少な
    くとも近似的に表すところの前に伝送された画素であっ
    て、該1点も該原画素により表されるという関係であ
    る、ことを特徴とする圧縮方法。
  4. 【請求項4】 該同一性画素として用いられた前に伝送
    された画素の位置を検出するためフレーム間の動き予測
    を実行するステップをさらに有することを特徴とする請
    求項3記載の圧縮方法。
  5. 【請求項5】 請求項1記載の圧縮方法において、該同
    一性コンテキストモデルは、該同一性コンテキストがコ
    ンテキスト画素について実行された同一性テストの同一
    性テスト結果にも依存するというものである、ことを特
    徴とする圧縮方法。
  6. 【請求項6】 請求項1記載の圧縮方法において、該原
    画素の表現を出力するステップは、2進の剰余結果及び
    該剰余結果の各ビットプレーンに対するビットプレーン
    剰余コンテキストを出力するステップを有することを特
    徴とする圧縮方法。
  7. 【請求項7】 請求項1記載の圧縮方法において、該エ
    ントロピー・コーダーは2進コーダーであることを特徴
    とする圧縮方法。
  8. 【請求項8】 請求項1記載の圧縮方法において、該エ
    ントロピー・コーダーはM進コーダーであることを特徴
    とする圧縮方法。
  9. 【請求項9】 請求項1記載の圧縮方法において、該エ
    ントロピー・コーダーの出力から入力シンボルを伸長す
    るステップをさらに有することを特徴とする圧縮方法。
  10. 【請求項10】 請求項1記載の圧縮方法において、該
    同一性コンテキストは該入力シンボルのシンボル索引と
    該同一性画素のシンボル索引との同一性に依存すること
    を特徴とする圧縮方法。
  11. 【請求項11】 画素が入力され、結果値及びコンテキ
    スト値がエントロピー・コーダーに出力されるところ
    の、圧縮又は伸長システム用のコンテキスト・モデラー
    であって、 複数のクロックサイクルのそれぞれにおいて画素を受け
    取るために接続され、カレント画素値を格納する入力画
    素レジスタ、 該入力画素レジスタに接続されて 該入力画素レジスタの
    前の内容を格納し、それをコンテキストデータ用として
    出力するフレーム記憶、 該フレーム記憶及び該入力画素レジスタに接続され、該
    コンテキストデータの第1の部分を該カレント画素値と
    比較し、同一性表示を出力するコンパレータ、 少なくとも該コンパレータに接続され、少なくとも該同
    一性表示及び該コンテキストデータの第2の部分を記憶
    するコンテキストレジスタ 該入力画素レジスタに接続され、該カレント画素値に基
    づいた結果値を出力する結果出力手段 該コンテキストレジスタに接続され、該同一性表示が肯
    定のときに該コンテキストレジスタの内容のビットをマ
    スクして同一性コンテキスト値を生成する同一性マス
    該コンテキストレジスタに接続され、該同一性表示が否
    定するときに該コンテキストレジスタの内容のビットを
    マスクして剰余コンテキスト値を生成する剰余マスク 該同一性表示が肯定 を示す時に該結果出力出段により出
    力された該結果値に対応する該コンテキスト値として該
    同一性コンテキスト値を出力し、該同一性表示が否定
    示す時に該結果出力手段により出力された結果値に対応
    する該コンテキスト値として該剰余コンテキスト値を出
    力する制御ロジック、を有するコンテキスト・モデラ
    ー。
  12. 【請求項12】 請求項11記載のコンテキスト・モデ
    ラーにおいて、該制御ロジックは追加剰余コンテキスト
    値及び対応結果値を出力するクロッキング論理を含むこ
    とを特徴とするコンテキスト・モデラー。
  13. 【請求項13】 請求項11記載のコンテキスト・モデ
    ラーにおいて、該コンテキストデータの該第1の部分、
    該コンテキストデータの該第2の部分、該同一性マスク
    の内容、及び該剰余マスクの内容は、コンテキストモデ
    ルに従って決定されることを特徴とするコンテキスト・
    モデラー。
  14. 【請求項14】 請求項13記載のコンテキスト・モデ
    ラーにおいて、該コンテキストモデルは予め決められる
    ことを特徴とするコンテキスト・モデラー。
  15. 【請求項15】 請求項13記載のコンテキスト・モデ
    ラーにおいて、該コンテキストモデルは該コンテキスト
    ・モデラーに入力された画素の値に従って動的に適応化
    されることを特徴とするコンテキスト・モデラー。
  16. 【請求項16】 請求項11記載のコンテキスト・モデ
    ラーにおいて、該コンテキストデータの該第1の部分
    は、前のフレームの該カレント画素の位置に対応する位
    置より得られる画素の画素値を示すことを特徴とするコ
    ンテキスト・モデラー。
  17. 【請求項17】 請求項11記載のコンテキスト・モデ
    ラーにおいて、該コンパレータの出力は該カレント画素
    値及び前の画素値より多くのものに対する同一性表示を
    含むことを特徴とするコンテキスト・モデラー。
  18. 【請求項18】 請求項11記載のコンテキスト・モデ
    ラーにおいて、該結果値は2進値であり、該同一性表示
    が否定を示すときに追加剰余値が出力されることを特徴
    とするコンテキスト・モデラー。
  19. 【請求項19】 請求項11記載のコンテキスト・モデ
    ラーにおいて、画素値は色テーブルへの索引であること
    を特徴とするコンテキスト・モデラー。
  20. 【請求項20】 請求項11記載のコンテキスト・モデ
    ラーにおいて、該コンテキストデータの該第1の部分と
    該第2の部分はオーバーラップすることを特徴とするコ
    ンテキスト・モデラー。
  21. 【請求項21】 該画素クロックによりクロックされ、
    かつ該フレーム記憶の出力に接続されたカーソルポイン
    ターレジスタをさらに有し、該カーソルポインターレジ
    スタが該フレーム記憶に対しアドレスを供給し、該フレ
    ーム記憶が該アドレスされたコンテキストに対応するコ
    ンテキストデータを出力することにより応答することを
    特徴とする請求項11記載のコンテキスト・モデラー。
  22. 【請求項22】 請求項21記載のコンテキスト・モデ
    ラーにおいて、該フルコンテキストレジスタはビットプ
    レーンインジケーター及び該カーソルポインターレジス
    タの内容も格納することを特徴とするコンテキスト・モ
    デラー。
  23. 【請求項23】 フレーム記憶の更新の手段をさらに有
    することを特徴とする請求項11記載のコンテキスト・
    モデラー。
JP31392695A 1994-12-01 1995-12-01 圧縮方法及びコンテキスト・モデラー Expired - Fee Related JP3171776B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/347,789 US5689589A (en) 1994-12-01 1994-12-01 Data compression for palettized video images
US08/347789 1994-12-01

Publications (2)

Publication Number Publication Date
JPH08228342A JPH08228342A (ja) 1996-09-03
JP3171776B2 true JP3171776B2 (ja) 2001-06-04

Family

ID=23365280

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31392695A Expired - Fee Related JP3171776B2 (ja) 1994-12-01 1995-12-01 圧縮方法及びコンテキスト・モデラー

Country Status (4)

Country Link
US (1) US5689589A (ja)
JP (1) JP3171776B2 (ja)
DE (1) DE19544761C2 (ja)
TW (1) TW307086B (ja)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0717554B1 (en) * 1994-12-16 2001-06-06 Canon Kabushiki Kaisha Coding/decoding apparatus and coding/decoding method
US5659631A (en) * 1995-02-21 1997-08-19 Ricoh Company, Ltd. Data compression for indexed color image data
US6072909A (en) * 1995-12-13 2000-06-06 Fuji Xerox Co., Ltd. Image coding devise and image decoding devise using with image disassembly
US6188795B1 (en) * 1996-06-13 2001-02-13 Dublin City University Data compression
JPH1023271A (ja) * 1996-07-05 1998-01-23 Canon Inc 画像形成方法とその装置
ES2184117T3 (es) 1996-07-31 2003-04-01 Matsushita Electric Ind Co Ltd Decodificador de imagen y procedimiento de decodificado de imagen.
TWI249760B (en) 1996-07-31 2006-02-21 Canon Kk Remote maintenance system
JPH1093827A (ja) * 1996-09-11 1998-04-10 Canon Inc 画像処理方法とその装置
US5859604A (en) * 1997-01-14 1999-01-12 International Business Machines Corporation Merged VLSI implementation of hardware optimized Q-Coder and software optimized QM-Coder
US6757436B2 (en) * 1997-06-19 2004-06-29 Electroncs For Imaging, Inc. Methods and apparatus for data compression based on modeling schemes
US7359439B1 (en) * 1998-10-08 2008-04-15 Pixel Tools Corporation Encoding a still image into compressed video
US6535925B1 (en) * 1999-11-09 2003-03-18 Telefonaktiebolaget L M Ericsson (Publ) Packet header compression using division remainders
US6522783B1 (en) 1999-11-23 2003-02-18 Sharp Laboratories Of America, Inc. Re-indexing for efficient compression of palettized images
US6950445B2 (en) * 2000-11-16 2005-09-27 Telefonaktiebolaget Lm Ericsson (Publ) Communication system and method for shared context compression
US20030177255A1 (en) * 2002-03-13 2003-09-18 Yun David C. Encoding and decoding system for transmitting streaming video data to wireless computing devices
KR100477643B1 (ko) * 2002-04-10 2005-03-23 삼성전자주식회사 응답 속도 개선 장치 및 방법
AU2003221760A1 (en) * 2002-04-23 2003-11-10 Docomo Communications Laboratories Usa, Inc. System and method for arithmetic encoding and decoding
US9577667B2 (en) 2002-04-23 2017-02-21 Ntt Docomo, Inc. System and method for arithmetic encoding and decoding
US6850175B1 (en) * 2003-09-18 2005-02-01 Ntt Docomo, Inc. Method and apparatus for arithmetic coding
US6906647B2 (en) 2002-09-20 2005-06-14 Ntt Docomo, Inc. Method and apparatus for arithmetic coding, including probability estimation state table creation
JP4134659B2 (ja) * 2002-09-30 2008-08-20 ブラザー工業株式会社 画像形成装置及び画像形成方法
US7400277B2 (en) * 2004-04-06 2008-07-15 International Business Machines Corporation Method and system for the compression of probability tables
KR100609697B1 (ko) * 2004-06-02 2006-08-08 한국전자통신연구원 이득 고정형 광증폭기를 이용한 광 선로 감시 시스템
JP4618676B2 (ja) 2005-04-28 2011-01-26 株式会社リコー 構造化文書符号の転送方法、画像処理システム、サーバ装置、プログラム及び情報記録媒体
US7319417B2 (en) * 2005-11-18 2008-01-15 Intel Corporation Compression using multiple Markov chain modeling
KR100750165B1 (ko) * 2006-02-22 2007-08-17 삼성전자주식회사 압축률 향상을 위해 개선된 컨텍스트 모델 선택을 사용하는cabac 부호화 방법 및 장치, 그리고 cabac복호화 방법 및 장치
US8111259B1 (en) 2006-07-06 2012-02-07 Marvell International Ltd. Image processing apparatus having context memory controller
US7865025B2 (en) * 2006-08-01 2011-01-04 Ching-Wei Yeh Data processing method in embedded block coding with optimized truncation module
US8526062B2 (en) * 2008-04-14 2013-09-03 Xerox Corporation Color lookup table compression

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4717956A (en) * 1985-08-20 1988-01-05 North Carolina State University Image-sequence compression using a motion-compensation technique
US5313204A (en) * 1991-04-25 1994-05-17 Mitsubishi Denki Kabushiki Kaisha Encoding and decoding devices with predictor and detector
KR940010241B1 (ko) * 1991-12-14 1994-10-22 산성전자 주식회사 이동 벡터 검출 방법
US5442458A (en) * 1991-12-18 1995-08-15 Eastman Kodak Company Method and associated apparatus for encoding bitplanes for improved coding efficiency
US5422724A (en) * 1992-05-20 1995-06-06 Applied Materials, Inc. Multiple-scan method for wafer particle analysis
US5298992A (en) * 1992-10-08 1994-03-29 International Business Machines Corporation System and method for frame-differencing based video compression/decompression with forward and reverse playback capability
US5550540A (en) * 1992-11-12 1996-08-27 Internatioal Business Machines Corporation Distributed coding and prediction by use of contexts
US5414423A (en) * 1993-04-29 1995-05-09 International Business Machines Corporation Stabilization of probability estimates by conditioning on prior decisions of a given context
US5471207A (en) * 1994-02-23 1995-11-28 Ricoh Company Ltd. Compression of palettized images and binarization for bitwise coding of M-ary alphabets therefor

Also Published As

Publication number Publication date
US5689589A (en) 1997-11-18
TW307086B (ja) 1997-06-01
JPH08228342A (ja) 1996-09-03
DE19544761C2 (de) 1998-07-23
DE19544761A1 (de) 1996-06-05

Similar Documents

Publication Publication Date Title
JP3171776B2 (ja) 圧縮方法及びコンテキスト・モデラー
JP2511788B2 (ja) デジタル通信システム用の可変長符号語復号器
US6639945B2 (en) Method and apparatus for implementing motion detection in video compression
US5491516A (en) Field elimination apparatus for a video compression/decompression system
US7472151B2 (en) System and method for accelerating arithmetic decoding of video data
US7072404B2 (en) Decoding apparatus, control method therefor, and storage medium
USRE41569E1 (en) Method of processing variable size blocks of data by storing numbers representing size of data blocks in a fifo
EP0562420A2 (en) Method and apparatus for vector coding of video transform coefficients
KR20040077921A (ko) 가변 길이 칼라 코드들로 팔레트화된 칼라 화상들의 압축
US20110080958A1 (en) Multimedia signature coding and decoding
US20010048769A1 (en) Method and system for compressing motion image information
GB2321154A (en) Reverse playback of MPEG video
US6584226B1 (en) Method and apparatus for implementing motion estimation in video compression
JP3990464B2 (ja) ディジタルビデオ信号プロセッサのためのデータ効率のよい量子化テーブル
US6687410B1 (en) Method and apparatus for compression and decompression of data
EP0987656A2 (en) Method of graphics data compression
US20030123538A1 (en) Video recording and encoding in devices with limited processing capabilities
CA2436437A1 (en) Moving picture information compressing method and its system
US5815600A (en) Image data signal compression/transmission method and image data signal compression/transmission system
US6169820B1 (en) Data compression process and system for compressing data
US20050063464A1 (en) Temporal compression
JP2004501531A (ja) ビデオ・データをランレングス符号化するための方法と装置
JP2000165873A (ja) 動画像情報の圧縮方法およびそのシステム
JP2007074648A (ja) Cabac復号化装置
KR20060127668A (ko) 영상 압축 방법

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090323

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100323

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110323

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20120323

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees