(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ｋ／Ｆ）との和からなる信号が含有信号Ｇ（ｊ）ということになる（図４（ｂ）では、図示の便宜上、一方の関数しか示していない）。ここで、Ａ（ｎ），Ｂ（ｎ）は、上記〔数式２〕で得られる規格化された相関値であるから、結局、含有信号Ｇ（ｊ）は、信号Ｓ（ｊ）内に含まれている周波数ｆ（ｎ）をもった信号成分ということができる。
【００３１】
こうして、含有信号Ｇ（ｊ）が求まったら、信号Ｓ（ｊ）から含有信号Ｇ（ｊ）を減じることにより、差分信号Ｓ（ｊ＋１）を求める。図４（ｃ）は、このようにして求まった差分信号Ｓ（ｊ＋１）を示している。この差分信号Ｓ（ｊ＋１）は、もとの信号Ｓ（ｊ）の中から、周波数ｆ（ｎ）をもった信号成分を取り去った残りの信号成分からなる信号ということができる。そこで、パラメータｊを１だけ増加させることにより、この差分信号Ｓ（ｊ＋１）を新たな信号Ｓ（ｊ）として取り扱い、同様の処理を、パラメータｊをｊ＝１〜Ｊまで１ずつ増やしながらＪ回繰り返し実行すれば、Ｊ個の代表周波数を選出することができる。
【００３２】
このような相関計算の結果として出力されるＪ個の含有信号Ｇ（１）〜Ｇ（Ｊ）は、もとの区間信号Ｘの構成要素となる信号であり、もとの区間信号Ｘを符号化する場合には、これらＪ個の含有信号の周波数を示す情報および振幅（強度）を示す情報を符号データとして用いるようにすれば良い。尚、Ｊは代表周波数の個数であると説明してきたが、標準周波数ｆ（ｎ）の個数と同一すなわちＪ＝１２８であってもよく、周波数スペクトルを求めることを目的とする周波数解析においてはそのように行うのが通例である。
【００３３】
以上のような処理により、各単位区間について、各周波数に対する強度値の集合である周波数群が得られることになる。このようにして所定数の周波数群が選出されたら、この周波数群の各周波数に対応する「音の高さを示す情報」、選出された各周波数の信号強度に対応する「音の強さを示す情報」、当該単位区間の始点に対応する「音の発音開始時刻を示す情報」、当該単位区間に後続する単位区間の始点に対応する「音の発音終了時刻を示す情報」、の４つの情報を含む所定数の符号データを作成すれば、当該単位区間内の区間信号Ｘを所定数の符号データにより符号化することができる。符号データとして、ＭＩＤＩデータを作成するのであれば、「音の高さを示す情報」としてノートナンバーを用い、「音の強さを示す情報」としてベロシティーを用い、「音の発音開始時刻を示す情報」としてノートオン時刻を用い、「音の発音終了時刻を示す情報」としてノートオフ時刻を用いるようにすれば良い。
【００３４】
（3.本発明に係る周波数解析方法および音響信号の符号化方法）
以下、本発明に係る周波数解析方法および音響信号の符号化方法を具体的な２つの実施形態に基づいて説明していく。
【００３５】
（3.1.第１の実施形態）
図５は、本発明の第１、第２の実施形態に共通のフローチャートである。まず、複数の標準周波数を設定し、各標準周波数に対応する標準周期関数を調和信号として準備する（ステップＳ１）。このとき設定される標準周波数としては、周波数解析の特性に合わせて任意に設定することができるが、音響信号の符号化に利用するためには、図２および〔数式１〕に示したように、ＭＩＤＩ規格のノートナンバーｎに対応させて設定することが好ましい。
【００３６】
続いて、符号化対象となる正負両極性の音響信号をデジタルデータの形式で入力し、入力された音響信号が０レベル付近と交差する複数のゼロ交差点を抽出する（ステップＳ２）。ゼロ交差点とは、正負両極性の音響信号と、信号の０レベルとの交差点のことであり、ここでは、音響信号の信号の強度値（振幅）が０となる時刻を示す。ただし、デジタル化した音響信号は、アナログ信号におけるゼロ交差点をサンプルするとは限らない。そのため、実際には、強度値が丁度０になる場合に加え、サンプリング点の強度値が正から負、または負から正に変化した場合に、その前後のサンプリング点のどちらかをゼロ交差点とみなす処理を行う。なお、ゼロ交差点検出のためには、解析対象となる音響信号が正負両極性となっている必要がある。そのため、直流成分を含む音響信号については、直流成分を除去しておく必要がある。直流成分の除去については、周知の種々の手法を適用することができるので、ここでは詳細な説明は省略する。
【００３７】
続いて、抽出されたゼロ交差点の中から、単位区間の始点とすべきゼロ交差点である境界ゼロ交差点を選出する（ステップＳ３）。この境界ゼロ交差点の選出には２通りの手法があり、これらを第１の実施形態および第２の実施形態として説明する。第１の実施形態では、ステップＳ３において、まず、選出した全てのゼロ交差点について自己相関解析を行う。具体的には、ゼロ交差点であるサンプル点を単位とする時刻τの自己相関値Ｒ（τ）は、以下の〔数式３〕により算出される。
【００３８】
〔数式３〕
Ｒ（τ）＝
｜Σk=1,K[ｘ(ｋ+τ)−Σk=1,Kｘ(ｋ+τ)/Ｋ]×[ｘ(-ｋ+τ)−Σk=1,Kｘ(-ｋ+τ) /Ｋ]｜
【００３９】
上記〔数式３〕において、Ｋは自己相関値の算出のために利用するサンプル点の数を示す。すなわち、〔数式３〕においては、前方向のサンプル点配列の平均値Σk=1,Kｘ(ｋ+τ)/Ｋ、後方向のサンプル点配列の平均値Σk=1,Kｘ(-ｋ+τ) /Ｋをそれぞれ,前方向の各サンプル点の強度値ｘ(ｋ+τ)、後方向の各サンプル点の強度値ｘ(-ｋ+τ)から減じたもの同士を乗算し、その総和の絶対値を自己相関値Ｒ（τ）としているのである。
【００４０】
全ゼロ交差点について自己相関値が算出されたら、自己相関値が閾値以下となるゼロ交差点を境界ゼロ交差点として選出する。具体的な閾値としては、全ゼロ交差点の自己相関値のうち、最大の自己相関値をＲmaxとしたときに、この自己相関値Ｒmaxに所定の割合を乗じた値としている。好ましい一例としては、この割合として０．２５を設定し、Ｒ（τ）≦０．２５Ｒmaxとなるゼロ交差点を境界ゼロ交差点として選出する。ステップＳ３の処理においては、各ゼロ交差点について、前後の所定数のサンプル点の相関を計算し、その値が所定値以下の場合に、境界ゼロ交差点として選出される。すなわち、自身の前後で信号が大きく変化するゼロ交差点が境界ゼロ交差点として選出されることになる。
【００４１】
上記ステップＳ３の処理により境界ゼロ交差点が選出されたら、各境界ゼロ交差点を始点とする固定長の単位区間を全区間に渡って設定する（ステップＳ４）。なお、ステップＳ４以降の処理についても、第１の実施形態、第２の実施形態について同様の処理が行われる。さて、本発明においては隣接する単位区間を互いに重複させて設定するため、先行する単位区間の始点と後続する単位区間の始点との差である送り量は単位区間長ではなくなるが、このときの送り量には下限値Ｓminおよび上限値Ｓmaxが設定されている。ここで、設定される全単位区間について、送り量が下限値Ｓminから上限値Ｓmaxの範囲に収まっていれば問題はないが、選出された境界ゼロ交差点をそのまま単位区間の始点として単位区間を設定すると、送り量が下限値Ｓminから上限値Ｓmaxの範囲に収まらない場合もある。このような場合には、次のように補正を行う。
【００４２】
すなわち、先行する単位区間から後続する単位区間への送り量が下限値Ｓminに満たない場合、送り量が下限値Ｓmin以上になるように境界ゼロ交差点よりも１つ後のゼロ交差点を単位区間の始点とする。また、送り量が上限値Ｓmaxを超える場合、送り量が上限値Ｓmax以下になるように境界ゼロ交差点よりも１つ前のゼロ交差点を単位区間の始点とする。送り量が下限値Ｓminから上限値Ｓmaxの範囲に収まるようなゼロ交差点が無い場合には、境界ゼロ交差点から最も近く、送り量が下限値Ｓminから上限値Ｓmaxの範囲に収まるようなサンプル点を始点として単位区間を設定する。本実施形態においては、下限値Ｓminを区間長Ｌの１／６４、上限値Ｓmaxを区間長Ｌの１／２に設定している。例えば、１単位区間のサンプル点が４０９６である場合、下限値Ｓminは６４サンプル点、上限値Ｓmaxは２０４８サンプル点となる。
【００４３】
単位区間が設定されたら、各単位区間の区間信号と調和信号との相関計算を行って、区間信号の各周波数に対応する相関値を算出する（ステップＳ５）。このステップＳ５における処理は、上記1.基本原理の項および2.周期関数との相関を求める具体的な方法の項で説明した通りであり、相関計算の手法としては、短時間フーリエ変換法を利用しても、一般化調和解析を利用しても良い。得られた相関値は、各単位区間ごとに用意される相関配列に格納される。
【００４４】
各単位区間についての相関配列が得られたら、各単位区間の相関配列を隣接する相関配列の値を利用して補正する（ステップＳ６）。具体的には、第ｉ番目の単位区間ｄiにおけるノートナンバーｎの相関値の補正前の値をＶn（ｉ）、第ｉ＋１番目の単位区間ｄi+1におけるノートナンバーｎの相関値をＶn（ｉ＋１）、単位区間ｄiと単位区間ｄi+1との送り量をＬiとすると、単位区間ｄiにおけるノートナンバーｎの補正後の相関値Ｖn'（ｉ）は、以下の〔数式４〕で算出される。
【００４５】
〔数式４〕
Ｖn'（ｉ）＝｛Ｖn(ｉ)Ｔn− Ｖn(ｉ＋１) (Ｔn−Ｌi)｝／Ｌi
【００４６】
上記〔数式４〕において、Ｔnは、ノートナンバーｎに対応する周期１／ｆ（ｎ）の整数倍であって、単位区間を超えない最大の長さを示すものである。本実施形態における区間信号と調和信号との相関計算は、調和信号の周波数ｆ（ｎ）に応じた時間的長さＴnに渡って行われる。すなわち、〔数式４〕においては、単位区間ｄiの補正前相関値Ｖn(ｉ)に相関計算長Ｔnを乗じた値Ｖn(ｉ)Ｔnから、単位区間ｄi+1の補正前相関値Ｖn(ｉ＋１)に相関計算長と送り量の差分(Ｔn−Ｌi)を乗じた値を減算し、送り量Ｌiで除算した値を補正後の相関値とする処理を行っている。
【００４７】
全単位区間における相関配列が補正されたら、各単位区間における各周波数、各周波数に対応する相関値、単位区間の始点、後続する単位区間の始点、の４つの情報で構成されるデータ（これを音素データと定義する）を連結する処理を行う（ステップＳ７）。この連結処理は、連続する音素データの周波数が同一のノートナンバーに対応し、そのノートナンバーに対応する相関値が類似するものについて行われる。このとき、相関値が類似しているかどうかの判断は、以下の〔数式５〕により判断される。
【００４８】
〔数式５〕
Ｖn'(ｉ＋１)−Ｖn'(ｉ)≦Ｓｖ
【００４９】
上記〔数式５〕において、Ｓｖは類似性を判断するための閾値であり、所定の値が設定される。実際には、相関計算長Ｔnに応じて閾値の幅を変化させる方が好ましいため、より精度を高めるためには以下の〔数式６〕を用いて相関値の類似性を判断する。
【００５０】
〔数式６〕
Ｖn'(ｉ＋１)−Ｖn'(ｉ)≦Ｓｖ・Ｌi／Ｔn
【００５１】
ただし、〔数式５〕〔数式６〕における左辺のＶn'(ｉ＋１)−Ｖn'(ｉ)が負の値になる場合は、無条件に連結する。
【００５２】
音素データが連結されたら、連結処理後の音素データの構成要素である周波数に対応する「音の高さを示す情報」、周波数の相関値に対応する「音の強さを示す情報」、単位区間の始点に対応する「音の発音開始時刻を示す情報」、当該単位区間に後続する単位区間の始点に対応する「音の発音終了時刻を示す情報」、の４つの情報を含む所定数の符号データを作成する（ステップＳ８）。これを全処理に対して行うことにより、音響信号が符号化されることになる。符号データとして、ＭＩＤＩデータを作成する場合には、「音の高さを示す情報」はノートナンバーに、「音の強さを示す情報」はベロシティーに、「音の発音開始時刻を示す情報」はノートオン時刻に、「音の発音終了時刻を示す情報」はノートオフ時刻にそれぞれ変換されることになる。
【００５３】
上述のように音響信号としては、広く普及しているＭＩＤＩ規格に変換することが好ましい。この場合、上記連結された音素データはＭＩＤＩ符号データに変換されることになるが、上記ステップＳ７における音素データの連結をＭＩＤＩ符号データへの変換後に行うようにしても良い。
【００５４】
ここで、第１の実施形態による単位区間の始点の決定処理を、時系列信号の波形を用いて概念的に補足説明しておく。図６に、時系列信号としての波形を３種類示す。図６（ａ）は時刻τの前も後も波形に変化がない。このような時系列信号で時刻τについて、上記〔数式３〕に従って自己相関値Ｒ（τ）を求めた場合、自己相関値Ｒ（τ）の値が閾値より大きくなるため、τは境界ゼロ交差点としては抽出されず、τに単位区間の始点が設定されることはない。図６（ｂ）に示すように時刻τの前後で振幅が変化する場合は、自己相関値Ｒ（τ）の値が図６（ａ）に示したものより小さくなる。そのため、閾値の設定によっては、境界ゼロ交差点として選出される可能性がある。図６（ｃ）に示すように時刻τの前後で周波数が変化する場合は、自己相関値Ｒ（τ）の値がかなり小さなものとなり、境界ゼロ交差点として選出される。第１の実施形態においては、上記〔数式３〕により算出した自己相関値Ｒ（τ）により単位区間の始点とすべきかどうかを判断するため、図６（ａ）に示したように時刻τの前後で波形の変化がない場合には、単位区間の始点とされず、図６（ｂ）（ｃ）に示したように時刻τの前後で波形の変化がある場合には、単位区間の始点とされる可能性が高くなる。
【００５５】
次に、第１の実施形態のステップＳ２〜Ｓ４における単位区間の始点の決定までの処理を図７を用いて補足説明する。時系列信号の波形が図７（ａ）に示すようなものであったとする。図７（ａ）において、横線が信号０レベル、波線は時系列信号を示す。この場合、波線と横線の交差する点がゼロ交差点であり、図７（ｂ）に縦線が引かれた位置となる。図７（ｂ）に示した各ゼロ交差点について〔数式３〕を用いて境界ゼロ交差点を検出すると、図７（ｃ）に太線で示したものとなる。これが、単位区間の最大送り量、最小送り量の条件を満たしていれば、そのまま単位区間の始点となるが、満たしていない場合は、条件を満たすように補正される。図７（ｄ）は補正後の様子である。補正された始点に基づいて図７（ｅ）に示すように単位区間が設定される。
【００５６】
（3.2.第２の実施形態）
続いて、第２の実施形態について説明する。第２の実施形態においても、図５に示したフローチャートの処理に従って、第１の実施形態と同様に処理が行われる。第１の実施形態と異なるのは、ステップＳ３の境界ゼロ交差点を選出処理だけである。第２の実施形態における境界ゼロ交差点の選出処理では、基本ゼロ交差点数Ｒを設定し、全ゼロ交差点Ｉについて、以下の〔数式７〕を満たすかどうかを判断し、〔数式７〕を満たすゼロ交差点を境界ゼロ交差点とする。
【００５７】
〔数式７〕
Ｔ（Ｉ＋Ｒ）／Ｔ（Ｉ−Ｒ）≧２もしくはＴ（Ｉ＋Ｒ）／Ｔ（Ｉ−Ｒ）≦１／２
【００５８】
上記〔数式７〕におけるＴ（Ｉ＋Ｒ）、Ｔ（Ｉ−Ｒ）はそれぞれ、Ｉ番目のゼロ交差点に着目したときのＲ個後のゼロ交差点との時間差、Ｒ個前のゼロ交差点との時間差を示している。結局、〔数式７〕はＲ個前のゼロ交差点との間隔とＲ個後のゼロ交差点との間隔が大きく異なっているゼロ交差点を判断することになり、自身の前後で信号が大きく変化するゼロ交差点が境界ゼロ交差点として選出されることになる。実際にはＩの前後のＩ＋１やＩ−１でも〔数式７〕の要件を満たす可能性があり、以下の〔数式８〕の要件を満たす条件を加え、境界ゼロ交差点として選出されるように要件を限定することもできる。
【００５９】
〔数式８〕
｜Ｔ（Ｉ−Ｒ）−Ｔ（Ｉ＋Ｒ）｜＞｜Ｔ（Ｉ−１−Ｒ）−Ｔ（Ｉ−１＋Ｒ｜
かつ｜Ｔ（Ｉ−Ｒ）−Ｔ（Ｉ＋Ｒ）｜＞｜Ｔ（Ｉ＋１−Ｒ）−Ｔ（Ｉ＋１＋Ｒ）｜
【００６０】
境界ゼロ交差点が選出されたら、第１の実施形態と同様に各境界ゼロ交差点を始点とする固定長の単位区間を全区間に渡って設定し、必要があれば単位区間の補正を行った（ステップＳ４）後、相関値を算出（ステップＳ５）、相関値の補正（ステップＳ６）、音素データの連結（ステップＳ７）、音素データの符号化（ステップＳ８）を行う。
【００６１】
（3.3.周波数の設定について）
上記実施形態においては、抽出すべき周波数を、ＭＩＤＩ規格のノートナンバーｎに対応させた標準周波数として〔数式１〕のように設定したが、実際には、さらに細かい間隔で設定することにより、精度の高い検出を行うようにすることもできる。また、周波数の設定は、上記〔数式１〕のように、ノートナンバーに比例した対数的な間隔でなく、周波数に比例して等間隔に設定するようにしても良い。ただ、時系列信号として音響信号を解析し、符号化を行う場合には、ノートナンバーに対応した間隔で設定することが好ましい。音響信号の符号化に利用するために最も好ましい周波数の設定としては、各ノートナンバー間にさらに細かい間隔で設定するようにする。例えば、各ノートナンバー間に１２個の周波数を、それぞれノートナンバーの１／１３間隔となるように設定する。このような設定を行った場合、周波数は全部で１２８×１３個設定されることになる。音響信号への符号化の際には、このように細かい周波数設定に対応する周波数が存在しないため、最も近いノートナンバーに対応する周波数を抽出成分とする。例えば、ノートナンバー（ｎ−６／１３）からノートナンバー（ｎ＋６／１３）に対応する１３個の周波数については、相関計算を行うことにより、それぞれ相関値が算出される。単に周波数成分を抽出するためであれば、これをそのまま周波数解析の結果とすることができるが、音響信号に符号化することを目的とするのであれば、ノートナンバーの整数値に対応させる必要がある。そのため、ノートナンバー（ｎ−６／１３）からノートナンバー（ｎ＋６／１３）のうちの最大の相関値をノートナンバーｎに対応する周波数の相関値として符号化を行うのである。
【００６２】
上記のように、さらに細かい周波数設定を行った場合、上記ステップＳ７における音素データの連結の条件に、以下の〔数式９〕も追加するようにし、〔数式５〕と〔数式９〕の両条件を満たした場合にのみ、連結を行うようにする。
【００６３】
〔数式９〕
｜Ｍn（ｉ＋１）−Ｍn（ｉ）｜≦Ｓｍ
【００６４】
上記〔数式９〕において、 Ｍnはノートナンバーｎにおけるノートナンバー単位より細かい間隔で設定された周波数の端数成分に対応している。上記ステップＳ７において、連結処理は、連続する音素データの周波数が同一のノートナンバーに対応し、そのノートナンバーに対応する相関値が類似するものについて行うと説明した。この「同一のノートナンバーに対応する」とは、周波数解析のために用意される調和信号がノートナンバーに対応した周波数に対応している場合は、同一の周波数のものであるのは当然であるが、上記のように細かい間隔で周波数を設定した場合には、１つのノートナンバーに対応する周波数は１３個あり、その差の最大値はノートナンバーに換算して１２／１３となる。このような場合、連結する両音素データはほぼノートナンバー１つ分差があることになり、連結することは好ましくない。そこで、上記〔数式８〕のような条件を設けるのである。なお、〔数式９〕の左辺はノートナンバー換算で０〜１２／１３の値をとるものとなる。また、上記〔数式６〕と同様、実際には、相関計算長Ｔnに応じて閾値の幅を変化させる方が好ましいため、より精度を高めるためには以下の〔数式１０〕を用いて相関値の類似性を判断する。
【００６５】
〔数式１０〕
｜Ｍn（ｉ＋１）−Ｍn（ｉ）｜≦Ｓｍ・Ｌi／Ｔn
【００６６】
ここで、第２の実施形態のステップＳ２〜Ｓ４における単位区間の始点の決定までの処理を図８を用いて補足説明する。時系列信号の波形が図８（ａ）に示すようなものであったとする。図８（ａ）（ｂ）は図７（ａ）（ｂ）と同じものであり、第１の実施形態と同様にゼロ交差点が抽出される。第２の実施形態では、上記〔数式７〕を用いてＲ個前のゼロ交差点との間隔とＲ個後のゼロ交差点との間隔が大きく異なっているゼロ交差点を検出する。図８（ｃ）においては、Ｒ＝６とし、６個分のゼロ交差点の間隔を横向きの矢印で示しているが、この間隔は２つのゼロ交差点において大きく異なっているため、これを境界ゼロ交差点として選出する。図８（ｄ）（ｅ）は、図７（ｄ）（ｅ）と同じ図であり、選出された境界ゼロ交差点が単位区間の最大送り量、最小送り量の条件を満たしていない場合は、第１の実施形態と同様に、条件を満たすように補正する処理が行われる。
【００６７】
以上、本発明の好適な実施形態について説明したが、上記周波数解析方法および符号化方法は、コンピュータ等の演算処理装置で実行されることは当然である。具体的には、図５のフローチャートに示したようなステップを上記手順で実行するためのプログラムをコンピュータに搭載しておく。そして、音響信号等の時系列信号をＰＣＭ方式等でデジタル化した後、コンピュータに取り込み、ステップＳ１〜ステップＳ８の処理を行った後、抽出した周波数成分もしくはＭＩＤＩ形式等の符号データをデジタルデータとしてコンピュータより出力する。出力された符号データは、例えば、ＭＩＤＩデータの場合、ＭＩＤＩシーケンサ、ＭＩＤＩ音源を用いて音声として再生される。
【００６８】
【発明の効果】
以上、説明したように本発明によれば、時系列信号から複数の信号成分を分離するための周波数解析方法として、複数の周波数を設定して当該各周波数に対応する複数の調和信号を準備する調和信号準備段階、正負両極性の時系列信号に対して信号が０レベル付近と交差する複数のゼロ交差点を求めるためのゼロ交差点抽出段階、前記抽出されたゼロ交差点のうち、その前後において前記時系列信号の変化が大きいと判断される境界ゼロ交差点を検出する境界ゼロ交差点検出段階、前記時系列信号において、前記抽出した全ての境界ゼロ交差点を始点として所定の長さの単位区間を設定し、個々の単位区間ごとに区間信号を抽出する区間信号抽出段階、前記各単位区間について、前記各区間信号と前記各調和信号との相関計算を行って、各周波数に対応する相関値を格納した相関配列を得る相関算出段階を実行するようにしたので、時系列信号の変化の特徴に応じた単位区間の細かい設定が可能となり、結果として時間分解能が向上するという効果を奏する。
【図面の簡単な説明】
【図１】本発明に係る周波数解析方法および音響信号符号化方法の基本原理を示す図である。
【図２】本発明で利用される周期関数の一例を示す図である。
【図３】解析対象となる信号と周期信号との相関計算の手法を示す図である。
【図４】一般化調和解析の基本的な手法を示す図である。
【図５】本発明に係る周波数解析方法および音響信号符号化方法のフローチャートである。
【図６】時系列信号において境界ゼロ交差点として検出される点とされない点の比較を示す図である。
【図７】第１の実施形態における単位区間の始点の決定処理を概念的に示す図である。
【図８】第２の実施形態における単位区間の始点の決定処理を概念的に示す図である。
【図１】
0004061070.tif 000002
【図２】
0004061070.tif 000003
【図３】
0004061070.tif 000004
【図４】
0004061070.tif 000005
【図５】
0004061070.tif 000006
【図６】
0004061070.tif 000007
【図７】
0004061070.tif 000008
【図８】
0004061070.tif 000009