(57)【特許請求の範囲】
【請求項１】
時系列信号から所定の標準周波数に対応した信号成分を分離するための周波数解析方法であって、
前記標準周波数の間隔よりも微細な間隔で複数の微細周波数を設定し、各微細周波数に対応する複数の調和信号集合を準備する調和信号準備段階と、
前記各標準周波数に対応する相関値を格納するための主相関配列と、各微細周波数に対応する相関値を格納するための微細相関配列と、直前の単位区間において得られた微細相関配列を保持するための区間決定用相関配列を準備する配列準備段階と、
前記時系列信号に所定の長さの単位区間を設定し、区間信号を抽出するための区間信号抽出段階と、
前記全ての調和信号と前記区間信号との相関を演算して、各微細周波数に対応する相関値を算出し、前記微細相関配列に算出された相関値を設定する相関演算段階と、
前記微細相関配列中の相関配列より周囲の微細周波数における相関値に比べ局所的にピークとなる微細周波数を複数抽出するピーク周波数選出段階と、
前記各ピークとなる微細周波数に対応する調和信号と前記区間信号との相関を再度演算し、前記微細周波数の最近傍の標準周波数に対応する主相関配列に設定し、前記再度算出された相関値と調和信号との積で生成される含有信号を前記区間信号から減じ、差分信号を新たに区間信号とすることにより区間信号を更新する処理を抽出された全てのピークに対して順次行って主相関配列の値を決定するスペクトル算出段階と、
直前の単位区間における微細相関配列の値を複写して得られる区間決定用相関配列の値と、仮設定された現単位区間における微細相関配列の値の類似度を算出し、当該類似度に基づいて単位区間の送り幅を決定する類似度算出段階と、を有し、
前記区間信号抽出段階は、前記決定された送り幅に基づく位置に設定される単位区間から区間信号を抽出するものであることを特徴とする周波数解析方法。
【請求項２】
前記類似度算出段階により算出される類似度が所定値より低い場合には送り幅を小さくなるように設定するものであることを特徴とする請求項１に記載の周波数解析方法。
【請求項３】
時系列信号から所定の標準周波数に対応した信号成分を分離するための周波数解析方法であって、
前記標準周波数の間隔よりも微細な間隔で複数の微細周波数を設定し、各微細周波数に対応する複数の調和信号集合を準備する調和信号準備段階と、
前記各標準周波数に対応する相関値を格納するための主相関配列と、各微細周波数に対応する相関値を格納するための微細相関配列を準備する配列準備段階と、
前記時系列信号に所定の長さの単位区間を設定し、区間信号を抽出するための区間信号抽出段階と、
前記全ての調和信号と前記区間信号との相関を演算して、各微細周波数に対応する相関値を算出し、前記微細相関配列に算出された相関値を設定する相関演算段階と、
前記微細相関配列中の相関配列より周囲の微細周波数における相関値に比べ局所的にピークとなる微細周波数を複数抽出するピーク周波数選出段階と、
前記各ピークとなる微細周波数に対応する調和信号と前記区間信号との相関を再度演算し、前記微細周波数の最近傍の標準周波数に対応する主相関配列に設定し、前記再度算出された相関値と調和信号との積で生成される含有信号を前記区間信号から減じ、差分信号を新たに区間信号とすることにより区間信号を更新する処理を抽出された全てのピークに対して順次行って主相関配列の値を決定するスペクトル算出段階と、を有し、
前記スペクトル算出段階は、１つの標準周波数が最近傍となる複数の微細周波数がピークとして選出された場合に、そのうち最大の相関値を有する微細周波数についてのみ、区間信号との相関を求めるようにするものであることを特徴とする周波数解析方法。
【請求項４】
前記相関演算段階、前記ピーク周波数選出段階、および前記スペクトル算出段階を、ある単位区間から抽出された１つの区間信号に対して、複数回実行するようにしていることを特徴とする請求項１から請求項３のいずれかに記載の周波数解析方法。
【請求項５】
前記時系列信号は音響信号であって、
前記スペクトル算出段階によって選出された標準周波数に対応する音の高さ情報と、相関値に対応する音の強さ情報と、各単位区間の開始点に対応する音の発音開始時刻と、各単位区間の終了点に対応する音の発音終了時刻からなる４つの情報に所定の変換を施して符号データを生成する符号化段階をさらに有することを特徴とする請求項１から請求項４のいずれかに記載の周波数解析方法。
【請求項６】
コンピュータに、時系列信号から所定の標準周波数に対応した信号成分を分離するための周波数解析を実行させるプログラムであって、前記標準周波数の間隔よりも微細な間隔で複数の微細周波数を設定して各微細周波数に対応する複数の調和信号集合を準備する調和信号準備段階、前記各標準周波数に対応する相関値を格納するための主相関配列と、各微細周波数に対応する相関値を格納するための微細相関配列と、直前の単位区間において得られた微細相関配列を保持するための区間決定用相関配列を準備する配列準備段階、前記時系列信号に所定の長さの単位区間を設定し、区間信号を抽出するための区間信号抽出段階、前記全ての調和信号と前記区間信号との相関を演算して、各微細周波数に対応する相関値を算出し、前記微細相関配列に算出された相関値を設定する相関演算段階、前記微細相関配列中の相関配列より周囲の微細周波数における相関値に比べ局所的にピークとなる微細周波数を複数抽出するピーク周波数選出段階、前記各ピークとなる微細周波数に対応する調和信号と前記区間信号との相関を再度演算し、前記微細周波数の最近傍の標準周波数に対応する主相関配列に設定し、前記再度算出された相関値と調和信号との積で生成される含有信号を前記区間信号から減じ、差分信号を新たに区間信号とすることにより区間信号を更新する処理を抽出された全てのピークに対して順次行って主相関配列の値を決定するスペクトル算出段階、直前の単位区間における微細相関配列の値を複写して得られる区間決定用相関配列の値と、仮設定された現単位区間における微細相関配列の値の類似度を算出し、当該類似度に基づいて単位区間の送り幅を決定する類似度算出段階、をコンピュータに実行させるためのものであり、前記区間信号抽出段階は、前記決定された送り幅に基づく位置に設定される単位区間から区間信号を抽出するものであることを特徴とするプログラム。
【請求項７】
コンピュータに、時系列信号から所定の標準周波数に対応した信号成分を分離するための周波数解析を実行させるプログラムであって、前記標準周波数の間隔よりも微細な間隔で複数の微細周波数を設定して各微細周波数に対応する複数の調和信号集合を準備する調和信号準備段階、前記各標準周波数に対応する相関値を格納するための主相関配列と、各微細周波数に対応する相関値を格納するための微細相関配列を準備する配列準備段階と、前記時系列信号に所定の長さの単位区間を設定し、区間信号を抽出するための区間信号抽出段階と、前記全ての調和信号と前記区間信号との相関を演算して、各微細周波数に対応する相関値を算出し、前記微細相関配列に算出された相関値を設定する相関演算段階と、前記微細相関配列中の相関配列より周囲の微細周波数における相関値に比べ局所的にピークとなる微細周波数を複数抽出するピーク周波数選出段階と、前記各ピークとなる微細周波数に対応する調和信号と前記区間信号との相関を再度演算し、前記微細周波数の最近傍の標準周波数に対応する主相関配列に設定し、前記再度算出された相関値と調和信号との積で生成される含有信号を前記区間信号から減じ、差分信号を新たに区間信号とすることにより区間信号を更新する処理を抽出された全てのピークに対して順次行って主相関配列の値を決定するスペクトル算出段階、をコンピュータに実行させるためのものであり、前記スペクトル算出段階は、１つの標準周波数が最近傍となる複数の微細周波数がピークとして選出された場合に、そのうち最大の相関値を有する微細周波数についてのみ、区間信号との相関を求めるようにするものであることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、放送メディア（ラジオ、テレビ）、通信メディア（ＣＳ映像・音声配信、インターネット音楽配信、通信カラオケ）、パッケージメディア（ＣＤ、ＭＤ、カセット、ビデオ、ＬＤ、ＣＤ−ＲＯＭ、ゲームカセット、携帯音楽プレーヤ向け固体メモリ媒体）などで提供する各種オーディオコンテンツの制作、並びに、音楽演奏録音信号から楽譜出版、通信カラオケ配信用ＭＩＤＩデータ、演奏ガイド機能付き電子楽器向け自動演奏データ、携帯電話・ＰＨＳ・ポケベルなどの着信メロディデータを自動的に作成する自動採譜技術に関する。
【０００２】
【従来の技術】
音響信号に代表される時系列信号には、その構成要素として複数の周期信号が含まれている。このため、与えられた時系列信号にどのような周期信号が含まれているかを解析する手法は、古くから知られている。例えば、フーリエ解析は、与えられた時系列信号に含まれる周波数成分を解析するための方法として広く利用されている。
【０００３】
このような時系列信号の解析方法を利用すれば、音響信号を符号化することも可能である。コンピュータの普及により、原音となるアナログ音響信号を所定のサンプリング周波数でサンプリングし、各サンプリング時の信号強度を量子化してデジタルデータとして取り込むことが容易にできるようになってきており、こうして取り込んだデジタルデータに対してフーリエ解析などの手法を適用し、原音信号に含まれていた周波数成分を抽出すれば、各周波数成分を示す符号によって原音信号の符号化が可能になる。
【０００４】
また、電子楽器による楽器音を符号化しようという発想から生まれたＭＩＤＩ（Musical Instrument Digital Interface）規格も、パーソナルコンピュータの普及とともに盛んに利用されるようになってきている。このＭＩＤＩ規格による符号データ（以下、ＭＩＤＩデータという）は、基本的には、楽器のどの鍵盤キーを、どの程度の強さで弾いたか、という楽器演奏の操作を記述したデータであり、このＭＩＤＩデータ自身には、実際の音の波形は含まれていない。そのため、実際の音を再生する場合には、楽器音の波形を記憶したＭＩＤＩ音源が別途必要になるが、その符号化効率の高さが注目を集めており、ＭＩＤＩ規格による符号化および復号化の技術は、現在、パーソナルコンピュータを用いて楽器演奏、楽器練習、作曲などを行うソフトウェアに広く採り入れられている。
【０００５】
そこで、音響信号に代表される時系列信号に対して、所定の手法で解析を行うことにより、その構成要素となる周期信号を抽出し、抽出した周期信号をＭＩＤＩデータを用いて符号化しようとする提案がなされている。例えば、特開平１０−２４７０９９号公報、特開平１１−７３１９９号公報、特開平１１−７３２００号公報、特開平１１−９５７５３号公報、特開２０００−９９００９号公報、特開２０００−９９０９２号公報、特開２０００−９９０９３号公報、特開２０００−２６１３２２号公報、特開２００１−５４５０号公報、特開２００１−１４８６３３号公報には、任意の時系列信号について、構成要素となる周波数を解析し、その解析結果からＭＩＤＩデータを作成することができる種々の方法が提案されている。
【０００６】
上記公報に記載された発明では、音響信号との相関を求める際に、音階で特定される標準周波数より細かい間隔で微細周波数を設定し、この微細周波数に対応した周期関数を用いて行っている。音響信号として再生可能とするためには、標準周波数に対応して符号化する必要があるので、具体的には、相関値が高い微細周波数を求め、その相関値をその微細周波数に最も近い標準周波数の値として符号化している。この際、相関値が高い微細周波数が隣接する標準周波数間の境界付近に存在する場合には、他の信号成分による影響を受けるものと判断し、符号化対象として抽出しない処理を行っている。
【０００７】
【発明が解決しようとする課題】
しかしながら、上記のように隣接する標準周波数間の境界付近に相関値の大きい微細周波数が存在した場合に、その微細周波数を抽出しないようにすると、実際に境界部分に信号成分が存在していたとしても削除してしまうことになり、逆にこの微細周波数を抽出するようにすると、他の信号成分による影響であって実際には存在していなくても抽出してしまうことになるという問題が生じている。
【０００８】
上記のような点に鑑み、本発明は、標準周波数間の境界付近に信号成分が存在する場合であっても、正確にその信号成分を抽出することができ、さらには、精度の高い符号化を行うことが可能な周波数解析方法および音響信号の符号化方法を提供することを課題とする。
【０００９】
【課題を解決するための手段】
上記課題を解決するため、本発明では、時系列信号から所定の標準周波数に対応した信号成分を分離するための周波数解析方法として、前記標準周波数の間隔よりも微細な間隔で複数の微細周波数を設定し、各微細周波数に対応する複数の調和信号集合を準備する調和信号準備段階と、前記各標準周波数に対応する相関値を格納するための主相関配列と、各微細周波数に対応する相関値を格納するための微細相関配列を準備する配列準備段階と、前記時系列信号に所定の長さの単位区間を設定し、区間信号を抽出するための区間信号抽出段階と、前記全ての調和信号と前記区間信号との相関を演算して、各微細周波数に対応する相関値を算出し、前記微細相関配列に算出された相関値を設定する相関演算段階と、前記微細相関配列中の相関配列より周囲の微細周波数における相関値に比べ局所的にピークとなる微細周波数を複数抽出するピーク周波数選出段階と、前記各ピークとなる微細周波数に対応する調和信号と前記区間信号との相関を再度演算し、前記微細周波数の最近傍の標準周波数に対応する主相関配列に設定し、前記再度算出された相関値と調和信号との積で生成される含有信号を前記区間信号から減じ、差分信号を新たに区間信号とすることにより区間信号を更新する処理を抽出された全てのピークに対して順次行って主相関配列の値を決定するスペクトル算出段階を有することを特徴とする。
【００１０】
本発明によれば、標準周波数より微細な間隔で微細周波数を設定し、各微細周波数の区間信号に対する相関を求め、相関値が局所的にピークとなっている微細周波数（以下、ピーク周波数という）を複数選出し、選出された複数のピーク周波数と区間信号との相関を一般化調和解析の手法により求め、算出した相関値を対応するピーク周波数に最も近い標準周波数の相関値として、抽出すべき周波数成分を決定するようにしたので、隣接する標準周波数間の境界付近に位置する微細周波数がピークとなる場合であっても、正確に周波数成分を抽出することが可能となる。
【００１１】
【発明の実施の形態】
以下、本発明の実施形態について図面を参照して詳細に説明する。
【００１２】
（1.基本原理）
はじめに、本発明に係る周波数解析方法および音響信号符号化方法の基本原理を述べておく。この基本原理は、前掲の各公報に開示されているので、ここではその概要のみを簡単に述べることにする。
【００１３】
図１（ａ）に示すように、時系列信号としてアナログ音響信号が与えられたものとする。図１の例では、横軸に時間ｔ、縦軸に振幅（強度）をとって、この音響信号を示している。ここでは、まずこのアナログ音響信号を、デジタルの音響データとして取り込む処理を行う。これは、従来の一般的なＰＣＭの手法を用い、所定のサンプリング周波数でこのアナログ音響信号をサンプリングし、振幅を所定の量子化ビット数を用いてデジタルデータに変換する処理を行えば良い。ここでは、説明の便宜上、ＰＣＭの手法でデジタル化した音響データの波形も図１（ａ）のアナログ音響信号と同一の波形で示すことにする。
【００１４】
続いて、この解析対象となる音響信号の時間軸上に、複数の単位区間を設定する。図１（ａ）に示す例では、時間軸ｔ上に等間隔に６つの時刻ｔ１〜ｔ６が定義され、これら各時刻を始点および終点とする５つの単位区間ｄ１〜ｄ５が設定されている。図１の例では、全て同一の区間長をもった単位区間が時間軸上で重複せずに設定されているが、隣接する単位区間が時間軸上で部分的に重なり合うような区間設定を行ってもかまわない。
【００１５】
こうして単位区間が設定されたら、各単位区間ごとの音響信号（以下、区間信号と呼ぶことにする）について、それぞれ代表周波数を選出する。各区間信号には、通常、様々な周波数成分が含まれているが、例えば、その中で成分の強度割合の大きな周波数成分を代表周波数として選出すれば良い。ここで、代表周波数とはいわゆる基本周波数が一般的であるが、音声のフォルマント周波数などの倍音周波数や、ノイズ音源のピーク周波数も代表周波数として扱うことがある。代表周波数は１つだけ選出しても良いが、音響信号によっては複数の代表周波数を選出した方が、より精度の高い符号化が可能になる。図１（ｂ）には、個々の単位区間ごとにそれぞれ３つの代表周波数を選出し、１つの代表周波数を１つの代表符号（図では便宜上、音符として示してある）として符号化した例が示されている。ここでは、代表符号（音符）を収容するために３つのトラックＴ１，Ｔ２，Ｔ３が設けられているが、これは個々の単位区間ごとに選出された３つずつの代表符号を、それぞれ異なるトラックに収容するためである。
【００１６】
例えば、単位区間ｄ１について選出された代表符号ｎ（ｄ１，１），ｎ（ｄ１，２），ｎ（ｄ１，３）は、それぞれトラックＴ１，Ｔ２，Ｔ３に収容されている。ここで、各符号ｎ（ｄ１，１），ｎ（ｄ１，２），ｎ（ｄ１，３）は、ＭＩＤＩ符号におけるノートナンバーを示す符号である。ＭＩＤＩ符号におけるノートナンバーは、０〜１２７までの１２８通りの値をとり、それぞれピアノの鍵盤の１つのキーを示すことになる。具体的には、例えば、代表周波数として４４０Ｈｚが選出された場合、この周波数はノートナンバーｎ＝６９（ピアノの鍵盤中央の「ラ音（Ａ３音）」に対応）に相当するので、代表符号としては、ｎ＝６９が選出されることになる。もっとも、図１（ｂ）は、上述の方法によって得られる代表符号を音符の形式で示した概念図であり、実際には、各音符にはそれぞれ強度に関するデータも付加されている。例えば、トラックＴ１には、ノートナンバーｎ（ｄ１，１），ｎ（ｄ２，１）・・・なる音高を示すデータとともに、ｅ（ｄ１，１），ｅ（ｄ２，１）・・・なる強度を示すデータが収容されることになる。この強度を示すデータは、各代表周波数の成分が、元の区間信号にどの程度の度合いで含まれていたかによって決定される。具体的には、各代表周波数をもった周期関数の区間信号に対する相関値に基づいて強度を示すデータが決定されることになる。また、図１（ｂ）に示す概念図では、音符の横方向の位置によって、個々の単位区間の時間軸上での位置が示されているが、実際には、この時間軸上での位置を正確に数値として示すデータが各音符に付加されていることになる。
【００１７】
音響信号を符号化する形式としては、必ずしもＭＩＤＩ形式を採用する必要はないが、この種の符号化形式としてはＭＩＤＩ形式が最も普及しているため、実用上はＭＩＤＩ形式の符号データを用いるのが好ましい。ＭＩＤＩ形式では、「ノートオン」データもしくは「ノートオフ」データが、「デルタタイム」データを介在させながら存在する。「ノートオン」データは、特定のノートナンバーＮとベロシティーＶを指定して特定の音の演奏開始を指示するデータであり、「ノートオフ」データは、特定のノートナンバーＮとベロシティーＶを指定して特定の音の演奏終了を指示するデータである。また、「デルタタイム」データは、所定の時間間隔を示すデータである。ベロシティーＶは、例えば、ピアノの鍵盤などを押し下げる速度（ノートオン時のベロシティー）および鍵盤から指を離す速度（ノートオフ時のベロシティー）を示すパラメータであり、特定の音の演奏開始操作もしくは演奏終了操作の強さを示すことになる。
【００１８】
前述の方法では、第ｉ番目の単位区間ｄｉについて、代表符号としてＪ個のノートナンバーｎ（ｄｉ，１），ｎ（ｄｉ，２），・・・，ｎ（ｄｉ，Ｊ）が得られ、このそれぞれについて強度ｅ（ｄｉ，１），ｅ（ｄｉ，２），・・・，ｅ（ｄｉ，Ｊ）が得られる。そこで、次のような手法により、ＭＩＤＩ形式の符号データを作成することができる。まず、「ノートオン」データもしくは「ノートオフ」データの中で記述するノートナンバーＮとしては、得られたノートナンバーｎ（ｄｉ，１），ｎ（ｄｉ，２），・・・，ｎ（ｄｉ，Ｊ）をそのまま用いれば良い。一方、「ノートオン」データもしくは「ノートオフ」データの中で記述するベロシティーＶとしては、得られた強度ｅ（ｄｉ，１），ｅ（ｄｉ，２），・・・，ｅ（ｄｉ，Ｊ）を所定の方法で規格化した値を用いれば良い。また、「デルタタイム」データは、各単位区間の長さに応じて設定すれば良い。
【００１９】
（2.1.周期関数との相関を求める具体的な方法）
上述した基本原理の基づく方法では、区間信号に対して、１つまたは複数の代表周波数が選出され、この代表周波数をもった周期信号によって、当該区間信号が表現されることになる。ここで、選出される代表周波数は、文字どおり、当該単位区間内の信号成分を代表する周波数である。この代表周波数を選出する具体的な方法には、後述するように、短時間フーリエ変換を利用する方法と、一般化調和解析の手法を利用する方法とがある。いずれの方法も、基本的な考え方は同じであり、あらかじめ周波数の異なる複数の周期関数を用意しておき、これら複数の周期関数の中から、当該単位区間内の区間信号に対する相関が高い周期関数を見つけ出し、この相関の高い周期関数の周波数を代表周波数として選出する、という手法を採ることになる。すなわち、代表周波数を選出する際には、あらかじめ用意された複数の周期関数と、単位区間内の区間信号との相関を求める演算を行うことになる。そこで、ここでは、周期関数との相関を求める具体的な方法を述べておく。
【００２０】
複数の周期関数として、図２に示すような三角関数が用意されているものとする。これらの三角関数は、同一周波数をもった正弦関数と余弦関数との対から構成されており、１２８通りの標準周波数ｆ（０）〜ｆ（１２７）のそれぞれについて、正弦関数および余弦関数の対が定義されていることになる。ここでは、同一の周波数をもった正弦関数および余弦関数からなる一対の関数を、当該周波数についての周期関数として定義することにする。すなわち、ある特定の周波数についての周期関数は、一対の正弦関数および余弦関数によって構成されることになる。このように、一対の正弦関数と余弦関数とにより周期関数を定義するのは、信号に対する周期関数の相関値を求める際に、相関値が位相の影響を受ける事を考慮するためである。なお、図２に示す各三角関数内の変数Ｆおよびｋは、区間信号Ｘについてのサンプリング周波数Ｆおよびサンプル番号ｋに相当する変数である。例えば、周波数ｆ（０）についての正弦波は、ｓｉｎ（２πｆ（０）ｋ／Ｆ）で示され、任意のサンプル番号ｋを与えると、区間信号を構成する第ｋ番目のサンプルと同一時間位置における周期関数の振幅値が得られる。
【００２１】
ここでは、１２８通りの標準周波数ｆ（０）〜ｆ（１２７）を図３に示すような式で定義した例を示すことにする。すなわち、第ｎ番目（０≦ｎ≦１２７）の標準周波数ｆ（ｎ）は、以下に示す〔数式１〕で定義されることになる。
【００２２】
〔数式１〕
ｆ（ｎ）＝４４０×２γ(n)
γ（ｎ）＝（ｎ−６９）／１２
【００２３】
このような式によって標準周波数を定義しておくと、最終的にＭＩＤＩデータを用いた符号化を行う際に便利である。なぜなら、このような定義によって設定される１２８通りの標準周波数ｆ（０）〜ｆ（１２７）は、等比級数をなす周波数値をとることになり、ＭＩＤＩデータで利用されるノートナンバーに対応した周波数になるからである。したがって、図２に示す１２８通りの標準周波数ｆ（０）〜ｆ（１２７）は、対数尺度で示した周波数軸上に等間隔（ＭＩＤＩにおける半音単位）に設定した周波数ということになる。
【００２４】
続いて、任意の区間の区間信号に対する各周期関数の相関の求め方について、具体的な説明を行う。例えば、図４に示すように、ある単位区間ｄについて区間信号Ｘが与えられていたとする。ここでは、区間長Ｌをもった単位区間ｄについて、サンプリング周波数Ｆでサンプリングが行なわれており、全部でｗ個のサンプル値が得られているものとし、サンプル番号を図示のように、０，１，２，３，・・・，ｋ，・・・，ｗ−２，ｗ−１とする（白丸で示す第ｗ番目のサンプルは、右に隣接する次の単位区間の先頭に含まれるサンプルとする）。この場合、任意のサンプル番号ｋについては、Ｘ（ｋ）なる振幅値がデジタルデータとして与えられていることになる。短時間フーリエ変換においては、Ｘ（ｋ）に対して各サンプルごとに中央の重みが１に近く、両端の重みが０に近くなるような窓関数Ｗ（ｋ）を乗ずることが通常である。すなわち、Ｘ（ｋ）×Ｗ（ｋ）をＸ（ｋ）と扱って以下のような相関計算を行うもので、窓関数の形状としては余弦波形状のハミング窓が一般に用いられている。ここで、ｗは以下の記述においても定数のような記載をしているが、一般にはｎの値に応じて変化させ、区間長Ｌを超えない範囲で最大となるＦ／ｆ（ｎ）の整数倍の値に設定することが望ましい。
【００２５】
このような区間信号Ｘに対して、第ｎ番目の標準周波数ｆ（ｎ）をもった正弦関数Ｒｎとの相関値を求める原理を示す。両者の相関値Ａ（ｎ）は、図５の第１の演算式によって定義することができる。ここで、Ｘ（ｋ）は、図４に示すように、区間信号Ｘにおけるサンプル番号ｋの振幅値であり、ｓｉｎ（２πｆ（ｎ）ｋ／Ｆ）は、時間軸上での同位置における正弦関数Ｒｎの振幅値である。この第１の演算式は、単位区間ｄ内の全サンプル番号ｋ＝０〜ｗ−１の次元について、それぞれ区間信号Ｘの振幅値と正弦関数Ｒｎの振幅ベクトルの内積を求める式ということができる。
【００２６】
同様に、図５の第２の演算式は、区間信号Ｘと、第ｎ番目の標準周波数ｆ（ｎ）をもった余弦関数との相関値を求める式であり、両者の相関値はＢ（ｎ）で与えられる。なお、相関値Ａ（ｎ）を求めるための第１の演算式も、相関値Ｂ（ｎ）を求めるための第２の演算式も、最終的に２／ｗが乗ぜられているが、これは相関値を規格化するためのものでり、前述のとおりｗはｎに依存して変化させるのが一般的であるため、この係数もｎに依存する変数である。
【００２７】
区間信号Ｘと標準周波数ｆ（ｎ）をもった標準周期関数との相関実効値は、図５の第３の演算式に示すように、正弦関数との相関値Ａ（ｎ）と余弦関数との相関値Ｂ（ｎ）との二乗和平方根値Ｅ（ｎ）によって示すことができる。この相関実効値の大きな標準周期関数の周波数を代表周波数として選出すれば、この代表周波数を用いて区間信号Ｘを符号化することができる。
【００２８】
すなわち、この相関値Ｅ（ｎ）が所定の基準以上の大きさとなる１つまたは複数の標準周波数を代表周波数として選出すれば良い。なお、ここで「相関値Ｅ（ｎ）が所定の基準以上の大きさとなる」という選出条件は、例えば、何らかの閾値を設定しておき、相関値Ｅ（ｎ）がこの閾値を超えるような標準周波数ｆ（ｎ）をすべて代表周波数として選出する、という絶対的な選出条件を設定しても良いが、例えば、相関値Ｅ（ｎ）の大きさの順にＱ番目までを選出する、というような相対的な選出条件を設定しても良い。
【００２９】
（2.2.一般化調和解析の手法）
ここでは、本発明に係る音響信号の符号化を行う際に有用な一般化調和解析の手法について説明する。既に説明したように、音響信号を符号化する場合、個々の単位区間内の区間信号について、相関値の高いいくつかの代表周波数を選出することになる。一般化調和解析は、より高い精度で代表周波数の選出を可能にする手法であり、その基本原理は次の通りである。
【００３０】
図６（ａ）に示すような単位区間ｄについて、信号Ｓ（ｊ）なるものが存在するとする。ここで、ｊは後述するように、繰り返し処理のためのパラメータである（ｊ＝１〜Ｊ）。まず、この信号Ｓ（ｊ）に対して、図２に示すような１２８通りの周期関数すべてについての相関値を求める。そして、最大の相関値が得られた１つの周期関数の周波数を代表周波数として選出し、当該代表周波数をもった周期関数を要素関数として抽出する。続いて、図６（ｂ）に示すような含有信号Ｇ（ｊ）を定義する。この含有信号Ｇ（ｊ）は、抽出された要素関数に、その振幅として、当該要素関数の信号Ｓ（ｊ）に対する相関値を乗じることにより得られる信号である。例えば、周期関数として図２に示すように、一対の正弦関数と余弦関数とを用い、周波数ｆ（ｎ）が代表周波数として選出された場合、振幅Ａ（ｎ）をもった正弦関数Ａ（ｎ）ｓｉｎ（２πｆ（ｎ）ｋ／Ｆ）と、振幅Ｂ（ｎ）をもった余弦関数Ｂ（ｎ）ｃｏｓ（２πｆ（ｎ）ｋ／Ｆ）との和からなる信号が含有信号Ｇ（ｊ）ということになる（図６（ｂ）では、図示の便宜上、一方の関数しか示していない）。ここで、Ａ（ｎ），Ｂ（ｎ）は、図５の式で得られる規格化された相関値であるから、結局、含有信号Ｇ（ｊ）は、信号Ｓ（ｊ）内に含まれている周波数ｆ（ｎ）をもった信号成分ということができる。
【００３１】
こうして、含有信号Ｇ（ｊ）が求まったら、信号Ｓ（ｊ）から含有信号Ｇ（ｊ）を減じることにより、差分信号Ｓ（ｊ＋１）を求める。図６（ｃ）は、このようにして求まった差分信号Ｓ（ｊ＋１）を示している。この差分信号Ｓ（ｊ＋１）は、もとの信号Ｓ（ｊ）の中から、周波数ｆ（ｎ）をもった信号成分を取り去った残りの信号成分からなる信号ということができる。そこで、パラメータｊを１だけ増加させることにより、この差分信号Ｓ（ｊ＋１）を新たな信号Ｓ（ｊ）として取り扱い、同様の処理を、パラメータｊをｊ＝１〜Ｊまで１ずつ増やしながらＪ回繰り返し実行すれば、Ｊ個の代表周波数を選出することができる。
【００３２】
このような相関計算の結果として出力されるＪ個の含有信号Ｇ（１）〜Ｇ（Ｊ）は、もとの区間信号Ｘの構成要素となる信号であり、もとの区間信号Ｘを符号化する場合には、これらＪ個の含有信号の周波数を示す情報および振幅（強度）を示す情報を符号データとして用いるようにすれば良い。尚、Ｊは代表周波数の個数であると説明してきたが、標準周波数ｆ（ｎ）の個数と同一すなわちＪ＝１２８であってもよく、周波数スペクトルを求める目的においてはそのように行うのが通例である。
【００３３】
以上のような処理により、各単位区間について、各周波数に対する強度値の集合である周波数群が得られることになる。このようにして所定数の周波数群が選出されたら、この周波数群の各周波数に対応する「音の高さを示す情報」、選出された各周波数の信号強度に対応する「音の強さを示す情報」、当該単位区間の始点に対応する「音の発音開始時刻を示す情報」、当該単位区間に後続する単位区間の始点に対応する「音の発音終了時刻を示す情報」、の４つの情報を含む所定数の符号データを作成すれば、当該単位区間内の区間信号Ｘを所定数の符号データにより符号化することができる。符号データとして、ＭＩＤＩデータを作成するのであれば、「音の高さを示す情報」としてノートナンバーを用い、「音の強さを示す情報」としてベロシティーを用い、「音の発音開始時刻を示す情報」としてノートオン時刻を用い、「音の発音終了時刻を示す情報」としてノートオフ時刻を用いるようにすれば良い。
【００３４】
（3.1.本発明に係る周波数解析方法および音響信号の符号化方法）
以下、本発明に係る周波数解析方法および音響信号の符号化方法について説明していく。上述のように、従来の手法では、微細周波数に対する相関値を求め、各標準周波数の範囲において、最大の相関値を当該標準周波数の相関値としている。例えば、原音響信号のスペクトルが図７（ａ）に示すような状態となるものを考えてみる。なお、図７において、横軸は周波数、縦軸は強度値もしくは相関値である。図７（ａ）においては、ノートナンバーｎの範囲（標準周波数ｆ（ｎ）の範囲）に含まれる音と、ノートナンバーｎ＋１の範囲に含まれる音が発せられていることになる。これを短時間フーリエ変換の手法により、各微細周波数についての相関を求めると、図７（ｂ）に示すようになる。図７（ｂ）においては、各標準周波数間を１３に分割した間隔で微細周波数が設定されている。従来の符号化では、ここで各ノートナンバーの範囲内において、最大の相関値となるものを抽出する。この際、各ノートナンバーの範囲において、境界部分に存在するものは、他の信号成分の影響であるとみなして抽出しないようにしている。そのため、図７（ｃ）に示すようにノートナンバーｎからは最大の相関値が抽出されるが、ノートナンバーｎ＋１からは抽出されないことになる。
【００３５】
これに対して本発明では、各ノートナンバーの範囲において最大の相関値を抽出するのではなく、ピークとなる相関値を抽出するようにする。ピークとなる相関値とは、自身の両側の微細周波数の相関値が自身よりも小さくなっているものをいう。ピークとなる相関値を抽出した場合には、それ自身がピークであるために他の信号成分の影響を受けているということは考えにくい。そのため、ノートナンバーの範囲の境界部分に存在していても抽出するものとする。したがって、図７（ｂ）に示したような相関値の集合から図７（ｄ）に示すような信号成分が抽出されることになる。
【００３６】
また、２つ目の例として図８に示すようなものを考えてみる。図８（ａ）に示すような２つの音が発せられたとすると、短時間フーリエ変換の手法により、図８（ｂ）に示すような各微細周波数に対応する相関値が得られる。従来の手法では、図８（ｃ）に示すように、ノートナンバーｎからは抽出されるが、ノートナンバーｎ＋１からは抽出されないということになるが、本発明によれば、図８（ｄ）に示すようにそれぞれのノートナンバーに対応した周波数成分が抽出されることになる。
【００３７】
続いて、本発明の周波数解析方法について、音響信号を符号化する場合を例にとって、図９に示すフローチャートを用いて説明する。まず、時系列の音響信号に対して単位区間を設定して区間信号の抽出を行う（ステップＳ１）。これは、上記（基本原理）の項において、図１を用いて説明したように、所定の長さの単位区間が設定され、抽出が行われる。
【００３８】
次に、抽出された区間信号とあらかじめ準備された調和信号との相関を算出する（ステップＳ２）。この調和信号とは、上記（周期関数との相関を求める具体的な方法）の項で説明した周期関数と同じものである。ただし、図２の例では、ノートナンバーに対応した１２８個の標準周波数を設定したが、本発明では、各標準周波数間に等比級数の間隔で１２個の微細周波数を設定し、全部で１２８×１３個の調和信号を用意する。例えば、隣接する標準周波数ｆ（ｎ）とｆ（ｎ＋１）間では、ｆ（ｎ＋１／１３）〜ｆ（ｎ＋１２／１３）の１２個の微細周波数が設定されることになる。このステップＳ２においては、区間信号と１２８×１３個の調和信号との相関を短時間フーリエ変換の手法により求める。この結果、１２８×１３個の各微細周波数に対応する相関値が得られる。この相関値は、あらかじめ準備された微細相関配列に格納される。
【００３９】
続いて、算出された相関値に基づいてピークとなる微細周波数（以下、ピーク周波数という）を選出する（ステップＳ３）。具体的には、算出された１２８×１３個の相関値を基に、隣接する両側の微細周波数の相関値よりも、自身の相関値が大きくなっている微細周波数を選出する。
【００４０】
次に、選出された各ピーク周波数に対応する調和信号と、区間信号との相関を一般化調和解析の手法により求める（ステップＳ４）。具体的には、上記（一般化調和解析の手法）の項で説明したのと同様に、まず、選出されたピーク周波数のうち、相関値が最大のものに対応する調和信号と区間信号Ｓ（１）（＝Ｘ）との相関を求める。続いて、このときの調和信号に、その振幅として算出された相関値を乗じることにより得られる信号を含有信号Ｇ（１）とし、この含有信号Ｇ（１）を区間信号Ｓ（１）から減じることにより差分信号Ｓ（２）を得る。次に、ステップＳ３において選出されたピーク周波数のうち、区間信号Ｘとの相関値が２番目に大きいピーク周波数の調和信号と、差分信号Ｓ（２）との相関を求め、含有信号Ｇ（２）を区間信号から減じることにより差分信号Ｓ（３）を得る。このようにして、一般化調和解析の手法により、選出された全てのピーク周波数の相関値を求めていく。このピーク周波数は、微細周波数に対応しているため、符号化の際には、ノートナンバーに対応した標準周波数に戻す必要がある。そのため、算出された相関値を、ピーク周波数に最も近い標準周波数に対応する相関値として、主相関配列に設定する。これにより、標準周波数とその相関値の組が複数得られることになり、この標準周波数をノートナンバーとし、相関値をベロシティとすることにより、ＭＩＤＩ規格の符号化データが得られる。
【００４１】
以上の処理を全単位区間により行うことにより、音響信号全体の符号化が可能となる。なお、単位区間については、図１に示したように、前の単位区間の終了時刻と後の単位区間の開始時刻が同一となるように設定されるのは、まれであり、前の単位区間と後の単位区間が重なるように設定されることの方が多い。
【００４２】
（3.2.抽出周波数成分決定の２段階処理）
上記ステップＳ３・Ｓ４においては、１回だけピーク周波数を選出し、選出された各ピーク周波数について一般化調和解析の手法により相関値を算出したが、同様の処理を再度行うことにより解析精度および符号化精度を高めることができる。このような場合について、以下説明する。上記ステップＳ４のように区間信号Ｘから含有信号を減じる処理を繰り返し行っていくことにより、異なった区間信号Ｘ’が得られることになる。この区間信号Ｘ’に対してステップＳ２〜ステップＳ４の処理を繰り返す。
【００４３】
区間信号Ｘ’と相関をとる微細周波数としては、既に主相関配列に相関値が格納された標準周波数に該当するものは除かれる。例えば、標準周波数ｆ（ｎ）に対応する相関値が主相関配列に設定されている場合には、微細周波数ｆ（ｎ−６／１３）〜ｆ（ｎ＋６／１３）は、区間信号Ｘ’との相関算出の対象から外される。残った微細周波数に対応する調和信号と区間信号Ｘ’との相関を短時間フーリエ変換の手法により求められ、算出された相関値は微細相関配列に格納される。
【００４４】
続いて、ステップＳ３において、算出された相関値に基づいて再びピーク周波数を選出した後、ステップＳ４において、選出された各ピーク周波数と区間信号Ｘ’との相関を求めた後、算出された相関値を主相関配列に設定する。
【００４５】
ステップＳ２〜ステップＳ４の処理は、何回でも繰り返すことが可能であるが、音響信号の符号化処理を行う場合には、２回程度で十分である。２回行うと、ＭＩＤＩ規格で同時発音可能な６４音程度は抽出できるためである。
【００４６】
（3.3.同一標準周波数内における抽出周波数成分の決定）
上記ステップＳ４における標準周波数の決定および相関値の算出は、ピーク周波数の近傍にある標準周波数を、算出された相関値に対応するものとして決定した。これは、１つの標準周波数の範囲に含まれるピーク周波数が１つだけである場合には問題ないが、１つの標準周波数の範囲に含まれるピーク周波数が複数ある場合には、そのどちらを選ぶかが問題となる。そのため、後者の場合には、１つの標準周波数に含まれるピーク周波数のうち、短時間フーリエ変換による相関値が最大のものだけをピーク周波数として選出し、一般化調和解析の手法により区間信号Ｘとの相関を求めるようにする。
【００４７】
（3.4.区間更新幅の決定処理）
以上のような周波数成分の抽出処理および抽出した周波数成分の符号化は各単位区間ごとに行われるが、上述のように単位区間の設定は固定ではなく、状況に応じて変更することが可能である。このとき、１つの単位区間の長さをどのように設定するかは、解析結果に大きな影響を与える重要な問題である。すなわち、区間長を短く設定すればするほど、時間分解能が向上するため、音声信号（ボーカル信号）などの周波数変化を解析するには好都合であるが、逆に、周波数分解能は低下するため、解析精度は低下するという問題が生じることになる。そこで従来は、１つの単位区間の中に、解析に最も都合が良いと思われるサンプル数（例えば、１０２４サンプル）が含まれるように、標準的な区間長をあらかじめ定めておき、この固定の区間長に基づいて時間軸を機械的に区切ってゆくという方法を採るのが一般的であった。
【００４８】
しかしながら、固定長の単位区間を機械的に設定するという方法では、解析対象となる時系列信号がどのような信号であるかに関わらず、常に一義的な区間設定が行われることになるため、単位区間の境界部分において不連続性が生じるおそれがある。すなわち、隣接する単位区間についての周波数解析の結果に大きな差が生じてしまうことがある。一般に、得られた周波数解析の結果を、スペクトルのグラフとして観察するために利用するような場合には、単位区間の境界において解析結果に差が生じていても、大きな問題にはならない。ところが、音響信号に対する解析結果を利用して、原音響信号に対応する符号データを作成するような場合、境界部分における不連続性は大きな問題となる。このような方法で符号化されたデータに基づいて、原音響信号を再生しようとすると、単位区間の境界において、音程の急激な変動が生じたり、音とびが生じたりすることになる。
【００４９】
このような境界における不連続性を避けるために、時間軸上において単位区間を部分的に重複させて設定する方法も提案されているが、この場合も重複させる量が固定であるため、本来重複させる必要のない箇所まで重複して処理することになり、無駄な演算処理が増加するという問題が生じることになる。本発明では、時系列信号を解析する際に、単位区間の境界において、音の連続性を保つと共に、単位区間の重複を最小限に抑えるようにした単位区間の設定についても工夫を行っているので、以下に説明する。
【００５０】
特に本発明においては、上記ステップＳ２における短時間フーリエ変換により得られた相関値を利用することにより単位区間の設定を行うようにしたことを特徴としている。具体的には、ある単位区間において周波数成分の抽出を行う際に、ステップＳ２において最初に得られる微細相関配列の値を、区間決定のために用いる直前相関配列にコピーしておく。そして、ステップＳ２〜ステップＳ４の処理を所定の回数だけ行って、１つの単位区間において抽出すべき周波数成分を決定した後、次の単位区間の位置を設定する。本発明においては、単位区間は固定長であるため、単位区間の開始位置が定まれば、単位区間が決定する。従って本発明においては、前の単位区間の開始位置から後の単位区間の開始位置までの送り幅を定めることにより、後の単位区間が決定されることになる。
【００５１】
まず、既に確定している前の単位区間と、これから位置を決定する単位区間の類似度を求める（ステップＳ６）。具体的には、ピーク周波数選出のために、ステップＳ２で行った短時間フーリエ変換の結果得られた微細相関配列の値を利用して以下の〔数式２〕により算出する。
【００５２】
〔数式２〕
ＳＭ＝100−100×［Σk｛Ｓdn-1(k)−Ｓdn(k)｝2］1/2 ／｛ΣkＳdn-1(k) 2｝1/2
【００５３】
上記〔数式２〕において、Ｓdn(k)は、決定しようとしている単位区間ｄnの区間信号に対する微細周波数ｋの相関値であり、Ｓdn-1(k)は、直前の単位区間ｄn-1の区間信号に対する微細周波数ｋの相関値である。ただし、ｋは周波数そのものを示すものではなく、ノートナンバーｎに対応する標準周波数を１３分割した値で表現され、ｋ＝−６  〜  １２７×１３＋６の値をとる。類似度ＳＭの値が大きい程両区間信号は類似していることになる。
【００５４】
次に、この類似度ＳＭの値と閾値を比較する。類似度ＳＭが閾値２より小さい場合は（ステップＳ７）、設定されている送り幅を半分にする（ステップＳ８）。送り幅を半分にした位置に仮単位区間の設定をし直し（ステップＳ１）、新たな仮単位区間の区間信号と調和信号との相関を求める（ステップＳ２）。ステップＳ１、Ｓ２およびステップＳ６〜Ｓ８の処理は、類似度ＳＭが閾値２以上となるまで繰り返される。すなわち、閾値２以上となるまで、後の単位区間を前の単位区間と重複させる範囲を大きくしていくことになる。
【００５５】
類似度ＳＭが閾値２以上となったら、類似度ＳＭと閾値１との比較を行う。類似度が閾値１未満である場合は、仮単位区間を単位区間として確定し、ピーク位置の選出処理へ進む（ステップＳ３）。類似度が閾値１以上である場合は、送り幅を２倍に設定する（ステップＳ１０）と共に、仮単位区間を単位区間として確定し、ピーク位置の選出処理へ進む（ステップＳ３）。ここで、２倍に変更された送り幅は、次の単位区間の送り幅として利用されることになる。単位区間の確定後は、ステップＳ３、Ｓ４の処理は同様に行われ、抽出周波数成分が決定される。なお、当然のことながら、上記２つの閾値は、閾値１＞閾値２の関係を満たすものとなっている。
【００５６】
単位区間についての抽出周波数が決定したら、この時点で設定されている送り幅だけ移動した位置を開始位置として（ステップＳ５）、仮単位区間を設定する（ステップＳ１）。このとき、通常はあらかじめ設定されている標準送り幅が利用され、ステップＳ１０により送り幅が２倍に設定されている場合には、標準送り幅の２倍を送り幅とする。
【００５７】
ここで、設定される単位区間を、図１０に示す具体的な例を用いて説明する。
図１０（ａ）は、時系列の音響信号を示す図である。図１０（ｂ）に示すように音響信号の先頭位置から固定長の単位区間ｄ１が設定され、ステップＳ２からステップＳ４の処理が行われることにより、抽出周波数が決定される。次の単位区間ｄ２の設定にあたっては、ステップＳ５において、あらかじめ設定されている標準送り幅だけ後に送られて仮設定される。本実施形態では、標準送り幅を固定長ｄの１／２としている。よって、単位区間ｄ１の先頭からｄ／２だけずれた位置が単位区間ｄ２の先頭となるように単位区間ｄ２が仮設定される。このとき仮設定された単位区間ｄ２の状態を図１０（ｃ）に示す。
【００５８】
そして、ステップＳ１において、仮設定された単位区間ｄ２の位置の音響信号を区間信号として抽出し、この区間信号との相関をステップＳ２の手法により求める。続いてステップＳ６において上記〔数式２〕に示した類似度を算出する。算出した類似度が閾値２未満である場合、すなわち、両区間信号があまり似ていない場合は、ステップＳ８に進んで送り幅が１／２にされる。ここでは、ｄ／２に設定されているので、ｄ／４に設定されるということになる。この場合、ステップＳ１に戻って、単位区間ｄ１の先頭からｄ／４だけずれた位置が単位区間ｄ２の先頭となるように単位区間ｄ２が仮設定し直される。このとき仮設定された単位区間ｄ２の状態を図１０（ｄ）に示す。単位区間ｄ２が仮設定し直されると、再びステップＳ２、ステップＳ６の処理が繰り返される。さらに、ステップＳ７において、類似度が閾値２未満である場合は、ステップＳ８において送り幅がｄ／８に設定され、ステップＳ１に戻って単位区間ｄ１の先頭からｄ／８だけずれた位置が単位区間ｄ２の先頭となるように単位区間ｄ２が仮設定し直される。
このとき仮設定された単位区間ｄ２の状態を図１０（ｅ）に示す。
【００５９】
すなわち、図１０（ｃ）〜図１０（ｅ）に示すように、先行する単位区間ｄ１と後続の単位区間ｄ２における区間信号の類似度が閾値２以上となるまで、単位区間ｄ２は単位区間ｄ１との重複区間を増やしていくことになる。ただし、このままだと、単位区間ｄ１と単位区間ｄ２が果てしなく近付いてしまう可能性があるので、送り幅の最小距離をあらかじめ設定しておき、送り幅が最小距離以下となった場合は、その時点で仮設定されている単位区間を正式な単位区間として確定し、ステップＳ３の処理に進むようにする。
【００６０】
一方、単位区間ｄ１の区間信号と、仮設定された単位区間ｄ２の区間信号の類似度が閾値２以上で閾値１未満となった場合には、仮設定されている単位区間ｄ２を確定して、ステップＳ３以降の処理を行う。また、類似度が閾値１以上となった場合も、仮設定されている単位区間ｄ２が確定されて、ステップＳ３以降の処理が行われることになるが、この場合、送り幅を２倍に設定する処理も平行して行う。そして、単位区間ｄ２についての抽出周波数成分が決定された後、ステップＳ５において、単位区間の先頭から２倍に設定された送り幅だけ移動した位置を単位区間ｄ３の先頭位置とする。例えば、単位区間ｄ２が図１０（ｃ）に示すような位置で確定された場合、単位区間ｄ３は、図１０（ｆ）に示す位置に仮設定されることになる。
【００６１】
以上、本発明の好適な実施形態について説明したが、上記周波数解析方法および符号化方法は、コンピュータ等で実行されることは当然である。具体的には、図９のフローチャートに示したようなステップを上記手順で実行するためのプログラムをコンピュータに搭載しておく。そして、音響信号等の時系列信号をＰＣＭ方式等でデジタル化した後、コンピュータに取り込み、ステップＳ１〜ステップＳ１０の処理を行った後、抽出した周波数成分もしくはＭＩＤＩ形式等の符号データをデジタルデータとしてコンピュータより出力する。出力された符号データは、例えば、ＭＩＤＩデータの場合、ＭＩＤＩシーケンサ、ＭＩＤＩ音源を用いて音声として再生される。
【００６２】
【発明の効果】
以上、説明したように本発明によれば、時系列信号から所定の標準周波数に対応した信号成分を分離するための周波数解析方法として、前記時系列信号に所定の長さの単位区間を設定して区間信号を抽出し、前記全ての調和信号と前記区間信号との相関を演算して各微細周波数に対応する相関値を算出し、前記算出された相関値に対応する微細周波数のうち、周囲の微細周波数における相関値に比べ局所的にピークとなる微細周波数を複数抽出するピーク周波数選出段階と、前記各ピークとなる微細周波数に対応する調和信号と前記区間信号との相関を再度演算し、前記微細周波数の最近傍の標準周波数に対応する相関値として設定し、前記再度算出された相関値と調和信号との積で生成される含有信号を前記区間信号から減じ、差分信号を新たに区間信号とすることにより区間信号を更新する処理を抽出された全てのピークに対して順次行って標準周波数に対応する相関値を決定するようにしたので、隣接する標準周波数間の境界付近に位置する微細周波数がピークとなる場合であっても、正確に周波数成分を抽出することが可能となるという効果を奏する。さらに、抽出された周波数成分をＭＩＤＩ等の形式に符号化することにより、原音響信号を忠実に再現することが可能な符号データの作成が可能となる。
【図面の簡単な説明】
【図１】本発明に係る周波数解析方法および音響信号符号化方法の基本原理を示す図である。
【図２】本発明で利用される周期関数の一例を示す図である。
【図３】図２に示す各周期関数の周波数とＭＩＤＩノートナンバーｎとの関係式を示す図である。
【図４】解析対象となる信号と周期信号との相関計算の手法を示す図である。
【図５】図４に示す相関計算を行うための計算式を示す図である。
【図６】一般化調和解析の基本的な手法を示す図である。
【図７】周波数成分の選出に関して従来との比較を示す第１の例を示す図である。
【図８】周波数成分の選出に関して従来との比較を示す第２の例を示す図である。
【図９】本発明に係る周波数解析方法および音響信号符号化方法のフローチャートである。
【図１０】単位区間の設定手順を示す図である。
【符号の説明】
ｄ１〜ｄ５・・・単位区間
ｄ・・・単位区間長
Ｘ・・・初期区間信号
【図１】
0004662407.tif 000002
【図２】
0004662407.tif 000003
【図３】
0004662407.tif 000004
【図４】
0004662407.tif 000005
【図５】
0004662407.tif 000006
【図６】
0004662407.tif 000007
【図７】
0004662407.tif 000008
【図８】
0004662407.tif 000009
【図９】
0004662407.tif 000010
【図１０】
0004662407.tif 000011