JPH08279757A - 階層式ベクトル量子化装置 - Google Patents
階層式ベクトル量子化装置Info
- Publication number
- JPH08279757A JPH08279757A JP7081571A JP8157195A JPH08279757A JP H08279757 A JPH08279757 A JP H08279757A JP 7081571 A JP7081571 A JP 7081571A JP 8157195 A JP8157195 A JP 8157195A JP H08279757 A JPH08279757 A JP H08279757A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- output
- block size
- codebook
- index
- 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
Landscapes
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
(57)【要約】
【目的】 ベクトル量子化装置に関し、1つのコードブ
ック中の出力ベクトルから入力ベクトルのブロックサイ
ズの変化に応じた次元を有する最適な出力ベクトルを探
索可能とすることを目的とする。 【構成】 入力ベクトルのブロックサイズがKのとき
は、インデックスi毎に、 *yi 1 〜 *yi 4 までを結
合した出力ベクトルがベクトル量子化のコードブックと
して使用される。入力ベクトルのブロックサイズがnの
ときは、インデックスi毎に、部分的な出力ベクトル *
yi 1 〜 *yi 4 のそれぞれが独立してベクトル量子化
のコードブックとして使用される。
ック中の出力ベクトルから入力ベクトルのブロックサイ
ズの変化に応じた次元を有する最適な出力ベクトルを探
索可能とすることを目的とする。 【構成】 入力ベクトルのブロックサイズがKのとき
は、インデックスi毎に、 *yi 1 〜 *yi 4 までを結
合した出力ベクトルがベクトル量子化のコードブックと
して使用される。入力ベクトルのブロックサイズがnの
ときは、インデックスi毎に、部分的な出力ベクトル *
yi 1 〜 *yi 4 のそれぞれが独立してベクトル量子化
のコードブックとして使用される。
Description
【0001】
【産業上の利用分野】本発明は、入力信号系列を複数サ
ンプルまとめてブロック化しこれを多次元空間で量子化
する、画像伝送装置等に用いられるベクトル量子化装置
に関する。
ンプルまとめてブロック化しこれを多次元空間で量子化
する、画像伝送装置等に用いられるベクトル量子化装置
に関する。
【0002】
【従来の技術及び発明が解決しようとする課題】ベクト
ル量子化技術では、符号化されるべき複数次元分のデー
タ(例えばそれぞれm×m画素の各画像ブロックを示す
画素データ列)を要素とするベクトルの代表的なもの
が、コードブックとして、符号化側及び復号側の双方に
共通に保持される。そして、符号化側では、入力ベクト
ルに最も近い代表ベクトルがコードブック中から探索さ
れ、探索された代表ベクトルを特定するインデックスが
その入力ベクトルに対する量子化データとされ、その量
子化データが符号化される。一方、復号側では、符号化
データから上記インデックスが復号された後、そのイン
デックスに対応する代表ベクトルがコードブックから探
索され、その代表ベクトルが出力ベクトルとして出力さ
れる。
ル量子化技術では、符号化されるべき複数次元分のデー
タ(例えばそれぞれm×m画素の各画像ブロックを示す
画素データ列)を要素とするベクトルの代表的なもの
が、コードブックとして、符号化側及び復号側の双方に
共通に保持される。そして、符号化側では、入力ベクト
ルに最も近い代表ベクトルがコードブック中から探索さ
れ、探索された代表ベクトルを特定するインデックスが
その入力ベクトルに対する量子化データとされ、その量
子化データが符号化される。一方、復号側では、符号化
データから上記インデックスが復号された後、そのイン
デックスに対応する代表ベクトルがコードブックから探
索され、その代表ベクトルが出力ベクトルとして出力さ
れる。
【0003】このように、ベクトル量子化技術において
は、入力ベクトルがそのベクトルに対応する多次元空間
で量子化されるため、非常に高いデータ圧縮率を得るこ
とができる。
は、入力ベクトルがそのベクトルに対応する多次元空間
で量子化されるため、非常に高いデータ圧縮率を得るこ
とができる。
【0004】ここで、従来の基本的なベクトル量子化装
置では、ベクトルの次元数が固定されている。このた
め、例えば画像信号がベクトル量子化される場合に、ベ
クトル量子化される画像ブロックの大きさが固定されて
しまう。しかし、画像には、狭い領域であっても多くの
濃淡を有するものが存在する一方、広い領域であっても
ほとんど濃淡のないのっぺりとしたものも存在する。従
って、画像ブロックのサイズが固定化されたベクトル量
子化においては、様々な種類の画像を最適に量子化する
ことができない。即ち、前者の画像の場合には、ベクト
ル量子化されるべき画像ブロックのサイズを小さくすべ
きであり、後者の画像の場合には、画像ブロックのサイ
ズを大きくすべきである。このように、ベクトルの次元
数が固定されたベクトル量子化装置においては、入力ベ
クトルを必ずしも最適に量子化することができないとい
う問題点を有している。
置では、ベクトルの次元数が固定されている。このた
め、例えば画像信号がベクトル量子化される場合に、ベ
クトル量子化される画像ブロックの大きさが固定されて
しまう。しかし、画像には、狭い領域であっても多くの
濃淡を有するものが存在する一方、広い領域であっても
ほとんど濃淡のないのっぺりとしたものも存在する。従
って、画像ブロックのサイズが固定化されたベクトル量
子化においては、様々な種類の画像を最適に量子化する
ことができない。即ち、前者の画像の場合には、ベクト
ル量子化されるべき画像ブロックのサイズを小さくすべ
きであり、後者の画像の場合には、画像ブロックのサイ
ズを大きくすべきである。このように、ベクトルの次元
数が固定されたベクトル量子化装置においては、入力ベ
クトルを必ずしも最適に量子化することができないとい
う問題点を有している。
【0005】このような問題点を解決するために、ベク
トルの次元数を可変できるようにしたベクトル量子化装
置が知られている。このようなものにおいては、適当な
評価関数に従って入力ベクトルの次元が可変的に決定さ
れ、各次元の入力ベクトルに対してベクトル量子化が実
行される。この場合に、各次元の入力ベクトルに対応す
るコードブックをどのように構成するかが重要な問題と
なる。
トルの次元数を可変できるようにしたベクトル量子化装
置が知られている。このようなものにおいては、適当な
評価関数に従って入力ベクトルの次元が可変的に決定さ
れ、各次元の入力ベクトルに対してベクトル量子化が実
行される。この場合に、各次元の入力ベクトルに対応す
るコードブックをどのように構成するかが重要な問題と
なる。
【0006】次元数が可変のベクトル量子化装置におけ
るコードブックの構成方式の第1の従来技術として、可
変し得る次元のそれぞれに応じてコードブックを構成す
るようにしたものがある。しかし、この従来技術では、
コードブックを記憶するための記憶装置の容量が増大し
てしまうという問題点を有している。
るコードブックの構成方式の第1の従来技術として、可
変し得る次元のそれぞれに応じてコードブックを構成す
るようにしたものがある。しかし、この従来技術では、
コードブックを記憶するための記憶装置の容量が増大し
てしまうという問題点を有している。
【0007】次元数が可変のベクトル量子化装置におけ
るコードブックの構成方式の第2の従来技術として、次
元数が固定された出力ベクトルが登録されているコード
ブックに対して、その次元数に合うように入力ベクトル
をサブサンプリングし、探索された出力ベクトルに対し
てはオーバーサンプリングをして出力するようにしたも
のがある。しかし、この従来技術では、サブサンプリン
グ及びオーバーサンプリンによって量子化の精度が劣化
してしまうという問題点を有している。
るコードブックの構成方式の第2の従来技術として、次
元数が固定された出力ベクトルが登録されているコード
ブックに対して、その次元数に合うように入力ベクトル
をサブサンプリングし、探索された出力ベクトルに対し
てはオーバーサンプリングをして出力するようにしたも
のがある。しかし、この従来技術では、サブサンプリン
グ及びオーバーサンプリンによって量子化の精度が劣化
してしまうという問題点を有している。
【0008】次元数が可変のベクトル量子化装置におけ
るコードブックの構成方式の第3の従来技術として、特
公平5-56070 号公報に記載のものがある。この従来技術
では、図7に示されるように、コードブックは、N個の
インデックスi(1≦i≦N)により指示され、それぞ
れの次元数(ブロックサイズ)がKの、N組の代表ベク
トルである出力ベクトル *yi を含んでいる。そして、
各出力ベクトル *yi は、そのブロックサイズKを任意
のサブブロックサイズbで分割して得られるn=K/b
組の部分的な出力ベクトル *yi j (1≦j≦n)によ
って構成される。
るコードブックの構成方式の第3の従来技術として、特
公平5-56070 号公報に記載のものがある。この従来技術
では、図7に示されるように、コードブックは、N個の
インデックスi(1≦i≦N)により指示され、それぞ
れの次元数(ブロックサイズ)がKの、N組の代表ベク
トルである出力ベクトル *yi を含んでいる。そして、
各出力ベクトル *yi は、そのブロックサイズKを任意
のサブブロックサイズbで分割して得られるn=K/b
組の部分的な出力ベクトル *yi j (1≦j≦n)によ
って構成される。
【0009】一方、入力ベクトル *xもそれをサブブロ
ックサイズbで等分割して得られるn組の部分的な入力
ベクトル *xj 毎に入力される。そして、例えばベクト
ル量子化時のブロックサイズがサブブロックサイズbに
等しい場合には、コードブック中の各インデックスi毎
に、図8(a) に示されるような距離Di が計算される。
この距離Di は、第1番目の部分的な入力ベクトル *x
1 とインデックスiに対応する出力ベクトル *yi を構
成する第1番目の部分的な出力ベクトル *yi 1 との間
の距離di 1 に等しい。この距離Di が、コードブック
中の全てのインデックスi(1≦i≦N)について計算
され、その最小値が第1番目の部分的な入力ベクトル *
x1 に対応する量子化データとして出力される。第2番
目以降の部分的な入力ベクトル *x2 、・・・、
*xj 、・・・、 *xn のそれぞれについても、上述の
*x1 が置き換えられて同様の計算が実行されることに
より、それぞれに対応する量子化データが出力される。
ックサイズbで等分割して得られるn組の部分的な入力
ベクトル *xj 毎に入力される。そして、例えばベクト
ル量子化時のブロックサイズがサブブロックサイズbに
等しい場合には、コードブック中の各インデックスi毎
に、図8(a) に示されるような距離Di が計算される。
この距離Di は、第1番目の部分的な入力ベクトル *x
1 とインデックスiに対応する出力ベクトル *yi を構
成する第1番目の部分的な出力ベクトル *yi 1 との間
の距離di 1 に等しい。この距離Di が、コードブック
中の全てのインデックスi(1≦i≦N)について計算
され、その最小値が第1番目の部分的な入力ベクトル *
x1 に対応する量子化データとして出力される。第2番
目以降の部分的な入力ベクトル *x2 、・・・、
*xj 、・・・、 *xn のそれぞれについても、上述の
*x1 が置き換えられて同様の計算が実行されることに
より、それぞれに対応する量子化データが出力される。
【0010】次に、例えばベクトル量子化時のブロック
サイズがサブブロックサイズbの2倍の値b×2に等し
い場合には、コードブック中の各インデックスi毎に、
図8(b) に示されるような距離Di が計算される。この
距離Di は、第1番目の部分的な入力ベクトル *x1 と
インデックスiに対応する出力ベクトル *yi を構成す
る第1番目の部分的な出力ベクトル *yi 1 との間の距
離di 1 と、第2番目の部分的な入力ベクトル *x2 と
インデックスiに対応する出力ベクトル *yiを構成す
る第2番目の部分的な出力ベクトル *yi 2 との間の距
離di 2 との和に等しい。この距離Di が、コードブッ
ク中の全てのインデックスi(1≦i≦N)について計
算され、その最小値が第1番目の部分的な入力ベクトル
*x1 と第2番目の部分的な入力ベクトル *x2 とを結
合して得られる部分的な入力ベクトルに対応する量子化
データとして出力される。第2組目以降の部分的な入力
ベクトル( *x3 、 *x4 )、・・・、( *xn-1 、 *
xn )のそれぞれの組についても、上述の( *x1 、 *
x2 )の組が置き換えられて同様の計算が実行されるこ
とにより、それぞれに対応する量子化データが出力され
る。
サイズがサブブロックサイズbの2倍の値b×2に等し
い場合には、コードブック中の各インデックスi毎に、
図8(b) に示されるような距離Di が計算される。この
距離Di は、第1番目の部分的な入力ベクトル *x1 と
インデックスiに対応する出力ベクトル *yi を構成す
る第1番目の部分的な出力ベクトル *yi 1 との間の距
離di 1 と、第2番目の部分的な入力ベクトル *x2 と
インデックスiに対応する出力ベクトル *yiを構成す
る第2番目の部分的な出力ベクトル *yi 2 との間の距
離di 2 との和に等しい。この距離Di が、コードブッ
ク中の全てのインデックスi(1≦i≦N)について計
算され、その最小値が第1番目の部分的な入力ベクトル
*x1 と第2番目の部分的な入力ベクトル *x2 とを結
合して得られる部分的な入力ベクトルに対応する量子化
データとして出力される。第2組目以降の部分的な入力
ベクトル( *x3 、 *x4 )、・・・、( *xn-1 、 *
xn )のそれぞれの組についても、上述の( *x1 、 *
x2 )の組が置き換えられて同様の計算が実行されるこ
とにより、それぞれに対応する量子化データが出力され
る。
【0011】加えて、例えば、ベクトル量子化時のブロ
ックサイズがサブブロックサイズbのj倍の値b×jに
等しい場合には、コードブック中の各インデックスi毎
に、図9(c) に示されるような距離Di が計算される。
この距離Di は、第1番目の部分的な入力ベクトル *x
1 とインデックスiに対応する出力ベクトル *yi を構
成する第1番目の部分的な出力ベクトル *yi 1 との間
の距離di 1 から、第j番目の部分的な入力ベクトル *
xj とインデックスiに対応する出力ベクトル *yi を
構成する第j番目の部分的な出力ベクトル *yi j との
間の距離di jまでの和に等しい。この距離Di が、コ
ードブック中の全てのインデックスi(1≦i≦N)に
ついて計算され、その最小値が第1番目の部分的な入力
ベクトル *x1 から第j番目の部分的な入力ベクトル *
xj までを結合して得られる部分的な入力ベクトルに対
応する量子化データとして出力される。それ以降のj組
毎の部分的な入力ベクトルのそれぞれの組についても、
上述の( *x1 、・・・、 *xj )の組が置き換えられ
て同様の計算が実行されることにより、それぞれに対応
する量子化データが出力される。
ックサイズがサブブロックサイズbのj倍の値b×jに
等しい場合には、コードブック中の各インデックスi毎
に、図9(c) に示されるような距離Di が計算される。
この距離Di は、第1番目の部分的な入力ベクトル *x
1 とインデックスiに対応する出力ベクトル *yi を構
成する第1番目の部分的な出力ベクトル *yi 1 との間
の距離di 1 から、第j番目の部分的な入力ベクトル *
xj とインデックスiに対応する出力ベクトル *yi を
構成する第j番目の部分的な出力ベクトル *yi j との
間の距離di jまでの和に等しい。この距離Di が、コ
ードブック中の全てのインデックスi(1≦i≦N)に
ついて計算され、その最小値が第1番目の部分的な入力
ベクトル *x1 から第j番目の部分的な入力ベクトル *
xj までを結合して得られる部分的な入力ベクトルに対
応する量子化データとして出力される。それ以降のj組
毎の部分的な入力ベクトルのそれぞれの組についても、
上述の( *x1 、・・・、 *xj )の組が置き換えられ
て同様の計算が実行されることにより、それぞれに対応
する量子化データが出力される。
【0012】最後に、例えばベクトル量子化時のブロッ
クサイズがサブブロックサイズbのn倍の値b×n=K
に等しい場合、コードブック中の各インデックスi毎
に、図9(d) に示されるような距離Di が、計算され
る。この距離Di は、第1番目の部分的な入力ベクトル
*x1 とインデックスiに対応する出力ベクトル *yi
を構成する第1番目の部分的な出力ベクトル *yi 1 と
の間の距離di 1 から、第n番目(最後)の部分的な入
力ベクトル *xn とインデックスiに対応する出力ベク
トル *yi を構成する第n番目の部分的な出力ベクトル
*yi n との間の距離di n までの和に等しい。この距
離Di が、コードブック中の全てのインデックスi(1
≦i≦N)につき計算され、その最小値が入力ベクトル
*x全体に対応する量子化データとして出力される。
クサイズがサブブロックサイズbのn倍の値b×n=K
に等しい場合、コードブック中の各インデックスi毎
に、図9(d) に示されるような距離Di が、計算され
る。この距離Di は、第1番目の部分的な入力ベクトル
*x1 とインデックスiに対応する出力ベクトル *yi
を構成する第1番目の部分的な出力ベクトル *yi 1 と
の間の距離di 1 から、第n番目(最後)の部分的な入
力ベクトル *xn とインデックスiに対応する出力ベク
トル *yi を構成する第n番目の部分的な出力ベクトル
*yi n との間の距離di n までの和に等しい。この距
離Di が、コードブック中の全てのインデックスi(1
≦i≦N)につき計算され、その最小値が入力ベクトル
*x全体に対応する量子化データとして出力される。
【0013】以上のように、第3の従来技術では、ベク
トル量子化時の入力ベクトルのブロックサイズが変化し
ても、単一のコードブックに登録された出力ベクトル *
y1〜 *yN で対応することができる。
トル量子化時の入力ベクトルのブロックサイズが変化し
ても、単一のコードブックに登録された出力ベクトル *
y1〜 *yN で対応することができる。
【0014】しかし、この第3の従来技術では、入力ベ
クトルのブロックサイズが小さくなっても、コードブッ
クにおいて、各インデックス毎にただ1組の出力ベクト
ルしか探索の対象とならないため、必ずしも最適な出力
ベクトルを探索することができないという問題点を有し
ている。
クトルのブロックサイズが小さくなっても、コードブッ
クにおいて、各インデックス毎にただ1組の出力ベクト
ルしか探索の対象とならないため、必ずしも最適な出力
ベクトルを探索することができないという問題点を有し
ている。
【0015】本発明の課題は、1つのコードブック中の
出力ベクトルから入力ベクトルのブロックサイズの変化
に応じた次元を有する最適な出力ベクトルを探索可能と
することにある。
出力ベクトルから入力ベクトルのブロックサイズの変化
に応じた次元を有する最適な出力ベクトルを探索可能と
することにある。
【0016】
【課題を解決するための手段】本発明は、入力ベクトル
のブロックサイズが可変されその可変されたブロックサ
イズを有する入力ベクトルに対してベクトル量子化を実
行するベクトル量子化装置を前提とする。
のブロックサイズが可変されその可変されたブロックサ
イズを有する入力ベクトルに対してベクトル量子化を実
行するベクトル量子化装置を前提とする。
【0017】そして、本発明の第1の態様は、次のよう
な構成を有する。まず、1つのブロックサイズを有し該
1つのブロックサイズと同じブロックサイズを有する入
力ベクトルに対するコードブックを構成することができ
る出力ベクトルを結合するとそのブロックサイズよりも
大きな他のブロックサイズを有しその他のブロックサイ
ズと同じブロックサイズを有する入力ベクトルに対する
コードブックを構成することができる出力ベクトルとな
るような出力ベクトルの組を、コードブックとして記憶
するコードブック記憶手段を有する。
な構成を有する。まず、1つのブロックサイズを有し該
1つのブロックサイズと同じブロックサイズを有する入
力ベクトルに対するコードブックを構成することができ
る出力ベクトルを結合するとそのブロックサイズよりも
大きな他のブロックサイズを有しその他のブロックサイ
ズと同じブロックサイズを有する入力ベクトルに対する
コードブックを構成することができる出力ベクトルとな
るような出力ベクトルの組を、コードブックとして記憶
するコードブック記憶手段を有する。
【0018】次に、入力ベクトルのブロックサイズに対
応するようにコードブック内の出力ベクトルを適宜結合
し、その結合によって得られる各出力ベクトルを用いて
入力ベクトルをベクトル量子化するベクトル量子化手段
を有する。
応するようにコードブック内の出力ベクトルを適宜結合
し、その結合によって得られる各出力ベクトルを用いて
入力ベクトルをベクトル量子化するベクトル量子化手段
を有する。
【0019】続いて、本発明の第2の態様は、次のよう
な構成を有する。まず、構成要素の一部分がその部分の
ブロックサイズと同じブロックサイズを有する入力ベク
トルに対するコードブックを構成することができる出力
ベクトルとなるような出力ベクトルの組を、コードブッ
クとして記憶するコードブック記憶手段を有する。
な構成を有する。まず、構成要素の一部分がその部分の
ブロックサイズと同じブロックサイズを有する入力ベク
トルに対するコードブックを構成することができる出力
ベクトルとなるような出力ベクトルの組を、コードブッ
クとして記憶するコードブック記憶手段を有する。
【0020】次に、入力ベクトルのブロックサイズを単
位として、コードブックに記憶される各出力ベクトルの
構成要素の一部分を用いて入力ベクトルをベクトル量子
化するベクトル量子化手段を有する。
位として、コードブックに記憶される各出力ベクトルの
構成要素の一部分を用いて入力ベクトルをベクトル量子
化するベクトル量子化手段を有する。
【0021】
【作用】本発明の第1の態様では、入力ベクトルのブロ
ックサイズに対応するようにコードブック内の出力ベク
トルが結合され、その結合によって得られる各出力ベク
トルと入力ベクトルとの各歪が計算され、例えば歪が最
小となった結合された出力ベクトルを特定する識別情報
が出力される。
ックサイズに対応するようにコードブック内の出力ベク
トルが結合され、その結合によって得られる各出力ベク
トルと入力ベクトルとの各歪が計算され、例えば歪が最
小となった結合された出力ベクトルを特定する識別情報
が出力される。
【0022】本発明の第2の態様では、入力ベクトルの
ブロックサイズを単位として、コードブックに記憶され
る各出力ベクトルの構成要素の各部分との各歪が構成要
素内をシフトしながら計算され、例えば歪が最小となっ
た出力ベクトルの部分を特定する識別情報が出力され
る。
ブロックサイズを単位として、コードブックに記憶され
る各出力ベクトルの構成要素の各部分との各歪が構成要
素内をシフトしながら計算され、例えば歪が最小となっ
た出力ベクトルの部分を特定する識別情報が出力され
る。
【0023】
【実施例】以下、図面を参照しながら本発明の実施例に
つき詳細に説明する。 <第1の実施例>図1は、本発明の第1の実施例の構成
図である。
つき詳細に説明する。 <第1の実施例>図1は、本発明の第1の実施例の構成
図である。
【0024】画像の画素信号であるK個毎にブロック化
された入力ベクトル *x={x1 、・・・、xk }は、
階層セレクタ101に入力される。階層セレクタ101
は、上記K個の入力ベクトル *xを後述するようにn個
単位に細分化してベクトル量子化するか否かを判定し、
伝送路106に、その判定結果に応じた判定ビットを送
出する。
された入力ベクトル *x={x1 、・・・、xk }は、
階層セレクタ101に入力される。階層セレクタ101
は、上記K個の入力ベクトル *xを後述するようにn個
単位に細分化してベクトル量子化するか否かを判定し、
伝送路106に、その判定結果に応じた判定ビットを送
出する。
【0025】例えば、ブロックサイズKでベクトル量子
化すると判定された場合には判定ビット0が、ブロック
サイズKの入力ベクトル *xを後述するようにn個単位
に細分化してベクトル量子化すると判定された場合には
判定ビット1が、共に1ビットのデータとして伝送路1
06に出力される。
化すると判定された場合には判定ビット0が、ブロック
サイズKの入力ベクトル *xを後述するようにn個単位
に細分化してベクトル量子化すると判定された場合には
判定ビット1が、共に1ビットのデータとして伝送路1
06に出力される。
【0026】また、上述の判定は、例えば、入力ベクト
ル *xの各要素値(サンプル値)の分散が計算され、そ
の分散値が所定の閾値以上であるか否かが判定されるこ
とによって決定される。分散値が大きな値であれば、そ
のブロックに対応する画像領域内にエッジや高周波成分
が含まれることになるため、ブロックサイズがKのまま
では最適な量子化が行えない可能性が高い。従って、分
散値が所定の閾値以上であれば、ブロックサイズKの入
力ベクトル *xをn個単位に細分化してベクトル量子化
すべく、判定ビットの値が1にセットされる。逆に、分
散値が小さな値であれば、そのブロックに対応する画像
領域は濃淡が少ないことになるため、ブロックサイズが
Kのままでも最適な量子化が行える可能性が高い。従っ
て、分散値が所定の閾値より小さければ、ブロックサイ
ズKの入力ベクトル *xをそのままベクトル量子化すべ
く、判定ビットの値が0にセットされる。
ル *xの各要素値(サンプル値)の分散が計算され、そ
の分散値が所定の閾値以上であるか否かが判定されるこ
とによって決定される。分散値が大きな値であれば、そ
のブロックに対応する画像領域内にエッジや高周波成分
が含まれることになるため、ブロックサイズがKのまま
では最適な量子化が行えない可能性が高い。従って、分
散値が所定の閾値以上であれば、ブロックサイズKの入
力ベクトル *xをn個単位に細分化してベクトル量子化
すべく、判定ビットの値が1にセットされる。逆に、分
散値が小さな値であれば、そのブロックに対応する画像
領域は濃淡が少ないことになるため、ブロックサイズが
Kのままでも最適な量子化が行える可能性が高い。従っ
て、分散値が所定の閾値より小さければ、ブロックサイ
ズKの入力ベクトル *xをそのままベクトル量子化すべ
く、判定ビットの値が0にセットされる。
【0027】図2は、図1のコードブックメモリ104
に記憶されるコードブックの構成図である。第1の実施
例では、コードブックは、N個のインデックスi(1≦
i≦N)により指示され、それぞれの次元数(ブロック
サイズ)がKの、N組の出力ベクトル *yi =
{y1,1 、・・・、y1,K }を含んでいる。そして、各
出力ベクトル *yi は、そのブロックサイズKを任意の
サブブロックサイズnで分割して得られる例えばK/n
=4組の部分的な出力ベクトル{ *yi 1 、 *yi 2 、
*yi 3 、 *yi 4 }によって構成される。従って、K
はnの倍数である。
に記憶されるコードブックの構成図である。第1の実施
例では、コードブックは、N個のインデックスi(1≦
i≦N)により指示され、それぞれの次元数(ブロック
サイズ)がKの、N組の出力ベクトル *yi =
{y1,1 、・・・、y1,K }を含んでいる。そして、各
出力ベクトル *yi は、そのブロックサイズKを任意の
サブブロックサイズnで分割して得られる例えばK/n
=4組の部分的な出力ベクトル{ *yi 1 、 *yi 2 、
*yi 3 、 *yi 4 }によって構成される。従って、K
はnの倍数である。
【0028】これは外見上は図7に示される従来技術の
場合の構成と同様であるが、第1の実施例の大きな特徴
は、上述の例えば4組の部分的な出力ベクトル{ *yi
1 、 *yi 2 、 *yi 3 、 *yi 4 }のそれぞれが入力
ベクトル *xによって表現される図3(a) に示される画
像領域において破線で仕切られた4つの領域のそれぞれ
に対応している点である。
場合の構成と同様であるが、第1の実施例の大きな特徴
は、上述の例えば4組の部分的な出力ベクトル{ *yi
1 、 *yi 2 、 *yi 3 、 *yi 4 }のそれぞれが入力
ベクトル *xによって表現される図3(a) に示される画
像領域において破線で仕切られた4つの領域のそれぞれ
に対応している点である。
【0029】なお、上述のコードブックは、確率分布等
を反映したトレーニングベクトルを用いて、LBGアル
ゴリズム等によって予め設計されたものである。前述し
たように、階層セレクタ101が、ブロックサイズKで
ベクトル量子化すると判定した場合、ベクトル量子化器
103は、図4に示される401〜408の機能構成に
よって、入力ベクトル *xに対して、歪(例えば絶対値
歪)が最小となる出力ベクトル *yi を算出する。
を反映したトレーニングベクトルを用いて、LBGアル
ゴリズム等によって予め設計されたものである。前述し
たように、階層セレクタ101が、ブロックサイズKで
ベクトル量子化すると判定した場合、ベクトル量子化器
103は、図4に示される401〜408の機能構成に
よって、入力ベクトル *xに対して、歪(例えば絶対値
歪)が最小となる出力ベクトル *yi を算出する。
【0030】そのために、まず図1のソート部102
は、画像領域に対して図3(a) に示される関係を有する
入力ベクトル *x={x1 、・・・、xm 、xm+1 、・
・・、x2m、・・・・、xk }の並びを、画像領域に対
して図3(b) に示される関係を有するように変換する。
は、画像領域に対して図3(a) に示される関係を有する
入力ベクトル *x={x1 、・・・、xm 、xm+1 、・
・・、x2m、・・・・、xk }の並びを、画像領域に対
して図3(b) に示される関係を有するように変換する。
【0031】上述の4組の部分的な入力ベクトル
*x1 ′={x1 ′、・・・、xn ′}、 *x2 ′=
{xn+1 ′、・・・、x2n′}、 *x3 ′=
{x2n+1′、・・・・、x3n′}、及び *x4 ′={x
3n+1′、・・・、x4n′}は、それぞれ、図4に示され
る#1〜#4の入力レジスタ401に入力される。
*x1 ′={x1 ′、・・・、xn ′}、 *x2 ′=
{xn+1 ′、・・・、x2n′}、 *x3 ′=
{x2n+1′、・・・・、x3n′}、及び *x4 ′={x
3n+1′、・・・、x4n′}は、それぞれ、図4に示され
る#1〜#4の入力レジスタ401に入力される。
【0032】次に、コードブックアドレスカウンタ40
2は、図1のコードブックメモリ104及びインデック
スバッファ105に、1〜Nまで変化するインデックス
iを順次出力する。これに対し、コードブックメモリ1
04は、指定されたインデックスiに対応する4組の部
分的な出力ベクトル *yi 1 、 *yi 2 、 *yi 3 、及
び *yi 4 を、それぞれ、#1〜#4のコードブック出力レ
ジスタ403に出力する。
2は、図1のコードブックメモリ104及びインデック
スバッファ105に、1〜Nまで変化するインデックス
iを順次出力する。これに対し、コードブックメモリ1
04は、指定されたインデックスiに対応する4組の部
分的な出力ベクトル *yi 1 、 *yi 2 、 *yi 3 、及
び *yi 4 を、それぞれ、#1〜#4のコードブック出力レ
ジスタ403に出力する。
【0033】続いて、#1〜#4の並列減算器404及び#1
〜#4の並列絶対値演算器405は、#1〜#4の入力レジス
タ401と#1〜#4のコードブック出力レジスタ403の
内容に基づいて、次のような並列演算を実行する。
〜#4の並列絶対値演算器405は、#1〜#4の入力レジス
タ401と#1〜#4のコードブック出力レジスタ403の
内容に基づいて、次のような並列演算を実行する。
【0034】#1の並列減算器404と#1の並列絶対値演
算器405は、#1の入力レジスタ401内の部分的な入
力ベクトル *x1 ′の要素x1 ′、x2 ′、・・・、x
n ′と、#1のコードブック出力レジスタ403内の部分
的な出力ベクトル *yi 1 の要素yi,1 1 、yi,2 1 、
・・・、yi,n 1 に対して、|x1 ′−yi,1 1 |、|
x2 ′−yi,2 1 |、・・・、|xn ′−yi,n 1 |で
示されるn組の減算/絶対値演算動作を並列に実行す
る。
算器405は、#1の入力レジスタ401内の部分的な入
力ベクトル *x1 ′の要素x1 ′、x2 ′、・・・、x
n ′と、#1のコードブック出力レジスタ403内の部分
的な出力ベクトル *yi 1 の要素yi,1 1 、yi,2 1 、
・・・、yi,n 1 に対して、|x1 ′−yi,1 1 |、|
x2 ′−yi,2 1 |、・・・、|xn ′−yi,n 1 |で
示されるn組の減算/絶対値演算動作を並列に実行す
る。
【0035】次に、#2の並列減算器404及び#2の並列
絶対値演算器405は、#2の入力レジスタ401内の部
分的な入力ベクトル *x2 ′の要素xn+1 ′、
xn+2 ′、・・・、x2n′と、#2のコードブック出力レ
ジスタ403内の部分的な出力ベクトル *yi 2 の要素
yi,1 2 、yi,2 2 、・・・、yi,n 2 に対し、|x
n+1 ′−yi,1 2 |、|xn+2 ′−yi,2 2 |、・・
・、|x2n′−yi,n 2 |で示されるn組の減算/絶対
値演算動作を並列に実行する。
絶対値演算器405は、#2の入力レジスタ401内の部
分的な入力ベクトル *x2 ′の要素xn+1 ′、
xn+2 ′、・・・、x2n′と、#2のコードブック出力レ
ジスタ403内の部分的な出力ベクトル *yi 2 の要素
yi,1 2 、yi,2 2 、・・・、yi,n 2 に対し、|x
n+1 ′−yi,1 2 |、|xn+2 ′−yi,2 2 |、・・
・、|x2n′−yi,n 2 |で示されるn組の減算/絶対
値演算動作を並列に実行する。
【0036】また、#3の並列減算器404及び#3の並列
絶対値演算器405は、#3の入力レジスタ401内の部
分的な入力ベクトル *x3 ′の要素x2n+1′、
x2n+2′、・・・、x3n′と、#3のコードブック出力レ
ジスタ403内の部分的な出力ベクトル *yi 3 の要素
yi,1 3 、yi,2 3 、・・・、yi,n 3 に対し、|x
2n+1′−yi,1 3 |、|x2n+2′−yi,2 3 |、・・
・、|x3n′−yi,n 3 |で示されるn組の減算/絶対
値演算動作を並列に実行する。
絶対値演算器405は、#3の入力レジスタ401内の部
分的な入力ベクトル *x3 ′の要素x2n+1′、
x2n+2′、・・・、x3n′と、#3のコードブック出力レ
ジスタ403内の部分的な出力ベクトル *yi 3 の要素
yi,1 3 、yi,2 3 、・・・、yi,n 3 に対し、|x
2n+1′−yi,1 3 |、|x2n+2′−yi,2 3 |、・・
・、|x3n′−yi,n 3 |で示されるn組の減算/絶対
値演算動作を並列に実行する。
【0037】更に、#4の並列減算器404及び#4の並列
絶対値演算器405は、#4の入力レジスタ401内の部
分的な入力ベクトル *x4 ′の要素x3n+1′、
x3n+2′、・・・、x4n′と、#4のコードブック出力レ
ジスタ403内の部分的な出力ベクトル *yi 4 の要素
yi,1 4 、yi,2 4 、・・・、yi,n 4 に対し、|x
3n+1′−yi,1 4 |、|x3n+2′−yi,2 4 |、・・
・、|x4n′−yi,n 4 |で示されるn組の減算/絶対
値演算動作を並列に実行する。
絶対値演算器405は、#4の入力レジスタ401内の部
分的な入力ベクトル *x4 ′の要素x3n+1′、
x3n+2′、・・・、x4n′と、#4のコードブック出力レ
ジスタ403内の部分的な出力ベクトル *yi 4 の要素
yi,1 4 、yi,2 4 、・・・、yi,n 4 に対し、|x
3n+1′−yi,1 4 |、|x3n+2′−yi,2 4 |、・・
・、|x4n′−yi,n 4 |で示されるn組の減算/絶対
値演算動作を並列に実行する。
【0038】続いて、#1〜#4の絶対値歪検出器406
は、それぞれ、#1〜#4の並列絶対値演算器405から出
力される絶対値|x1 ′−yi,1 1 |〜|xn ′−y
i,n 1 |、|xn+1 ′−yi,1 2 |〜|x2n′−yi,n
2 |、|x2n+1′−yi,1 3 |〜|x3n′−y
i,n 3 |、及び|x3n+1′−yi,1 4 |〜|x4n′−y
i,n 4 |に対して、次式で示される絶対値歪di j (1
≦j≦4)を検出する。
は、それぞれ、#1〜#4の並列絶対値演算器405から出
力される絶対値|x1 ′−yi,1 1 |〜|xn ′−y
i,n 1 |、|xn+1 ′−yi,1 2 |〜|x2n′−yi,n
2 |、|x2n+1′−yi,1 3 |〜|x3n′−y
i,n 3 |、及び|x3n+1′−yi,1 4 |〜|x4n′−y
i,n 4 |に対して、次式で示される絶対値歪di j (1
≦j≦4)を検出する。
【0039】
【数1】
【0040】次に、加算器407は、#1〜#4の絶対値歪
検出器406からそれぞれ出力される絶対値歪d
i j (1≦j≦4)の総和を計算する。この結果得られ
る絶対値歪の総和が、入力ベクトル *xとインデックス
iに対応する出力ベクトル *yi の間の歪d( *x、 *
yi )として、最小歪出力ベクトル検出器408に出力
される。
検出器406からそれぞれ出力される絶対値歪d
i j (1≦j≦4)の総和を計算する。この結果得られ
る絶対値歪の総和が、入力ベクトル *xとインデックス
iに対応する出力ベクトル *yi の間の歪d( *x、 *
yi )として、最小歪出力ベクトル検出器408に出力
される。
【0041】最小歪出力ベクトル検出器408は、入力
ベクトル *xとインデックスiに対応する出力ベクトル
*yi の間の歪d( *x、 *yi )を、現在までに検出
されている最小値と比較することにより、インデックス
iが1〜Nまで変化する間の最小歪、
ベクトル *xとインデックスiに対応する出力ベクトル
*yi の間の歪d( *x、 *yi )を、現在までに検出
されている最小値と比較することにより、インデックス
iが1〜Nまで変化する間の最小歪、
【0042】
【数2】
【0043】を算出する。最小歪出力ベクトル検出器4
08は、現在までに検出されている最小値を新たに入力
した歪d( *x、 *yi )によって置き換えたタイミン
グで、その旨を図1のインデックスバッファ105に通
知する。
08は、現在までに検出されている最小値を新たに入力
した歪d( *x、 *yi )によって置き換えたタイミン
グで、その旨を図1のインデックスバッファ105に通
知する。
【0044】インデックスバッファ105は、上記通知
を受信した時点で図4のコードブックアドレスカウンタ
402から出力されているインデックスiを取り込み、
それを図1の伝送路106に出力する。このインデック
スiが、入力ベクトル *xに対応する量子化データとな
る。
を受信した時点で図4のコードブックアドレスカウンタ
402から出力されているインデックスiを取り込み、
それを図1の伝送路106に出力する。このインデック
スiが、入力ベクトル *xに対応する量子化データとな
る。
【0045】伝送路106に接続される特には図示しな
い復号装置は、まず、受信した判定ビットからブロック
サイズを認識し、それに基づいて符号化データを受信
し、その符号化データから上述のインデックスiを復号
した後、そのインデックスに対応する出力ベクトル *y
i を図1のコードブックメモリ104に記憶されている
のと同じ構成のコードブックから探索し、それを入力ベ
クトル *xの復号結果として、ソートした後に出力す
る。
い復号装置は、まず、受信した判定ビットからブロック
サイズを認識し、それに基づいて符号化データを受信
し、その符号化データから上述のインデックスiを復号
した後、そのインデックスに対応する出力ベクトル *y
i を図1のコードブックメモリ104に記憶されている
のと同じ構成のコードブックから探索し、それを入力ベ
クトル *xの復号結果として、ソートした後に出力す
る。
【0046】次に、前述したように、階層セレクタ10
1が、ブロックサイズKを4分割したサブブロックサイ
ズnでベクトル量子化すると判定した場合、ベクトル量
子化器103は、図5に示される機能構成によって、ソ
ート部102から出力される並び替え4分割された4組
の部分的な入力ベクトル *x1 ′={x1 ′、・・・、
xn ′}、 *x2 ′={xn+1 ′、・・・、x2n′}、
*x3 ′={x2n+1′、・・・・、x3n′}、及び *x
4 ′={x3n+1′、・・・、x4n′}のそれぞれの組に
対して、歪が最小となる出力ベクトル *yi j を算出す
る。
1が、ブロックサイズKを4分割したサブブロックサイ
ズnでベクトル量子化すると判定した場合、ベクトル量
子化器103は、図5に示される機能構成によって、ソ
ート部102から出力される並び替え4分割された4組
の部分的な入力ベクトル *x1 ′={x1 ′、・・・、
xn ′}、 *x2 ′={xn+1 ′、・・・、x2n′}、
*x3 ′={x2n+1′、・・・・、x3n′}、及び *x
4 ′={x3n+1′、・・・、x4n′}のそれぞれの組に
対して、歪が最小となる出力ベクトル *yi j を算出す
る。
【0047】以下の説明においては、部分的な入力ベク
トル *x1 ′={x1 ′、・・・、xn ′}を例にとっ
て説明するが、他の組についても同様である。この場
合、図4に示されるそれぞれ4つからなる入力レジスタ
401、コードブック出力レジスタ403、並列減算器
404、並列絶対値演算器405、及び絶対値歪検出器
406のうち、それぞれ1つの例えば#1のみが使用され
る。
トル *x1 ′={x1 ′、・・・、xn ′}を例にとっ
て説明するが、他の組についても同様である。この場
合、図4に示されるそれぞれ4つからなる入力レジスタ
401、コードブック出力レジスタ403、並列減算器
404、並列絶対値演算器405、及び絶対値歪検出器
406のうち、それぞれ1つの例えば#1のみが使用され
る。
【0048】まず、部分的な入力ベクトル *x1 ′=
{x1 ′、・・・、xn ′}は、#1の入力レジスタ40
1に保持される。次に、コードブックアドレスカウンタ
402は、図1のコードブックメモリ104及びインデ
ックスバッファ105に、1〜Nまで変化するインデッ
クスiを順次出力すると共に、各インデックスi毎に、
例えば1〜4まで変化するサブインデックスjを出力す
る。これに対し、コードブックメモリ104は、指定さ
れたインデックスi及びサブインデックスjに対応する
1組の部分的な出力ベクトル *yi j ={yi,1 j 、y
i,2 j 、・・・、yi,n j }を、#1のコードブック出力
レジスタ403に出力する。
{x1 ′、・・・、xn ′}は、#1の入力レジスタ40
1に保持される。次に、コードブックアドレスカウンタ
402は、図1のコードブックメモリ104及びインデ
ックスバッファ105に、1〜Nまで変化するインデッ
クスiを順次出力すると共に、各インデックスi毎に、
例えば1〜4まで変化するサブインデックスjを出力す
る。これに対し、コードブックメモリ104は、指定さ
れたインデックスi及びサブインデックスjに対応する
1組の部分的な出力ベクトル *yi j ={yi,1 j 、y
i,2 j 、・・・、yi,n j }を、#1のコードブック出力
レジスタ403に出力する。
【0049】#1の並列減算器404と#1の並列絶対値演
算器405は、#1の入力レジスタ401内の部分的な入
力ベクトル *x1 ′の要素x1 ′、x2 ′、・・・、x
n ′と、#1のコードブック出力レジスタ403内の部分
的な出力ベクトル *yi 1 の要素yi,1 j 、yi,2 j 、
・・・、yi,n j に対して、|x1 ′−yi,1 j |、|
x2 ′−yi,2 j |、・・・、|xn ′−yi,n j |で
示されるn組の減算/絶対値演算動作を並列に実行す
る。
算器405は、#1の入力レジスタ401内の部分的な入
力ベクトル *x1 ′の要素x1 ′、x2 ′、・・・、x
n ′と、#1のコードブック出力レジスタ403内の部分
的な出力ベクトル *yi 1 の要素yi,1 j 、yi,2 j 、
・・・、yi,n j に対して、|x1 ′−yi,1 j |、|
x2 ′−yi,2 j |、・・・、|xn ′−yi,n j |で
示されるn組の減算/絶対値演算動作を並列に実行す
る。
【0050】#1の絶対値歪検出器406は、#1の並列絶
対値演算器405から出力される絶対値|x1 ′−y
i,1 j |〜|xn ′−yi,n j |に対して、次式で示さ
れる絶対値歪di j を検出する。
対値演算器405から出力される絶対値|x1 ′−y
i,1 j |〜|xn ′−yi,n j |に対して、次式で示さ
れる絶対値歪di j を検出する。
【0051】
【数3】
【0052】最後に、最小歪出力ベクトル検出器408
は、部分的な入力ベクトル *x1 ′と、インデックスi
及びサブインデックスjに対応する部分的な出力ベクト
ル *yi j の間の歪d( *x1 ′、 *yi j )を、現在
までに検出されている最小値と比較することにより、イ
ンデックスiが1〜Nまで変化し、かつ各インデックス
i毎にサブインデックスjが1〜4まで変化する間の最
小歪、
は、部分的な入力ベクトル *x1 ′と、インデックスi
及びサブインデックスjに対応する部分的な出力ベクト
ル *yi j の間の歪d( *x1 ′、 *yi j )を、現在
までに検出されている最小値と比較することにより、イ
ンデックスiが1〜Nまで変化し、かつ各インデックス
i毎にサブインデックスjが1〜4まで変化する間の最
小歪、
【0053】
【数4】
【0054】を算出する。最小歪出力ベクトル検出器4
08は、現在までに検出されている最小値を新たに入力
した歪d( *x1 ′、 *yi j )によって置き換えたタ
イミングで、その旨を図1のインデックスバッファ10
5に通知する。
08は、現在までに検出されている最小値を新たに入力
した歪d( *x1 ′、 *yi j )によって置き換えたタ
イミングで、その旨を図1のインデックスバッファ10
5に通知する。
【0055】インデックスバッファ105は、上記通知
を受信した時点で図4のコードブックアドレスカウンタ
402から出力されているインデックスi及びサブイン
デックスjを取り込み、それらを図1の伝送路106に
出力する。これらのインデックスi及びサブインデック
スjが、部分的な入力ベクトル *x1 ′に対応する量子
化データとなる。
を受信した時点で図4のコードブックアドレスカウンタ
402から出力されているインデックスi及びサブイン
デックスjを取り込み、それらを図1の伝送路106に
出力する。これらのインデックスi及びサブインデック
スjが、部分的な入力ベクトル *x1 ′に対応する量子
化データとなる。
【0056】伝送路106に接続される特には図示しな
い復号装置は、まず、受信した判定ビットからブロック
サイズを認識し、それに基づいて符号化データを受信
し、その符号化データから上記インデックスi及びサブ
インデックスjを復号した後、それらのインデックスに
対応する部分的な出力ベクトル *yi j を図1のコード
ブックメモリ104に記憶されているのと同じ構成のコ
ードブックから探索し、それを部分的な入力ベクトル *
x1 ′の復号結果として、ソートした後に出力する。
い復号装置は、まず、受信した判定ビットからブロック
サイズを認識し、それに基づいて符号化データを受信
し、その符号化データから上記インデックスi及びサブ
インデックスjを復号した後、それらのインデックスに
対応する部分的な出力ベクトル *yi j を図1のコード
ブックメモリ104に記憶されているのと同じ構成のコ
ードブックから探索し、それを部分的な入力ベクトル *
x1 ′の復号結果として、ソートした後に出力する。
【0057】以上説明したように、第1の実施例では、
ブロックサイズKを例えばK/n分割(上述の例では4
分割)したサブブロックサイズnでベクトル量子化が実
行される場合、コードブックに記憶されている全ての部
分的な出力ベクトル *yi j(1≦i≦N、1≦j≦K
/n)が探索の対象となるため、従来技術よりも最適な
出力ベクトルを探索することが可能となる。
ブロックサイズKを例えばK/n分割(上述の例では4
分割)したサブブロックサイズnでベクトル量子化が実
行される場合、コードブックに記憶されている全ての部
分的な出力ベクトル *yi j(1≦i≦N、1≦j≦K
/n)が探索の対象となるため、従来技術よりも最適な
出力ベクトルを探索することが可能となる。
【0058】なお、上述の第1の実施例において、イン
デックスi毎に、探索する部分的な出力ベクトルを制限
しどの範囲で探索するかをコードブックに登録するよう
にしてもよく、これにより、サブインデックスの符号化
に必要な情報量を削減することができる。 <第2の実施例>次に、本発明の第2の実施例について
説明する。
デックスi毎に、探索する部分的な出力ベクトルを制限
しどの範囲で探索するかをコードブックに登録するよう
にしてもよく、これにより、サブインデックスの符号化
に必要な情報量を削減することができる。 <第2の実施例>次に、本発明の第2の実施例について
説明する。
【0059】第2の実施例は、第1の実施例に関する図
1の構成と同様の構成によって実現される。まず、図1
の階層セレクタ101が、ブロックサイズKでベクトル
量子化すると判定した場合、ベクトル量子化器103
は、前述した第1の実施例の場合と同様にして、入力ベ
クトル *xと、インデックスi毎の出力ベクトル *yi
全体との歪を計算することにより、それが最小となるイ
ンデックスiを算出し、伝送路106に出力する。
1の構成と同様の構成によって実現される。まず、図1
の階層セレクタ101が、ブロックサイズKでベクトル
量子化すると判定した場合、ベクトル量子化器103
は、前述した第1の実施例の場合と同様にして、入力ベ
クトル *xと、インデックスi毎の出力ベクトル *yi
全体との歪を計算することにより、それが最小となるイ
ンデックスiを算出し、伝送路106に出力する。
【0060】一方、前述したように、階層セレクタ10
1が、ブロックサイズKを分割したサブブロックサイズ
でベクトル量子化すると判定した場合、次のような動作
を実行する。
1が、ブロックサイズKを分割したサブブロックサイズ
でベクトル量子化すると判定した場合、次のような動作
を実行する。
【0061】今、例えば、入力ベクトル *x={x1 、
・・・、xk }が、図6(a) の破線で仕切られる各画像
領域に対応するサブブロックに分割してベクトル量子化
される場合、図1のソート部102は、入力ベクトル *
xの各要素を並び替えることにより、図6(a) の破線で
仕切られる各画像領域に対応する部分的な入力ベクト
ル、例えば *x1 ′={x1 ′、x2 ′、x3 ′、
x4 ′}を出力する。
・・・、xk }が、図6(a) の破線で仕切られる各画像
領域に対応するサブブロックに分割してベクトル量子化
される場合、図1のソート部102は、入力ベクトル *
xの各要素を並び替えることにより、図6(a) の破線で
仕切られる各画像領域に対応する部分的な入力ベクト
ル、例えば *x1 ′={x1 ′、x2 ′、x3 ′、
x4 ′}を出力する。
【0062】一方、図1のベクトル量子化器103は、
コードブックメモリ104に対し、1〜Nまで順次変化
するインデックスiに対応する出力ベクトル *yi の読
出しアドレスを指定し、更に、インデックスi毎に、出
力ベクトル *yi に対応する画像領域内の任意の点
(u、v)を始点とし、部分的な入力ベクトルのブロッ
クサイズと同じブロックサイズを有する領域に対応する
部分的な出力ベクトルを読み出すためのアドレスを指定
する。
コードブックメモリ104に対し、1〜Nまで順次変化
するインデックスiに対応する出力ベクトル *yi の読
出しアドレスを指定し、更に、インデックスi毎に、出
力ベクトル *yi に対応する画像領域内の任意の点
(u、v)を始点とし、部分的な入力ベクトルのブロッ
クサイズと同じブロックサイズを有する領域に対応する
部分的な出力ベクトルを読み出すためのアドレスを指定
する。
【0063】そして、ベクトル量子化器103は、部分
的な入力ベクトルとその指定された部分的な出力ベクト
ルとの絶対値歪を計算する。更に、ベクトル量子化器1
03は、1つのインデックスi内で上記始点(u、v)
をシフトさせながら絶対値歪が最小となる始点(u、
v)を検出し、更に、インデックスiを1〜Nまで変化
させることにより、絶対値歪が最小となるインデックス
i及び始点(u、v)を検出する。
的な入力ベクトルとその指定された部分的な出力ベクト
ルとの絶対値歪を計算する。更に、ベクトル量子化器1
03は、1つのインデックスi内で上記始点(u、v)
をシフトさせながら絶対値歪が最小となる始点(u、
v)を検出し、更に、インデックスiを1〜Nまで変化
させることにより、絶対値歪が最小となるインデックス
i及び始点(u、v)を検出する。
【0064】このようにして検出されたインデックスi
及び始点(u、v)は、インデックスバッファ105を
介して、伝送路106に送出される。伝送路106に接
続される特には図示しない復号装置は、まず、受信した
判定ビットからブロックサイズを認識し、それに基づい
て符号化データを受信し、その符号化データから上記イ
ンデックスi及び始点(u、v)を復号した後、インデ
ックスi及び始点(u、v)に対応する部分的な出力ベ
クトルを符号化装置側と同じ構成のコードブックから探
索し、それを部分的な入力ベクトルの復号結果として、
ソートした後に出力する。
及び始点(u、v)は、インデックスバッファ105を
介して、伝送路106に送出される。伝送路106に接
続される特には図示しない復号装置は、まず、受信した
判定ビットからブロックサイズを認識し、それに基づい
て符号化データを受信し、その符号化データから上記イ
ンデックスi及び始点(u、v)を復号した後、インデ
ックスi及び始点(u、v)に対応する部分的な出力ベ
クトルを符号化装置側と同じ構成のコードブックから探
索し、それを部分的な入力ベクトルの復号結果として、
ソートした後に出力する。
【0065】以上説明したように、第2の実施例では、
出力ベクトル *yi 内でシフトされる全ての部分を量子
化のためのコードブックとして使用できるため、従来技
術より最適化な出力ベクトルを探索することが可能とな
る。
出力ベクトル *yi 内でシフトされる全ての部分を量子
化のためのコードブックとして使用できるため、従来技
術より最適化な出力ベクトルを探索することが可能とな
る。
【0066】なお、上述の第2の実施例で、インデック
スi毎にシフトする始点(u、v)の範囲を制限しどの
範囲でシフトするかをコードブックに登録するようにし
てもよく、これにより、始点(u、v)の符号化に必要
な情報量を削減することができる。
スi毎にシフトする始点(u、v)の範囲を制限しどの
範囲でシフトするかをコードブックに登録するようにし
てもよく、これにより、始点(u、v)の符号化に必要
な情報量を削減することができる。
【0067】
【発明の効果】本発明の第1の態様によれば、入力ベク
トルのブロックサイズに対応するように単一のコードブ
ック内で結合された各出力ベクトルを量子化のために使
用することができるため、従来技術より最適化な出力ベ
クトルを探索することが可能となる。
トルのブロックサイズに対応するように単一のコードブ
ック内で結合された各出力ベクトルを量子化のために使
用することができるため、従来技術より最適化な出力ベ
クトルを探索することが可能となる。
【0068】本発明の第2の態様によれば、入力ベクト
ルのブロックサイズを単位とするコードブックに記憶さ
れる各出力ベクトルの構成要素の各部分を量子化のため
に使用することができるため、従来技術より最適化な出
力ベクトルを探索することが可能となる。
ルのブロックサイズを単位とするコードブックに記憶さ
れる各出力ベクトルの構成要素の各部分を量子化のため
に使用することができるため、従来技術より最適化な出
力ベクトルを探索することが可能となる。
【図1】本発明の実施例の構成図である。
【図2】第1の実施例におけるコードブックの構成図で
ある。
ある。
【図3】第1の実施例における入力ベクトル及び部分的
な入力ベクトルと、画像領域との関係を示した図であ
る。
な入力ベクトルと、画像領域との関係を示した図であ
る。
【図4】第1の実施例のベクトル量子化器103におけ
るブロックサイズKのベクトル量子化動作の説明図であ
る。
るブロックサイズKのベクトル量子化動作の説明図であ
る。
【図5】第1の実施例のベクトル量子化器103におけ
るサブブロックサイズnのベクトル量子化動作の説明図
である。
るサブブロックサイズnのベクトル量子化動作の説明図
である。
【図6】第2の実施例の説明図である。
【図7】従来技術におけるコードブックの構成図であ
る。
る。
【図8】従来技術におけるベクトル量子化動作の説明図
(その1)である。
(その1)である。
【図9】従来技術におけるベクトル量子化動作の説明図
(その2)である。
(その2)である。
101 階層セレクタ 102 ソート部 103 ベクトル量子化器 104 コードブックメモリ 105 インデックスバッファ
Claims (2)
- 【請求項1】 入力ベクトルのブロックサイズが可変さ
れその可変されたブロックサイズを有する前記入力ベク
トルに対してベクトル量子化を実行するベクトル量子化
装置において、 1つのブロックサイズを有し該1つのブロックサイズと
同じブロックサイズを有する入力ベクトルに対するコー
ドブックを構成することができる出力ベクトルを結合す
ると該ブロックサイズよりも大きな他のブロックサイズ
を有し該他のブロックサイズと同じブロックサイズを有
する入力ベクトルに対するコードブックを構成すること
ができる出力ベクトルとなるような出力ベクトルの組
を、コードブックとして記憶するコードブック記憶手段
と、 前記入力ベクトルのブロックサイズに対応するように前
記コードブック内の出力ベクトルを適宜結合し、該結合
によって得られる各出力ベクトルを用いて前記入力ベク
トルをベクトル量子化するベクトル量子化手段と、 を有することを特徴とする階層式ベクトル量子化装置。 - 【請求項2】 入力ベクトルのブロックサイズが可変さ
れその可変されたブロックサイズを有する前記入力ベク
トルに対してベクトル量子化を実行するベクトル量子化
装置において、 構成要素の一部分がその部分のブロックサイズと同じブ
ロックサイズを有する入力ベクトルに対するコードブッ
クを構成することができる出力ベクトルとなるような出
力ベクトルの組を、コードブックとして記憶するコード
ブック記憶手段と、 前記入力ベクトルのブロックサイズを単位として、前記
コードブックに記憶される前記各出力ベクトルの構成要
素の一部分を用いて前記入力ベクトルをベクトル量子化
するベクトル量子化手段と、 を有することを特徴とする階層式ベクトル量子化装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7081571A JPH08279757A (ja) | 1995-04-06 | 1995-04-06 | 階層式ベクトル量子化装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7081571A JPH08279757A (ja) | 1995-04-06 | 1995-04-06 | 階層式ベクトル量子化装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08279757A true JPH08279757A (ja) | 1996-10-22 |
Family
ID=13749996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7081571A Pending JPH08279757A (ja) | 1995-04-06 | 1995-04-06 | 階層式ベクトル量子化装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08279757A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998020483A1 (fr) * | 1996-11-07 | 1998-05-14 | Matsushita Electric Industrial Co., Ltd. | Generateur de vecteur de source sonore, codeur et decodeur vocal |
JP2002232296A (ja) * | 2001-02-06 | 2002-08-16 | Sony Corp | ベクトル量子化のコードブック生成方法及びコードブック生成装置 |
JP2002232295A (ja) * | 2001-02-05 | 2002-08-16 | Sony Corp | ベクトル量子化方法及びベクトル量子化装置 |
-
1995
- 1995-04-06 JP JP7081571A patent/JPH08279757A/ja active Pending
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7587316B2 (en) | 1996-11-07 | 2009-09-08 | Panasonic Corporation | Noise canceller |
US7809557B2 (en) | 1996-11-07 | 2010-10-05 | Panasonic Corporation | Vector quantization apparatus and method for updating decoded vector storage |
US6330534B1 (en) | 1996-11-07 | 2001-12-11 | Matsushita Electric Industrial Co., Ltd. | Excitation vector generator, speech coder and speech decoder |
US6345247B1 (en) | 1996-11-07 | 2002-02-05 | Matsushita Electric Industrial Co., Ltd. | Excitation vector generator, speech coder and speech decoder |
US6421639B1 (en) | 1996-11-07 | 2002-07-16 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method for providing an excitation vector |
US8370137B2 (en) | 1996-11-07 | 2013-02-05 | Panasonic Corporation | Noise estimating apparatus and method |
US8086450B2 (en) | 1996-11-07 | 2011-12-27 | Panasonic Corporation | Excitation vector generator, speech coder and speech decoder |
US6453288B1 (en) | 1996-11-07 | 2002-09-17 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for producing component of excitation vector |
US6757650B2 (en) | 1996-11-07 | 2004-06-29 | Matsushita Electric Industrial Co., Ltd. | Excitation vector generator, speech coder and speech decoder |
US6947889B2 (en) | 1996-11-07 | 2005-09-20 | Matsushita Electric Industrial Co., Ltd. | Excitation vector generator and a method for generating an excitation vector including a convolution system |
US6330535B1 (en) | 1996-11-07 | 2001-12-11 | Matsushita Electric Industrial Co., Ltd. | Method for providing excitation vector |
US6910008B1 (en) | 1996-11-07 | 2005-06-21 | Matsushita Electric Industries Co., Ltd. | Excitation vector generator, speech coder and speech decoder |
US6772115B2 (en) | 1996-11-07 | 2004-08-03 | Matsushita Electric Industrial Co., Ltd. | LSP quantizer |
US7289952B2 (en) | 1996-11-07 | 2007-10-30 | Matsushita Electric Industrial Co., Ltd. | Excitation vector generator, speech coder and speech decoder |
US7398205B2 (en) | 1996-11-07 | 2008-07-08 | Matsushita Electric Industrial Co., Ltd. | Code excited linear prediction speech decoder and method thereof |
WO1998020483A1 (fr) * | 1996-11-07 | 1998-05-14 | Matsushita Electric Industrial Co., Ltd. | Generateur de vecteur de source sonore, codeur et decodeur vocal |
US6799160B2 (en) | 1996-11-07 | 2004-09-28 | Matsushita Electric Industrial Co., Ltd. | Noise canceller |
US8036887B2 (en) | 1996-11-07 | 2011-10-11 | Panasonic Corporation | CELP speech decoder modifying an input vector with a fixed waveform to transform a waveform of the input vector |
JP4631178B2 (ja) * | 2001-02-05 | 2011-02-16 | ソニー株式会社 | ベクトル量子化方法及びベクトル量子化装置 |
JP2002232295A (ja) * | 2001-02-05 | 2002-08-16 | Sony Corp | ベクトル量子化方法及びベクトル量子化装置 |
JP4590747B2 (ja) * | 2001-02-06 | 2010-12-01 | ソニー株式会社 | ベクトル量子化のコードブック生成方法及びコードブック生成装置 |
JP2002232296A (ja) * | 2001-02-06 | 2002-08-16 | Sony Corp | ベクトル量子化のコードブック生成方法及びコードブック生成装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100624432B1 (ko) | 내용 기반 적응적 이진 산술 복호화 방법 및 장치 | |
US5903676A (en) | Context-based, adaptive, lossless image codec | |
WO2019055772A1 (en) | COMPRESSION OF CLOUD OF POINTS | |
US7864083B2 (en) | Efficient data compression and decompression of numeric sequences | |
EP0729689A1 (en) | Quadtree-structured walsh transform video/image coding | |
US5444488A (en) | Method and apparatus for coding digital data using vector quantizing techniques | |
US5883981A (en) | Lattice vector transform coding method for image and video compression | |
US5832131A (en) | Hashing-based vector quantization | |
US6121905A (en) | Method and apparatus for decoding JPEG symbols | |
Rizvi et al. | An efficient Euclidean distance computation for vector quantization using a truncated look-up table | |
WO1999059105A1 (en) | Method and apparatus utilizing a simplified content-addressable memory for jpeg decoding | |
CA2059059C (en) | Efficient vector codebook | |
Slyz et al. | A nonlinear VQ-based predictive lossless image coder | |
JPH08279757A (ja) | 階層式ベクトル量子化装置 | |
Lo et al. | Subcodebook searching algorithm for efficient VQ encoding of images | |
Lin et al. | An improved search algorithm for vector quantization using mean pyramid structure | |
Rizvi et al. | Finite-state residual vector quantization using a tree-structured competitive neural network | |
Chuang et al. | Improved mean-removed vector quantization scheme for grayscale image coding | |
Yan et al. | A bit-level systolic architecture for implementing a VQ tree search | |
US6112205A (en) | Data processing equipment and method for classifying data into classes in accordance with a plurality of thresholds for quantizing data | |
KR0185846B1 (ko) | 분류 벡터 양자화기 | |
KR100216600B1 (ko) | 영상 신호 벡터 양자화기를 위한 다중 부호어 전송 방법 | |
Quweider et al. | Use of space filling curves in fast encoding of VQ images | |
JPH0714205B2 (ja) | 順次再生ベクトル量子化符号化・復号化装置 | |
Chung et al. | An improvement of fast search algorithm for vector quantization |