JPWO2007129726A1 - 音声符号化装置及び音声符号化方法 - Google Patents
音声符号化装置及び音声符号化方法 Download PDFInfo
- Publication number
- JPWO2007129726A1 JPWO2007129726A1 JP2008514506A JP2008514506A JPWO2007129726A1 JP WO2007129726 A1 JPWO2007129726 A1 JP WO2007129726A1 JP 2008514506 A JP2008514506 A JP 2008514506A JP 2008514506 A JP2008514506 A JP 2008514506A JP WO2007129726 A1 JPWO2007129726 A1 JP WO2007129726A1
- Authority
- JP
- Japan
- Prior art keywords
- codebook
- vector
- encoding
- search
- excitation
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/10—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
- G10L19/107—Sparse pulse excitation, e.g. by using algebraic codebook
Abstract
符号化される入力信号の雑音性、非雑音性に応じた傾向を十分に利用し、良好な音質を得る音声符号化装置。この音声符号化装置では、固定符号帳探索部(202)の探索ループ(204)における重み付加部(206)は、符号化対象であるターゲットとスペクトル包絡情報とにより合成されたコードベクトルから算出される関数を、固定符号帳に格納されたコードベクトルの探索基準となる計算値とし、この計算値にコードベクトルを形成するパルス本数に応じた重みを加算する。
Description
本発明は、固定符号帳探索を行う音声符号化装置及び音声符号化方法に関する。
移動体通信においては、伝送帯域の有効利用のために音声や画像のディジタル情報の圧縮符号化が必須である。その中でも携帯電話で広く利用された音声コーデック(符号化/復号化)技術に対する期待は大きく、圧縮率の高い従来の高効率符号化に対してさらなる音質の要求が強まっている。
音声の発声機構をモデル化してベクトル量子化を巧みに応用した基本方式「CELP」(Code Excited Linear Prediction)によって大きく性能を向上させた音声符号化技術は、非特許文献1に記載の代数的符号帳(Algebraic Codebook)のような少数パルスによる固定音源の技術により、一段とその性能を向上させた。一方、雑音性や有声/無声に適応した符号化により、さらに高品質を目指す技術も出てきている。
このような技術として、特許文献1には、CELPの固定音源符号帳による符号化の際、雑音的なコードベクトルの符号化歪みを計算し、その計算結果に対して雑音性の度合いに応じた固定の重み付け値を乗算する一方、非雑音的な駆動音源ベクトルの符号化歪みを計算し、その計算結果に対して雑音性の度合いに応じた固定の重み付け値を乗算し、値が小さい方の乗算結果に係る駆動音源符号を選択することが記載されている。
非雑音的(パルス的)なコードベクトルは、雑音的なコードベクトルと比較して符号化の対象である入力信号との距離が小さくなる傾向にあるため選択される割合が大きく、得られる合成音の音質がパルッシブになり主観的な音質が低下してしまうが、特許文献1に記載の技術は、符号帳を雑音性と非雑音性の2つに分けて、それぞれの距離計算の結果に応じて非雑音性のコードベクトルが選ばれ易くなるように重み(距離への乗算)を掛けるというものである。これにより、雑音的な入力音声を符号化し、復号化した合成音声の音質を向上させることができる。
特許第3404016号公報
Salami, Laflamme, Adoul,"8kbit/s ACELP Coding of Speech with 10ms Speech-Frame:a Candidate for CCITT Standardization",IEEE Proc. ICASSP94,pp.II-97n
しかしながら、上述した特許文献1に記載の技術では、雑音性という尺度の開示が不十分であるため、より良い性能を得る適当な重み付けを行うのは難しい。そのため、特許文献1に記載の技術では、「評価重み決定手段」を用いてより適当な重みが乗ぜられるようにしているものの、これも開示が不十分であるためにどのようにすれば性能が向上するのか不明である。
また、上述した特許文献1に記載の技術では、距離の計算結果に対して乗算により重みをつけており、乗算による重みというのはその距離の絶対値に影響しない。これは、距離が遠い時にも近い時にも同じ重みが掛かるということであり、これは符号化される入力信号の雑音性、非雑音性に応じた傾向を十分に利用しているとは言えない。
本発明の目的は、符号化される入力信号の雑音性、非雑音性に応じた傾向を十分に利用し、良好な音質を得る音声符号化装置及び音声符号化方法を提供することである。
本発明の音声符号化装置は、入力音声信号のうち声道情報をスペクトル包絡情報に符号化する第1符号化手段と、入力音声信号のうち音源情報を適応符号帳と固定符号帳とにそれぞれ格納された音源ベクトルを用いて符号化する第2符号化手段と、前記固定符号帳に格納された音源ベクトルを探索する探索手段と、を具備し、前記探索手段は、音源ベクトルを形成するパルス本数に応じた重み付けを探索の基準となる計算値に行う重み付け手段を有する構成を採る。
本発明の音声符号化方法は、入力音声信号のうち声道情報をスペクトル包絡情報に符号化する第1符号化工程と、入力音声信号のうち音源情報を適応符号帳と固定符号帳とにそれぞれ格納された音源ベクトルを用いて符号化する第2符号化工程と、前記固定符号帳に格納された音源ベクトルを探索する探索工程と、を具備し、前記探索工程は、音源ベクトルを形成するパルス本数に応じた重み付けを探索の基準となる計算値に行うようにした。
本発明によれば、符号化される入力信号の雑音性、非雑音性に応じた傾向を十分に利用し、良好な音質を得ることができる。
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
(実施の形態)
図1は、本発明の実施の形態に係るCELP符号化装置100の構成を示すブロック図である。このCELP符号化装置100は、声道情報と音源情報とからなる音声信号S11を、声道情報については、LPCパラメータ(線形予測係数)を求めることにより符号化し、音源情報については、予め記憶されている音声モデルのいずれを用いるかを特定するインデックス、すなわち、適応符号帳103および固定符号帳104でどのような音源ベクトル(コードベクトル)を生成するかを特定するインデックスを求めることにより、音源情報を符号化する。
図1は、本発明の実施の形態に係るCELP符号化装置100の構成を示すブロック図である。このCELP符号化装置100は、声道情報と音源情報とからなる音声信号S11を、声道情報については、LPCパラメータ(線形予測係数)を求めることにより符号化し、音源情報については、予め記憶されている音声モデルのいずれを用いるかを特定するインデックス、すなわち、適応符号帳103および固定符号帳104でどのような音源ベクトル(コードベクトル)を生成するかを特定するインデックスを求めることにより、音源情報を符号化する。
具体的には、CELP符号化装置100の各部は以下の動作を行う。
LPC分析部101は、音声信号S11に対して線形予測分析を施し、スペクトル包絡情報であるLPCパラメータを求め、LPC量子化部102及び聴感重み付け部111に出力する。
LPC量子化部102は、LPC分析部101で得られるLPCパラメータを量子化し、得られる量子化LPCパラメータをLPC合成フィルタ109に、量子化LPCパラメータのインデックスをCELP符号化装置100の外部へ出力する。
一方、適応符号帳103は、LPC合成フィルタ109で使用された過去の駆動音源を記憶しており、歪み最小化部112から指示されたインデックスに対応する適応符号帳ラグに従って、記憶している駆動音源から1サブフレーム分の音源ベクトルを生成する。この音源ベクトルは、適応符号帳ベクトルとして乗算器106に出力される。
固定符号帳104は、所定形状の音源ベクトルを複数個予め記憶しており、歪み最小化部112から指示されたインデックスに対応する音源ベクトルを、固定符号帳ベクトルとして乗算器107に出力する。ここで、固定符号帳104は代数的符号帳であり、2種類の本数のパルスによる代数的符号帳を用いた場合の構成について、重み付けが加算によりなされる場合について説明する。
代数的音源とは、多くの標準コーデックに採用されている音源であり、位置と極性(+−)だけが情報の大きさが1のインパルスを少数立てた音源である。例えば、ARIB規格書「RCR STD−27K」の5.3節の「CS−ACELP」での5.3.1.9章や、5.4節の「ACELP」での5.4.3.7章等に記載されている。
なお、上記の適応符号帳103は、有声音のように周期性の強い成分を表現するために使われ、一方、固定符号帳104は、白色雑音のように周期性の弱い成分を表現するために使われる。
ゲイン符号帳105は、歪み最小化部112からの指示に従って、適応符号帳103から出力される適応符号帳ベクトル用のゲイン(適応符号帳ゲイン)、および固定符号帳104から出力される固定符号帳ベクトル用のゲイン(固定符号帳ゲイン)を生成し、それぞれ乗算器106、107に出力する。
乗算器106は、ゲイン符号帳105から出力された適応符号帳ゲインを、適応符号帳103から出力された適応符号帳ベクトルに乗じ、加算器108に出力する。
乗算器107は、ゲイン符号帳105から出力された固定符号帳ゲインを、固定符号帳104から出力された固定符号帳ベクトルに乗じ、加算器108に出力する。
加算器108は、乗算器106から出力された適応符号帳ベクトルと、乗算器107から出力された固定符号帳ベクトルとを加算し、加算後の音源ベクトルを駆動音源としてLPC合成フィルタ109に出力する。
LPC合成フィルタ109は、LPC量子化部102から出力された量子化LPCパラメータをフィルタ係数とし、適応符号帳103及び固定符号帳104で生成される音源ベクトルを駆動音源としたフィルタ関数、すなわち、LPC合成フィルタを用いて合成信号を生成する。この合成信号は、加算器110に出力される。
加算器110は、LPC合成フィルタ109で生成された合成信号を音声信号S11から減算することによって誤差信号を算出し、この誤差信号を聴感重み付け部111に出力する。なお、この誤差信号が符号化歪みに相当する。
聴感重み付け部111は、加算器110から出力された符号化歪みに対して聴感的な重み付けを施し、歪み最小化部112に出力する。
歪み最小化部112は、聴感重み付け部111から出力された符号化歪みが最小となるような、適応符号帳103、固定符号帳104及びゲイン符号帳105の各インデックスをサブフレームごとに求め、これらのインデックスを符号化情報としてCELP符号化装置100の外部に出力する。より詳細には、上記の適応符号帳103及び固定符号帳104に基づいて合成信号を生成し、この信号の符号化歪みを求める一連の処理は閉ループ制御(帰還制御)となっており、歪み最小化部112は、各符号帳に指示するインデックスを1サブフレーム内において様々に変化させることによって各符号帳を探索し、最終的に得られる、符号化歪みを最小とする各符号帳のインデックスを出力する。
なお、符号化歪みが最小となる際の駆動音源は、サブフレームごとに適応符号帳103へフィードバックされる。適応符号帳103は、このフィードバックにより、記憶されている駆動音源を更新する。
ここで、固定符号帳104の探索方法について説明する。まず、音源ベクトルの探索と符号の導出は以下の式(1)の符号化歪を最小化する音源ベクトルを探索することにより行われる。
E:符号化歪、x:符号化ターゲット、p:適応符号帳ベクトルのゲイン、H:聴感重み付け合成フィルタ、a:適応符号帳ベクトル、q:固定符号帳ベクトルのゲイン、s:固定符号帳ベクトル
一般的に、適応符号帳ベクトルと固定符号帳ベクトルとはオープンループで(別々のループで)探索されるので、固定符号帳104の符号の導出は以下の式(2)の符号化歪を最小化する固定符号帳ベクトルを探索することにより行われる。
E:符号化歪、x:符号化ターゲット(聴感重み付け音声信号)、p:適応符号帳ベクトルの最適ゲイン、H:聴感重み付け合成フィルタ、a:適応符号帳ベクトル、q:固定符号帳ベクトルのゲイン、s:固定符号帳ベクトル、y:固定符号帳探索のターゲットベクトル
よって、代数的符号帳の音源のような少数パルスからなる音源の探索の場合は、yHとHHを予め計算しておけば、少ない計算量で上記関数Cを算出できる。
図2は、図1に示した歪み最小化部112の内部構成を示すブロック図である。図2において、適応符号帳探索部201は、聴感重み付け部111において聴感的な重み付けが施された符号化歪みを用いて、適応符号帳103の探索を行う。探索の結果、適応符号帳ベクトルの符号を固定符号帳探索部202の前処理部203及び適応符号帳103に出力する。
固定符号帳探索部202の前処理部203は、聴感重み付け部111における合成フィルタの係数Hを用いて、ベクトルyH及びマトリクスHHを算出する。yHはターゲットベクトルyを逆順にしてマトリクスHを畳み込み、更にその結果を逆順にすることにより求める。HHはマトリクス同士の掛け算により求める。また、yのパワと、付加する固定値Gとから、以下の式(5)に示すように付加値gを求める。
さらに、前処理部203は、ベクトルyHの要素の極性(+−)から、事前にパルスの極性を決める。具体的には、各位置に立つパルスの極性をyHのその位置の値の極性に合わせることとし、yHの値の極性を別の配列に格納しておく。各位置の極性を別の配列に格納した後、yHの値は全て絶対値をとり正の値に変換しておく。また、格納した各位置の極性に合わせてHHの値も極性を乗ずることによって変換しておく。求めたyH及びHHを探索ループ204、208内の相関値・音源パワ加算部205、209に、付加値gを重み付加部206に出力する。
探索ループ204は、相関値・音源パワ加算部205、重み付加部206及び大小判定部207を備え、探索ループ208は、相関値・音源パワ加算部209及び大小判定部210を備えている。
相関値・音源パワ加算部205は、パルス数2本の場合について、前処理部203から出力されたyHとHHの値を加算することにより関数Cを求め、求めた関数Cを重み付加部206に出力する。
重み付加部206は、上式(5)に示した付加値gを用いて、関数Cに付加処理を行い、付加処理した関数Cを大小判定部207に出力する。
大小判定部207は、重み付加部206において付加処理された関数Cの値の大小を比較し、より大きい関数値を示す場合の関数Cの分子分母を上書き格納する。そして、探索ループ204全体で最も大きくなる関数Cを探索ループ208の大小判定部210に出力する。
相関値・音源パワ加算部209は、パルス数3本の場合について、探索ループ204内の相関値・音源パワ加算部205と同様に、前処理部203から出力されたyHとHHの値を加算することにより関数Cを求め、求めた関数Cを大小判定部210に出力する。
大小判定部210は、探索ループ204の大小判定部207から出力された関数Cを含め、相関値・音源パワ加算部209から出力された関数Cの値の大小を比較し、より大きい関数値を示す場合の関数Cの分子分母を上書き格納する。そして、探索ループ208全体で最も大きくなるパルスの位置の組合せを探索する。大小判定部210は、各パルスの位置の符号と極性の符号を合わせて固定符号帳ベクトルの符号とし、この符号を固定符号帳104及びゲイン符号帳探索部211に出力する。
ゲイン符号帳探索部211は、大小判定部210から出力された各パルスの位置の符号と極性の符号を合わせた固定符号帳ベクトルの符号に基づいて、ゲイン符号帳を探索し、探索結果をゲイン符号帳105に出力する。
ここで、上記2つの探索ループ204、208を用いた一連の処理の手順を図3及び図4に詳細に示す。ここでは、代数的符号帳の条件を以下に示す。
(1)ビット数:13ビット
(2)処理単位(サブフレーム長):40
(3)パルス本数:2本と3本
(4)付加する固定値:G=−0.001
この条件のもと、例として以下のような2つに分かれた代数的符号帳が設計できる。(符号帳0(パルス数2本)の候補位置)ici00〔20〕={ 0, 2, 4, 6, 8,10,12,14,16,18,
20,22,24,26,28,30,32,34,36,38}ici01〔20〕={ 1, 3, 5, 7, 9,11,13,15,17,19,
21,23,25,27,29,31,33,35,37,39}(符号帳1(パルス数3本)の候補位置)ici10〔10〕={0,4, 8,12,16,20,24,28,32,36}ici11〔10〕={2,6,10,14,18,22,26,30,34,38}ici12〔 8〕={1,5,11,15,21,25,31,35}
(2)処理単位(サブフレーム長):40
(3)パルス本数:2本と3本
(4)付加する固定値:G=−0.001
この条件のもと、例として以下のような2つに分かれた代数的符号帳が設計できる。(符号帳0(パルス数2本)の候補位置)ici00〔20〕={ 0, 2, 4, 6, 8,10,12,14,16,18,
20,22,24,26,28,30,32,34,36,38}ici01〔20〕={ 1, 3, 5, 7, 9,11,13,15,17,19,
21,23,25,27,29,31,33,35,37,39}(符号帳1(パルス数3本)の候補位置)ici10〔10〕={0,4, 8,12,16,20,24,28,32,36}ici11〔10〕={2,6,10,14,18,22,26,30,34,38}ici12〔 8〕={1,5,11,15,21,25,31,35}
上記2つの候補位置でエントリ数は、(20×20×2×2)+(10×10×8×2×2×2)=1600+6400=8000<8192となり、13ビットの代数的符号帳となる。
図3において、ST301では、符号帳0(パルス数2本)の候補位置を設定し、ST302で初期化を行い、ST303では、i0が20未満であることを確認する。i0が20未満である場合、符号帳0から1つ目のパルスの位置を出力してyH及びHHから値を取り出して、それぞれ相関値sy0、パワsh0とする(ST304)。この計算をi0が20(パルス位置候補数)になるまで行う(ST303〜ST306)。なお、ST302〜ST309では、パルス数2本の場合の符号帳探索処理となる。
一方、i0が20未満において、i1も20未満である場合には、ST305〜ST310の処理が繰り返し行われる。この処理では、1つのi0における計算において、符号帳0から2つ目のパルスの位置を出力してyH及びHHから値を取り出して相関値sy0、パワsh0にそれぞれ加算し、相関値sy1、パワsh1とする(ST307)。パワsh1に付加値gを付加した値と相関値sy1とを用いて、関数Cの大小比較を行い(ST308)、より大きい関数値を示す関数Cの分子、分母を記憶する(ST309)この計算をi1が20(パルス位置候補数)になるまで行う(ST305〜ST310)。
i0及びi1が共に20以上となった場合、図4のST311に移行し、符号帳1(パルス数3本)の候補位置を設定する。なお、ST310以降では、パルス数3本の場合の符号帳探索処理となる。
ST312では、i0が10未満であることを確認して、i0が10未満である場合、符号帳1から1つ目のパルスの位置を出力してyH及びHHから値を取り出して、それぞれ相関値sy0、パワsh0とする(ST313)。この計算をi0が10(パルス位置候補数)になるまで行う(ST312〜ST315)。
一方、i0が10未満において、i1も10未満である場合には、ST314〜ST318の処理が繰り返し行われる。この処理では、一つのi1における計算において、符号帳1から2つ目のパルスの位置を出力してyH及びHHから値を取り出して相関値sy0、パワsh0にそれぞれ加算し、相関値sy1、パワsh1とする(ST316)。ただし、ST314〜ST318の繰り返し処理におけるST317において、i2が8未満の場合、ST317〜ST322の処理が繰り返し行われる。
この処理では、一つのi2における計算において、符号帳1から3つ目のパルスの位置を出力してyH及びHHから値を取り出して相関値sy1、パワsh1にそれぞれ加算し、相関値sy2、パワsh2とする(ST319)。ST309において最大の関数値を示す関数Cの分子、分母と、相関値sy2及びパワsh2からなる関数値との大小比較を行い(ST320)、より大きい関数値を示す関数Cの分子、分母を記憶する(ST321)この計算をi2が8(パルス位置候補数)になるまで行う(ST317〜ST322)。ST320では、付加値gの影響により、パルス数2本よりもパルス数3本の方が選ばれやすくなる。
i0及びi1が共に10以上、かつ、i2が8以上となった場合、ST323において探索処理を終了する。
以上により、「パルスの本数」という明確な基準に基づく重み付けが実現できる。また、重み付けの方法として、付加処理を適用したことにより、符号化対象であるターゲットベクトルとの誤差が大きい(エネルギーの分散した無声性(雑音性)のある)場合には、重み付けが相対的に大きな意味を持ち、誤差が小さい(エネルギーの集中した有声性のある)場合には、重み付けが相対的に小さな意味を持つことになる。したがって、より高品質な合成音が得られるようになる。その理由は、以下のように定性的に示される。
ターゲットベクトルが有声性(非雑音性)の場合には、選択の基準となる関数値が高い部分と低い部分が存在する傾向がある。この場合、関数値のみの大小で音源ベクトルが選択されることが望ましく、本発明の固定値の付加処理では大きな変化がないので、関数値のみの大小で音源ベクトルが選択される。
一方、入力が無声性(雑音性)の場合には、関数値は全て低くなる。この場合、パルスの本数が多い音源ベクトルが選ばれる方が望ましく、本発明の固定値の付加処理が相対的に大きな意味を持つので、パルスの本数が多い音源ベクトルが選ばれる。
このように実施の形態によれば、パルス数という明確な尺度で重み処理を行うために安定した性能を得ることができ、また、重み付けの方法として付加処理を適用することにより、関数値が大きい場合は相対的に小さくなり、関数値が小さい場合は相対的に大きくなるので、無声性(雑音性)の部分においてのみパルス数の多い音源ベクトルを選択することができるので、音質向上を図ることができる。
なお、本実施の形態では、重み付けの方法として、特に付加処理についてその有効性を説明したが、本発明は乗算を用いても有効である。なぜなら、図3の該当部分を以下の式(6)に示すように置き換えれば、「パルス数」という明確な基準による重み付け処理が実現できるからである。
また、本実施の形態では、付加処理としてパルスの少ない符号帳の探索時に負の値を加算する例を示したが、これは相対的なので、パルスの多い符号帳の探索時に正の値を加算すれば全く同じ結果が得られることは明らかである。
また、本実施の形態では、固定符号帳ベクトルのパルスの本数として2本と3本を用いたが、これは本数が何本の組み合わせであってもよい。本発明がパルスの本数に依存していないからである。
また、本実施の形態では、パルス数のヴァリエーションとして2種類を用いたが、これは何種類であってもよい。本数の少ない方をより少ない値にすれば簡単に実現可能であり、探索処理は図3に示したものの連結処理でよい。発明者がパルス数1本からパルス数5本の5種類の固定符号帳ベクトルの探索に用いたところ、以下の数値で良好な性能が得られることを符号化・復号化実験により確認している。
1本の固定値 −0.002
2本の固定値 −0.001
3本の固定値 −0.0007
4本の固定値 −0.0005
5本の固定値 相対値なので不要
2本の固定値 −0.001
3本の固定値 −0.0007
4本の固定値 −0.0005
5本の固定値 相対値なので不要
また、本実施の形態では、本数の集合が分かれている符号帳について適用したが、パルスの本数が異なる固定符号帳ベクトルが符号帳内に混在していてもよい。それは、本発明の付加処理が関数値の判定の部分で用いられるため、決められたパルス数の固定符号帳ベクトルの集合がまとまっている必要はないからである。これに関連してさらに言えることは、本実施の形態では、固定符号帳の例として代数的符号帳を用いたが、これは従来からのマルチパルス符号帳や、ROMに固定符号帳ベクトルが直接書き込まれている形式の学習符号帳などにも適用できることは明らかである。マルチパルスは本数そのものが本発明に同様に用いられるし、全ての固定符号帳ベクトルに値が入っている場合でも振幅が平均以上の本数等、本数という情報を抽出することは容易にでき、それを用いればよいからである。
また、本実施の形態では、CELPに対して用いたが、本数のわかる音源ベクトルが格納されている符号帳が存在する符号化/復号化方法であれば、本発明を適用できることは明らかである。なぜなら、本発明の所在は固定符号帳ベクトルの探索内のみであり、適応符号帳の有無や、スペクトル包絡の分析方法がLPCかFFTかフィルタバンクかといったことに依存しないからである。
なお、本実施の形態では、本発明をハードウェアで構成する場合を例にとって説明したが、本発明はソフトウェアで実現することも可能である。
また、本実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部または全てを含むように1チップ化されてもよい。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用してもよい。
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
また、本実施の形態の説明に用いた適応符号帳は、適応音源符号帳と呼ばれることもある。また、固定符号帳は、固定音源符号帳と呼ばれることもある。
2006年5月10日出願の特願2006−131851の日本出願に含まれる明細書、図面および要約書の開示内容は、すべて本願に援用される。
本発明にかかる音声符号化装置及び音声符号化方法は、符号化される入力信号の雑音性、非雑音性に応じた傾向を十分に利用し、良好な音質を得ることができ、例えば、移動体通信システムにおける携帯電話等に適用できる。
本発明は、固定符号帳探索を行う音声符号化装置及び音声符号化方法に関する。
移動体通信においては、伝送帯域の有効利用のために音声や画像のディジタル情報の圧縮符号化が必須である。その中でも携帯電話で広く利用された音声コーデック(符号化/復号化)技術に対する期待は大きく、圧縮率の高い従来の高効率符号化に対してさらなる音質の要求が強まっている。
音声の発声機構をモデル化してベクトル量子化を巧みに応用した基本方式「CELP」(Code Excited Linear Prediction)によって大きく性能を向上させた音声符号化技術は、非特許文献1に記載の代数的符号帳(Algebraic Codebook)のような少数パルスによる固定音源の技術により、一段とその性能を向上させた。一方、雑音性や有声/無声に適応した符号化により、さらに高品質を目指す技術も出てきている。
このような技術として、特許文献1には、CELPの固定音源符号帳による符号化の際、雑音的なコードベクトルの符号化歪みを計算し、その計算結果に対して雑音性の度合いに応じた固定の重み付け値を乗算する一方、非雑音的な駆動音源ベクトルの符号化歪みを計算し、その計算結果に対して雑音性の度合いに応じた固定の重み付け値を乗算し、値が小さい方の乗算結果に係る駆動音源符号を選択することが記載されている。
非雑音的(パルス的)なコードベクトルは、雑音的なコードベクトルと比較して符号化の対象である入力信号との距離が小さくなる傾向にあるため選択される割合が大きく、得られる合成音の音質がパルッシブになり主観的な音質が低下してしまうが、特許文献1に記載の技術は、符号帳を雑音性と非雑音性の2つに分けて、それぞれの距離計算の結果に応じて非雑音性のコードベクトルが選ばれ易くなるように重み(距離への乗算)を掛けるというものである。これにより、雑音的な入力音声を符号化し、復号化した合成音声の音質を向上させることができる。
特許第3404016号公報
Salami, Laflamme, Adoul,"8kbit/s ACELP Coding of Speech with 10ms Speech-Frame:a Candidate for CCITT Standardization",IEEE Proc. ICASSP94,pp.II-97n
しかしながら、上述した特許文献1に記載の技術では、雑音性という尺度の開示が不十分であるため、より良い性能を得る適当な重み付けを行うのは難しい。そのため、特許文献1に記載の技術では、「評価重み決定手段」を用いてより適当な重みが乗ぜられるようにしているものの、これも開示が不十分であるためにどのようにすれば性能が向上するのか不明である。
また、上述した特許文献1に記載の技術では、距離の計算結果に対して乗算により重みをつけており、乗算による重みというのはその距離の絶対値に影響しない。これは、距離が遠い時にも近い時にも同じ重みが掛かるということであり、これは符号化される入力信号の雑音性、非雑音性に応じた傾向を十分に利用しているとは言えない。
本発明の目的は、符号化される入力信号の雑音性、非雑音性に応じた傾向を十分に利用
し、良好な音質を得る音声符号化装置及び音声符号化方法を提供することである。
し、良好な音質を得る音声符号化装置及び音声符号化方法を提供することである。
本発明の音声符号化装置は、入力音声信号のうち声道情報をスペクトル包絡情報に符号化する第1符号化手段と、入力音声信号のうち音源情報を適応符号帳と固定符号帳とにそれぞれ格納された音源ベクトルを用いて符号化する第2符号化手段と、前記固定符号帳に格納された音源ベクトルを探索する探索手段と、を具備し、前記探索手段は、音源ベクトルを形成するパルス本数に応じた重み付けを探索の基準となる計算値に行う重み付け手段を有する構成を採る。
本発明の音声符号化方法は、入力音声信号のうち声道情報をスペクトル包絡情報に符号化する第1符号化工程と、入力音声信号のうち音源情報を適応符号帳と固定符号帳とにそれぞれ格納された音源ベクトルを用いて符号化する第2符号化工程と、前記固定符号帳に格納された音源ベクトルを探索する探索工程と、を具備し、前記探索工程は、音源ベクトルを形成するパルス本数に応じた重み付けを探索の基準となる計算値に行うようにした。
本発明によれば、符号化される入力信号の雑音性、非雑音性に応じた傾向を十分に利用し、良好な音質を得ることができる。
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
(実施の形態)
図1は、本発明の実施の形態に係るCELP符号化装置100の構成を示すブロック図である。このCELP符号化装置100は、声道情報と音源情報とからなる音声信号S11を、声道情報については、LPCパラメータ(線形予測係数)を求めることにより符号化し、音源情報については、予め記憶されている音声モデルのいずれを用いるかを特定するインデックス、すなわち、適応符号帳103および固定符号帳104でどのような音源ベクトル(コードベクトル)を生成するかを特定するインデックスを求めることにより、音源情報を符号化する。
図1は、本発明の実施の形態に係るCELP符号化装置100の構成を示すブロック図である。このCELP符号化装置100は、声道情報と音源情報とからなる音声信号S11を、声道情報については、LPCパラメータ(線形予測係数)を求めることにより符号化し、音源情報については、予め記憶されている音声モデルのいずれを用いるかを特定するインデックス、すなわち、適応符号帳103および固定符号帳104でどのような音源ベクトル(コードベクトル)を生成するかを特定するインデックスを求めることにより、音源情報を符号化する。
具体的には、CELP符号化装置100の各部は以下の動作を行う。
LPC分析部101は、音声信号S11に対して線形予測分析を施し、スペクトル包絡情報であるLPCパラメータを求め、LPC量子化部102及び聴感重み付け部111に出力する。
LPC量子化部102は、LPC分析部101で得られるLPCパラメータを量子化し、得られる量子化LPCパラメータをLPC合成フィルタ109に、量子化LPCパラメータのインデックスをCELP符号化装置100の外部へ出力する。
一方、適応符号帳103は、LPC合成フィルタ109で使用された過去の駆動音源を記憶しており、歪み最小化部112から指示されたインデックスに対応する適応符号帳ラ
グに従って、記憶している駆動音源から1サブフレーム分の音源ベクトルを生成する。この音源ベクトルは、適応符号帳ベクトルとして乗算器106に出力される。
グに従って、記憶している駆動音源から1サブフレーム分の音源ベクトルを生成する。この音源ベクトルは、適応符号帳ベクトルとして乗算器106に出力される。
固定符号帳104は、所定形状の音源ベクトルを複数個予め記憶しており、歪み最小化部112から指示されたインデックスに対応する音源ベクトルを、固定符号帳ベクトルとして乗算器107に出力する。ここで、固定符号帳104は代数的符号帳であり、2種類の本数のパルスによる代数的符号帳を用いた場合の構成について、重み付けが加算によりなされる場合について説明する。
代数的音源とは、多くの標準コーデックに採用されている音源であり、位置と極性(+−)だけが情報の大きさが1のインパルスを少数立てた音源である。例えば、ARIB規格書「RCR STD−27K」の5.3節の「CS−ACELP」での5.3.1.9章や、5.4節の「ACELP」での5.4.3.7章等に記載されている。
なお、上記の適応符号帳103は、有声音のように周期性の強い成分を表現するために使われ、一方、固定符号帳104は、白色雑音のように周期性の弱い成分を表現するために使われる。
ゲイン符号帳105は、歪み最小化部112からの指示に従って、適応符号帳103から出力される適応符号帳ベクトル用のゲイン(適応符号帳ゲイン)、および固定符号帳104から出力される固定符号帳ベクトル用のゲイン(固定符号帳ゲイン)を生成し、それぞれ乗算器106、107に出力する。
乗算器106は、ゲイン符号帳105から出力された適応符号帳ゲインを、適応符号帳103から出力された適応符号帳ベクトルに乗じ、加算器108に出力する。
乗算器107は、ゲイン符号帳105から出力された固定符号帳ゲインを、固定符号帳104から出力された固定符号帳ベクトルに乗じ、加算器108に出力する。
加算器108は、乗算器106から出力された適応符号帳ベクトルと、乗算器107から出力された固定符号帳ベクトルとを加算し、加算後の音源ベクトルを駆動音源としてLPC合成フィルタ109に出力する。
LPC合成フィルタ109は、LPC量子化部102から出力された量子化LPCパラメータをフィルタ係数とし、適応符号帳103及び固定符号帳104で生成される音源ベクトルを駆動音源としたフィルタ関数、すなわち、LPC合成フィルタを用いて合成信号を生成する。この合成信号は、加算器110に出力される。
加算器110は、LPC合成フィルタ109で生成された合成信号を音声信号S11から減算することによって誤差信号を算出し、この誤差信号を聴感重み付け部111に出力する。なお、この誤差信号が符号化歪みに相当する。
聴感重み付け部111は、加算器110から出力された符号化歪みに対して聴感的な重み付けを施し、歪み最小化部112に出力する。
歪み最小化部112は、聴感重み付け部111から出力された符号化歪みが最小となるような、適応符号帳103、固定符号帳104及びゲイン符号帳105の各インデックスをサブフレームごとに求め、これらのインデックスを符号化情報としてCELP符号化装置100の外部に出力する。より詳細には、上記の適応符号帳103及び固定符号帳104に基づいて合成信号を生成し、この信号の符号化歪みを求める一連の処理は閉ループ制
御(帰還制御)となっており、歪み最小化部112は、各符号帳に指示するインデックスを1サブフレーム内において様々に変化させることによって各符号帳を探索し、最終的に得られる、符号化歪みを最小とする各符号帳のインデックスを出力する。
御(帰還制御)となっており、歪み最小化部112は、各符号帳に指示するインデックスを1サブフレーム内において様々に変化させることによって各符号帳を探索し、最終的に得られる、符号化歪みを最小とする各符号帳のインデックスを出力する。
なお、符号化歪みが最小となる際の駆動音源は、サブフレームごとに適応符号帳103へフィードバックされる。適応符号帳103は、このフィードバックにより、記憶されている駆動音源を更新する。
ここで、固定符号帳104の探索方法について説明する。まず、音源ベクトルの探索と符号の導出は以下の式(1)の符号化歪を最小化する音源ベクトルを探索することにより行われる。
E:符号化歪、x:符号化ターゲット、p:適応符号帳ベクトルのゲイン、H:聴感重み付け合成フィルタ、a:適応符号帳ベクトル、q:固定符号帳ベクトルのゲイン、s:固定符号帳ベクトル
一般的に、適応符号帳ベクトルと固定符号帳ベクトルとはオープンループで(別々のループで)探索されるので、固定符号帳104の符号の導出は以下の式(2)の符号化歪を最小化する固定符号帳ベクトルを探索することにより行われる。
E:符号化歪、x:符号化ターゲット(聴感重み付け音声信号)、p:適応符号帳ベクトルの最適ゲイン、H:聴感重み付け合成フィルタ、a:適応符号帳ベクトル、q:固定符号帳ベクトルのゲイン、s:固定符号帳ベクトル、y:固定符号帳探索のターゲットベクトル
よって、代数的符号帳の音源のような少数パルスからなる音源の探索の場合は、yHと
HHを予め計算しておけば、少ない計算量で上記関数Cを算出できる。
HHを予め計算しておけば、少ない計算量で上記関数Cを算出できる。
図2は、図1に示した歪み最小化部112の内部構成を示すブロック図である。図2において、適応符号帳探索部201は、聴感重み付け部111において聴感的な重み付けが施された符号化歪みを用いて、適応符号帳103の探索を行う。探索の結果、適応符号帳ベクトルの符号を固定符号帳探索部202の前処理部203及び適応符号帳103に出力する。
固定符号帳探索部202の前処理部203は、聴感重み付け部111における合成フィルタの係数Hを用いて、ベクトルyH及びマトリクスHHを算出する。yHはターゲットベクトルyを逆順にしてマトリクスHを畳み込み、更にその結果を逆順にすることにより求める。HHはマトリクス同士の掛け算により求める。また、yのパワと、付加する固定値Gとから、以下の式(5)に示すように付加値gを求める。
さらに、前処理部203は、ベクトルyHの要素の極性(+−)から、事前にパルスの極性を決める。具体的には、各位置に立つパルスの極性をyHのその位置の値の極性に合わせることとし、yHの値の極性を別の配列に格納しておく。各位置の極性を別の配列に格納した後、yHの値は全て絶対値をとり正の値に変換しておく。また、格納した各位置の極性に合わせてHHの値も極性を乗ずることによって変換しておく。求めたyH及びHHを探索ループ204、208内の相関値・音源パワ加算部205、209に、付加値gを重み付加部206に出力する。
探索ループ204は、相関値・音源パワ加算部205、重み付加部206及び大小判定部207を備え、探索ループ208は、相関値・音源パワ加算部209及び大小判定部210を備えている。
相関値・音源パワ加算部205は、パルス数2本の場合について、前処理部203から出力されたyHとHHの値を加算することにより関数Cを求め、求めた関数Cを重み付加部206に出力する。
重み付加部206は、上式(5)に示した付加値gを用いて、関数Cに付加処理を行い、付加処理した関数Cを大小判定部207に出力する。
大小判定部207は、重み付加部206において付加処理された関数Cの値の大小を比較し、より大きい関数値を示す場合の関数Cの分子分母を上書き格納する。そして、探索ループ204全体で最も大きくなる関数Cを探索ループ208の大小判定部210に出力する。
相関値・音源パワ加算部209は、パルス数3本の場合について、探索ループ204内の相関値・音源パワ加算部205と同様に、前処理部203から出力されたyHとHHの値を加算することにより関数Cを求め、求めた関数Cを大小判定部210に出力する。
大小判定部210は、探索ループ204の大小判定部207から出力された関数Cを含め、相関値・音源パワ加算部209から出力された関数Cの値の大小を比較し、より大きい関数値を示す場合の関数Cの分子分母を上書き格納する。そして、探索ループ208全体で最も大きくなるパルスの位置の組合せを探索する。大小判定部210は、各パルスの
位置の符号と極性の符号を合わせて固定符号帳ベクトルの符号とし、この符号を固定符号帳104及びゲイン符号帳探索部211に出力する。
位置の符号と極性の符号を合わせて固定符号帳ベクトルの符号とし、この符号を固定符号帳104及びゲイン符号帳探索部211に出力する。
ゲイン符号帳探索部211は、大小判定部210から出力された各パルスの位置の符号と極性の符号を合わせた固定符号帳ベクトルの符号に基づいて、ゲイン符号帳を探索し、探索結果をゲイン符号帳105に出力する。
ここで、上記2つの探索ループ204、208を用いた一連の処理の手順を図3及び図4に詳細に示す。ここでは、代数的符号帳の条件を以下に示す。
(1)ビット数:13ビット
(2)処理単位(サブフレーム長):40
(3)パルス本数:2本と3本
(4)付加する固定値:G=−0.001
この条件のもと、例として以下のような2つに分かれた代数的符号帳が設計できる。
(符号帳0(パルス数2本)の候補位置)
ici00〔20〕={ 0, 2, 4, 6, 8,10,12,14,16,18,
20,22,24,26,28,30,32,34,36,38}
ici01〔20〕={ 1, 3, 5, 7, 9,11,13,15,17,19,
21,23,25,27,29,31,33,35,37,39}
(符号帳1(パルス数3本)の候補位置)
ici10〔10〕={0,4, 8,12,16,20,24,28,32,36}
ici11〔10〕={2,6,10,14,18,22,26,30,34,38}
ici12〔 8〕={1,5,11,15,21,25,31,35}
(2)処理単位(サブフレーム長):40
(3)パルス本数:2本と3本
(4)付加する固定値:G=−0.001
この条件のもと、例として以下のような2つに分かれた代数的符号帳が設計できる。
(符号帳0(パルス数2本)の候補位置)
ici00〔20〕={ 0, 2, 4, 6, 8,10,12,14,16,18,
20,22,24,26,28,30,32,34,36,38}
ici01〔20〕={ 1, 3, 5, 7, 9,11,13,15,17,19,
21,23,25,27,29,31,33,35,37,39}
(符号帳1(パルス数3本)の候補位置)
ici10〔10〕={0,4, 8,12,16,20,24,28,32,36}
ici11〔10〕={2,6,10,14,18,22,26,30,34,38}
ici12〔 8〕={1,5,11,15,21,25,31,35}
上記2つの候補位置でエントリ数は、(20×20×2×2)+(10×10×8×2×2×2)=1600+6400=8000<8192となり、13ビットの代数的符号帳となる。
図3において、ST301では、符号帳0(パルス数2本)の候補位置を設定し、ST302で初期化を行い、ST303では、i0が20未満であることを確認する。i0が20未満である場合、符号帳0から1つ目のパルスの位置を出力してyH及びHHから値を取り出して、それぞれ相関値sy0、パワsh0とする(ST304)。この計算をi0が20(パルス位置候補数)になるまで行う(ST303〜ST306)。なお、ST302〜ST309では、パルス数2本の場合の符号帳探索処理となる。
一方、i0が20未満において、i1も20未満である場合には、ST305〜ST310の処理が繰り返し行われる。この処理では、1つのi0における計算において、符号帳0から2つ目のパルスの位置を出力してyH及びHHから値を取り出して相関値sy0、パワsh0にそれぞれ加算し、相関値sy1、パワsh1とする(ST307)。パワsh1に付加値gを付加した値と相関値sy1とを用いて、関数Cの大小比較を行い(ST308)、より大きい関数値を示す関数Cの分子、分母を記憶する(ST309)この計算をi1が20(パルス位置候補数)になるまで行う(ST305〜ST310)。
i0及びi1が共に20以上となった場合、図4のST311に移行し、符号帳1(パルス数3本)の候補位置を設定する。なお、ST310以降では、パルス数3本の場合の符号帳探索処理となる。
ST312では、i0が10未満であることを確認して、i0が10未満である場合、符号帳1から1つ目のパルスの位置を出力してyH及びHHから値を取り出して、それぞ
れ相関値sy0、パワsh0とする(ST313)。この計算をi0が10(パルス位置候補数)になるまで行う(ST312〜ST315)。
れ相関値sy0、パワsh0とする(ST313)。この計算をi0が10(パルス位置候補数)になるまで行う(ST312〜ST315)。
一方、i0が10未満において、i1も10未満である場合には、ST314〜ST318の処理が繰り返し行われる。この処理では、一つのi1における計算において、符号帳1から2つ目のパルスの位置を出力してyH及びHHから値を取り出して相関値sy0、パワsh0にそれぞれ加算し、相関値sy1、パワsh1とする(ST316)。ただし、ST314〜ST318の繰り返し処理におけるST317において、i2が8未満の場合、ST317〜ST322の処理が繰り返し行われる。
この処理では、一つのi2における計算において、符号帳1から3つ目のパルスの位置を出力してyH及びHHから値を取り出して相関値sy1、パワsh1にそれぞれ加算し、相関値sy2、パワsh2とする(ST319)。ST309において最大の関数値を示す関数Cの分子、分母と、相関値sy2及びパワsh2からなる関数値との大小比較を行い(ST320)、より大きい関数値を示す関数Cの分子、分母を記憶する(ST321)この計算をi2が8(パルス位置候補数)になるまで行う(ST317〜ST322)。ST320では、付加値gの影響により、パルス数2本よりもパルス数3本の方が選ばれやすくなる。
i0及びi1が共に10以上、かつ、i2が8以上となった場合、ST323において探索処理を終了する。
以上により、「パルスの本数」という明確な基準に基づく重み付けが実現できる。また、重み付けの方法として、付加処理を適用したことにより、符号化対象であるターゲットベクトルとの誤差が大きい(エネルギーの分散した無声性(雑音性)のある)場合には、重み付けが相対的に大きな意味を持ち、誤差が小さい(エネルギーの集中した有声性のある)場合には、重み付けが相対的に小さな意味を持つことになる。したがって、より高品質な合成音が得られるようになる。その理由は、以下のように定性的に示される。
ターゲットベクトルが有声性(非雑音性)の場合には、選択の基準となる関数値が高い部分と低い部分が存在する傾向がある。この場合、関数値のみの大小で音源ベクトルが選択されることが望ましく、本発明の固定値の付加処理では大きな変化がないので、関数値のみの大小で音源ベクトルが選択される。
一方、入力が無声性(雑音性)の場合には、関数値は全て低くなる。この場合、パルスの本数が多い音源ベクトルが選ばれる方が望ましく、本発明の固定値の付加処理が相対的に大きな意味を持つので、パルスの本数が多い音源ベクトルが選ばれる。
このように実施の形態によれば、パルス数という明確な尺度で重み処理を行うために安定した性能を得ることができ、また、重み付けの方法として付加処理を適用することにより、関数値が大きい場合は相対的に小さくなり、関数値が小さい場合は相対的に大きくなるので、無声性(雑音性)の部分においてのみパルス数の多い音源ベクトルを選択することができるので、音質向上を図ることができる。
なお、本実施の形態では、重み付けの方法として、特に付加処理についてその有効性を説明したが、本発明は乗算を用いても有効である。なぜなら、図3の該当部分を以下の式(6)に示すように置き換えれば、「パルス数」という明確な基準による重み付け処理が実現できるからである。
また、本実施の形態では、付加処理としてパルスの少ない符号帳の探索時に負の値を加算する例を示したが、これは相対的なので、パルスの多い符号帳の探索時に正の値を加算すれば全く同じ結果が得られることは明らかである。
また、本実施の形態では、固定符号帳ベクトルのパルスの本数として2本と3本を用いたが、これは本数が何本の組み合わせであってもよい。本発明がパルスの本数に依存していないからである。
また、本実施の形態では、パルス数のヴァリエーションとして2種類を用いたが、これは何種類であってもよい。本数の少ない方をより少ない値にすれば簡単に実現可能であり、探索処理は図3に示したものの連結処理でよい。発明者がパルス数1本からパルス数5本の5種類の固定符号帳ベクトルの探索に用いたところ、以下の数値で良好な性能が得られることを符号化・復号化実験により確認している。
1本の固定値 −0.002
2本の固定値 −0.001
3本の固定値 −0.0007
4本の固定値 −0.0005
5本の固定値 相対値なので不要
2本の固定値 −0.001
3本の固定値 −0.0007
4本の固定値 −0.0005
5本の固定値 相対値なので不要
また、本実施の形態では、本数の集合が分かれている符号帳について適用したが、パルスの本数が異なる固定符号帳ベクトルが符号帳内に混在していてもよい。それは、本発明の付加処理が関数値の判定の部分で用いられるため、決められたパルス数の固定符号帳ベクトルの集合がまとまっている必要はないからである。これに関連してさらに言えることは、本実施の形態では、固定符号帳の例として代数的符号帳を用いたが、これは従来からのマルチパルス符号帳や、ROMに固定符号帳ベクトルが直接書き込まれている形式の学習符号帳などにも適用できることは明らかである。マルチパルスは本数そのものが本発明に同様に用いられるし、全ての固定符号帳ベクトルに値が入っている場合でも振幅が平均以上の本数等、本数という情報を抽出することは容易にでき、それを用いればよいからである。
また、本実施の形態では、CELPに対して用いたが、本数のわかる音源ベクトルが格納されている符号帳が存在する符号化/復号化方法であれば、本発明を適用できることは明らかである。なぜなら、本発明の所在は固定符号帳ベクトルの探索内のみであり、適応符号帳の有無や、スペクトル包絡の分析方法がLPCかFFTかフィルタバンクかといったことに依存しないからである。
なお、本実施の形態では、本発明をハードウェアで構成する場合を例にとって説明したが、本発明はソフトウェアで実現することも可能である。
また、本実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部または全てを含むように1チップ化されてもよい。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用してもよい。
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
また、本実施の形態の説明に用いた適応符号帳は、適応音源符号帳と呼ばれることもある。また、固定符号帳は、固定音源符号帳と呼ばれることもある。
2006年5月10日出願の特願2006−131851の日本出願に含まれる明細書、図面および要約書の開示内容は、すべて本願に援用される。
本発明にかかる音声符号化装置及び音声符号化方法は、符号化される入力信号の雑音性、非雑音性に応じた傾向を十分に利用し、良好な音質を得ることができ、例えば、移動体通信システムにおける携帯電話等に適用できる。
Claims (5)
- 入力音声信号のうち声道情報をスペクトル包絡情報に符号化する第1符号化手段と、
入力音声信号のうち音源情報を適応符号帳と固定符号帳とにそれぞれ格納された音源ベクトルを用いて符号化する第2符号化手段と、
前記固定符号帳に格納された音源ベクトルを探索する探索手段と、
を具備し、
前記探索手段は、音源ベクトルを形成するパルス本数に応じた重み付けを探索の基準となる計算値に行う重み付け手段を有する音声符号化装置。 - 前記重み付け手段は、パルス本数が少ない音源ベクトルほど選択されにくくなるように重み付けを行う請求項1に記載の音声符号化装置。
- 前記重み付け手段は、加算による重み付けを行う請求項1に記載の音声符号化装置。
- 前記重み付け手段は、符号化対象であるターゲットとスペクトル包絡情報とにより合成された音源ベクトルから算出されるコスト関数を探索の基準となる前記計算値とし、前記ターゲットのパワと、合成された前記音源ベクトルのパワとを乗じた値に予め定められた固定値を乗じた値を前記計算値に加算する請求項3に記載の音声符号化装置。
- 入力音声信号のうち声道情報をスペクトル包絡情報に符号化する第1符号化工程と、
入力音声信号のうち音源情報を適応符号帳と固定符号帳とにそれぞれ格納された音源ベクトルを用いて符号化する第2符号化工程と、
前記固定符号帳に格納された音源ベクトルを探索する探索工程と、
を具備し、
前記探索工程は、音源ベクトルを形成するパルス本数に応じた重み付けを探索の基準となる計算値に行う音声符号化方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006131851 | 2006-05-10 | ||
JP2006131851 | 2006-05-10 | ||
PCT/JP2007/059580 WO2007129726A1 (ja) | 2006-05-10 | 2007-05-09 | 音声符号化装置及び音声符号化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2007129726A1 true JPWO2007129726A1 (ja) | 2009-09-17 |
Family
ID=38667834
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008514506A Withdrawn JPWO2007129726A1 (ja) | 2006-05-10 | 2007-05-09 | 音声符号化装置及び音声符号化方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20090164211A1 (ja) |
JP (1) | JPWO2007129726A1 (ja) |
WO (1) | WO2007129726A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008072732A1 (ja) * | 2006-12-14 | 2008-06-19 | Panasonic Corporation | 音声符号化装置および音声符号化方法 |
CN100578620C (zh) * | 2007-11-12 | 2010-01-06 | 华为技术有限公司 | 固定码书搜索方法及搜索器 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI98104C (fi) * | 1991-05-20 | 1997-04-10 | Nokia Mobile Phones Ltd | Menetelmä herätevektorin generoimiseksi ja digitaalinen puhekooderi |
US5396576A (en) * | 1991-05-22 | 1995-03-07 | Nippon Telegraph And Telephone Corporation | Speech coding and decoding methods using adaptive and random code books |
EP0773533B1 (en) * | 1995-11-09 | 2000-04-26 | Nokia Mobile Phones Ltd. | Method of synthesizing a block of a speech signal in a CELP-type coder |
DE69721595T2 (de) * | 1996-11-07 | 2003-11-27 | Matsushita Electric Ind Co Ltd | Verfahren zur Erzeugung eines Vektorquantisierungs-Codebuchs |
EP2154679B1 (en) * | 1997-12-24 | 2016-09-14 | BlackBerry Limited | Method and apparatus for speech coding |
FI113571B (fi) * | 1998-03-09 | 2004-05-14 | Nokia Corp | Puheenkoodaus |
EP2378517A1 (en) * | 1998-06-09 | 2011-10-19 | Panasonic Corporation | Speech coding apparatus and speech decoding apparatus |
US6173257B1 (en) * | 1998-08-24 | 2001-01-09 | Conexant Systems, Inc | Completed fixed codebook for speech encoder |
KR100391527B1 (ko) * | 1999-08-23 | 2003-07-12 | 마츠시타 덴끼 산교 가부시키가이샤 | 음성 부호화 장치, 기록 매체, 음성 복호화 장치, 신호 처리용 프로세서, 음성 부호화 복호화 시스템, 통신용 기지국, 통신용 단말 및 무선 통신 시스템 |
AU2002224116A1 (en) * | 2000-11-27 | 2002-06-03 | Matsushita Electric Industrial Co., Ltd. | Method, device and program for coding and decoding acoustic parameter, and method, device and program for coding and decoding sound |
JP3576485B2 (ja) * | 2000-11-30 | 2004-10-13 | 松下電器産業株式会社 | 固定音源ベクトル生成装置及び音声符号化/復号化装置 |
JP3404016B2 (ja) * | 2000-12-26 | 2003-05-06 | 三菱電機株式会社 | 音声符号化装置及び音声符号化方法 |
JP4245288B2 (ja) * | 2001-11-13 | 2009-03-25 | パナソニック株式会社 | 音声符号化装置および音声復号化装置 |
CA2524243C (en) * | 2003-04-30 | 2013-02-19 | Matsushita Electric Industrial Co. Ltd. | Speech coding apparatus including enhancement layer performing long term prediction |
SG123639A1 (en) * | 2004-12-31 | 2006-07-26 | St Microelectronics Asia | A system and method for supporting dual speech codecs |
JP3981399B1 (ja) * | 2006-03-10 | 2007-09-26 | 松下電器産業株式会社 | 固定符号帳探索装置および固定符号帳探索方法 |
-
2007
- 2007-05-09 US US12/299,986 patent/US20090164211A1/en not_active Abandoned
- 2007-05-09 WO PCT/JP2007/059580 patent/WO2007129726A1/ja active Application Filing
- 2007-05-09 JP JP2008514506A patent/JPWO2007129726A1/ja not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
WO2007129726A1 (ja) | 2007-11-15 |
US20090164211A1 (en) | 2009-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100369112C (zh) | 可变速率语音编码 | |
US6393390B1 (en) | LPAS speech coder using vector quantized, multi-codebook, multi-tap pitch predictor and optimized ternary source excitation codebook derivation | |
JP3981399B1 (ja) | 固定符号帳探索装置および固定符号帳探索方法 | |
JPWO2008072671A1 (ja) | 音声復号化装置およびパワ調整方法 | |
JP5687706B2 (ja) | 量子化装置及び量子化方法 | |
JP5388849B2 (ja) | 音声符号化装置および音声符号化方法 | |
JP6644848B2 (ja) | ベクトル量子化装置、音声符号化装置、ベクトル量子化方法、及び音声符号化方法 | |
JPWO2007129726A1 (ja) | 音声符号化装置及び音声符号化方法 | |
EP2099025A1 (en) | Audio encoding device and audio encoding method | |
JPWO2008001866A1 (ja) | 音声符号化装置及び音声符号化方法 | |
JPH1063300A (ja) | 音声復号化装置及び音声符号化装置 | |
EP2116996A1 (en) | Encoding device and encoding method | |
JPH07168596A (ja) | 音声符号化装置 | |
KR100550002B1 (ko) | 음성부호화기에서 적응 코드북 검색기 및 그 방법 | |
JP3984048B2 (ja) | 音声/音響信号の符号化方法及び電子装置 | |
US20130166306A1 (en) | Pulse location search device, codebook search device, and methods therefor | |
JP3174780B2 (ja) | 拡散音源ベクトル生成装置及び拡散音源ベクトル生成方法 | |
JP3174783B2 (ja) | Celp型音声符号化装置及びcelp型音声符号化方法 | |
JP2000347700A (ja) | Celp型音声復号化装置及びcelp型音声復号化方法 | |
JP2000347699A (ja) | 拡散音源ベクトル生成装置及び拡散音源ベクトル生成方法 | |
JP2000148195A (ja) | 音声符号化装置 | |
JP2000330596A (ja) | 拡散音源ベクトル生成装置及び拡散音源ベクトル生成方法 | |
JP2013068847A (ja) | 符号化方法及び符号化装置 | |
JPH09269800A (ja) | 音声符号化装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100301 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20120606 |