(57)【要約】【課題】  対比すべき音声の類似度を客観的かつ定量的に評価し、数値として表わす。【解決手段】  周波数解析部１０および２０は、入力音声サンプル列およびリファレンスサンプル列の周波数解析を各々行い、振幅スペクトル列を各々算出する。自己相関算出部３０は、リファレンスサンプル列から得られた振幅スペクトル列の自己相関関数値を算出する。相互相関算出部４０は、入力音声サンプル列およびリファレンスサンプル列から得られた各振幅スペクトル列間の相互相関関数値を算出する。類似度算出部５０は、相互相関関数値の最大値を自己相関関数値の最大値により除算し、入力音声サンプル列とリファレンスサンプル列との類似度を算出する。【選択図】図１
2008026836.tif 000002
【特許請求の範囲】
【請求項１】
入力音声データの周波数解析を行い、第１の振幅スペクトル列を算出する第１の周波数解析過程と、
基準音声データの周波数解析を行い、第２の振幅スペクトル列を算出する第２の周波数解析過程と、
前記第２の振幅スペクトル列の自己相関関数値を算出する自己相関算出過程と、
前記第１の振幅スペクトル列と前記第２の振幅スペクトル列との相互相関関数値を算出する相互相関算出過程と、
前記相互相関関数値の最大値を前記自己相関関数値の最大値により除算することにより、前記入力音声データと前記基準音声データとの類似度を算出する類似度算出過程と
を具備することを特徴とする音声の類似度評価方法。
【請求項２】
入力音声データの周波数解析を行い、第１の振幅スペクトル列を算出する第１の周波数解析手段と、
基準音声データの周波数解析を行い、第２の振幅スペクトル列を算出する第２の周波数解析手段と、
前記第２の振幅スペクトル列の自己相関関数値を算出する自己相関算出手段と、
前記第１の振幅スペクトル列と前記第２の振幅スペクトル列との相互相関関数値を算出する相互相関算出手段と、
前記相互相関関数値の最大値を前記自己相関関数値の最大値により除算することにより、前記入力音声データと前記基準音声データとの類似度を算出する類似度算出手段と
を具備することを特徴とする音声の類似度評価装置。
【請求項３】
前記第１の周波数解析手段および第２の周波数解析手段は、入力音声データおよび基準音声データを一定時間長のブロックに各々区切り、ブロック単位で前記第１の振幅スペクトル列および前記第２の振幅スペクトル列を各々出力し、
前記自己相関算出手段は、ブロック単位で、前記自己相関関数値を算出し、
前記相互相関算出手段は、ブロック単位で、前記相互相関関数値を算出し、
前記類似度算出手段は、ブロック単位で、前記類似度を算出することを特徴とする請求項２に記載の類似度評価装置。
【請求項４】
入力音声データの周波数解析を行い、第１の振幅スペクトル列を算出する第１の周波数解析過程と、
基準音声データの周波数解析を行い、第２の振幅スペクトル列を算出する第２の周波数解析過程と、
前記第２の振幅スペクトル列の自己相関関数値を算出する自己相関算出過程と、
前記第１の振幅スペクトル列と前記第２の振幅スペクトル列との相互相関関数値を算出する相互相関算出過程と、
前記相互相関関数値の最大値を前記自己相関関数値の最大値により除算することにより、前記入力音声データと前記基準音声データとの類似度を算出する類似度算出過程と
をコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、音声の類似度を評価する方法、装置およびプログラムに関する。
【背景技術】
【０００２】
音声の特徴を捉えるための手段として、周波数解析が一般的に用いられている。例えば人間の声のフォルマント解析などがその典型例として挙げられる。ある音声と別の音声とがある場合、これらの２つの音声を各々周波数解析し、２つの音声から得られた２つの振幅スペクトル分布同士を目視により比較すると、両音声が似ているか否かを直観的に判断することができる。
【特許文献１】特開平１−２９１５１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、対比すべき音声の振幅スペクトル分布を見比べたとしても、両音声がどの程度類似しているかを客観的かつ定量的に評価することは一般的に困難である。
【０００４】
この発明は、以上説明した事情に鑑みてなされたものであり、その目的は、対比すべき音声の類似度を客観的かつ定量的に評価する技術的手段を提供することにある。
【課題を解決するための手段】
【０００５】
上記目的を達成するため、この発明は、入力音声データの周波数解析を行い、第１の振幅スペクトル列を算出する第１の周波数解析過程と、基準音声データの周波数解析を行い、第２の振幅スペクトル列を算出する第２の周波数解析過程と、前記第２の振幅スペクトル列の自己相関関数値を算出する自己相関算出過程と、前記第１の振幅スペクトル列と前記第２の振幅スペクトル列との相互相関関数値を算出する相互相関算出過程と、前記相互相関関数値の最大値を前記自己相関関数値の最大値により除算することにより、前記入力音声データと前記基準音声データとの類似度を算出する類似度算出過程とを具備することを特徴とする音声の類似度評価方法、同方法に従って音声の類似度を算出する類似度評価装置および同方法をコンピュータに実行させるプログラムを提供する。
【０００６】
かかる発明によれば、対比すべき音声の類似度を客観的かつ定量的に評価し、数値として表わすことができる。
【０００７】
相互相関と自己相関を利用して波形を比較する技術として特許文献１に開示のものがある。この特許文献１に開示の技術では、フィルタから得られるインパルス応答と理想的なインパルス応答との相互相関関数値を求め、この相互相関関数値が理想的なインパルス応答の自己相関関数値を中心とした許容範囲内に収まっているか否かにより、フィルタの特性が妥当か否かの判断を行う。しかし、本発明は、この特許文献１に開示されているように対比すべき２つの波形自体について相互相関関数値と自己相関関数値とを求めるものではなく、２つの波形の周波数解析結果についての相互相関関数値と自己相関関数値とを求め、その結果に基づいて波形間の類似度を求めるものである。この点に本発明の特徴がある。
【発明を実施するための最良の形態】
【０００８】
以下、図面を参照し、この発明の実施の形態を説明する。
図１はこの発明の一実施形態による音声の類似度評価装置の構成を示すブロック図である。また、図２は同類似度評価装置の処理内容を示す図である。
【０００９】
図１に示すように、本実施形態による類似度評価装置は、周波数解析部１０および２０と、自己相関算出部３０と、相互相関算出部４０と、類似度算出部５０とにより構成されている。
【００１０】
周波数解析部１０は、評価対象である入力音声サンプル列を外部から受け取り、この入力音声サンプル列から、図２に示すように時間軸上において所定長ずつオーバラップ（この例ではブロック長の２５％ずつオーバラップ）して並んだ所定個数のサンプル列からなるブロックを順次取り出し、ブロック単位で、図１に示すＦＦＴ処理１１とＡＢＳ（絶対値化）処理１２とを実行する。ここで、ＦＦＴ処理１１では、ブロック内のサンプル列に対するハニング窓の乗算処理と、この乗算処理後のサンプル列に対するＦＦＴ（高速フーリエ変換）とを実行する。そして、ＡＢＳ処理では、ブロック毎に、ＦＦＴの結果得られるＮ個（Ｎは所定の整数）の複素数形式のスペクトルの絶対値を各々算出し、振幅スペクトル列ｙ（ｎ）（ｎ＝０〜Ｎ−１）として出力する。
【００１１】
一方、周波数解析部２０は、入力音声サンプルの類似度評価の基準となる音声を示すリファレンスサンプル列を外部から受け取り、周波数解析部１０のものと同様なＦＦＴ処理２１およびＡＢＳ処理２２により、リファレンスサンプル列のブロック化、ブロック単位でのＦＦＴ、ＦＦＴ結果に基づくＮ個の振幅スペクトル列ｘ（ｎ）（ｎ＝０〜Ｎ−１）の出力を行う。
【００１２】
自己相関算出部３０は、ブロック単位で、リファレンスサンプル列から得られる振幅スペクトル列ｘ（ｎ）（ｎ＝０〜Ｎ−１）の自己相関関数値Ｒｘｘ（ｍ）（ｍ＝−Ｎ＋１〜Ｎ−１）を算出する。さらに詳述すると、自己相関算出部３０は、ブロック単位で、図１に示すように、振幅スペクトル列ｘ（ｎ）（ｎ＝０〜Ｎ−１）に対するＦＦＴ処理３１と、ＦＦＴ処理３１の結果得られるスペクトル列の絶対値を算出し、その結果得られるスペクトル列を出力するＡＢＳ処理３２と、このＡＢＳ処理３２により得られたスペクトル列に対するＩＦＦＴ（逆高速フーリエ変換）処理３３と、このＩＦＦＴ処理３３により得られる複素数列の実数部を選択して出力するＲＥＡＬ処理３４とを実行する。これにより、次式に示す自己相関関数値Ｒｘｘ（ｍ）（ｍ＝−Ｎ＋１〜Ｎ−１）が得られる。
【数１】
2008026836.tif 000003
【００１３】
一方、相互相関算出部４０は、ブロック単位で、リファレンスサンプル列から得られた振幅スペクトル列ｘ（ｎ）（ｎ＝０〜Ｎ−１）と入力音声サンプル列から得られた振幅スペクトル列ｙ（ｎ）（ｎ＝０〜Ｎ−１）との相互相関関数値Ｒｘｙ（ｍ）（ｍ＝−Ｎ＋１〜Ｎ−１）を算出する。さらに詳述すると、相互相関算出部４０は、ブロック単位で、図１に示すように、振幅スペクトル列ｙ（ｎ）（ｎ＝０〜Ｎ−１）に対するＦＦＴ処理４１と、ＦＦＴ処理３１の結果得られるスペクトル列とＦＦＴ４１の結果得られるスペクトル列との乗算処理４２と、この乗算処理４２により得られるスペクトル列に対するＩＦＦＴ処理４３と、このＩＦＦＴ処理４３により得られる複素数列の実数部を選択して出力するＲＥＡＬ処理４４とを実行する。これにより、次式に示す相互相関関数値Ｒｘｙ（ｍ）（ｍ＝−Ｎ＋１〜Ｎ−１）が得られる。
【数２】
2008026836.tif 000004
【００１４】
そして、類似度算出部５０は、ブロック毎に、図２に示すように、相互相関算出部４０により算出された相互相関関数値Ｒｘｙ（ｍ）（ｍ＝−Ｎ＋１〜Ｎ−１）の中の最大値Ｒｘｙ−ｍａｘと、自己相関算出部３０により算出された自己相関関数値Ｒｘｘ（ｍ）（ｍ＝−Ｎ＋１〜Ｎ−１）の中の最大値Ｒｘｘ−ｍａｘとから、式（３）に示す類似度Ｄを算出して出力する。この類似度Ｄは、横軸を周波数、縦軸を振幅値とする座標系における入力音声サンプル列のブロックの振幅スペクトル列ｙ（ｎ）（ｎ＝０〜Ｎ−１）の波形とリファレンスサンプル列のブロックの振幅スペクトル列ｘ（ｎ）（ｎ＝０〜Ｎ−１）の波形との類似度を示すものである。聴覚上の音声の特徴は、その振幅スペクトルの分布に現れるため、この類似度Ｄは、入力音声サンプル列とリファレンスサンプル列の音声としての特徴の類似度を適確に表すものとなる。
【数３】
2008026836.tif 000005
【００１５】
本実施形態において、相互相関関数値の最大値Ｒｘｙ−ｍａｘを自己相関関数値の最大値Ｒｘｘ−ｍａｘによって除算したものを類似度Ｄとする理由は次の通りである。まず、相互相関関数値の最大値Ｒｘｙ−ｍａｘは、横軸を周波数、縦軸を振幅値とする座標系において、入力音声サンプル列から得られた振幅スペクトル列ｙ（ｎ）（ｎ＝０〜Ｎ−１）の波形とリファレンスサンプル列から得られた振幅スペクトル列ｘ（ｎ）（ｎ＝０〜Ｎ−１）の波形とが類似している程大きな値となる。この意味において、相互相関関数値の最大値Ｒｘｙ−ｍａｘは、振幅スペクトル列ｙ（ｎ）（ｎ＝０〜Ｎ−１）と振幅スペクトル列ｘ（ｎ）（ｎ＝０〜Ｎ−１）との類似度に依存する数値であるといえる。
【００１６】
しかし、リファレンスサンプル列の振幅スペクトル列ｘ（ｎ）（ｎ＝０〜Ｎ−１）と入力音声サンプル列の振幅スペクトル列ｙ（ｎ）（ｎ＝０〜Ｎ−１）とが同じ波形を維持したまま縦軸方向に同一倍率で伸縮するような場合であっても、相互相関関数値の最大値Ｒｘｙ−ｍａｘは、この伸縮に応じて増減する。例えばリファレンスサンプル列および入力音声サンプル列の振幅値をいずれも２倍にした場合、リファレンスサンプル列および入力音声サンプル列は波形自体の類似度が変わっていないにも拘わらず、両者の相互相関関数値は４倍になる。従って、あるブロックｋａにおいて得られた相互相関関数値の最大値Ｒｘｙ−ｍａｘ−ａと、別のブロックｋｂにおいて得られた相互相関関数値の最大値Ｒｘｙ−ｍａｘ−ｂとがある場合に、Ｒｘｙ−ｍａｘ−ａ＞Ｒｘｙ−ｍａｘ−ｂであったとしても、それだけでは、ブロックｋａにおける振幅スペクトル列ｙ（ｎ）（ｎ＝０〜Ｎ−１）およびｘ（ｎ）（ｎ＝０〜Ｎ−１）間の波形の類似度がブロックｋｂにおける振幅スペクトル列ｙ（ｎ）（ｎ＝０〜Ｎ−１）およびｘ（ｎ）（ｎ＝０〜Ｎ−１）間の波形の類似度よりも高い、ということはできない。ブロックｋａとブロックｋｂとでは、相互相関関数値の算出に用いるリファレンスサンプル列の振幅スペクトル列ｘ（ｎ）（ｎ＝０〜Ｎ−１）が同じではないからである。その意味において、相互相関関数値の最大値Ｒｘｙ−ｍａｘは、その基準となるリファレンスサンプル列に依存して変化し、ブロック間での比較に馴染まない相対的な類似度であるということができる。
【００１７】
本実施形態において算出するのは、このような相対的な類似度ではなく、振幅スペクトル列ｙ（ｎ）（ｎ＝０〜Ｎ−１）およびｘ（ｎ）（ｎ＝０〜Ｎ−１）間において波形がどの程度類似しているかを客観的かつ定量的に示し、ブロック間での比較にも用いることができる絶対的な尺度としての類似度である。
【００１８】
さらに詳述すると、本実施形態では、前掲式（３）に示すように、相互相関関数値の最大値Ｒｘｙ−ｍａｘを自己相関関数値の最大値Ｒｘｘ−ｍａｘによって除算した結果を類似度Ｄとしている。ここで、各ブロックにおいて、入力音声サンプル列の振幅スペクトル列ｙ（ｎ）（ｎ＝０〜Ｎ−１）がリファレンスサンプル列の振幅スペクトル列ｘ（ｎ）（ｎ＝０〜Ｎ−１）と全く同じものである場合、前掲式（３）により得られる類似度Ｄは１００％となる。そして、入力音声サンプル列の振幅スペクトル列ｙ（ｎ）（ｎ＝０〜Ｎ−１）の波形がリファレンスサンプル列の振幅スペクトル列ｘ（ｎ）（ｎ＝０〜Ｎ−１）の波形に対して歪むと、それに応じて前掲式（３）の類似度Ｄは１００％から離れてゆく。
【００１９】
このように本実施形態において得られる類似度Ｄは、各ブロックにおいて、対比すべき２つの振幅スペクトル列ｙ（ｎ）（ｎ＝０〜Ｎ−１）およびｘ（ｎ）（ｎ＝０〜Ｎ−１）がどの程度類似しているかを同じ尺度で示すものであり、ブロック間での比較にも用いることができ、その意味において絶対的なものであるということができる。
【００２０】
図３および図４は本実施形態の効果を示すものである。図３は、ある楽曲のＬチャネルおよびＲチャネルの音声サンプル列をリファレンスサンプル列とし、この音声サンプル列に対し、あるアルゴリズムに従って、圧縮符号化処理を施し、この結果得られる符号化データに復号化処理を施すことにより得られるＬチャネルおよびＲチャネルの音声サンプル列を入力音声サンプル列として本実施形態による類似度評価装置に与えた場合の動作例を示している。また、図４は、全く無関係なリファレンスサンプル列と入力音声サンプル列を本実施形態による類似度評価装置に与えた場合の動作例を示している。これらの図において、相互相関関数値の最大値Ｒｘｙ−ｍａｘ、自己相関関数値の最大値Ｒｘｘ−ｍａｘの単位はｄＢ、類似度Ｄの単位は％である。
【００２１】
これらの図３および図４を見比べると、本実施形態において算出される類似度Ｄが客観的かつ定量的にリファレンスサンプル列と入力音声サンプル列との波形の類似度を示していることが分かる。まず、図３に示す例の場合、入力音声サンプル列は、リファレンスサンプル列に対して圧縮符号化および復号化を施したものであるため、リファレンスサンプル列に対して、圧縮符号化および復号化の過程において発生した雑音が重畳したものとなる。この雑音の影響により、リファレンスサンプル列と入力音声サンプル列の類似度が若干低下するブロックがランダムに現れる。図３に示す例は、まさにこの現象を示しており、類似度Ｄは、ブロック間でばらつくが、総じて１００％に近い値となっている。これに対し、入力音声サンプル列とリファレンスサンプル列とが全く無関係なものである場合、類似度Ｄは、ブロック間で大きくばらつく。図４に示す例も、この現象を示している。
【００２２】
以上のように、本実施形態によれば、対比すべき２つの音声がある場合に、それらの音声の類似度を客観的かつ定量的に評価することができる。
【００２３】
以上、本発明を装置として具現する場合を例に実施形態を説明したが、本発明は、図１に示す類似度評価装置としてコンピュータを機能させるプログラムを作成し、このプログラムをユーザに配布する、という態様でも実施され得る。
【図面の簡単な説明】
【００２４】
【図１】この発明の一実施形態である類似度評価装置の構成を示すブロック図である。
【図２】同類似度評価装置の処理内容を示す図である。
【図３】同実施形態の効果を示す図である。
【図４】同実施形態の効果を示す図である。
【符号の説明】
【００２５】
１０，２０……周波数解析部、３０……自己相関算出部、４０……相互相関算出部、５０……類似度算出部。
【図１】
2008026836.tif 000006
【図２】
2008026836.tif 000007
【図３】
2008026836.tif 000008
【図４】
2008026836.tif 000009