JP3235713B2 - ベクトル量子化法及びその符号帳 - Google Patents
ベクトル量子化法及びその符号帳Info
- Publication number
- JP3235713B2 JP3235713B2 JP12169096A JP12169096A JP3235713B2 JP 3235713 B2 JP3235713 B2 JP 3235713B2 JP 12169096 A JP12169096 A JP 12169096A JP 12169096 A JP12169096 A JP 12169096A JP 3235713 B2 JP3235713 B2 JP 3235713B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- distortion
- elements
- candidate
- calculated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
なる入力ベクトルと最も近い候補ベクトルを符号帳から
選択して、量子化する方法及びこれに用いる符号帳に関
する。
入力端子11からの複数のサンプルを1つの入力ベクト
ルとしたものと、符号帳12から選択した候補ベクトル
との距離(歪)を距離計算部13で計算し、この距離
(歪)が最も小さいものを符号帳12から選び出すよう
に制御部14で制御し、その最小歪の候補ベクトルの番
号を量子化結果として出力端子15へ出力する。
クトルと入力のベクトルの距離計算(歪計算)が処理の
大部分を占める。歪を小さくすること、距離計算を少な
くすることを両立させることは難しく、ベクトル量子化
を実用化する上での障害になっている。用途によっては
符号帳中の候補ベクトルの要素の半数以上を0としても
歪が殆ど増加しない場合がある。この例を図6に示す。
図6は(P−1)次元のN個の候補ベクトルを横方向を
要素配列とし、縦方向をベクトル配列方向として並べた
場合で、各要素中の0でないものをXで示し、0の要素
が可なり含まれている。距離計算は入力ベクトルの各要
素と候補ベクトルの対応する要素との積で計算できるた
め、符号帳の候補ベクトルの要素が0の場合、その距離
計算をする必要がなくなり、演算量を削減できる可能性
がある。
セッサ(DSP)などで前記距離計算を高速に処理させ
るためには、各候補ベクトルは0となる要素が等間隔ま
たは0とならない要素が等間隔であり、かつその0とな
る要素位置が予め知られ、0となる要素に対する入力ベ
クトルの対応要素との乗算は行わないようにプログラム
される。
要素または0でない要素が等間隔でないと、入力ベクト
ルとの距離計算を高速に行うことができない。一方0の
要素または0でない要素を等間隔にすると、入力ベクト
ルとの距離計算を高速に行うことができるが、そのよう
な候補ベクトルは、ベクトルの自由度が低下して、量子
化歪が大きいものとなる問題があった。この発明の目的
は符号帳の中のベクトルの数多くの要素を規則的に0と
して、歪の増加を抑えつつ処理量を削減する方法及び符
号帳を提供することにある。
子化の距離計算を候補ベクトルごとに行うのではなく、
要素番号を指定して要素ごとにすべての候補ベクトルの
距離を計算し、そのとき符号帳中のベクトルを0の要素
または0でない要素をベクトル配列方向に等間隔に配置
する。つまり、1つの候補ベクトルに注目すると0また
は0でない要素が等間隔にならないことが従来方法と異
なる。
1に示す。図と同じように、1つの候補ベクトルの要素
の配列を横方向とし、候補ベクトルの配列方向を縦方向
として示してある。つまり、横方向の要素数p−1は候
補ベクトルの次元数であり、縦方向の候補ベクトル数N
−1は2のビット数乗個ある。図中の0はベクトルの要
素が0であり,Xは0でないことを示す。
見ると、つまり各候補ベクトルのi番目の要素をベクト
ル配列方向に見ると、いずれも0でない要素が等間隔に
なっている。ただし、間隔は列によって異なっている。
この例では0でない要素の間隔はi=0では1個間隔、
i=1,2ではそれぞれ2個間隔、i=3,4,5,6
ではそれぞれ3個間隔となっている。この結果、1つの
候補ベクトルについて見ると、すなわち、横方向に要素
を見ると0でない要素は不規則で、候補ベクトルは数多
くの種類が存在することがわかる。またこの例ではiが
小さいとき、すなわち低周波数に対応する要素の領域で
は、0でない値が密で、iが大きいときには、0でない
要素が疎となるように配置してある。例えば音声信号の
ような音響信号を周波数領域の変換係数として量子化す
る場合、このような配置のほうが都合がよいことがあ
る。その周波数領域の変換係数としては、いわゆる平坦
化された残差変換係数でもよい。
目の要素をx(i),n番目の候補ベクトルのi番目の
要素をc(n,i),i番目の要素に対する距離の重み
をw(i)とすると、入力ベクトルとn番目の候補ベク
トルとの距離Dn は次のようになる。 Dn =Σw(i) |x(i)−c(n,i)|2 =Σw(i)x( i)2 −2Σw(i)x(i)c(n,i) +Σw(i) c(n,i)2 …… (1) Σはi=0からp −1まで 右辺第1項は候補ベクトルと無関係になるため、この発
明では第2項と第3項の和をDn とし、nごとに部分結
果dniを記憶する。そして下記のように1つのiに対し
てnを増加させながら値を更新する。
cn ごとに歪記憶部21n (n=0,1,2,…,N−
1)を設け、例えば各ベクトルの要素番号iを順次指定
し、そのiごとに次式を計算し、 dni=−2w(i)x(i)c(n,i) +w(i)c(n,i)2 …… (2) その計算結果を対応する歪記憶部21n 中の記憶歪dn
を次式で更新する。
ついて順次、各N個の候補ベクトルの各要素c(n,
i)と入力ベクトルの対応要素x(i)との部分歪を計
算し、かつ、その計算結果をそれまでの対応候補ベクト
ルの部分歪に加算することが行われ、その際に、1つの
要素番号iについて、候補ベクトルの要素(n,i)が
0のものについての計算は省略して計算量を減少する。
このようにして全てのベクトル要素について計算した
後、歪記憶部210 〜21N-1 の各記憶部分歪dn は、
入力ベクトルと各候補ベクトルとの距離に対応したもの
となり、これらの最小のものの候補ベクトル番号nを選
出してベクトル量子化結果とする。
歪記憶部211 〜21N-1 の各記憶内容dn を0とし、
要素番号iと候補ベクトル番号nとを0とし(S1 ),
N個の候補ベクトルのi番目の要素の配列c(0,
i),c(1,i),c(2,i)…,c(N−1,
i)において、最初に0でない候補ベクトルの番号n0
と、0でない要素と次に0でない要素との間の0の数Δ
nを取得する(S2 ),これらn0 ,Δnは予め既知で
あり,例えば図3Aに示すように,各要素番号i=0,
1,2,…,p−1についてのN個の候補ベクトルの対
応要素配列における最初の0でない候補ベクトル番号n
0 と、0でない要素内の候補ベクトル数Δnとがテーブ
ルとして作られ、ステップS2 においてそのiの値に対
するn0 ,Δnを2つのテーブルから読み取る。なお、
図3Aのテーブルは図1の候補ベクトルの例について示
しており、i=0でn0 =0,Δn=1,i=1でn0
=1,Δn=2,…となる。
3 ),そのときのn,iを満たす、(2)式(x(i)
とc(n,i)との距離に対応した値)を計算し
(S4 ),その計算結果dniを対応部分歪記憶部21n
内の記憶歪dn に加算して、その値をdn とし、つまり
dn の更新を行う(S5 )。次にnにΔnを加え
(S6 ),その結果のnがN−1より大かを調べ
(S7 ),大でなければステップS4 に戻って、次に0
でない要素について部分歪を計算し、大であればそのi
番目の要素配列における候補ベクトル中の0でない各要
素と入力ベクトルの対応要素との部分歪が全て計算され
たことになり、iを+1し(S8 ),その更新されたi
がp+1より大かを調べ(S9 ),大でなければステッ
プS2 に戻って、次の要素列中の0でない要素との部分
歪の計算を行い、iがp+1より大であれば、全ての候
補ベクトルと入力ベクトルとの距離計算が終わったこと
になり、部分歪記憶部211 〜21N-1 に記憶されてい
る歪d0 〜d N-1 中の最小のものを選択し(S10),そ
の選択した最小距離が得られた候補ベクトルのベクトル
番号nを量子化結果nr として出力する。
は(1)式によるから、図2を参照した量子化において
も、実際の距離を求めたい場合は、(1)式の右辺第1
項Σ i=0 p-1 w(i)x(i)2 を1回計算して、その
結果を記憶部210 〜21N- 1 に記憶されている最終累
積加算結果にそれぞれ加算すればよい。また(2)式の
第2項は候補ベクトルのみで決まるものであるから、各
c(n,i)2 または各w(i)c(n,i)2 を予め
計算して符号帳に追加しておけば、それだけ計算量を少
なくすることができる。つまり、例えば図4に示すよう
に、各候補ベクトル中の0でない要素の部にはその要素
の値Xと、その自乗値X2 とを並べて記憶しておけばよ
い。この例は図1に示した符号帳に対するものである。
X2 の代わりw(i)X2 を記憶しておいてもよい。
(例えば図1に示すもの)を作成するには、例えば次の
ようにすればよい。これはいわゆる一般化ロイド法を変
形したものであって、必要とする候補ベクトルの数(N
個)の初期再生ベクトルを設定する(S1 ),この設定
は例えば乱数を発生させて、それぞれ与えればよい。次
に全学習サンプルを最も近い再生ベクトルに帰属させ
(S2 ),各再生ベクトルごとにこれに帰属した学習サ
ンプルの中心値(重心)を求める(S3 )。一般化ロイ
ド法では、この各中心値を新たな再生ベクトルとする
が、この発明では、この各中心値に対し、例えば図1に
示したベクトル配列方向における0でない要素の繰り返
し位置を除き、他の全ての要素を0とする。つまり図1
中の値の0の要素と対応する各中心値中の全ての要素を
0として、その新たな再生ベクトルとする(S4 )。ス
テップS2 に戻り、この新たな再生ベクトルに対して学
習サンプルを帰属させることを行い、以下同様のことを
歪が最小になるまで繰り返す。
と121 からそれぞれ各1つの候補ベクトルc0n,c1n
を取り出し、これらを加算し、その加算したものと入力
ベクトルxとの距離を計算部14で行い、その距離が最
小となる候補ベクトルc0n,c1mの組み合わせを制御部
14で選択して、その候補ベクトルの番号を量子化結果
として出力するベクトル量子化方法がある。この場合に
も、この発明を適用できる。この場合の入力ベクトルx
と組み合わせ候補ベクトルc0n,c1mとの距離、つまり
歪Dn,m は次のようになる。ただし、m=0,1,2,
…,N−1である。
みを各要素の縦方向(ベクトル配列方向)に部分和をc
0 (n,i)とc1 (m,i)で各々更新していけばよ
い。
クトルの組み合わせについて、入力ベクトルとの要素間
歪dn,m を次式で計算し、 dn,m =−2w(i) x(i)(c0(n,i)+c1(m,i)) +w(i)(c0(n,i)2 +c1(m,i)2 +2c0(n,i)c1(m,i)) …… (5) この計算結果を、各組み合わせ候補ベクトルごとに設け
られた部分歪記憶部21n,m (図示せず)の対応するも
のに累積加算し、i=0乃至i=p−1まで(5)式を
計算した後、部分歪記憶部21n,m 中の累積歪が最小の
ものと対応する候補ベクトルの組み合わせを量子化結果
とする。
i)の0でない要素の規則は互いに独立でよい。c
0 (n,i)とc1 (m,i)とが共に0でないことは
少なく、つまり(5)式右辺中最後の項は0となること
が多く、つまり、この項を計算する必要が少なく、iご
とに僅かの計算でする場合が多い。このように2つの候
補ベクトルの和で表す場合にはw(i)x(i)(c0
(n,i))とw(i)x(i)(c1 (m,i))の
それぞれを計算し、つまり(5)式右辺中の第1項のか
っこを解いたものを計算し、それぞれの値の大きいもの
から複数の候補ベクトルを残し、これらの候補ベクトル
についてのみ(5)式第2項、特にw(i)c0 (n,
i)c1 (m,i)を計算することでさらに演算量を削
減できる。つまり(5)式の右辺第1項は負の値である
から、この絶対値が大きいものは歪が小さいから、歪の
小さいものについて演算すればよい。第1の実施例につ
いてもw(i)x(i)c(n,i)の大きい複数の候
補についてのみ計算してもよい。
は全ての要素が0でなく、他方の符号帳121 のc
1 (m,i)は0でない要素が等間隔になるように配置
することでも上記と同様の演算量削減効果があることは
明らかである。また、この発明は2個以上の符号帳を持
つベクトル量子化への拡張も容易である。
理プロセッサがよく使われるが、このようなプロセッサ
では積和演算と対象となるデータのアドレスの更新が並
行して実行できるという利点がある。ただしアドレスの
更新は等間隔であるという条件がつく。この発明ではベ
クトル量子化の距離計算を縦方向に0でない要素のみを
等間隔で実行するため、つまり図2中のステップS6 の
アドレス更新が並行して実行でき、高速演算が可能であ
る。一方、符号帳中の候補ベクトルの1つ1つは0でな
い要素がさまざまな間隔に配置されているため、すべて
の要素が0でない要素が等間隔に配置された場合に比較
して歪の増加は僅かで抑えられる。また周波数領域の係
数を量子化する際などに、低次の要素は密に高次の要素
は疎にするといった調整が可能で演算量を効果的に削減
できる。
例を示す流れ図。
のベクトル番号n0 と、0でない要素間の0の数Δnと
の関係を示すテーブル、Bはこの発明の符号帳の作成方
法の一例を示す流れ図である。
Claims (6)
- 【請求項1】 複数サンプルよりなる入力ベクトルに対
し、符号帳中の各候補ベクトルから歪の最も小さいもの
を選択して、上記入力ベクトルを量子化するベクトル量
子化法において、 上記符号帳としてその候補ベクトルをその要素配列と直
角方向に配列したとき、同一番号の要素はベクトル配列
方向において0の要素または0でない要素が等間隔にな
るものを用い、 候補ベクトルの数だけ部分歪を記憶する歪記憶部を用意
し、 上記入力ベクトルの指定された要素番号の要素と、上記
各候補ベクトルの上記指定された要素番号で0でない要
素との部分歪をそれぞれ計算し、その各計算された部分
歪を対応する上記歪記憶部の部分歪に加算し、 上記要素番号の指定を変えて上記部分歪の計算を行って
入力ベクトルと、各候補ベクトルとの歪を求めることを
特徴とするベクトル量子化法。 - 【請求項2】 複数サンプルよりなる入力ベクトルに対
し、複数の符号帳中の候補ベクトルの和の組み合わせの
中から、歪の最も小さい組み合わせを選択して、上記入
力ベクトルを量子化するベクトル量子化法において、 上記符号帳の少なくとも1つはその候補ベクトルを、そ
の要素配列と直角方向に配列したとき、同一番号の要素
は、ベクトル配列方向において、0の要素または0でな
い要素が等間隔になるものを用い、 候補ベクトルの和の各組み合わせと対応した部分歪を記
憶する歪記憶部を用意し、 上記入力ベクトルの指定された要素番号の要素と、上記
候補ベクトルの和の組み合わせの上記指定された要素番
号で0でない要素との部分歪をそれぞれ計算し、 その各計算された部分歪を対応する歪記憶部の部分歪に
加算し、 上記要素番号の指定を変えて上記部分歪の計算を行っ
て、上記入力ベクトルと上記候補ベクトルの和の組み合
わせとの歪を求めることを特徴とするベクトル量子化
法。 - 【請求項3】 入力ベクトルとの量子化歪の計算におい
て、負の項となる部分について、まず計算し、その計算
結果の大きいものと対応する複数の候補ベクトルを選出
し、これら選出した複数の候補ベクトルについて、上記
歪を求める計算を行うことを特徴とする請求項1または
2記載のベクトル量子化法。 - 【請求項4】 入力ベクトルの指定された要素番号の要
素と、符号帳の各候補ベクトルの指定された要素番号で
0でない要素との部分歪をそれぞれ計算し、その各計算
された部分歪を各候補ベクトルごとに加算して、入力ベ
クトルと候補ベクトルの歪を求めるベクトル量子化法に
おいて、 上記符号帳は同一番号の要素はベクトル配列方向におい
て、0の要素または0でない要素が等間隔になっている
ことを特徴とするベクトル量子化法。 - 【請求項5】 ベクトル量子化における歪計算における
入力ベクトルの要素を含まない各計算項の各計算結果
が、上記0でない要素と共に記憶されていることを特徴
とする請求項4記載のベクトル量子化用符号帳。 - 【請求項6】 周波数領域に変換された係数の量子化に
用いられ、上記0でない要素は低次の上記要素側は密
で、高次の上記要素側は疎となっていることを特徴とす
る請求項4又は5記載の符号帳。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12169096A JP3235713B2 (ja) | 1996-05-16 | 1996-05-16 | ベクトル量子化法及びその符号帳 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12169096A JP3235713B2 (ja) | 1996-05-16 | 1996-05-16 | ベクトル量子化法及びその符号帳 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09307450A JPH09307450A (ja) | 1997-11-28 |
JP3235713B2 true JP3235713B2 (ja) | 2001-12-04 |
Family
ID=14817473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP12169096A Expired - Lifetime JP3235713B2 (ja) | 1996-05-16 | 1996-05-16 | ベクトル量子化法及びその符号帳 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3235713B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4633774B2 (ja) * | 2007-10-05 | 2011-02-16 | 日本電信電話株式会社 | 多重ベクトル量子化方法、装置、プログラム及びその記録媒体 |
WO2009096538A1 (ja) * | 2008-01-31 | 2009-08-06 | Nippon Telegraph And Telephone Corporation | 極性付多重ベクトル量子化方法、装置、プログラム及びその記録媒体 |
JP4616891B2 (ja) * | 2008-01-31 | 2011-01-19 | 日本電信電話株式会社 | 多重ベクトル量子化方法、装置、プログラム及びその記録媒体 |
-
1996
- 1996-05-16 JP JP12169096A patent/JP3235713B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH09307450A (ja) | 1997-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5267185A (en) | Apparatus for calculating matrices | |
JP4892701B2 (ja) | 入力信号を処理する方法、コンフィギュラブルフィルタおよびコンピュータプログラム | |
KR100498457B1 (ko) | 메모리를 감소시키는 개선된 룩업 테이블 압축방법 및이를 이용하여 압축된 룩업 테이블을 가지는 비선형 함수발생장치 및 그 발생방법 | |
US4839844A (en) | Orthogonal transformer and apparatus operational thereby | |
Singh et al. | A comparative study of adaptation algorithms for nonlinear system identification based on second order Volterra and bilinear polynomial filters | |
US4598266A (en) | Modulo adder | |
JP3235713B2 (ja) | ベクトル量子化法及びその符号帳 | |
US6574649B2 (en) | Efficient convolution method and apparatus | |
US20090094304A1 (en) | System and method for adaptive nonlinear filtering | |
US4584561A (en) | Method of residue to analog conversion | |
KR102277644B1 (ko) | 가속 회로에 적합한 합성곱 신경망의 Conv-XP 프루닝 장치 | |
KR20160057590A (ko) | 공통 부분식 소거 방법 및 이를 이용한 필터 | |
JPH02287874A (ja) | 積和演算装置 | |
US4584564A (en) | Residue to analog converter | |
US4584562A (en) | Method of residue to analog conversion | |
JP3231811B2 (ja) | 行列演算回路 | |
AU2020425196B2 (en) | Secure computation apparatus, secure computation method, and program | |
JP7204545B2 (ja) | 音響信号処理装置、音響信号処理方法、およびプログラム | |
JP3227833B2 (ja) | 木構造デルタ符号帳の設計方式 | |
JPH04275668A (ja) | 積和演算に用いる部分和を量子化する方法 | |
Roy et al. | A novel adaptive volterra filter to compensate for speaker non-linearity | |
KR0182169B1 (ko) | 로그값 계산회로 | |
JP3264603B2 (ja) | デジタル信号処理装置 | |
JPH0334615A (ja) | ディジタルフィルタ | |
KR100292067B1 (ko) | 이산시간셀룰러신경회로망용셀 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070928 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080928 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080928 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090928 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090928 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100928 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100928 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110928 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120928 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130928 Year of fee payment: 12 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
EXPY | Cancellation because of completion of term |