JP3684751B2 - 信号符号化方法及び装置 - Google Patents
信号符号化方法及び装置 Download PDFInfo
- Publication number
- JP3684751B2 JP3684751B2 JP07861697A JP7861697A JP3684751B2 JP 3684751 B2 JP3684751 B2 JP 3684751B2 JP 07861697 A JP07861697 A JP 07861697A JP 7861697 A JP7861697 A JP 7861697A JP 3684751 B2 JP3684751 B2 JP 3684751B2
- Authority
- JP
- Japan
- Prior art keywords
- quantization
- coefficient
- vector
- scalar
- output
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 20
- 238000013139 quantization Methods 0.000 claims description 168
- 239000013598 vector Substances 0.000 claims description 94
- 238000006243 chemical reaction Methods 0.000 claims description 34
- 238000010606 normalization Methods 0.000 claims description 19
- 230000005236 sound signal Effects 0.000 claims description 16
- 238000000605 extraction Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 description 8
- 230000002087 whitening effect Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 6
- 238000001228 spectrum Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 238000003786 synthesis reaction Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000002940 Newton-Raphson method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M1/00—Analogue/digital conversion; Digital/analogue conversion
- H03M1/12—Analogue/digital converters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/008—Vector quantisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/004—Predictors, e.g. intraframe, interframe coding
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/0212—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Computational Linguistics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【発明の属する技術分野】
本発明は、入力信号を時間軸/周波数軸変換して量子化を行う信号符号化方法及び装置に関し、特に、オーディオ信号を高能率符号化する場合に好適な信号符号化方法及び装置に関する。
【0002】
【従来の技術】
従来において、オーディオ信号(音声信号や音響信号を含む)の時間領域や周波数領域における統計的性質と人間の聴感上の特性を利用して信号圧縮を行うような符号化方法が種々知られている。この符号化方法としては、大別して時間領域での符号化、周波数領域での符号化、分析合成符号化等が挙げられる。
【0003】
【発明が解決しようとする課題】
ところで、オーディオ信号、特に音響信号あるいは楽音信号を対象とした符号化では、従来において、量子化効率よりはむしろ音質を重視するため、スカラ量子化による量子化が一般的であり、そのため符号のビットレートの下限は比較的高いものとなっている。
【0004】
しかしながら、通信等のメディアの急速なマルチメディア化の中で、音質の劣化を抑えながらさらに低レートの符号化技術が要求されている。
【0005】
このため、ベクトル量子化の導入が必要とされるが、ベクトル量子化においては、オーディオ信号のスペクトルに現れるいくつかのピーク部分、いわゆる孤立スペクトルの再現性が悪く、さらなる改善が望まれている。
【0006】
本発明は、このような実情に鑑みてなされたものであり、ベクトル量子化による低レート化を実現しながら、孤立スペクトル等の再現性を高め、音質の向上も図り得るような信号符号化方法及び装置の提供を目的とする。
【0007】
【課題を解決するための手段】
本発明は、上述の課題を解決するために、入力オーディオ信号に対して時間軸/周波数軸変換を行う工程と、上記時間軸/周波数軸変換により得られた周波数軸上の係数のビット割当に応じてスカラ量子化とベクトル量子化とを制御して上記係数の量子化を行う量子化工程とを有する信号符号化方法であって、上記量子化工程は、上記ビット割当の割当ビット数が所定の閾値以上の係数についてスカラ量子化を施し、上記量子化工程は、上記スカラ量子化により量子化された係数については該係数に対する重みを0にしてベクトル量子化を施し、ベクトル量子化出力の内の上記スカラ量子化により量子化された係数に対応する出力を無効にして上記スカラ量子化の出力と置き換えて出力する、または、上記量子化工程は、上記スカラ量子化により量子化された係数については該係数の量子化誤差をベクトル量子化への入力とし、ベクトル量子化出力と上記スカラ量子化の出力とを加算して出力することを特徴としている。
【0008】
また、本発明は、上述の課題を解決するために、入力オーディオ信号に対して時間軸/周波数軸変換を行う時間軸/周波数軸変換手段と、上記時間軸/周波数軸変換により得られた周波数軸上の係数のビット割当を求めるビット割当手段と、このビット割当に応じてスカラ量子化とベクトル量子化とを制御して上記係数の量子化を行う量子化手段とを有し、上記量子化手段は、上記ビット割当の割当ビット数が所定の閾値以上の係数についてスカラ量子化を施し、上記量子化手段は、上記スカラ量子化により量子化された係数については該係数に対する重みを0にしてベクトル量子化を施し、ベクトル量子化出力の内の上記スカラ量子化により量子化された係数に対応する出力を無効にして上記スカラ量子化の出力と置き換えて出力する、または、上記量子化手段は、上記スカラ量子化により量子化された係数については該係数の量子化誤差をベクトル量子化への入力とし、ベクトル量子化出力と上記スカラ量子化の出力とを加算して出力することを特徴としている。
【0011】
上記ベクトル量子化は、入力ベクトルを複数のサブベクトルに分割した上で行い、それぞれのサブベクトルに対するビット割当により複数の符号帳を切り換えて使用することが挙げられる。
【0012】
また、予め特徴抽出により正規化した時間軸信号を入力信号として上記時間軸/周波数軸変換を行い、この正規化の際のパラメータを用いて上記割当ビットを計算することが好ましい。
【0013】
さらに、上記ベクトル量子化は、入力ベクトルをインターリーブして得られる複数のサブベクトルに対して行うようにしてもよい。
【0014】
ベクトル量子化では再現性の悪い周波数軸上の係数についてはスカラ量子化により量子化することができる。
【0015】
【発明の実施の形態】
以下、本発明に係る実施の形態について、図面を参照しながら説明する。
図1は、本発明に係る実施の形態となる信号符号化装置の概略構成を示すブロック図である。
【0016】
この図1において、入力端子100には時間軸上の波形信号、例えばディジタルオーディオ信号が入力される。具体的には、例えばサンプリング周波数Fs が16kHzで0〜8kHz程度のいわゆる広帯域音声信号が挙げられるが、これに限定されるものではない。
【0017】
入力端子100からの入力信号は、正規化回路101に送られる。この正規化回路101は、白色化回路とも呼ばれ、入力された時間波形信号の特徴を抽出して予測残差を取り出すような白色化を行うものである。時間波形の白色化は、線形若しくは非線形の予測により行うことができ、例えばLPC(線形予測符号化:Linear Predictive Coding)及びピッチ分析により入力時間波形信号を白色化することができる。
【0018】
この正規化回路101からの白色化された時間波形信号は、時間軸/周波数軸変換(T/F mapping)回路102に送られて、周波数軸の信号に変換される。このT/F変換としては、例えばDCT(離散コサイン変換:Discrete Cosine Transform) 、MDCT(改良DCT:Modified Discrete Cosine Transform)、FFT(高速フーリエ変換:Fast Fourier Transform)等の直交変換が多く用いられる。T/F変換回路102から得られたMDCT係数あるいはFFT係数等のパラメータは、量子化手段であるSQ(スカラ量子化)及びVQ(ベクトル量子化)回路103に送られて、SQ及びVQが併用して行われる。このT/F変換されて得られるフレーム毎の係数をN次元ベクトルyとするとき、この係数ベクトルy=(y(0),y(1),...,y(N-1))t の効率的な量子化のためには、各係数に対する量子化のビット割当(ビットアロケーション)を決定する必要がある。このビット割当は、聴覚マスキングモデル、あるいは簡便には上記正規化回路101での白色化の際に得られるLPC係数等のパラメータ、及び上記係数yから計算される量p(i) から求められる。このp(i) を、以下ビットアロケーション決定指標あるいはビット割当決定指標という。ビット割当決定指標p(i) の具体例については後述する。
【0019】
ビット割当回路104では、正規化回路101で得られた上記パラメータや、T/F変換回路102からの係数yに基づいて割当ビットを計算する。一般的に、i番目の係数に対するビットアロケーションすなわち割当ビットba(i) は、上記ビット割当決定指標p(i) を用いて、
ba(i) = log2(p(i)) + q
により表せる。この式中で、qは一般化のための補正量を表す。1フレーム内の係数量子化のために許容される総ビット数Bは、一定値又は一定に近い値とする必要があるため、上記補正量qは次のように定まる。
【0020】
【数1】
【0021】
このようにして求められた各係数に対する割当ビットba(i) に基づいて、SQ及びVQの併用状態を制御する。具体的には、例えば、割当ビットの所定の閾値bSQを予め決定しておき、
ba(i) ≧ bSQ ならばSQ(スカラ量子化)
ba(i) < bSQ ならばVQ(ベクトル量子化)
の条件によりSQとVQとを選択制御することが挙げられる。
【0022】
上記割当ビットba(i) は整数ではないので、通常のスカラ量子化ではそのままの割当ビットで量子化できないため、ba(i) から計算される整数値f(ba(i)) を量子化ビットとしてスカラ量子化する。f(x) の一例として次のものが挙げられる。ここで rint(x)は、xに最も近い整数を与える関数である。
【0023】
【数2】
【0024】
この式中のbSQ,bhighの値としては、例えばbSQ=2,bhigh=4が挙げられるが、これに限定されるものではない。
【0025】
このようにして、割当ビット数の整数化を行った場合、最終的なフレーム内の必要ビットは上記補正量qによる調整では大幅なずれが生じるため、
【0026】
【数3】
【0027】
がなるべくBに近くなるようなq’をqの近傍でサーチし、このq’により最終的な係数毎の割当ビットba'(i)を決定する。
【0028】
ビット割当回路104ではこのようなba'(i)を求めて、SQ及びVQ回路103に送り、SQ及びVQ回路103ではこの割当ビットba'(i)に基づいてSQ,VQを制御する。具体的には、上述したように、所定の閾値以上の係数に対してSQ(スカラ量子化)を行い、それ以外の係数に対してVQ(ベクトル量子化)を行うことが挙げられる。このとき、全ての係数からSQ済みの係数を除外した係数に対してVQを行うようにすると、SQ対象の係数の数がフレーム毎に変化するような場合に、VQの次元数がフレーム毎に変化することになるため、VQの次元数を全ての係数の個数Nに固定化することが好ましい。例えば、量子化の対象ベクトルとなる全ての係数の内で、既にSQにより量子化済みのものがある場合には、その係数に対する重みを0にしてベクトル量子化し、また、VQ出力において、その係数に対する結果を無効にし、SQ出力と置き換えることで実現できる。このとき、量子化対象ベクトルを複数のサブベクトルに分割して各サブベクトルに対してVQを行うようにし、各サブベクトルに対する割当ビット数により複数のコードブックを切り換えて使用することが好ましい。
【0029】
また、ビット割当回路104では、SQ及びVQ回路103でのVQ(ベクトル量子化)の際の聴覚重み付けのための重みw(i) を計算して、SQ及びVQ回路103に送っている。この重みw(i) については後述する。
【0030】
SQ及びVQ回路103からの出力インデクスは、出力端子105より取り出され、また正規化回路101からの上記LPC係数やピッチ等のパラメータは、出力端子106より取り出される。
【0031】
この図1の信号符号化装置は、ハードウェア構成として示しているが、いわゆるDSP(ディジタル信号プロセッサ)等を用いてソフトウェア的に実現することも可能である。この場合の信号符号化の際の処理手順の一例を図2のフローチャートに示す。この図2及び上記図1を参照しながら、本実施の形態の一具体例をより詳細に説明する。
【0032】
この図2において、ステップS1では上記正規化回路101に対応する正規化処理を行い、上述したように白色化を行う。ここではLPC(線形予測符号化:Linear Predictive Coding)及びピッチ分析による白色化について説明する。
【0033】
入力信号としての時間波形信号x(n) は、ハミング窓等の適当な時間窓関数により窓掛けをされた後、LPC係数の抽出が行われる。LPC係数は、LSPパラメータに変換された後、量子化され、補間される。この量子化済みのLSPパラメータを再びLPC係数に戻し、LPC逆フィルタを構成する。入力時間波形信号x(n) は、このLPC逆フィルタを介すことにより正規化(normarize) あるいは白色化され、LPC残差r1(n)が得られる。ここで、フレームサイズをNとするとき、1フレーム過去のLPC残差r1'(n) を用いてr1(n)の定義域を0≦n<Nから−N≦n<Nと拡張し、n<0の領域では、
r1(n) = r1'(n+N)
と定義し、このr1(n)を用いてピッチを計算する。ピッチゲインはピッチの1点に対する分析によるものでもよいが、この具体例では、ピッチ(周期、いわゆるピッチラグ)及びピッチゲインの精度を高めるために、ピッチの中心pとその前後の2点p±1でのピッチゲインg0,g1,g-1を計算している。これは、
【0034】
【数4】
【0035】
を最小化するkをピッチpとし、これを中心とする3点のピッチゲインから成るピッチゲインベクトルをg=(g-1,g0,g1)とするものである。
【0036】
このピッチp及びピッチゲインベクトルgを量子化して得られる量子化済ピッチゲインベクトルQ(g)を用いてピッチ逆フィルタを構成し、これによりさらにLPC残差r1(n)を正規化し、r2(n)を得る。この正規化されたLPC残差r2(n)が上記T/F変換回路102の入力となる。
【0037】
ステップS2では、時間軸波形であるLPC残差r2(n)をT/F(時間軸/周波数軸)変換する。このT/F変換には例えばMDCTが用いられる。
【0038】
ステップS3では、図1のビット割当回路104に対応するビット割当(ビットアロケーション)の計算が行われる。このビット割当は、例えば聴覚マスキングモデル、あるいは簡便には上記正規化(白色化)の際に得られるLPC係数等のパラメータ、及び上記係数yから計算されるビット割当決定指標p(i) に基づいて求められることは上述した通りである。また、このステップS3では、後段のVQ(ベクトル量子化)の際の聴覚重み付けのための重みw(i) の計算も行っている。
【0039】
先ず、上記ビット割当決定指標p(i) について説明する。
上記正規化(白色化)の際に得られた量子化済LPC係数Q(αi)(iは例えば1≦i≦10とする。)、ピッチp、量子化済ピッチゲインベクトルQ(g)を用いて、LPC合成フィルタ及びピッチ合成フィルタを構成する。これらのフィルタの伝達関数H(z) 及びP(z) は、次のように表される。
【0040】
【数5】
【0041】
また、関数H(z) 及びP(z) の各周波数応答h(i) 及びpch(i)を求めておく。ここでiは周波数軸上の各ポイントに対応する。さらに、上記T/F変換後の係数について、これを臨界帯域幅(バーク)毎に、あるいは臨界帯域幅をさらに細かくブロック分けし、j番目のブロックのピーク値Pb(j)を取り出して量子化した上で、その量子化値Q(Pb(j))をそのブロックの正規化ファクタ(normalize factor)として使用する。従って、周波数軸上の総合的な正規化ファクタである上記ビット割当決定指標p(i) は、
p(i) = h(i)pch(i)Q(Pb(j)) (i∈ block j)
と表せる。
【0042】
次に重み付けに関しては、先ずLPC及びピッチ聴覚重み付けフィルタを構成する。これらのフィルタの伝達関数W1(z),W2(z)は、例えば次のように表される。
【0043】
【数6】
【0044】
この式中の各定数γ1 ,γ2 ,λの一例としては、γ1=0.5 ,γ2=0.8 ,λ=0.7を挙げることができるが、これらに限定されるものではない。
【0045】
上記重みw(i) は、上記関数W1(z),W2(z)の周波数応答w1(i),w2(i)と、さらにQ(Pb(j))をなまらせた形であるQ(P'b(j)) とを用い、
w(i) = w1(i)w2(i)Q(P'b(j)) (i∈ block j)
として重みw(i) を求める。上記Q(P'b(j)) としては、例えば
Q(P'b(j)) = (Q(Pb(j)))r (0<r<1)
を用いることができるが、これに限定されない。
【0046】
次に、図2のステップS4あるいは図1のSQ及びVQ回路103でのスカラ及びベクトル量子化について、図3を参照しながら説明する。
【0047】
図3の入力端子21には、量子化の対象となる上記T/F変換されたN本の係数から成る係数ベクトルy=(y(0),y(1),...,y(N-1))t が供給される。これらのN本の係数の内、SQ(スカラ量子化)の対象となる係数のインデクスの集合をISQ、VQ(ベクトル量子化)の対象となる係数のインデクスの集合をIVQとする。すなわち、量子化対象となる全ての係数のインデクスをISQとIVQとに分離することであり、
[0 ... N-1] = ISQ∪IVQ ,ISQ∩IVQ = 0
である。このSQとVQとの選択は、図3のSQ/VQ選択部22において、上記ビット配分ba'(i)に基づいて行われることは前述した通りである。
【0048】
先ず、i∈ISQについて、スカラ量子化を行う。スカラ量子化の符号帳(コードブック)は1つでも複数でもよいが、本具体例では量子化ビット数がそれぞれ2,3,4ビットのコードブックS2,S3,S4 を使用しており、どれを用いるかは上記ビット配分ba'(i)に基づいてSQコードブック選択部24により決定される。SQ(スカラ量子化)部25により量子化された出力Q(y(i)) は、0≦j<2ba'(j)において、|y(i)−Sba'(i)(j)|2 を最小にするj=SQindex を用いて、
y(i)=Sba'(i)(SQindex)
で与えられる。SQで得られた量子化結果をまとめてN次元ベクトルy SQを作る。このベクトルのi番目(0≦i<N)の要素ySQ(i) は、次の通りである。
【0049】
【数7】
【0050】
次にベクトル量子化(VQ)について説明する。上記インデクス集合IVQの要素数は毎フレーム変化するため、これだけをまとめてベクトル量子化しようとすると、次元数の調整が繁雑になり、必要なコードブックも要求される次元数毎に必要となるため、本具体例では、固定次元でN本全ての量子化を行う。ただし、既に上記スカラ量子化済みの係数については、ベクトル量子化の重みを0にすることで対処する。
【0051】
具体的な方法として、先ずN本の係数をM次元のサブベクトルに分割する。分割方法としては、例えば低域側から単純にM次元毎に区切っていくことが挙げられる。得られたN/M個のサブベクトルの内、k番目のサブベクトル
y k = (y(kM),y(kM+1),...,y(kM+M-1))t
について、先に求めてある重みベクトルも同じように分割し、w k を作る。ただし、w k のj番目の要素w k(j)は、次のように定める。
【0052】
【数8】
【0053】
上記SQの場合と同様に、VQの符号帳(コードブック)は、1つでも、複数を切り換えて使用することも可能である。先ず、サブベクトルy k 全体のビット割当Bykを図3のVQビット割当計算部23にて求める。一例として以下のような平均ビット割当が挙げられるが、これに限定されないことは勿論である。
【0054】
【数9】
【0055】
上記Bykが与えられたとき、L個のコードブック(C0,C1,...,CL-1) の中のどのコードブックを用いるかのマッピングルールを決めておき、これによりサブベクトルy k の量子化に使用するコードブックCr を選択する。このコードブック選択は、図3のVQコードブック選択部26にて行われる。
【0056】
選択されたコードブックCr について、ビット配分をBr とするとき、0≦m<2Brの範囲で‖Wk(yk-Cr(m))‖2を最小とするm=VQindex をサーチすることで、VQ(ベクトル量子化)部27から、乗算器28を介して得られる量子化出力Q(y k) は次のように表現できる。
【0057】
【数10】
【0058】
乗算器28では、この式のマトリクスAをVQ部27からの出力に対して乗算している。
【0059】
ベクトル量子化で得られたM次元の量子化出力Q(y k) (0≦k≦ N/M)を上記分割時とは逆に繋ぎ合わせ、N次元ベクトルQ(y)VQを作り、加算器29で上記スカラ量子化出力Q(y)SQと足し合わせることにより、N本の係数yに対する最終的な量子化器の出力Q(y)を、
Q(y) = Q(y)SQ + Q(y)VQ
として得ることができる。
【0060】
ここで留意すべき点は、量子化において重みを決定するパラメータを伝送することにより、エンコーダと同一な動作を復元できるという点であり、すなわち、上記ビット配分ba'(i)のみから、SQ対象の係数インデクス(位置情報)、SQ及びVQにおいてどのコードブックを選択するか、を決定できるため、デコーダ側では補助情報なしにエンコーダ出力の解釈、逆量子化が可能である。
【0061】
次に、図4を参照しながら、上記実施の形態のより具体的な構成例であるオーディオ信号符号装置について説明する。
【0062】
この図4において、入力端子10には、例えば、0〜8kHz程度のいわゆる広帯域音声信号をサンプリング周波数Fs =16kHzでA/D変換したディジタルオーディオ信号が供給されている。この入力信号は、LPC分析・量子化部30により、例えば1フレーム512サンプル程度の分析長によりハミング窓かけをした上で、10次程度のLPC係数、すなわちαパラメータを算出し、LPC逆フィルタ11によりLPC残差を求めている。このLPC分析の際には、分析の単位となる1フレーム512サンプルの内の一部サンプルを次のブロックとオーバーラップさせている。このLPC分析・量子化部30では、LPC係数であるαパラメータをLSP(線スペクトル対)パラメータに変換して量子化したものを伝送するようにしている。
【0063】
LPC分析回路32からのαパラメータは、α→LSP変換回路33に送られて、線スペクトル対(LSP)パラメータに変換される。これは、直接型のフィルタ係数として求まったαパラメータを、例えば10個、すなわち5対のLSPパラメータに変換する。変換は例えばニュートン−ラプソン法等を用いて行う。このLSPパラメータに変換するのは、αパラメータよりも補間特性に優れているからである。
【0064】
α→LSP変換回路33からのLSPパラメータは、LSP量子化器34によりベクトル量子化あるいはマトリクス量子化される。このとき、フレーム間差分をとってからベクトル量子化、あるいは、複数フレーム分をまとめてマトリクス量子化してもよい。
【0065】
このLSP量子化器34からの量子化出力、すなわちLSPベクトル量子化のインデクスは、端子31を介して取り出され、また量子化済みのLSPベクトルあるいは逆量子化出力は、LSP補間回路36及びLSP→α変換回路38に送られる。
【0066】
LSP補間回路36は、LSP量子化器34で上記フレーム毎にベクトル量子化されたLSPのベクトルの前フレームと現フレームとの組を補間し、後の処理で必要となるレートにするためのものであり、この例では、8倍のレートに補間している。
【0067】
このような補間が行われたLSPベクトルを用いて入力音声の逆フィルタリングを実行するために、LSP→α変換回路37により、LSPパラメータを例えば10次程度の直接型フィルタの係数であるαパラメータに変換する。このLSP→α変換回路37からの出力は、上記LPC残差を求めるためのLPC逆フィルタ回路11に送られ、このLPC逆フィルタ11では、8倍のレートで更新されるαパラメータにより逆フィルタリング処理を行って、滑らかな出力を得るようにしている。
【0068】
また、LSP量子化回路34からの1倍レートのLSP係数は、LSP→α変換回路38に送られてαパラメータに変換され、上述したようなビット割当を行わせるための割当ビット計算回路18に送られる。割当ビット計算回路18では、上記割当ビットba'(i)の他に、MDCT係数の量子化に使用する重みw(i) の計算も行うことは上述の通りである。
【0069】
LPC逆フィルタ11からの出力は、長期予測であるピッチ予測のためのピッチ逆フィルタ12及びピッチ分析回路15に送られる。
【0070】
次に、長期予測について説明する。長期予測は、ピッチ分析により求められたピッチ周期あるいはピッチラグ分だけ時間軸上でずらした波形を元の波形から減算してピッチ予測残差を求めることにより行っており、この例では3点ピッチ予測によって行っている。なお、ピッチラグとは、サンプリングされた時間軸データのピッチ周期に対応するサンプル数のことである。
【0071】
すなわち、ピッチ分析回路15では1フレームに1回の割合、すなわち分析長が1フレームでピッチ分析が行われ、ピッチ分析結果の内のピッチラグはピッチ逆フィルタ12及び出力端子42に送られ、ピッチゲインはピッチゲインVQ回路16に送られる。ピッチゲインVQ回路16では、上記3点予測に対応する3点でのピッチゲインがベクトル量子化され、コードブックインデクスが出力端子43より取り出され、代表値ベクトルあるいは逆量子化出力がピッチ逆フィルタ12に送られる。ピッチ逆フィルタ12は、上記ピッチ分析結果に基づいて3点ピッチ予測されたピッチ予測残差を出力する。このピッチ予測残差は、直交変換手段である例えばMDCT回路13に送られ、MDCT処理された後、上述したSQ及びVQ回路20によりスカラ量子化及び聴覚重み付けベクトル量子化される。バークピーク抽出・量子化回路17は、上述したように、T/F変換であるMDCT処理された係数について、臨界帯域幅(バーク)毎、あるいは臨界帯域幅をさらに細かくブロック分けし、各ブロックのピーク値を取り出して量子化するものであり、この量子化値は当該ブロックの正規化ファクタとして割当ビット計算回路18に送られると共に、出力端子44を介して取り出される。
【0072】
SQ及びVQ回路20では、上述したように、割当ビット計算回路18からのビット割当ba'(i)によりSQとVQとが選択制御され、MDCT係数の一部に対してスカラ量子化が施され、残りの係数に対して上記VQ重みw(i) により聴覚重み付けされたベクトル量子化が施され、その出力であるインデクスは、出力端子41より取り出される。
【0073】
ところで、上述した具体例においては、先にスカラ量子化(SQ)された係数以外の係数に対してベクトル量子化(VQ)を行うようにしている(実際にはSQされた係数の重みを0にしてVQしている)が、既にSQ済みの係数の量子化誤差と、予めVQの対象となっている係数とをまとめてVQするようにしてもよい。
【0074】
これは、例えばSQ済みの係数をq(y)SQとするとき、
u = y−q(y)SQ
となるベクトルuを作り、このベクトルuをサブベクトルu k (=uk(0),uk(1),...,uk(M-1)) 、すなわち
uk(j) = y(kM+j)−Q(y(kM-j))SQ
に分割した上で、上述したVQの手順で量子化を行えばよい。このVQの際の重みwk(j)は、単純に、
wk(j) = w(kM+j)
としてベクトル量子化を行い、その量子化結果Q(u)から、最終結果Q(y)は、
Q(y) = Q(u)+Q(y)VQ
として得られる。
【0075】
以上の説明においては、スカラ量子化を行った後にベクトル量子化を行う例について説明したが、逆に、先に周波数軸上の係数の全てに対してベクトル量子化を施し、その中で量子化誤差の大きいものについて重点的にスカラ量子化を施すようにしてもよい。
【0076】
すなわち例えば、上記T/F変換された周波数軸上の係数yを分割して得られるサブベクトルy k の全てに対して、先ずベクトル量子化を行う。このときの重みwk(j)は、単純に、
wk(j) = w(kM+j)
としてベクトル量子化を行う。この量子化結果を繋ぎ合わせてQ(y)VQを作り、量子化誤差ベクトル
e = y−Q(y)VQ
を作る。eの要素において、何らかの方法により、例えば誤差値のソートにより、誤差量の大きいものを所定個数選び出す。あるいは、重みwからその値の大きい所定個数のものに対応する誤差を選び出す。スカラ量子化では、選択された誤差そのものを量子化する。
【0077】
ただしこの方法では、どの係数をSQしたかの付加情報(side information)を別に伝送することが必要とされる。
【0078】
なお、本発明は上記実施の形態のみに限定されるものではなく、例えば、上記ベクトル量子化は、与えられた量子化対象ベクトルをインターリーブして複数のサブベクトルに分割し、これらのサブベクトルに対して行うようにしてもよい。これは、VQ対象ベクトルである周波数軸の係数を低域側から順次1個ずつ複数のサブベクトルに振り分けるものであり、1つのサブベクトル内の係数が周波数軸の所定帯域近傍に偏ることがない。
【0079】
【発明の効果】
以上の説明から明らかなように、本発明によれば、入力信号に対して時間軸/周波数軸変換を行って得られた周波数軸上の係数のビット割当に応じてスカラ量子化とベクトル量子化とを制御して上記係数の量子化を行うことにより、ベクトル量子化による低レート化を図りながら、ベクトル量子化で量子化誤差の生じ易い一部の係数についてはスカラ量子化することで劣化を防止できる。また、ビット割当に応じてスカラ量子化とベクトル量子化との制御を行っているため、別個に付加情報(side information)を送る必要がない。
【0080】
ここで、周波数軸の係数の割当ビット数が所定の閾値以上の係数についてスカラ量子化を施すことにより、ベクトル量子化では信号劣化が生じていた孤立スペクトル部分をスカラ量子化することで量子化誤差を低減でき、信号品質を高めることができる。
【0081】
このとき、スカラ量子化により量子化された係数については該係数に対する重みを0にして、全ての係数に対してベクトル量子化を施すことにより、スカラ量子化された係数以外の係数を取り出してベクトル量子化する場合に比較して、ベクトル量子化の次元数を固定でき、ベクトル量子化の際の次元数の調整や次元毎に異なる符号帳が不要となるため、処理の簡略化や構成の簡素化が図れる。これは、スカラ量子化により量子化された係数については該係数の量子化誤差をベクトル量子化への入力とすることでも実現できる。
【0082】
また、入力ベクトルを複数のサブベクトルに分割した上でベクトル量子化を行うことで、ベクトル量子化の符号帳サイズを小さくでき負担を軽減できる。
【0083】
さらに、予め特徴抽出により正規化した時間軸信号を入力信号として上記時間軸/周波数軸変換を行い、この正規化の際のパラメータを用いて上記割当ビットを計算することにより、スカラ量子化(SQ)とベクトル量子化(VQ)との選択制御が、正規化の際のパラメータを用いて一意的に決定でき、SQ/VQの制御のための専用の付加情報を伝送する必要がなく、伝送ビットレートの増加を防止できる。
【図面の簡単な説明】
【図1】本発明の実施の形態の概略構成を示すブロック図である。
【図2】本発明の実施の形態の動作を説明するためのフローチャートである。
【図3】SQ(スカラ量子化)及びVQ(ベクトル量子化)を行う部分の具体例を示すブロック図である。
【図4】本発明の実施の形態が適用されたオーディオ信号の符号化装置の一例を示すブロック図である。
【符号の説明】
11 LPC逆フィルタ、 12 ピッチ逆フィルタ、 13 MDCT回路、 15 ピッチ分析回路、 16 ピッチゲインVQ回路、 17 バークピーク抽出・量子化回路、 18 割当ビット計算回路、 22 SQ及びVQ選択部、 23 VQビット割当計算部、 24 SQコードブック選択部、 25 SQ(スカラ量子化)部、 26 VQコードブック選択部、 27 VQ(ベクトル量子化)部、 29 加算器、 30 LPC分析・量子化部、 32 LPC分析回路、 33 α→LSP変換回路、 34 LSP量子化回路、 36 LSP補間回路、 37,38 LSP→α変換回路
Claims (6)
- 入力オーディオ信号に対して時間軸/周波数軸変換を行う工程と、
上記時間軸/周波数軸変換により得られた周波数軸上の係数のビット割当に応じてスカラ量子化とベクトル量子化とを制御して上記係数の量子化を行う量子化工程とを有する信号符号化方法であって、
上記量子化工程は、上記ビット割当の割当ビット数が所定の閾値以上の係数についてスカラ量子化を施し、
上記量子化工程は、上記スカラ量子化により量子化された係数については該係数に対する重みを0にしてベクトル量子化を施し、ベクトル量子化出力の内の上記スカラ量子化により量子化された係数に対応する出力を無効にして上記スカラ量子化の出力と置き換えて出力する、または、
上記量子化工程は、上記スカラ量子化により量子化された係数については該係数の量子化誤差をベクトル量子化への入力とし、ベクトル量子化出力と上記スカラ量子化の出力とを加算して出力する
ことを特徴とする信号符号化方法。 - 上記ベクトル量子化は、入力ベクトルを複数のサブベクトルに分割した上で行い、それぞれのサブベクトルに対するビット割当により複数の符号帳を切り換えて使用することを特徴とする請求項1記載の信号符号化方法。
- 予め特徴抽出により正規化した時間軸信号を入力信号として上記時間軸/周波数軸変換を行い、この正規化の際のパラメータを用いて上記割当ビットを計算することを特徴とする請求項1記載の信号符号化方法。
- 上記ベクトル量子化は、入力ベクトルをインターリーブして得られる複数のサブベクトルに対して行うことを特徴とする請求項1記載の信号符号化方法。
- 入力オーディオ信号に対して時間軸/周波数軸変換を行う時間軸/周波数軸変換手段と、
上記時間軸/周波数軸変換により得られた周波数軸上の係数のビット割当を求めるビット割当手段と、
このビット割当に応じてスカラ量子化とベクトル量子化とを制御して上記係数の量子化を行う量子化手段とを有し、
上記量子化手段は、上記ビット割当の割当ビット数が所定の閾値以上の係数についてスカラ量子化を施し、
上記量子化手段は、上記スカラ量子化により量子化された係数については該係数に対する重みを0にしてベクトル量子化を施し、ベクトル量子化出力の内の上記スカラ量子化により量子化された係数に対応する出力を無効にして上記スカラ量子化の出力と置き換えて出力する、または、
上記量子化手段は、上記スカラ量子化により量子化された係数については該係数の量子化誤差をベクトル量子化への入力とし、ベクトル量子化出力と上記スカラ量子化の出力とを加算して出力すること
を特徴とする信号符号化装置。 - 入力オーディオ信号に対して特徴抽出により正規化した時間軸信号を上記時間軸/周波数軸変換に送る正規化手段をさらに有し、
上記ビット割当手段は、上記正規化手段での正規化の際のパラメータを用いて上記割当ビットを計算すること
を特徴とする請求項5記載の信号符号化装置。
Priority Applications (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP07861697A JP3684751B2 (ja) | 1997-03-28 | 1997-03-28 | 信号符号化方法及び装置 |
TW087104406A TW403890B (en) | 1997-03-28 | 1998-03-24 | Signal coding method and apparatus |
SG1998000627A SG68656A1 (en) | 1997-03-28 | 1998-03-25 | Signal coding method and apparatus |
EP98302331A EP0868031B1 (en) | 1997-03-28 | 1998-03-26 | Signal coding method and apparatus |
KR10-1998-0010611A KR100513815B1 (ko) | 1997-03-28 | 1998-03-26 | 신호부호화방법및장치 |
DE69801536T DE69801536T2 (de) | 1997-03-28 | 1998-03-26 | Vorrichtung und Verfahren zur Signalcodierung |
US09/048,077 US6034632A (en) | 1997-03-28 | 1998-03-26 | Signal coding method and apparatus |
AU59697/98A AU5969798A (en) | 1997-03-28 | 1998-03-27 | Signal coding method and apparatus |
CN98109291A CN1124588C (zh) | 1997-03-28 | 1998-03-28 | 信号编码方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP07861697A JP3684751B2 (ja) | 1997-03-28 | 1997-03-28 | 信号符号化方法及び装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10268897A JPH10268897A (ja) | 1998-10-09 |
JP3684751B2 true JP3684751B2 (ja) | 2005-08-17 |
Family
ID=13666830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP07861697A Expired - Fee Related JP3684751B2 (ja) | 1997-03-28 | 1997-03-28 | 信号符号化方法及び装置 |
Country Status (9)
Country | Link |
---|---|
US (1) | US6034632A (ja) |
EP (1) | EP0868031B1 (ja) |
JP (1) | JP3684751B2 (ja) |
KR (1) | KR100513815B1 (ja) |
CN (1) | CN1124588C (ja) |
AU (1) | AU5969798A (ja) |
DE (1) | DE69801536T2 (ja) |
SG (1) | SG68656A1 (ja) |
TW (1) | TW403890B (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0966109B1 (en) | 1998-06-15 | 2005-04-27 | Matsushita Electric Industrial Co., Ltd. | Audio coding method and audio coding apparatus |
US6278385B1 (en) * | 1999-02-01 | 2001-08-21 | Yamaha Corporation | Vector quantizer and vector quantization method |
JP2003044098A (ja) * | 2001-07-26 | 2003-02-14 | Nec Corp | 音声帯域拡張装置及び音声帯域拡張方法 |
EP1513137A1 (en) * | 2003-08-22 | 2005-03-09 | MicronasNIT LCC, Novi Sad Institute of Information Technologies | Speech processing system and method with multi-pulse excitation |
JP2008170488A (ja) * | 2007-01-06 | 2008-07-24 | Yamaha Corp | 波形圧縮装置、波形伸長装置、プログラムおよび圧縮データの生産方法 |
ATE518224T1 (de) * | 2008-01-04 | 2011-08-15 | Dolby Int Ab | Audiokodierer und -dekodierer |
CN101521010B (zh) * | 2008-02-29 | 2011-10-05 | 华为技术有限公司 | 一种音频信号的编解码方法和装置 |
CN102985969B (zh) * | 2010-12-14 | 2014-12-10 | 松下电器(美国)知识产权公司 | 编码装置、解码装置和编码方法、解码方法 |
CN105948738B (zh) * | 2016-04-20 | 2018-11-02 | 宁夏锐盛明杰知识产权咨询有限公司 | 一种高强度陶瓷刀具及其制备方法 |
US20190051286A1 (en) * | 2017-08-14 | 2019-02-14 | Microsoft Technology Licensing, Llc | Normalization of high band signals in network telephony communications |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63268387A (ja) * | 1987-04-27 | 1988-11-07 | Toshiba Corp | 直交変換ベクトル、スカラ−混合量子化方式 |
US5136374A (en) * | 1990-04-03 | 1992-08-04 | At&T Bell Laboratories | Geometric vector quantization |
US5128757A (en) * | 1990-06-18 | 1992-07-07 | Zenith Electronics Corporation | Video transmission system using adaptive sub-band coding |
CA2088082C (en) * | 1992-02-07 | 1999-01-19 | John Hartung | Dynamic bit allocation for three-dimensional subband video coding |
JP3273455B2 (ja) * | 1994-10-07 | 2002-04-08 | 日本電信電話株式会社 | ベクトル量子化方法及びその復号化器 |
GB9422738D0 (en) * | 1994-11-10 | 1995-01-04 | Univ Western Ontario | Context-based, adaptive, progressive, lossless compression of still continuous -tone images |
-
1997
- 1997-03-28 JP JP07861697A patent/JP3684751B2/ja not_active Expired - Fee Related
-
1998
- 1998-03-24 TW TW087104406A patent/TW403890B/zh not_active IP Right Cessation
- 1998-03-25 SG SG1998000627A patent/SG68656A1/en unknown
- 1998-03-26 KR KR10-1998-0010611A patent/KR100513815B1/ko not_active IP Right Cessation
- 1998-03-26 EP EP98302331A patent/EP0868031B1/en not_active Expired - Lifetime
- 1998-03-26 DE DE69801536T patent/DE69801536T2/de not_active Expired - Fee Related
- 1998-03-26 US US09/048,077 patent/US6034632A/en not_active Expired - Fee Related
- 1998-03-27 AU AU59697/98A patent/AU5969798A/en not_active Abandoned
- 1998-03-28 CN CN98109291A patent/CN1124588C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
AU5969798A (en) | 1998-10-01 |
DE69801536T2 (de) | 2002-05-08 |
DE69801536D1 (de) | 2001-10-11 |
EP0868031A1 (en) | 1998-09-30 |
CN1124588C (zh) | 2003-10-15 |
JPH10268897A (ja) | 1998-10-09 |
EP0868031B1 (en) | 2001-09-05 |
US6034632A (en) | 2000-03-07 |
CN1197975A (zh) | 1998-11-04 |
TW403890B (en) | 2000-09-01 |
SG68656A1 (en) | 1999-11-16 |
KR100513815B1 (ko) | 2005-12-06 |
KR19980080742A (ko) | 1998-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6484140B2 (en) | Apparatus and method for encoding a signal as well as apparatus and method for decoding signal | |
CA2179228C (en) | Method and apparatus for reproducing speech signals and method for transmitting same | |
CA2524243C (en) | Speech coding apparatus including enhancement layer performing long term prediction | |
KR101143724B1 (ko) | 부호화 장치 및 부호화 방법, 및 부호화 장치를 구비한 통신 단말 장치 및 기지국 장치 | |
JP4662673B2 (ja) | 広帯域音声及びオーディオ信号復号器における利得平滑化 | |
JP3391686B2 (ja) | 符号化されたオーディオ信号を復号する方法及び装置 | |
JPS6161305B2 (ja) | ||
JP2020077012A (ja) | 音声符号化装置、及び音声符号化方法 | |
JP3636094B2 (ja) | 信号符号化装置及び方法、並びに信号復号装置及び方法 | |
JP3684751B2 (ja) | 信号符号化方法及び装置 | |
JP2007504503A (ja) | 低ビットレートオーディオ符号化 | |
JP2645465B2 (ja) | 低遅延低ビツトレート音声コーダ | |
JPH07160297A (ja) | 音声パラメータ符号化方式 | |
JP4359949B2 (ja) | 信号符号化装置及び方法、並びに信号復号装置及び方法 | |
JP3357829B2 (ja) | 音声符号化/復号化方法 | |
JP3087814B2 (ja) | 音響信号変換符号化装置および復号化装置 | |
JP4281131B2 (ja) | 信号符号化装置及び方法、並びに信号復号装置及び方法 | |
JPH11504733A (ja) | 聴覚モデルによる量子化を伴う予測残余信号の変形符号化による多段音声符号器 | |
CN116052700A (zh) | 声音编解码方法以及相关装置、系统 | |
JP4618823B2 (ja) | 信号符号化装置及び方法 | |
JP3138574B2 (ja) | 線形予測係数補間装置 | |
JP3350340B2 (ja) | 音声符号化方法および音声復号化方法 | |
CN119152863A (zh) | 基于神经网络的音频编解码方法、装置、设备及存储介质 | |
JPH04243300A (ja) | 音声符号化方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041210 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050118 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050322 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050510 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050523 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080610 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090610 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090610 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100610 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |