(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0012】
以下、本発明の実施形態について、説明する。なお、以下の説明に用いる図面では、同じ機能を持つ構成部や同じ処理を行うステップには同一の符号を記し、重複説明を省略する。以下の説明において、ベクトルや行列の各要素単位で行われる処理は、特に断りが無い限り、そのベクトルやその行列の全ての要素に対して適用されるものとする。
【0013】
<第一実施形態>
図1は第一実施形態に係る音声ピッチ強調装置の機能ブロック図を、
図2はその処理フローを示す。
【0014】
図1を参照して、第一実施形態の音声ピッチ強調装置の処理手続きを説明する。第一実施形態の音声ピッチ強調装置は、入力された信号を分析してピッチ周期とピッチ利得を得て、そのピッチ周期とピッチ利得に基づきピッチを強調するものである。本実施形態では、時間区間ごとの入力された音信号に対してピッチ周期に対応するピッチ成分にピッチ利得を乗算したものを用いてピッチ強調処理を施す際に、スペクトル包絡が平坦である時間区間のピッチ成分の強調の度合いを、スペクトル包絡が平坦でない時間区間のピッチ成分の強調の度合いより小さくする。または、時間区間のピッチ成分の強調の度合いを、スペクトル包絡が平坦であればあるほど小さくする。より具体的には、スペクトル包絡が平坦である時間区間については、ピッチ利得の代わりに、ピッチ利得に1より小さい値を乗算したものを用いる。子音のスペクトルは、母音に比べ、スペクトル包絡が平坦になる性質がある。本実施形態では、上述の課題を解決するために、この性質を利用し、強調の度合いを変更する。
【0015】
第一実施形態の音声ピッチ強調装置は、信号特徴分析部170と自己相関関数算出部110とピッチ分析部120とピッチ強調部130と信号記憶部140とを備えるものであり、更にピッチ情報記憶部150と自己相関関数記憶部160と減衰係数記憶部180とを備えてもよい。
【0016】
音声ピッチ強調装置は、例えば、中央演算処理装置(CPU: Central Processing Unit)、主記憶装置(RAM: Random Access Memory)などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。音声ピッチ強調装置は、例えば、中央演算処理装置の制御のもとで各処理を実行する。音声ピッチ強調装置に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて中央演算処理装置へ読み出されて他の処理に利用される。音声ピッチ強調装置の各処理部は、少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。音声ピッチ強調装置が備える各記憶部は、例えば、RAM(Random Access Memory)などの主記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。ただし、各記憶部は、必ずしも音声ピッチ強調装置がその内部に備える必要はなく、ハードディスクや光ディスクもしくはフラッシュメモリ(Flash Memory)のような半導体メモリ素子により構成される補助記憶装置により構成し、音声ピッチ強調装置の外部に備える構成としてもよい。
【0017】
第一実施形態の音声ピッチ強調装置が行う主な処理は自己相関関数算出処理(S110)とピッチ分析処理(S120)と信号特徴分析処理(S170)とピッチ強調処理(S130)であり(
図2参照)、これらの処理は音声ピッチ強調装置が備える複数のハードウェア資源が連携して行うものであるので、以下では、自己相関関数算出処理(S110)とピッチ分析処理(S120)と信号特徴分析処理(S170)とピッチ強調処理(S130)のそれぞれについて、関連する処理と共に説明する。
【0018】
[自己相関関数算出処理(S110)]
まず、音声ピッチ強調装置が行う自己相関関数算出処理とこれに関連する処理について説明する。
【0019】
自己相関関数算出部110には、時間領域の音信号(入力信号)が入力される。この音信号は、例えば音声信号などの音響信号を符号化装置で圧縮符号化して符号を得て、その符号化装置に対応する復号装置で符号を復号して得た信号である。自己相関関数算出部110には、所定の時間長のフレーム(時間区間)単位で、音声ピッチ強調装置に入力された現在のフレームの時間領域の音信号のサンプル列が入力される。1フレームのサンプル列の長さを示す正の整数をNとすると、自己相関関数算出部110には、現在のフレームの時間領域の音信号のサンプル列を構成するN個の時間領域の音信号サンプルが入力される。自己相関関数算出部110は、入力されたN個の時間領域の音信号サンプルを含む最新のL個(Lは正の整数)の音信号サンプルによるサンプル列における時間差0の自己相関関数R
0及び複数個(M個、Mは正の整数)の所定の時間差τ(1),…,τ(M)それぞれに対する自己相関関数R
τ(1),…,R
τ(M)を算出する。すなわち、自己相関関数算出部110は、現在のフレームの時間領域の音信号サンプルを含む最新の音信号サンプルによるサンプル列における自己相関関数を算出する。
【0020】
なお、以降では、現在のフレームの処理において自己相関関数算出部110が算出した自己相関関数、すなわち、現在のフレームの時間領域の音信号サンプルを含む最新の音信号サンプルによるサンプル列における自己相関関数、のことを「現在のフレームの自己相関関数」とも呼ぶ。同様に、過去のあるフレームをフレームFとしたとき、フレームFの処理において自己相関関数算出部110が算出した自己相関関数、すなわち、フレームFの時間領域の音信号サンプルを含むフレームFの時点での最新の音信号サンプルによるサンプル列における自己相関関数、のことを「フレームFの自己相関関数」とも呼ぶ。また、「自己相関関数」は単に「自己相関」と呼ぶこともある。LがNより大きい値である場合には、自己相関関数の算出に最新のL個の音信号サンプルを用いるために、音声ピッチ強調装置内には信号記憶部140を備え、1つ前のフレームまでに入力された最新の少なくともL‐N個の音信号サンプルを記憶できるようにしておく。そして、自己相関関数算出部110は、現在のフレームのN個の時間領域の音信号サンプルが入力された際には、信号記憶部140に記憶された最新のL‐N個の音信号サンプルをX
0,X
1,…,X
L−N−1として読み出し、入力されたN個の時間領域の音信号サンプルをX
L−N,X
L−N+1,…,X
L−1とすることにより、最新のL個の音信号サンプルX
0,X
1,…,X
L−1を得る。
【0021】
そして、自己相関関数算出部110は、最新のL個の音信号サンプルX
0,X
1,…,X
L−1を用いて、時間差0の自己相関関数R
0、及び複数個の所定の時間差τ(1),…,τ(M)それぞれに対する自己相関関数R
τ(1),…,R
τ(M)を算出する。τ(1),…,τ(M)や0などの時間差をτとすると、自己相関関数算出部110は、自己相関関数R
τを例えば以下の式(1)で算出する。
【0023】
自己相関関数算出部110は算出した自己相関関数R
0,R
τ(1),…,R
τ(M)をピッチ分析部120に出力する。
【0024】
なお、この時間差τ(1),…,τ(M)は後述するピッチ分析部120が求める現在のフレームのピッチ周期T
0の候補である。例えば、サンプリング周波数32kHzの音声信号を主とする音信号の場合には、音声のピッチ周期の候補として好適な75から320までの整数値をτ(1),…,τ(M)とするなどの実装が考えられる。なお、式(1)のR
τに代えて、式(1)のR
τをR
0で除算した正規化自己相関関数R
τ/R
0を求めてもよい。ただし、Lを8192などのピッチ周期T
0の候補である75から320に対して十分に大きな値とした場合などには、自己相関関数R
τに代えて正規化自己相関関数R
τ/R
0を求めるよりも、以下で説明する演算量を抑えた方法で自己相関関数R
τを算出するほうがよい。
【0025】
自己相関関数R
τは、式(1)そのもので算出してもよいが、式(1)で求まるのと同じ値を別の算出方法で算出してもよい。例えば、音声ピッチ強調装置内に自己相関関数記憶部160を備えて1つ前のフレーム(直前のフレーム)の自己相関関数を算出する処理で得られた自己相関関数(直前のフレーム自己相関関数)R
τ(1),…,R
τ(M)を記憶しておき、自己相関関数算出部110は、自己相関関数記憶部160から読み出した直前のフレームの処理で得られた自己相関関数(直前のフレーム自己相関関数)R
τ(1),…,R
τ(M)それぞれに、新たに入力された現在のフレームの音信号サンプルの寄与分の加算と、最も過去のフレームの寄与分の減算と、を行うことにより現在のフレームの自己相関関数R
τ(1),…,R
τ(M)を算出するようにしてもよい。これにより、式(1)そのもので算出するよりも自己相関関数の算出に要する演算量を抑えることが可能である。この場合、τ(1),…,τ(M)のそれぞれをτとすると、自己相関関数算出部110は、現在のフレームの自己相関関数R
τを、直前のフレームの処理で得られた自己相関関数R
τ(直前のフレームの自己相関関数R
τ)に対して、以下の式(2)で得られる差分ΔR
τ+を加算し、式(3)で得られる差分ΔR
τ−を減算することにより得る。
【0027】
また、入力された音信号の最新のL個の音信号サンプルそのものではなく、当該L個の音信号サンプルに対してダウンサンプリングやサンプルの間引きなどを行うことによりサンプル数を減らした信号を用いて、上記と同様の処理により自己相関関数を算出することで演算量を節約してもよい。この場合、M個の時間差τ(1),…,τ(M)は、例えばサンプル数を半分にした際には半分のサンプル数で表現する。例えば、上述したサンプリング周波数32kHzの8192個の音信号サンプルをサンプリング周波数16kHzの4096個のサンプルにダウンサンプリングした場合には、ピッチ周期Tの候補であるτ(1),…,τ(M)は、75から320の約半分である37から160とすればよい。
【0028】
なお、信号記憶部140に記憶された音信号サンプルは後述する信号特徴分析処理にも用いられる。具体的には、後述する信号特徴分析処理では信号記憶部140に記憶されたJ-N個(Jは正の整数)の音信号サンプルが用いられる。すなわち、LとJのうちの大きいほうの値をKとすると(K=max(L,J)とすると)、1つ前のフレームまでに入力された最新の少なくともK‐N個の音信号サンプルを信号記憶部140に記憶しておく必要がある。そこで、信号記憶部140は、音声ピッチ強調装置が現在のフレームについての後述するピッチ強調部130の処理までを終えた後に、その時点で最新のK‐N個の音信号サンプルを記憶しておくように記憶内容を更新する。具体的には、例えば、K>2Nの場合、信号記憶部140は、記憶されているK‐N個の音信号サンプルのうちの一番古いN個の音信号サンプルXR
0,XR
1,…,XR
N−1を削除し、XR
N,XR
N+1,…,XR
K−N−1をXR
0,XR
1,…,XR
K−2N−1とし、入力された現在のフレームのN個の時間領域の音信号サンプルをXR
K−2N,XR
L−2N+1,…,XR
K−N−1として新たに記憶する。また、K≦2Nの場合、信号記憶部140は、記憶されているK‐N個の音信号サンプルXR
0,XR
1,…,XR
K−N−1を削除し、入力された現在のフレームのN個の時間領域の音信号サンプルのうちの最新のK‐N個の音信号サンプルをXR
0,XR
1,…,XR
K−N−1として新たに記憶する。なお、K≦Nである場合には、音声ピッチ強調装置内には信号記憶部140を備える必要はない。
【0029】
また、自己相関関数記憶部160は、自己相関関数算出部110が現在のフレームについての自己相関関数の算出を終えた後に、算出した現在のフレームの自己相関関数R
τ(1),…,R
τ(M)を記憶しておくように記憶内容を更新する。具体的には、自己相関関数記憶部160は、記憶されているR
τ(1),…,R
τ(M)を削除し、算出した現在のフレームの自己相関関数R
τ(1),…,R
τ(M)を新たに記憶する。
【0030】
なお、上述の説明では、最新のL個の音信号サンプルが現在のフレームのN個の音信号サンプルを含む(つまりL≧N)ことを前提としているが、必ずしもL≧Nである必要はなく、L<Nであってもよい。この場合、自己相関関数算出部110は、現在のフレームのN個に含まれる連続したL個の音信号サンプルX
0,X
1,…,X
L−1を用いて、時間差0の自己相関関数R
0、及び複数個の所定の時間差τ(1),…,τ(M)それぞれに対する自己相関関数R
τ(1),…,R
τ(M)を算出すればよい。
【0031】
[ピッチ分析処理(S120)]
次に、音声ピッチ強調装置が行うピッチ分析処理について説明する。
【0032】
ピッチ分析部120には、自己相関関数算出部110が出力した現在のフレームの自己相関関数R
0,R
τ(1),…,R
τ(M)が入力される。
【0033】
ピッチ分析部120は、所定の時間差に対する現在のフレームの自己相関関数R
τ(1),…,R
τ(M)の中での最大値を求め、自己相関関数の最大値と時間差0の自己相関関数R
0の比を現在のフレームのピッチ利得σ
0として得て、また、自己相関関数が最大値となる時間差を現在のフレームのピッチ周期T
0として得て、それぞれをピッチ強調部130へ出力する。
【0034】
[信号特徴分析処理(S170)]
次に、音声ピッチ強調装置が行う信号特徴分析処理について説明する。
【0035】
信号特徴分析部170には、時間領域の音信号に由来する情報が入力される。この音信号は、自己相関関数算出部110に入力される音信号と同じ信号である。
【0036】
例えば、信号特徴分析部170には、所定の時間長のフレーム(時間区間)単位で、音声ピッチ強調装置に入力された現在のフレームの時間領域の音信号のサンプル列が入力される。すなわち、信号特徴分析部170には、現在のフレームの時間領域の音信号のサンプル列を構成するN個の時間領域の音信号サンプルが入力される。この場合には、信号特徴分析部170は、入力されたN個の時間領域の音信号サンプルを含む最新のJ個(Jは正の整数)の音信号サンプルによるサンプル列を用いて、現在のフレームのスペクトル包絡が平坦であるか否かを表す情報、または、現在のフレームのスペクトル包絡の平坦度合いの指標値、を得て、信号分析情報I
0としてピッチ強調部130へ出力する。すなわち、この場合は、「時間領域の音信号に由来する情報」は現在のフレームの時間領域の音信号のサンプル列(
図1中、二点鎖線で示す)である。
【0037】
なお、前述の通り、子音のスペクトルは、母音に比べ、スペクトル包絡が平坦になる性質がある。そこで、「スペクトル包絡の平坦度合いの指標値」を「子音らしさの指標値」ともいい、「スペクトル包絡が平坦であるか否かを表す情報」を「子音であるか否かを表す情報」ともいう。
【0038】
信号特徴分析部170は例えば下記の例1−1から例1−7の信号特徴分析処理により信号分析情報I
0を得る。
【0039】
(信号特徴分析処理の例1−1:スペクトル包絡の平坦度合いの指標値を信号分析情報とする例その1)
この例では、信号特徴分析部170は、まず、入力されたN個の時間領域の音信号サンプルを含む最新のJ個の音信号サンプルによるサンプル列からT次のLSPパラメータθ[1],θ[2],…,θ[T]を得る(Step 1-1-1)。信号特徴分析部170は、次に、Step 1-1-1で得たT次のLSPパラメータθ[1],θ[2],…,θ[T]を用いて、下記の指標Qを現在のフレームのスペクトル包絡の平坦度合いの指標値(便宜上、「子音らしさの第1−1の指標値」ともいう)として得る(Step 1-1-2)。
【0041】
(信号特徴分析処理の例1−2:スペクトル包絡の平坦度合いの指標値を信号分析情報とする例その2)
この例では、信号特徴分析部170は、まず、入力されたN個の時間領域の音信号サンプルを含む最新のJ個の音信号サンプルによるサンプル列からT次のLSPパラメータθ[1],θ[2],…,θ[T]を得る(Step 1-2-1)。信号特徴分析部170は、次に、Step 1-2-1で得たT次のLSPパラメータθ[1],θ[2],…,θ[T]を用いて、隣接するLSPパラメータの間隔の最小値、すなわち、下記の指標Q'、を現在のフレームのスペクトル包絡の平坦度合いの指標値(便宜上、「子音らしさの第1−2の指標値」ともいう)として得る(Step 1-2-2)。
【0043】
(信号特徴分析処理の例1−3:スペクトル包絡の平坦度合いの指標値を信号分析情報とする例その3)
この例では、信号特徴分析部170は、まず、入力されたN個の時間領域の音信号サンプルを含む最新のJ個の音信号サンプルによるサンプル列からT次のLSPパラメータθ[1],θ[2],…,θ[T]を得る(Step 1-3-1)。信号特徴分析部170は、次に、Step 1-3-1で得たT次のLSPパラメータθ[1],θ[2],…,θ[T]を用いて、隣接するLSPパラメータの間隔の値と最低次のLSPパラメータの値のうちの最小値、すなわち、下記の指標Q''、を現在のフレームのスペクトル包絡の平坦度合いの指標値(便宜上、「子音らしさの第1−3の指標値」ともいう)として得る(Step 1-3-2)。
【0045】
(信号特徴分析処理の例1−4:スペクトル包絡の平坦度合いの指標値を信号分析情報とする例その4)
この例では、信号特徴分析部170は、まず、入力されたN個の時間領域の音信号サンプルを含む最新のJ個の音信号サンプルによるサンプル列からp次のPARCOR係数k[1],k[2],…,k[p]を得る(Step 1-4-1)。信号特徴分析部170は、次に、Step 1-4-1で得たp次のPARCOR係数k[1],k[2],…,k[p]を用いて、下記の指標Q'''を現在のフレームのスペクトル包絡の平坦度合いの指標値(便宜上、「子音らしさの第1−4の指標値」ともいう)として得る(Step 1-4-2)。
【0047】
(信号特徴分析処理の例1−5:複数の指標値を組み合わせた指標値を信号分析情報とする例)
この例では、信号特徴分析部170は、例1−1〜例1−4の方法により、子音らしさの第1−1〜第1−4の指標値を得る(Step 1-5-1)。信号特徴分析部170は、さらに、Step 1-5-1で得た子音らしさの第1−1〜第1−4の指標値の重み付け加算により、第1−1の指標値が大きな値になるほど大きな値になり、かつ、第1−2の指標値が大きな値になるほど大きな値になり、かつ、第1−3の指標値が大きな値になるほど大きな値になり、かつ、第1−4の指標値が大きな値になるほど大きな値になる値を、現在のフレームの子音らしさの指標値(便宜上、「第1−5の指標値」ともいう)として得て、得た第1−5の指標値を信号分析情報I
0として出力する(Step 1-5-2)。
【0048】
前述の通り、子音らしさの第1−1〜第1−4の指標値は、それぞれ子音らしさを表す指標である。この例では4つの指標値を組み合わせることでより柔軟に子音らしさの指標値を設定することができる。
【0049】
なお、信号特徴分析部170は、子音らしさの第1−1〜第1−4の指標値のうちの少なくとも2個を得て(Step 1-5-1')、Step 1-5-1'で得た少なくとも2個の子音らしさの指標値の重み付け加算により、Step 1-5-1'で得た指標値それぞれが大きな値になるほど大きな値になる値を、現在のフレームの子音らしさの第1−5の指標値として得て、得た第1−5の指標値を信号分析情報I
0として出力してもよい(Step 1-5-2')。
【0050】
信号特徴分析処理の例1−1〜例1−5ではスペクトル包絡の平坦度合いの指標値(子音らしさの指標値)を信号分析情報とする例を説明してきた。ここからは、スペクトル包絡が平坦であるか否かを表す情報(子音であるか否かを表す情報)を信号分析情報とする例を説明する。
【0051】
(信号特徴分析処理の例1−6:スペクトル包絡が平坦であるか否かを表す情報を信号分析情報とする例その1)
この例では、信号特徴分析部170は、まず、例1−1〜例1−5の何れかと同じ方法により、現在のフレームの子音らしさの第1−1〜第1−5の指標値の何れかを得る(Step 1-6-1)。信号特徴分析部170は、次に、Step 1-6-1で得た指標値が予め定めた閾値以上または閾値を超える場合には、現在のフレームが子音であることを表す情報(「第1−1の指標値」〜「第1−5の指標値」に対応する「現在のフレームが子音であるか否かを表す情報」をそれぞれ、便宜上、「第1−1の情報」〜「第1−5の情報」ともいう)を信号分析情報I
0として出力し、そうでない場合には、現在のフレームが子音でないことを表す第2−1〜第2−5の情報の何れかを信号分析情報I
0として出力する(Step 1-6-2)。
【0052】
(信号特徴分析処理の例1−7:スペクトル包絡が平坦であるか否かを表す情報を信号分析情報とする例その2)
この例では、信号特徴分析部170は、まず、例1−1〜例1−4と同じ方法により、現在のフレームの子音らしさの第1−1〜第1−4の指標値を得る(Step 1-7-1)。次に、信号特徴分析部170は、Step 1-7-1で得た4つの子音らしさの第1−1〜第1−4の指標値のぞれぞれと、予め定めた閾値との大小関係に基づき、各子音らしさの第1−1〜第1−4の指標値に対して、現在のフレームが子音であることを表す情報、または、現在のフレームが子音でないことを表す情報を得る(Step 1-7-2)。なお、閾値は4つの第1−1〜第1−4の指標値毎に設定するものとし、第1−1〜第1−4の指標値に対応する現在のフレームが子音であるか否かを表す情報をそれぞれ第1−1〜第1−4の情報ともいう。例えば、第1−1の指標値が予め定めた閾値以上または閾値を超える場合には、現在のフレームが子音であることを表す第1−1の情報を得て、そうでない場合には、現在のフレームが子音でないことを表す第1−1の情報を得る。同様に、第1−2〜第1−4の指標値と予め定めた閾値との大小関係に基づき第1−2〜第1−4の情報を得る。
【0053】
信号特徴分析部170は、4つの第1−1〜第1−4の情報の論理演算に基づき、現在のフレームが子音であることを表す情報(便宜上、「第1−6の情報」ともいう)、または、現在のフレームが子音でないことを表す第1−6の情報を得る(Step 1-7-3)。
【0054】
(論理演算の例1)
例えば、第1−1〜第1−4の情報全てが子音であることを表す場合には、現在のフレームが子音であることを表す第1−6の情報を信号分析情報I
0として出力し、そうでない場合には、現在のフレームが子音でないことを表す第1−6の情報を信号分析情報I
0として出力する。
【0055】
(論理演算の例2)
また、例えば、第1−1〜第1−4の情報の何れかが子音であることを表す場合には、現在のフレームが子音であることを表す第1−6の情報を信号分析情報I
0として出力し、そうでない場合には、現在のフレームが子音でないことを表す第1−6の情報を信号分析情報I
0として出力する。
【0056】
(論理演算の例3)
また、例えば、第1−1〜第1−2の情報の何れかが子音であることを表し、かつ、第1−3〜第1−4の情報の何れかが子音であることを表す場合(論理和と論理積の組合せを用いる場合)には、現在のフレームが子音であることを表す第1−6の情報を信号分析情報I
0として出力し、そうでない場合には、現在のフレームが子音でないことを表す第1−6の情報を信号分析情報I
0として出力する。
【0057】
なお、第1−1〜第1−4の情報の論理演算は上述の論理演算の例1〜3に限定されるものではなく、復号した音信号がより自然に感じられるように適宜設定すればよい。
【0058】
また、信号特徴分析部170は、子音らしさの第1−1〜第1−4の指標値のうちの少なくとも2個を得て(Step 1-7-1')、Step 1-7-1'で得た少なくとも2個の子音らしさの指標値のぞれぞれと、予め定めた閾値との大小関係に基づき、各子音らしさの指標値に対して、現在のフレームが子音であることを表す情報、または、現在のフレームが子音でないことを表す少なくとも2個の情報を得て(Step 1-7-2')、Step 1-7-2'で得た少なくとも2個の情報の論理演算に基づき、現在のフレームが子音であることを表す第1−6の情報、または、現在のフレームが子音でないことを表す第1−6の情報を得てもよい(Step 1-7-3')。
【0059】
このような処理により信号特徴分析部170は、子音らしさの指標値または子音であるか否かを表す情報を信号分析情報I
0として出力する。
【0060】
[ピッチ強調処理(S130)]
次に、音声ピッチ強調装置が行うピッチ強調処理について説明する。
【0061】
ピッチ強調部130は、ピッチ分析部120が出力したピッチ周期とピッチ利得、信号特徴分析部170が出力した信号分析情報、及び音声ピッチ強調装置に入力された現在のフレームの時間領域の音信号(入力信号)を受け取り、現在のフレームの音信号サンプル列に対し、現在のフレームのピッチ周期T
0に対応するピッチ成分を、ピッチ利得σ
0に基づく強調の度合いが子音のフレーム(スペクトル包絡が平坦であるフレーム)のほうが子音以外のフレーム(スペクトル包絡が平坦でないフレーム)よりも小さくなるように、強調して得た出力信号のサンプル列を出力する。
【0063】
ピッチ強調部130は、入力された現在のフレームのピッチ利得σ
0と、入力された現在のフレームのピッチ周期T
0と、入力された現在のフレームの信号分析情報I
0とを用い、現在のフレームの音信号のサンプル列に対するピッチ強調処理を行う。具体的には、ピッチ強調部130は、入力された現在のフレームの音信号のサンプル列を構成する各サンプルX
n(L−N≦n≦L−1)に対して、以下の式(21)により出力信号X
newnを得ることにより、N個のサンプルX
newL―N, …, X
newL―1による現在のフレームの出力信号のサンプル列を得る。
【0065】
ただし、信号分析情報I
0が子音であるか否かを表す情報である場合には、減衰係数γ
0は、現在のフレームの信号分析情報I
0が子音であることを表す場合には0より大きく1より小さい予め定めた値であり(0<γ
0<1)、現在のフレームの信号分析情報I
0が子音でないことを表す場合には1である(γ
0=1)。
【0066】
また、現在のフレームの信号分析情報I
0が子音らしさの指標値である場合には、減衰係数γ
0は、現在のフレームの信号分析情報I
0に基づいて決まる値であり、子音らしさの指標値I
0が大きいほど小さな値である。より具体的には、例えば、減衰係数γ
0は、子音らしさの指標値I
0が大きいほど小さな値であり、かつ、子音らしさの指標値I
0がその指標値が取り得る最小値である場合にはγ
0=1となり、かつ、子音らしさの指標値I
0がその指標値が取り得る最大値である場合にはγ
0=0となるような、所定の関数γ
0=f(I
0)により求まるものとすればよい。
【0067】
なお、式(21)のAは、下記の式(22)により求まる振幅補正係数である。
【0069】
また、B
0は予め定めた値であり、例えば3/4である。
【0070】
式(21)のピッチ強調処理は、ピッチ周期だけではなくピッチ利得も考慮したピッチ成分を強調する処理であり、かつ、子音であるフレームのピッチ成分については子音でないフレームのピッチ成分よりも強調の度合いを落としてピッチ成分を強調する処理である。
【0071】
つまり、信号分析情報I
0が子音であるか否か(スペクトル包絡が平坦であるか否か)を表す場合、ピッチ強調部130では、子音である(スペクトル包絡が平坦である)と判定されたフレーム(時間区間)については、そのフレーム中の各時刻nについて、そのフレームのピッチ周期に対応するサンプル数T
0だけ、時刻nよりも過去の時刻n-T
0の信号X
n-T_0と、そのフレームのピッチ利得σ
0と、所定の定数B
0と、0より大きく1より小さい値と、を乗算した信号と、時刻nの信号X
nと、を加算した信号を含む信号を出力信号X
newnとして得る。また、ピッチ強調部130では、子音でない(スペクトル包絡が平坦でない)と判定されたフレーム(時間区間)については、そのフレーム中の各時刻nについて、そのフレームのピッチ周期に対応するサンプル数T
0だけ、時刻nよりも過去の時刻n-T
0の信号X
n-T_0と、そのフレームのピッチ利得σ
0と、所定の定数B
0と、を乗算した信号(B
0σ
0X
n-T_0)(この信号は式(21)においてγ
0=1に対応する)と、時刻nの信号X
nと、を加算した信号(X
n+B
0σ
0X
n-T_0)を含む信号を出力信号X
newnとして得る。
【0072】
また、信号分析情報I
0が子音らしさの指標値(スペクトル包絡の平坦度合いの指標値)である場合、ピッチ強調部130では、そのフレーム中の各時刻nについて、信号X
nを含むフレームのピッチ周期に対応するサンプル数T
0だけ、時刻nよりも過去の時刻n-T
0の信号X
n-T_0と、そのフレームのピッチ利得σ
0とそのフレームが子音らしければ子音らしいほど(そのフレームのスペクトル包絡が平坦であればあるほど)小さい値B
0γ
0と、を乗算した信号(B
0σ
0γ
0X
n-T_0)と、時刻nの信号X
nと、を加算した信号(X
n+B
0γ
0σ
0X
n-T_0)を含む信号を出力信号X
newnとして得る。
【0073】
このピッチ強調処理により、子音のフレームであっても違和感を低減し、また、子音のフレームとそれ以外のフレームとが頻繁に切り替わる場合であっても、フレーム間におけるピッチ成分の強調の度合いの変動による違和感を低減する効果を得ることができる。
【0074】
[ピッチ強調処理(S130)の第1変形例]
次に、音声ピッチ強調装置が行うピッチ強調処理の第1変形例とこれに関連する処理について説明する。
【0075】
第1変形例の音声ピッチ強調装置は、更にピッチ情報記憶部150を備える。
【0076】
ピッチ強調部130は、ピッチ分析部120が出力したピッチ周期とピッチ利得、信号特徴分析部170が出力した信号分析情報、及び音声ピッチ強調装置に入力された現在のフレームの時間領域の音信号を受け取り、現在のフレームの音信号サンプル列に対し、現在のフレームのピッチ周期T
0に対応するピッチ成分と、過去のフレームのピッチ周期に対応するピッチ成分と、を強調して得た出力信号のサンプル列を出力する。その際、現在のフレームのピッチ周期T
0に対応するピッチ成分については、現在のフレームのピッチ利得σ
0に基づく強調の度合いが子音のフレーム(スペクトル包絡が平坦であるフレーム)のほうが子音以外のフレーム(スペクトル包絡が平坦でないフレーム)よりも小さくなるように、強調する。なお、以下の説明において、現在のフレームからみてs個前のフレーム(s個過去のフレーム)のピッチ周期及びピッチ利得をそれぞれT
−s及びσ
−sと表記する。
【0077】
ピッチ情報記憶部150には、1つ前のフレームからα個過去のフレームまでのピッチ周期T
−1, ..., T
−αとピッチ利得σ
−1, ...,σ
−αとを記憶しておく。ただし、αは、予め定めた正の整数であり、例えば1である。
【0078】
ピッチ強調部130は、入力された現在のフレームのピッチ利得σ
0と、ピッチ情報記憶部150から読み出したα個過去のフレームのピッチ利得σ
−αと、入力された現在のフレームのピッチ周期T
0と、ピッチ情報記憶部150から読み出したα個過去のフレームのピッチ周期T
−αと、入力された現在のフレームの信号分析情報I
0とを用い、現在のフレームの音信号のサンプル列に対するピッチ強調処理を行う。
【0079】
以下、具体例を説明する。
(ピッチ強調処理の第1変形例の具体例1)
この具体例では、ピッチ強調部130は、入力された現在のフレームの音信号のサンプル列を構成する各サンプルX
n(L−N≦n≦L−1)に対して、以下の式(23)により出力信号X
newnを得ることにより、N個のサンプルX
newL―N, …, X
newL―1による現在のフレームの出力信号のサンプル列を得る。
【0081】
ただし、信号分析情報I
0が子音であるか否かを表す情報である場合には、減衰係数γ
0は、現在のフレームの信号分析情報I
0が子音であることを表す場合には0より大きく1より小さい予め定めた値であり(0<γ
0<1)、現在のフレームの信号分析情報I
0が子音でないことを表す場合には1である(γ
0=1)。
【0082】
また、現在のフレームの信号分析情報I
0が子音らしさの指標値である場合には、減衰係数γ
0は、現在のフレームの信号分析情報I
0に基づいて決まる値であり、子音らしさの指標値I
0が大きいほど小さな値である。より具体的には、例えば、減衰係数γ
0は、子音らしさの指標値I
0が大きいほど小さな値であり、かつ、子音らしさの指標値I
0がその指標値が取り得る最小値である場合にはγ
0=1となり、かつ、子音らしさの指標値I
0がその指標値が取り得る最大値である場合にはγ
0=0となるような、所定の関数γ
0=f(I
0)により求まるものとすればよい。
【0083】
なお、式(23)のAは、下記の式(24)により求まる振幅補正係数である。
【0085】
また、B
0とB
−αは、予め定めた1より小さい値であり、例えば3/4と1/4である。
【0086】
(ピッチ強調処理の第1変形例の具体例2)
この具体例では、ピッチ強調部130は、入力された現在のフレームの音信号のサンプル列を構成する各サンプルX
n(L−N≦n≦L−1)に対して、以下の式(25)により出力信号X
newnを得ることにより、N個のサンプルX
newL―N, …, X
newL―1による現在のフレームの出力信号のサンプル列を得る。
【0088】
ただし、減衰係数γ
0は具体例1と同じであり、減衰係数γ
−αはα個過去のフレームの減衰係数である。この具体例ではα個過去のフレーム減衰係数γ
−αを用いることから、この具体例の音声ピッチ強調装置は、更に減衰係数記憶部180を備える。減衰係数記憶部180には、1つ前のフレームからα個過去のフレームまでの減衰係数γ
−1, ..., γ
−αを記憶しておく。
【0089】
なお、式(25)のAは、下記の式(26)により求まる振幅補正係数である。
【0091】
また、B
0とB
−αは、予め定めた1より小さい値であり、例えば3/4と1/4である。
【0092】
(ピッチ強調処理の第1変形例の具体例3)
この具体例では、ピッチ強調部130は、入力された現在のフレームの音信号のサンプル列を構成する各サンプルX
n(L−N≦n≦L−1)に対して、以下の式(27)により出力信号X
newnを得ることにより、N個のサンプルX
newL―N, …, X
newL―1による現在のフレームの出力信号のサンプル列を得る。
【0094】
ただし、減衰係数γ
0は具体例1や2と同じである。
【0095】
また、式(27)のAは、下記の式(28)により求まる振幅補正係数である。
【0097】
また、B
0とB
−αは、予め定めた1より小さい値であり、例えば3/4と1/4である。
【0098】
この具体例は、具体例2のα個過去のフレームの減衰係数γ
−αの代わりに現在のフレームの減衰係数γ
0を用いる構成である。この構成とすることにより、音声ピッチ強調装置が減衰係数記憶部180を備えずに済むようにできる。
【0099】
第1変形例のピッチ強調処理は、ピッチ周期だけではなくピッチ利得も考慮したピッチ成分を強調する処理であり、かつ、子音であるフレームのピッチ成分については子音でないフレームのピッチ成分よりも強調の度合いを落としてピッチ成分を強調する処理であり、かつ、現在のフレームのピッチ周期T
0に対応するピッチ成分を強調しつつ、そのピッチ成分より少し強調の度合いを落として過去のフレームでのピッチ周期T
−αに対応するピッチ成分も強調する処理である。第1変形例のピッチ強調処理により、短い時間区間(フレーム)ごとにピッチ強調処理を施す場合であっても、フレーム間におけるピッチ周期の変動による不連続性を低減する効果も得ることができる。
【0100】
なお、信号分析情報I
0が子音であるか否かを表す情報である場合には、式(23)においてはB
0γ
0>B
−αとするのが好ましく、式(25)においてはB
0γ
0>B
−αγ
−αとするのが好ましく、式(27)においてはB
0>B
―αとするのが好ましいが、式(23)においてB
0γ
0≦B
−αとしたり、式(25)においてB
0γ
0≦B
−αγ
−αとしたり、式(27)においてB
0≦B
―αとしても、フレーム間におけるピッチ周期の変動による不連続性を低減する効果は奏される。
【0101】
また、信号分析情報I
0が子音らしさの指標値である場合には、式(23), 式(25), 式(27)においてはB
0>B
―αとするのが好ましいが、B
0≦B
−αとしてもフレーム間におけるピッチ周期の変動による不連続性を低減する効果は奏される。
【0102】
また、式(24)と式(26)と式(28)により求まる振幅補正係数Aは、現在のフレームのピッチ周期T
0とα個過去のフレームのピッチ周期T
−αとが十分に近い値であると仮定したときに、ピッチ成分のエネルギーがピッチ強調前後で保存されるようにするものである。
【0103】
なお、ピッチ情報記憶部150は、現在のフレームのピッチ周期とピッチ利得を、以降のフレームのピッチ強調部130の処理において過去のフレームのピッチ周期とピッチ利得として用いることができるように、記憶内容を更新する。
【0104】
また、減衰係数記憶部180を備える場合には、現在のフレームの減衰係数を、以降のフレームのピッチ強調部130の処理において過去のフレームの減衰係数として用いることができるように、記憶内容を更新する。
【0105】
[ピッチ強調処理(S130)の第2変形例]
第1変形例では、現在のフレームの音信号サンプル列に対し、現在のフレームのピッチ周期T
0に対応するピッチ成分と、過去の1つのフレームのピッチ周期に対応するピッチ成分と、を強調して出力信号のサンプル列を得たが、過去の複数(2つ以上)のフレームのピッチ周期に対応するピッチ成分を強調するようにしてもよい。以下では、過去の複数のフレームのピッチ周期に対応するピッチ成分を強調する一例として、過去の2つのフレームのピッチ周期に対応するピッチ成分を強調する例について、第1変形例と異なる点を説明する。
【0106】
ピッチ情報記憶部150には、現在のフレームよりβ個過去のフレームまでのピッチ周期T
−1, ..., T
−α, ..., T
−βとピッチ利得σ
−1, ...,σ
−α, ...,σ
−βとを記憶しておく。ただし、βは、αより大きい予め定めた正の整数である。例えば、αは1であり、βは2である。
【0107】
ピッチ強調部130は、入力された現在のフレームのピッチ利得σ
0と、ピッチ情報記憶部150から読み出したα個過去のフレームのピッチ利得σ
−αと、ピッチ情報記憶部150から読み出したβ個過去のフレームのピッチ利得σ
−βと、入力された現在のフレームのピッチ周期T
0と、ピッチ情報記憶部150から読み出したα個過去のフレームのピッチ周期T
−αと、ピッチ情報記憶部150から読み出したβ個過去のフレームのピッチ周期T
−βと、入力された現在のフレームの信号分析情報I
0とを用い、現在のフレームの音信号のサンプル列に対するピッチ強調処理を行う。
【0108】
以下、具体例を説明する。
(ピッチ強調処理の第2変形例の具体例1)
この具体例では、ピッチ強調部130は、入力された現在のフレームの音信号のサンプル列を構成する各サンプルX
n(L−N≦n≦L−1)に対して、以下の式(29)により出力信号X
newnを得ることにより、N個のサンプルX
newL―N, …, X
newL―1による現在のフレームの出力信号のサンプル列を得る。
【0110】
ただし、信号分析情報I
0が子音であるか否かを表す情報である場合には、減衰係数γ
0は、現在のフレームの信号分析情報I
0が子音であることを表す場合には0より大きく1より小さい予め定めた値であり(0<γ
0<1)、現在のフレームの信号分析情報I
0が子音でないことを表す場合には1である(γ
0=1)。
【0111】
また、現在のフレームの信号分析情報I
0が子音らしさの指標値である場合には、減衰係数γ
0は、現在のフレームの信号分析情報I
0に基づいて決まる値であり、子音らしさの指標値I
0が大きいほど小さな値である。より具体的には、例えば、減衰係数γ
0は、子音らしさの指標値I
0が大きいほど小さな値であり、かつ、子音らしさの指標値I
0がその指標値が取り得る最小値である場合にはγ
0=1となり、かつ、子音らしさの指標値I
0がその指標値が取り得る最大値である場合にはγ
0=0となるような、所定の関数γ
0=f(I
0)により求まるものとすればよい。
【0112】
なお、式(29)のAは、下記の式(30)により求まる振幅補正係数である。
【0114】
また、B
0とB
−αとB
−βは、予め定めた1より小さい値であり、例えば3/4と3/16と1/16である。
【0115】
(ピッチ強調処理の第2変形例の具体例2)
この具体例では、ピッチ強調部130は、入力された現在のフレームの音信号のサンプル列を構成する各サンプルX
n(L−N≦n≦L−1)に対して、以下の式(31)により出力信号X
newnを得ることにより、N個のサンプルX
newL―N, …, X
newL―1による現在のフレームの出力信号のサンプル列を得る。
【0117】
ただし、減衰係数γ
0は具体例1と同じであり、減衰係数γ
−αはα個過去のフレームの減衰係数であり、減衰係数γ
−βはβ個過去のフレームの減衰係数である。この具体例ではα個過去のフレーム減衰係数γ
−αとβ個過去のフレーム減衰係数γ
−βを用いることから、この具体例の音声ピッチ強調装置は、更に減衰係数記憶部180を備える。減衰係数記憶部180には、1つ前のフレームからβ個過去のフレームまでの減衰係数γ
−1, ...,γ
−βを記憶しておく。
【0118】
なお、式(31)のAは、下記の式(32)により求まる振幅補正係数である。
【0120】
また、B
0とB
−αとB
−βは、予め定めた1より小さい値であり、例えば3/4と3/16と1/16である。
【0121】
(ピッチ強調処理の第2変形例の具体例3)
この具体例では、ピッチ強調部130は、入力された現在のフレームの音信号のサンプル列を構成する各サンプルX
n(L−N≦n≦L−1)に対して、以下の式(33)により出力信号X
newnを得ることにより、N個のサンプルX
newL―N, …, X
newL―1による現在のフレームの出力信号のサンプル列を得る。
【0123】
ただし、減衰係数γ
0は具体例1や2と同じである。
【0124】
また、式(33)のAは、下記の式(34)により求まる振幅補正係数である。
【0126】
また、B
0とB
−αとB
−βは、予め定めた1より小さい値であり、例えば3/4と3/16と1/16である。
【0127】
この具体例は、具体例2のα個過去のフレームの減衰係数γ
−αとβ個過去のフレームの減衰係数γ
−βの代わりに現在のフレームの減衰係数γ
0を用いる構成である。この構成とすることにより、音声ピッチ強調装置が減衰係数記憶部180を備えずに済むようにできる。
【0128】
第2変形例のピッチ強調処理も、第1変形例のピッチ強調処理と同様に、ピッチ周期だけではなくピッチ利得も考慮したピッチ成分を強調する処理であり、かつ、子音であるフレームのピッチ成分については子音でないフレームのピッチ成分よりも強調の度合いを落としてピッチ成分を強調する処理であり、かつ、現在のフレームのピッチ周期T
0に対応するピッチ成分を強調しつつ、そのピッチ成分より少し強調の度合いを落として過去のフレームでのピッチ周期に対応するピッチ成分も強調する処理である。第2変形例のピッチ強調処理により、短い時間区間(フレーム)ごとにピッチ強調処理を施す場合であっても、フレーム間におけるピッチ周期の変動による不連続性を低減する効果も得ることができる。
【0129】
なお、信号分析情報I
0が子音であるか否かを表す情報である場合には、式(29)においてはB
0γ
0>B
−α>B
−βとするのが好ましく、式(31)においてはB
0γ
0>B
−αγ
−α>B
−βγ
−βとするのが好ましく、式(33)においてはB
0>B
―α>B
−βとするのが好ましいが、式(29)においてB
0γ
0≦B
−αやB
0γ
0≦B
−βやB
−α≦B
−βとしたり、式(31)においてB
0γ
0≦B
−αγ
−αやB
0γ
0≦B
−βγ
−βやB
−αγ
−α≦B
−βγ
−βとしたり、式(33)においてB
0≦B
―αやB
0≦B
−βやB
−α≦B
−βとしても、フレーム間におけるピッチ周期の変動による不連続性を低減する効果は奏される。
【0130】
また、信号分析情報I
0が子音らしさの指標値である場合には、式(29), 式(31), 式(33)においてはB
0>B
−α>B
−βとするのが好ましいが、この大小関係を満たさなくともフレーム間におけるピッチ周期の変動による不連続性を低減する効果は奏される。
【0131】
また、式(30)と式(32)と式(34)により求まる振幅補正係数Aは、現在のフレームのピッチ周期T
0とα個過去のフレームのピッチ周期T
−αとβ個過去のフレームのピッチ周期T
−βとが十分に近い値であると仮定したときに、ピッチ成分のエネルギーがピッチ強調前後で保存されるようにするものである。
【0132】
(ピッチ強調処理のその他の変形例)
なお、振幅補正係数Aは、式(22)や式(24)や式(26)や式(28)や式(30)や式(32)や式(34)により求まる値ではなく、予め定めた1以上の値を用いてもよい。振幅補正係数Aを1とする場合には、ピッチ強調部130は、上記の式中の1/Aの項を含まないようにした式により出力信号X
newnを得るようにしてもよい。
【0133】
また、入力された音信号の各サンプルに加算する各ピッチ周期分前のサンプルに基づく値に代えて、例えばローパスフィルタを通した音信号における各ピッチ周期分前のサンプルを用いてもよいし、ローパスフィルタと等価な処理を行ってもよい。
【0134】
また、ピッチ利得が所定の閾値より小さい場合には、そのピッチ成分を含まないピッチ強調処理を行うようにしてもよい。例えば、現在のフレームのピッチ利得σ
0が所定の閾値より小さい場合には、現在のフレームのピッチ周期T
0に対応するピッチ成分を出力信号に含めず、過去のフレームのピッチ利得が所定の閾値より小さい場合には、その過去のフレームのピッチ周期に対応するピッチ成分を出力信号に含めない構成としてもよい。
【0135】
また、信号特徴分析部170において子音らしさの指標値を得、信号分析情報I
0としてピッチ強調部130に出力し、ピッチ強調部130において、子音らしさの指標値と閾値との大小関係に基づき強調度合い(減衰係数γ
0の大きさ)を2段階で異ならせる構成としてもよい。
【0136】
<第二実施形態>
第一実施形態と異なる部分を中心に説明する。
【0137】
本実施形態では、第一実施形態で説明したスペクトル包絡の平坦度合いの指標値(子音らしさの指標値)とは異なる子音らしさの指標値を用いる。
【0138】
信号特徴分析処理(S170)の内容が第一実施形態とは異なる。
【0139】
[信号特徴分析処理(S170)]
信号特徴分析部170には、第一実施形態と同様に時間領域の音信号に由来する情報が入力される。
【0140】
信号特徴分析部170は、現在のフレームが子音であるか否かを表す情報、または、現在のフレームの子音らしさの指標値、を得て、信号分析情報I
0としてピッチ強調部130へ出力する。
【0141】
また、例えば、信号特徴分析部170には、所定の時間長のフレーム(時間区間)単位で、現在のフレームのピッチ周期T
0からε個過去のフレームのピッチ周期T
−εまでが入力される。この場合には、信号特徴分析部170は、現在のフレームのピッチ周期T
0からε個過去のフレームのピッチ周期T
−εまでを用いて、現在のフレームが子音であるか否かを表す情報、または、現在のフレームの子音らしさの指標値、を得て、信号分析情報I
0としてピッチ強調部130へ出力する。すなわち、この場合は、「時間領域の音信号に由来する情報」は現在のフレームのピッチ周期T
0からε個過去のフレームのピッチ周期T
−ε(
図1中、一点鎖線で示す)までである。この場合には、音声ピッチ強調装置は更にピッチ情報記憶部150を備えて、ピッチ情報記憶部150には1つ前のフレームからε個過去のフレームまでのピッチ周期T
−1, ..., T
−εを記憶しておく。そして、信号特徴分析部170は、ピッチ分析部120から入力された現在のフレームのピッチ周期T
0と、ピッチ情報記憶部150から読み出した1個過去のフレームからε個過去のフレームまでのピッチ周期T
−1, ... ,
T
−εと、を用いる。εは、予め定めた正の整数である。なお、ピッチ情報記憶部150は、現在のフレームのピッチ周期を、以降のフレームの信号特徴分析部170の処理において過去のフレームのピッチ周期として用いることができるように、記憶内容を更新する。
【0142】
信号特徴分析部170は例えば下記の例2−1から例2−5の信号特徴分析処理により信号分析情報I
0を得る。
【0143】
(信号特徴分析処理の例2−1:子音らしさの指標値を信号分析情報とする例その1)
この例では、信号特徴分析部170は、入力された現在のフレームのピッチ周期T
0からε個過去のフレームのピッチ周期T
−εまでを用いて、現在のフレームの子音らしさの指標値としてピッチ周期の不連続性が大きいほど大きくなる指標値(便宜上「子音らしさの第2−1の指標値」ともいう)を得て、得た第2−1の指標値を信号分析情報I
0として出力する。
【0144】
信号特徴分析部170は、例えば、ピッチ分析部120から入力されたピッチ周期T
0とピッチ情報記憶部150に記憶された1個過去のフレームからε個過去のフレームまでのピッチ周期T
−1, ..., T
−εとを用いて、第2−1の指標値δを式(41)により求める。
δ=(|T
0-T
−1|+|T
-1-T
−2|+...+|T
−(ε-1) - T
−ε|)/ε (41)
母音の場合には、ピッチ周期に連続性があり、連続するピッチ周期間の差分が0に近い値となり、δの値も小さくなる傾向がある。一方、子音の場合には、ピッチ周期に連続性がなく、δの値が大きくなる傾向がある。そこで、この例では、この傾向に基づき、第2−1の指標値δを子音らしさの指標値として利用する。なお、εは、判定するための十分な情報を得ることができる程度に大きく、かつ、T
0〜T
−εに対応する時間区間に子音と母音とが混在しない程度に小さい値とすることが望ましい。
【0145】
(信号特徴分析処理の例2−2:子音らしさの指標値を信号分析情報とする例その2)
この例では、信号特徴分析部170は、入力されたN個の時間領域の音信号サンプルを含む最新のJ個の音信号サンプルによるサンプル列を用いて、現在のフレームの子音らしさの指標値として摩擦音らしさの指標値(便宜上、「子音らしさの第2−2の指標値」ともいう)を得て、得た第2−2の指標値を信号分析情報I
0として出力する。
【0146】
信号特徴分析部170は、例えば、入力されたN個の時間領域の音信号サンプルを含む最新のJ個の音信号サンプルによるサンプル列の零交差点数(参考文献3参照)を摩擦音らしさの指標値である子音らしさの第2−2の指標値として求める。
(参考文献3)L.R.ラビナー 他著、鈴木久喜 訳、「音声のディジタル信号処理(上)」、株式会社コロナ社、1983年、p.132-137
【0147】
また、信号特徴分析部170は、例えば、入力されたN個の時間領域の音信号サンプルを含む最新のJ個の音信号サンプルによるサンプル列を修正離散コサイン変換(MDCT)などで周波数スペクトル系列に変換し、周波数スペクトル系列のうちの低域側にあるサンプルの平均エネルギーに対する周波数スペクトル系列のうちの高域側にあるサンプルの平均エネルギーの比が大きいほど大きくなる指標値を摩擦音らしさの指標値である子音らしさの第2−2の指標値として求める。
【0148】
前述の通り、子音は、摩擦音を含む(参考文献1、参考文献2参照)。そこでこの例では、摩擦音らしさの指標値を子音らしさの指標値として利用する。
【0149】
(信号特徴分析処理の例2−3:複数の指標値を組み合わせた指標値を信号分析情報とする例)
この例では、信号特徴分析部170は、まず、入力された現在のフレームのピッチ周期T
0からε個過去のフレームのピッチ周期T
−εまでを用いて、例2−1と同じ方法により、現在のフレームの子音らしさの第2−1の指標値を得る(Step 2-3-1)。信号特徴分析部170は、また、入力されたN個の時間領域の音信号サンプルを含む最新のJ個の音信号サンプルによるサンプル列を用いて、例2−2と同じ方法により、現在のフレームの子音らしさの第2−2の指標値を得る(Step 2-3-2)。信号特徴分析部170は、さらに、Step 2-3-1で得た第2−1の指標値とStep 2-3-2で得た第2−2の指標値の重み付け加算などにより、第2−1の指標値が大きな値になるほど大きな値になり、かつ、第2−2の指標値が大きな値になるほど大きな値になる値を、現在のフレームの子音らしさの指標値(便宜上、「第2−3の指標値」ともいう)として得て、得た第2−3の指標値を信号分析情報I
0として出力する(Step 2-3-3)。
【0150】
前述の通り、第2−1の指標値も第2−2の指標値も子音らしさを表す指標である。この例では2つの指標値を組み合わせることでより柔軟に子音らしさの指標値を設定することができる。
【0151】
信号特徴分析処理の例2−1〜例2−3では子音らしさの指標値を信号分析情報とする例を説明してきた。ここからは、子音であるか否かを表す情報を信号分析情報とする例を説明する。
【0152】
(信号特徴分析処理の例2−4:子音であるか否かを表す情報を信号分析情報とする例その1)
この例では、信号特徴分析部170は、まず、例2−1から例2−3の何れかと同じ方法により、現在のフレームの子音らしさの第2−1〜2−3の指標値の何れかを得る。信号特徴分析部170は、次に、得た第2−1〜2−3の指標値の何れかが予め定めた閾値以上または閾値を超える場合には、現在のフレームが子音であることを表す情報(「第2−1の指標値」〜「第2−3の指標値」に対応する「現在のフレームが子音であるか否かを表す情報」をそれぞれ、便宜上、「第2−1の情報」〜「第2−3の情報」ともいう)を信号分析情報I
0として出力し、そうでない場合には、現在のフレームが子音でないことを表す第2−1〜第2−3の情報の何れかを信号分析情報I
0として出力する。
【0153】
(信号特徴分析処理の例2−5:子音であるか否かを表す情報を信号分析情報とする例その2)
この例では、信号特徴分析部170は、まず、例2−1と同じ方法により、現在のフレームの子音らしさの第2−1の指標値を得て(Step 2-5-1)、Step 5-1で得た第2−1の指標値が予め定めた閾値以上または閾値を超える場合には、現在のフレームが子音であることを表す第2−1の情報を得て、そうでない場合には、現在のフレームが子音でないことを表す第2−1の情報を得る(Step 2-5-2)。信号特徴分析部170は、また、例2−2と同じ方法により、現在のフレームの子音らしさの第2−2の指標値を得て(Step 2-5-3)、Step 2-5-3で得た第2−2の指標値が予め定めた閾値以上または閾値を超える場合には、現在のフレームが子音であることを表す第2の情報を得て、そうでない場合には、現在のフレームが子音でないことを表す第2−2の情報を得る(Step 2-5-4)。信号特徴分析部170は、さらに、Step 2-5-2で得た第2−1の情報が子音であることを表しかつStep 2-5-4で得た第2−2の情報が子音であることを表す場合には、現在のフレームが子音であることを表す情報(便宜上、「第2−4の情報」ともいう)を信号分析情報I
0として出力し、そうでない場合には、現在のフレームが子音でないことを表す第2−4の情報を信号分析情報I
0として出力する(Step 2-5-5)。
【0154】
なお、信号特徴分析部170は、上記のStep 2-5-5に代えて、Step 2-5-2で得た第2−1の情報が子音であることを表すかまたはStep 2-5-4で得た第2−2の情報が子音であることを表す場合には、現在のフレームが子音であることを表す第2−4の情報を信号分析情報I
0として出力し、そうでない場合には、現在のフレームが子音ないことを表す第2−4の情報を信号分析情報I
0として出力してもよい(Step 2-5-5')。
【0155】
このような処理により信号特徴分析部170は、子音らしさの指標値または子音であるか否かを表す情報を信号分析情報I
0として出力する。
【0156】
<ピッチ強調部130>
ピッチ強調部130におけるピッチ強調処理(S130)は、第一実施形態と同様である。
【0157】
つまり、本実施形態のピッチ強調部130は、信号分析情報I
0が子音であるか否かを表す場合、子音であると判定されたフレーム(時間区間)については、そのフレーム中の各時刻nについて、そのフレームのピッチ周期に対応するサンプル数T
0だけ、時刻nよりも過去の時刻n-T
0の信号X
n-T_0と、そのフレームのピッチ利得σ
0と、所定の定数B
0と、0より大きく1より小さい値と、を乗算した信号と、時刻nの信号X
nと、を加算した信号を含む信号を出力信号X
newnとして得る。また、ピッチ強調部130は、子音でないと判定されたフレーム(時間区間)については、そのフレーム中の各時刻nについて、そのフレームのピッチ周期に対応するサンプル数T
0だけ、時刻nよりも過去の時刻n-T
0の信号X
n-T_0と、そのフレームのピッチ利得σ
0と、所定の定数B
0と、を乗算した信号(B
0σ
0X
n-T_0)(この信号は式(21)においてγ
0=1に対応する)と、時刻nの信号X
nと、を加算した信号(X
n+B
0σ
0X
n-T_0)を含む信号を出力信号X
newnとして得る。
【0158】
また、ピッチ強調部130では、信号分析情報I
0が子音らしさの指標値である場合、そのフレーム中の各時刻nについて、信号X
nを含むフレームのピッチ周期に対応するサンプル数T
0だけ、時刻nよりも過去の時刻n-T
0の信号X
n-T_0と、そのフレームのピッチ利得σ
0とそのフレームが子音らしければ子音らしいほど小さい値B
0γ
0と、を乗算した信号(B
0σ
0γ
0X
n-T_0)と、時刻nの信号X
nと、を加算した信号(X
n+B
0γ
0σ
0X
n-T_0)を含む信号を出力信号X
newnとして得る。
【0159】
なお、第一実施形態の第1変形例や第2変形例と同様のピッチ強調処理を行う場合には、信号特徴分析処理(S170)とピッチ強調処理(S130)においてピッチ情報記憶部150を共用してもよい。第一実施形態の第1変形例や第2変形例と同様のピッチ強調処理を行う場合には、ε>αであってもよいし、ε<αであってもよいし、ε=αとして重複する部分を最大限共用するようにしてもよい。同様に、第一実施形態の第2変形例と同様のピッチ強調処理を行う場合には、ε>βであってもよいし、ε<βであってもよいし、ε=βとして重複する部分を最大限共用するようにしてもよい。
【0160】
<効果>
上述の構成により、第1実施形態と同様の効果を得ることができる。
【0161】
<第三実施形態>
第一実施形態と異なる部分を中心に説明する。
【0162】
本実施形態では、第一実施形態で説明したスペクトル包絡の平坦度合いの指標値に加えて、第二実施形態で説明した子音らしさの指標値も用いて、子音らしさの指標値または子音であるか否かを表す情報を得る。
【0163】
信号特徴分析処理(S170)の内容が第一実施形態とは異なる。以下では、便宜上、第一実施形態で説明したスペクトル包絡の平坦度合いの指標値である子音らしさの第1−1〜第1−5の指標値の何れかを第1の指標値と呼び、第二実施形態で説明した子音らしさの第2−1〜第2−3の指標値の何れかを子音らしさの第2の指標値と呼び、子音らしさの第1の指標値と子音らしさの第2の指標値を用いて信号特徴分析処理(S170)で得る子音らしさの指標値を子音らしさの第3の指標値と呼ぶ。
【0164】
[信号特徴分析処理(S170)]
信号特徴分析部170は、第一実施形態で説明したスペクトル包絡の平坦度合いの指標値と、第二実施形態で説明した子音らしさの指標値と、に基づいて、子音らしさの指標値または子音であるか否かを表す情報を得て、信号分析情報としてピッチ強調部130へ出力する。信号特徴分析部170は、例えば下記の例3−1から例3−4の信号特徴分析処理により信号分析情報I
0を得る。
【0165】
(信号特徴分析処理の例3−1:スペクトル包絡の平坦度合いの指標値(子音らしさの第1の指標値)と子音らしさの第2の指標値とを組み合わせた指標値を子音らしさの第3の指標値とし、第3の指標値自体を信号分析情報とする例)
この例では、信号特徴分析部170は、まず、第一実施形態で説明した例1−1から1−5の何れかと同じ方法により、現在のフレームのスペクトル包絡の平坦度合いの指標値(子音らしさの第1の指標値)を得る(Step 3-1-1)。信号特徴分析部170は、また、第二実施形態で説明した例2−1から例2−3の何れかの方法により、現在のフレームの子音らしさの第2の指標値を得る(Step 3-1-2)。信号特徴分析部170は、さらに、Step 3-1-1で得たスペクトル包絡の平坦度合いの指標値(子音らしさの第1の指標値)とStep 3-1-2で得た子音らしさの第2の指標値の重み付け加算などにより、スペクトル包絡の平坦度合いの指標値(子音らしさの第1の指標値)が大きな値になるほど大きな値になり、かつ、子音らしさの第2の指標値が大きな値になるほど大きな値になる値を、現在のフレームの子音らしさの第3の指標値として得て、得た子音らしさの第3の指標値を信号分析情報I
0として出力する(Step 3-1-3)。
【0166】
(信号特徴分析処理の例3−2:スペクトル包絡の平坦度合いの指標値(子音らしさの第1の指標値)と子音らしさの第2の指標値とを組み合わせた第3の指標値を閾値判定して得た情報を信号分析情報とする例)
この例では、信号特徴分析部170は、まず、例3−1と同じ方法により、現在のフレームの子音らしさの第3の指標値を得る(Step 3-2-1)。信号特徴分析部170は、次に、Step 3-2-1で得た子音らしさの第3の指標値が予め定めた閾値以上または閾値を超える場合には、現在のフレームが子音であることを表す第3の情報を信号分析情報I
0として出力し、そうでない場合には、現在のフレームが子音でないことを表す第3の情報を信号分析情報I
0として出力する。
【0167】
(信号特徴分析処理の例3−3:子音であるかまたはスペクトル包絡が平坦であるか否かを表す情報を信号分析情報とする例)
この例では、信号特徴分析部170は、まず、第一実施形態で説明した例1−1から例1−5の何れかと同じ方法により、現在のフレームのスペクトル包絡の平坦度合いの指標値(子音らしさの第1の指標値)を得て(Step 3-3-1)、Step 3-3-1で得た第1の指標値が予め定めた閾値以上または閾値を超える場合には、現在のフレームのスペクトル包絡が平坦である(現在のフレームが子音である)ことを表す第1の情報を得て、そうでない場合には、現在のフレームのスペクトル包絡が平坦でない(現在のフレームが子音でない)ことを表す第1の情報を得る(Step 3-3-2)。信号特徴分析部170は、また、第二実施形態で説明した例2−1から例2−3の何れかの方法により、子音らしさの第2の指標値を得て(Step 3-3-3)、Step 3-3-3で得た第2の指標値が予め定めた閾値以上または閾値を超える場合には、現在のフレームが子音であることを表す第2の情報を得て、そうでない場合には、現在のフレームが子音でないことを表す第2の情報を得る(Step 3-3-4)。信号特徴分析部170は、さらに、Step 3-3-2で得た第1の情報がスペクトル包絡が平坦である(子音である)ことを表すかまたはStep 3-3-4で得た第2の情報が子音であることを表す場合には、現在のフレームが子音であることを表す第3の情報を信号分析情報I
0として出力し、そうでない場合には、現在のフレームが子音でないことを表す第3の情報を信号分析情報I
0として出力する。
【0168】
(信号特徴分析処理の例3−4:子音でありかつスペクトル包絡が平坦であるか否かを表す情報を信号分析情報とする例)
この例では、信号特徴分析部170は、まず、第一実施形態で説明した例1−1から例1−5の何れかと同じ方法により、現在のフレームの子音らしさの第1の指標値を得て(Step 3-4-1)、Step 3-4-1で得た指標値が予め定めた閾値以上または閾値を超える場合には、現在のフレームのスペクトル包絡が平坦である(現在のフレームが子音である)ことを表す第1の情報を得て、そうでない場合には、現在のフレームのスペクトル包絡が平坦でない(現在のフレームが子音でない)ことを表す第1の情報を得る(Step 3-4-2)。信号特徴分析部170は、また、第二実施形態で説明した例2−1から例2−3の何れかの方法により、現在のフレームの子音らしさの第2の指標値を得て(Step 3-4-3)、Step 3-4-3で得た指標値が予め定めた閾値以上または閾値を超える場合には、現在のフレームが子音であることを表す第2の情報を得て、そうでない場合には、現在のフレームが子音でないことを表す第2の情報を得る(Step 3-4-4)。信号特徴分析部170は、さらに、Step 3-4-2で得た第1の情報がスペクトル包絡が平坦である(子音である)ことを表しかつStep 3-4-4で得た第2の情報が子音であることを表す場合には、現在のフレームが子音であることを表す第3の情報を信号分析情報I
0として出力し、そうでない場合には、現在のフレームが子音でないことを表す第3の情報を信号分析情報I
0として出力する。
【0169】
<ピッチ強調部130>
ピッチ強調部130におけるピッチ強調処理(S130)は、第一実施形態と同様である。
【0170】
つまり、本実施形態のピッチ強調部130は、信号分析情報I
0が子音であるか否かを表す場合(第3の情報の場合)、信号X
nのスペクトル包絡が平坦である、または/および、子音であると判定されたフレーム(時間区間)については、そのフレームの各時刻nについて、そのフレームのピッチ周期に対応するサンプル数T
0だけ、時刻nよりも過去の時刻n-T
0の信号X
n-T_0と、そのフレームのピッチ利得σ
0と、所定の定数B
0と、0より大きく1より小さい値と、を乗算した信号と、時刻nの信号X
nと、を加算した信号を含む信号を出力信号X
newnとして得る。また、ピッチ強調部130は、それ以外の判定がされたフレームについては、そのフレームの各時刻nについて、そのフレームのピッチ周期に対応するサンプル数T
0だけ、時刻nよりも過去の時刻n-T
0の信号X
n-T_0と、そのフレームのピッチ利得σ
0と、所定の定数B
0と、を乗算した信号(B
0σ
0X
n-T_0)(この信号は式(21)においてγ
0=1に対応する)と、時刻nの信号X
nと、を加算した信号(X
n+B
0σ
0X
n-T_0)を含む信号を出力信号X
newnとして得る(例3−3、3−4に対応する)。なお、例3−2では、スペクトル包絡の平坦度合いの指標値(子音らしさの第1の指標値)と子音らしさの第2の指標値とを組み合わせた第3の指標値を閾値判定しており、この閾値判定は、信号X
nのスペクトル包絡が平坦である、または/および、子音であるか否かを判定することに相当する。
【0171】
また、ピッチ強調部130では、信号分析情報I
0が子音らしさの指標値である場合(第3の指標値の場合)、そのフレームの各時刻nについて、信号X
nを含むフレームのピッチ周期に対応するサンプル数T
0だけ、時刻nよりも過去の時刻n-T
0の信号X
n-T_0と、そのフレームのピッチ利得σ
0と、そのフレームのスペクトル包絡が平坦であればあるほど小さくかつそのフレームが子音らしければ子音らしいほど小さい値B
0γ
0と、を乗算した信号(B
0σ
0γ
0X
n-T_0)と、時刻nの信号X
nと、を加算した信号(X
n+B
0γ
0σ
0X
n-T_0)を含む信号を出力信号X
newnとして得る(例3−1に対応する)。
【0172】
<効果>
このような構成とすることで、第一実施形態と同様の効果を得ることができる。さらに、本実施系形態では、第1の指標値(スペクトル包絡の平坦度合いの指標値)に加えて、第2の指標値も考慮することで、より適切な子音らしさの指標値を得ることができる。
【0173】
<その他の変形例>
音声ピッチ強調装置外で行われる復号処理などにより各フレームのピッチ周期とピッチ利得と信号分析情報を得られている場合には、音声ピッチ強調装置を
図3の構成として、音声ピッチ強調装置外で得られたピッチ周期とピッチ利得と信号分析情報に基づきピッチを強調してもよい。
図4はその処理フローを示す。この場合には、第一実施形態、第二実施形態、第三実施形態、およびそれらの変形例の音声ピッチ強調装置が備える自己相関関数算出部110やピッチ分析部120や信号特徴分析部170や自己相関関数記憶部160を備える必要はなく、ピッチ強調部130が、ピッチ分析部120が出力したピッチ周期とピッチ利得と信号特徴分析部170が出力した信号分析情報ではなく、音声ピッチ強調装置に入力されたピッチ周期とピッチ利得と信号分析情報を用いてピッチ強調処理(S130)を行うようにすればよい。このような構成とすれば、音声ピッチ強調装置自体の演算処理量は第一実施形態、第二実施形態、第三実施形態、およびそれらの変形例よりも少なくすることが可能である。ただし、第一実施形態、第二実施形態、第三実施形態、およびそれらの変形例の音声ピッチ強調装置は、音声ピッチ強調装置外のピッチ周期やピッチ利得と信号分析情報を得る頻度に依存せずにピッチ周期やピッチ利得と信号分析情報を得ることができることから、非常に短い時間長のフレーム単位でのピッチ強調処理を行うことが可能である。上記のサンプリング周波数32kHzの例であれば、Nを例えば32とすれば、1msのフレーム単位でピッチ強調処理を行うことができる。
【0174】
なお、以上の説明では、音信号そのものに対してピッチ強調処理を施すことを前提としていたが、非特許文献1に記載されているような線形予測残差に対してピッチ強調処理を行ってから線形予測合成をするような構成における、線形予測残差に対するピッチ強調処理として本発明を適用してもよい。すなわち、本発明を、音信号そのものではなく、音信号に対して分析や加工をして得た信号などの音信号に由来する信号に対して適用してもよい。
【0175】
本発明は上記の実施形態及び変形例に限定されるものではない。例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【0176】
<プログラム及び記録媒体>
また、上記の実施形態及び変形例で説明した各装置における各種の処理機能をコンピュータによって実現してもよい。その場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
【0177】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【0178】
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させてもよい。
【0179】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶部に格納する。そして、処理の実行時、このコンピュータは、自己の記憶部に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実施形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよい。さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、プログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
【0180】
また、コンピュータ上で所定のプログラムを実行させることにより、各装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。