JP2000507754A - 組込み形コーディングを有するテーブルベースの圧縮 - Google Patents
組込み形コーディングを有するテーブルベースの圧縮Info
- Publication number
- JP2000507754A JP2000507754A JP9534591A JP53459197A JP2000507754A JP 2000507754 A JP2000507754 A JP 2000507754A JP 9534591 A JP9534591 A JP 9534591A JP 53459197 A JP53459197 A JP 53459197A JP 2000507754 A JP2000507754 A JP 2000507754A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- image
- codebook
- stage
- distortion
- 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.)
- Pending
Links
- 238000007906 compression Methods 0.000 title claims abstract description 81
- 230000006835 compression Effects 0.000 title claims abstract description 80
- 239000013598 vector Substances 0.000 claims abstract description 346
- 238000000034 method Methods 0.000 claims abstract description 145
- 238000013461 design Methods 0.000 claims abstract description 73
- 238000013139 quantization Methods 0.000 claims abstract description 72
- 230000009466 transformation Effects 0.000 claims abstract description 27
- 238000013144 data compression Methods 0.000 claims description 18
- 238000013138 pruning Methods 0.000 claims description 14
- 238000013507 mapping Methods 0.000 claims description 8
- 238000004422 calculation algorithm Methods 0.000 abstract description 29
- 238000003780 insertion Methods 0.000 abstract description 10
- 230000037431 insertion Effects 0.000 abstract description 10
- 238000012549 training Methods 0.000 description 38
- 238000006243 chemical reaction Methods 0.000 description 23
- 235000019557 luminance Nutrition 0.000 description 16
- 238000004364 calculation method Methods 0.000 description 14
- 230000008901 benefit Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 10
- 244000309464 bull Species 0.000 description 7
- 230000008447 perception Effects 0.000 description 7
- 230000009467 reduction Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000005259 measurement Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000001965 increasing effect Effects 0.000 description 5
- 238000005314 correlation function Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 238000000844 transformation Methods 0.000 description 4
- 238000003066 decision tree Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 230000035945 sensitivity Effects 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 241000282412 Homo Species 0.000 description 2
- 206010021403 Illusion Diseases 0.000 description 2
- 244000141353 Prunus domestica Species 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000017105 transposition Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 244000293889 Bombax malabaricum Species 0.000 description 1
- 235000004480 Bombax malabaricum Nutrition 0.000 description 1
- 101100353161 Drosophila melanogaster prel gene Proteins 0.000 description 1
- 241001632422 Radiola linoides Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000005352 clarification Methods 0.000 description 1
- 238000005056 compaction Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- JCCNYMKQOSZNPW-UHFFFAOYSA-N loratadine Chemical compound C1CN(C(=O)OCC)CCC1=C1C2=NC=CC=C2CCC2=CC(Cl)=CC=C21 JCCNYMKQOSZNPW-UHFFFAOYSA-N 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000033764 rhythmic process Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
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/3082—Vector coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/19—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/48—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/63—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/94—Vector quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/96—Tree coding, e.g. quad-tree coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/115—Selection of the code volume for a coding unit prior to coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
(57)【要約】
画像圧縮システムは、ベクトライザと組込み形コードを出力する階層形ベクトル量子化テーブルとを有する。ベクトライザは画像を画像画素のそれぞれのブロックを表わす画像ベクトルに変換する。テーブルは計算のない変換と画像ベクトルの圧縮を提供する。テーブル設計は、各段に対してコードブック設計と挿入手順とに分割できる。予備的な段に対するコードブック設計は、知覚により重み付けられた歪み手段を使う分裂された一般化ロイドアルゴリズム(LBG/GLA)を使う。最終段に対するコードブックの設計は、エントロピー制約の歪み手段で、どんどん成長されその後エントロピー剪定されたツリー構造のGLAの変形を使う。全段に対するテーブル記入は、入力をコードブックベクトルに割り振るための重み付けされていない近似手法を使う。変換および圧縮は、それらは計算ツリーであるので速い。テーブルの階層形,多段といった特徴は、低メモリ要件で動作できるようにする。組込み形出力は、手ごろなスケーラビリティを異成分からなるネットワークの共同ビデオアプリケーションに適するようにする。
Description
【発明の詳細な説明】
組込み形コーディングを有するテーブルベースの圧縮
発明の背景
本発明は、データ処理、特にデータ圧縮に関し、例えば、静止およびビデオ画
像,音声,および音楽に適用されるものようなものである。本発明の主な目的は
、安価な多目的コンピュータの異成分からなるネットワーク(heterogeneous net
work)を通じて共同ビデオアプリケーション(collaborative video application)
を広めることにある。
コンピュータは人間の対話(interaction)の伝達手段になりつつあり、その対
話がより迅速にかつ完全になるように要求が高まりつつある。ローカルネットワ
ーク上およびインターネット上で優位を占めるテキストベースの電子メールおよ
びデータベースサービスにおいて、例えばテレビ会議や双方向ビデオのような共
同ビデオアプリケーションのようなデータ集中サービスを提供する努力がいる。
ほとんどの場合、そのようなアプリケーションに対する生データ要件は入手で
きる帯域幅をはるかに超えているので、データ圧縮は要求を満たすために必要で
あるといえる。有効性は画像圧縮スキームの目標である。音声は、対話に即時性
を提供するために共同アプリケーションによって課される要件である。スケーラ
ビリティ(scalability)は、ネットワークおよびコンピュータの階層によって
課される要件である。
有効性は、与えられた圧縮の程度に対して結果的に生じる歪み量に関して測定
され得る。歪みは、画像にわたって平均された対応する画素の間の差の二乗、す
なわち平均二乗エラー(少ないほど良い
)に関して表わすことができる。平均二乗エラーは、1)例えば知覚(perceptual
)による感度のバリエーションを考慮するために重み付けられ、あるいは、2)
重み付けされない。
圧縮の程度は、圧縮比あるいはビットレートとして測定される。圧縮比(多い
ほど良い)は、圧縮されたコード(コードが可変長である場合、非常に多数の入
力値にわたり平均される)での値の表現におけるビットの数によって分割される
入力値のビット数である。ビットレートは、入力値を表示するのに必要な圧縮さ
れたコードのビット数である。圧縮の有効性はビットレートの関数による歪みの
プロットで特徴付けられる。
理想的には、歪みはゼロであり、かつこれを達成する圧縮技術の損失はないで
あろう。しかし、損失のない圧縮技術は約2の圧縮比に制限される傾向があるが
、20〜500までの圧縮比が共同ビデオアプリケーションに対して所望される
。損失のある圧縮技術は常にいくらかの歪みが生じる。しかし、歪みは、ごくわ
ずかであっても受け入れることができ、一方で圧縮がより一層達成される。
共同ビデオは、アナログ電話回線、デジタル電話回線、およいローカルエリア
ネットワークを含む異成分からなるネットワークを介して多目的コンピュータ間
での通信に対して所望される。エンコードおよびデコードは、しばしば集中的に
計算され、したがってデータストリームにおける待ち時間(latencies)あるいは
ボトルネックを引き起こし得る。しばしば専用のハードウェアがエンコードおよ
びデコードを促進するために必要である。しかし、専用のハードウェアを必要と
することによって、共同ビデオに対するマーケットが大きく減少する。共同ビデ
オに対しては、まずソフトウェアベースの圧縮が非常に所望されるであろう。
多目的コンピュータの異成分からなるネットワークは、チャンネ
ル容量およびデコード容量の広い範囲を提供する。あるやり方では、画像データ
を再三圧縮し、異なるチャンネルおよびコンピュータに対して異なる度合いで圧
縮するであろう。しかし、これはエンコード側に負担となり、受信側での違う計
算力に対しては不自由である。より良い解決策は、より多くの歪みを犠牲にして
さらに圧縮することが容易にスケーラブルである低圧縮/低歪みコードへ画像デ
ータを圧縮することである。
最新の圧縮スキームが、国際的なMotion Picture Experts Groupによる規格と
して公表されている。現在の規格はMPEG−1およびMPEG−2である。こ
の規格は、オフラインでエンコードされたビデオの再生を伴うアプリケーション
によく適している。例えば、これらはCD−ROMおよびDVDディスクの再生
によく適している。しかし、圧縮の効力には非最適であり、エンコードに必要な
ものは高価であり、スケーラビリティは限定されすぎている。これらの限定は以
下の説明でよりよく理解できるであろう。
ほとんどの圧縮スキームは、画素(picture elements,pixels)の2次元アレイ
として表わされるデジタル画像上で動作し、その各画素はそれぞれに割り当てら
れた(単色あるいはグレースケールの画像におけるように)1つ,あるいは(カ
ラー画像におけるように)複数の値を有する。通例、カラー画像は、圧縮の目的
に対して3つの独立した単色画像の重ね合せとして扱われる。
ビデオ圧縮に実際に必要な損失のない圧縮技術は、単色(グレースケールある
いはカラーの要素)画像に適用される量子化を伴う。量子化では、一般に多数対
1の写像によって高精度画像記述が低精度画像記述へ変換される。量子化技術を
スカラー量子化(SQ)技術およびベクトル量子化技術(VQ)技術へ分割する
ことができる。スカラーが1次元ベクトルであるとみなすことができるとき、2
つの量子化技術の間に重大な品質的な区別が存在する。
ベクトル量子化は、ブロックにおいて画像を処理するために使うことができ、
n次元空間におけるベクトルとして表わされる。単色の写真画像において、隣接
した画素は輝度が近い傾向がある。ベクトル量子化は、隣接した画素の輝度が全
く違うようなn次元空間の領域に対してよりも、隣接した画素は輝度が近いよう
なn次元空間の領域に対してよりのほうが多くの各ベクトルが存在すると仮定す
ることによってこの事実を利用することができる。類似のスカラー量子化におい
ては、各画素は独立に圧縮されるであろう。隣接した画素間の相関関数は利用し
ない。スカラー量子化技術は、相関関数を利用するために付加的な計算を使って
修正され得るが、類似の修正がベクトル量子化に対して適用される。総合的に見
れば、ベクトル量子化はスカラー量子化よりもより効果的な圧縮を提供する。
ベクトル量子化とスカラー量子化との他の相違点は、どのように各値あるいは
ベクトルが圧縮されたデータに表わされるかという点である。スカラー量子化に
おいては、圧縮されたデータは各値の減少させられた精度の表記を有しても良い
。そのような表記は、各値から1つあるいはそれより多い最下位ビットを取り除
くことによって簡単な調整で容易にすることができる。より精巧なスカラー量子
化技術では、各値はインデックスによって表わされる。しかし、スケーリングは
、各値がメートルの次元における与えられたオーダーを有するということをまだ
利用することができる。ベクトル量子化技術では、各ベクトルはn次元の空間に
分布される。n>1では、各ベクトルに対して自然のオーダーは存在しない。し
たがって、任意のインデックスが効果的に割り振られる。圧縮をスケーラブルに
するためにインデックスを巧みに操作するような簡単かつ効果的な方法は存在し
ない。
ベクトル量子化とスカラー量子化との最後の相違点は、量的であるというより
は質的であるという点である。量子化に必要な計算は、計算に伴う画素の数を(
線形的によりはむしろ)劇的に増やす。スカラー量子化では、1画素が同時に処
理される。ベクトル量子化では、複数の画素が一度に処理される。その場合、一
般には4×4および8×8のブロックサイズで、一度に処理される画素の数はそ
れぞれ16および64になる。最小の歪みを得るために、「全探索(full-searc
h)」ベクトル量子化は、それぞれ各ベクトルから画像ベクトルのn次元空間に
おいて距離を計算する。したがって、ベクトル量子化はスカラー量子化よりもず
っと遅くなり、したがってオフライン圧縮アプリケーションに対して制限される
傾向がある。
より高い有効性のために、かなりの努力が、必要とされる計算のうちいくつか
を取り除くことによりベクトル量子化を促進することに向けられている。少ない
歪みの増加に目をつむって入力ブロックごとに必要な計算の数を減少させる「全
探索」VQに代わるものが構成される。構成されたVQ技術は、明らかに不必要
な比較を除外するように指図した方法で比較を実行する。そのような技術の全て
は、最も近い比較が見つからないであろうというリスクをいくらか伴う。しかし
、そのリスクは大きくはなく、一般的な結論としては、最も近い第1のポイント
が選択されないとき最も近い第2のポイントが選択される。結局のところ歪みは
全探索VQのときよりも大きいものになるにもかかわらず、各次元で別個に実行
されるスカラーVQよりも一般的には良好である。
「ツリー構造(tree-structured)」VQでは、比較はペアで実行される。例え
ば、第1の2つの測定は、ベクトル空間の上側および下側半分における対称な位
置でのコードブックポイントを伴ってもよい。画像入力が上側のコードブックポ
イントにより近い場合、空
間の下側半分におけるコードブックポイントの比較はもはや実行されない。ツリ
ー構造VQは、コードブックが一定の対称性を有するとき最もよく動作する。し
かし、このような対称性を必要とすることによってコードブックの設計の自由度
を減少させてしまい、結果として生じるコードブックは歪みを最小にするのに最
適ではなくなる。さらに、減少するにもかかわらず、ツリー構造VQに必要な計
算は、共同ビデオアプリケーションに対して過大になり得る。
テーブルベースのベクトル量子化(TBVQ)において、コードブックベクト
ルに対する可能性のある全てのブロックの割り振りは、予め計算されてルックア
ップテーブル(lookup table)に表わされる。画像圧縮の間は計算は必要ではない
。しかし、画素の4×4ブロックの場合、各画素を特徴付けるために割り当てら
れた8ビットで、テーブルアドレスの数は25616になり、それは明らかに非実
用的である。階層形テーブルベースベクトル量子化(HTBVQ)は、ベクトル
量子化テーブルを段(stage)に分ける。これは効果的にメモリの必要性を減少さ
せるが、付加的な歪みを犠牲にする。
さらに、画像がオリジナルに表現される画素空間は、ベクトル量子化にとって
あまり最良ではないことがよく知られている。ベクトル量子化は、次元が知覚に
よる重み(significance)において異なるとき最も効果的である。しかし、画素空
間においては、次元の知覚による重み(ブロックにおいて異なる画素位置を単に
表わす)は変化しない。したがって、ベクトル量子化は、一般的にウェーブレッ
ト変換(wavelet transform)のような変換より前である。それゆえ、計算が量子
化の前の変換に必要である場合、ベクトル量子化の間、計算を除去する価値は減
らされる。ウェーブレット変換をまとめてHTBVQテーブルにするということ
がいくらかなされても、その結果生じる有効性は満足ではないままである。
ハードウェアアクセラレータがデータ圧縮システムのエンコーディングレート
を改善することに使われることは理解される。しかしこの解決策は高価である。
より重要なのは、歪みの観点から厄介であるという点である。インターネットで
、画像およびウェブページは多くの異なるフォーマットによって表わされ、それ
ぞれはそれ自身のビューアあるいは「ブラウサ゛」が必要である。最低限共通の性
質の鑑賞技術に頼ることなしに最大限可能な観客に到達するために、画像提供者
は、予期される消費者へ鑑賞アプリケーションをダウンロードできる。あきらか
に、このダウンロード分配システムは、ハードウェアベースのエンコーダに対し
ては適用し難い。共同ビデオに対するエンコーダがダウンロード可能なものであ
る場合、それらはソフトウェア実現でのリアルタイム動作に対して十分に早くな
ければならない。アプリケーションが多目的コンピュータの異成分からなるネッ
トワーク上で共同ビデオを伴うようなところでは、有効性,スピード,およびス
ケーラビリティのより最適な組み合わせを提供するダウンロード可能な圧縮スキ
ームがまだ必要である。
発明の概要
本発明は、ブロック変換を実現しかつ可変レートの組込み形コードを出力する
階層形テーブルを使った、データ圧縮を提供することである。最適な利益を得る
ためまとめられる本発明の種々の態様が存在するが、これらは別個に使われても
よい。
本発明の反直観的な態様は、圧縮テーブルにおける構造ベクトル量子化(struc
tured vector quantization)に対して使われるタイプのコードブックの結合であ
る。構造ベクトル量子化は、全探索ベクトル量子化に関する歪みが若干増加する
ことを許容して、圧縮に必要な計算を減らすように設計させる。しかし、全計算
が予め計算さ
れるので、このトレードオフはテーブルという面で不十分なものである。
この場合は、ツリー構造ベクトル量子化に対して使われるコードブック設計手
順が使われるが、これは計算を減らさず、組込み形コードに容易に写像できるコ
ードブックを提供する。組込み形コードでは、ビットは重みのために配置される
。第1のコードブックベクトルに対するマルチビットのインデックスの最下位ビ
ットが落ちるとき、第1のコードブックベクトルの近くのコードブックベクトル
のインデックスが結果として生じる。それゆえ、組込み形コードは可変レートシ
ステムを提供するために容易に調整される。
組込み形コードは、エントロピーを減少させるために容易に可変長にすること
ができ、圧縮の有効性における正味のゲインに対してビットレートを減少させる
ことができる。したがって、構造ベクトル量子化コードブックを使用することに
よって生じる有効性の損失は、可変長コードを使用することによって生じる圧縮
の有効性におけるゲインによる、少なくとも部分的なオフセットである。
本発明の別の態様は、テーブルにおけるブロック変換の実現である。ブロック
変換は、情報が重みによって分けられるようにデータをあらわすことができる。
これは、圧縮の明白な効力で正味のゲインについて重要ではないデータに対して
より多くの圧縮を適応することを実現可能にする。
画像あるいは知覚のデータ圧縮の場合、データが変換される先の空間が知覚的
に線形ではないならば、コードブック設計の間、知覚的に重み付けされた近似手
法を使うことができる。本発明によれば、重み付けされないあるいは知覚的に重
み付けされた近似手法は、歪みを最小にするためのテーブル挿入手順(table fil
l-in procedure)の間に使われるべきである。
本発明のさらなる態様は、コードブック設計において、知覚的に重み付けされ
たあるいは重み付けされない近似手法のほかに考えられるものの結合である。例
えば、エントロピーの制約(constraints)はビットレートを高くするためのコー
ドブック設計に課せられ得る。決定ツリー(decision tree)が(どんどん:greedy)
成長するときにおいて、接続エントロピーおよび歪み手法は、成長させるあるい
は剪定(prune)させるべきノードを選択するために使われ得る。接続手法がノ
ード毎の基準に適用される場合、利用可能な各ビットレートにおいて高い圧縮有
効性を保ちながら事実上連続的であるスケーラビリティが提供され得る。
本発明の最終の態様では、階層形テーブルによって与えられるより低いメモリ
要件を利用する。階層形テーブルは、構造,制約,および変換をどのように統合
するかという問題を提起する。ブロック変換の場合、変換は、テーブルの全ての
段におけるコードブック設計で使われる。しかし、可変長コードを提供すること
に使われる構造および制約の場合、最後の段のテーブルだけの設計について最も
制限する。
利点を得るために本発明の全態様を不自然に一緒にする必要はない。しかし、
可変レート組込み形コードを有するテーブルベースデータ圧縮システムを生成す
るために結合されるとき、その結果は共同ビデオアプリケーションに最適に当て
はまる。エンコードおよびコード両方の側におけるスケーラビリティは組込み形
コードによって提供される。スピードは、全てが予め計算されているようなテー
ブルを使って提供される。階層形テーブルを使うことによって、メモリ要件は道
理にかなう。圧縮の有効性は、統合されたブロック変換およびコードブック設計
に関するエントロピーの検討によって高められる。それゆえ、圧縮はソフトウェ
アのみのアプリケーショ
ンにあてはまる。それゆえ、圧縮スキームを、共同ビデオアプリケーションを広
く利用可能にするためにネットワークを通じて分配することができる。本発明の
これらおよび他の形態および利点は添付の図面を参照して以下の説明から明らか
になる。
図面の簡単な説明
図1は、本発明による画像圧縮の概略的な例示である。
図2は、本発明による図1の圧縮システムを設計するためのフローチャートで
ある。
図3は、図1のシステムのための組込み式コードのための決定ツリーの1概略
的な例示である。
図4は、図1のシステムの性能を示すグラフである。
図5〜8は本発明の別の実施例の性能を示すグラフである。
好適な実施例の説明
本発明によると、画像圧縮システムA1は、図1に示されるように、エンコーダ
ENCと通信ラインLAN,POTS,IDSNとデコーダDECとを備える。エンコーダENCは、
通信ラインを介する分配に対してオリジナル画像を圧縮するために設計されてい
る。
通信ラインPOTS,IDSN,およびLANは、帯域幅において大きく異なる。「Plain
Old Telephone Service(従来の普通の電話サービス)」ラインPOTSは、対応す
るモデムを有し、28.8キロボー(毎秒あたりの記号)の公称のレートでデー
タを伝達する。「Integrated Data Service Network(統合データサービスネッ
トワーク)」ラインIDSNは、非常に速いオーダーでデータを伝達する。「Local
Area Network(ローカルエリアネットワーク)」は、毎秒約10メガビットでデ
ータを伝達する。受信およびデコードしている多く
のコンピュータは、各ラインに接続されるが、1つだけのコンピュータが図1で
はデコーダDECで表わされている。このコンピュータは、エンコーダENCからの送
信を解凍し、オリジナル画像に忠実な再生画像を生成する。
図1に示されるように、エンコーダENCはベクトライザ(vectorizer)VECおよび
階層形ルックアップテーブル(hierarchical lookuptable)HLTを備える。ベクト
ライザVECはデジタル画像を一連の画像ベクトルIiへ変換する。階層形ルックア
ップテーブルHLTは一連のベクトルIiを3つの一連のインデックスZAi,ZBi,お
よびZCiへ変換する。インデックスZAiはラインLANを通じた転送に対する高度の
平均精度の可変長組込み形コードであり、インデックスZBiはラインIDSNを通じ
た転送に対する中程度の平均精度の可変長組込み形コードであり、インデックス
ZCiはラインPOTSを通じた転送に対する低程度の平均精度の可変長組込み形コー
ドである。変化する精度は、ラインの変化する帯域幅に順応する。
ベクトライザVECは、4×4画素のブロックBiに画像を効果的に分割する。オ
リジナル画像が選ばれたブロックサイズによって平等に分割できない場合、画像
分析の公知の方法で分割するために画像の側部に付加的な画素が加えられ得る。
各ブロックは16次元のベクトルIi=(Vij)として表わされ、ここでjは、ブロッ
クBiにおける画素の図1に示されたオーダーにおいて1〜16(1-G、セプタデ
シマル表記)の範囲の次元インデックスである。図1には1つのブロックだけが
例示されているので、「i」インデックスは、図1および以下においてベクトル
値から省く。
各ベクトル要素Vjは、適切な精度、例えば8ビットで表わされ、各画素に関し
て単色(カラーあるいはグレースケール)の輝度を表わす。図1に示すように、
ベクトライザVECは、隣接して番号付け
られている奇偶のペア(例えば、V1,V2)において階層形ルックアップテーブル
HLTにベクトル要素Vjを表示する。
階層形ルックアップテーブルHLTは4つの段S1,S2,S3,およびS4を有する。
段S1,S2,およびS3は、階層形ルックアップテーブルHLTの予備セクション(prel
iminary section)PREを集合的に構成し、一方で第4の段S4は最終セクションを
構成する。各段S1,S2,S3,およびS4はそれぞれ段テーブルT1,T2,T3,およびT
4を有する。図1において、予備セクションの段S1,S2,およびS3のテーブルは
、画像ベクトルごとに使われる回数を表わすために、多数の回数で表わされる。
例えば、テーブルT1は8つのペアの画像ベクトル要素Vjを受信し、それぞれ8つ
の第1段インデックスWjを出力する。処理電力が入手可能である場合、入力値の
ペアを並列に処理できるように、段は同じデザインの別個のテーブルを有する。
階層形ルックアップテーブルの目的は、各画像ベクトルを組込み形インデック
スZA,ZB,およびZCのそれぞれに多数対1に写像することである。別個の画像ベ
クトルの全体数は別個の値であることを注意すると、ベクトル値Vjはこの場合28
=256で、次元の数はこの場合16であると仮定できる。25616のエント
リでテーブルを実現することは非実用的である。予備セクションPREの目的は、
知覚的に関連のある情報の最小の損失で圧縮されなければならない、可能性のあ
るベクトルの数を減らすことである。最終段のテーブルT4の目的は、減少させら
れたベクトルの数を組込み形インデックスの各組に多数対1に写像することであ
る。テーブルT2およびT3はテーブルT4と同じサイズであり、一方でテーブルT1は
216のエントリでさらに小さい。したがって、階層形ルックアップテーブルHLT
の全段に対するアドレスの数全体は400万よりは小さく、これは現実的なテー
ブルエントリの数であるといえる。極端であるような
コンピュータに対しては、全テーブルは216のエントリに制限することができ、
テーブルエントリの全体数は約100万である。
各予備段のテーブルT1,T2およびT3は1つの入力と1つの出力とを有しており
、一方で最終段T4は2つの入力と3つの出力とを有している。画像ベクトル要素
Vjのペアは、第1段のテーブルT1に対して、入力としての役割を果たす。ベクト
ル要素は、画像ブロックのそれぞれの画素に関して値を示すことができる。しか
し、ベクトル要素Vjが画像ブロックでの変換の後に得られる値のアレイを表わす
場合もまた本発明は適用される。例えば、ベクトル要素は画像ブロックに適用さ
れる離散コサイン変換の係数であり得る。
一方で、階層形ルックアップテーブルにおける計算される前の変換を実現する
ほうが、分類されている各画像の各ブロックに対する変換を計算するより、計算
するのにさらに効率的である。したがって、この場合、各入力のベクトルは画素
領域にあり、階層テーブルHLTは離散コサイン変換を実現する。言い換えれば、
各ベクトル値Vjは、関連する画像ブロックのそれぞれの画素に対して単色輝度値
を表わすものとして取り扱われ、一方でインデックスWj,Xj,Yj,ZA,ZB,およ
びZCは空間周波数領域でベクトルを表わす。
ベクトル値(Vj,V(j+1))の各ペアは、16ビット全体で画素の2×1(列×行
)ブロックを表わす。例えば(V1,V2)は、図1のテーブルT1のいちばん左のレプ
リカを特に明るくする2×1ブロックを表わす。テーブルT1は、ベクトル要素の
値のペアを8ビットの第1段のインデックスWjに多数対1に写像させる。この場
合、jの範囲は1〜8である。各8ビットWjはまた2×1画素ブロックを表わす
。しかし精度は16ビットから8ビットに減少する。各画像ベクトルに対して、
16個のベクトル値Vjおよび8個の第1段インデックスWjが存在する。
8個の第1段インデックスWjは、隣接する奇偶の第2段入力の4個のペアに結
合される。各ペア(Wj,W(j+1))は、2×2ブロックを16ビットの精度で表わし
、その2×2ブロックは、個々の第1段インデックスWjによって表わされる2個
の2×1ブロックによって構成される。例えば(W1,W2)は、図1のテーブルT2の
いちばん左のレプリカを特に明るくする2×2ブロックを表わす。第2段のテー
ブルT2は、第1段のインデックスの各第2段入力のペアを第2の段インデックス
Xjに多数対1に写像させる。各画像入力ベクトルに対して、8個の第1段インデ
ックスは4個の第2段インデックスX1,X2,X3,およびX4を生成する。第2段イ
ンデックスXjのそれぞれは、8ビットの精度で2×2画像ブロックを表わす。
4個の第2段インデックスXjは、第3段入力の2個のペア(X1,X2)および(X3,X
4)に結合され、各々は、4×2画像ブロックを16ビットの精度で表わされる。
例えば、(X1,X2)は、テーブルT3の左側のレプリカを特に明るくする上方の半分
のブロックを表わし、一方で、(X3,X4)は、図1のテーブルT3の右側のレプリカ
を特に明るくする下方の半分のブロックを表わす。第3段のテーブルT3は、各第
3段入力のペアを第3段インデックスY1およびY2に多数対1に写像させる。これ
ら2つのインデックスY1およびY2は、1つの画像ベクトルに応じた予備セクショ
ンPREの出力である。
2つの第3段のインデックスは、16ビットの程度で画像ブロック全体を表現す
る第4段入力のペア(Y1,Y2)を形成するためにペアにされる。第4段のテーブルT
4は、第4段入力のペアを組込み形インデックスZA,ZB,およびZCのそれぞれに
多数対1に写像させる。画像全体に対して、多くの画像ベクトルIiが存在し、そ
の各々は3個の各出力インデックスZAi,ZBi,およびZCiを生成する。入力およ
び出力の間の明確な関係は図1の他に以下の表1に示される。 デコーダDECは、LANラインを介してエンコーダENCから受信した画像を解凍(de
compressing)するように設計される。デコーダDECは、コード剪定器(code prune
r)51とデコードテーブル52と画像アセンブラ53とを有する。コード剪定器51は、
段S4からの複数の出力が送信端で行う機能を受信端でおこない、忠実度(fidelit
y)とビットレートとの間のトレードオフを許容する。コード剪定器51はインデッ
クスZAを剪定(prune)するための分類を具体化し、インデックスZBおよびZCを得
る。代わりに、コード剪定器51はインデックスZAを切り取らないで通過させるこ
ともできる。さらに以下に説明す
るように、コードを剪定することによって、どんどん(greedy)成長するツリーの
、より早期のバージョンに効果的に戻ることができる。一般に、コード剪定器が
生成した剪定されたコードは、エンコーダによって生成されたものと一致する必
要はない。例えば、コード剪定器はより大きな代わりのセットを提供することが
できる。
固定長の圧縮コードを可変長コードの代わりに使う場合、剪定の機能は、単に
コードからの最下位ビットの固定数を落とすことができる。この切捨ては階層形
テーブルの出力のエンコーダおよび/またはデコーダにおいて起こり得る。より
洗練された方法ではエントロピー一定に基づいて選択的に剪定される。
デコーダテーブル52は、コードを再生ベクトルに変換するルックアップテーブ
ルである。コードインデックスが空間周波数領域においてコードブックベクトル
(codebook vectors)を表わすので、デコードテーブル52は、再生ベクトルが画素
領域にあるように計算前の逆離散コサイン変換を実現する。画像アセンブラ53は
、再生ベクトルをブロックに変換しブロックから再生された画像をアセンブルす
る。
好適にはデコーダDECは受信コンピュータにおいてソフトウェアで実現される
。ソフトウェアによって忠実度対ビットレートのトレードオフが選択され得る。
そしてソフトウェアは選択されたコードの精度によりコード剪定器51をセットす
る。ソフトウェアはコード剪定器51の各セッティングに対して別個のテーブルを
有する。コード剪定器51の最新のセッティングに対応するテーブルでは、高速の
メモリ(RAM)にロードされる。したがって、ルックアップテーブル52は剪定が作
動されるときよりも小さい。したがって、剪定する機能によって、1)受信コンピ
ュータの容量、あるいは2)デコードする機能に対するローカルメモリの割り当て
、に整合するように高速の
メモリが保護される。
図2のフローチャートで示すように、テーブルの設計方法M1は、階層形ルック
アップテーブルHLTの各段に対して、段が第1段S1,中間の段S2およびS3,あるい
は最終段のどれであるかによっていくつかの変形を持って実行される。各段に対
して、方法M1はコードブック設計手順10とテーブル挿入(fill-in)手順20とを有
する。各段に対して、挿入手順20はそれぞれのコードブック設計手順10によって
先行されなければならない。しかし、各段間に年代による順序(chronological o
rder)が存在するわけではない。例えば、テーブルT3はテーブルT2のためのコー
ドブックが設計される前に挿入され得る。
第1の段に対して、コードブック設計手順10はステップ11でトレーニング画像
(training image)の選択を開始する。トレーニング画像は、システムA1によって
圧縮される画像のタイプを表わすために選択される。システムA1が多目的の画像
圧縮に使われる場合、トレーニング画像の選択は非常に多様であり得る。システ
ムA1が特定のタイプの画像、例えば、線画あるいは写真に使われる場合、そのと
きはトレーニング画像はそのタイプの画像を選択し得る。それほど多様ではない
トレーニング画像のセットでは、トレーニングセットによく整合した画像に対し
ては画像再生をより忠実に行えるが、トレーニングセットにあまり整合していな
い画像に対しては画像再生をより忠実には行えない。
トレーニング画像は2×1のブロックに分割され、そのブロックは、ステップ
12で空間画素領域における2次元ベクトル(Vj,V(J+1))によって表わされる。こ
れらベクトルのそれぞれに対して、Vjは2×1のブロックの左側の画素の輝度を
特徴付け、V(J+1)は2×1のブロックの右側の画素の輝度を特徴付ける。
本発明の代わりの実施例では、コードブック設計およびテーブル挿入は空間画
素領域において行われる。これら画素領域に対しては、ステップ13,23,および
25は、段のいずれに対しても実行はされない。画素領域の問題は、ベクトルの項
はインピーダンスが等しいということである。すなわち、右側の画素の輝度より
左側の画素の輝度を好む理由もなければ逆もない。可能な限り分類に関連した情
報を保持しながらテーブルT1がデータを減らすことに対して、より重要な情報が
より重要ではない情報に対して独立に表現されるように情報を表現することは重
要である。
好適な第1段のテーブルT1の設計に対して、離散コサイン変換が、画素領域に
おける2次元ベクトルを空間周波数領域における2次元ベクトルへ変換するため
にステップ13で適用される。このベクトルの第1の値は、左側および右側の画素
の平均輝度に対応し、一方で、このベクトルの第2の値は、左側の画素と右側の
画素との間の輝度における差に対応する。
感知する人の透視図から、空間周波数領域における画像の2×1のブロックを
表現することによって、画像における情報を比較的重要な項(平均輝度)と比較
的重要ではない項(輝度における差)とに分割する。平均輝度のみに基づいて再
生された画像は、左側あるいは右側の画素のみに基づいて再生された画像よりも
歪まずに表れるであろう。後者のどちらでも輝度の差のみに基づいて再生された
画像よりも歪まずに表れるであろう画像を生成するであろう。与えられた平均の
精度に対して、知覚された歪みは、より重要な次元をより多くのビットに、より
重要ではない次元をより少ないビットに、割り当てることによって減少させるこ
とができるであろう。
コードブックはステップ14で設計される。コードブックインデックスは好適に
は固定長であり、この場合10ビットである。固定し
た精度を最大限利用することは、コードブックのベクトルの数である2の関連す
る電力を選択することによって達成される。この場合、テーブルT1に対するコー
ドブックのベクトルの数は210=1024になる。
理想的には、ステップ14は、2×1の入力ベクトルの予期される確率分布を
有する画像に対して最小の歪みを生成する1024のセットを決定する。理想的
なコードブックのベクトルを見つけるという問題は定式化できるにもかかわらず
、数値による方法によって一般に解決することはできない。しかし、本質的に任
意なセットの「シード(seed)」ベクトルから「良好(good)」なセットのコードブ
ックのベクトルへ収束するような反復方法が存在する。この手順はあるいは、「
クラスタ圧縮アルゴリズム」,「Linde-Buzo-Gray」アルゴリズム,および「一
般化ロイドアルゴリズム(generalized Lloyd algorithm)」(GLA)として知られて
いる。
手順はシードベクトルのセットを開始する。トレーニング画像から生成された
2×1の空間周波数ベクトルのトレーニングセットは、近似ベース(proximity b
asis)上でシードベクトルに割り振られる。この割り振りはシードベクトルのそ
れぞれの周囲のトレーニングベクトルのクラスタを定義する。各クラスタに対す
る重み付けられた平均値ベクトルはそれぞれのシードベクトルに取って代わる。
平均値ベクトルは、シードベクトルよりもより良好な歪み性能を提供する。第1
の歪み値はこの第1の平均値ベクトルに対して決定される。
さらなる改良は、近似ベース状で前もって決定された平均値ベクトルの周囲で
トレーニングベクトルを再クラスタ化し、クラスタに対して新しい平均値ベクト
ルを見つけることによって達成される。この処理は、第1の歪み値よりも第2の
歪み値を少なく生成する。
第1の歪み値と第2の歪み値との差は第1の歪み縮小値(distortion reduction
value)である。この処理は、連続した歪み値および歪み縮小値の達成を反復する
ことができる。歪み値および歪み縮小値は次第に減少する。一般的に歪み縮小値
はゼロにはならない。その代わりとして、歪み縮小値が所定のしきい値を下回る
とき、すなわち歪み値をさらに改善しようにも計算の努力が値しないとき、反復
をストップすることができる。
GLAアルゴリズムの制約はすべてのシードベクトルはみなそれに割り振られ
た少なくとも1つのトレーニングベクトルを持たなければならないということで
ある。この状態を満たすことを保証するために、Linde、Buzo,およびGrayはG
LAについての「分裂(slitting)」技術を発展させた。Y.Linde,A.Buzo,R.M.G
rayの「Algorithm for vector quantization Design」,IEEE Transaction on Co
mmunications,COM-28:84-95,January,1980,およびAn Introduction to Data C
ompression by Khalid Sayood,Morgan Kaufmann Publishers,Inc.San Franci
sco,Calfornia,1996,pp.222-228を参照のこと。
分裂技術はトレーニングベクトルのセットに対する手段を判定することによっ
て開始される。このことは、まるで反復のコードブックが1つのベクトルを有す
るねきであるかのように単一のGLA反復を単一の任意のシードベクトルを適用
するということの結果と考えられ得る。平均値ベクトルは第2の「動揺(perturb
ed)」ベクトルを生成することに動揺する。平均値および動揺ベクトルは、スリ
ッティング技術の次の反復に対して2つのシードベクトルとしての役割を果たす
。その動揺は、いくつかのトレーニングベクトルが2つのシードベクトルのそれ
ぞれに割り振られるであろうことを保証する。歪み縮小値がしきい値を下回るま
で、GLAは2つのシード
ベクトルを動作させ続ける。その結果の2つの平均値ベクトルのそれぞれは、ス
リッティング技術の次の反復に対して4個のシードベクトルを生成することに動
揺する。所望した数、この場合1024のコードブックベクトルが得られるまで
スリィッテング技術は反復される。
再生画像が人間によって見られ知覚した外形(perceptual profile)が入手可能
である場合、ステップ14で使われる歪みおよび近似手法を知覚的に重みつけるこ
とができる。例えば、低いほうの空間周波数項は高い方の空間周波数項よりも重
みを与えることができる。さらに、これはスカラー量ではなくベクトルであるの
で、空間周波数の次元の間での反復効果を考慮することができる。変換の漁期機
が知覚的に線形である場合,知覚した外形が入手可能ではない場合,あるいは画
像が人間の視野に入るまで解凍されたデータが更なる数値処理が施されるべき場
合、重み付けされていないを使うことができる。
ステップ14で設計されたコードブックは、空間周波数領域において1024個
の2×1のコードブックベクトルのセットを備える。ステップ15では任意に割り
振られた各10ビットインデックスが存在する。これは段S1に対する方法M1のコー
ドブック設計手順10を完了させる。
段S1に対する挿入手順20は、内容が判定されることを許すために別々の各アド
レスを生成するステップ21を開始する。好適な実施例では、値がペアにおけるテ
ーブルの各々に入力される。代わりの実施例では、いくつかのテーブルあるいは
全テーブルより多くの入力を有することができる。各テーブルに対して、アドレ
スの数は、各入力で受信され得る可能性のある別々の値の数の積(product)であ
る。典型的には、可能性のある別々の値の数は2つの電力である。
テーブルT1への入力は、8ビットの入力VJおよび8ビットの入力V(J+1)を受信す
る。したがってテーブルT1に対するアドレスの数は28*28=216=65,53
6である。ステップ21に続くステップはこのアドレスのそれぞれにおいて28=
256テーブルT1インデックスWjの1つを入力するように設計される。
各入力Vjは画像の各画素に割り振られた輝度に対応するスカラー値である。こ
れら入力は、空間画素領域において2次元ベクトル(VJ,V(J+1))を定義するため
に、ステップ24でペアに連鎖(concatenate)される。(第1段のテーブルT1の設
計のためにステップ22および23は回避される。)
意味のある近似測定(meaningful prozimity measurement)のために、入力ベ
クトルはコードブックベクトルと同じ領域、すなわち2次元の空間周波数領域に
表わされなければならない。それに応じて、ステップ25でDCTはテーブルT1コ
ードブックの空間周波数領域において2次元ベクトルを生成するために適用され
る。
入力ベクトルに最も近いテーブルT1コードブックベクトルがステップ26で判定
される。その近似測定は、重み付けられていない平均二乗値エラーである。知覚
的な重み付け手法よりむしろテーブルを造っている間、近似手法として、重み付
けられていない平均二乗値エラーのように目的のなる手法を使うことによりより
良い性能が得られる。一方で、重み付けられていない近似測定はこのステップに
対しては一般に必要ではない。しかし、好適にはステップ26におけるテーブル挿
入の間に使う手法は、コードブック設計に対してステップ14が使われる手法より
も平均でおもみつけられない。
テーブル16で最も近いコードブックベクトルに割り当てられたインデックスWj
は、ステップ27で、入力のペア(Vj,V(j+1))に対応するアドレスにおいて内容と
して入れられる。システムT1が動作して
いる間、このインデックスが入力値の当該ペアに応じてテーブルT1によって出力
される。一度インデックスWjがテーブルT1の65,536個の全アドレスに割り
振られると、テーブルT1の方法M1の設計は完了する。
第2段のテーブルT2に対して、コードブックの設計は、ちょうど第1段のテー
ブルT1と同じようにトレーニング画像を選択するステップ11で始まる。テーブル
T1コードブックの設計に使われるトレーニング画像を第2段コードブックの設計
に対してもまた使うことができる。ステップ12では、トレーニング画像は2×2
の画素ブロックに分割される。2×2の画素ブロックは、画素領域において4次
元ベクトル空間に画像ベクトルとして表わされる。一方で4個のベクトル値の各
々は、2×2の画素ブロックの4個の画素のうちのそれぞれ1つに関係する輝度
を特徴つける。
ステップ13では、4次元ベクトルは空間周波数領域にDCTを使って変換され
る。ちょうど4次元画素領域ベクトルを画素の2×2アレイとして表わすことが
できるように、4次元の空間周波数領域ベクトルを空間周波数関数の2×2アレ
イとして表わすことができる
空間周波数領域の4個の値はそれぞれ次を表わす。すなわち、F00)2×2画素
ブロックに対する平均輝度,F01)ブロックの左半分と右半分との輝度の差,F10)
ブロックの上半分と下半分との輝度の差,F11)斜めの輝度の差である。逆DCT
を空間周波数領域ベクトルに適用することによって空間画素領域を取り戻すこと
ができるという点で、DCT変換は損失が少ない(小さな丸め誤差を除く)。
4次元周波数領域ベクトルは、LBG/GLAアルゴリズムによる第2段のコー
ドブック設計に対してトレーニングシーケンスとしての役割を果たす。近似およ
び歪み手法は、テーブルT1に対するコードブックの設計に使われる手法と同じで
あってもよい。違いは、テーブルT2に対して、手法は2次元空間の代わりに4次
元空間で実行されるという点である。8ビットインデックスXjがステップ15でコ
ードブックベクトルに割り振られ、方法M1のコードブック設計手順10が完了する
。
テーブルT2に対する挿入手順20は、テーブルT2のアドレスの各々についての内
容としてインデックスXjをいれることを伴う。図1に示されるように、テーブル
T2への入力はテーブルT1の出力から10ビットのインデックスWjであるべきである
。これらはペアで受信されるので、テーブルT2に対して210*210=220=1,
048,576個のアドレスが存在することになる。これらの各々は、210=1
024個の10ビットのテーブルT2インデックスXjのそれぞれ1つが満たされるべ
きである。
ステップ26のことを考えると、アドレスエントリは、テーブルT2コードブック
が定義される空間における近似手法を使って判定されるべきである。テーブルT2
コードブックは4次元の空間周波数領域の空間で定義される。しかし、テーブルT
2に対するアドレス入力はインデックス(Wj,W(J+1))のペアであるが、このインデ
ックスに対しては意味のある距離(metric)は適用できない。これらのインデック
スの各々は、テーブルT1コードブックベクトルに対応する。ステップ22でインデ
ックス(Wj,W(J+1))をデコードすることによって各テーブルT1コードブックベク
トルを生成するが、これは距離空間において定義される。
しかし、テーブルT1コードブックベクトルは2次元空間において
定義されるが、4次元ベクトルが段S2に対してステップ26で必要である。4次元
ベクトルを生成するために2つの2次元ベクトル周波数領域を連鎖させることが
できるが、その結果はこの文脈においては意味がない。その結果は、上記のよう
に、平均輝度に対応する2つの値と左右の異なる輝度に対応する2つの値とを有
するであろう。必要であろうものは、単一の平均輝度値,単一の左右の異なる値
,単一の上下の異なる値,および単一の斜めの異なる値である。
より高次元の空間周波数領域のベクトルを生成するために2つの空間周波数領
域を結合するような、直接的で有意義な方法は存在しないので、逆DCTがステ
ップ23において、ステップ22で生成された2次元のテーブルT1コードブックベク
トルのペアのそれぞれに適用される。2×2を表わす空間画素領域において2次
元ベクトルを生成するために有意義に連鎖させることができる2次元画素領域ベ
クトルのペアを、逆DCTは生成する。4次元周波数領域ベクトルを生成するた
めに、4次元画素領域ベクトルにDCT変換をステップ25において適用すること
ができる。この4次元の空間周波数領域ベクトルは、テーブルT2コードブックベ
クトルと同じ空間にある。したがって、最も近いテーブルT2コードブックベクト
ルを判定するために、ステップ26において近似手法を有意義に適用することがで
きる。
ステップ15で最も近いテーブルT2コードブックベクトルに割り振られたインデ
ックスXjは、ステップ27で検討中のアドレスに割り振られる。インデックスXjが
全テーブルT2のアドレスに割り振られたとき、テーブルT2に対するテーブル設計
方法M1は完了する。
中間段S3に対するテーブル設計方法1は、次元が倍になるということ以外は、
中間段S2に対する方法と類似している。コード設計手順20は、ステップ11で同じ
あるいは類似の画像を選択することで開
始される。ステップ12では、画像は8次元画素領域ベクトルに変換されるが、そ
の各々はトレーニング画像の4×2画素ブロックを表わす。
8次元の空間周波数領域ベクトルを生成するために、DCTはステップ13で8次
元画素領域ベクトルに適用される。このベクトルのアレイ表示は以下の通りであ
る。
ベース関数F00,F01,F10,およびF11は、2×2アレイに対する意味と同じ意味
を概略的には有するにもかかわらず、一度アレイサイズが2×2を超えると、差
のみに関してベース関数を記述するのはもはや不十分である。代わりに、その項
は異なる空間周波数を表わす。関数F00,F01,F10,およびF11は、第1列において
次第に増加する水平の空間周波数である。関数F00およびF01は、第1行において
次第に増加する垂直の空間周波数である。残りの関数は、水平および垂直の空間
周波数の産物である2次元の空間周波数を表わすものとして特徴付けられ得る。
人間の知覚はより高い周波数領域に比較的集中する。したがって、知覚による
近似手法は、比較的低い(1より小さい)重みをF03やF04のような高い空間周波
数の項に割り当てることができる。同じ理由から、比較的高い(1より大きい)
重みを低い空間周波数の項に割り当てることができる。
知覚による重みは、ステップ14のコードブック割り振りの間、近似および歪み
手法において使われる。GLAの分裂変化(SPlitting variation)が使われる。
一度256語のコードブックが判定されると、インデックスYjはステップ15でコ
ードブックベクトルに割り
振られる。
テーブルT3に対するテーブル挿入手順20はテーブルT2と類似している。ステッ
プ21で生成された各アドレスは、インデックスのペア(XJ,X(J+1))に対応する
。ステップ22で4次元テーブルT2の空間周波数領域コードブックベクトルを生成
するために、これらはステップ22でデコードされる。ステップ23で4次元画素領
域ベクトルを生成するために、逆DCTをこれら2つのベクトルに適用する。画
素領域ベクトルは、結果として画像領域における8次元ベクトルは4×2画素ブ
ロックに対応するようにステップ24で連鎖されるような2×2画素ブロックを表
わす。テーブルT3コードブックベクトルと同じ空間で8次元の空間周波数領域ベ
クトルを生成するために、ステップ25において、DCTを8次元画素領域ベクト
ルに適用する。
最も近いテーブルT3のクックベクトルは、好適には平均二乗値エラーと同じ重
み付けされていない近似手法を使って、ステップ26で判定される。ステップ15で
最も近いテーブルT3コードブックベクトルに割り振られたテーブルT3インデック
スYjは、ステップ27において、検討中のアドレスで入れられる。一度対応するエ
ントリが全テーブルT3のアドレスに対してなされると、テーブルT3の設計は完了
する。
最終段のテーブルT4に対するテーブル設計方法M1は、ステップ11で同じあるい
は類似のトレーニング画像のセットを選択することで開始される。ステップ12で
、トレーニング画像は、4×4画素ブロック(図1のBiの形式を有する)を表わ
す連続した16次元の画素領域ベクトルとして表わされる。各16次元空間周波数
領域ベクトルを生成するために、ステップ13でDCTを画素領域ベクトルに適用
するが、その統計上の外形(statistical profile)は最終段のテーブルT4コード
ブックを作るのに使われる。
段S1,S2,およびS3について標準のテーブルベースのVQコードブックステッ
プを作る代わりに、ステップ16はツリー構造のコードブックを作る。ツリー構造
コードブックと予備段に対して使われる全探索コードブック設計との主な違いは
、コードブックベクトルのほとんどがトレーニング画像の各部分集合だけを使っ
て判定されるという点である。
分裂変形にあるように、図3のAに示されるように、画像ベクトルの平均が判
定される。段S4に対して、トレーニングベクトルは16次元の空間周波数領域にあ
る。この平均は2ベクトルコードブックに対してシードベクトルを生成すること
を動揺させる。GLAは2ベクトルコードブックに対してコードブックベクトル
を判定するために動作させられる。
予備セクションのコードブックの設計から離れて、2ベクトルコードブックの
ベクトルに対するトレーニングベクトルのクラスタは永久的なものとして扱われ
る。図3に示されるように、インデックス0および1は、2ベクトルコードブッ
クのベクトルにそれぞれ割り振られる。2ベクトルコードブックのベクトルの各
々は、シードベクトルの2つのペアを生成することに動揺する。各ペアに対して
GLAは、親コードブックベクトルに割り振られたトレーニングべクトルだけを
使って動作させられる。その結果、オリジナルの2べクトルコードブックのベク
トルのそれぞれに対して、子ベクトルのペアが生じる。子ベクトルにはプリフィ
ックス(prefix)として親ベクトルとのインデックスと1ビットのサーフィス(suf
fice)を有するインデックスを割り振られる。インデックス0ベクトルを割り振
られたコードブックベクトルの子ベクトルは、インデックス00および01を割り振
られ、1のコードブックベクトルの子ベクトルはインデックス10および11が割り
振られる。もう一度、4つの子ベクトル
に対してトレーニングベクトルの割り当てが永久的なものとして扱われる。
決定ツリー(decision-tree)の清澄には「公平に成長する(evenly-growing)」
および「どんどん成長する(greedily-growing)」変形例が存在する。いずれの場
合でも、ツリーを十分成長させてその後に所望された精度のツリーに剪定し戻す
ことが望まれる。公平に成長する変形例では、子の双方のセットは、次の世代に
対するシード(seed)を選択するのに使われる。したがって、ツリーは世代毎に成
長する。所望の可変長コードの最大限可能な深さに対して公平に成長するツリー
を成長させることは、実用に比べて寄り多くのメモリと計算時間を必要とする。
剪定の開始点が、その剪定の結果生じるツリーと同じである一般の形状を有す
る場合、より少ない成長およびより少ない剪定が必要である。そのようなツリー
は好適な「どんどん成長する」変形例によいって得ることができ、そこでは聖光
はノード毎である。一般的には、成長は不公平であり、例えば、一方の兄弟(sib
ling)はもう一方が子を持つ前に孫を有することができる。どの子ノードが次に
成長させられるのを判定することは、歪みDと各子ノードでの成長の結果である
であろうエントロピーHとでの増加に対して、接続手法(joint measure)D+λH
を計算することを伴う。成長は最も低い接続手法を有するノードにおいてだけ促
進される。接続手法は成長させるべきノードを選択するのにだけ使われることに
注意されたい。好適な実施例では、エントロピーは、クラスタ化に使われる近似
手法においては考慮されない。しかし、本発明はエントロピーを含んだ近似手法
を提供する。
例では、接続エントロピーおよび歪み手法は、各々が叔母(aunt)と2つの姪(n
iece)を有する2個の3ベクトルコードブックに対し
て判定される。一方の3ベクトルコードブックがベクトル0,10,および11を有
し、もう一方の3ベクトルコードブックがベクトル1,00,および01を有する。
低い方の接続手法を有する3ベクトルコードブックは2ベクトルコードブックに
取って代わる。したがってテーブルT4コードブックは、(スプリティング手順に
関する各反復を2倍にする代わりに)一度に1つのベクトルが成長させられる。
さらに、子に取って代わられた親は序数が割り振られる。図3の例では、より低
い歪みがベクトル1の子に関連する。3ベクトルコードブックはベクトル11,10
,および0からなる。序数1(図3において括弧でくくられている)は取り替え
られた親ベクトル1に割り当てられる。この序数は圧縮スケーリングの選択に使
われる。
ツリー成長手順の次の反復では、2つの新しいコードブックベクトル、例えば
11および10は、2つ多いペアのシードベクトルが生成されるようにそれぞれ動揺
される。GLAは各親に割り振られたトレーニングベクトルだけを使って各ペア
で実行される。その結果として、提案された新しいコードブックベクトル(111,1
10)および(101,100)の2つのペアが生じる。歪み手法は各ペアに対して得られる
。この歪み手法は、ベクトル、例えば、2ベクトルおよび3ベクトルコードブッ
クに共通して0に対して既に得られた歪み手法と比較される。ツリーはコードブ
ックベクトルから成長し、これによって成長は最も少ない歪みを生成する。図3
の例では、ツリーはベクトル0から成長し、それには序数2が割り振られている
。
次のレベルのコードブックが1つ多いすぐ前のレベルコードブックのベクトル
を持つように、成長技術の各反復で1つの親ベクトルが2つの子ベクトルに取っ
て代わられる。子ベクトルに対するインデックスは、親ベクトルに対するインデ
ックスの終わりにそれぞれ0および1を付加することによって形成される。結果
として、各世
代に対するインデックスはすぐ前の世代に対するインデックスより1だけ長くな
る。このように生成されるコードは「プリフィックス」コードである。図3はツ
リー成長手順において9回の反復の後のツリーを示している。
随意的に、ツリー成長は、コードブックベクトルに対応する終端ノードが達せ
られるような所望の数を有するツリーで終結することができる。しかし、結果生
じるツリーは典型的には最適ではない。より最適なツリーを得るために、成長は
所望のコードブックに必要なサイズを十分に越して続く。例えば、十分に成長し
たツリーに関連するコードに対する平均ビット長は、最大精度のコードに対して
使われるべきツリーに対して所望された平均ビット長の2倍であってよい。十分
に成長したツリーは、所望のサイズのツリーになるまで、歪みおよびエントロピ
ーの接続手法を使ってノード毎に剪定され得る。剪定は公平に十分成長したツリ
ーからエントロピー形成されたツリーを得るために使われ得ることも注意された
い。
より低い精度のツリーは、どんどんと成長する間に割り振られる序数によって
設計され得る。ナンバリングのシーケンスにはいくつかのギャップが存在するか
もしれないが、数字のオーダーはより低い精度のツリーに対してノードの選択を
導くためにまだ提供される。しかし、好適には高精度のツリーは、より良い低精
度のツリーを提供するために歪みおよびエントロピーの接続手法を使って剪定さ
れる。剪定という点で、序数は成長のオーダーではなく剪定のオーダーを反映す
るために再び割り振られてもよい。共通の先祖およびその子に対して剪定が続け
られる場合、そのときは全序数は剪定のオーダーにしたがって再び割り振られて
もよい。
完全精度ツリー(full-precision-tree)のコードブックは、前にあったコード
ブックのいずれよりも低い歪みおよび低いビットレー
トを提供する。より高いビットレートが所望される場合、適切な序数を選択し、
より高い序数を有する全コードブックベクトルを剪定することができる。結果生
じる前にあったコードブックは、歪みおよびビットレートの最適に近いトレード
オフを提供することができる。この場合では、1024ベクトルのコードブック
が作られ、そのインデックスはインデックスZAに対して使われる。インデックス
ZBに対しては、ツリーはより高いビットレートを生成するために序数512に戻
るように剪定される。ZCに対しては、インデックスは一層高いビットレートを生
成するために序数226に戻るように剪定される。デコーダDECのコード剪定器5
1は、適切なビットレート対歪みのトレードオフを作ることができるような序数
に関する情報を有する。
インデックスZA,ZB,およびZCがテーブルT4の各アドレスのセクションに入れ
られ得るとき、そのようにすることはメモリが効率的ではないであろう。代わり
に、インデックスZC,Zb,およびZaが記憶される。ZbはインデックスZBを得るた
めにインデックスZCに加えられるビットを示す。ZaはインデックスZAを得るため
にインデックスZBに加えられるビットを示す。
テーブルT4に対する挿入手順20は、ステップ21で、入力(Y1,Y2)の全て可能性
のある別々のペアのに対応する220アドレスの生成を開始する。各第3段のイン
デックスYjはステップ22で各8次元の空間周波数領域のテーブルT3のコードブッ
クベクトルを生成するためにデコードされる。4×2画素ブロックを表わす対応
する8次元の画素領域ベクトルを得るために、ステップ23で逆DCTをこれらテ
ーブルT3コードブックベクトルに適用する。このベクトルは、それぞれ4×4画
素ブロックに対応する16次元の画素領域ベクトルを形成するために、ステップ24
で連鎖される。DCTは、テーブルT4コ
ードブックと同じ空間において16次元の各空間周波数領域ベクトルを生成するた
めにステップ24で適用される。
3セットのコードブックベクトルのそれぞれにおいて最も近いテーブルT4コー
ドブックベクトルはステップ26で識別され、重み付けされていない近似手法を使
う。最も近いコードブックベクトルに関連する分類インデックスZA,ZB,および
ZCは、検討中のテーブルT4のアドレスに割り振られる。一度この割り振りがテー
ブルT4の全アドレスに対して反復されると、テーブルT4の設計は完了する。一度
全テーブルT1〜T4が完了すると、階層形テーブルHLTの設計は完了する。
その結果生じる圧縮システムのパフォーマンスは、好適な実施例の、可変レー
トのツリー構造の階層形テーブルベースのベクトル量子化(variable-rate tree-
structured hierachical table-based vector quantization:VRTSHVQ)の圧縮の
場合に対して、図4に示される。圧縮の有効性は、非階層形の可変レートのツリ
ー構造のテーブルベースのベクトル量子化(non-hierachical variable-rate tre
e-structured table-based vector quantization:VRTSVQ)の圧縮に対するよりも
少し悪い。しかし、平凡な階層形ベクトル量子化(HVQ)よりも著しく良好である
。
階層形VQルックアップテーブルにおける、知覚による手法,ツリー構造,およ
びエントロピーの制約を具体化するための方法のより詳細な説明は以下に示され
る。説明について複雑さが増したことに対するために、表記においていくつか変
更が必要である。以下の例ではテーブル挿入の間、知覚による手法を利用する。
本発明によれば、テーブル挿入に対して重み付けされない手法を使ってより低い
歪みが達成可能であるということが維持される。
ベクトル量子化を実現するのに使われるテーブルはまたブロック
変換を実現することができる。このテーブルルックアップエンコーダにおいて、
エンコーダに対する入力ベクトルが、コードワードを選ぶためのコードテーブル
においてアドレスとして直接使用される。順変換あるいは逆変換を実行する必要
はない。これらはテーブルで実現される。階層形テーブルは、段でベクトルを量
子化するために大きい次元のVQに対して管理可能なテーブルサイズを保つのに使
われる。エンコーダおよびデコーダの両方がテーブルの参照によって実現される
ので、最終システムの実現において算数計算は必要ない。アルゴリズムは、包括
的なブロック変換(DCT,Harr,WHT)と階層形ベクトル量子化の新しい結合であ
る。これらはVQの設計において知覚による重み付けおよび主観的歪み手法を使
う。エンコーダおよびデコーダの両方がテーブルルックアップのみで実現され、
効率的なソフトウェアおよびハードウェアの解決によって受け入れられる。
デコーダは簡単なテーブルルックアップとして実現することができるが、エン
コーダは最小歪みコードワードに対する徹底的な探索として通常は実現されなけ
ればならないという点で、全探索(full-search)ベクトル量子化(VQ)は計算
的に不釣り合いである。したがって、VQは、例えばCDROMからのビデオの
ソフトウェアデコードで、デコーダは非常に簡単でなければならないがエンコー
ダは比較的複雑であるかもしれないという問題をアプリケーションに見つける。
種々の構造ベクトル量子化は、全探索エンコーダの複雑さを減らすために導入
されている。例えば、変換コードは構造ベクトル量子化器であり、そこではエン
コーダは、変換係数のスカラー量子化の前に線形変換を実行する。しかし、デコ
ーダは逆変換を実行しなければならないので、この構造はまたデコーダの複雑さ
を増加させる
。したがって、変換コーディングのとき、エンコーダおよびデコーダの計算の複
雑さは本質的にバランスされており、変換コーディングは、ビデオ電話のような
点対点の通信を自然のアプリケーションに見つける。変換コーディングの特別な
利点は、周波数感度によって、知覚による重み付けは、変換係数の中に適切にビ
ットを割り当てることによって簡単に実行されるという点である。
他の構造ベクトル量子化スキームの多くは、エンコーダの複雑さを減少させ、
同時にデコーダの複雑さを増加させない。そのようなスキームはツリー構造VQ
,格子VQ,細かい−粗い(fine-to-coarse)VQなどを有している。階層形テー
ブルベースベクトル量子化(HTBYQ)は、テーブルルックアップの階層形配置を
有する全探索エンコーダに取って代わり、その結果、エンコードするためのサン
プル毎に1テーブルの参照の最大値が生じる。その結果、バランスされたスキー
ムが生じるが、エンコーダおよびデコーダの両方に非常に低い計算の複雑さを有
する。したがって、HVQは安い多目的コンピュータの異成分からなるネットワー
クにわたる共同のビデオに自然のアプリケーションを見つける。
知覚的に重要な歪み手法は、任意の変換の係数を重み付けることに基づいてH
TBVQに集積され得る。本質的には変換は予め計算され、エンコーダおよびデ
コーダのルックアップテーブルに組み込まれる。したがって、テーブルルックア
ップのエンコードおよびデコードの計算の簡単さを維持しながら、変換コーディ
ングの知覚による利点が得られる。
HTBVQはテーブルルックアップだけを使ってベクトルをエンコードする方
法である。テーブルルックアップを使うエンコードの単純な方法は、入力ベクト
ルにおけるシンボルによって直接テーブルをアドレスすることである。例えば、
各入力シンボルが(単色画
像での画素に対して一般的であるような)r0=8ビットの精度に予め量子化さ
れ、ベクトルの次元がK=2であると仮定する。そのとき、Kr0=16のアド
レスビットを有するルックアップテーブルおよびlog2Nの出力ビット(ここ
でNはコードブックにおけるコードワードの数)が、各2次元ベクトルを最も近
いコードワードのインデックスへ単一のテーブルルックアップを使ってエンコー
ドされるのに使われる。不幸なことに、この単純な方法におけるテーブルサイズ
は中程度のKに対して実行不可能な大きさである。画像コーディングに対して、
単一のベクトルとして画素の各8×8ブロックをコードすることができるように
、64と同じ大きさのKが必要である。
階層においてテーブルルックアップを実行することによって、より大きいベク
トルは、図1に示されるように実用的な方法に適応させられる。図において、オ
リジナルの精度が単位シンボル当りr0=8ビットであるK=8次元のベクトル
が、単位ベクトル当りrM=8ビット(すなわち、8:1の圧縮比に対して単位
シンボル当りレートR=rM/K=1ビットで)にテーブルルックアップのM=
3段を使ってエンコードされる。第1段において、K入力シンボルはサイズk0
=2のブロックへ分割され、各ブロックのそれぞれは、r1=8の出力ビットを
生成するために、k0r0=16のアドレスビットを有するルックアップテーブル
を直接アドレスするのに使われる。同様に、1からMの各連続した段mにおいて
、rmの出力ビットをブロックごとに生成するためのkmrm-1のアドレスビット
を有するルックアップテーブルを直接アドレスするために、前段からのrm−1
ビットの出力は長さkmのブロックに結合される。量子化器が固定レートの量子
化器である場合、最終段Mからのrmビットの出力はチャンネルを通じて直接デ
コーダへ送出される
かもしれず、またあるいは、例えば量子化器が可変レート量子化器である場合、
ビットが可変長コードのテーブルにインデックスを付けるために使われるかもし
れない。固定レートである場合、rmは
して単位シンボル当りのR=rm/Kビットが、量子化器の全体的
を有する固定レート量子化器のビットレートを決定する。しかし、全mに対して
km=2およびrm=8の場合、階層における各段の後では、ベクトルの次元Km
が倍で、ビットレートrm/Kmの半分、すなわち圧縮比が倍である。固定レート
量子化器の結果生じるシーケンスは多レートコーディングに使うことができる。
計算の複雑さは単位入力シンボル当り多くて1つのテーブルルックアップである
。
エンコーダのストレージ要件は、m番目の段におけるテーブルに対する2kmrm -1
×rmビットである。全mに対してkm=2およびrm=8の場合、各テーブル
は64Kバイトテーブルである。
段内の全テーブルが同一であると仮定すると1つだけの64Kテーブルが、階層
のM=log2Kの段のそれぞれに対して必要である。kmおよびrmに対する可
能性のある多くの値が明確に可能であるが、km=2およびrm=8は、実現の目
的に対して通常最も便利である。次の説明から他の値をカバーすることが推定さ
れる。
この点においてアドレスする主な問題点は、テーブルの内容の設計についてで
ある。段におけるテーブルは、{0,1,...,255}のそれぞれにおける
2つの入力インデックスi1 m-1およびi2 m-1から{0,1,...,255}に
おける出力インデック
スimへの写像としてみなすことができるであろう。次元Km=2
m=2mおよびレートrm/Km=8/2mビットでi=0,1,...,255と
して、あらゆる手ごろなVQ設計アルゴリズム(一般化ロイドアルゴリズムのよ
うな)を使ってオリジナルデータ上でトレーニングされた、固定レートVQコー
ドブックβm(i)を
トルに最も近い2m次元コードワードのインデックスにするために
である場合、i=0,1,...,255として上で定義したimを用いて、βm
(im)は、コードブックβm(i)両半分をよく表わしたものであろうというこ
とである。
HTBVQの利点は、歪み手法がテーブルに予め計算されているので、エンコ
ーダの複雑さは歪み手法の複雑さによらないという点である。それゆえに、もし
複雑ならば、HTBVQは知覚的に有意義な歪み手法を実現するのに理想的にあ
てはまる。
しており、ここで、定数および1次の項はゼロであり2次の項は非負の準定符号
である。それゆえに、歪み手法は、XtはXの転置を
)の第2の導関数の行列であるとすると、入力重み付け二乗平均値
。Mxは対称でありかつ非負の準定符号であるので、非負の固有値の行列に対角
にされてもよく、Wx=(Wl,...,Wk)で、
である。
(Wxの一般化された固有ベクトルの)対角行列TxがXによらない場合、み付けられた合計である。以下、Tは、Haar,Walsh-Hadamard,あるいは離散コ
サイン変換のような、いくつかの固定変換の変換行列であると仮定することにし
、重みWxはxに対して任意に変化するようにする。これは、知覚による歪み手
法の理にかなった一般的な部類である。
重み付けがないとき、すなわちWx=Iのとき、直交変換Tによ
交しており、したがって距離を保存する回転および/または反射であるからであ
る。それゆえに、重み付けが均一であるとき、変換がHaar変換(HT),W
alsh−Hadamard変換(WHT),離散コサイン変換(DCT)など
いずれによらず、変換された空間における二乗エラーはオリジナルの空間の二乗
エラーに等しい。実際、それらのコードワードは相互の簡単な回転および/また
は反射であるので、異なる変換Tに対して平均二乗エラーを最小にするために変
換空間において設計されるVQコードブックは全て等しい。係数のスカカー量子
化に対して最良な変換を決定するのに重
要であるエネルギー圧縮基準(energy compaction criterion)は、重みが均一の
とき、係数のスカラー量子化に対して最良な変換を決定することは重要ではない
。
重みが均一ではないときは、異なる直交変換によって異なる歪み手法が生じる
。それゆえ、不均一な重みは、この知覚による歪み手法の部類において欠くこと
のできない役割を果たす。
重みは、異なる変換係数あるいは帯域における量子化エラーに対して人間の視
覚の感度に反映される。重みはモデルマスキング効果(model masking effect)に
対して入力依存(input-dependent)であり得る。ベクトル量子化に対する近くに
よる歪み手法に使われるとき、各帯域に対して、重みは効果的にステップサイズ
あるいはビット割り当てを制御する。例えば、JPEGにおけるように、変換係
数の均一のスカラー量子化を考える。Kの帯域のそれぞれに対してスカラー量子
化のステップサイズsl,...,skをセッティングすることによって、帯域お
よび適切な知覚モデルにおいて信号の長さによって帯域間に割り当てられる。結
果として生成するコードのエンコード範囲は、j=1,...,Kとしてj番目
の軸に沿って辺(side)sjを有する超矩形(hyper-rectangles)である。
変換係数が重み付けられた二乗エラー歪み手法に関して量子化されたベクトル
のとき、重みWl,...,Wkはステップサイズに対応する役割を果たす。(変
換領域において)重み付けられた歪み
されるような変換の、通常の(重み付けられていない)二乗平均である。この調
整された変換空間において、エントロピー制約に従う最小平均二乗エラーを有す
るベクトル量子化は、均一のコードワード濃度(少なくとも多数のコードワード
に対して)を有するので、
各エンコードセルはK空間において同じボリュームVを有する。それゆえに、各
エンコードセルは、調整された空間において線形の次元Vl/K(1より小さい球
パッキング係数:sphere packing coefficientをかける)を有する。調整されて
いない空間では、各エンコ
る。それゆえ、j=1,...,Kとして重みWjの平方根は、倍率(scale fact
or)の逆数に対応し、あるいはj=1,...,Kとしてwj∝sj 2である。知
覚による歪み手法を引き出す方法の一つとしては、変換行列に対してDCTを、
重みに対してはJPEGステップサイズの二乗の逆数を使うことである。
HTBVQはDCT,Haar,およびWalsh−Hadamard変換の
ようなブロックベースの変換に結合されることができ、視覚的な性能を改善する
ために知覚的に重み付けられる。ここで、その結合は、重み付けられた変換HV
Q(Weighted Transform HVQ)(WTHVQ)として呼ばれている。ここで、WT
HVQを画像コーディングに適用する。
WTHVQのエンコーダはM段(図1に示すように)からなり、各段はルック
アップテーブルによって実現される。画像コーディングに対して、分離できる変
換が用いられ、奇数の段は列で動作し、偶数の段は画像の行で動作する。第1段
は、第1のルックアップテーブルに対するアドレスとして、入力画像のk1=2
の水平に隣接した画素を結合する。この第1段は、256コードワードで主観的
な歪み手法を使う知覚により重み付けられたベクトル量子化の前の、入力画像上
での2×1変換に対応する。それゆえ、レートはWTHVQの各段において半減
される。第1段は2:1の圧縮を与える。
第2段は、第2のルックアップテーブルに対するアドレスとして
、垂直に隣接した第1段のk2=2の出力を結合する。この第2段は、256コ
ードワードで主観的な歪み手法を使う知覚により重み付けられたベクトル量子化
の前の、入力画像上での2×2変換に対応する。2×2のベクトルが2つの段に
おいて連続的に量子化される点だけが異なる。第2段後に得られる圧縮は4:1
である。
1<i≦Mとして、段iでは、テーブルに対するアドレスは、前段のki=2
の隣接した出力を使うことによって構成され、アドレスされた内容は次の段に対
するアドレスとして直接使われる。段iは、256コードワードを有する主観的
な歪み手法を使う知覚により重み付けられたベクトル量子化の前の、iが偶数に
対しては2i/2×2i/2の知覚により重み付けられた変換に、iが奇数に対しては
2(i+1)/2×2(i-1)/2の変換に対応する。量子化がi段において連続的に実行さ
れる点だけが異なる。i段後に得られる圧縮は2
ある。M段後に得られる圧縮比は2M:1である。最終段はエンコーデイングイ
ンデックスuを生成するが、そのuは入力(知覚的に重み付けられた変換)ベク
トルに対する近似を表わし、それをデコーダに送出する。このエンコーディング
インデックスは、入力重み付け歪み手法を有する直接変換VQに得られるものと
類似する。WTHVQのデコーダは、そのような変換VQのデコーダと同じであ
る。すなわち、コードワード上で逆変換がなされる時間より前におけるルックア
ップテーブルである。
WTHVQの計算の要件および記憶の要件は普通のHVQのそれと同じである
。原則としては、WTHVQに対する設計アルゴリズムは普通のHVQと同じで
あるが、知覚による歪み手法を用いる。しかし、原則としては、データを変換し
変換された空間においてWTHVQを設計することによって計算の節約がなされ
るが、互いに
直交するように重み付けられた歪み手法dTを使う。
WTHVQの設計は2つの主なステップからなる。第1のステップは、各変換
段に対してVQコードブックを設計する。各知覚により重み付けられた変換VQ
の段は異なる次元およびレートを有するので、それらは別々に設計される。上述
のような主観的に意味のある歪み手法はコードブック設計に対して使われる。
WTHVQの各段に対するコードブックは、トレーニングシーケンスにおいて
適切なオーダーの変換上で動作する一般化ロイドアルゴリズム(GLA)によっ
て、独立に設計される。256のコードワードを有する第1段のコードブックは
、トレーニングシーケンスの2×1変換(DCT,Haar,あるいはWHT)
上でGLAを動作させることによって設計される。同様に、段iコードブック(
256コードワード)は、その段に対して適切なオーダーのトレーニングシーケ
ンスの変換上でGLAを使うことによって設計される。主観的な歪み手法dTを使
って変換されたデータに対して再構成されたコードワードは、
によって与えられる。
オリジナルのトレーニングシーケンスは、各段に対して適切なオーダーの対応
する変換を使ってそれを変換することによって、前段の設計に使われる。ところ
が実は、各段は多くの前段を通過(go through)しなければならず、シーケンスは
各段において連続的に量子化されそれゆえ各段において異なるので、各段に対し
て対応する入力トレーニングシーケンスは一般に異なる。
WTHVQの設計における第2のステップは、設計されたコードブックからル
ックアップテーブルを作る。変換に対する各コードブックを作った後は、対応す
るコードブックテーブルが各段に対して
作られる。第1段のテーブルは、2個の8ビット入力画素の異なる結合をするこ
とによって作られる。216のそのような結合が存在する。各結合に対して2×1
の変換が実行される。最小歪みルール(主観的な歪み手法dT)の意味における
結合に対する変換に最も近いコードワードのインデックスは、特定の入力結合に
対するテーブルの出力エントリに入れられる(put in)。この手順は可能性のある
入力結合全てに対して繰り返される。第1段テーブルの各出力エントリ(全部で
で216エントリ)は8ビットを有する。
第2段テーブルは行で動作する。それゆえ第2段に対して2個の第1段テーブ
ルの積結合(product combination)は、第1段テーブルからの2個の8ビット出
力の積によって得られる。第2段に対して216のそのような結合が存在する。特
定のエントリに対して、連続的に量子化された2×2変換は、第1段コードブッ
クに対するインデックスを使うことによって得られる2つのコードワード上で2
×1の逆変換をすることによって得られる。次に、得られた2×2の生データ上
で2×2の変換が実行され、主観的な歪み手法dTの意味におけるこの変換された
ベクトルに最も近いコードワードのインデックスは、対応する出力エントリに入
れられる。この手順はテーブルにおける入力エントリ全てに対して繰り返される
。第2段テーブルの各出力エントリもまた8ビットを有する。
第3段テーブルは列で動作する。それゆえ第3段に対して2個の第2段テーブ
ルの積結合は、第2段テーブルの出力エントリの積によって得られる。第2段テ
ーブルの各出力エントリは8ビットを有する。第3段に対する異なる入力エント
リの総数は216である。特定のエントリに対して、連続的に量子化された4×2
変換は、第2段コードブックに対するインデックスを使うことによって得られる
2つのコードワード上で2×2の逆変換をすることによって得られ
る。次に、得られた4×2の生データ上で4×2の変換が実行され、この変換さ
れたベクトルに主観的な歪み手法dTの意味において最も近いコードワードのイ
ンデックスは、対応する出力エントリに入れられる。
残りの段テーブルは、全て2つの逆変換を実行し、そしてデータ上での順変換
を実行することによって類似の方法で作られる。主観的な歪み手法dTの意味に
おいてこの変換データに最も近いコードワードは、その段に対してコードブック
から得られ、対応するインデックスはテーブルに入れられる。最後の段は、デコ
ーダに送出される出力エントリとしてコードワードのインデックスを有する。デ
コーダは最後の段のコードブックのコピーを有し、対応するコードワードを出力
するために最後の段に対してインデックスを使う。
最も簡単なテーブル作成手順は、HaarおよびWalsh−Hadamar
d変換に対して使われ得る。これは、HaarおよびWHTの良い特性にのため
に、より高いオーダーの変換を分割されたデータ上でのより低いオーダーの変換
の線形結合として得ることができるようにする。各段で、2つの逆変換および1
つの順DCT変換が実行されなければならないので、DCT、すなわち逆変換の
方法に対してテーブルを設計することは、HaarおよびWHTよりも高価にな
るであろう。
異なるHVQアルゴリズムに対してシュミレーション結果が得られている。そ
のアルゴリズムはJPEGおよび全探索VQについて比較されている。表IIは、
JPEG,全探索の普通のVQ,全探索の重み付けしていないHaar VQ,全探索
の重み付けしていないVQ,および全探索の重み付けしていないDCT VQについて
、異なる圧縮比に対する、8ビット単色画像Lena(512×512)についての
PSNR結果を表わす。VQに対するコードブックは、5つの異な
る画像(女4性1,女性2,男性,カップル,および群衆)をトレーニングする
ことによって生成されている。
普通のVQと重み付けしていない変換VQとのPSNR結果が、各圧縮比に対
して同じであるということが表IIから分かる。これは、変換が全て直交であり、
あらゆる差はGLAにおけるスプリッテリングアルゴリズムが同等のシステムに
対して過敏であるということのためであるからである。JPEGは、可変レート
コードであるので、これらのスキームよりも約5dB良好に動作する。この固定
レートのVQベースアルゴリズムは、JPEGと比較して他の利点を有する。し
かし、これらアルゴリズムに沿ってエントロピーコーディングを使うことによっ
て、25%多い圧縮比を得ることができる。
表IIIは、HVQ,普通のHaar VQ,重み付けしていないWHT HVQ,および全探
索の重み付けしていないDCT HVQについて、異なる圧縮比に対する、Lenaについ
てのPSNR結果を表わす。変換HVQのPSNR結果が、同じ圧縮比に対して
普通のHVQの結果と同じであるということが表IIIから分かる。表IIIの結果を
表IIと比較すると、HVQベースのスキームは、全探索VQスキームよりも約0
.7dB悪く動作することが分かる。
表IVは、全探索の普通のVQ,知覚的に重み付けられた全探索Haar VQ,知覚
的に重み付けられた全探索WHT VQ,および知覚的に重み付けられた全探索DCT VQ
について、異なる圧縮比に対する、LenaについてのPSNR結果を表わす。重み
付けは、PSNRを減少させるにもかかわらず、圧縮画像の主観的な品質を増加させ
る。重み付けられたVQを使って圧縮された画像の主観的な品質は、重み付けら
れていないVQよりもずっと良好である。表IVはまた、知覚的に重み付けられた
Haar VQ,WHT HVQ,およびDCT HVQについて、異なる圧縮比に対する、Lenaにつ
いてのPSNR結果を表わしている。重み付けられた変換HVQを使って得られ
た圧縮画像の視覚的な品質は、普通のHVQよりも非常に高い。重み付けられた
変換VQの圧縮画像の品質は、重み付けられた変換HVQの圧縮画像のそれとほ
とんど同じである。
表Vは、Lenaに対して、SUNのSparc-10ワークステーションにおいて、異な
るアルゴリズムでのエンコード時間を表わしている。変換HVQと普通のHVQと
のエンコード時間が同じであるということが表Vから分かる。第1段のエンコー
ドに対しては12ms、第2段のエンコードに対しては24msなどというよう
な時間がかかっている。一方でJPEGは、全ての圧縮比において、エンコード
に250ms必要としている。それゆえ、HVQベースのエンコーダは、JPE
Gのエンコーダよりも10〜25倍速い。HVQベースのエンコーダはまた、全
探索VQベースのエンコーダよりも約50〜100倍速い。HVQでのこの低い
計算の複雑さは、異成分からなるネットワーク上での共同ビデオに対してとても
便利である。多目的ワークステーション上でソフトウェアのみでビデオエンコー
ドできるのは毎秒30フレームである。
表VIは、Lenaに対して、SUNのSparc-10ワークステーションにおいて、異な
るアルゴリズムでのデコード時間を表わしている。変換HVQ,普通のHVQ,普
通のVQ,および変換VQのデコード時間が同じであるということが表VIから分
かる。2:1の圧縮画像のデコードに対しては13ms、4:1の圧縮画像のデ
コードに対しては16msなどというような時間がかかっている。一方でJPE
Gは、全ての圧縮比において、デコードに200ms必要としている。それゆえ
、HVQベースのデコーダは、JPEGのデコーダよりも20〜40倍速い。変
換VQのデコード時間は、変換がデコーダテーブルで予め計算され得るので普通
のVQのデコード時間と同じである。HVQのこの計算の複雑さは低いので、ソ
フトウェアでのビデオデコードを毎秒30フレーム可能である。
テーブルルックアップのみによって実現される一般的なブロック
変換ベースのベクトル量子化器(WTHVQ)の設計に対して提供された技術は、
全探索VQエンコーダの複雑さを減少させる。知覚的に十分な歪み手法は、任意
の変換の係数を重み付けることに基づいて、HVQに統合される。本質的には、
変換は予め計算され、エンコーダおよびデコーダのルックアップテーブルに作成
される。変換コーディングの知覚の利点は、テーブルルックアップのエンコード
およびデコードの計算上の簡単さを維持する限り、達成される。これらのアルゴ
リズムは、多レートの共同ビデオ環境でアプリケーションを有する。これらのア
ルゴリズム(WTHVQ)はまた効果的なソフトウェアおよびハードウェア解決
策に従う。WTHVQの計算の複雑さは低いので、ソフトウェアでのビデオエン
コードを毎秒30フレーム可能である。
テーブルルックアップによって実現される一般的な制約および帰納的ベクトル
量子化器のエンコーダの設計に対する技術は、エントロピー制約VQ,ツリー構
造VQ,分類VQ(classified VQ),プロダクトVQ(product VQ),平均除去V
Q(mean-removed VQ),多段VQ,階層形VQ,非線形の補間VQ(non-lenear i
nterpolativeVQ),予測VQ,および重み付けられた普遍的なVQ(weighted uni
versal VQ)を有する。これらの種々のVQ構造は、以下に提示されたアルゴリズ
ムを使って階層形ルックアップテーブルベクトル量子化に結合され得る。
特に、可変レートを得るためのエントロピー制約VQおよび組込み形コードを
得るためのツリー構造VQについて考える。さらに、分類VQ,プロダクトVQ
,平均除去VQ,多段VQ,階層形VQ,および非線形の補間VQについてを非
制約VQの複雑性の問題を克服するために考え、それによって、より高度のベク
トル次元およびより大きいコードブックサイズを利用できるようにする。予測V
Qのような帰納的ベクトル量子化器は、一層小さいコードブックを使いながら大
きなコードブックを有するメモリのないVQの性能を得る。重み付けられた普遍
的なVQは多コードブックシステムを提供する。
知覚的に重み付けられた階層形ルックアップテーブルVQは、種々の制約およ
び帰納的なVQ構造に結合され得る。これらの構造の各々の本質においては、H
VQエンコーダはまだテーブルルックアップのM段からなる。最後の段はVQの
種々の構造について異なる。
エントロピー制約ベクトル量子化(ECVQ)は、コードワードのエントロピ
ーにおける制約に支配される平均歪みを最小にし、可変レートシステムを得るの
に使うことができる。ECHVQは、最後の段のコードブックおよびテーブルが
可変レートであるということ以外は、HVQと同じ構造を有する。最後の段のコ
ードブックおよびテーブルは、ECVQアルゴリズムを使って設計され、そこで
は、1D0を(上で定義された1d0の予測値によって得られる)平均歪み、1
H0をエントロピーとして非制約の最小化問題1min(D+λH)0が解決さ
れる。したがって、この修正された歪み手法は、最後の段のコードブックおよび
テーブルの設計に使われる。最後の段のテーブルは、デコーダへ送出される可変
長インデックスを出力する。デコーダは最後の段のコードブックのコピーを有し
、対応するコードワードを出力するために最後の段の対するインデックスを使う
。
ECHVQの設計は2つの主なステップからなる。第1のステップは各段に対
してVQコードブックを設計する。各VQ段は異なる次元とレートを有している
ので、それらは個別に設計される。上述のように、主観的に有意義な歪み手法は
、コードブックを設計する
ために使われる。ECHVQの最後の段を除く各段に対するコードブックは、ト
レーニングシーケンスの適切なベクトルサイズで動作する一般化ロイドアルゴリ
ズム(GLA)によって独立に設計される。最後の段のコードブックは、ECV
Qアルゴリズムを使って設計される。ECHVQの設計における第2のステップ
は、設計されたコードブックからルックアップテーブルを作成する。各コードブ
ックを作成した後、対応するコードは各段に対して作成される。最後の段のテー
ブルを除く全テーブルは、上述の手順を使って作成される。最後の段のテーブル
は、修正された歪み手法を使って設計される。一般に、最後の段のテーブルは写
像
を実現する。ここでrM(i)は最後の段のコードブックにおけるi番目のコー
ドワードを表わすビット数である。最後の段のコードブックおよびテーブルだけ
がラムダの異なる値について違う必要がある。
HVQの最後の段におけるツリー構造VQは組込み形コードを得るために使わ
れ得る。普通のVQにおいては、コードワードは組織立っていないコードブック
(unstructured codebook)に存在し、各入力ベクトルは最小歪みコードワードに
写像される。これは入力空間の仕切りをボロノイ(Voronoi)エンコード領域に導
入する。一方で、TSVQにおいて、コードワードはツリー構造に配置され、各
入力ベクトルは(ルートノードから)最小歪みの子ノードに連続的に写像される
。これは、ツリーの深さが増加するので、階層形の仕切り、すなわち入力空間の
微細な区別(refinement)を導入する。子の連続する微細な区別のために、リーフ
ノード(leaf node)へ写像する入力ベクトルは、ルートからリーフの経路マップ
によって高精度に、あるいは経路のプリフィックスによって低精度に表わされ得
る。よれゆえ、TSVQはデータの組込み形エンコードを生成する。ツリーの深
さがRでベクトルの次元がkの場合、ビットレート0/k,.......,R/kを全て
達成できる。
可変レートTSVQは、ツリーの深さを変えることによって、構成し得る。こ
れは、一度にツリーの1つのノードを「どんどん成長させる」ことによって、あ
るいは大きなツリーを成長させかつその平均長(PTSVQ)あるいはエントロ
ピー(EPTSVQ)の制約に支配されるその平均歪みを最小にするために剪定
し戻されることによって、することができる。最後の段のテーブルは、デコーダ
へ送出する固定長あるいは可変長の組込み形インデックスを出力する。デコーダ
は最後の段のツリー構造コードブックのコピーを有し、対応するコードワードを
出力するために最後の段の対するインデックスを使う。
TSHVQは、最後の段のコードブックおよびテーブルがツリー構造であるこ
とを除いて、HVQと同じ構造を有する。したがってTSHVQでは、最後の段
のテーブルは、チャンネルにおいて送信される固定長あるいは可変長の組込み形
インデックスを出力する。TSHVQの設計はまた2つの主なステップからなる
。第1のステップは各段に対してVQコードブックを設計する。TSHVQの最
後の段を除く各段に対するコードブックは、トレーニングシーケンスの適切なベ
クトルサイズで動作する一般化ロイドアルゴリズム(GLA)によって独立に設
計される。TSHVQの設計における第2のステップは、設計されたコードブッ
クからルックアップテーブルを作成する。各コードブックを作成した後、対応す
るコードは各段に対して作成される。最後の段のテーブルを除く全テーブルは、
よってエンコードされる先の可変長インデックスiにセットすることによって設
計される。
分類階層形テーブルルックアップVQ(Classified Hierarchical Table-Looku
p VQ:CHVQ)において、分類器(classifier)は各入力ベクトルが属するクラ
スを決定するために使われる。各クラスは、そのクラスに対するコードブックに
基づいて設計されたHVQテーブルのセットを有する。分類器は、GLAあるい
はアドホック(ad hoc)なエッジ分類器あるいは、例えば平均あるいは分散など
のベクトルの特色に基づくあらゆる他のタイプの分類器によって設計された、最
も近いの分類器であり得る。CHVQエンコーダはどのクラスを使うべき課を決
定し、付帯的な情報としてクラスに対するインデックスを送出する。
慣例上、分類VQの利点は、各クラスに対してより小さいコードブックを使う
ことによって全探索VQのエンコードの複雑さを減らすことにある。ここで、C
HVQの利点は、ビット割り当ては、そのクラスの意味の重要性に基づいてクラ
スに対するレートを決定するためになされ得るということである。エンコーダは
、入力ベクトルに対するクラスについてデコーダに付帯的情報を送出する。クラ
スはどのテーブルの階層を使うべきかを判定する。最後の段のテーブルは、デコ
ーダへ送出する固定長あるいは可変長のインデックスを出力する。デコーダは種
々のクラスに対する最後の段のコードブックのコピーを有し、受信した分類情報
に基づいてクラスのコードブックから対応するコードワードを出力するために最
後の段の対するインデックスを使う。
CHVQは、各クラスがHVQテーブルの個別のセットを有するということ以
外はHVQと同じ構造を有する。CHVQでは、最後の段のテーブルは、デコー
ダへ抄出する固定長あるいは可変長(エ
ントロピー制約CHVQ)のインデックスを出力する。CHVQの設計はまた2
つの主なステップからなる。第1のステップは、HVQあるいはECHVQに関
してのように各クラスに対する各段についてのVQコードブックを設計する。各
コードブックを作成した後、対応するコードのテーブルは、HVQあるいはEC
HVQに関してのように各クラスに対する各段について作成される。
積階層形テーブルルックアップVQ(Product Hierarchical Table Lookup VQ)
は、ベクトルを2つあるいはそれより多い要素に分裂させることによって高次元
ベクトルをコーディングするような記憶の複雑さを減らし、各分裂ベクトルを独
立にエンコードする。例えば、8×8のブロックを4個の4×4のブロックとし
てエンコードすることができ、各エンコードは4×4のブロックに対してHVQ
テーブルの同じセットを使う。一般に、入力ベクトルは変化する次元のサブベク
トルへ分裂させることができるが、ここでは各サブベクトルはHVQテーブルを
使って適切な段へエンコードされるであろう。テーブルおよびコードブックはこ
の場合、HVQに対してと正確に同じである。
平均除去階層形テーブルルックアップVQ(MRHVQ)は、エンコードおよ
びデコードの複雑さを減らすためにプロダクトコード(product code)の形式であ
る。それにより、より高いレートでより高次元のベクトルのコーディングができ
る。MRHVQでは、入力ベクトルは、平均(スカラー)および残差(residual)
(ベクトル)の2つの要素の形質に分裂される。MRHVQは全探索エンコーダ
がテーブルルックアップによって取って代わられるような平均除去VQである。
MRHVQエンコーダでは、第1段のテーブルは、残差に対して8ビットのイン
デックス、2×1ブロックに対しては8ビットの平均を出力する。残差に対する
8ビットのインデックスは
第2段のテーブルをインデックスするのに使われる。第2段のテーブルの出力は
、第3段への有力として使われる。第1段の後、個別の2×1のブロックに対す
る8ビットの平均は、入力ブロックに対してさらに平均され量子化され、残差イ
ンデックスのデコーダに独立に送信される。最後の段のテーブルは、デコーダへ
送出される固定長あるいは可変長(エントロピー制約MRHVQ)の残差インデ
ックスを出力する。デコーダは最後の段のコードブックのコピーを有し、コード
ブックから対応するコードワードを出力するために最後の段の対するインデック
スを使い、ブロックの受信した平均値を加える。
MRHVQは、全てのコードブックおよびテーブルが平均除去ベクトルに対し
て設計されることを除いて、HVQと同じ構造を有する。MRHVQの設計はま
た2つの主なステップからなる。第1のステップは、適切な次元の平均除去トレ
ーニング上で、HVQあるいはECHVQに関してのように各段に対するVQコ
ードブックを設計する。各コードブックを作成した後、対応するコードブックテ
ーブルはHVQあるいはECHVQにおけるときのように各段に対して作成され
る。
多段階層形テーブルルックアップVQ(MSHVQ)はプロダクトコードの形
式であり、それは、より高いレートでのより高次元のベクトルのコーディングを
可能にする。MSHVQは、全探索エンコーダがルックアップテーブルによって
取って代わられるような多段である。MSHVQでは、エンコードは個別の段で
実行される。第1段では、入力ベクトルは、HVQテーブルのセットを使って粗
く量子化される。第1段インデックスは粗いレベルの情報として送信される。第
2段では、入力と第1段の量子化されたベクトルとの間の残差が、HVQテーブ
ルの別のセットを使って再び量子化され
る。残差は第2段)におけるテーブルルックアップを通じて得ることができるこ
とに注意されたい。第2段のインデックスは詳細な区分の情報としてデコーダへ
送出される。この手順は、連続する段の間での残差が、HVQテーブルの新しい
セットを使ってエンコードされるように続けられる。MSHVQの異なる段の間
ではビット割り当てが必要である。デコーダは、対応するコードブックを参照す
るために送信されたインデックスを使い、再構成されたベクトルが加えられる。
MSHVQは、HVQの個別の段を有するということを除いて、HVQと同じ
構造を有する。MSHVQでは、各段は、デコーダへ送出される固定長および可
変長(エントロピー制約MSHVQ)のインデックスを出力する。MSHVQの
設計は2つの主なステップからなる。第1段のエンコーダのコードブックはHV
Qにおけるときのように設計される。第2段のコードブックは、第1段の後、ト
レーニングセットと量子化トレーニングセットとの間の残差を使って閉ループで
設計される。HVQあるいはECHVQにおけるときのように各段に対して本質
的に作成される。第2段およびその後に続く段に対するテーブルが残差ベクトル
に対して設計されるという点だけが違う。
階層−階層形テーブルルックアップVQ(Hierarchical-Hierarchical Table-L
ookup VQ)(H−HVQ)はまたt高いレートでより高次元ベクトルのコーディ
ングを可能にする。H−HVQは、全探索エンコーダがテーブルルックアップエ
ンコーダに取って代わられるような階層形VQである。MSHVQにおけるとき
のように、H−HVQエンコードは個別の段において実行される。第1段では、
大きな入力ベクトル(スーパーベクトル)は、量子化された形質のベクトルを与
えるために、HVQのセットを使って粗く量子化され
る。第1段のインデックスはデコーダへ送信される。第2段では、入力と第1段
の量子化されたベクトルとの間の残差が、HVQテーブルの別のセットを使って
再び量子化されるが、スーパーベクトルはより小さなサブベクトルに分裂される
。残差は第2段におけるテーブルルックアップを通じて得ることができることに
注意されたい。第2段のインデックスはまたデコーダへ送出される。スーパーベ
クトルを仕切り量子化するこの手順は、連続する残差をエンコードすることによ
って、各段に対して繰り返される。H−HVQの異なる段の間ではビット割り当
てが必要である。デコーダは、対応するコードブックを参照するために送信され
たインデックスを使い、再構成されたベクトルが加えられる。H−HVQの構造
は、この場合、エンコードの第1段とその後に続く段とにおけるベクトルの次元
が異なるということを除いて、MSHVQと類似している。H−HVQの設計は
、その後に続く段においてベクトルの次元が減少するということがだけが違うよ
うなMSHVQの設計と同じである。
非線形の補間テーブルルックアップVQ(Non-linear Interpolative Table-Lo
okup VQ)(NIHVQ)はHVQと比較してエンコードおよび記憶の複雑さを減
少させることができる。NIHVQは、全探索エンコーダがテーブルルックアッ
プエンコーダによって取って代わられる非線形の補間VQである。NIHVQで
は、エンコードは、形質ベクトル(feature vector)がオリジナルの入力から取り
出され、かつエンコードは減少した次元の形質ベクトルで実行されるという点を
除いて、HVQのときのように実行される。最後の段の出力は、デコーダへ送出
される固定長および可変長(エントロピー制約NIHVQ)のインデックスを出
力する。デコーダは、最後の段のコードブックのコピーを有し、対応するコード
ワードを出力するために最後の段の対するインデックスを使う。デコーダのコー
ドブックは、入力ベクトルの次元の最適な非線形の補間コードワードを有する。
NIHVQの設計は2つの主なステップからなる。第1のステップは、HVQ
あるいはECHVQに関してのように各段に対する形質ベクトルからエンコーダ
VQコードブックを設計する。最後の段のコードブックは非線形の補間VQを使
って設計される。各コードブックを作成した後、対応するコードテーブルはHV
QあるいはECHVQにおけるときのように各クラスに対する各段について作成
される。
予測階層形テーブルルックアップVQ(PHVQ)はメモリを有するVQであ
る。PHVQと予測VQ(PVQ)との間の違いは、全探索エンコーダがテーブ
ルルックアップの階層形配置によって取って代わるということである。PHVQ
は、画像におけるブロック相互の相関関数(inter-block correlation)を利用す
る。PHVQは、より一層小さいコードブックを使いながら大きいコードブック
を有するメモリのないVQの性能を達成する。PHVQでは、カレントブロック
は、線形の予測を使って予め量子化された近隣のブロックに基づいて予測され、
カレントブロックとその予測との残差はHVQを使ってコーディングされる。予
測もまたテーブルルックアップを使って実行することができ、量子化された予測
ブロックは再びテーブルルックアップを通じて残差を計算するために使われる。
最後の段の出力は、デコーダへ送出される残差に対する固定長および可変長のイ
ンデックスを出力する。デコーダは、最後の段のコードブックのコピーを有し、
コードブックから対応するコードワードを出力するために最後の段の対するイン
デックスを使う。デコーダはまたテーブルルックアップを使って近隣のブロック
からカレントブロックを予測し、予測ブロックに受信した残差を加える。
PHVQでは、全てのコードブックおよびテーブルが残差ベクトルに対して設
計される。PHVQでは、最後の段の出力は、デコーダへ送出される固定長およ
び可変長(エントロピー制約PHVQ)のインデックスを出力する。PHVQの
設計は2つの主なステップからなる。第1のステップは、適切な次元(閉ループ
コードブック設計)の残差トレーニングのセットで、HVQあるいはECHVQ
に関してのように各段に対してVQコードブックを設計する。各コードブックを
作成した後、対応するコードテーブルはHVQあるいはECHVQにおけるとき
のように各段に対して作成されるが、残差は第1段のテーブルで計算され得ると
いう点だけが違う。
重み付けられた普遍的な階層形テーブルルックアップVQ(Weighted Universa
l Hierarchical Table-Lookup VQ)(WUHVQ)は、スーパーベクトルがHV
Qのセットを使ってエンコードされ、歪みを最小にするものがスーパーベクトル
内で全ベクトルをエンコードするために選ばれるような、多コードブックVQで
ある。付帯的情報は、どのコードブックを使うべきかについてデコーダに知らせ
るために送出される。WUHVQは、各スーパーベクトルに対するコードブック
の選択およびスーパーブック内の各ベクトルのエンコードがテーブルルックアッ
プを通じてなされるような重み付けられた普遍的なVQ(WUVQ)である。最
後の段の出力は、デコーダへ送出される固定長および可変長(エントロピー制約
WUHVQ)のインデックスを出力する。デコーダは、異なるテーブルに対して
最後の段のコードブックのコピーを有し、受信した付帯的情報に基づいて選択さ
れたコードブックから対応するコードワードを出力するために最後の段の対する
インデックスを使う。
WUHVQはHVQテーブルの複数のセットを有する。WUHVQの設計はま
た2つの主なステップからなる。第1のステップは、
HVQあるいはECHVQに関してのように各段に対してWUVQコードブック
を設計する。各コードブックを作成した後、対応するHVQテーブルは、HVQ
あるいはECHVQにおけるときのようにHVQテーブルの各セットについて各
段に対して作成される。
種々のHVQアルゴリズムに対してシミュレーション結果が得られている。図
4〜8は、種々のアルゴリズムに対して、ビットレートの関数として、8ビット
単色画像Lena(512×512)についてのPSNR(ピーク信号雑音比:peak
signal-noise-ratio)結果を表わす。VQに対するコードブックは10個の異な
る画像でのトレーニングによって生成される。PSNR結果は重み付けられてい
ないVQに対して与えられる。重み付けは、圧縮画像の主観的品質を著しく改善
するにもかかわらず、PSNRを減少させる。しかし、主観的な歪み手法を使う
ことによってPSNRが約2dBに等しいゲインとなることに注意すべきである
。
図4は、どんどん成長した後に剪定された、可変レートのツリー構造階層形ベ
クトル量子化(VRTSHVQ)に対するLenaについてのPHVQ結果を表わす
。この結果は最後の段がツリー構造であるような4×4のブロックについてであ
る。VRTSHVQは最後の段で組込み形コードを与える。そのうえVRTSH
VQはHVQよりも増している。そのうえ非階層形可変レートのツリー構造テー
ブルベースのベクトル量子化VRTSVQと比較して約0.5〜0.7dBの損
失がある。
図5は、普通のVQおよび普通のHVQについて異なるビットレートに対する
LenaについてのPHVQ結果を表わす。この結果は4×4のブロックについてで
ある。HVQは全探索VQよりも約0.5〜0.7dB悪く動作することが分か
る。図4は、最後の段で256個のコードワードを有するエントロピー制約のH
VQ(ECH
VQ)に対するLenaについてのPHVQ結果を表わす。この結果は、ECHVQ
の始めの3つの段が固定レートで最後の段が可変レートであるような4×4のブ
ロックについてである。ECHVQがHVQよりも約1.5dB増していること
が分かる。しかしそのうえECVQと比較して約0.5〜0.7dBの損失があ
る。
分類HVQは、レート歪みについてHVQよりもわずかに悪く動作するが、各
クラスに対してより小さいコードブックを使うことによって、複雑さ(エンコー
ドおよび記憶)がより低くなるという利点を有する。そのうえプロダクトHVQ
(Product HVQ)は、レート歪みの複雑さにおいてHVQと比較してわずかだけ悪
く動作するが、入力ベクトルをより小さいサブベクトルへ仕分け、かつより小さ
いHVQテーブルのセットを使ってそれらのうちひとつをエンコードするので、
HVQと比較してより一層小さいエンコードおよび記憶の複雑さを有する。その
うえ平均除去HVQ(MRHVQ)は、レート歪みについてHVQと比較して悪
く動作するが、HVQ構造を使ってより高いレートでより高次元のベクトルをコ
ーディングすることができる。
図6は、階層形HVQ(H−HVQ)に対するLenaについてのPHVQ結果を
表わす。この結果は2段のH−HVQについてである。第1段は8×8のブロッ
クで動作し、HVQを使って8ビットにコーディングされる。第2の段では、残
差が別のHVQテーブルのセットを使って再びコーディングされる。図11は、第
2段H−HVQ(各段が8ビットにコーディングされる)の異なる段での結果を
示す。固定レートのH−HVQは、ほとんどのレートにおいて固定レートのHV
Qよりも約0.5〜1dB増している。多段HVQ(MSHVQ)は、第2段が
オリジナルのブロックサイズにコーディングされるようなH−HVQと一致して
いる。このように、MSH
VQの性能が図11からまたわかる。そのうえ全探索Shoham-GershoHVQの結果と比
較して約0.5〜0.7dBの損失がある。
図7は、最後の段で256個のコードワードを有するエントロピー制約の予測
HVQ(ECPHVQ)に対するLenaについてのPHVQ結果を表わす。この結
果は、ECPHVQの始めの3つの段が固定レートで最後の段が可変レートであ
るような4×4のブロックについてである。ECPHVQが、固定レートのHV
Qよりも約2.5dB、ECHVQよりも1dB増していることが分かる。しか
しそのうえECPVQと比較して約0.5〜0.7dBの損失がある。
図8は、エントロピー制約の重み付けられた普遍的なHVQ(ECWUHVQ
)に対するLenaについてのPHVQ結果を表わす。スーパーベクトルがこれらの
シミュレーションに対して16×16のブロックであり、より小さいブロックは4×
4である。256個の4×4コードワードをそれぞれ有する64コードブックが
存在する。ECWUHVQが、固定レートのHVQよりも約3dB、ECHVQ
よりも1.5dB増していることが分かる。しかしそのうえWUVQと比較して
約0.5〜0.7dBの損失がある。
変換HVQおよび普通のHVQのエンコード時間は同じである。Sparc-10ワー
クステーション上で、第1段のエンコードに対しては12ms、始めの2つの段
に対しては24ms、512×512画像のエンコードの始めの4つの段に対し
ては30msの時間がかかる。一方で、JPEGは、類似の圧縮比において、エ
ンコードに250ms必要としている。制約および帰納的なHVQのエンコード
の複雑さは、普通のHVQと比較して2〜8の因子によって増加する。HVQベ
ースのエンコーダは、これらの対応する全探索VQエンコーダよりも50〜10
0倍速い。
同様に、変換HVQ,普通のHVQ,普通のVQ,および変換VQのデコード
時間は同じである。Sparc-10ワークステーション上で、2:1の圧縮画像のデコ
ードに対しては13ms、4:1の圧縮画像のデコードに対しては16ms、1
6:1の圧縮された512×512の画像のデコードに対しては6msの時間が
かかっている。一方でJPEGは、類似の圧縮比において、デコードに200m
s必要としている。制約および帰納的なHVQのエンコードの複雑さは、HVQ
のそれと比較してそれほど増加しない。それゆえ、HVQベースのデコーダは、
JPEGのデコーダよりも20〜30倍速い。変換VQのデコード時間は、変換
がデコーダテーブルで予め計算され得るので普通のVQのデコード時間と同じで
ある。
したがって手短に述べると、制約および帰納的なHVQ構造は固定レートのメ
モリのないVQの問題点を克服する。これらのアルゴリズムの主な利点は、対応
するVQ構造と比較して計算の複雑さがとても低いということである。エントロ
ピー制約のHVQは、可変レートのコードを与え、HVQよりも良好に動作する
。ツリー構造HVQは、組込み形のコードを与え、HVQよりも良好に動作する
。分類HVQ,プロダクトHVQ,平均除去HVQ,多段HVQ,階層形HVQ
,および非線形の補間HVQは、非制約VQの複雑性についての問題点を克服す
し、より高度のベクトル次元を利用できるよ4うにし、より高いレートを得る。
予測HVQは、一層小さいコードブックを使いながら大きなコードブックを有す
るメモリのないVQの性能を得る。ベクトル相互の相関関数を利用することによ
って、より良好なレート‐歪み性能が得られる。そのうえに、重み付けられた普
遍的なHVQは、レート‐歪みに関してHVQよりも非常に増している。主観的
な歪み手法を有するこれらアルゴリズム(例えばPHVQ,WUHVQ)のさら
にいくつかは、より低いデコ
ードの複雑さで、レート‐歪みにおいてJPEGに対してより良好あるいは同等
に動作する。
上で示したように、制約および帰納的なベクトル量子化器のエンコーダは、テ
ーブルルックアップによって実現された。これらベクトル量子化器は、エントロ
ピー制約VQ,ツリー構造VQ,分類VQ,プロダクトVQ,平均除去VQ,多
段VQ,階層形VQ,非線形の補間VQ,予測VQ,および重み付けられた普遍
的なVQを有する。われわれのアルゴリズムは、これら種々のVQ構造を階層形
ルックアップテーブルベクトル量子化に結合する。これらの結合はオリジナルの
VQ構造の複雑さを非常に少なくする。また知覚による有意義な歪み手法を、任
意の変換の係数を重み付けることに基づいてHVQに統合する。本質的には、変
換は予め計算され、エンコーダおよびデコーダのルックアップテーブルに入れら
れる。それゆえ、テーブルルックアップのエンコードおよびデコードの計算は簡
単のままに変換コーディングの知覚による利点を得る。好適な実施例に対するこ
れらおよびその他の修正例および変形例は、本発明によって提供され、その範囲
は以下の請求項によって定義される。
─────────────────────────────────────────────────────
フロントページの続き
(81)指定国 EP(AT,BE,CH,DE,
DK,ES,FI,FR,GB,GR,IE,IT,L
U,MC,NL,PT,SE),OA(BF,BJ,CF
,CG,CI,CM,GA,GN,ML,MR,NE,
SN,TD,TG),AP(GH,KE,LS,MW,S
D,SZ,UG),UA(AM,AZ,BY,KG,KZ
,MD,RU,TJ,TM),AL,AM,AT,AU
,AZ,BA,BB,BG,BR,BY,CA,CH,
CN,CU,CZ,DE,DK,EE,ES,FI,G
B,GE,GH,HU,IL,IS,JP,KE,KG
,KP,KR,KZ,LC,LK,LR,LS,LT,
LU,LV,MD,MG,MK,MN,MW,MX,N
O,NZ,PL,PT,RO,RU,SD,SE,SG
,SI,SK,TJ,TM,TR,TT,UA,UG,
US,UZ,VN,YU
Claims (1)
- 【特許請求の範囲】 1.データを別個のベクトルのセットから選択されたデータベクトルのセット に変換するためのベクトライザと、 前記別個のベクトルを組込み形コードのセットに、前記コードのうちの1つが 前記データベクトルのそれぞれに応答して生成されるように写像させるルックア ップテーブルであって、前記データベクトル変換を受信するための前記ベクトラ イザに結合されているような前記ルックアップテーブルと、 を備えるデータ圧縮システム。 2.前記組込み形コードのセットは、異なる長さのコードを有する請求項1に 記載のデータ圧縮システム。 3.前記組込み形コードのセットは前記コードの複数のサブセットを有し、前 記サブセットのうちの2つは前記コードと同じ番号は有すさず、前記ルックアッ プテーブルは複数の出力を有し、前記ルックアップテーブルは、前記複数の出力 のそれぞれ1つからの前記画像のベクトルのそれぞれについて各サブセットから コードを出力する請求項1に記載のデータ圧縮システム。 4.最終コードブックベクトルのセットを含む最終コードブックを決定するた めにルックアップテーブルの最終段に対してツリー構造コードブックを設計する ステップであって、最終インデックスのセットが前記最終コードブックベクトル のセットに写像されるようなステップと、 テーブルアドレスとして入力ベクトルの結合のセットを使って前記ルックアッ プテーブルに挿入し、前記最終コードブックベクトルのそれぞれ対する入力ベク トルの前記結合のそれぞれの近似に基づいて前記最終インデックスを前記アドレ スに割り振るステップと、 を含むデータ圧縮システムを設計する方法。 5.前記最終コードブックは、接続歪みおよびエントロピー基準によって形成 されるツリー構造を有する請求項4に記載の方法。 6.前記設計するステップは、一連のツリーを定義するために、歪みおよびエ ントロピーの接続制約に従うツリー構造コードブックをノード毎にどんどん成長 させその後剪定することを伴い、そこでは、先輩ツリーを有する各ツリーは、2 つの付加的なノードを有する点で先輩ツリーと異なり、前記ツリーのそれぞれは 、前記各ツリーの子ノードに対応するコードブックベクトルのそれぞれのコード ブックを有し、前記コードブックのそれぞれは、第1の組込み形コードのセット と第2の組込み形コードのセットとを有する組込み形コードの各セットを有し、 前記挿入するステップは、前記第1のセットからのコードと前記第2のセット からのコードとを、入力ベクトルの前記結合のそれぞれに割り振ることを伴う、 請求項4に記載の方法。 7.ブロック変換領域において歪み手法を最小にするためにコードブックベク トルを選択するためのステップを含むデータ圧縮テーブルを設計するコンピュー タ方法。 8.前記歪み手法は知覚的に重み付けられる請求項7に記載の方法。 9.インデックスを前記コードブックベクトルに割り振るステップと、 前記インデックスを、前記コードブックベクトルに対する前記結合のそれぞれの 近似に基づいて画像ベクトル入力の結合に割り振るステップであって、前記近似 は、前記歪み手法よりも重み付けられない近似手法により判定されるようなステ ップと、 をさらに備える請求項8に記載の方法。 10.請求項7に記載の方法によって設計されるデータ圧縮テーブルを含む画 像圧縮システム。 11.請求項9に記載の方法によって設計されるデータ圧縮テーブルを含む画 像圧縮システム。 12.画像を画像ベクトルに変換するためのベクトライザであって、各画像ベ クトルは、前記画像の画素の相互に占有的であるものうちのそれぞれ1つを表わ すようなベクトライザと、 前記画像ベクトルのそれぞれをコードブックベクトルに対する前記画像ベクト ルのブロック変換の近似手法の関数であるインデックスに写像するためのテーブ ル手段と、 を備える画像圧縮システム。 13.構造ベクトル量子化に対してコードブック設計手段とを使ってコードブ ックベクトルを設計するステップを含むデータ圧縮テーブルのコンピュータ方法 。 14.請求項13の方法により設計されるベクトル量子化テーブルを含む画像 圧縮システム。 15.エントロピーおよび歪みの接続手法を使ってコードブックを設計するス テップを含むベクトル量子化テーブルを設計するコンピュータ方法。 16.請求項15の方法により設計されるベクトル量子化テーブルを含む画像 圧縮システム。 17.画像をベクトルに変換するためのベクトライザと、 どんな固定長コードよりも与えられた歪み手法に対して高いビットレートを提 供する可変長コードを出力するベクトル量子化テーブルと、 を備える画像圧縮システム。 18.重み付けされた歪み手法を使ってコードブックを設計する ステップと、 前記歪み手法より重み付けされない近似手法を使ってテーブル入力を前記コー ドブックに割り振るステップと、 を含む画像圧縮テーブルを設計する方法。 19.請求項17の方法を使って設計される画像圧縮テーブルを含む画像圧縮 システム。 20.歪みを最小にする制約と比較して歪みを最小にする他の制約を連帯的に 使って最終段のテーブルに対するコードブックを設計するステップを含む、階層 形データ圧縮テーブルを設計するコンピュータ方法。 21.請求項20の方法により設計される階層形データ圧縮テーブルを含む画 像圧縮システム。 22.前記制約は予備的な段のテーブルに対してコードブックを設計するため には使われない請求項21に記載のコンピュータ方法。 23.最終段のテーブルのコードブックが歪みおよび他の制約を有する接続手 法を最小にするような階層形ベクトル量子化を有する画像圧縮システム。 24.付加的な制約に従わないで歪みを最小にする予備的な段のコードブック を有する請求項23に記載の画像圧縮システム。 25.画像を画像ベクトルに変換するためのベクトル化手段と、前記ベクトル を組込み形テーブルに変換するためのテーブル手段であって、該テーブル手段は 前記画像ベクトルを受信するためのアドレス入力手段を有し、前記アドレス入力 手段は前記ベクトル化手段に結合されるようなテーブル手段と、 を備える画像圧縮システム。 26.前記テーブル手段は多段を有し、該多段は、前記ベクトル を受信するための前記ベクトル化手段に結合される入力を有し、前記多段は、前 記組込み形コードを出力するための最終段を有し、前記第1の段の他に前記多段 のそれぞれが、前記多段の先行する1つからの出力を受信するための入力を有す る請求項24に記載の画像圧縮システム。 27.ディジタル画像を一連の画像ベクトルに変換するためのベクトル化手段 であって、前記画像ベクトルのそれぞれは、画素空間において定義された画像ベ クトルのセットから選択され、前記一連の前記画像ベクトルのそれぞれは、前記 ディジタル画像を集合的に構成する相互に占有されたブロックのセットのそれぞ れ1つを表わすようなベクトル化手段と、 前記セットの多数対1の前記画像ベクトルをインデックスのセットからのイン デックスに多数対1に写像させるためのテーブル手段であって、前記インデック スのそれぞれは、非画素領域においてベクトルを生成するためにデコード可能で あるようなテーブル手段と、を備える画像圧縮システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/623,299 US6215910B1 (en) | 1996-03-28 | 1996-03-28 | Table-based compression with embedded coding |
US08/623,299 | 1996-03-28 | ||
PCT/US1997/004879 WO1997036376A1 (en) | 1996-03-28 | 1997-03-26 | Table-based compression with embedded coding |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2000507754A true JP2000507754A (ja) | 2000-06-20 |
Family
ID=24497537
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9534591A Pending JP2000507754A (ja) | 1996-03-28 | 1997-03-26 | 組込み形コーディングを有するテーブルベースの圧縮 |
Country Status (5)
Country | Link |
---|---|
US (6) | US6215910B1 (ja) |
EP (1) | EP0890222A1 (ja) |
JP (1) | JP2000507754A (ja) |
AU (1) | AU2547297A (ja) |
WO (1) | WO1997036376A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002536748A (ja) * | 1999-02-05 | 2002-10-29 | サムスン エレクトロニクス カンパニー リミテッド | カラー映像処理方法及びその装置 |
US6778697B1 (en) | 1999-02-05 | 2004-08-17 | Samsung Electronics Co., Ltd. | Color image processing method and apparatus thereof |
JP2007109229A (ja) * | 2005-10-09 | 2007-04-26 | Omron Corp | 特定被写体検出装置及び方法 |
Families Citing this family (170)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6965644B2 (en) * | 1992-02-19 | 2005-11-15 | 8×8, Inc. | Programmable architecture and methods for motion estimation |
US6571016B1 (en) * | 1997-05-05 | 2003-05-27 | Microsoft Corporation | Intra compression of pixel blocks using predicted mean |
US6215910B1 (en) * | 1996-03-28 | 2001-04-10 | Microsoft Corporation | Table-based compression with embedded coding |
CN1135849C (zh) * | 1996-10-01 | 2004-01-21 | 西门子公司 | 一个数字化图像的向量量化和逆向量量化的方法和设备 |
US6130911A (en) * | 1997-11-21 | 2000-10-10 | Sharp Laboratories Of America, Inc. | Method and apparatus for compressing reference frames in an interframe video codec |
US6272180B1 (en) | 1997-11-21 | 2001-08-07 | Sharp Laboratories Of America, Inc. | Compression and decompression of reference frames in a video decoder |
US6332030B1 (en) * | 1998-01-15 | 2001-12-18 | The Regents Of The University Of California | Method for embedding and extracting digital data in images and video |
US6345126B1 (en) * | 1998-01-29 | 2002-02-05 | Xerox Corporation | Method for transmitting data using an embedded bit stream produced in a hierarchical table-lookup vector quantizer |
US6327392B1 (en) * | 1999-01-28 | 2001-12-04 | Sharp Laboratories Of America, Inc. | Method of visual progressive coding |
US20050120870A1 (en) * | 1998-05-15 | 2005-06-09 | Ludwig Lester F. | Envelope-controlled dynamic layering of audio signal processing and synthesis for music applications |
US6610917B2 (en) | 1998-05-15 | 2003-08-26 | Lester F. Ludwig | Activity indication, external source, and processing loop provisions for driven vibrating-element environments |
US7309829B1 (en) | 1998-05-15 | 2007-12-18 | Ludwig Lester F | Layered signal processing for individual and group output of multi-channel electronic musical instruments |
US6470052B1 (en) * | 1998-06-29 | 2002-10-22 | Xerox Corporation | HVQ compression combined with orthogonal rotation |
DE69934939T2 (de) | 1998-06-29 | 2007-10-18 | Xerox Corp. | Kompression von Grenzen zwischen Bildern |
US6240386B1 (en) * | 1998-08-24 | 2001-05-29 | Conexant Systems, Inc. | Speech codec employing noise classification for noise compensation |
US6731807B1 (en) * | 1998-09-11 | 2004-05-04 | Intel Corporation | Method of compressing and/or decompressing a data set using significance mapping |
US6415326B1 (en) | 1998-09-15 | 2002-07-02 | Microsoft Corporation | Timeline correlation between multiple timeline-altered media streams |
US6622171B2 (en) | 1998-09-15 | 2003-09-16 | Microsoft Corporation | Multimedia timeline modification in networked client/server systems |
US6643405B1 (en) * | 1998-09-30 | 2003-11-04 | Canon Kabushiki Kaisha | Image processing apparatus and method and computer-readable storage medium |
JP2000115558A (ja) * | 1998-10-08 | 2000-04-21 | Mitsubishi Electric Corp | 色特性記述装置および色管理装置および画像変換装置ならびに色補正方法 |
US6256421B1 (en) * | 1998-12-07 | 2001-07-03 | Xerox Corporation | Method and apparatus for simulating JPEG compression |
JP2000197054A (ja) * | 1998-12-24 | 2000-07-14 | Hudson Soft Co Ltd | 動画像符号方法及びそのプログラムを記録した記録媒体並びに装置 |
US6693962B1 (en) * | 1999-02-01 | 2004-02-17 | Thomson Licensing S.A. | Process to extract regions of homogeneous texture in a digital picture |
GB9903074D0 (en) * | 1999-02-12 | 1999-03-31 | Silver Fox Ltd | Computer system for producing series of sequential images for labelling |
US6842724B1 (en) * | 1999-04-08 | 2005-01-11 | Lucent Technologies Inc. | Method and apparatus for reducing start-up delay in data packet-based network streaming applications |
JP2000305822A (ja) * | 1999-04-26 | 2000-11-02 | Denso Corp | データベース管理装置,データベースレコード抽出装置,データベース管理方法及びデータベースレコード抽出方法 |
US7293280B1 (en) | 1999-07-08 | 2007-11-06 | Microsoft Corporation | Skimming continuous multimedia content |
US7313808B1 (en) | 1999-07-08 | 2007-12-25 | Microsoft Corporation | Browsing continuous multimedia content |
US7170941B2 (en) * | 1999-08-13 | 2007-01-30 | Patapsco Designs Inc. | Temporal compression |
BR0014954A (pt) * | 1999-10-22 | 2002-07-30 | Activesky Inc | Sistema de vìdeo baseado em objetos |
US6621935B1 (en) * | 1999-12-03 | 2003-09-16 | Microsoft Corporation | System and method for robust image representation over error-prone channels |
US7149359B1 (en) | 1999-12-16 | 2006-12-12 | Microsoft Corporation | Searching and recording media streams |
US6928655B1 (en) * | 1999-12-16 | 2005-08-09 | Microsoft Corporation | Live presentation searching |
WO2001056281A1 (fr) * | 2000-01-26 | 2001-08-02 | Sony Corporation | Procede et systeme informatique et support d'enregistrement de programmes |
US6868440B1 (en) * | 2000-02-04 | 2005-03-15 | Microsoft Corporation | Multi-level skimming of multimedia content using playlists |
US7237254B1 (en) | 2000-03-29 | 2007-06-26 | Microsoft Corporation | Seamless switching between different playback speeds of time-scale modified data streams |
US6985966B1 (en) | 2000-03-29 | 2006-01-10 | Microsoft Corporation | Resynchronizing globally unsynchronized multimedia streams |
US7302490B1 (en) * | 2000-05-03 | 2007-11-27 | Microsoft Corporation | Media file format to support switching between multiple timeline-altered media streams |
US7039241B1 (en) * | 2000-08-11 | 2006-05-02 | Ati Technologies, Inc. | Method and apparatus for compression and decompression of color data |
US6678422B1 (en) * | 2000-08-30 | 2004-01-13 | National Semiconductor Corporation | Method and apparatus for image data compression with low memory requirement |
US6683994B1 (en) * | 2000-11-28 | 2004-01-27 | Xerox Corporation | HVQ-based filtering method |
US7069545B2 (en) * | 2000-12-29 | 2006-06-27 | Intel Corporation | Quantization and compression for computation reuse |
FI110374B (fi) * | 2001-03-16 | 2002-12-31 | Coression Oy | Menetelmä tiedon pakkaamiseksi |
KR100359118B1 (ko) * | 2001-03-20 | 2002-11-04 | 주식회사 아름테크놀로지 | 균일 엔트로피 데이터에 대한 비손실 압축방법 |
JP4170767B2 (ja) * | 2001-04-19 | 2008-10-22 | 株式会社東芝 | 画像処理装置 |
US6691132B2 (en) * | 2001-05-16 | 2004-02-10 | Reengineering Llc | Semantic encoding and compression of database tables |
US20020191698A1 (en) * | 2001-06-15 | 2002-12-19 | Solidstreaming, Inc. | Video data CODEC system with low computational complexity |
US6807312B2 (en) * | 2001-07-13 | 2004-10-19 | Sharp Laboratories Of America, Inc. | Robust codebooks for vector quantization |
AU2002343740A1 (en) * | 2001-11-16 | 2003-06-10 | California Institute Of Technology | Data compression method and system |
WO2003053066A1 (en) | 2001-12-17 | 2003-06-26 | Microsoft Corporation | Skip macroblock coding |
CN101448162B (zh) | 2001-12-17 | 2013-01-02 | 微软公司 | 处理视频图像的方法 |
US7043514B1 (en) * | 2002-03-01 | 2006-05-09 | Microsoft Corporation | System and method adapted to facilitate dimensional transform |
FI113931B (fi) * | 2002-05-23 | 2004-06-30 | Oplayo Oy | Menetelmä ja järjestelmä HCVQ-vektorikirjaston muodostamiseksi |
CA2388358A1 (en) * | 2002-05-31 | 2003-11-30 | Voiceage Corporation | A method and device for multi-rate lattice vector quantization |
US7016547B1 (en) * | 2002-06-28 | 2006-03-21 | Microsoft Corporation | Adaptive entropy encoding/decoding for screen capture content |
US7433824B2 (en) * | 2002-09-04 | 2008-10-07 | Microsoft Corporation | Entropy coding by adapting coding between level and run-length/level modes |
ES2378462T3 (es) | 2002-09-04 | 2012-04-12 | Microsoft Corporation | Codificación entrópica por adaptación de codificación entre modalidades de nivel y de longitud/nivel de cadencia |
US7554980B1 (en) * | 2002-10-18 | 2009-06-30 | Alcatel Lucent | Packet classification using relevance scoring |
US7558441B2 (en) * | 2002-10-24 | 2009-07-07 | Canon Kabushiki Kaisha | Resolution conversion upon hierarchical coding and decoding |
US7106901B2 (en) * | 2003-01-15 | 2006-09-12 | Xerox Corporation | Method and apparatus for image classification |
US8705613B2 (en) * | 2003-06-26 | 2014-04-22 | Sony Corporation | Adaptive joint source channel coding |
US20050013589A1 (en) * | 2003-07-14 | 2005-01-20 | Microsoft Corporation | Adding recording functionality to a media player |
US7830963B2 (en) * | 2003-07-18 | 2010-11-09 | Microsoft Corporation | Decoding jointly coded transform type and subblock pattern information |
US10554985B2 (en) | 2003-07-18 | 2020-02-04 | Microsoft Technology Licensing, Llc | DC coefficient signaling at small quantization step sizes |
US7782954B2 (en) * | 2003-09-07 | 2010-08-24 | Microsoft Corporation | Scan patterns for progressive video content |
US7688894B2 (en) * | 2003-09-07 | 2010-03-30 | Microsoft Corporation | Scan patterns for interlaced video content |
US7724827B2 (en) * | 2003-09-07 | 2010-05-25 | Microsoft Corporation | Multi-layer run level encoding and decoding |
US8582640B2 (en) * | 2003-12-16 | 2013-11-12 | Sony Corporation | Adaptive joint source channel coding |
US20050169544A1 (en) * | 2004-02-02 | 2005-08-04 | Clark Adam L. | System and method for encoding and decoding video |
US7525552B2 (en) | 2004-04-21 | 2009-04-28 | Slipstream Data Inc. | Method, system and software product for color image encoding |
KR100868716B1 (ko) | 2004-04-21 | 2008-11-13 | 슬립스트림 데이터 인크. | 컬러 이미지 인코딩을 위한 방법, 시스템 및 소프트웨어제품 |
US7697759B2 (en) * | 2004-05-11 | 2010-04-13 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Split-remerge method for eliminating processing window artifacts in recursive hierarchical segmentation |
EP1751713A1 (en) * | 2004-05-18 | 2007-02-14 | Koninklijke Philips Electronics N.V. | Image processing system for automatic segmentation of a 3-d tree-like tubular surface of an object, using 3-d deformable mesh models |
KR100654436B1 (ko) * | 2004-07-07 | 2006-12-06 | 삼성전자주식회사 | 비디오 코딩 방법과 디코딩 방법, 및 비디오 인코더와디코더 |
KR100657919B1 (ko) * | 2004-12-13 | 2006-12-14 | 삼성전자주식회사 | 화상 데이터의 공간상 예측 장치 및 방법과 그를 이용한부호화 장치 및 방법, 화상 데이터의 공간상 예측 보상장치 및 방법과 그를 이용한 복호화 장치 및 방법 |
US7953155B2 (en) * | 2004-12-16 | 2011-05-31 | Tut Systems, Inc. | Methods of selecting an encoding mode |
US20060262860A1 (en) * | 2005-02-23 | 2006-11-23 | Chou Jim C | Macroblock adaptive frame/field coding architecture for scalable coding |
US20060204086A1 (en) * | 2005-03-10 | 2006-09-14 | Ullas Gargi | Compression of palettized images |
US7434146B1 (en) | 2005-05-06 | 2008-10-07 | Helwett-Packard Development Company, L.P. | Denoising and error correction for finite input, general output channel |
KR100716999B1 (ko) * | 2005-06-03 | 2007-05-10 | 삼성전자주식회사 | 영상의 대칭성을 이용한 인트라 예측 방법, 이를 이용한영상의 복호화, 부호화 방법 및 장치 |
WO2006128252A1 (en) * | 2005-06-03 | 2006-12-07 | The Commonwealth Of Australia | Messaging method |
US7693709B2 (en) | 2005-07-15 | 2010-04-06 | Microsoft Corporation | Reordering coefficients for waveform coding or decoding |
US7684981B2 (en) * | 2005-07-15 | 2010-03-23 | Microsoft Corporation | Prediction of spectral coefficients in waveform coding and decoding |
US7599840B2 (en) * | 2005-07-15 | 2009-10-06 | Microsoft Corporation | Selectively using multiple entropy models in adaptive coding and decoding |
US7565018B2 (en) * | 2005-08-12 | 2009-07-21 | Microsoft Corporation | Adaptive coding and decoding of wide-range coefficients |
US8599925B2 (en) * | 2005-08-12 | 2013-12-03 | Microsoft Corporation | Efficient coding and decoding of transform blocks |
US7933337B2 (en) * | 2005-08-12 | 2011-04-26 | Microsoft Corporation | Prediction of transform coefficients for image compression |
US7464316B2 (en) * | 2005-08-26 | 2008-12-09 | Agere Systems Inc. | Modified branch metric calculator to reduce interleaver memory and improve performance in a fixed-point turbo decoder |
US7587314B2 (en) * | 2005-08-29 | 2009-09-08 | Nokia Corporation | Single-codebook vector quantization for multiple-rate applications |
US8325748B2 (en) * | 2005-09-16 | 2012-12-04 | Oracle International Corporation | Fast vector quantization with topology learning |
FR2893432B1 (fr) * | 2005-11-16 | 2008-01-04 | Atmel Corp | Quantificateur de vecteur fonde sur une dichotomie spatiale a n dimensions |
US7778472B2 (en) * | 2006-03-27 | 2010-08-17 | Qualcomm Incorporated | Methods and systems for significance coefficient coding in video compression |
JP4679425B2 (ja) | 2006-04-20 | 2011-04-27 | 株式会社東芝 | 画像処理装置、画像処理方法およびプログラム |
US20070286277A1 (en) * | 2006-06-13 | 2007-12-13 | Chen Xuemin Sherman | Method and system for video compression using an iterative encoding algorithm |
US8176016B1 (en) * | 2006-11-17 | 2012-05-08 | At&T Intellectual Property Ii, L.P. | Method and apparatus for rapid identification of column heterogeneity |
US8184710B2 (en) * | 2007-02-21 | 2012-05-22 | Microsoft Corporation | Adaptive truncation of transform coefficient data in a transform-based digital media codec |
KR101403338B1 (ko) * | 2007-03-23 | 2014-06-09 | 삼성전자주식회사 | 영상의 부호화, 복호화 방법 및 장치 |
US7957600B2 (en) * | 2007-05-08 | 2011-06-07 | Arris Group, Inc. | Methods and systems for rate-distortion optimized quantization of transform blocks in block transform video coding |
US7774205B2 (en) * | 2007-06-15 | 2010-08-10 | Microsoft Corporation | Coding of sparse digital media spectral data |
US8219551B2 (en) | 2007-10-31 | 2012-07-10 | General Instrument Corporation | Decoding a hierarchical multi-layer data package |
CA2706251C (en) | 2007-11-02 | 2015-06-30 | Ecole De Technologie Superieure | System and method for predicting the file size of images subject to transformation by scaling and a change of quality-controlling parameters |
US8295624B2 (en) * | 2007-12-03 | 2012-10-23 | Ecole De Technologie Superieure | Method and system for generating a quality prediction table for quality-aware transcoding of digital images |
US9019237B2 (en) * | 2008-04-06 | 2015-04-28 | Lester F. Ludwig | Multitouch parameter and gesture user interface employing an LED-array tactile sensor that can also operate as a display |
US8179974B2 (en) | 2008-05-02 | 2012-05-15 | Microsoft Corporation | Multi-level representation of reordered transform coefficients |
US8169414B2 (en) | 2008-07-12 | 2012-05-01 | Lim Seung E | Control of electronic games via finger angle using a high dimensional touchpad (HDTP) touch user interface |
US8345014B2 (en) | 2008-07-12 | 2013-01-01 | Lester F. Ludwig | Control of the operating system on a computing device via finger angle using a high dimensional touchpad (HDTP) touch user interface |
US8604364B2 (en) * | 2008-08-15 | 2013-12-10 | Lester F. Ludwig | Sensors, algorithms and applications for a high dimensional touchpad |
US8406307B2 (en) | 2008-08-22 | 2013-03-26 | Microsoft Corporation | Entropy coding/decoding of hierarchically organized data |
US8175265B2 (en) * | 2008-09-02 | 2012-05-08 | Apple Inc. | Systems and methods for implementing block cipher algorithms on attacker-controlled systems |
US8503527B2 (en) | 2008-10-03 | 2013-08-06 | Qualcomm Incorporated | Video coding with large macroblocks |
TWI384767B (zh) * | 2008-11-21 | 2013-02-01 | Univ Nat Chiao Tung | 用以分群一編碼簿以及自該編碼簿選取一預編碼字之方法、裝置及其電腦程式產品 |
US8300961B2 (en) * | 2008-12-12 | 2012-10-30 | Ecole De Technologie Superieure | Method and system for low complexity transcoding of images with near optimal quality |
US8170346B2 (en) | 2009-03-14 | 2012-05-01 | Ludwig Lester F | High-performance closed-form single-scan calculation of oblong-shape rotation angles from binary images of arbitrary size using running sums |
US8351723B2 (en) * | 2009-03-25 | 2013-01-08 | Accusoft-Pegasus | Methods and apparatus for generating and using visual error weights |
CN101577551A (zh) * | 2009-05-27 | 2009-11-11 | 华为技术有限公司 | 一种生成格型矢量量化码书的方法及装置 |
KR101510108B1 (ko) | 2009-08-17 | 2015-04-10 | 삼성전자주식회사 | 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치 |
AU2015202119B2 (en) * | 2009-08-17 | 2015-06-04 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding video, and method and apparatus for decoding video |
US20110066933A1 (en) | 2009-09-02 | 2011-03-17 | Ludwig Lester F | Value-driven visualization primitives for spreadsheets, tabular data, and advanced spreadsheet visualization |
US20110055722A1 (en) * | 2009-09-02 | 2011-03-03 | Ludwig Lester F | Data Visualization Environment with DataFlow Processing, Web, Collaboration, Advanced User Interfaces, and Spreadsheet Visualization |
CN102665569B (zh) | 2009-10-12 | 2015-05-13 | 硅谷医疗器械有限公司 | 用于共同配准成像的血管内超声系统 |
US20110202934A1 (en) * | 2010-02-12 | 2011-08-18 | Ludwig Lester F | Window manger input focus control for high dimensional touchpad (htpd), advanced mice, and other multidimensional user interfaces |
US10146427B2 (en) | 2010-03-01 | 2018-12-04 | Nri R&D Patent Licensing, Llc | Curve-fitting approach to high definition touch pad (HDTP) parameter extraction |
US9632344B2 (en) | 2010-07-09 | 2017-04-25 | Lester F. Ludwig | Use of LED or OLED array to implement integrated combinations of touch screen tactile, touch gesture sensor, color image display, hand-image gesture sensor, document scanner, secure optical data exchange, and fingerprint processing capabilities |
US9626023B2 (en) | 2010-07-09 | 2017-04-18 | Lester F. Ludwig | LED/OLED array approach to integrated display, lensless-camera, and touch-screen user interface devices and associated processors |
US8754862B2 (en) | 2010-07-11 | 2014-06-17 | Lester F. Ludwig | Sequential classification recognition of gesture primitives and window-based parameter smoothing for high dimensional touchpad (HDTP) user interfaces |
US9950256B2 (en) | 2010-08-05 | 2018-04-24 | Nri R&D Patent Licensing, Llc | High-dimensional touchpad game controller with multiple usage and networking modalities |
US8712930B1 (en) | 2010-08-09 | 2014-04-29 | Google Inc. | Encoding digital content based on models for predicting similarity between exemplars |
US20120204577A1 (en) | 2011-02-16 | 2012-08-16 | Ludwig Lester F | Flexible modular hierarchical adaptively controlled electronic-system cooling and energy harvesting for IC chip packaging, printed circuit boards, subsystems, cages, racks, IT rooms, and data centers using quantum and classical thermoelectric materials |
US8797288B2 (en) | 2011-03-07 | 2014-08-05 | Lester F. Ludwig | Human user interfaces utilizing interruption of the execution of a first recognized gesture with the execution of a recognized second gesture |
CN102740325B (zh) * | 2011-04-02 | 2015-01-21 | 华为技术有限公司 | 获得信道信息的方法、装置及波束成形优化方法、装置 |
US8515193B1 (en) * | 2011-04-08 | 2013-08-20 | Google Inc. | Image compression using exemplar dictionary based on hierarchical clustering |
US8542934B2 (en) | 2011-05-18 | 2013-09-24 | Microsoft Corporation | Transform space difference compression |
US9052772B2 (en) | 2011-08-10 | 2015-06-09 | Lester F. Ludwig | Heuristics for 3D and 6D touch gesture touch parameter calculations for high-dimensional touch parameter (HDTP) user interfaces |
US9823781B2 (en) | 2011-12-06 | 2017-11-21 | Nri R&D Patent Licensing, Llc | Heterogeneous tactile sensing via multiple sensor types |
US10430066B2 (en) | 2011-12-06 | 2019-10-01 | Nri R&D Patent Licensing, Llc | Gesteme (gesture primitive) recognition for advanced touch user interfaces |
CN102496368B (zh) * | 2011-12-20 | 2014-03-12 | 重庆金美通信有限责任公司 | 一种改进的矢量量化方法 |
US9661331B2 (en) | 2013-03-18 | 2017-05-23 | Vantrix Corporation | Method and apparatus for signal encoding realizing optimal fidelity |
US10609405B2 (en) | 2013-03-18 | 2020-03-31 | Ecole De Technologie Superieure | Optimal signal encoding based on experimental data |
US9338450B2 (en) | 2013-03-18 | 2016-05-10 | Ecole De Technologie Superieure | Method and apparatus for signal encoding producing encoded signals of high fidelity at minimal sizes |
US9141885B2 (en) * | 2013-07-29 | 2015-09-22 | Adobe Systems Incorporated | Visual pattern recognition in an image |
US9704240B2 (en) * | 2013-10-07 | 2017-07-11 | Acist Medical Systems, Inc. | Signal processing for intravascular imaging |
DE102013021599B3 (de) * | 2013-12-19 | 2014-12-31 | Wolfgang Klippel | Anordnung und Verfahren zur Verminderung der nichtlinearen Verzerrung eines AD-Wandlers |
US9584701B2 (en) | 2014-01-06 | 2017-02-28 | Panamorph, Inc. | Image processing system and method |
US11350015B2 (en) | 2014-01-06 | 2022-05-31 | Panamorph, Inc. | Image processing system and method |
US10653393B2 (en) | 2015-10-08 | 2020-05-19 | Acist Medical Systems, Inc. | Intravascular ultrasound imaging with frequency selective imaging methods and systems |
US10909661B2 (en) | 2015-10-08 | 2021-02-02 | Acist Medical Systems, Inc. | Systems and methods to reduce near-field artifacts |
US11369337B2 (en) | 2015-12-11 | 2022-06-28 | Acist Medical Systems, Inc. | Detection of disturbed blood flow |
WO2017117389A1 (en) | 2015-12-31 | 2017-07-06 | Acist Medical Systems, Inc. | Semi-automated image segmentation system and method |
CN105611303B (zh) * | 2016-03-07 | 2019-04-09 | 京东方科技集团股份有限公司 | 图像压缩系统、解压缩系统、训练方法和装置、显示装置 |
EP3459048B1 (en) | 2016-05-16 | 2023-05-03 | Acist Medical Systems, Inc. | Motion-based image segmentation systems and methods |
US10531099B2 (en) * | 2016-09-30 | 2020-01-07 | The Mitre Corporation | Systems and methods for distributed quantization of multimodal images |
EP3386198A1 (en) * | 2017-04-07 | 2018-10-10 | Thomson Licensing | Method and device for predictive picture encoding and decoding |
US11423312B2 (en) | 2018-05-14 | 2022-08-23 | Samsung Electronics Co., Ltd | Method and apparatus for universal pruning and compression of deep convolutional neural networks under joint sparsity constraints |
KR20210134391A (ko) * | 2019-03-12 | 2021-11-09 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 포인트 클라우드 코딩을 위한 패치 데이터 유닛 코딩 및 디코딩 |
US11024034B2 (en) | 2019-07-02 | 2021-06-01 | Acist Medical Systems, Inc. | Image segmentation confidence determination |
US10904049B1 (en) | 2019-07-11 | 2021-01-26 | Stmicroelectronics (Research & Development) Limited | Time domain discrete transform computation |
US11372860B2 (en) | 2019-12-26 | 2022-06-28 | Snowflake Inc. | Processing techniques for queries where predicate values are unknown until runtime |
US11016975B1 (en) | 2019-12-26 | 2021-05-25 | Snowflake Inc. | Scan set pruning for pattern matching queries |
US11567939B2 (en) | 2019-12-26 | 2023-01-31 | Snowflake Inc. | Lazy reassembling of semi-structured data |
US11681708B2 (en) | 2019-12-26 | 2023-06-20 | Snowflake Inc. | Indexed regular expression search with N-grams |
US12050605B2 (en) | 2019-12-26 | 2024-07-30 | Snowflake Inc. | Indexed geospatial predicate search |
US11308090B2 (en) | 2019-12-26 | 2022-04-19 | Snowflake Inc. | Pruning index to support semi-structured data types |
US10997179B1 (en) | 2019-12-26 | 2021-05-04 | Snowflake Inc. | Pruning index for optimization of pattern matching queries |
US10769150B1 (en) | 2019-12-26 | 2020-09-08 | Snowflake Inc. | Pruning indexes to enhance database query processing |
CN111726629B (zh) * | 2020-06-09 | 2022-02-11 | 绍兴图信科技有限公司 | 基于多元线性回归的smvq压缩数据隐藏方法 |
TWI780696B (zh) * | 2021-05-10 | 2022-10-11 | 創鑫智慧股份有限公司 | 查找表壓縮方法與查找表讀取方法及其計算設備、主機與裝置 |
CN115391298A (zh) * | 2021-05-25 | 2022-11-25 | 戴尔产品有限公司 | 基于内容的动态混合数据压缩 |
US12026270B2 (en) * | 2022-03-11 | 2024-07-02 | Intuit Inc. | Seed generation for electronic data perturbation |
US11880369B1 (en) | 2022-11-21 | 2024-01-23 | Snowflake Inc. | Pruning data based on state of top K operator |
CN115736980B (zh) * | 2022-11-28 | 2024-08-13 | 华东师范大学 | 一种应急用的超声成像系统及其构建方法 |
Family Cites Families (57)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3704777C1 (de) | 1987-02-16 | 1988-04-07 | Ant Nachrichtentech | Verfahren zum UEbertragen und zum Wiedergeben von Fernsehbildsequenzen |
EP0387051B1 (en) | 1989-03-10 | 1997-08-06 | Canon Kabushiki Kaisha | Method and apparatus for coding image information |
US5060285A (en) | 1989-05-19 | 1991-10-22 | Gte Laboratories Incorporated | Hierarchical variable block size address-vector quantization using inter-block correlation |
US4987480A (en) | 1989-07-11 | 1991-01-22 | Massachusetts Institute Of Technology | Multiscale coding of images |
FR2651399B1 (fr) | 1989-08-29 | 1996-05-15 | Thomson Consumer Electronics | Procede et dispositif d'estimation et de codage hierarchise du mouvement de sequences d'images. |
US5144688A (en) | 1990-03-23 | 1992-09-01 | Board Of Regents, The University Of Texas System | Method and apparatus for visual pattern image coding |
US5155594A (en) | 1990-05-11 | 1992-10-13 | Picturetel Corporation | Hierarchical encoding method and apparatus employing background references for efficiently communicating image sequences |
US5068724A (en) | 1990-06-15 | 1991-11-26 | General Instrument Corporation | Adaptive motion compensation for digital television |
US5260783A (en) * | 1991-02-21 | 1993-11-09 | Gte Laboratories Incorporated | Layered DCT video coder for packet switched ATM networks |
SE469866B (sv) | 1991-04-12 | 1993-09-27 | Dv Sweden Ab | Metod för estimering av rörelseinnehåll i videosignaler |
US5144425A (en) | 1991-08-26 | 1992-09-01 | General Electric Company | Apparatus for hierarchically dividing video signals |
EP0533195A2 (en) | 1991-09-20 | 1993-03-24 | Sony Corporation | Picture signal encoding and/or decoding apparatus |
US5414469A (en) | 1991-10-31 | 1995-05-09 | International Business Machines Corporation | Motion video compression system with multiresolution features |
US5227878A (en) | 1991-11-15 | 1993-07-13 | At&T Bell Laboratories | Adaptive coding and decoding of frames and fields of video |
US5371544A (en) | 1992-02-07 | 1994-12-06 | At&T Corp. | Geometric vector quantization |
US6215425B1 (en) | 1992-02-19 | 2001-04-10 | Netergy Networks, Inc. | Deblocking filter for encoder/decoder arrangement and method with divergence reduction |
US5325126A (en) | 1992-04-01 | 1994-06-28 | Intel Corporation | Method and apparatus for real time compression and decompression of a digital motion video signal |
KR0166716B1 (ko) | 1992-06-18 | 1999-03-20 | 강진구 | 블럭 dpcm을 이용한 부호화/복호화방법 및 장치 |
US5596659A (en) | 1992-09-01 | 1997-01-21 | Apple Computer, Inc. | Preprocessing and postprocessing for vector quantization |
US5467134A (en) | 1992-12-22 | 1995-11-14 | Microsoft Corporation | Method and system for compressing video data |
US5544286A (en) | 1993-01-29 | 1996-08-06 | Microsoft Corporation | Digital video data compression technique |
AU6099594A (en) | 1993-02-03 | 1994-08-29 | Qualcomm Incorporated | Interframe video encoding and decoding system |
US5592228A (en) | 1993-03-04 | 1997-01-07 | Kabushiki Kaisha Toshiba | Video encoder using global motion estimation and polygonal patch motion estimation |
KR960015395B1 (ko) | 1993-04-09 | 1996-11-11 | 대우전자 주식회사 | 움직임벡터 검출장치 |
US5442400A (en) | 1993-04-29 | 1995-08-15 | Rca Thomson Licensing Corporation | Error concealment apparatus for MPEG-like video data |
US5585852A (en) | 1993-06-16 | 1996-12-17 | Intel Corporation | Processing video signals for scalable video playback using independently encoded component-plane bands |
KR0128860B1 (ko) | 1993-07-16 | 1998-04-10 | 배순훈 | 저비트율의 영상전화 시스템의 부호화장치 |
JP3590996B2 (ja) | 1993-09-30 | 2004-11-17 | ソニー株式会社 | ディジタル画像信号の階層符号化および復号装置 |
US5473379A (en) | 1993-11-04 | 1995-12-05 | At&T Corp. | Method and apparatus for improving motion compensation in digital video coding |
EP0665688A3 (en) | 1993-12-29 | 1995-11-02 | Toshiba Kk | Method for arranging video data and device for encoding / decoding video data. |
US5521988A (en) | 1994-04-05 | 1996-05-28 | Gte Laboratories Incorporated | Vector transform coder with multi-layered codebooks and dynamic bit allocation |
JP3013698B2 (ja) * | 1994-04-20 | 2000-02-28 | 松下電器産業株式会社 | ベクトル量子化符号化装置と復号化装置 |
US5537155A (en) | 1994-04-29 | 1996-07-16 | Motorola, Inc. | Method for estimating motion in a video sequence |
US5555244A (en) | 1994-05-19 | 1996-09-10 | Integrated Network Corporation | Scalable multimedia network |
US5655140A (en) | 1994-07-22 | 1997-08-05 | Network Peripherals | Apparatus for translating frames of data transferred between heterogeneous local area networks |
US5604867A (en) | 1994-07-22 | 1997-02-18 | Network Peripherals | System for transmitting data between bus and network having device comprising first counter for providing transmitting rate and second counter for limiting frames exceeding rate |
US5602589A (en) | 1994-08-19 | 1997-02-11 | Xerox Corporation | Video image compression using weighted wavelet hierarchical vector quantization |
US5802213A (en) | 1994-10-18 | 1998-09-01 | Intel Corporation | Encoding video signals using local quantization levels |
US5623312A (en) * | 1994-12-22 | 1997-04-22 | Lucent Technologies Inc. | Compressed-domain bit rate reduction system |
US5623313A (en) | 1995-09-22 | 1997-04-22 | Tektronix, Inc. | Fractional pixel motion estimation of video signals |
US5970173A (en) | 1995-10-05 | 1999-10-19 | Microsoft Corporation | Image compression and affine transformation for image motion compensation |
JP2798035B2 (ja) | 1996-01-17 | 1998-09-17 | 日本電気株式会社 | 適応動きベクトル補間による動き補償フレーム間予測方法 |
US5799113A (en) | 1996-01-19 | 1998-08-25 | Microsoft Corporation | Method for expanding contracted video images |
US5778098A (en) | 1996-03-22 | 1998-07-07 | Microsoft Corporation | Sprite coding |
US5764814A (en) | 1996-03-22 | 1998-06-09 | Microsoft Corporation | Representation and encoding of general arbitrary shapes |
US6215910B1 (en) | 1996-03-28 | 2001-04-10 | Microsoft Corporation | Table-based compression with embedded coding |
US6571016B1 (en) | 1997-05-05 | 2003-05-27 | Microsoft Corporation | Intra compression of pixel blocks using predicted mean |
CN1183769C (zh) | 1996-05-28 | 2005-01-05 | 松下电器产业株式会社 | 图像预测编码/解码装置和方法以及记录媒体 |
US5952943A (en) | 1996-10-11 | 1999-09-14 | Intel Corporation | Encoding image data for decode rate control |
US6281942B1 (en) | 1997-08-11 | 2001-08-28 | Microsoft Corporation | Spatial and temporal filtering mechanism for digital motion video signals |
US6339656B1 (en) | 1997-12-25 | 2002-01-15 | Matsushita Electric Industrial Co., Ltd. | Moving picture encoding decoding processing apparatus |
US5946043A (en) | 1997-12-31 | 1999-08-31 | Microsoft Corporation | Video coding using adaptive coding of block parameters for coded/uncoded blocks |
US6563953B2 (en) | 1998-11-30 | 2003-05-13 | Microsoft Corporation | Predictive image compression using a single variable length code for both the luminance and chrominance blocks for each macroblock |
US6236764B1 (en) | 1998-11-30 | 2001-05-22 | Equator Technologies, Inc. | Image processing circuit and method for reducing a difference between pixel values across an image boundary |
US6300888B1 (en) | 1998-12-14 | 2001-10-09 | Microsoft Corporation | Entrophy code mode switching for frequency-domain audio coding |
US6654419B1 (en) | 2000-04-28 | 2003-11-25 | Sun Microsystems, Inc. | Block-based, adaptive, lossless video coder |
KR20050061762A (ko) | 2003-12-18 | 2005-06-23 | 학교법인 대양학원 | 부호화 모드 결정방법, 움직임 추정방법 및 부호화 장치 |
-
1996
- 1996-03-28 US US08/623,299 patent/US6215910B1/en not_active Expired - Lifetime
-
1997
- 1997-03-26 AU AU25472/97A patent/AU2547297A/en not_active Abandoned
- 1997-03-26 WO PCT/US1997/004879 patent/WO1997036376A1/en not_active Application Discontinuation
- 1997-03-26 JP JP9534591A patent/JP2000507754A/ja active Pending
- 1997-03-26 EP EP97917006A patent/EP0890222A1/en not_active Withdrawn
- 1997-06-30 US US08/884,791 patent/US6360019B1/en not_active Expired - Lifetime
- 1997-06-30 US US08/885,159 patent/US6154572A/en not_active Expired - Lifetime
- 1997-06-30 US US08/884,792 patent/US6205256B1/en not_active Expired - Lifetime
- 1997-06-30 US US08/884,790 patent/US6349152B1/en not_active Expired - Lifetime
-
2003
- 2003-03-31 US US10/403,780 patent/US7162091B2/en not_active Expired - Lifetime
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002536748A (ja) * | 1999-02-05 | 2002-10-29 | サムスン エレクトロニクス カンパニー リミテッド | カラー映像処理方法及びその装置 |
US6778697B1 (en) | 1999-02-05 | 2004-08-17 | Samsung Electronics Co., Ltd. | Color image processing method and apparatus thereof |
JP2007109229A (ja) * | 2005-10-09 | 2007-04-26 | Omron Corp | 特定被写体検出装置及び方法 |
Also Published As
Publication number | Publication date |
---|---|
US6360019B1 (en) | 2002-03-19 |
EP0890222A1 (en) | 1999-01-13 |
WO1997036376A1 (en) | 1997-10-02 |
US6215910B1 (en) | 2001-04-10 |
US6154572A (en) | 2000-11-28 |
US7162091B2 (en) | 2007-01-09 |
US20030185452A1 (en) | 2003-10-02 |
US6205256B1 (en) | 2001-03-20 |
US6349152B1 (en) | 2002-02-19 |
AU2547297A (en) | 1997-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2000507754A (ja) | 組込み形コーディングを有するテーブルベースの圧縮 | |
US20010017941A1 (en) | Method and apparatus for table-based compression with embedded coding | |
KR100868716B1 (ko) | 컬러 이미지 인코딩을 위한 방법, 시스템 및 소프트웨어제품 | |
EP1873720B1 (en) | Method, system and software product for color image encoding | |
JP3681386B2 (ja) | 改良されたベクトルの量子化のための前処理及び後処理 | |
EP0725363B1 (en) | Image compression apparatus and method | |
US6614939B1 (en) | Image compression apparatus and decoding apparatus suited to lossless image compression | |
JP5414121B2 (ja) | 3次元メッシュネットワークの圧縮およびコーディング | |
JPH02183684A (ja) | 2次元情報の符号化システム | |
US5764808A (en) | Method and device for compact representation of a discrete region contour | |
Markas et al. | Quad tree structures for image compression applications | |
de Garrido et al. | A clustering algorithm for entropy-constrained vector quantizer design with applications in coding image pyramids | |
T Hashim et al. | Color image compression using DPCM with DCT, DWT and quadtree coding scheme | |
JP2001045484A (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 | |
Bayazit et al. | Variable-length constrained-storage tree-structured vector quantization | |
Wang et al. | Hierarchy-oriented searching algorithms using alternative duplicate codewords for vector quantization mechanism | |
Markas et al. | Image compression methods with distortion controlled capabilities | |
Chan et al. | Variable block-size interpolative vector quantization of images | |
JP2693557B2 (ja) | 符号化装置 | |
KR100216600B1 (ko) | 영상 신호 벡터 양자화기를 위한 다중 부호어 전송 방법 | |
Ahmed | New Method to Reduce the Size of Codebook in Vector Quantization of Images | |
Basu et al. | Compression Techniques on Image Content | |
Verkatraman et al. | Image coding based on classified lapped orthogonal transform-vector quantization | |
Deng | An interpolative subband coding algorithm for lossless image compression | |
Torres et al. | Improvements on stochastic vector quantization of images |