JPWO2003071522A1 - Method for generating fixed excitation vector and fixed excitation codebook - Google Patents
Method for generating fixed excitation vector and fixed excitation codebook Download PDFInfo
- Publication number
- JPWO2003071522A1 JPWO2003071522A1 JP2003570338A JP2003570338A JPWO2003071522A1 JP WO2003071522 A1 JPWO2003071522 A1 JP WO2003071522A1 JP 2003570338 A JP2003570338 A JP 2003570338A JP 2003570338 A JP2003570338 A JP 2003570338A JP WO2003071522 A1 JPWO2003071522 A1 JP WO2003071522A1
- Authority
- JP
- Japan
- Prior art keywords
- vector
- excitation
- diffusion
- pulse
- sound source
- 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.)
- Granted
Links
- 239000013598 vector Substances 0.000 title claims abstract description 424
- 230000005284 excitation Effects 0.000 title claims abstract description 250
- 238000000034 method Methods 0.000 title claims description 49
- 238000009792 diffusion process Methods 0.000 claims abstract description 153
- 238000012545 processing Methods 0.000 claims abstract description 20
- 230000003044 adaptive effect Effects 0.000 claims description 30
- 230000008569 process Effects 0.000 claims description 19
- 230000015572 biosynthetic process Effects 0.000 claims description 17
- 238000013139 quantization Methods 0.000 claims description 17
- 230000007480 spreading Effects 0.000 claims description 17
- 238000003786 synthesis reaction Methods 0.000 claims description 17
- 238000005516 engineering process Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 23
- 230000005236 sound signal Effects 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 8
- 238000009499 grossing Methods 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000006872 improvement Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000001965 increasing effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 210000001260 vocal cord Anatomy 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Images
Classifications
-
- 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/04—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 predictive techniques
- G10L19/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/12—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
音声符号化側において、固定音源ベクトルの生成に関して、パルス音源ベクトル形状判定器302にてパルス音源符号帳301から出力された音源ベクトルの形状を判定し、その形状の音源ベクトルに適用される拡散ベクトルを、拡散ベクトル格納器304から出力し、拡散ベクトル畳込み処理器303にて音源ベクトルに拡散ベクトルを畳込み処理を行う。特に、パルス音源符号帳301から使用頻度が高い特定の形状を有するパルス音源ベクトルが出力された場合、パルス音源ベクトル形状判定器302は、当該パルス音源ベクトル専用に用意された追加拡散ベクトルを出力するように拡散ベクトル格納器304を制御する。これにより、復元音声の品質を向上させ、ユーザーにとってより自然で聞きやすい音声を復元できる技術を提供することができる。On the speech encoding side, regarding generation of a fixed excitation vector, a pulse excitation vector shape determiner 302 determines the shape of the excitation vector output from the pulse excitation codebook 301, and a diffusion vector applied to the excitation vector of that shape Is output from the diffusion vector storage 304, and the diffusion vector convolution processor 303 performs convolution processing of the diffusion vector on the sound source vector. In particular, when a pulse excitation vector having a specific shape that is frequently used is output from the pulse excitation codebook 301, the pulse excitation vector shape determiner 302 outputs an additional diffusion vector prepared exclusively for the pulse excitation vector. The diffusion vector store 304 is controlled as follows. As a result, it is possible to provide a technology capable of improving the quality of the restored voice and restoring the voice that is more natural and easy to hear for the user.
Description
技術分野
本発明は、CELP型音声符号化装置あるいはCELP型音声復号化装置に用いられる固定音源ベクトルの生成方法及び固定音源符号帳に関する。
背景技術
ディジタル移動通信や、インターネット通信に代表されるパケット通信、あるいは音声蓄積などの分野においては、電波などの伝送路容量や記憶媒体の有効利用のために音声情報を圧縮し、高能率で符号化するための音声符号化装置が用いられている。
中でもCELP(Code Excited Linear Prediction)方式をベースにした方式が中・低ビットレートにおいて広く実用化されている。パルス音源を駆動音源信号として用いるCELPの技術については、M.R.Schrocder and B.S.Atal:”Code−Excited Linear Prediction(CELP):High−quality Speech at Very Low Bit Rates”,Proc.ICASSP−85,25.1.1,pp.937−940,1985”に示されている。
CELP型音声符号化方式は、ディジタル化された音声信号を一定のフレーム長(5ms〜50ms程度)に区切り、フレーム毎に音声の線形予測を行い、フレーム毎の線形予測による予測残差(励振信号)を、既知の波形からなる適応符号帳と雑音(固定)符号帳とを用いて符号化するものである。
適応符号帳は、過去に生成した駆動音源信号を格納しており、音声信号の周期成分を表現するために用いられる。固定符号帳は予め用意された定められた数の定められた形状を有するベクトルを格納しており、適応符号帳では表現できない非周期的成分を主として表現するために用いられる。
固定符号帳に格納されるベクトルとしては、ランダムな雑音系列から成るベクトルや、何本かのパルスの組み合わせによって表現されるベクトルなどが用いられる。
数本のパルスの組み合わせによってベクトルを表現する固定符号帳の代表的なものの一つに代数的固定符号帳がある。代数的固定符号帳については「ITU−T勧告G.729」などに具体的内容が示されている。代数的固定符号帳は、少ない演算量で固定音源符号帳を探索でき、また、音源ベクトルを格納しておくROMの容量を減らすことができるといったメリットがある。しかし、その一方で、雑音成分の忠実な符号表現が困難であるという問題点もある。
この代数的固定符号帳の問題点を解決する方法の一つとして、パルス拡散符号帳を用いる技術がある。パルス拡散については、「ITU−T勧告G.729 Annex−D」等に開示されている。このパルス拡散は、音源ベクトルに、拡散パタン(固定波形)を畳み込んで固定音源ベクトルを生成する方法である。
図1は、従来のパルス拡散構造を有する固定音源符号帳の構成の一例を示すブロック図である。パルス拡散符号帳10は、パルス音源符号帳11と、拡散ベクトル畳込み処理器12と、拡散ベクトル格納器13とを具備する。
パルス音源符号帳11からパルス音源ベクトルが出力され、このパルス音源ベクトルに対して、拡散ベクトル格納器13から取り出された拡散ベクトルが拡散ベクトル畳込み処理器12において畳み込まれ、これにより、固定音源ベクトル(雑音音源ベクトル)が生成される。
従来のパルス拡散によって、例えば4kbit/s以下のような低ビットレートにおけるパルス音源符号帳の性能を改善することが可能である。
しかし、例えば、次世代の携帯電話システムでは、さらに大きな品質改善(すなわち、復元音声の品質をさらに向上させること)が求められており、既存の技術では、この要求を満足させることが困難である。
例えば、拡散ベクトルのパターンを単純に増大させても、その分だけ復元音声の品質が改善されるというものではないし、また、拡散ベクトルのパターンの増大は、メモリ容量の増大や信号処理の煩雑化を招く恐れがある。
発明の開示
本発明の目的は、音声の符号化側または復号化側において音声品質の改善を図って復元音声の品質をさらに向上させ、ユーザーにとってより自然で聞きやすい音声を復元することができる技術を提供することである。
この目的は、音声符号化側において、固定音源ベクトルの生成に関して、多数のパルス音源ベクトルの中から、例えば、使用頻度が高い特定の形状を有するパルス音源ベクトルを予め選び、選んだパルス音源ベクトルに対応する専用の拡散ベクトルを用意することにより達成される。
また、音声復号化側において、合成フィルタ(人間の声道を模した機能をもつ)に入力される前の、音源信号(人間の声帯で発せられる音声を模した信号)について、例えば、従来にない工夫された特性の高域強調処理を施すことにより達成される。
発明を実施するための最良の形態
以下、本発明の実施の形態について、図面を用いて説明する。
まず、本発明における音声信号送信装置および音声信号受信装置の全体構成の概略を、図2を用いて説明する。
図2において、音声信号101は入力装置102によって電気的信号に変換されA/D変換装置103に出力される。A/D変換装置103は入力装置102から出力された(アナログ)信号をディジタル信号に変換し音声符号化装置104へ出力する。音声符号化装置104はA/D変換装置103から出力されたディジタル音声信号を後述する音声符号化方法を用いて符号化し符号化情報をRF変調装置105へ出力する。RF変調装置105は音声符号化装置104から出力された音声符号化情報を電波等の伝播媒体に載せて送出するための信号に変換し送信アンテナ106へ出力する。送信アンテナ106はRF変調装置105から出力された出力信号を電波(RF信号)として送出する。なお、図中のRF信号107は送信アンテナ106から送出された電波(RF信号)を表す。以上が音声信号送信装置の構成および動作である。
RF信号108は受信アンテナ109によって受信されRF復調装置110へ出力される。なお、図中のRF信号108は受信アンテナ109に受信された電波を表し、伝播路において信号の減衰や雑音の重畳がなければRF信号107と全く同じ物となる。
RF復調装置110は受信アンテナ109から出力されたRF信号から音声符号化情報を復調し音声復号化装置111へ出力する。音声復号化装置111はRF復調装置110から出力された音声符号化情報から後述する音声復号化方法を用いて音声信号を復号しD/A変換装置112へ出力する。D/A変換装置112は音声復号化装置111から出力されたディジタル音声信号をアナログの電気的信号に変換し出力装置113へ出力する。
出力装置113は電気的信号を空気の振動に変換し音波として人間の耳に聴こえるように出力する。なお、図中、参照符号114は出力された音波を表す。以上が音声信号受信装置の構成および動作である。
上記のような音声信号送信装置および受信装置の少なくとも一方を備えることにより、移動通信システムにおける基地局装置および移動端末装置を構成することができる。
以下、音声符号化側における、拡散ベクトルを用いた固定音源ベクトルの生成の改善(実施の形態1)と、音声復号化側における高域強調処理(実施の形態2)について、順次、図面を参照して具体的に説明する。
(実施の形態1)
実施の形態1では、固定音源符号帳において、予め定められた形状のパルス音源ベクトルに使用される専用の拡散ベクトル(以下、「追加拡散ベクトル」という)を用意し、パルス音源ベクトルの形状に応じて最適な拡散ベクトルを適用する場合について説明する。
図3は、図2の音声信号送信装置に搭載されている音声符号化装置104の構成を示すブロック図である。
音声符号化装置104の入力信号は、A/D変換装置103から出力される信号であり、前処理部200に入力される。前処理部200は、DC成分を取り除くハイパスフィルタ処理や後続する符号化処理の性能改善につながるような波形整形処理やプリエンファシス処理を行い、これらの処理後の信号(Xin)をLPC分析部201および加算器204に出力する。
LPC分析部201は、Xinを用いて線形予測分析を行い、分析結果(線形予測係数)をLPC量子化部202へ出力する。LPC量子化部202は、LPC分析部201から出力された線形予測係数(LPC)の量子化処理を行い、量子化LPCを合成フィルタ203へ出力するとともに量子化LPCを表す符号Lを多重化部213へ出力する。
合成フィルタ203は、量子化LPCに基づくフィルタ係数により、後述する加算器210から出力される駆動音源に対してフィルタ合成を行うことにより合成信号を生成し、合成信号を加算器204へ出力する。
加算器204は前記Xinと前記合成信号との誤差信号を算出し、聴覚重み付け部211へ出力する。聴覚重み付け部211は、加算器204から出力された誤差信号に対して聴覚的な重み付けをおこない、聴覚重み付け領域での前記Xinと前記合成信号との歪みを算出し、パラメータ決定部212へ出力する。
パラメータ決定部212は、聴覚重み付け部211から出力された前記符号化歪みを最小とする適応音源ベクトル、固定音源ベクトル及び量子化利得を、各々適応音源符号帳205、固定音源符号帳207及び量子化利得生成部206から選択し、選択結果を示す適応音源ベクトル符号(A)、音源利得符号(G)及び固定音源ベクトル符号(F)を多重化部213に出力する。また、パラメータ決定部212は、固定音源符号帳207で選択されたパルス音源ベクトルの形状が予め設定された特定の形状のものである場合、当該ベクトル専用に用意された追加拡散ベクトルのセットの中から基本拡散ベクトルよりも量子化誤差を小さくする拡散ベクトルがあるかを調べ、最も量子化誤差を小さくする拡散ベクトルを基本拡散ベクトルと追加拡散ベクトルの中から選択し、選択結果を示す制御信号を固定音源符号帳207に出力する。
適応音源符号帳205は、過去に加算器210によって出力された駆動音源信号をバッファリングしており、パラメータ決定部212から出力された信号によって特定される過去の駆動音源信号サンプルから1フレーム分のサンプルを適応音源ベクトルとして切り出して乗算器208へ出力する。
量子化利得生成部206は、パラメータ決定部212から出力された信号によって特定される適応音源利得と固定音源利得とをそれぞれ乗算器208と209へ出力する。
固定音源符号帳207は、パラメータ決定部212から出力された信号によって特定される形状を有するパルス音源ベクトルに拡散ベクトルを乗算して得られた固定音源ベクトルを乗算器209へ出力する。この固定音源符号帳207の構成が本実施の形態の特徴的な部分であり、この特徴部分については、後に、具体的に説明する。
乗算器208は、量子化利得生成部206から出力された量子化適応音源利得を、適応音源符号帳205から出力された適応音源ベクトルに乗じて、加算器210へ出力する。
乗算器209は、量子化利得生成部206から出力された量子化固定音源利得を、固定音源符号帳207から出力された固定音源ベクトルに乗じて、加算器210へ出力する。
加算器210は、利得乗算後の適応音源ベクトルと固定音源ベクトルとをそれぞれ乗算器208と209から入力し、これらをベクトル加算し、加算結果である駆動音源を合成フィルタ203および適応音源符号帳205へ出力する。
多重化部213は、LPC量子化部202から量子化LPCを表す符号(L)を、パラメータ決定部212から適応音源ベクトルを表す符号(A)、固定音源ベクトルを表す符号(F)および量子化利得を表す符号(G)を、それぞれ入力し、これらの情報を多重化して符号化情報として伝送路へ出力する。
以上が音声符号化装置104の各構成部分の説明である。
次に、固定音源符号帳207の具体的構成及び特徴について図面を用いて説明する。
図4は、図3の固定音源符号帳207の構成を示すブロック図である。
図4において、パルス音源符号帳301はパルス音源ベクトルをパルス音源ベクトル形状判定器302および拡散ベクトル畳込み処理器303にそれぞれ出力する。
パルス音源ベクトル形状判定器302は、予め定められたベクトル形状をこのベクトル形状を特定するパラメータと関連付けてメモリに記憶する。ここで、パルス音源ベクトルが数本のパルスのみから構成される場合、これらの形状は、パルス間距離(何サンプル離れているか)とパルスの極性関係(異極性か同極性か)によって特定される。この場合、パルス間距離とパルスの極性関係がパラメータとなる。
そして、パルス音源ベクトル形状判定器302は、ベクトル形状パルス音源符号帳301から出力されたパルス音源ベクトルのパラメータと、記憶する各ベクトル形状のパラメータとを比較し、例えば、全てのパラメータが一致した場合、それらのベクトルは同一形状であると判定する。パルス音源ベクトルが数本のパルスのみから構成される場合、パルス音源ベクトル形状判定器302は、各パルス間の相対的な位置および極性の関係が同じであれば、それらのベクトルは同一形状であると判定する。なお、同じパルス間隔で同じパルス極性を有したベクトルを時間軸方向にシフトしたものやベクトルの大きさ(パルスの振幅)を定数倍したものなども同一形状のベクトルと判定する。
パルス音源ベクトル形状判定器302は、同一形状のベクトルが存在した場合、その形状のパルス音源ベクトル専用に設計した追加拡散ベクトルを出力するように拡散ベクトル格納器304へ制御信号を出力する。一方、パルス音源ベクトル形状判定器302は、同一形状のベクトルが存在しなかった場合、基本拡散ベクトルを出力するように拡散ベクトル格納器304へ制御信号を出力する。
拡散ベクトル格納器304は、すべてのパルス音源ベクトルに対して共通に使用される基本拡散ベクトルの他に、予め定められた形状のパルス音源ベクトルに使用される追加拡散ベクトルをメモリに記憶し、パラメータ決定部212からの制御信号及びパルス音源ベクトル形状判定器302からの制御信号によって、拡散ベクトル畳込み処理器303へ出力する拡散ベクトルを切り替える。すなわち、拡散ベクトル格納器304は、固定音源ベクトル形状判定器302によって判定されたパルス音源ベクトル形状に対応する拡散ベクトルを選択し、拡散ベクトル畳込み処理器303へ出力する。
拡散ベクトル畳込み処理器303は、パルス音源符号帳301から出力されたパルス音源ベクトルに対して、拡散ベクトル格納器304から取り出された拡散ベクトルを畳み込む。これにより、固定音源ベクトル(雑音音源ベクトル)が生成される。
このように、音源ベクトルの形状に応じて最適な拡散ベクトルの形状を選択し、これを畳み込むことにより、所定の拡散ベクトル(1種類もしくは複数種類の基本拡散ベクトル)を全てのパルス音源ベクトルに適用する場合に比べて符号化性能を改善することができる。
ここで、パルス音源ベクトル形状判定器302のメモリに記憶させるベクトル形状は何種類であっても良いが、使用頻度の高い特定形状の音源ベクトルについてのみ追加拡散ベクトルを用意することにより、追加拡散ベクトルの数を絞込み、追加拡散ベクトルを導入することにより生じるROM容量の増加を抑えることができる。
以下、パルス音源ベクトル形状判定器302のメモリに先験的に記憶させる使用頻度の高い特定形状の音源ベクトルの選定方法、及び、これに適用する追加拡散ベクトルの選定方法について具体的に説明する。
図5A、図5Bは、パルス音源符号帳301から出力されるパルス音源ベクトル(2本のパルスの場合)についての、各パルス間の距離と各パルスの極性をパラメータとした場合の使用頻度の分布を示す図であり、数時間の音声データを実際に符号化して集計したものである。図5Bは、図5Aを横軸方向に拡大した図であり、図5A、図5Bの横軸はパルス間距離(サンプル)を、縦軸はそのパルス間距離を有する音源ベクトルが使用された正規化使用頻度をそれぞれ示す。また、図5A、図5Bにおいて、原点は2パルスが重なり、1パルスの音源ベクトルであることを示し、原点の左側は異極性のパルスの組み合わせであることを、右側は同極性の組み合わせであることを、それぞれ表す。
なお、正規化使用頻度とは、各間隔のパルス音源ベクトルが使用された回数を各間隔のパルスの組み合わせ数で割った値であり、例えば、間隔が1サンプルの場合、第1パルスが1サンプルで第2パルスが2サンプル、同2サンプルと同3サンプル、など複数の組み合わせが存在する場合はパルス音源符号帳が生成しうる全ての組み合わせ数で正規化した頻度をいう。
図5A、図5Bから明らかように、使用頻度は、極性の組み合わせによらず、2パルス間の距離が2サンプル以内である音源ベクトルに集中する。
そこで、2パルス間の距離が2サンプル以内の音源ベクトル5種類(パルス間距離0、パルス間距離1で同極性パルス、パルス間距離1で異極性パルス、パルス間距離2で同極性パルス、パルス間距離2で異極性パルス)をパルス音源ベクトル形状判定器302のメモリに記憶させるものとして選定する。
次に、選定した各音源ベクトルについて、それぞれ専用の追加拡散ベクトルを学習によって設計する。
なお、拡散ベクトルの学習は、例えばK.Yasunaga et al,“Dispersed−pulse codebook and its application to a 4kb/s speech coder,”Proc.ICASSP2000,pp.1503−1506,2000の3.1節に示されているように、一般化Lloydアルゴリズムに基づいて行い、学習データに対する符号化歪の総和を最小化する拡散ベクトルを決定する。
図6〜図10は、設計された追加拡散ベクトルの一例を示す図で、各音源ベクトルに対して4種類ずつ追加拡散ベクトルを設計した例である。
図6は、パルス間距離が2サンプルでパルス極性が同極性である音源ベクトルについて、専用の拡散ベクトル4種類(A1〜A4)を割り当てていることを示している。同様に、図7は、パルス間距離が1サンプルで、パルス極性が同極性の音源ベクトルについて、4種類(B1〜B4)の追加拡散ベクトルが設けられていることを示す。以下同様に、図8、図9、図10は、それぞれ、パルス間距離0サンプルで同極性、パルス間距離1サンプルで異極性、パルス間距離2サンプルで異極性の音源ベクトルについて、4種類ずつの追加拡散ベクトルが設けられていることを示す。図6〜図10より明らかなように、5種類のパルス音源ベクトルに対して得られた追加拡散ベクトルの形状は互いに異なる特徴を有する。
なお、全ての音源ベクトルに対して共通の拡散ベクトルを用いて学習を行うと、これら異なる特徴を有する拡散ベクトルの平均的な形状を有するベクトルが得られてしまうので、性能改善にも限界がある。基本拡散ベクトルの一例を図11に示す。
また、図6〜図10では、各音源ベクトルについて、4種類の追加拡散ベクトルを割り当てることを前提として説明しているが、本発明はこれに限定されるものではない。例えば、図6〜図10に示される追加拡散ベクトルの数(種類)は1種類であっても良い。
また、図には示さないが、パルスが3本の場合でも、使用頻度が高い特定形状の音源ベクトル毎に別々の追加拡散ベクトルを設ける。
図12は、追加拡散ベクトルが図6〜図10に示したものである場合の拡散ベクトル格納器304の選択処理の内容を具体的に説明するための図である。
拡散ベクトル格納器304は、図12に示すように、複数の拡散ベクトルサブセット400〜405を備える。
拡散ベクトルサブセット400は、基本拡散ベクトルを出力する端子X0を備え、スイッチ406を介して基本拡散ベクトルを拡散ベクトル畳込み処理器303に出力する。
拡散ベクトルサブセット401は、図6に示した4つの追加拡散ベクトルを出力する端子A1〜A4と基本拡散ベクトルを出力する端子A0とを備え、5種類の拡散ベクトルA0〜A4の中からパラメータ決定部212によって決定された拡散ベクトルをスイッチ407で1つ選び、スイッチ406を介して拡散ベクトル畳込み処理器303に出力する。
同様に、拡散ベクトルサブセット402〜405は、それぞれ、図7〜図10に示した4つの追加拡散ベクトルを出力する端子B1〜B4、C1〜C4、D1〜D4、E1〜E4と基本拡散ベクトルを出力する端子B0、C0、D0、E0とを備え、パラメータ決定部212によって決定された拡散ベクトルをスイッチ408、409、410、411で1つ選び、スイッチ406を介して拡散ベクトル畳込み処理器303に出力する。
なお、図12において、端子X0、A0、B0、C0、D0、E0から出力される基本ベクトルは同一のものである。
拡散ベクトルサブセット400〜405の切替えを行うスイッチ406は、パルス音源符号帳301から出力されてくるパルス音源ベクトルの形状によって、パルス音源ベクトル形状判定器302の制御に基づいて切り替わる。即ち使用頻度の高い特定の形状のパルス音源ベクトルがパルス音源符号帳301からパルス音源ベクトル形状判定器302へ入力されると、その形状のパルス音源ベクトルに対応する拡散ベクトルサブセット401〜405の出力端子にスイッチ406が接続される。なお、特定の形状ではないパルス音源ベクトルがパルス音源符号帳301からパルス音源ベクトル形状判定器302へ入力されると、拡散ベクトルサブセット400の出力端子にスイッチ406が接続される。
スイッチ407〜411は、各拡散ベクトルサブセット401〜405に具備された5種類の拡散ベクトルの中からパラメータ決定部212によって決定された拡散ベクトルを出力する端子に接続する。
以上の構成により、パルス音源ベクトル形状判定器302に記憶されたものと同一の音源ベクトルが固定音源符号帳301から出力された場合は、4種類の追加拡散ベクトルと基本拡散ベクトルの5種類の中から最適なものが1つ選ばれる。
なお、図12では、追加拡散ベクトルを備えた拡散ベクトルサブセットは5つであるが、本発明では拡散ベクトルサブセットの数に制限はなく、使用頻度の高いパルス音源ベクトルのパターン数に応じて適宜増減させることができる。また、各拡散ベクトルサブセットに備えられている追加拡散ベクトルは4種類であるが、本発明では追加拡散ベクトルの数に制限はない。
以上説明した処理の重要な部分の手順を図13に示す。図13は、図4に示した固定音源符号帳探索の処理フローを示すフローチャートである。
まず、ST501で基本拡散ベクトルを用いたパルス音源探索が行われる。基本拡散ベクトルにインパルス(即ち拡散なし)を用いても良い。具体的な探索方法は、例えば、特開平10−63300号公報(第17段落(従来技術)および第51〜54段落)、K.Yasunaga et al,“Dispersed−pulse codebook and its application to a 4kb/s speech coder,”Proc.ICASSP2000,pp.1503−1506,2000の2.2節に開示されている。
次に、ST502においてST501にて選択されたパルス音源ベクトルが予め定められた特定の形状のパラメータ(パルス位置、極性の組み合わせ)を有しているかどうかをチェックする。
これらの特定の形状とは、パルス音源符号帳から生成されるパルス音源ベクトルのうち、固定音源ベクトルとして使用される(探索の結果選択される)頻度が高いベクトルの形状のことを指す。
すなわち、より具体的には、例えば2パルス音源では、パルス間距離が1サンプル(例えば11サンプル目と12サンプル目に音源パルスが立てられている)でパルス極性が異符号である形状や、パルス間距離が2サンプル(例えば20サンプル目と22サンプル目に音源パルスが立てられている)でパルス極性が同符号である形状等が使用頻度の高いベクトルである。
このような特定の形状を有する音源ベクトルではない場合はST501で選択されたパルス音源ベクトルに基本拡散ベクトルを畳み込んだものを固定音源ベクトルとして使用する。
即ち図12のスイッチ406は拡散ベクトルサブセット400の端子X0に接続される。もし、ST501で選択されたパルス音源ベクトルが、特定の形状を有するベクトルである場合は、ST503へ進む。
ST503では、特定の形状を有するベクトル専用に用意された拡散ベクトルサブセット(図12の拡散ベクトルサブセット401〜405)の追加拡散ベクトルの中から基本拡散ベクトルよりも量子化誤差を小さくする拡散ベクトルがあるかを調べ、最も量子化誤差を小さくする拡散ベクトルを基本拡散ベクトルと追加拡散ベクトルの中から選択する。なお、どの追加拡散ベクトルを含む拡散ベクトルサブセットを用いるかはパルス音源ベクトル形状判定器302によって決められる。
そして、ST501で選択されたパルス音源ベクトルにST502あるいはST503で選択された拡散ベクトルを畳み込んだものを固定音源符号ベクトルとして選択する。
このように、ある使用頻度の高い特定の形状を有するパルス音源ベクトルに対してのみ複数の追加拡散ベクトルを専用に用意する構成は、情報量の増加が少なくて済み、パルス音源符号帳によっては(使用されていないコードが存在するようなパルス音源符号帳では)ビット数の増加なしに実現できる場合もあり、実現が容易である。
ここで、上記の方法で生成される固定音源符号帳の符号化及び復号化について具体例を用いて説明する。例として、80サンプルに2パルス立てる場合を考える。なお、2本のパルスをパルス1およびパルス2とし、双方とも80サンプル中の任意の1サンプルに立てることができるものとし、パルス1とパルス2を同じ1サンプルに重ねて立てることも許容する。この場合、パルス振幅はパルス1とパルス2の振幅を加算したものとなり、両パルスの振幅が1であれば振幅2の1本のパルスとなる。2本のパルスが異なるサンプルに立てられる場合、その組み合わせは80C2=3160通りである。2本のパルスの極性関係は同極性と異極性の2通りあるので、パルス音源ベクトルの形状は3160×2=6320通りとなる。これに2本のパルスが重なって1本になる場合が80通り加わり、パルス音源ベクトルの形状は合計6400種類存在する。最後にパルス音源ベクトル全体の極性が2通りあるため、符号化されるパルス音源ベクトルは6400×2=12800通り(<14ビット)となる。
そして、パルス1よりパルス2が後ろにある場合には2本のパルスは異極性、パルス1とパルス2が同じ位置かパルス2の方が前にある場合には2本のパルスは同極性として、パルス1の極性を1ビットで表現することにより12800通りのベクトルを14ビットで表現することができる。
以下、14ビットのコードで前記固定符号帳を表す方法を説明する。なお、このような符号化方法は、例えば3GPP標準規格のAMR符号化(3GPP TS 26.090、同26.073、同26.104)等に開示されている。
まず、パルス音源探索を行い、パルス1とパルス2の位置および極性を決定する。次に、パルス1とパルス2の位置関係を調べる。ここで、パルス1よりもパルス2が後方にある場合は、パルス1とパルス2の極性関係が異極性であるかどうか調べ、異極性でない場合はパルス1とパルス2の位置を入れ替える。逆に、パルス1とパルス2が同じ位置かパルス2の方が前にある場合は、パルス1とパルス2の極性関係が同極性であるかどうかを調べ、同極性でない場合はパルス1とパルス2の位置を入れ替える。
このようにして決定されたパルス1とパルス2を以下の様にして符号化する。14ビットをビット0〜13(ビット0が最下位ビット)とする。最上位ビットのビット13(=S)をパルス1の極性を表す1ビットとし、正の場合は1、負の場合は0とする。
次に、2本のパルスの位置の組み合わせがコード化される。例えば、パルス1の位置をp1、パルス2の位置をp2とすれば、コードCFは、CF=p1×80+p2としてコード化される。このようにして得られたCFは0〜6399である。これをビット0〜12の13ビット(0〜8191)で表現する。この結果、残りの6400〜8191に追加拡散ベクトルを適用した固定符号ベクトルを割り当てることができる。
追加拡散ベクトルは、
(1)パルス1とパルス2の距離が2サンプルで同極性(78通り)
(2)パルス1とパルス2の距離が1サンプルで同極性(79通り)
(3)パルス1とパルス2の距離が0サンプルで同極性(80通り)
(4)パルス1とパルス2の距離が1サンプルで異極性(79通り)
(5)パルス1とパルス2の距離が2サンプルで異極性(78通り)
の5種類の形状のパルス音源ベクトルそれぞれに追加拡散ベクトルを4種類ずつ割り当てられるとすれば、(1)には78×4=312なので6400〜6711、(2)には79×4=316なので6712〜7027、(3)には80×4=320なので7028〜7347、(4)には79×4=316なので7348〜7663、(5)には78×4=312なので7664〜7975、のコードをそれぞれ割り当てることが可能である。具体的には、探索処理によって選択された追加拡散ベクトルの番号をdv(=0〜3)とすると、
パルス音源ベクトル形状判定器で
(1)と判定された場合は
CF=6400+78×dv+(p1−2), (2≦p1≦79)、
(2)と判定された場合は
CF=6712+79×dv+(p1−1), (1≦p1≦79)、
(3)と判定された場合は
CF=7028+80×dv+(p1), (0≦p1≦79)、
(4)と判定された場合は
CF=7348+79×dv+(p1), (0≦p1≦78)、
(5)と判定された場合は
CF=7664+78×dv+(p1), (0≦p1≦77)、
というようにしてコードCFを生成する。
最後に極性ビットを最上位につけて、送信コードFを生成する(F=S×8192+CF)。
以上の様にしてパルス1の位置p1と極性s1、パルス2の位置p2と極性s2、そして、適用する拡散ベクトル情報を符号化する。
次に、送信コードFを受信した復号器の復号化について説明する。復号器においては、以下のような手順で2本のパルス位置(p1、p2)と極性(s1、s2)を復号する。
まず、受信コードFから極性情報Sを復号する。
S=((F>>13)&1)×2−1 (Sは−1または+1となる)
次に、パルス位置情報コードCFを復号する。
CF=F&Ox1FFF
次に、CFの値により、以下のように処理を切替える。
(1)CFが6400未満の場合
p2=CF%80、p1=(CF−p2)÷80
s1=S、s2=−S(p2>p1の場合),=+S(p2≦p1の場合)
拡散ベクトルは基本拡散ベクトルを用いる。
(2)CFが6400以上6712未満の場合
p1=(CF−6400)%78+2、p2=p1−2、s1=s2=S
サブセット1(図6)のdv番目の追加拡散ベクトルを用いる。
dv=((CF−6400)−(p1−2))÷78
(3)CFが6712以上7028未満の場合
p1=(CF−6712)%79+1、p2=p1−1、s1=s2=S
サブセット2(図7)のdv番目の追加拡散ベクトルを用いる。
dv=((CF−6712)−(p1−1))÷79
(4)CFが7028以上7348未満の場合
p1=(CF−7028)%80、p2=p1、s1=s2=S
サブセット3(図8)のdv番目の追加拡散ベクトルを用いる。
dv=((CF−7028)−p1)÷80
(5)CFが7348以上7664未満の場合
p1=(CF−7348)%79、p2=p1+1、s1=S、s2=−S
サブセット4(図9)のdv番目の追加拡散ベクトルを用いる。
dv=((CF−7348)−p1)÷79
(6)CFが7664以上7975未満の場合
p1=(CF−7664)%78、p2=p1+2、s1=S、s2=−S
サブセット5(図10)のdv番目の追加拡散ベクトルを用いる。
dv=((CF−7664)−p1)÷78
以上の様にしてパルス1の位置p1と極性s1、パルス2の位置p2と極性s2、そして、適用する拡散ベクトル情報を復号する。
図14は、固定音源符号帳の他の構成を示すブロック図である。
図14の固定音源符号帳207は、2つの固定音源符号帳のサブセット608、609を有する。第1の固定音源符号帳のサブセット608は、第1のパルス音源符号帳601、拡散ベクトル格納器602及び拡散ベクトル畳込み処理器603の3つのブロックから構成される。第1のパルス音源符号帳601は所定のパルス音源ベクトル(例えば2本のパルスから成るベクトル)を生成する音源符号帳である。拡散ベクトル格納器602はパルス音源符号帳601専用に設計した拡散ベクトルを格納する格納器である。拡散ベクトル畳込み処理器603は、第1のパルス音源符号帳601から出力されたパルス音源ベクトルに拡散ベクトル格納器602から出力された拡散ベクトルを畳み込む畳込み処理器である。
同様に、第2の固定音源符号帳サブセット609が第2のパルス音源符号帳604(例えば第2のパルス音源符号帳604は第1のパルス音源符号帳601と異なり、3本や5本のパルスから成るパルス音源ベクトルを生成する)、拡散ベクトル格納器605及び拡散ベクトル畳込み処理器606の3つのブロックから構成される。
ここで、各固定音源符号帳サブセット内の拡散ベクトル格納器はそれぞれのサブセットのパルス音源符号帳専用に設計されておりサブセット間で異なる拡散ベクトルを格納している。
なお、本実施の形態においては、固定音源符号帳のサブセット数は2としたが、本発明ではその数に制限はなく、3以上でも同様の効果が得られる。
また、各サブセット内のパルス音源符号帳は、音源ベクトルに含まれる音源パルス数が異なっても良いし、音源パルスのパターン(例えばある音源パルス符号帳は互いに接近した音源パルスの組み合わせのみを生成し、別の音源パルス符号帳は互いに離れた音源パルスの組み合わせのみを生成するようにするなど)が異なっていても良い。
いずれにしても、サブセット毎に異なる特性・特徴を有する音源ベクトルが生成されるようになっていると性能改善度が高い。切替スイッチ607は、拡散ベクトル畳込み処理器603あるいは拡散ベクトル畳込み処理器606から出力される固定音源ベクトルのうち、いずれか一方を選択するためのスイッチである。
この固定音源符号帳は、パラメータ決定部212から入力される信号(F)で特定される固定音源ベクトルを、第1の固定音源符号帳サブセット608または第2の固定音源符号帳サブセット609により生成し、スイッチ607を介して固定音源ベクトルとして出力する。
図15は、図14の固定音源符号帳を探索する場合の処理手順を示すフローチャートである。
まず、ST701において第1の固定音源符号帳サブセット探索が行われ、量子化誤差を最小とする固定音源ベクトルが選択される。
次に、ST702において第2の固定音源符号帳サブセット探索が行われ、ST701において選択された固定音源ベクトルよりもさらに量子化誤差を小さくする固定音源ベクトルがあればそれを最終的な固定音源ベクトルとして選択する。
なお、ST701とST702は、異なる固定音源符号帳に対して異なる拡散ベクトルが適用されている点が異なるのみで、具体的探索方法は前述した従来技術と同一である。前記異なる固定音源符号帳は、互いに生成される音源符号ベクトルの特徴が異なる(例えば音源パルス数が異なる)ように用意される。
例えば、第1の固定音源符号帳サブセットは音源パルス2本から構成される音源ベクトルを生成し、第2の固定音源符号帳サブセットは音源パルス5本から生成される固定音源ベクトルを生成する、というように音源パルス本数が異なる固定音源符号帳サブセットを用意する。あるいは、第1の固定音源符号帳サブセットは音源パルス同士が接近した組み合わせの固定音源ベクトルを生成し、第2の固定音源符号帳サブセットは複数の音源パルスがベクトル全体に分散して配置されているような固定音源ベクトルを生成する(例えば、第1の固定音源符号帳サブセットも第2の固定音源符号帳サブセットも同じパルス数から成る音源ベクトルを生成するが、第1の固定音源符号帳サブセットは所定のサンプル数M(例えば、2〜10サンプル)の範囲内に全てのパルスが配置された固定音源符号帳ベクトルを生成し、第2の固定音源符号帳サブセットは、全ての音源パルス間隔が所定のサンプル数M’(例えば、10サンプル)以上である固定音源ベクトルを生成する)ように音源パルスの組み合わせ方が異なるような固定音源符号帳サブセットを用意する。
このように、使用頻度が高い特定の形状の音源ベクトルに対して、専用の拡散ベクトルを適用することで、効率的に復元音声の品質を改善することができる。あるいは、パルス音源ベクトルの特徴に応じて異なる拡散ベクトルを適用することで、効率的に復元音声の品質を改善することができる。
なお、使用頻度が高い特定形状のパルス音源ベクトルに対してのみ、複数の専用の拡散ベクトルを用意する構成であれば、拡散ベクトルのパターン数の増加はほとんど問題とならないし、拡散ベクトルのパターン設計の手間もほとんど問題とならない。
その一方、きわめて効果的(効率的)に、復元音声の品質を向上できる。すなわち、実際の音質の向上に役立たない拡散ベクトルを多数用意することは無駄な処理であり、本発明では、少量の専用の拡散パターン(追加拡散ベクトル)を付加することで、効率的に音質向上という効果を得ることができる。
以上説明した固定音源符号帳は、ハードウエアで実現できることはもちろんのこと、必要なベクトルデータをデータベースに蓄積しておき、そのデータを用いて適宜、ソフトウエアにより、固定音源ベクトルの波形データを生成することによっても実現することができる。
(実施の形態2)
高域強調機能をもつディジタルフィルタは、従来から、合成フィルタより後の信号処理を行う部分に設けられていたが、このフィルタは、一般に、一次のディジタルフィルタによって表現されるハイパスフィルタであり、例えばJ−H.Chen and A.Gersho,”Adaptive Postfiltering for Quality Enhancement of Coded Speech”,IEEE Trans.Speech&Audio Processing,Vol.3,No.1,Jan.1995に示されている。
これに対し、本実施の形態の特徴は、音声復号化側において、合成フィルタを経る前の信号に対して独自の高域強調処理を行うことである。
図16は、図2の音声復号化装置111の構成を示すブロック図である。
図16において、RF復調装置110から出力された符号化情報は、多重化分離部801によって多重化されている符号化情報を個々の符号情報に分離される。分離されたLPC符号(L)はLPC復号化部802に出力され、分離された適応音源ベクトル符号(A)は適応音源符号帳805に出力され、分離された音源利得符号(G)は量子化利得生成部806に出力され、分離された固定音源ベクトル符号(F)は固定音源符号帳807へ出力される。
LPC復号化部802は多重化分離部801から出力された符号(L)からLPCを復号し、合成フィルタ803に出力する。適応音源符号帳805は、多重化分離部801から出力された符号(A)で指定される過去の駆動音源信号サンプルから1フレーム分のサンプルを適応音源ベクトルとして取り出して乗算器808へ出力する。
量子化利得生成部806は、多重化分離部801から出力された音源利得符号(G)で指定される適応音源ベクトル利得と固定音源ベクトル利得を復号し乗算器808、809へ出力する。
固定音源符号帳807は、多重化分離部801から出力された符号(F)で指定される固定音源ベクトルを生成し、乗算器809へ出力する。
乗算器808は、適応音源ベクトルに前記適応音源ベクトル利得を乗算して、加算器810へ出力する。乗算器809は、固定音源ベクトルに固定音源ベクトル利得を乗算して、加算器810へ出力する。
加算器810は、乗算器808、809から出力された利得乗算後の適応音源ベクトルと固定音源ベクトルの加算を行い、駆動音源ベクトルを生成し、高域強調部811へ出力する。
高域強調部(高域強調ポストフィルタ)811は、駆動音源ベクトルに対して独自の高域強調処理を行い(例えば、周波数が高い成分ほど振幅強調の度合いが高くなるような高域強調処理を行い)、高域強調後の信号を合成フィルタ803に出力する。なお、高域強調部811の詳細については後述する。
合成フィルタ803は、高域強調部811から出力された音源ベクトルを駆動信号として、LPC復号化部802によって復号されたフィルタ係数を用いて、フィルタ合成を行い、合成した信号を後処理部804へ出力する。
後処理部804は、ホルマント強調やピッチ強調といったような音声の主観的な品質を改善する処理や、定常雑音の主観的品質を改善する処理などを施した上で、最終的な復号音声信号としてD/A変換装置112へ出力する。
次に、高域強調処理について、図17を用いて具体的に説明する。
一般に、CELP符号化においては復号信号の高周波成分が減衰する傾向がある。特に、低ビットレートではその傾向が大きくなるため、復号信号の高域成分を強調することにより、ある程度の主観的品質を改善することが可能である。
図17の高域強調部(高域強調ポストフィルタ)811において、音源ベクトルはハイパスフィルタ(HPF)901、加算器902及び加算器903に入力される。
ハイパスフィルタ901は、強調したい帯域成分を抽出する役目を果たす。駆動音源ベクトルの、ハイパスフィルタ901のカットオフ周波数より高域の成分は加算器903、対数パワ計算器904及び乗算器906に出力される。
加算器903は音源ベクトルから音源ベクトルの高域成分の減算を行い、対数パワ計算器905へ出力する。
対数パワ計算器904は、音源ベクトルの高域成分の対数パワを算出してパワ比計算器907へ出力する。対数パワ計算器905は、音源ベクトルから高域成分を取り除いた信号の対数パワを算出してパワ比計算器907へ出力する。
パワ比計算器907は音源ベクトルの高域成分とその他成分との対数パワ比を計算し、強調係数計算器908へ出力する。
強調計算器908は前記対数パワ比が原則一定となるように、音源ベクトルの高域成分に乗じるべき係数(強調係数Rr)を算出する。
具体的には、対数パワ計算器904から出力された信号をEh[i]、対数パワ計算器905から出力された信号をEl[i]とすると、パワ比計算器907から出力される対数パワ比Rは、Lをサブフレーム長とすると以下の式(1)で表される。
そこで、強調計算器908は、この対数パワ比Rを一定値Cr(例えば0.42)にするためにCrとRとの比(対数パワ比)として係数Rrを以下の式(2)で求める。
リミッタ909は、係数Rrの上限値(例えば0)と下限値(例えば0.3)を設定し、強調計算器908にて算出された係数Rrの値が上限値より大きい場合には係数Rrを上限値とし、下限値より小さい場合には係数Rrを下限値とする。
平滑化回路910は、サブフレーム間やサンプル間でスムーズに強調係数Rrの値が変化するように、強調係数Rrの値を時間的に(サンプル間あるいは/及びサブフレーム間で)平滑化する。
具体的には、まず、以下の式(3)に示すように対数パワ比を線形領域に戻して1を減じる。これは、高域成分を減じていないもとの音源信号(加算器810より)に加算するため、1.0を超える部分のみを加えたいためである。
そして、Rr1が(サブ)フレーム間で滑らかに変化するように以下の式(4)のように平滑化する。なお、平滑化係数αはそれほど強い平滑化にならない程度に設定する(例えばα=0.3)。
さらに、この平滑化後の強調係数Rr1’をハイパスフィルタ901の出力信号exh[i]に乗じ、音源ベクトルex[i]に加算する際、以下の式(5)により、Rr1’を1サンプル毎に平滑化しRr1’’とする。なお、この平滑化処理は強いものとする(例えばβ=0.9)。
乗算器906は、ハイパスフィルタ901からの出力である音源ベクトルの高域成分exh[i]に平滑化回路910で平滑化された強調係数Rr1’’を乗算する。
加算器902は、音源ベクトルexn[i]に、平滑化された係数を乗じた音源ベクトルの高域成分信号Rr1’’×exh[i]を加算して、合成フィルタ803へと出力する。
なお、上記exn[i]はそのまま合成フィルタ803へ出力しても良いが、もとの音源ベクトルex[i]と同じエネルギーを有するようにスケーリング処理を行うことの方が一般的である。このようなスケーリング処理は加算器902の後に行っても良いし、スケーリング処理を考慮して上記Rr1’’を算出するようにしても良い。後者の場合、平滑化回路910へハイパスフィルタ901から入力線が必要になる。前者の場合、加算器902と合成フィルタ803の間にスケーリング処理部が入り、スケーリング処理部には、音源ベクトル(加算器810より)と高域強調後の音源ベクトル(加算器902より)が入力されることになる。
具体的な処理は以下の様になる。
(加算器902の後で行う場合)
(Rr1’’にスケーリング処理を含めてしまう場合)
ハイパスフィルタ901の特性は、復号音声信号の主観的品質が最も良くなるように調整する。具体的には、サンプリング周波数が8kHzの場合、カットオフ周波数が3kHz前後となるような2次のIIRフィルタとするのが好適である。なお、本発明の実施の形態では、前記カットオフ周波数は符号化装置の音源信号符号化特性に応じて自由に設計することが可能である。また、前記ハイパスフィルタの次数も、必要とされるフィルタ特性や許容される演算量に応じて自由に設計することが可能である。
このように、独自の伝達関数をもつディジタルフィルタによる高域強調処理を行うことにより、励信信号の高周波数域におけるゲイン低下を補償してフラットな特性を実現することができるので、聴感向上に効果的な独自のフィルタ特性を実現することができ、効果的に復元音声の品質の改善を図ることができる。例えば、高域強調を行うことによって、復元音声がこもった感じの主観品質となることを防ぐことができる。
また、合成フィルタの前に、本高域強調ポストフィルタを設けることは簡単にでき、本発明を実際の製品に適用することも容易である。
以上説明したように、本発明によれば、最小限度のハードウエア等の追加により、効率的に復元音声の品質の向上を図ることができる。また,本発明によれば、パルス拡散構造を有する固定音源符号帳の性能改善が可能である。また、CELP符号化における音源ベクトルの高域減衰を効果的に補償し、主観品質を改善することができる。
なお、本願発明の固定ベクトルの生成方法、CELP型音声符号化方法あるいはCELP型音声復号化方法は、プログラムを通信回線もしくはCDその他の記憶媒体からインストールしてCPU等の制御手段で実行することにより各々実現することができる。
本明細書は、2002年2月20日出願の特願2002−043878に基づくものである。この内容をここに含めておく。
産業上の利用可能性
本発明は、CELP型音声符号化装置あるいはCELP型音声復号化装置に用いるに好適である。
【図面の簡単な説明】
図1は、従来のパルス拡散構造を有する固定音源符号帳の構成の一例を示すブロック図、
図2は、本発明における音声信号送信装置および音声信号受信装置の全体構成の概略を示す図、
図3は、本発明の実施の形態1に係る音声符号化装置の構成を示すブロック図、
図4は、本発明の実施の形態1に係る固定音源符号帳の構成を示すブロック図、
図5Aは、本発明の実施の形態1に係るパルス音源ベクトルの使用頻度の分布を示す図、
図5Bは、本発明の実施の形態1に係るパルス音源ベクトルの使用頻度の分布を示す図、
図6は、本発明の実施の形態1に係る追加拡散ベクトルの一例を示す図、
図7は、本発明の実施の形態1に係る追加拡散ベクトルの一例を示す図、
図8は、本発明の実施の形態1に係る追加拡散ベクトルの一例を示す図、
図9は、本発明の実施の形態1に係る追加拡散ベクトルの一例を示す図、
図10は、本発明の実施の形態1に係る追加拡散ベクトルの一例を示す図、
図11は、本発明の実施の形態1に係る基本拡散ベクトルの一例を示す図、
図12は、本発明の実施の形態1に係る拡散ベクトル格納器の選択処理の内容を具体的に説明するための図、
図13は、本発明の実施の形態1に係る固定音源符号帳の処理手順を示すフローチャート
図14は、本発明の実施の形態1に係る固定音源符号帳の他の構成を示すブロック図、
図15は、本発明の実施の形態1に係る固定音源符号帳を探索する場合の処理手順を示すフローチャート
図16は、本発明の実施の形態2に係る音声復号化装置の構成を示すブロック図、及び、
図17は、本発明の実施の形態2に係る高域強調部の構成を示すブロック図である。Technical field
The present invention relates to a fixed excitation vector generation method and a fixed excitation codebook used in a CELP speech coding apparatus or a CELP speech decoding apparatus.
Background art
In fields such as digital mobile communications, packet communications represented by Internet communications, and voice storage, voice information is compressed and encoded with high efficiency for effective use of transmission path capacity such as radio waves and storage media. For this purpose, a speech encoding device is used.
Among them, a method based on the CELP (Code Excited Linear Prediction) method has been widely put into practical use at medium and low bit rates. For the CELP technique using a pulsed sound source as a driving sound source signal, see M.M. R. Schrodder and B.M. S. Atal: “Code-Excited Linear Prediction (CELP): High-quality Speech at Very Low Bit Rates”, Proc. ICASSP-85, 25.1.1, pp. 937-940, 1985 ".
In the CELP speech coding method, a digitized speech signal is divided into fixed frame lengths (about 5 ms to 50 ms), linear speech prediction is performed for each frame, and a prediction residual (excitation signal) by linear prediction for each frame. ) Is encoded using an adaptive codebook having a known waveform and a noise (fixed) codebook.
The adaptive codebook stores drive excitation signals generated in the past, and is used to represent the periodic component of the audio signal. The fixed codebook stores a vector having a predetermined number of predetermined shapes prepared in advance, and is mainly used to express aperiodic components that cannot be expressed by the adaptive codebook.
As a vector stored in the fixed codebook, a vector composed of a random noise sequence, a vector expressed by a combination of several pulses, or the like is used.
An algebraic fixed codebook is one of the typical fixed codebooks that express a vector by a combination of several pulses. Specific contents of the algebraic fixed codebook are shown in “ITU-T recommendation G.729” and the like. The algebraic fixed codebook has an advantage that a fixed excitation codebook can be searched with a small amount of calculation and the capacity of a ROM for storing excitation vectors can be reduced. On the other hand, however, there is a problem that faithful code representation of noise components is difficult.
One of the methods for solving the problems of the algebraic fixed codebook is a technique using a pulse spreading codebook. The pulse spreading is disclosed in “ITU-T recommendation G.729 Annex-D” and the like. This pulse spreading is a method of generating a fixed sound source vector by convolving a diffusion pattern (fixed waveform) with a sound source vector.
FIG. 1 is a block diagram showing an example of a configuration of a fixed excitation codebook having a conventional pulse spreading structure. The
A pulse excitation vector is output from the pulse excitation codebook 11, and the diffusion vector taken out from the
With conventional pulse spreading, it is possible to improve the performance of a pulse excitation codebook at a low bit rate, for example, 4 kbit / s or less.
However, for example, in the next generation mobile phone system, there is a demand for further quality improvement (that is, further improving the quality of the restored voice), and it is difficult to satisfy this requirement with existing technology. .
For example, simply increasing the spread vector pattern does not improve the quality of the restored speech, and the increase in the spread vector pattern increases memory capacity and complicates signal processing. There is a risk of inviting.
Disclosure of the invention
An object of the present invention is to provide a technique capable of improving the quality of restored speech by improving the speech quality on the speech encoding or decoding side, and restoring speech that is more natural and easy to hear for the user. That is.
The purpose of this is to generate a fixed excitation vector on the speech encoding side, for example, by selecting in advance a pulse excitation vector having a specific shape that is frequently used from among a large number of pulse excitation vectors. This is achieved by providing a corresponding dedicated diffusion vector.
On the speech decoding side, for example, a sound source signal (a signal simulating a voice uttered by a human vocal cord) before being input to a synthesis filter (having a function simulating a human vocal tract) is conventionally used. This is achieved by applying high-frequency emphasis processing with no devised characteristics.
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
First, the outline of the overall configuration of the audio signal transmitting apparatus and the audio signal receiving apparatus in the present invention will be described with reference to FIG.
In FIG. 2, the
The
The
The
By including at least one of the above-described audio signal transmitting apparatus and receiving apparatus, a base station apparatus and a mobile terminal apparatus in a mobile communication system can be configured.
Hereinafter, with respect to the improvement of the generation of the fixed excitation vector using the spread vector on the speech encoding side (Embodiment 1) and the high frequency enhancement process (Embodiment 2) on the speech decoding side, refer to the drawings sequentially. This will be described in detail.
(Embodiment 1)
In the first embodiment, in the fixed excitation codebook, a dedicated diffusion vector (hereinafter referred to as “additional diffusion vector”) used for a pulse excitation vector having a predetermined shape is prepared, and according to the shape of the pulse excitation vector. A case where the optimum diffusion vector is applied will be described.
FIG. 3 is a block diagram showing a configuration of
The input signal of the
The
The synthesis filter 203 generates a synthesized signal by performing filter synthesis on a driving sound source output from the
The
The
The
The quantization
The
The
The above is the description of each component of the
Next, a specific configuration and characteristics of fixed
FIG. 4 is a block diagram showing a configuration of fixed
In FIG. 4, a
The pulsed sound source vector
Then, the pulse excitation vector
When a vector having the same shape exists, the pulse excitation
The
The spread
In this way, an optimum diffusion vector shape is selected according to the shape of the sound source vector, and a predetermined diffusion vector (one type or a plurality of types of basic diffusion vectors) is applied to all pulse sound source vectors by convolution. The encoding performance can be improved as compared with the case of doing so.
Here, any number of vector shapes may be stored in the memory of the pulse sound source
Hereinafter, a method for selecting a sound source vector of a specific shape with high use frequency, which is stored in the memory of the pulse sound source vector shape determiner 302 a priori, and a method for selecting an additional diffusion vector applied thereto will be described in detail.
5A and 5B show the distribution of the frequency of use of the pulse excitation vector (in the case of two pulses) output from the
Note that the normalized use frequency is a value obtained by dividing the number of times the pulse sound source vector at each interval is used by the number of combinations of pulses at each interval. For example, when the interval is 1 sample, the first pulse is 1 sample. In the case where there are a plurality of combinations such as 2 samples of the second pulse, 2 samples and 3 samples of the second pulse, the frequency normalized by all the combinations that can be generated by the pulse excitation codebook.
As apparent from FIGS. 5A and 5B, the frequency of use is concentrated on the sound source vector whose distance between two pulses is within two samples, regardless of the combination of polarities.
Therefore, 5 types of sound source vectors whose distance between two pulses is within 2 samples (same polarity pulse at
Next, for each selected sound source vector, a dedicated additional diffusion vector is designed by learning.
Note that the learning of the diffusion vector is, for example, Yasunaga et al, “Dispersed-pulse codebook and its applications to a 4 kb / s speech coder,” Proc. ICASSP2000, pp. As shown in section 3.1 of 1503-1506, 2000, a diffusion vector is determined based on a generalized Lloyd algorithm, which minimizes the sum of coding distortions for learning data.
6 to 10 are diagrams showing examples of designed additional diffusion vectors, and are examples in which four types of additional diffusion vectors are designed for each sound source vector.
FIG. 6 shows that four types of dedicated diffusion vectors (A1 to A4) are assigned to the sound source vectors having a pulse-to-pulse distance of 2 samples and the same polarity. Similarly, FIG. 7 shows that four types (B1 to B4) of additional diffusion vectors are provided for a sound source vector having an interpulse distance of 1 sample and a pulse polarity of the same polarity. Similarly, FIG. 8, FIG. 9, and FIG. 10 respectively show four types of sound source vectors having the same polarity when the inter-pulse distance is 0 sample, different polarity when the inter-pulse distance is 1 sample, and different polarity when the inter-pulse distance is 2 samples. It is shown that the additional diffusion vector is provided. As apparent from FIGS. 6 to 10, the shapes of the additional diffusion vectors obtained for the five types of pulsed sound source vectors have different characteristics.
If learning is performed using a common diffusion vector for all sound source vectors, a vector having an average shape of diffusion vectors having these different characteristics is obtained, so there is a limit to performance improvement. . An example of the basic diffusion vector is shown in FIG.
6 to 10 are described on the assumption that four types of additional diffusion vectors are assigned to each sound source vector, the present invention is not limited to this. For example, the number (type) of additional diffusion vectors shown in FIGS. 6 to 10 may be one.
Although not shown in the figure, a separate additional diffusion vector is provided for each sound source vector having a specific shape that is frequently used even when there are three pulses.
FIG. 12 is a diagram for specifically explaining the contents of the selection process of the
The spreading |
The
The
Similarly, the
In FIG. 12, the basic vectors output from the terminals X0, A0, B0, C0, D0, E0 are the same.
The
The switches 407 to 411 are connected to terminals that output the diffusion vectors determined by the
With the above configuration, when the same excitation vector as that stored in the pulse excitation
In FIG. 12, the number of diffusion vector subsets having additional diffusion vectors is five. However, in the present invention, the number of diffusion vector subsets is not limited, and may be appropriately increased or decreased according to the number of frequently used pulse excitation vector patterns. Can be made. In addition, although there are four types of additional diffusion vectors provided in each diffusion vector subset, the number of additional diffusion vectors is not limited in the present invention.
The procedure of the important part of the process described above is shown in FIG. FIG. 13 is a flowchart showing a processing flow of fixed excitation codebook search shown in FIG.
First, in ST501, a pulse sound source search using a basic diffusion vector is performed. An impulse (that is, no diffusion) may be used as the basic diffusion vector. Specific search methods are disclosed in, for example, Japanese Patent Laid-Open No. 10-63300 (17th paragraph (prior art) and 51st to 54th paragraphs). Yasunaga et al, “Dispersed-pulse codebook and its applications to a 4 kb / s speech coder,” Proc. ICASSP2000, pp. 1503-1506, 2000, section 2.2.
Next, in ST502, it is checked whether or not the pulse sound source vector selected in ST501 has a predetermined specific parameter (combination of pulse position and polarity).
These specific shapes refer to the shapes of vectors that are used as fixed excitation vectors (selected as a result of search) among the pulse excitation vectors generated from the pulse excitation codebook.
More specifically, for example, in a two-pulse sound source, for example, a pulse distance is 1 sample (for example, a sound source pulse is set at the 11th sample and the 12th sample), and the pulse polarity has a different sign, A frequently used vector is a shape having a distance of 2 samples (for example, a sound source pulse is set at the 20th sample and the 22nd sample) and a pulse polarity having the same sign.
If it is not a sound source vector having such a specific shape, a convolution of the basic diffusion vector with the pulsed sound source vector selected in ST501 is used as the fixed sound source vector.
That is, the
In ST503, there is a diffusion vector that makes the quantization error smaller than that of the basic diffusion vector among additional diffusion vectors of diffusion vector subsets (
Then, a convolution of the pulse excitation vector selected in ST501 with the diffusion vector selected in ST502 or ST503 is selected as a fixed excitation code vector.
In this way, a configuration in which a plurality of additional diffusion vectors are prepared exclusively for a pulse excitation vector having a specific shape with a high frequency of use requires only a small increase in the amount of information, and depending on the pulse excitation codebook ( In some cases, it can be realized without increasing the number of bits (in the case of a pulse excitation codebook in which there is an unused code).
Here, encoding and decoding of the fixed excitation codebook generated by the above method will be described using a specific example. As an example, consider a case where two pulses are set for 80 samples. It is assumed that the two pulses are
When
Hereinafter, a method of representing the fixed codebook with a 14-bit code will be described. Such an encoding method is disclosed in, for example, 3GPP standard AMR encoding (3GPP TS 26.090, 26.073, and 26.104).
First, a pulse sound source search is performed, and the positions and polarities of
The
Next, the combination of the positions of the two pulses is coded. For example, if the position of
The additional diffusion vector is
(1) The distance between
(2)
(3)
(4) The distance between
(5) The distance between
If four types of additional diffusion vectors can be assigned to each of the five types of pulse sound source vectors of (1), 78 × 4 = 312 because (1) is 6400-6711, and (2) is 79 × 4 = 316. 6712 to 7027, (3) 80x4 = 320, so 7028-7347, (4) 79x4 = 316, so 7348-7663, (5) 78x4 = 312, so 7664-7975, Each code can be assigned. Specifically, when the number of the additional diffusion vector selected by the search process is dv (= 0-3),
Pulse source vector shape determiner
If it is determined (1)
CF = 6400 + 78 × dv + (p1-2), (2 ≦ p1 ≦ 79),
If it is determined (2)
CF = 6712 + 79 × dv + (p1-1), (1 ≦ p1 ≦ 79),
If it is determined that (3)
CF = 7028 + 80 × dv + (p1), (0 ≦ p1 ≦ 79),
If it is determined (4)
CF = 7348 + 79 × dv + (p1), (0 ≦ p1 ≦ 78),
If it is determined (5)
CF = 7664 + 78 × dv + (p1), (0 ≦ p1 ≦ 77),
In this way, the code CF is generated.
Finally, the transmission bit F is generated with the most significant bit added (F = S × 8192 + CF).
As described above, the position p1 and polarity s1 of the
Next, decoding of the decoder that has received the transmission code F will be described. In the decoder, the two pulse positions (p1, p2) and polarity (s1, s2) are decoded in the following procedure.
First, the polarity information S is decoded from the received code F.
S = ((F >> 13) & 1) × 2-1 (S is −1 or +1)
Next, the pulse position information code CF is decoded.
CF = F & Ox1FFF
Next, processing is switched as follows according to the value of CF.
(1) When CF is less than 6400
p2 =
s1 = S, s2 = −S (when p2> p1), = + S (when p2 ≦ p1)
A basic diffusion vector is used as the diffusion vector.
(2) When CF is 6400 or more and less than 6712
p1 = (CF-6400)% 78 + 2, p2 = p1-2, s1 = s2 = S
Use the dvth additional diffusion vector of subset 1 (FIG. 6).
dv = ((CF-6400)-(p1-2)) ÷ 78
(3) When CF is not less than 6712 and less than 7028
p1 = (CF-6712)% 79 + 1, p2 = p1-1, s1 = s2 = S
The dvth additional diffusion vector of subset 2 (FIG. 7) is used.
dv = ((CF-6712)-(p1-1)) ÷ 79
(4) When CF is 7028 or more and less than 7348
p1 = (CF−7028)% 80, p2 = p1, s1 = s2 = S
The dvth additional diffusion vector of subset 3 (FIG. 8) is used.
dv = ((CF−7028) −p1) ÷ 80
(5) When CF is 7348 or more and less than 7664
p1 = (CF-7348)% 79, p2 = p1 + 1, s1 = S, s2 = -S
The dvth additional diffusion vector of subset 4 (FIG. 9) is used.
dv = ((CF-7348) -p1) ÷ 79
(6) When CF is 7664 or more and less than 7975
p1 = (CF-7664)% 78, p2 = p1 + 2, s1 = S, s2 = -S
The dvth additional diffusion vector of subset 5 (FIG. 10) is used.
dv = ((CF-7664) -p1) ÷ 78
As described above, the position p1 and polarity s1 of the
FIG. 14 is a block diagram showing another configuration of the fixed excitation codebook.
Similarly, the second fixed
Here, the spread vector store in each fixed excitation codebook subset is designed exclusively for the pulse excitation codebook of each subset, and stores a different spread vector between the subsets.
In the present embodiment, the number of subsets of the fixed excitation codebook is two. However, in the present invention, the number is not limited, and the same effect can be obtained with three or more.
Further, the pulse excitation codebooks in each subset may have different numbers of excitation pulses included in the excitation vector, or a pattern of excitation pulses (for example, a certain excitation pulse codebook generates only combinations of excitation pulses that are close to each other). Another sound source pulse codebook may generate only combinations of sound source pulses separated from each other).
In any case, when a sound source vector having different characteristics / features is generated for each subset, the degree of performance improvement is high. The
This fixed excitation codebook is generated by the first fixed
FIG. 15 is a flowchart showing a processing procedure for searching the fixed excitation codebook of FIG.
First, in ST701, a first fixed excitation codebook subset search is performed, and a fixed excitation vector that minimizes the quantization error is selected.
Next, a second fixed excitation codebook subset search is performed in ST702, and if there is a fixed excitation vector that further reduces the quantization error than the fixed excitation vector selected in ST701, that is used as the final fixed excitation vector. select.
ST701 and ST702 differ only in that different spreading vectors are applied to different fixed excitation codebooks, and the specific search method is the same as that of the above-described conventional technique. The different fixed excitation codebooks are prepared so that the characteristics of the generated excitation code vectors are different (for example, the number of excitation pulses is different).
For example, the first fixed excitation codebook subset generates a excitation vector composed of two excitation pulses, and the second fixed excitation codebook subset generates a fixed excitation vector generated from five excitation pulses. Thus, fixed excitation codebook subsets having different excitation pulse numbers are prepared. Alternatively, the first fixed excitation codebook subset generates a fixed excitation vector with a combination of excitation pulses close to each other, and the second fixed excitation codebook subset has a plurality of excitation pulses dispersed throughout the vector. (For example, both the first fixed excitation codebook subset and the second fixed excitation codebook subset generate excitation vectors having the same number of pulses, but the first fixed excitation codebook subset is A fixed excitation codebook vector in which all pulses are arranged within a range of a predetermined number of samples M (for example, 2 to 10 samples) is generated, and all excitation pulse intervals are predetermined in the second fixed excitation codebook subset. A combination of sound source pulses such that a fixed sound source vector having a number of samples M ′ (for example, 10 samples) or more is generated) Prepare a fixed excitation codebook subset.
In this way, by applying a dedicated diffusion vector to a sound source vector having a specific shape that is frequently used, the quality of the restored speech can be improved efficiently. Alternatively, the quality of the restored speech can be improved efficiently by applying different diffusion vectors according to the characteristics of the pulsed sound source vector.
Note that the increase in the number of diffusion vector patterns is hardly a problem, and the design of the diffusion vector pattern is not a problem if a configuration in which a plurality of dedicated diffusion vectors are prepared only for a pulsed sound source vector of a specific shape that is frequently used. There is almost no problem.
On the other hand, the quality of the restored speech can be improved extremely effectively (efficiently). In other words, it is a wasteful process to prepare a large number of diffusion vectors that are not useful for improving the actual sound quality. In the present invention, a small amount of dedicated diffusion patterns (additional diffusion vectors) are added to efficiently improve the sound quality. The effect that can be obtained.
The fixed excitation codebook described above can be realized by hardware, as well as storing necessary vector data in a database, and using that data to generate waveform data of fixed excitation vectors as appropriate. This can also be realized.
(Embodiment 2)
Conventionally, a digital filter having a high-frequency emphasis function has been provided in a portion that performs signal processing after a synthesis filter. However, this filter is generally a high-pass filter expressed by a first-order digital filter, for example, J-H. Chen and A.M. Gersho, “Adaptive Postfiltering for Quality Enhancement of Coded Speech”, IEEE Trans. Speech & Audio Processing, Vol. 3, No. 1, Jan. 1995.
On the other hand, the feature of the present embodiment is that an original high-frequency emphasis process is performed on the signal before passing through the synthesis filter on the speech decoding side.
FIG. 16 is a block diagram showing a configuration of
In FIG. 16, the encoded information output from the
The
The quantization
The fixed
The
The high-frequency emphasizing unit (high-frequency emphasizing post filter) 811 performs a unique high-frequency emphasizing process on the driving sound source vector (for example, high-frequency emphasizing processing in which the degree of amplitude emphasis becomes higher as the frequency component becomes higher). And the high-frequency emphasized signal is output to the
The
The
Next, the high-frequency emphasis process will be specifically described with reference to FIG.
In general, CELP encoding tends to attenuate high frequency components of a decoded signal. In particular, since the tendency becomes large at a low bit rate, it is possible to improve the subjective quality to some extent by enhancing the high frequency component of the decoded signal.
In the high frequency emphasis unit (high frequency emphasis post filter) 811 in FIG. 17, the sound source vector is input to a high pass filter (HPF) 901, an
The high-
The
The
The
The
Specifically, when the signal output from the
Therefore, the
The
The smoothing
Specifically, first, as shown in the following formula (3), the logarithmic power ratio is returned to the linear region and 1 is subtracted. This is because the high frequency component is added to the original sound source signal (from the adder 810) that has not been subtracted, so only the portion exceeding 1.0 is desired to be added.
Then, smoothing is performed according to the following equation (4) so that Rr1 changes smoothly between (sub) frames. Note that the smoothing coefficient α is set to such an extent that the smoothing is not so strong (for example, α = 0.3).
Furthermore, when the smoothed enhancement coefficient Rr1 ′ is multiplied by the output signal exh [i] of the high-
The
The
Note that exn [i] may be output to the
Specific processing is as follows.
(When performed after the adder 902)
(When scaling processing is included in Rr1 ″)
The characteristics of the high-
In this way, by performing high-frequency emphasis processing using a digital filter with a unique transfer function, it is possible to compensate for gain reduction in the high-frequency region of the excitation signal and realize a flat characteristic. Effective original filter characteristics can be realized, and the quality of the restored speech can be effectively improved. For example, by performing high-frequency emphasis, it is possible to prevent the restored speech from becoming a subjective quality with a feeling of muddyness.
Further, it is easy to provide the high-frequency emphasis post filter before the synthesis filter, and it is easy to apply the present invention to an actual product.
As described above, according to the present invention, it is possible to efficiently improve the quality of restored speech by adding a minimum amount of hardware or the like. Further, according to the present invention, it is possible to improve the performance of a fixed excitation codebook having a pulse spreading structure. In addition, it is possible to effectively compensate for the high frequency attenuation of the excitation vector in CELP encoding and improve the subjective quality.
The fixed vector generation method, CELP speech encoding method, or CELP speech decoding method of the present invention is implemented by installing a program from a communication line or CD or other storage medium and executing it by a control means such as a CPU. Each can be realized.
This specification is based on Japanese Patent Application No. 2002-043878 filed on Feb. 20, 2002. This content is included here.
Industrial applicability
The present invention is suitable for use in a CELP speech coding apparatus or a CELP speech decoding apparatus.
[Brief description of the drawings]
FIG. 1 is a block diagram showing an example of a configuration of a fixed excitation codebook having a conventional pulse spreading structure,
FIG. 2 is a diagram showing an outline of the overall configuration of an audio signal transmitting device and an audio signal receiving device in the present invention;
FIG. 3 is a block diagram showing the configuration of the speech encoding apparatus according to
FIG. 4 is a block diagram showing a configuration of a fixed excitation codebook according to
FIG. 5A is a diagram showing a distribution of usage frequencies of pulsed sound source vectors according to
FIG. 5B is a diagram showing a distribution of the frequency of use of pulsed sound source vectors according to
FIG. 6 is a diagram showing an example of an additional diffusion vector according to
FIG. 7 is a diagram showing an example of an additional diffusion vector according to
FIG. 8 is a diagram showing an example of an additional diffusion vector according to
FIG. 9 is a diagram showing an example of an additional diffusion vector according to
FIG. 10 is a diagram showing an example of an additional diffusion vector according to
FIG. 11 is a diagram showing an example of a basic diffusion vector according to
FIG. 12 is a diagram for specifically explaining the content of the selection process of the diffusion vector store according to the first embodiment of the present invention;
FIG. 13 is a flowchart showing a processing procedure of the fixed excitation codebook according to
FIG. 14 is a block diagram showing another configuration of the fixed excitation codebook according to
FIG. 15 is a flowchart showing a processing procedure when searching for a fixed excitation codebook according to
FIG. 16 is a block diagram showing the configuration of the speech decoding apparatus according to
FIG. 17 is a block diagram showing a configuration of a high frequency emphasizing unit according to
Claims (10)
複数の拡散ベクトルを用意し、音源ベクトルの形状に応じて最適な拡散ベクトルの形状を選択し、選択された拡散ベクトルを音源ベクトルに畳み込むことにより固定音源ベクトルを生成する固定音源ベクトルの生成方法。A fixed excitation vector generation method for generating a fixed excitation vector required in a CELP speech encoding apparatus or a CELP speech decoding apparatus by convolving a diffusion vector with a pulse excitation vector,
A method of generating a fixed sound source vector by preparing a plurality of diffusion vectors, selecting an optimal diffusion vector shape according to the shape of the sound source vector, and generating a fixed sound source vector by convolving the selected diffusion vector with the sound source vector.
前記パルス音源ベクトルに対して共通に使用される基本拡散ベクトルと予め定められた形状のベクトルに使用される追加拡散ベクトルを用意しておき、前記基本拡散ベクトルあるいは前記追加拡散ベクトルを用いて、固定音源ベクトルを生成する固定音源ベクトルの生成方法。In claim 1,
A basic diffusion vector that is commonly used for the pulsed sound source vector and an additional diffusion vector that is used for a vector having a predetermined shape are prepared, and fixed using the basic diffusion vector or the additional diffusion vector. A method of generating a fixed sound source vector for generating a sound source vector.
複数の拡散ベクトルの中から音源ベクトルの形状に応じて最適な拡散ベクトルの形状を選択する手段と、選択された拡散ベクトルを音源ベクトルに畳み込む手段とを具備する固定音源符号帳。A fixed excitation codebook that generates a fixed excitation vector by convolving a diffusion vector with a pulse excitation vector,
A fixed excitation codebook comprising means for selecting an optimum diffusion vector shape from a plurality of diffusion vectors according to the shape of the excitation vector, and means for convolving the selected diffusion vector with the excitation vector.
前記パルス音源ベクトルに対して共通に使用される基本拡散ベクトルとともに予め定められた形状のベクトルに使用される追加拡散ベクトルとを格納する拡散ベクトル格納器を設け、
前記基本拡散ベクトルあるいは前記追加拡散ベクトルを用いて、固定音源ベクトルを生成する固定音源符号帳。In claim 3,
A diffusion vector storage for storing a basic diffusion vector commonly used for the pulsed sound source vector and an additional diffusion vector used for a vector having a predetermined shape;
A fixed excitation codebook that generates a fixed excitation vector using the basic spreading vector or the additional spreading vector.
パルス音源ベクトルの形状判定器が設けられ、この形状判定器によって、前記パルス音源ベクトルが前記あらかじめ定められた形状を有していると判定された場合にのみ、前記追加拡散ベクトルを用いて固定音源ベクトルを生成する固定音源符号帳。In claim 4,
A pulse sound source vector shape determiner is provided, and the fixed sound source using the additional diffusion vector only when the shape determiner determines that the pulse sound source vector has the predetermined shape. Fixed excitation codebook for generating vectors.
異なるパルス数から成ったり、パルスが立てることが可能な位置の組み合わせが異なったりするような音源ベクトルを出力する、少なくとも2種類のパルス音源符号帳と、前記各パルス音源符号帳のそれぞれに専用に設計された拡散ベクトルを格納する拡散ベクトル格納部とを有する固定音源符号帳。In claim 3,
Dedicated to each of at least two types of pulse excitation codebooks, which output excitation vectors consisting of different numbers of pulses or different combinations of positions where pulses can be generated, and each of the pulse excitation codebooks A fixed excitation codebook having a diffusion vector storage unit for storing a designed diffusion vector.
前記固定音源符号帳は、複数の拡散ベクトルの中から音源ベクトルの形状に応じて最適な拡散ベクトルの形状を選択する手段と、選択された拡散ベクトルを音源ベクトルに畳み込むことにより固定音源ベクトルを生成する手段とを具備する。A CELP speech coding apparatus having a fixed excitation codebook,
The fixed excitation codebook generates a fixed excitation vector by means of selecting an optimum spreading vector shape from a plurality of spreading vectors according to the shape of the excitation vector and convolving the selected spreading vector with the excitation vector Means.
前記音源利得符号で指定される適応音源ベクトル利得と固定音源ベクトル利得を復号する量子化利得生成手段と、前記適応音源ベクトル符号で指定される過去の駆動音源信号サンプルから1フレーム分のサンプルを適応音源ベクトルとして取り出す適応音源符号帳と、前記固定音源ベクトル符号で指定される固定音源ベクトルを生成する固定音源符号帳と、前記適応音源ベクトルに前記適応音源ベクトル利得を乗算した値と前記固定音源ベクトルに前記固定音源ベクトル利得を乗算した値とを加算して駆動音源ベクトルを生成する駆動音源ベクトル生成手段と、前記駆動音源ベクトルに対して高域強調処理を行う高域強調手段と、前記高域強調手段から出力された駆動音源ベクトルに対してフィルタ係数を用いてフィルタ合成を行う合成フィルタを具備するCELP型音声復号化装置。A CELP speech decoding apparatus for receiving a sound source gain code, an adaptive excitation vector code, and a fixed excitation vector code transmitted from the CELP speech encoding apparatus according to claim 7, and decoding speech.
Quantization gain generating means for decoding the adaptive excitation vector gain and fixed excitation vector gain specified by the excitation gain code, and adapting one frame sample from the past driving excitation signal samples specified by the adaptive excitation vector code An adaptive excitation codebook extracted as an excitation vector, a fixed excitation codebook for generating a fixed excitation vector specified by the fixed excitation vector code, a value obtained by multiplying the adaptive excitation vector by the adaptive excitation vector gain, and the fixed excitation vector Driving excitation vector generation means for generating a driving excitation vector by adding a value multiplied by the fixed excitation vector gain to the above, high frequency enhancement means for performing high frequency enhancement processing on the driving excitation vector, and the high frequency A synthesis filter that performs filter synthesis using the filter coefficient on the driving sound source vector output from the enhancement means CELP type speech decoding apparatus having a data.
高域強調手段は、前記駆動音源ベクトルの高域成分を通過させるハイパスフィルタと、このハイパスフィルタ通過後の駆動音源ベクトルの対数パワを算出する第1対数パワ計算器と、前記ハイパスフィルタ通過後の駆動音源ベクトルを前記ハイパスフィルタ通過前の駆動音源ベクトルから減じる処理を行う加算器と、前記加算器によって算出された高域成分除去後の駆動音源ベクトルの対数パワを算出する第2対数パワ計算器と、前記2つの対数パワ計算器によって計算された対数パワの比を計算するパワ比計算器と、前記パワ比が一定の値になるようにハイパスフィルタ通過後の駆動音源ベクトルに乗ずる係数の値を算出する係数算出器とを具備し、
前記ハイパスフィルタを通過した信号成分に前記係数算出器で算出された係数を乗算し、その結果を前記駆動音源ベクトルに加算することにより高域強調処理を行うCELP型音声復号化装置。In claim 8,
The high-frequency emphasizing means includes a high-pass filter that passes the high-frequency component of the drive excitation vector, a first logarithmic power calculator that calculates logarithmic power of the drive excitation vector after passing through the high-pass filter, and a high-pass filter after passing through the high-pass filter An adder that performs a process of subtracting the driving excitation vector from the driving excitation vector before passing through the high-pass filter, and a second logarithmic power calculator that calculates the logarithmic power of the driving excitation vector after removal of the high frequency component calculated by the adder A power ratio calculator for calculating a ratio of logarithmic powers calculated by the two logarithmic power calculators, and a coefficient value multiplied by the driving sound source vector after passing through the high-pass filter so that the power ratio becomes a constant value. A coefficient calculator for calculating
A CELP speech decoding apparatus that performs high-frequency emphasis processing by multiplying a signal component that has passed through the high-pass filter by a coefficient calculated by the coefficient calculator and adding the result to the driving excitation vector.
複数の拡散ベクトルの中から音源ベクトルの形状に応じて最適な拡散ベクトルの形状を選択する工程と、選択された拡散ベクトルを音源ベクトルに畳み込む工程とを具備するプログラム。A program for generating a fixed sound source vector by convolving a diffusion vector with a pulse sound source vector,
A program comprising a step of selecting an optimal diffusion vector shape from a plurality of diffusion vectors according to the shape of a sound source vector, and a step of convolving the selected diffusion vector with the sound source vector.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002043878 | 2002-02-20 | ||
JP2002043878 | 2002-02-20 | ||
PCT/JP2003/001882 WO2003071522A1 (en) | 2002-02-20 | 2003-02-20 | Fixed sound source vector generation method and fixed sound source codebook |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2003071522A1 true JPWO2003071522A1 (en) | 2005-06-16 |
JP4299676B2 JP4299676B2 (en) | 2009-07-22 |
Family
ID=27750538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003570338A Expired - Fee Related JP4299676B2 (en) | 2002-02-20 | 2003-02-20 | Method for generating fixed excitation vector and fixed excitation codebook |
Country Status (4)
Country | Link |
---|---|
US (1) | US7580834B2 (en) |
JP (1) | JP4299676B2 (en) |
AU (1) | AU2003211229A1 (en) |
WO (1) | WO2003071522A1 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100900113B1 (en) * | 1997-10-22 | 2009-06-01 | 파나소닉 주식회사 | Dispersed pulse vector generator and method for generating a dispersed pulse vector |
DE102004008225B4 (en) * | 2004-02-19 | 2006-02-16 | Infineon Technologies Ag | Method and device for determining feature vectors from a signal for pattern recognition, method and device for pattern recognition and computer-readable storage media |
US7991611B2 (en) | 2005-10-14 | 2011-08-02 | Panasonic Corporation | Speech encoding apparatus and speech encoding method that encode speech signals in a scalable manner, and speech decoding apparatus and speech decoding method that decode scalable encoded signals |
JP5159318B2 (en) * | 2005-12-09 | 2013-03-06 | パナソニック株式会社 | Fixed codebook search apparatus and fixed codebook search method |
JPWO2008072733A1 (en) * | 2006-12-15 | 2010-04-02 | パナソニック株式会社 | Encoding apparatus and encoding method |
US8103479B2 (en) * | 2006-12-29 | 2012-01-24 | Teradata Us, Inc. | Two dimensional exponential smoothing |
FR2938688A1 (en) * | 2008-11-18 | 2010-05-21 | France Telecom | ENCODING WITH NOISE FORMING IN A HIERARCHICAL ENCODER |
US20100174539A1 (en) * | 2009-01-06 | 2010-07-08 | Qualcomm Incorporated | Method and apparatus for vector quantization codebook search |
PL3364411T3 (en) * | 2009-12-14 | 2022-10-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vector quantization device, speech coding device, vector quantization method, and speech coding method |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4868867A (en) * | 1987-04-06 | 1989-09-19 | Voicecraft Inc. | Vector excitation speech or audio coder for transmission or storage |
US5307441A (en) * | 1989-11-29 | 1994-04-26 | Comsat Corporation | Wear-toll quality 4.8 kbps speech codec |
US5195137A (en) * | 1991-01-28 | 1993-03-16 | At&T Bell Laboratories | Method of and apparatus for generating auxiliary information for expediting sparse codebook search |
JP2947012B2 (en) * | 1993-07-07 | 1999-09-13 | 日本電気株式会社 | Speech coding apparatus and its analyzer and synthesizer |
JP3483958B2 (en) | 1994-10-28 | 2004-01-06 | 三菱電機株式会社 | Broadband audio restoration apparatus, wideband audio restoration method, audio transmission system, and audio transmission method |
JPH08202399A (en) | 1995-01-27 | 1996-08-09 | Kyocera Corp | Post processing method for decoded voice |
JP3196595B2 (en) * | 1995-09-27 | 2001-08-06 | 日本電気株式会社 | Audio coding device |
JP3174782B2 (en) * | 1996-08-22 | 2001-06-11 | 松下電器産業株式会社 | CELP-type speech decoding apparatus and CELP-type speech decoding method |
JP3174733B2 (en) | 1996-08-22 | 2001-06-11 | 松下電器産業株式会社 | CELP-type speech decoding apparatus and CELP-type speech decoding method |
CA2213909C (en) * | 1996-08-26 | 2002-01-22 | Nec Corporation | High quality speech coder at low bit rates |
EP1085504B1 (en) * | 1996-11-07 | 2002-05-29 | Matsushita Electric Industrial Co., Ltd. | CELP-Codec |
TW408298B (en) * | 1997-08-28 | 2000-10-11 | Texas Instruments Inc | Improved method for switched-predictive quantization |
KR100900113B1 (en) * | 1997-10-22 | 2009-06-01 | 파나소닉 주식회사 | Dispersed pulse vector generator and method for generating a dispersed pulse vector |
JP3174756B2 (en) * | 1998-03-31 | 2001-06-11 | 松下電器産業株式会社 | Sound source vector generating apparatus and sound source vector generating method |
US6385573B1 (en) | 1998-08-24 | 2002-05-07 | Conexant Systems, Inc. | Adaptive tilt compensation for synthesized speech residual |
JP2000267700A (en) | 1999-03-17 | 2000-09-29 | Yrp Kokino Idotai Tsushin Kenkyusho:Kk | Method and device for encoding and decoding voice |
US6377915B1 (en) | 1999-03-17 | 2002-04-23 | Yrp Advanced Mobile Communication Systems Research Laboratories Co., Ltd. | Speech decoding using mix ratio table |
CN1296888C (en) | 1999-08-23 | 2007-01-24 | 松下电器产业株式会社 | Voice encoder and voice encoding method |
JP4034929B2 (en) * | 1999-08-23 | 2008-01-16 | 松下電器産業株式会社 | Speech encoding device |
JP2001134298A (en) * | 1999-08-24 | 2001-05-18 | Matsushita Electric Ind Co Ltd | Speech encoding device and speech decoding device, and speech encoding/decoding system |
JP2001075600A (en) | 1999-09-07 | 2001-03-23 | Mitsubishi Electric Corp | Voice encoding device and voice decoding device |
-
2003
- 2003-02-20 AU AU2003211229A patent/AU2003211229A1/en not_active Abandoned
- 2003-02-20 JP JP2003570338A patent/JP4299676B2/en not_active Expired - Fee Related
- 2003-02-20 WO PCT/JP2003/001882 patent/WO2003071522A1/en active Application Filing
- 2003-02-20 US US10/505,100 patent/US7580834B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
AU2003211229A1 (en) | 2003-09-09 |
WO2003071522A1 (en) | 2003-08-28 |
US7580834B2 (en) | 2009-08-25 |
JP4299676B2 (en) | 2009-07-22 |
US20050228652A1 (en) | 2005-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3881943B2 (en) | Acoustic encoding apparatus and acoustic encoding method | |
JP4698593B2 (en) | Speech decoding apparatus and speech decoding method | |
JP4308345B2 (en) | Multi-mode speech encoding apparatus and decoding apparatus | |
KR100391527B1 (en) | Voice encoder and voice encoding method | |
JP3881946B2 (en) | Acoustic encoding apparatus and acoustic encoding method | |
WO2004097796A1 (en) | Audio encoding device, audio decoding device, audio encoding method, and audio decoding method | |
EP1881488A1 (en) | Encoder, decoder, and their methods | |
KR20070029754A (en) | Audio encoding device, audio decoding device, and method thereof | |
JPH1097296A (en) | Method and device for voice coding, and method and device for voice decoding | |
JP4299676B2 (en) | Method for generating fixed excitation vector and fixed excitation codebook | |
EP1727130A2 (en) | Speech signal decoding method and apparatus | |
EP2869299B1 (en) | Decoding method, decoding apparatus, program, and recording medium therefor | |
JP3888097B2 (en) | Pitch cycle search range setting device, pitch cycle search device, decoding adaptive excitation vector generation device, speech coding device, speech decoding device, speech signal transmission device, speech signal reception device, mobile station device, and base station device | |
JP2002366195A (en) | Method and device for encoding voice and parameter | |
JP2004302259A (en) | Hierarchical encoding method and hierarchical decoding method for sound signal | |
JP3612260B2 (en) | Speech encoding method and apparatus, and speech decoding method and apparatus | |
JP3579276B2 (en) | Audio encoding / decoding method | |
JP3576485B2 (en) | Fixed excitation vector generation apparatus and speech encoding / decoding apparatus | |
JP4527175B2 (en) | Spectral parameter smoothing apparatus and spectral parameter smoothing method | |
JP3731575B2 (en) | Encoding device and decoding device | |
JP2002073097A (en) | Celp type voice coding device and celp type voice decoding device as well as voice encoding method and voice decoding method | |
JPH09244695A (en) | Voice coding device and decoding device | |
JP3468862B2 (en) | Audio coding device | |
JP3954716B2 (en) | Excitation signal encoding apparatus, excitation signal decoding apparatus and method thereof, and recording medium | |
JP2005215502A (en) | Encoding device, decoding device, and method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051124 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070515 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081202 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090130 |
|
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: 20090324 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090417 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120424 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130424 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130424 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
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 |
|
LAPS | Cancellation because of no payment of annual fees |