(57)【特許請求の範囲】
【請求項１】
複数の音色成分が混合された音響信号を、音色成分別に複数の音色グループに分類された符号データとして符号化する方法であって、
前記音響信号に含まれている各々の音色成分を単独にもつ単一音色信号に対して周波数解析を施し、音色パラメータを１つ以上備える複数の音素データに符号化する単一音色解析段階と、
前記単一音色信号の全音素データにおける各音色パラメータの値の出現頻度を算出して、前記単一音色信号の音色グループ別に各音色パラメータの値の出現頻度が記載された音色管理テーブルを作成する音色管理テーブル作成段階と、
前記符号化対象とする音響信号に対して周波数解析を施し、得られた音素データの音色パラメータに基づいて前記音色管理テーブルを参照し、出現頻度が高い方の音色グループに前記音素データを分類する音素分類段階と、を有し、
前記単一音色解析段階および音素分類段階における周波数解析は、
前記単一音色信号もしくは前記音響信号に対して、開始時刻、終了時刻、周波数および強度値で構成される時系列の音素データを生成する音素データ生成段階と、
前記各音素データに対して、同一開始時刻および同一終了時刻で周波数が異なる他の音素データの分布状態を基に１つまたは複数の種類の単位音色パラメータを算出し、前記各音素データに付与する単位音色パラメータ算出段階と、
を有することを特徴とする音響信号の符号化方法。
【請求項２】
前記単一音色解析段階および音素分類段階における周波数解析は、
前記音素データ生成段階により得られた各音素データのなかで先行する音素データである先行音素の周波数と、時間的に後続する音素データである後続音素の周波数が類似していて、先行音素の終了時刻と後続音素の開始時刻が類似している場合、先行音素と後続音素を１つの連結音素データに連結させ、先行音素の開始時刻、後続音素の終了時刻、および周波数、強度値として先行音素または後続音素のどちらかの要素を代表値として与える音素連結段階と、
前記各連結音素データに対して、構成される複数の音素データの周波数、強度値などの分布状態を基に１つまたは複数の連結音色パラメータを算出し、前記各連結音素データに付与する連結音色パラメータ算出段階と、
をさらに有することを特徴とする請求項１に記載の音響信号の符号化方法。
【請求項３】
前記音色管理テーブルにおける音色パラメータの値の出現頻度は、各音素データの評価値を（終了時刻−開始時刻）×強度値と定義し、当該音色パラメータの値をもつ音素データの評価値の総和を全音素データの評価値の総和で除した割合で与えられるものであることを特徴とする請求項１または請求項２に記載の音響信号の符号化方法。
【請求項４】
前記音素分類段階において参照する前記音色管理テーブルの当該音色パラメータの値の出現頻度が音色グループの違いにより顕著な差がない場合、当該音素データを双方の音色グループに分類するものであることを特徴とする請求項１に記載の音響信号の符号化方法。
【請求項５】
前記単位音色パラメータ算出段階が、同一開始時刻および同一終了時刻で周波数が近傍である音素データの強度値分布を基に、前記単位音色パラメータを算出するものであることを特徴とする請求項１に記載の音響信号の符号化方法。
【請求項６】
前記単位音色パラメータ算出段階が、同一開始時刻および同一終了時刻で周波数が整数倍または整数分の１になる音素データの強度値分布を基に、前記単位音色パラメータを算出するものであることを特徴とする請求項１に記載の音響信号の符号化方法。
【請求項７】
前記連結音色パラメータ算出段階が、１つの連結音素データを構成する複数の音素データのうち時間的に隣接する音素データの開始時刻の間隔に対する強度値変化分の比率の分布状態を基に連結音色パラメータを算出するものであることを特徴とする請求項２に記載の音響信号の符号化方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、放送メディア（ラジオ、テレビ）、通信メディア（ＣＳ映像・音声配信、インターネット音楽配信、通信カラオケ）、パッケージメディア（ＣＤ、ＭＤ、カセット、ビデオ、ＬＤ、ＣＤ−ＲＯＭ、ゲームカセット、携帯音楽プレーヤ向け固体メモリ媒体）などで提供する各種オーディオコンテンツの制作、並びに、音楽演奏録音信号から楽譜出版、通信カラオケ配信用ＭＩＤＩデータ、演奏ガイド機能付き電子楽器向け自動演奏データ、携帯電話・ＰＨＳ・ポケベルなどの着信メロディデータを自動的に作成する自動採譜技術に関する。
【０００２】
【従来の技術】
音響信号に代表される時系列信号には、その構成要素として複数の周期信号が含まれている。このため、与えられた時系列信号にどのような周期信号が含まれているかを解析する手法は、古くから知られている。例えば、フーリエ解析は、与えられた時系列信号に含まれる周波数成分を解析するための方法として広く利用されている。
【０００３】
このような時系列信号の解析方法を利用すれば、音響信号を符号化することも可能である。コンピュータの普及により、原音となるアナログ音響信号を所定のサンプリング周波数でサンプリングし、各サンプリング時の信号強度を量子化してデジタルデータとして取り込むことが容易にできるようになってきており、こうして取り込んだデジタルデータに対してフーリエ解析などの手法を適用し、原音信号に含まれていた周波数成分を抽出すれば、各周波数成分を示す符号によって原音信号の符号化が可能になる。
【０００４】
一方、電子楽器による楽器音を符号化しようという発想から生まれたＭＩＤＩ（Musical Instrument Digital Interface）規格も、パーソナルコンピュータの普及とともに盛んに利用されるようになってきている。このＭＩＤＩ規格による符号データ（以下、ＭＩＤＩデータという）は、基本的には、楽器のどの鍵盤キーを、どの程度の強さで弾いたか、という楽器演奏の操作を記述したデータであり、このＭＩＤＩデータ自身には、実際の音の波形は含まれていない。そのため、実際の音を再生する場合には、楽器音の波形を記憶したＭＩＤＩ音源が別途必要になるが、その符号化効率の高さが注目を集めており、ＭＩＤＩ規格による符号化および復号化の技術は、現在、パーソナルコンピュータを用いて楽器演奏、楽器練習、作曲などを行うソフトウェアに広く採り入れられている。
【０００５】
そこで、音響信号に代表される時系列信号に対して、所定の手法で解析を行うことにより、その構成要素となる周期信号を抽出し、抽出した周期信号をＭＩＤＩデータを用いて符号化しようとする提案がなされている。例えば、特開平１０−２４７０９９号公報、特開平１１−７３１９９号公報、特開平１１−７３２００号公報、特開平１１−９５７５３号公報、特開２０００−９９００９号公報、特開２０００−９９０９２号公報、特開２０００−９９０９３号公報には、任意の時系列信号について、構成要素となる周波数を解析し、その解析結果からＭＩＤＩデータを作成することができる種々の方法が提案されている。
【０００６】
【発明が解決しようとする課題】
近年では、音響信号の符号化に関する研究も進歩しており、複数の音色が混合された音響信号を音色別に分離符号化する試みが行われている。具体的には、２チャンネルステレオやマイクロフォンアレイを用いたマルチチャンネル入力信号に対して独立成分分析などを用いて解析する方法が一般的である。しかし、記録されたレコード媒体では、ソースがモノラルの場合が多く、ましてやマイクロフォンアレイなど多チャンネル信号が提供される場合は極めて異例であり現実的でない。そこで、モノラル信号にも適用できる方法として、本出願人は以下のような手法を提案した。
【０００７】
基本的には、上記各公報または明細書において提案してきたＭＩＤＩ符号化方式を利用したものであるが、特願２０００−３１９１７５号では周波数のゆらぎの度合い、特願２００１−３２１９６８号では倍音分布度合い・デュレーション、特願２００１−８７５０号ではレベル分布度合いをパラメータとして算出し、１次元的な閾値処理でチャンネル分けを行う。これらにより、ピアノとボーカルなど代表的な２つの音源に分離することは可能となるが、分けられるチャンネル数は２つだけであり、双方にまたがる音素は、いずれかに振り分けられてしまうという問題がある。
【０００８】
また、特願２００１−３５３７８号で提案した音色管理データベースを用いる方法では、ピアノ・ボーカルなど音色グループ別にスペクトログラムパターンのデータベースを構築し、解析された音素パターンとマッチングを総当りで行い、照合率が高い音色グループを選択する方法をとっている。この方法では、データベースを充実すれば、いくらでも多くの音色グループに分離することが可能である。ただし、膨大な回数のマッチング演算を実施しなければならず、非効率で所望の分離精度を得るのは困難である。また、この方法でも、双方のグループにまたがる音素はいずれかに振り分けられていた。
【０００９】
さらに、本出願人は、特願２００２−９２６３号において、複数の音色パラメータを用いて高精度な音源分離を行うことができる手法を提案しているが、複数の音色パラメータに対して分離を行うための閾値や係数の設定は、依然として負荷のかかる処理となっている。
【００１０】
上記のような点に鑑み、本発明は、より高精度に、かつ、より少ない負荷によって、複数の音色が混合された音響信号を複数の音色として分離することが可能な音響信号の符号化方法を提供することを課題とする。
【００１１】
【課題を解決するための手段】
上記課題を解決するため、本発明では、複数の音色成分が混合された音響信号を、音色成分別に複数の音色グループに分類された符号データとして符号化する方法として、前記音響信号に含まれている各々の音色成分を単独にもつ単一音色信号に対して周波数解析を施し、音色パラメータを１つ以上備える複数の音素データに符号化する単一音色解析段階、前記単一音色信号の全音素データにおける各音色パラメータの値の出現頻度を算出して、前記単一音色信号の音色グループ別に各音色パラメータの値の出現頻度が記載された音色管理テーブルを作成する音色管理テーブル作成段階、前記符号化対象とする音響信号に対して周波数解析を施し、得られた音素データの音色パラメータに基づいて前記音色管理テーブルを参照し、出現頻度が高い方の音色グループに前記音素データを分類する音素分類段階を実行し、前記単一音色解析段階および音素分類段階における周波数解析は、前記単一音色信号もしくは前記音響信号に対して、開始時刻、終了時刻、周波数および強度値で構成される時系列の音素データを生成する音素データ生成段階と、前記各音素データに対して、同一開始時刻および同一終了時刻で周波数が異なる他の音素データの分布状態を基に１つまたは複数の種類の単位音色パラメータを算出し、前記各音素データに付与する単位音色パラメータ算出段階を有することを特徴とする。本発明によれば、単一の音色を有する単一音色信号の解析を行って、その音色パラメータの値の組合せと音色グループを対応付けた音色管理テーブルを作成しておき、符号化対象とする音響信号の解析を行って、得られた連結音素データの音色パラメータの組合せで音色管理テーブルを参照して、各連結音素データを音色グループに分類するようにしたので、複数の音色が混合された音響信号を、高精度に、かつ、少ない負荷によって、複数の音色として分離することが可能となる。
【００１２】
【発明の実施の形態】
以下、本発明の実施形態について図面を参照して詳細に説明する。
（1.音響信号符号化方法の基本原理）
はじめに、本発明に係る音響信号の符号化方法の基本原理を述べておく。この基本原理は、前掲の各公報あるいは明細書に開示されているので、ここではその概要のみを簡単に述べることにする。
【００１３】
図１（ａ）に示すように、時系列信号としてアナログ音響信号が与えられたものとする。図１の例では、横軸に時間ｔ、縦軸に振幅（強度）をとって、この音響信号を示している。ここでは、まずこのアナログ音響信号を、デジタルの音響データとして取り込む処理を行う。これは、従来の一般的なＰＣＭの手法を用い、所定のサンプリング周波数でこのアナログ音響信号をサンプリングし、振幅を所定の量子化ビット数を用いてデジタルデータに変換する処理を行えば良い。ここでは、説明の便宜上、ＰＣＭの手法でデジタル化した音響データの波形も図１（ａ）のアナログ音響信号と同一の波形で示すことにする。
【００１４】
続いて、この解析対象となる音響信号の時間軸上に、複数の単位区間を設定する。図１（ａ）に示す例では、時間軸ｔ上に等間隔に６つの時刻ｔ１〜ｔ６が定義され、これら各時刻を始点および終点とする５つの単位区間ｄ１〜ｄ５が設定されている。図１の例では、全て同一の区間長をもった単位区間が時間軸上で重複せずに設定されているが、隣接する単位区間が時間軸上で部分的に重なり合うような区間設定を行ってもかまわない。
【００１５】
こうして単位区間が設定されたら、各単位区間ごとの音響信号（以下、区間信号と呼ぶことにする）について、それぞれ代表周波数を選出する。各区間信号には、通常、様々な周波数成分が含まれているが、例えば、その中で成分の強度割合の大きな周波数成分を代表周波数として選出すれば良い。ここで、代表周波数とはいわゆる基本周波数が一般的であるが、音声のフォルマント周波数などの倍音周波数や、ノイズ音源のピーク周波数も代表周波数として扱うことがある。代表周波数は１つだけ選出しても良いが、音響信号によっては複数の代表周波数を選出した方が、より精度の高い符号化が可能になる。図１（ｂ）には、個々の単位区間ごとにそれぞれ３つの代表周波数を選出し、１つの代表周波数を１つの代表符号（図では便宜上、音符として示してある）として符号化した例が示されている。ここでは、代表符号（音符）を収容するために３つのトラックＴ１，Ｔ２，Ｔ３が設けられているが、これは個々の単位区間ごとに選出された３つずつの代表符号を、それぞれ異なるトラックに収容するためである。
【００１６】
例えば、単位区間ｄ１について選出された代表符号ｎ（ｄ１，１），ｎ（ｄ１，２），ｎ（ｄ１，３）は、それぞれトラックＴ１，Ｔ２，Ｔ３に収容されている。ここで、各符号ｎ（ｄ１，１），ｎ（ｄ１，２），ｎ（ｄ１，３）は、ＭＩＤＩ符号におけるノートナンバーを示す符号である。ＭＩＤＩ符号におけるノートナンバーは、０〜１２７までの１２８通りの値をとり、それぞれピアノの鍵盤の１つのキーを示すことになる。具体的には、例えば、代表周波数として４４０Ｈｚが選出された場合、この周波数はノートナンバーｎ＝６９（ピアノの鍵盤中央の「ラ音（Ａ３音）」に対応）に相当するので、代表符号としては、ｎ＝６９が選出されることになる。もっとも、図１（ｂ）は、上述の方法によって得られる代表符号を音符の形式で示した概念図であり、実際には、各音符にはそれぞれ強度に関するデータも付加されている。例えば、トラックＴ１には、ノートナンバーｎ（ｄ１，１），ｎ（ｄ２，１）・・・という音高を示すデータとともに、ｅ（ｄ１，１），ｅ（ｄ２，１）・・・という強度を示すデータが収容されることになる。この強度を示すデータは、各代表周波数の成分が、元の区間信号にどの程度の度合いで含まれていたかによって決定される。具体的には、各代表周波数をもった周期関数の区間信号に対する相関値に基づいて強度を示すデータが決定されることになる。また、図１（ｂ）に示す概念図では、音符の横方向の位置によって、個々の単位区間の時間軸上での位置が示されているが、実際には、この時間軸上での位置を正確に数値として示すデータが各音符に付加されていることになる。
【００１７】
音響信号を符号化する形式としては、必ずしもＭＩＤＩ形式を採用する必要はないが、この種の符号化形式としてはＭＩＤＩ形式が最も普及しているため、実用上はＭＩＤＩ形式の符号データを用いるのが好ましい。ＭＩＤＩ形式では、「ノートオン」データもしくは「ノートオフ」データが、「デルタタイム」データを介在させながら存在する。「ノートオン」データは、特定のノートナンバーＮとベロシティーＶを指定して特定の音の演奏開始を指示するデータであり、「ノートオフ」データは、特定のノートナンバーＮとベロシティーＶを指定して特定の音の演奏終了を指示するデータである。また、「デルタタイム」データは、所定の時間間隔を示すデータである。ベロシティーＶは、例えば、ピアノの鍵盤などを押し下げる速度（ノートオン時のベロシティー）および鍵盤から指を離す速度（ノートオフ時のベロシティー）を示すパラメータであり、特定の音の演奏開始操作もしくは演奏終了操作の強さを示すことになる。
【００１８】
前述の方法では、第ｉ番目の単位区間ｄｉについて、代表符号としてＪ個のノートナンバーｎ（ｄｉ，１），ｎ（ｄｉ，２），・・・，ｎ（ｄｉ，Ｊ）が得られ、このそれぞれについて強度ｅ（ｄｉ，１），ｅ（ｄｉ，２），・・・，ｅ（ｄｉ，Ｊ）が得られる。そこで、次のような手法により、ＭＩＤＩ形式の符号データを作成することができる。まず、「ノートオン」データもしくは「ノートオフ」データの中で記述するノートナンバーＮとしては、得られたノートナンバーｎ（ｄｉ，１），ｎ（ｄｉ，２），・・・，ｎ（ｄｉ，Ｊ）をそのまま用いれば良い。一方、「ノートオン」データもしくは「ノートオフ」データの中で記述するベロシティーＶとしては、得られた強度ｅ（ｄｉ，１），ｅ（ｄｉ，２），・・・，ｅ（ｄｉ，Ｊ）を所定の方法で規格化した値を用いれば良い。また、「デルタタイム」データは、各単位区間の長さに応じて設定すれば良い。なお、ここでの説明においては、基本原理をわかりやすく説明するために「トラック」という概念を用いて各符号を振り分けるようにしたが、ＭＩＤＩ規格においては、１つのチャンネルに複数の符号を記録するようにしている。現在、ＭＩＤＩ規格では１つのチャンネルにつき１６〜６４の音を同時に発音することが可能であるため、トラックという概念はなく、図１に示した３つの符号は１つのチャンネルに記録され、和音として発音されるようになっている。この意味で、後述するチャンネルと上述のトラックとは異なるものである。
【００１９】
（2.周期関数との相関を求める具体的な方法）
上述した基本原理の基づく方法では、区間信号に対して、１つまたは複数の代表周波数が選出され、この代表周波数をもった周期信号によって、当該区間信号が表現されることになる。ここで、選出される代表周波数は、文字どおり、当該単位区間内の信号成分を代表する周波数である。この代表周波数を選出する具体的な方法には、後述するように、短時間フーリエ変換を利用する方法と、一般化調和解析の手法を利用する方法とがある。いずれの方法も、基本的な考え方は同じであり、あらかじめ周波数の異なる複数の周期関数を調和信号として用意しておき、これら複数の周期関数の中から、当該単位区間内の区間信号に対する相関が高い周期関数を見つけ出し、この相関の高い周期関数の周波数を代表周波数として選出する、という手法を採ることになる。すなわち、代表周波数を選出する際には、あらかじめ用意された複数の周期関数と、単位区間内の区間信号との相関を求める演算を行うことになる。そこで、ここでは、周期関数との相関を求める具体的な方法を述べておく。
【００２０】
複数の周期関数として、図２に示すような三角関数が用意されているものとする。これらの三角関数は、同一周波数をもった正弦関数と余弦関数との対から構成されており、１２８通りの標準周波数ｆ（０）〜ｆ（１２７）のそれぞれについて、正弦関数および余弦関数の対が定義されていることになる。ここでは、同一の周波数をもった正弦関数および余弦関数からなる一対の関数を、当該周波数についての周期関数として定義することにする。すなわち、ある特定の周波数についての周期関数は、一対の正弦関数および余弦関数によって構成されることになる。このように、一対の正弦関数と余弦関数とにより周期関数を定義するのは、信号に対する周期関数の相関値を求める際に、相関値が位相の影響を受ける事を考慮するためである。なお、図２に示す各三角関数内の変数Ｆおよびｋは、区間信号Ｘについてのサンプリング周波数Ｆおよびサンプル番号ｋに相当する変数である。例えば、周波数ｆ（０）についての正弦波は、ｓｉｎ（２πｆ（０）ｋ／Ｆ）で示され、任意のサンプル番号ｋを与えると、区間信号を構成する第ｋ番目のサンプルと同一時間位置における周期関数の振幅値が得られる。ここでは、１２８通りの標準周波数ｆ（０）〜ｆ（１２７）を以下に示す〔数式１〕で定義する。
【００２１】
〔数式１〕
ｆ（ｎ）＝４４０×２γ(n)
γ（ｎ）＝（ｎ−６９）／１２
ただし、ｎ＝０，１，２，・・・，１２７
【００２２】
このような式によって標準周波数を定義しておくと、最終的にＭＩＤＩデータを用いた符号化を行う際に便利である。なぜなら、このような定義によって設定される１２８通りの標準周波数ｆ（０）〜ｆ（１２７）は、等比級数をなす周波数値をとることになり、ＭＩＤＩデータで利用されるノートナンバーに対応した周波数になるからである。したがって、図２に示す１２８通りの標準周波数ｆ（０）〜ｆ（１２７）は、対数尺度で示した周波数軸上に等間隔（ＭＩＤＩにおける半音単位）に設定した周波数ということになる。このため、本願では、図に掲載するグラフにおけるノートナンバー軸を、いずれも対数尺度で示すことにする。
【００２３】
（2.1.短時間フーリエ変換法）
続いて、任意の区間の区間信号に対する各周期関数の相関の求め方について、具体的な説明を行う。例えば、図３に示すように、ある単位区間ｄについて区間信号Ｘが与えられていたとする。ここでは、区間長Ｌをもった単位区間ｄについて、サンプリング周波数Ｆでサンプリングが行なわれており、全部でｗ個のサンプル値が得られているものとし、サンプル番号を図示のように、０，１，２，３，・・・，ｋ，・・・，ｗ−２，ｗ−１とする（白丸で示す第ｗ番目のサンプルは、右に隣接する次の単位区間の先頭に含まれるサンプルとする）。この場合、任意のサンプル番号ｋについては、Ｘ（ｋ）なる振幅値がデジタルデータとして与えられていることになる。短時間フーリエ変換においては、Ｘ（ｋ）に対して各サンプルごとに中央の重みが１に近く、両端の重みが０に近くなるような窓関数Ｗ（ｋ）を乗ずることが通常である。すなわち、Ｘ（ｋ）×Ｗ（ｋ）をＸ（ｋ）と扱って以下のような相関計算を行うもので、窓関数の形状としては余弦波形状のハミング窓が一般に用いられている。ここで、ｗは以下の記述においても定数のような記載をしているが、一般にはｎの値に応じて変化させ、区間長Ｌを超えない範囲で最大となるＦ／ｆ（ｎ）の整数倍の値に設定することが望ましい。
【００２４】
このような区間信号Ｘに対して、第ｎ番目の標準周波数ｆ（ｎ）をもった正弦関数Ｒｎとの相関値を求める原理を示す。両者の相関値Ａ（ｎ）は、以下の〔数式２〕によって定義することができる。
【００２５】
〔数式２〕
Ａ(ｎ)＝(２／ｗ)Σk=0,w-1ｘ(ｋ) sin(２πｆnｋ／Ｆ)
Ｂ(ｎ)＝(２／ｗ)Σk=0,w-1ｘ(ｋ) cos(２πｆnｋ／Ｆ)
｛Ｅ(ｎ)｝2＝｛Ａ(ｎ)｝2＋｛Ｂ(ｎ)｝2
【００２６】
上記〔数式２〕において、Ｘ（ｋ）は、図３に示すように、区間信号Ｘにおけるサンプル番号ｋの振幅値であり、ｓｉｎ（２πｆnｋ／Ｆ）は、時間軸上での同位置における正弦関数Ｒｎの振幅値である。なお、数式が繁雑になるのを避けるため、数式内ではｆ（ｎ）をｆnと表現している。〔数式２〕の第１の演算式は、単位区間ｄ内の全サンプル番号ｋ＝０〜ｗ−１の次元について、それぞれ区間信号Ｘの振幅値と正弦関数Ｒｎの振幅ベクトルの内積を求める式ということができる。
【００２７】
同様に、上記〔数式２〕の第２の演算式は、区間信号Ｘと、第ｎ番目の標準周波数ｆ（ｎ）をもった余弦関数との相関値を求める式であり、両者の相関値はＢ（ｎ）で与えられる。なお、相関値Ａ（ｎ）を求めるための第１の演算式も、相関値Ｂ（ｎ）を求めるための第２の演算式も、最終的に２／ｗが乗ぜられているが、これは相関値を規格化するためのものでり、前述のとおりｗはｎに依存して変化させるのが一般的であるため、この係数もｎに依存する変数である。
【００２８】
区間信号Ｘと標準周波数ｆ（ｎ）をもった標準周期関数との相関実効値は、上記〔数式２〕の第３の演算式に示すように、正弦関数との相関値Ａ（ｎ）と余弦関数との相関値Ｂ（ｎ）との二乗和平方根のうち、正の値であるＥ（ｎ）によって示すことができる。この相関実効値の大きな標準周期関数の周波数を代表周波数として選出すれば、この代表周波数を用いて区間信号Ｘを符号化することができる。
【００２９】
すなわち、この相関値Ｅ（ｎ）が所定の基準以上の大きさとなる１つまたは複数の標準周波数を代表周波数として選出すれば良い。なお、ここで「相関値Ｅ（ｎ）が所定の基準以上の大きさとなる」という選出条件は、例えば、何らかの閾値を設定しておき、相関値Ｅ（ｎ）がこの閾値を超えるような標準周波数ｆ（ｎ）をすべて代表周波数として選出する、という絶対的な選出条件を設定しても良いが、例えば、相関値Ｅ（ｎ）の大きさの順にＱ番目までを選出する、というような相対的な選出条件を設定しても良い。
【００３０】
（2.2.一般化調和解析の手法）
ここでは、本発明に係る音響信号の符号化を行う際に有用な一般化調和解析の手法について説明する。既に説明したように、音響信号を符号化する場合、個々の単位区間内の区間信号について、相関値の高いいくつかの代表周波数を選出することになる。一般化調和解析は、より高い精度で代表周波数の選出を可能にする手法であり、その基本原理は次の通りである。
【００３１】
図４（ａ）に示すような単位区間ｄについて、信号Ｓ（ｊ）なるものが存在するとする。ここで、ｊは後述するように、繰り返し処理のためのパラメータである（ｊ＝１〜Ｊ）。まず、この信号Ｓ（ｊ）に対して、図２に示すような１２８通りの周期関数すべてについての相関値を求める。そして、最大の相関値が得られた１つの周期関数の周波数を代表周波数として選出し、当該代表周波数をもった周期関数を要素関数として抽出する。続いて、図４（ｂ）に示すような含有信号Ｇ（ｊ）を定義する。この含有信号Ｇ（ｊ）は、抽出された要素関数に、その振幅として、当該要素関数の信号Ｓ（ｊ）に対する相関値を乗じることにより得られる信号である。例えば、周期関数として図２に示すように、一対の正弦関数と余弦関数とを用い、周波数ｆ（ｎ）が代表周波数として選出された場合、振幅Ａ（ｎ）をもった正弦関数Ａ（ｎ）ｓｉｎ（２πｆnｋ／Ｆ）と、振幅Ｂ（ｎ）をもった余弦関数Ｂ（ｎ）ｃｏｓ（２πｆnｋ／Ｆ）との和からなる信号が含有信号Ｇ（ｊ）ということになる（図４（ｂ）では、図示の便宜上、一方の関数しか示していない）。ここで、Ａ（ｎ），Ｂ（ｎ）は、上記〔数式２〕で得られる規格化された相関値であるから、結局、含有信号Ｇ（ｊ）は、信号Ｓ（ｊ）内に含まれている周波数ｆ（ｎ）をもった信号成分ということができる。
【００３２】
こうして、含有信号Ｇ（ｊ）が求まったら、信号Ｓ（ｊ）から含有信号Ｇ（ｊ）を減じることにより、差分信号Ｓ（ｊ＋１）を求める。図４（ｃ）は、このようにして求まった差分信号Ｓ（ｊ＋１）を示している。この差分信号Ｓ（ｊ＋１）は、もとの信号Ｓ（ｊ）の中から、周波数ｆ（ｎ）をもった信号成分を取り去った残りの信号成分からなる信号ということができる。そこで、パラメータｊを１だけ増加させることにより、この差分信号Ｓ（ｊ＋１）を新たな信号Ｓ（ｊ）として取り扱い、同様の処理を、パラメータｊをｊ＝１〜Ｊまで１ずつ増やしながらＪ回繰り返し実行すれば、Ｊ個の代表周波数を選出することができる。
【００３３】
このような相関計算の結果として出力されるＪ個の含有信号Ｇ（１）〜Ｇ（Ｊ）は、もとの区間信号Ｘの構成要素となる信号であり、もとの区間信号Ｘを符号化する場合には、これらＪ個の含有信号の周波数を示す情報および振幅（強度）を示す情報を符号データとして用いるようにすれば良い。尚、Ｊは代表周波数の個数であると説明してきたが、標準周波数ｆ（ｎ）の個数と同一すなわちＪ＝１２８であってもよく、周波数スペクトルを求める目的においてはそのように行うのが通例である。
【００３４】
（2.3.相互相関テーブルを利用した手法）
設定された単位区間における区間信号と調和信号との相関計算を行う手法としては、上記短時間フーリエ変換法と、一般化調和解析を利用した手法が有名である。しかし、短時間フーリエ変換法では周波数分解能が充分でなく、短時間フーリエ変換法の問題点をこれを解決するための一般化調和解析を利用した手法では、短時間フーリエ変換法に比べて、周期関数である調和信号との相関演算回数が桁違いに多いため、計算負荷が大きいという問題があった。そこで、本出願人は、特願２００２−９２２３号において、相互相関テーブルを利用して周波数解析を行う手法を提案した。この手法により、短時間フーリエ変換法と同等な計算負荷で一般化調和解析と同等な周波数分解能を実現することが可能であると共に、一般化調和解析で問題になっていた、抽出される信号成分の精度の向上を図ることが可能となる。この相互相関テーブルを利用した手法を次に説明する。
【００３５】
まず、上記手法と同様に、複数の標準周波数を設定し、各標準周波数に対応する標準周期関数を調和信号として準備する。このとき設定される標準周波数としては、周波数解析の特性に合わせて任意に設定することができるが、音響信号の符号化に利用するためには、図２および〔数式１〕に示したように、ＭＩＤＩ規格のノートナンバーｎに対応させて設定することが好ましい。
【００３６】
続いて、各調和信号同士の相関である相互相関を全ての組合せに対して算出し、相互相関テーブルを作成する。この際、周波数ｆ（ｍ）の調和信号の周波数ｆ（ｎ）の調和信号に対する相互相関Ｒ(ｆm,ｆn)は、以下の〔数式３〕により算出する。
【００３７】
〔数式３〕
Ａ(ｆm,ｆn)＝(２／Ｔ(ｎ))Σt=0,T(n)-1sin(２πｆmｔ) sin(２πｆnｔ)
Ｂ(ｆm,ｆn)＝(２／Ｔ(ｎ))Σt=0,T(n)-1sin(２πｆmｔ) cos(２πｆnｔ)
｛Ｒ(ｆm,ｆn)｝2＝｛Ａ(ｆm,ｆn)｝2＋｛Ｂ(ｆm,ｆn)｝2
【００３８】
相互相関Ｒ(ｆm,ｆn)は、上記〔数式３〕の第３式で算出される｛Ｒ(ｆm,ｆn)｝2のうちの正の平方根として求められる。このとき、図２に示したようにｍ、ｎがノートナンバーに対応している場合、相互相関テーブルには、各ノートナンバーｍに対応する１２８個のノートナンバーの相関値が記録され、全部で１２８×１２８個の相関値が記録されることになる。
【００３９】
相互相関テーブルの準備ができたら、解析対象となる時系列信号の全区間に渡って単位区間を設定し、設定された単位区間の時系列信号を区間信号として抽出する。単位区間の設定は、図１（ａ）に示したように、先行する単位区間の終点と後続する単位区間の始点を同一とすることにより、両単位区間が重複しないように設定しても良いし、両単位区間が互いに重複するように設定しても良い。これは、解析対象となる時系列信号の特性に応じて設定することができる。
【００４０】
続いて、抽出した区間信号に対して、全調和信号との相関計算を行う。例えば、図２に示したようなノートナンバーに対応して標準周波数を設定した場合には、１２８個の調和信号との相関計算が行われる。この段階での調和信号との相関計算は、短時間フーリエ変換法により行われる。すなわち、区間信号のうち、先頭から、相関計算を行う調和信号の周期の整数倍で単位区間長を超えない部分と、調和信号との相関を算出する。算出された相関値は、各単位区間ごとに用意される信号相関配列に格納される。ここでは、短時間フーリエ変換で相関計算を行うため、１つの区間信号に対しては、各調和信号との相関計算が行われるのは、この１回だけとなる。この段階での標準周波数ｆ（ｎ）の調和信号と、区間信号ｘ（ｔ）との相関Ｐ(ｆn)は、以下の〔数式４〕により算出される。
【００４１】
〔数式４〕
Ａ(ｆn)＝(２／Ｔ(ｎ))Σt=0,T(n)-1ｘ(ｔ) sin(２πｆnｔ)
Ｂ(ｆn)＝(２／Ｔ(ｎ))Σt=0,T(n)-1ｘ(ｔ) cos(２πｆnｔ)
｛Ｐ(ｆn) ｝2＝｛Ａ(ｆn)｝2＋｛Ｂ(ｆn)｝2
【００４２】
相関値Ｐ(ｆn)は、上記〔数式４〕の第３式で算出される｛Ｐ(ｆn) ｝2のうちの正の平方根として求められる。この〔数式４〕は、実質的には上記〔数式２〕と同等の式であり、時刻ｔは、サンプリング番号ｋおよびサンプリング周波数Ｆによりｋ／Ｆと置き替えることができ、相関計算時間Ｔ(ｎ)は相関計算サンプル数ｗと置き替えることができる。
【００４３】
信号相関配列が得られたら、配列中の各要素である相関値を、相互相関テーブルを利用して補正する。具体的には、標準周波数ｆ（ｎ）との相関値Ｐ(ｆn)の補正値Ｐ´(ｆn)は、標準周波数ｆ（ｍ）との相関値Ｐ(ｆm)、標準周波数ｆ（ｍ）の標準周波数ｆ（ｎ）に対する相互相関Ｒ(ｆm,ｆn)、標準周波数ｆ（ｍ）の自己相関Ｒ(ｆm,ｆm)を用いて、以下の〔数式５〕により算出される。
【００４４】
〔数式５〕
Ｐ´(ｆn)＝ Ｐ(ｆn)−Σm=0,N-1Ｐ(ｆm) Ｒ(ｆm,ｆn)／Ｒ(ｆm,ｆm)
【００４５】
上記〔数式５〕により算出された補正値Ｐ´(ｆn)は、相関配列中の標準周波数ｆ（ｎ）に対応する位置に格納され、以降は相関値Ｐ(ｆm)として他の補正値Ｐ´(ｆn)の算出に利用される。このようにして、設定された全標準周波数に対応する補正値Ｐ´(ｆn)を算出する。このとき、ｎ＝０〜Ｎ−１のうち、どの相関値Ｐ(ｆn)から補正していくかについては、基本的には、ステップＳ４における相関計算時の相関値の大きさの順に従う。こうしてＮ個の相関値が補正された信号相関配列が得られる。ただし、この時点では配列内の要素のうち、負の値になっているものがある場合がある。その場合は、その値を０にすることにより、信号相関配列の値が全て０または正の値となるようにし、これを補正相関配列とする。このように補正相関配列の値を０以上にするのは、相関値が負の値ということは基本的に有り得ないので、現実的でない値を削除するためである。また、負の値の要素を０にする処理を、信号相関配列中の全ての要素が補正された後で行うのは、補正値Ｐ´(ｆn)が負であった場合に、この補正値Ｐ´(ｆn)を〔数式５〕に示したＰ(ｆm)として、他の補正値の算出に利用するためである。これにより、補正値が負であった場合は、〔数式５〕の右辺のΣによる総和が減少し、結果として補正前の相関値Ｐ(ｆn)に増加されるようになる。本発明では、このようにして補正値が負であったとしても、その値を変更せずにそのまま利用して他の要素の補正値を求めるため、一般化調和解析のように、減算する含有信号Ｇ（ｊ）の順番により差分信号Ｓ（ｊ＋１）が変化し、得られる相関値が異なるということがない。そのため、短時間フーリエ変換時における各周波数の相関値の大きさの順番に依存することなく、補正を行うことが可能となる。
【００４６】
上記相関演算、および相関補正を設定された全単位区間に対して行うことにより、全単位区間におけるＮ個の周波数成分が得られる。
【００４７】
以上のような処理により、各単位区間について、各周波数に対する強度値の集合である周波数群が得られることになる。このようにして所定数の周波数群が選出されたら、この周波数群の各周波数に対応する「音の高さを示す情報」、選出された各周波数の信号強度に対応する「音の強さを示す情報」、当該単位区間の始点に対応する「音の発音開始時刻を示す情報」、当該単位区間に後続する単位区間の始点に対応する「音の発音終了時刻を示す情報」、の４つの情報を含む符号データ（これを音素データと呼ぶことにする）を作成すれば、当該単位区間内の区間信号Ｘを所定数の符号データにより符号化することができる。符号データとして、ＭＩＤＩデータを作成するのであれば、「音の高さを示す情報」としてノートナンバーを用い、「音の強さを示す情報」としてベロシティーを用い、「音の発音開始時刻を示す情報」としてノートオン時刻を用い、「音の発音終了時刻を示す情報」としてノートオフ時刻を用いるようにすれば良い。
【００４８】
（3.1.本発明に係る音響信号の符号化方法）
ここからは、本発明の音響信号符号化方法について、図５に示すフローチャートを用いて説明する。まず、単一の音色を有する音響信号（これを音色信号と呼ぶことにする）に対して、上記1.基本原理および2.周期関数との相関を求める具体的な方法の項で説明した手法で音素データを生成する（ステップＳ１）。すなわち、音色信号の時間軸上の全区間に渡って単位区間を設定し、周波数解析を行って各周波数に対応する強度値を算出し、周波数、強度値、単位区間の始点、後続する単位区間の始点の４つの情報からなる音素データを生成する。
【００４９】
音素データの生成は、具体的には、図２に示したような１２８種の周期関数に対して区間信号の相関強度を求め、その周期関数の周波数、求めた相関強度、単位区間の始点、後続する単位区間の始点の４つの情報を音素データと定義することにより行われる。ただし、本実施形態では、上記基本原理で説明した場合のように、代表周波数を選出するのではなく、用意した周期関数全てに対応する音素データを取得する。このステップＳ１の処理を全単位区間に対して行うことにより、音素データ[ｍ，ｎ]（０≦ｍ≦Ｍ−１，０≦ｎ≦Ｎ−１）群が得られる。ここで、Ｎは周期関数の総数（上述の例ではＮ＝１２８）、Ｍは音響信号において設定された単位区間の総数である。つまり、Ｍ×Ｎ個の音素データからなる音素データ群が得られることになる。
【００５０】
続いて、得られた音素データの構成要素である開始時刻・終了時刻・周波数・強度値を利用して単位音色パラメータを算出する（ステップＳ２）。本実施形態では、単位音色パラメータとして、ゆらぎ分布パラメータＰｙ・倍音分布パラメータＰｏを算出する。さらに、音響信号としてステレオ信号を利用した場合には、強度値（ベロシティ）を左右別に算出し、その比率を基にステレオ定位パラメータＰｓを算出する。
【００５１】
具体的には、ゆらぎ分布パラメータＰｙは局所的な周波数のゆらぎの分布を示すパラメータであり、各ノートナンバーｎに対応するゆらぎ分布パラメータＰｙ（ｎ）は、以下の〔数式６〕により算出される。
【００５２】
〔数式６〕
Ｐｙ（ｎ）＝｛ V(n-1) + V(n+1) + 2V(n-2) + 2V(n+2) ｝×６／V(n)
【００５３】
上記〔数式６〕に示すように、ゆらぎ分布パラメータは各音素データ（ノートナンバーｎ）について、自身よりも半音低い音（ノートナンバーｎ−１）、半音高い音（ノートナンバーｎ＋１）、２半音低い音（ノートナンバーｎ−２）、２半音高い音（ノートナンバーｎ＋２）の強度値Ｖが自身に比べてどの程度の強さであるかを示すものである。このゆらぎ分布パラメータＰｙは、〔数式６〕では０から１１の範囲になるように規格化されているため、Ｐｙが０に近いほど、ピアノ音傾向が高く、Ｐｙが１１に近いほど、ボーカル音傾向が高いということになる。
【００５４】
また、倍音分布パラメータＰｏは、その単位音素データが基本音であるか、他の単位音素データの倍音であるかどうかを判定するための値である。具体的には、以下の〔数式７〕を用いてノートナンバーｎに対応する倍音分布パラメータＰｏ （ｎ）が算出される。
【００５５】
〔数式７〕
Ｐｏ（ｎ）＝｛６V(n)＋V(n+12) + V(n+19) + V(n+24) + V(n+28) + V(n+31) + V(n+34) + V(n+36) - V(n-12) - V(n-19) - V(n-24) - V(n-28) - V(n-31) - V(n-34) - V(n-36) ｝／V(n)
【００５６】
上記〔数式７〕において、V(n)はノートナンバーｎの強度値を示しており、 V(n+12) ,V(n+19) ,V(n+24) ,V(n+28) ,V(n+31) ,V(n+34) ,V(n+36) はそれぞれノートナンバーｎの音の２倍音、３倍音、４倍音、５倍音、６倍音、７倍音、８倍音の強度値を、 V(n-12) ,V(n-19) ,V(n-24) ,V(n-28) ,V(n-31) ,V(n-34) ,V(n-36) はそれぞれノートナンバーｎの音を２倍音、３倍音、４倍音、５倍音、６倍音、７倍音、８倍音と仮定したときの基本音の強度値を示している。結局、上記〔数式７〕で算出される倍音分布パラメータＰｏ（ｎ）は、０から１１の範囲になるように規格化されており、自身の整数倍の周波数の音が多く存在する場合、すなわち基本音の場合には１１に近い値となり、自身の整数分の１の周波数の音が多く存在する場合、すなわち倍音の場合には０に近い値となる。
【００５７】
音響信号としてステレオ信号を利用した場合には、上記ステップＳ１において各チャンネルからの信号について周波数解析を行って音素データを算出する。そのため、各チャンネルについてＭ×Ｎ個の音素データが得られることになるが、各単位区間の開始点・終了点・周波数については、同一であるので両チャンネルの音素データをまとめ、各音素データの強度値としてＬ（左）チャンネルからの強度値とＲ（右）チャンネルからの強度値をそれぞれＶL 、ＶRとしてもつようにする。そして、ステップＳ２においては、単位音色パラメータの１つとして、ステレオ定位パラメータＰｓを以下の〔数式８〕により算出する。
【００５８】
〔数式８〕
Ｐｓ（ｎ）
＝６−６［｛VL(n) - VR(n)｝／VR(n) ］1/2    ：VL(n) ＞ VR(n)のとき
＝６＋６［｛VR(n) - VL(n)｝／VL(n) ］1/2    ：VR(n) ＞ VL(n)のとき
＝６                                      ：VR(n) ＝ VL(n)のとき
【００５９】
ステレオ定位パラメータＰｓは、〔数式８〕で０から１１の範囲になるように規格化されており、あるノートナンバーの音について、左右のチャンネルの強度値が同一の場合に最大値６をとり、左チャンネルの強度値が右チャンネルの強度値に比べて大きい程、０に近い値をとり、右チャンネルの強度値が左チャンネルの強度値に比べて大きい程、１１に近い値をとることになる。一般に楽器音はボーカルに比べて、どちらかのチャンネルに偏って記録されることが多いので、ステレオ定位パラメータＰｓの値が６から離れている場合には、楽器音であると判断することができる。
【００６０】
単位音色パラメータが算出されたら、同一周波数で時系列方向に連続する複数の音素データを１つの連結音素データとして連結する（ステップＳ３）。なお、この処理を行うために、上記ステップＳ１またはステップＳ２の処理過程において、強度値が所定の基準に達しない音素データについては、あらかじめ削除しておく。この場合、所定の基準としては、音がノイズ等であって対象とする演奏録音信号ではないと判断される程度の基準を設定する。図６は音素データの連結を説明するための概念図である。図６（ａ）は連結前の音素データ群の様子を示す図である。図６（ａ）において、格子状に仕切られた各矩形は音素データを示しており、網掛けがされている矩形は、上記ステップＳ３において強度値が所定の基準に達しないために削除された音素データであり、その他の矩形は有効な音素データを示す。ステップＳ３においては、同一周波数（同一ノートナンバー）で時間ｔ方向に連続する音素データを連結するため、図６（ａ）に示す音素データ群に対して連結処理を実行すると、図６（ｂ）に示すような連結音素データ群が得られる。例えば、図６（ａ）に示した音素データＡ１、Ａ２、Ａ３は連結されて、図６（ｂ）に示すような連結音素データＡが得られることになる。このとき、新たに得られる連結音素データＡの周波数としては、音素データＡ１、Ａ２、Ａ３に共通の周波数が与えられ、強度値としては、音素データＡ１、Ａ２、Ａ３の強度値のうち最大のものが与えられ、開始時刻としては、先頭の音素データＡ１の区間開始時刻ｔ１が与えられ、終了時刻としては、最後尾の音素データＡ３の区間終了時刻ｔ４が与えられる。音素データ、連結音素データ共に、周波数（ノートナンバー）、強度値、開始時刻、終了時刻の４つの情報で構成されるため、３つの音素データが１つの連結音素データに統合されることにより、データ量は３分の１に削減される。このことは、最終的にＭＩＤＩ符号化される場合には、短い音符３つではなく、長い音符１つとして表現されることを意味している。
【００６１】
さらに、ステップＳ３においては、連結の元となった音素データのうち最大の強度値をもつ音素データの単位音色パラメータを、連結音素データの単位音色パラメータとする。
【００６２】
続いて、得られた連結音素データの構成要素である開始時刻・終了時刻・周波数・強度値を利用して連結音色パラメータを算出する（ステップＳ４）。本実施形態では、連結音色パラメータとして、レベル分布パラメータＰｌを算出する。具体的には、各ノートナンバーｎに対応するレベル分布パラメータＰｌ（ｎ）は時系列方向の強度値の分布を示すパラメータであり、１つの連結音素データに連結される元の単位音素データのうち、先行する単位音素データの強度値をＶi、後続する単位音素データの強度値をＶi+1とすると、以下の〔数式９〕により算出される。
【００６３】
〔数式９〕
Ｐｌ（ｎ）＝３６×Σi=0,I｜Ｖi+1−Ｖi｜×（ｔi+1−ｔi）／ ＶmaxΣi=0,I（ｔi+1−ｔi）
【００６４】
上記〔数式９〕において、Ｉは１つの連結音素データに連結されることになった基の音素データの個数から１つ減じたものであり、ｔiは各音素データの始点の時刻を示している。また、Ｖmaxは、Ｖ0〜ＶIのうち最大のものを示す。なお、先頭で３６を乗じているのは、Ｐｌ（ｎ）の値を０から１１の範囲に規格化するためである。算出された連結音色パラメータは連結音素データの１要素として開始時刻・終了時刻・周波数・強度値・単位音色の各パラメータに加えて付与されることになる。
【００６５】
連結音色パラメータが算出されたら、各連結音素データに付与された単位音色パラメータおよび連結音色パラメータの値の出現頻度を算出し、算出された出現頻度を記録した音色管理テーブルを作成する（ステップＳ５）。具体的には、各単位音色パラメータおよび連結音色パラメータの組合せが単一音色信号全体における全音素データに比較してどの程度の割合で出現するかを算出する。ここで、ステップＳ５で作成される音色管理テーブルの一例を図７に示す。図７の例では、音色パラメータとして、ゆらぎ分布パラメータ、倍音分布パラメータ、レベル分布パラメータの３つを採用した場合を示している。音色グループは、音色をグループ分けしたものであり、例えば、ヴォーカルの音声を音色グループ１、ピアノの音を音色グループ２、という具合に割り当てることができる。ここで、ある単一音色信号を音色グループ１として音色管理テーブルに登録する場合を考えてみる。この場合、上記のようにステップＳ１〜ステップＳ４の処理を行って連結音素データの集合が得られ、各連結音素データには単位音色パラメータおよび連結音色パラメータが付与されることになる。そして、この連結音素データが有する音色パラメータの各組合せが、どの程度存在するかについての分布割合を以下の〔数式１０〕により算出する。
【００６６】
〔数式１０〕
分布割合＝
（該当する音色パラメータの組合せをもつ連結音素の強度×長さ）の総和／（全連結音素の強度×発音持続時間）の総和
【００６７】
図７の例では、上記〔数式１０〕で算出した割合に１００を乗じて％単位で記録している。なお、本実施形態では、上述のように各音色パラメータが０〜１１の整数値をとるようにしたため、各音色パラメータは１２個の値をとり得る。そのため、図７に示したように３つの音色パラメータの組合せは１２3（＝１７２８）通りとなる。他の単一音色を有する単一音色信号についても同様に音色管理テーブルへの登録処理を行う。図７の例では、２つの音色グループしか登録していないが、多数の音色が混在した音響信号から音色を分離するためには、それに対応した多数の音色グループを登録しておくことが必要になる。なお、各音色グループについては、１つの単一音色信号だけでなく、複数の単一音色信号についての分布割合を順次蓄積していくことにより、より精度の高い分布割合を音色管理テーブルに蓄積していくことができる。また、図７の例では、３つの音色パラメータを採用しているが、これ以外にも、ステレオ定位パラメータ、周波数（ノートナンバー）、強度値（ベロシティ）、発音持続時間（デュレーション：発音終了時刻−発音開始時刻で算出）等のパラメータを採用することもできる。
【００６８】
以上のようにして音色管理テーブルが準備できたら、次に、実際に符号化対象とする音響信号を読込み、単位区間を設定し、各単位区間について周波数解析を行って音素データを生成する（ステップＳ６）。ステップＳ６における音素データの生成処理は、上記ステップＳ１において、単一音色信号に対して行う処理と同様の処理である。次に、生成された音素データの開始時刻・終了時刻・周波数・強度値を利用して単位音色パラメータを算出する（ステップＳ７）。単位音色パラメータが算出されたら、同一周波数で時系列方向に連続する複数の音素データを１つの連結音素データとして連結する（ステップＳ８）。次に、得られた連結音素データの構成要素である開始時刻・終了時刻・周波数・強度値を利用して連結音色パラメータを算出する（ステップＳ９）。符号化対象である音響信号に対するステップＳ７〜ステップＳ９の処理も、上記単一音色信号に対して行ったステップＳ２〜ステップＳ４の処理と同様の処理である。
【００６９】
連結音色パラメータが算出されたら、各連結音素データに付与された単位音色パラメータおよび連結音色パラメータの値の組合せにより、音色管理テーブルを参照し、音色パラメータの組合せの分布割合が最も高い音色グループに、その連結音素データを分類する（ステップＳ１０）。例えば、音色パラメータとして、ゆらぎ分布パラメータ、倍音分布パラメータ、レベル分布パラメータの３つを利用し、音色グループとして、ヴォーカル、ピアノ、バイオリンの３つが用意されている場合を考えてみる。このとき、符号化対象である音響信号から得られたある連結音素データのゆらぎ分布パラメータが「２」、倍音分布パラメータが「３」、レベル分布パラメータが「３」であったとする。この組合せで音色管理パラメータを参照した際、図８に示すようにヴォーカルが「２．２％」、ピアノが「８．６％」、バイオリンが「６．２％」であったとする。このとき、ゆらぎ分布パラメータ、倍音分布パラメータ、レベル分布パラメータが「２」「３」「３」である組合せは、音色グループの中ではピアノに最も多く出現することがわかる。そのため、この連結音素データは、ピアノ音として分類すべきと判断され、ピアノに対応するグループのＩＤが付される。
【００７０】
また、例えば、ゆらぎ分布パラメータが「８」、倍音分布パラメータが「９」、レベル分布パラメータが「６」の連結音素データがあったとする。この場合、図８に示した音色管理テーブルを参照すると、ヴォーカルにおける出現割合が高いので、この連結音素データには、ヴォーカルに対応するグループのＩＤが付与される。また、ゆらぎ分布パラメータが「１０」、倍音分布パラメータが「６」、レベル分布パラメータが「３」の連結音素データがあったとする。この場合、図８に示した音色管理テーブルを参照すると、ピアノにおける出現割合が「７．３％」、バイオリンにおける出現割合が「７．２％」でほぼ同じである。このような場合は、その連結音素データは、ピアノとバイオリンの両方のグループに分類される。すなわち、この時点では、その連結音素データには、２つのグループのＩＤが付与されることになる。出現割合がどの程度近似している場合に、複数のグループに分類するかについては、適宜設定することができる。なお、音色管理テーブルに登録するための単一音色信号のサンプルが少ない場合には、一度も出現したことがない音色パラメータの組合せが存在する。その場合は、出現割合は、全ての音色グループについて０％となる。音響信号を符号化することにより得られる連結音素データの音色パラメータの組合せが、全ての音色グループで０％の場合には、全てのグループに分類させる処理を行う。
【００７１】
上述のように音響信号としては、広く普及しているＭＩＤＩ規格に変換することが好ましい。この場合、上記連結音素データはＭＩＤＩ符号データに変換されることになるが、上記ステップＳ１０における複数のグループへの分類をＭＩＤＩ符号データへの変換後に行うようにしても良い。
【００７２】
各連結音素データは、付与されたＩＤに従って、複数の音色グループ（ＭＩＤＩの場合はチャンネル）に分類されることになる。上述の例のように既にＭＩＤＩに変換されている場合には、設定されたチャンネルに記録されることになる。そして、各チャンネルにはＭＩＤＩ音源で適切な音色で再生されるように、ＭＩＤＩ規格に基づいたプログラム番号、バンク番号といった音色指示情報が付加されることになる。各連結音素データは、各グループごとに設定された音色パラメータに基づいて分類されるため、複数のグループに分類される場合もあり、従来のように、１つの連結音素データが必ずどれか１つのグループだけに分類されるということはなくなる。
【００７３】
以上、本発明の好適な実施形態について説明したが、上記符号化方法は、コンピュータ等で実行されることは当然である。具体的には、図５のフローチャートに示したようなステップを上記手順で実行するためのプログラムをコンピュータに搭載しておく。そして、単一音色信号、音響信号をＰＣＭ方式等でデジタル化した後、コンピュータに取り込み、ステップＳ１〜ステップＳ５の処理およびステップＳ６〜ステップＳ１０の処理を行った後、音色管理テーブルへの登録、もしくは音色ごとに複数のチャンネルに分類されたＭＩＤＩ形式等の符号データをコンピュータより出力する。出力された符号データは、例えば、ＭＩＤＩデータの場合、ＭＩＤＩシーケンサ、ＭＩＤＩ音源を用いて音響信号として再生される。
【００７４】
【発明の効果】
以上、説明したように本発明によれば、符号化対象とする音響信号に含まれている複数の音色成分の各々に近い音色成分を単独にもつ単一音色信号を複数個準備し、各単一音色信号に対して周波数解析を施して音色パラメータを１つ以上備える複数の音素データに符号化し、単一音色信号の全音素データにおける各音色パラメータの値の出現頻度を算出して単一音色信号の音色グループ別に各音色パラメータの値の出現頻度が記載された音色管理テーブルを作成しておき、符号化対象とする音響信号に対して周波数解析を施し、得られた音素データの音色パラメータに基づいて音色管理テーブルを参照し、出現頻度が高い方の音色グループに音素データを分類するようにしたので、複数の音色が混合された音響信号を、高精度に、かつ、少ない負荷によって、複数の音色として分離することが可能となるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の音響信号の符号化方法の基本原理を示す図である。
【図２】本発明で利用される周期関数の一例を示す図である。
【図３】解析対象となる信号と周期信号との相関計算の手法を示す図である。
【図４】一般化調和解析の基本的な手法を示す図である。
【図５】本発明に係る音響信号の符号化方法の概要を示すフローチャートである。
【図６】音素データの連結を説明するための概念図である。
【図７】音色管理テーブルの一例を示す図である。
【図８】具体的な音色グループを設定した場合の音色管理テーブルを示す図である。
【符号の説明】
Ａ１〜Ａ３・・・音素データ
Ａ・・・連結音素データ
ｄ，ｄ１〜ｄ５・・・単位区間
Ｇ（ｊ）・・・含有信号
ｎ ・・・ノートナンバー
Ｓ（ｊ），Ｓ（ｊ＋１）・・・差分信号
Ｘ，Ｘ（ｋ）・・・区間信号
【図１】
0004156252.tif 000002
【図２】
0004156252.tif 000003
【図３】
0004156252.tif 000004
【図４】
0004156252.tif 000005
【図５】
0004156252.tif 000006
【図６】
0004156252.tif 000007
【図７】
0004156252.tif 000008
【図８】
0004156252.tif 000009