(57)【特許請求の範囲】
【請求項１】
複数のバッファと、
外部音声を検出する外部音声検出手段と、
前記複数のバッファのうち、空のバッファに前記外部音声検出手段により検出された前記外部音声のデータを格納させる格納処理手段と、
前記格納処理手段により前記バッファに格納された前記外部音声のデータのうち、該外部音声のデータを使用した処理に応じて定まる外部音声のデータを読み出す外部音声データ読み出し手段と、
前記外部音声データ読み出し手段により読み出された前記外部音声のデータを使用した処理を行う外部音声処理手段とを有し、
前記外部音声データ読み出し手段は、前記格納処理手段により前記バッファに格納された前記外部音声のデータのうち、外部音声のデータを最も遅いタイミングで格納したバッファに格納された最新の外部音声のデータを読み出し、
前記外部音声処理手段は、前記外部音声データ読み出し手段により読み出された前記最新の外部音声のデータに基づいて、出力音声のレベルを調整する音声処理装置。
【請求項２】
前記空のバッファをキューに登録するキュー登録手段を有し、
前記格納処理手段は、前記キューに登録された前記空のバッファに前記外部音声のデータを格納させる請求項１に記載の音声処理装置。
【請求項３】
前記外部音声のデータが格納されたバッファのうち、前記最新の外部音声のデータが格納されたバッファを特定する最新外部音声データ格納バッファ特定手段を有し、
前記外部音声データ読み出し手段は、前記最新外部音声データ格納バッファ特定手段により特定されたバッファに格納された前記最新の外部音声のデータを読み出す請求項１又は２に記載の音声処理装置。
【請求項４】
前記バッファにおける前記外部音声データの格納状況の情報を保持する保持手段を有し、
前記最新外部音声データ格納バッファ特定手段は、前記保持手段に保持されたバッファの格納状況の情報に基づいて、前記最新の外部音声のデータが格納されたバッファを特定する請求項３に記載の音声処理装置。
【請求項５】
前記バッファに格納された前記外部音声のデータが予め定められた有効期間内であるか否かを判定する判定手段と、
前記判定手段により有効期間内でないと判定された場合に、対応する前記外部音声のデータを、前記外部音声処理手段による処理の対象から除外する第１の除外手段とを有する請求項１乃至４のいずれかに記載の音声処理装置。
【請求項６】
前記判定手段は、前記外部音声のデータが前記バッファに格納されてからの経過時間が所定時間内であるか否かを判定する請求項５に記載の音声処理装置。
【請求項７】
前記最新の外部音声のデータよりも過去に格納された外部音声のデータを、前記外部音声処理手段による処理の対象から除外する第２の除外手段を有する請求項１乃至６のいずれかに記載の音声処理装置。
【請求項８】
外部音声を検出する外部音声検出ステップと、
複数のバッファのうち、空のバッファに前記外部音声検出手段により検出された前記外部音声のデータを格納させる格納処理ステップと、
前記格納処理ステップにより前記バッファに格納された前記外部音声のデータのうち、該外部音声のデータを使用した処理に応じて定まる外部音声のデータを読み出す外部音声データ読み出しステップと、
前記外部音声データ読み出しステップにより読み出された前記外部音声のデータを使用した処理を行う外部音声処理ステップとを有し、
前記外部音声データ読み出しステップは、前記格納処理ステップにより前記バッファに格納された前記外部音声のデータのうち、外部音声のデータを最も遅いタイミングで格納したバッファに格納された最新の外部音声のデータを読み出し、
前記外部音声処理ステップは、前記外部音声データ読み出しステップにより読み出された前記最新の外部音声のデータに基づいて、出力音声のレベルを調整する音声処理方法。
【請求項９】
前記外部音声のデータが格納されたバッファのうち、前記最新の外部音声のデータが格納されたバッファを特定する最新外部音声データ格納バッファ特定ステップを有し、
前記外部音声データ読み出しステップは、前記最新外部音声データ格納バッファ特定ステップにより特定されたバッファに格納された前記最新の外部音声のデータを読み出す請求項８に記載の音声処理方法。
【請求項１０】
前記バッファに格納された前記外部音声のデータが予め定められた有効期間内であるか否かを判定する判定ステップと、
前記判定ステップにより有効期間内でないと判定された場合に、対応する前記外部音声のデータを、前記外部音声処理ステップによる処理の対象から除外する第１の除外ステップとを有する請求項８又は９に記載の音声処理方法。
【請求項１１】
前記最新の外部音声のデータよりも過去に格納された外部音声のデータを、前記外部音声処理ステップによる処理の対象から除外する第２の除外ステップを有する請求項８乃至１０のいずれかに記載の音声処理方法。
【請求項１２】
外部音声を検出する外部音声検出ステップと、
複数のバッファのうち、空のバッファに前記外部音声検出手段により検出された前記外部音声のデータを格納させる格納処理ステップと、
前記格納処理ステップにより前記バッファに格納された前記外部音声のデータのうち、該外部音声のデータを使用した処理に応じて定まる外部音声のデータを読み出す外部音声データ読み出しステップと、
前記外部音声データ読み出しステップにより読み出された前記外部音声のデータを使用した処理を行う外部音声処理ステップとを音声処理装置としてのコンピュータに実行させ、
前記外部音声データ読み出しステップは、前記格納処理ステップにより前記バッファに格納された前記外部音声のデータのうち、外部音声のデータを最も遅いタイミングで格納したバッファに格納された最新の外部音声のデータを読み出し、
前記外部音声処理ステップは、前記外部音声データ読み出しステップにより読み出された前記最新の外部音声のデータに基づいて、出力音声のレベルを調整する音声処理プログラム。
【請求項１３】
前記外部音声のデータが格納されたバッファのうち、前記最新の外部音声のデータが格納されたバッファを特定する最新外部音声データ格納バッファ特定ステップを音声処理装置としてのコンピュータに実行させ、
前記外部音声データ読み出しステップは、前記最新外部音声データ格納バッファ特定ステップにより特定されたバッファに格納された前記最新の外部音声のデータを読み出す請求項１２記載の音声処理プログラム。
【請求項１４】
前記バッファに格納された前記外部音声のデータが予め定められた有効期間内であるか否かを判定する判定ステップと、
前記判定ステップにより有効期間内でないと判定された場合に、対応する前記外部音声のデータを、前記外部音声処理ステップによる処理の対象から除外する第１の除外ステップとを音声処理装置としてのコンピュータに実行させる請求項１２または１３記載の音声処理プログラム。
【請求項１５】
前記最新の外部音声のデータよりも過去に格納された外部音声のデータを、前記外部音声処理ステップによる処理の対象から除外する第２の除外ステップを音声処理装置としてのコンピュータに実行させる請求項１２乃至１４のいずれかに記載の音声処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オーディオ機能を有する機器において、音声処理を行う音声処理装置、音声処理方法、及び、音声処理装置としてのコンピュータによって実行される音声処理プログラムに関する。
【背景技術】
【０００２】
音声認識（ＳＲ）や音声録音等、外部音声に基づく各種の音声処理を行う装置（音声処理装置）では、アプリケーションソフトウェアが、マイクによって検出された外部音声のデータ（ＭＩＣデータ）の逐次処理を行う（例えば、特許文献１参照）。
【０００３】
図１８は、音声処理の動作を示すシーケンス図である。音声処理装置内のＣＰＵのリソースが音声処理用のアプリケーションソフトウェアに割り当てられている間、ＣＰＵによって、当該音声処理用のアプリケーションソフトウェアが実行される。ＣＰＵは、音声処理用のアプリケーションソフトウェアの実行により、音声処理装置内のメモリに設けられたバッファのうち、複数の空のバッファをＭＩＣデータの格納領域として特定し（Ｓ５０１）、サウンドドライバ（ＳＤ）に対して、その複数の空のバッファのキューへの登録を要求する（Ｓ５０２）。ＣＰＵは、サウンドドライバの実行により、空のバッファを待機させておくキューを用意し、登録要求された複数の空のバッファを、そのキューに順に登録する（Ｓ５０３）。
【０００４】
ここで、汎用のＣＰＵによって各アプリケーションソフトウェアに対応する複数のプロセスが処理される場合、任意のプロセスに割り当てられるＣＰＵのリソースの割り当てやその割り当ての間隔は保証されていない。また、一般にプロセスは、予め定められた優先度に応じて実行管理がなされている。このため、あるプロセスが処理中に、当該プロセスよりも優先度の高いプロセスが割り込んだ場合、プロセスが切り替わり、優先度の低いプロセスは、優先度の高いプロセスが処理されている間、処理不能となる。従って、優先度の低いプロセスが上述した音声処理用のアプリケーションソフトウェアに対応するプロセスの場合には、その実行に際して必要なＣＰＵのリソースが割り当てられず、キューに空のバッファが登録されない期間が長期になる可能性がある。この場合、ＣＰＵは、サウンドドライバの実行によって、マイクによってＭＩＣデータをバッファに格納することができず、ＭＩＣデータの取りこぼしが発生する。このような問題に対し、ＣＰＵは、上述したＳ５０２での音声処理用のアプリケーションソフトウェアの実行によって、複数の空のバッファのキューへの登録をサウンドドライバに要求し、上述したＳ５０３でのサウンドドライバの実行によって、その複数の空のバッファをキューに登録する。
【０００５】
その後、ＣＰＵは、音声処理用のアプリケーションソフトウェアの実行によって、サウンドドライバに対して録音開始命令を出す（Ｓ５０４）。更に、ＣＰＵは、サウンドドライバの実行によって、この命令に応じて、マイクからＭＩＣデータを取り込んで、キューの登録順に空のバッファに格納する（Ｓ５０５）。ここでは、キューに登録されたバッファのうち、キューの先頭に近い空のバッファから順にＭＩＣデータが格納される。そして、バッファにＭＩＣデータが格納されると、ＣＰＵは、サウンドドライバの実行によって、バッファへの録音完了を音声処理用のアプリケーションソフトウェアへ通知する（Ｓ５０６）。
【０００６】
バッファへの録音完了が通知されると、ＣＰＵは、音声処理用のアプリケーションソフトウェアの実行によって、バッファへの録音完了通知を取得し、そのバッファに格納されたＭＩＣデータを使用して、所定の音声処理を行う（Ｓ５０７）。更に、ＣＰＵは、音声処理用のアプリケーションソフトウェアの実行によって、サウンドドライバに対して、Ｓ５０７において処理の対象となったＭＩＣデータが格納されたバッファをキューに登録するように要求する（Ｓ５０８）。更に、ＣＰＵは、サウンドドライバの実行によって、登録が要求されたバッファ、換言すれば、キューの先頭のバッファを、キューの末尾に登録する（Ｓ５０９）。これにより、それまではキューの２番目に登録されていたバッファがキューの先頭になる。その後は、録音処理が終了するまで、Ｓ５０５乃至Ｓ５０９の処理が繰り返される。
【特許文献１】特開平１１−１６６８３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところで、車載用のオーディオ装置には、ユーザが常に一定の音量感を保って音を聴取することができるように、車室内の騒音を検出し、その騒音のレベルに応じてガイダンス音声（ＲＧ）等の出力音声のレベルを調整する機能を有するものがある。
【０００８】
このような機能によって、現在の車室内の音響環境に応じた適切な出力音声の調整を行うためには、できるだけ最新の騒音に対応するＭＩＣデータに応じて出力音声のレベルを調整し、リアルタイム性を確保する必要がある。しかし、上述した従来の技術では、優先度の低い音声処理用のアプリケーションソフトウェアに対応するプロセスにＣＰＵのリソースが割り当てられない一方で、優先度の高いサウンドドライバにＣＰＵのリソースが割り当てられる場合には、サウンドドライバの実行によって、キューに登録されたバッファに逐次ＭＩＣデータが格納されるにもかかわらず、音声処理用のアプリケーションソフトウェアの実行におけるＭＩＣデータを使用した処理が滞る。そして、その後に音声処理用のアプリケーションソフトウェアにＣＰＵのリソースが割り当てられた後には、キューの先頭に登録されたバッファ内のＭＩＣデータ、換言すれば、過去のＭＩＣデータから順次処理の対象となる。
【０００９】
例えば、音声処理用のアプリケーションソフトウェアの実行におけるＭＩＣデータを使用した処理が滞る場合を考える。図１９では、マイク５０４によって検出された外部音声がアナログ・デジタルコンバータ（ＡＤＣ）５０６によってデジタルデータに変換されて得られるＭＩＣデータが、キューに登録されたバッファＡ乃至Ｅのうち、先頭から３つのバッファＡ乃至ＣにＭＩＣデータが格納されている。
【００１０】
図２０は、図１９に示すようにＭＩＣデータを使用した処理が滞った場合の音声録音処理の動作を示すシーケンス図である。音声処理用のアプリケーションソフトウェアの実行におけるＭＩＣデータを使用した処理が滞り、その間に、サウンドドライバの実行によってバッファＡ乃至ＣにＭＩＣデータが格納された場合、ＣＰＵは、サウンドドライバの実行によって、それぞれのバッファにＭＩＣデータが格納される毎に、それぞれのバッファへの録音完了を音声処理用のアプリケーションソフトウェアへ通知する（Ｓ５１１、Ｓ５１２、Ｓ５１３）。
【００１１】
その後に、音声処理装置内のＣＰＵのリソースが音声処理用のアプリケーションソフトウェアに割り当てられると、ＣＰＵは、音声処理用のアプリケーションソフトウェアの実行によって、まず、バッファＡへの録音完了通知を取得し、キューの先頭に登録されたバッファＡに格納されたＭＩＣデータを使用して、所定の音声処理を行う（Ｓ５１４）。具体的には、図２１に示すように、バッファＡ内の過去のＭＩＣデータが音声処理用のアプリケーションソフトウェアにおける受付部に受け付けられて、処理部によって処理される。
【００１２】
次に、ＣＰＵは、音声処理用のアプリケーションソフトウェアの実行によって、サウンドドライバに対して、Ｓ５１４において処理の対象となったＭＩＣデータが格納されたバッファＡをキューの末尾に登録するように要求する（Ｓ５１５）。更に、ＣＰＵは、サウンドドライバの実行によって、登録が要求されたバッファＡ、換言すれば、キューの先頭のバッファＡを、キューの末尾に登録する（Ｓ５１６）。これにより、それまではキューの２番目に登録されていたバッファＢがキューの先頭になる。
【００１３】
次に、ＣＰＵは、音声処理用のアプリケーションソフトウェアの実行によって、バッファＢへの録音完了通知を取得し、キューの先頭に登録されたバッファＢに格納されたＭＩＣデータを使用して、所定の音声処理を行う（Ｓ５１７）。具体的には、図２２に示すように、バッファＢ内の過去のＭＩＣデータが音声処理用のアプリケーションソフトウェアにおける受付部に受け付けられて、処理部によって処理される。
【００１４】
次に、ＣＰＵは、音声処理用のアプリケーションソフトウェアの実行によって、サウンドドライバに対して、Ｓ５１７において処理の対象となったＭＩＣデータが格納されたバッファＢをキューの末尾に登録するように要求する（Ｓ５１８）。更に、ＣＰＵは、サウンドドライバの実行によって、登録が要求されたバッファＢ、換言すれば、キューの先頭のバッファＢを、キューの末尾に登録する（Ｓ５１９）。これにより、それまではキューの２番目に登録されていたバッファＣがキューの先頭になる。
【００１５】
次に、ＣＰＵは、音声処理用のアプリケーションソフトウェアの実行によって、バッファＣへの録音完了通知を取得し、キューの先頭に登録されたバッファＣに格納されたＭＩＣデータを使用して、所定の音声処理を行う（Ｓ５２０）。具体的には、図２３に示すように、バッファＣ内の過去のＭＩＣデータが音声処理用のアプリケーションソフトウェアにおける受付部に受け付けられて、処理部によって処理される。
【００１６】
次に、ＣＰＵは、音声処理用のアプリケーションソフトウェアの実行によって、サウンドドライバに対して、Ｓ５２０において処理の対象となったＭＩＣデータが格納されたバッファＣをキューの末尾に登録するように要求する（Ｓ５２１）。更に、ＣＰＵは、サウンドドライバの実行によって、登録が要求されたバッファＣ、換言すれば、キューの先頭のバッファＣを、キューの末尾に登録する（Ｓ５２２）。
【００１７】
このように、最新のＭＩＣデータは、当初、キューの３番目に登録されたバッファＣに格納されているため、当該最新のＭＩＣデータは直ちに処理されない。すなわち、バッファＣに最新のＭＩＣデータが格納されてから当該最新のＭＩＣデータが処理されるまでには、バッファＡ及びＢに登録されたバッファ内の過去のＭＩＣデータの処理に要する時間に相当する時間差が生じ、最新のＭＩＣデータを使用した出力音声の調整が適切に行われる保証がない。
【００１８】
このような問題に対して、出力音声調整のための専用のデジタル信号プロセッサ（ＤＳＰ）を設けることも考えられるが、コストが増加するため、適切ではない。
【００１９】
本発明の目的は、上述した問題を解決するものであり、外部音声データを使用した適切な音声処理を行うことが可能な音声処理装置、音声処理方法、及び、音声処理装置としてのコンピュータによって実行される音声処理プログラムを提供するものである。
【課題を解決するための手段】
【００２０】
本発明に係る音声処理装置は、複数のバッファと、外部音声を検出する外部音声検出手段と、前記複数のバッファのうち、空のバッファに前記外部音声検出手段により検出された前記外部音声のデータを格納させる格納処理手段と、前記格納処理手段により前記バッファに格納された前記外部音声のデータのうち、該外部音声のデータを使用した処理に応じて定まる外部音声のデータを読み出す外部音声データ読み出し手段と、前記外部音声データ読み出し手段により読み出された前記外部音声のデータを使用した処理を行う外部音声処理手段とを有し、前記外部音声データ読み出し手段は、前記格納処理手段により前記バッファに格納された前記外部音声のデータのうち、外部音声のデータを最も遅いタイミングで格納したバッファに格納された最新の外部音声のデータを読み出し、前記外部音声処理手段は、前記外部音声データ読み出し手段により読み出された前記最新の外部音声のデータに基づいて、出力音声のレベルを調整する。
【００２１】
この構成によれば、音声処理が滞ることにより、複数のバッファに外部音声データが格納された場合には、音声処理に応じて定まる外部音声データが読み出されて、当該外部音声のデータを使用した音声処理が行われる。従って、適切な外部音声データを使用した音声処理を行うことが可能となる。
【００２３】
そして、外部音声のレベルに応じて出力音声のレベルを調整する際に、その調整処理が滞って複数のバッファに外部音声データが格納された場合には、最新の外部音声データが読み出されて、当該外部音声のデータを使用した音声処理が行われる。従って、適切な外部音声データを使用した音声処理を行うことが可能となる。
【００２４】
同様の観点から、本発明に係る音声処理装置は、前記空のバッファをキューに登録するキュー登録手段を有し、前記格納処理手段が、前記キューに登録された前記空のバッファに前記外部音声のデータを格納させるようにしてもよい。
【００２５】
また、本発明に係る音声処理装置は、前記外部音声のデータが格納されたバッファのうち、前記最新の外部音声のデータが格納されたバッファを特定する最新外部音声データ格納バッファ特定手段を有し、前記外部音声データ読み出し手段が、前記最新外部音声データ格納バッファ特定手段により特定されたバッファに格納された前記最新の外部音声のデータを読み出すようにしてもよい。
【００２６】
この構成によれば、最新の外部音声のデータが格納されたバッファが特定されることにより、そのバッファから最新の外部音声データが読み出されて、当該外部音声のデータを使用した音声処理を適切に行うことが可能となる。
【００２７】
同様の観点から、本発明に係る音声処理装置は、前記バッファにおける前記外部音声データの格納状況の情報を保持する保持手段を有し、前記最新外部音声データ格納バッファ特定手段が、前記保持手段に保持されたバッファの格納状況の情報に基づいて、前記最新の外部音声のデータが格納されたバッファを特定するようにしてもよい。
【００２８】
また、本発明に係る音声処理装置は、前記バッファに格納された前記外部音声のデータが予め定められた有効期間内であるか否かを判定する判定手段と、前記判定手段により有効期間内でないと判定された場合に、対応する前記外部音声のデータを、前記外部音声処理手段による処理の対象から除外する第１の除外手段とを有するようにしてもよい。
【００２９】
この構成によれば、バッファに格納された外部音声データが有効期間内でない場合には、その外部音声データは出力音声の調整には不要であるとみなして処理対象から除外することで、適切な音声処理を行うことができる。
【００３０】
同様の観点から、本発明に係る音声処理装置は、前記判定手段が、前記外部音声のデータが前記バッファに格納されてからの経過時間が所定時間内であるか否かを判定するようにしてもよい。
【００３１】
また、本発明に係る音声処理装置は、前記最新の外部音声のデータよりも過去に格納された外部音声のデータを、前記外部音声処理手段による処理の対象から除外する第２の除外手段を有するようにしてもよい。
【００３２】
この構成によれば、最新の外部音声データよりも過去にバッファに格納された外部音声データについては、出力音声の調整には不要であるとみなして処理対象から除外することで、適切な音声処理を行うことができる。
【００３３】
本発明に係る音声処理方法は、外部音声を検出する外部音声検出ステップと、複数のバッファのうち、空のバッファに前記外部音声検出手段により検出された前記外部音声のデータを格納させる格納処理ステップと、前記格納処理ステップにより前記バッファに格納された前記外部音声のデータのうち、該外部音声のデータを使用した処理に応じて定まる外部音声のデータを読み出す外部音声データ読み出しステップと、前記外部音声データ読み出しステップにより読み出された前記外部音声のデータを使用した処理を行う外部音声処理ステップとを有し、前記外部音声データ読み出しステップは、前記格納処理ステップにより前記バッファに格納された前記外部音声のデータのうち、外部音声のデータを最も遅いタイミングで格納したバッファに格納された最新の外部音声のデータを読み出し、前記外部音声処理ステップは、前記外部音声データ読み出しステップにより読み出された前記最新の外部音声のデータに基づいて、出力音声のレベルを調整する。
【００３５】
また、本発明に係る音声処理方法は、前記外部音声のデータが格納されたバッファのうち、前記最新の外部音声のデータが格納されたバッファを特定する最新外部音声データ格納バッファ特定ステップを有し、前記外部音声データ読み出しステップが、前記最新外部音声データ格納バッファ特定ステップにより特定されたバッファに格納された前記最新の外部音声のデータを読み出すようにしてもよい。
【００３６】
また、本発明に係る音声処理方法は、前記バッファに格納された前記外部音声のデータが予め定められた有効期間内であるか否かを判定する判定ステップと、前記判定ステップにより有効期間内でないと判定された場合に、対応する前記外部音声のデータを、前記外部音声処理ステップによる処理の対象から除外する第１の除外ステップとを有するようにしてもよい。
【００３７】
また、本発明に係る音声処理方法は、前記最新の外部音声のデータよりも過去に格納された外部音声のデータを、前記外部音声処理ステップによる処理の対象から除外する第２の除外ステップを有するようにしてもよい。
【００３８】
本発明に係る音声処理プログラムは、外部音声を検出する外部音声検出ステップと、複数のバッファのうち、空のバッファに前記外部音声検出手段により検出された前記外部音声のデータを格納させる格納処理ステップと、前記格納処理ステップにより前記バッファに格納された前記外部音声のデータのうち、該外部音声のデータを使用した処理に応じて定まる外部音声のデータを読み出す外部音声データ読み出しステップと、前記外部音声データ読み出しステップにより読み出された前記外部音声のデータを使用した処理を行う外部音声処理ステップとを音声処理装置としてのコンピュータに実行さ、前記外部音声データ読み出しステップは、前記格納処理ステップにより前記バッファに格納された前記外部音声のデータのうち、外部音声のデータを最も遅いタイミングで格納したバッファに格納された最新の外部音声のデータを読み出し、前記外部音声処理ステップは、前記外部音声データ読み出しステップにより読み出された前記最新の外部音声のデータに基づいて、出力音声のレベルを調整する。
【００４０】
また、本発明に係る音声処理プログラムは、前記外部音声のデータが格納されたバッファのうち、前記最新の外部音声のデータが格納されたバッファを特定する最新外部音声データ格納バッファ特定ステップを音声処理装置としてのコンピュータに実行させ、前記外部音声データ読み出しステップが、前記最新外部音声データ格納バッファ特定ステップにより特定されたバッファに格納された前記最新の外部音声のデータを読み出すようにしてもよい。
【００４１】
また、本発明に係る音声処理プログラムは、前記バッファに格納された前記外部音声のデータが予め定められた有効期間内であるか否かを判定する判定ステップと、前記判定ステップにより有効期間内でないと判定された場合に、対応する前記外部音声のデータを、前記外部音声処理ステップによる処理の対象から除外する第１の除外ステップとを音声処理装置としてのコンピュータに実行させるようにしてもよい。
【００４２】
また、本発明に係る音声処理プログラムは、前記最新の外部音声のデータよりも過去に格納された外部音声のデータを、前記外部音声処理ステップによる処理の対象から除外する第２の除外ステップを音声処理装置としてのコンピュータに実行させるようにしてもよい。
【発明の効果】
【００４３】
本発明によれば、音声処理に応じて定まる外部音声データが読み出されて、当該外部音声データを使用した音声処理が行われるため、外部音声データを使用した適切な音声処理を行うことが可能となる。
【発明を実施するための最良の形態】
【００４４】
以下、本発明の実施の形態について、図面を参照して具体的に説明する。図１は、本発明の実施形態に係る音声処理装置の構成を示す図である。図１に示す音声処理装置１００は、例えば車両に搭載されるナビゲーション装置内に構成されるものであり、ＣＰＵ１０２、マイク１０４、アナログ・デジタルコンバータ（ＡＤＣ）１０６、デジタル・アナログコンバータ（ＤＡＣ）１０８、スピーカ１１０及びメモリ１１２により構成される。
【００４５】
ＣＰＵ１０２は、音声処理用のアプリケーションソフトウェア、音声入出力用のサウンドドライバソフトウェア、ナビゲーション用のアプリケーションソフトウェア、オーディオ再生用のアプリケーションソフトウェア、通信用のアプリケーションソフトウェア等の各種のアプリケーションソフトウェアを実行する。これらのソフトウェアはメモリ１１２に記憶されており、ＣＰＵ１０２は、当該メモリ１１２から必要に応じて各ソフトウェアを読み出して実行する。また、これらソフトウェアのうち、音声処理用のアプリケーションソフトウェアは、音声再生モジュール、音声認識モジュール及び出力音声調整モジュール等により構成される。
【００４６】
次に、音声処理装置１００の出力音声調整処理を説明する。図２は、音声処理装置１００による出力音声調整処理を示すシーケンス図である。音声処理装置１００内のＣＰＵ１０２のリソースが音声処理用のアプリケーションソフトウェアに割り当てられている間、ＣＰＵ１０２によって、当該音声処理用のアプリケーションソフトウェアが実行される。
【００４７】
ＣＰＵ１０２は、音声処理用のアプリケーションソフトウェアの実行によって、メモリ１１２に設けられたバッファのうち、複数の空のバッファをＭＩＣデータの格納領域として特定する（Ｓ１０１）。
【００４８】
図３は、ＭＩＣデータの格納領域として特定される空のバッファについてのリスト（バッファリスト）の一例を示す図である。図３に示すバッファリストは、バッファ毎のバッファ情報によって構成され、当該バッファ情報は、対応するバッファの識別情報であるバッファＩＤと、対応するバッファの格納状況（空の場合は「空」、ＭＩＣデータが格納されている場合は「満」）と、対応するバッファにＭＩＣデータが格納された場合の格納時刻とからなる。バッファ毎のバッファ情報の並び順は、当該バッファ情報に対応するバッファのキュー（後述）への登録順と一致する。ＣＰＵ１０２は、このバッファリストを作成してメモリ１１２に記憶させる。
【００４９】
再び、図２に戻って説明する。次に、ＣＰＵ１０２は、音声処理用のアプリケーションソフトウェアの実行によって、サウンドドライバに対して、複数の空のバッファのキューへの登録を要求する（Ｓ１０２）。この登録要求には、複数の空のバッファの識別情報としてのバッファＩＤが含まれる。更に、ＣＰＵ１０２は、サウンドドライバの実行により、空のバッファを待機させておくキューを用意し、Ｓ１０２において登録要求された複数の空のバッファを、そのキューに順に登録する（Ｓ１０３）。
【００５０】
図４は、バッファのキューへの登録処理の一例を示す図である。音声処理用のアプリケーションソフトウェアの実行によって、バッファＡ乃至Ｅが空のバッファとして特定されると、サウンドドライバの実行によって、これらバッファＡ乃至Ｅがキューに先頭から順に登録される。
【００５１】
再び、図２に戻って説明する。その後、ＣＰＵ１０２は、音声処理用のアプリケーションソフトウェアの実行によって、サウンドドライバに対して録音開始命令を出す（Ｓ１０４）。更に、ＣＰＵ１０２は、サウンドドライバの実行によって、この録音開始命令に応じて、マイク１０４によって検出された外部音声（車室内の音声）をＡＤＣ１０６によってデジタル化して得られるＭＩＣデータを取り込んで、キューの登録順に空のバッファに格納する（Ｓ１０５）。ここでは、キューに登録されたバッファのうち、キューの先頭に近いバッファから順にＭＩＣデータが格納される。
【００５２】
そして、バッファにＭＩＣデータが格納されると、ＣＰＵ１０２は、サウンドドライバの実行によって、以下の処理を行う。まず、ＣＰＵ１０２は、メモリ１１２に格納されたバッファリストを読み出し、ＭＩＣデータが格納されたバッファのバッファＩＤを含むバッファ情報内の格納状況に、ＭＩＣデータが格納されていることを示す「満」を設定するとともに、格納時刻に、そのＭＩＣデータが格納された時刻を設定する（Ｓ１０６）。更に、ＣＰＵ１０２は、バッファへの録音完了を音声処理用のアプリケーションソフトウェアへ通知する（Ｓ１０７）。この通知（バッファ録音完了通知）には、ＭＩＣデータが格納されたバッファのバッファＩＤが含まれている。
【００５３】
バッファへの録音完了が通知されると、ＣＰＵ１０２は、音声処理用のアプリケーションソフトウェアの実行によって、バッファ内の最新のＭＩＣデータを使用して、出力音声を調整する処理を行う（Ｓ１０８）。
【００５４】
図５は、出力音声調整処理の動作を示すフローチャートである。ＣＰＵ１０２は、音声処理用のアプリケーションソフトウェアの実行によって、以下の処理を行う。まず、ＣＰＵ１０２は、バッファ録音完了通知を取得する（Ｓ１５１）。更に、ＣＰＵ１０２は、メモリ１１２に格納されたバッファリストを読み出し、最新のＭＩＣデータが格納されたバッファを特定する。具体的には、ＣＰＵ１０２は、バッファリストにおいて、バッファ録音完了通知時に含まれるバッファＩＤよりも、下位のバッファＩＤを含むバッファ情報内の格納状況を調べ、その格納状況に「満」が設定されているバッファ情報内のバッファＩＤのうち、最下位のバッファＩＤのバッファを、最新のＭＩＣデータが格納されたバッファとして特定する（Ｓ１５２）。
【００５５】
次に、ＣＰＵ１０２は、Ｓ１５２において特定したバッファに格納されたＭＩＣデータよりも新しいＭＩＣデータを使用した音声調整処理が既に済んでいるか否かを判定する（Ｓ１５３）。具体的には、ＣＰＵ１０２は、バッファリストにおいて、最新のＭＩＣデータが格納されたバッファに対応するバッファ情報よりも下位のバッファ情報に対応するバッファに格納されたＭＩＣデータを直前の音声調整処理において使用している場合には、Ｓ１５３において肯定判断される。
【００５６】
Ｓ１５２において特定したバッファに格納されたＭＩＣデータよりも新しいＭＩＣデータを使用した音声調整処理が済んでいない場合には、次に、ＣＰＵ１０２は、Ｓ１５２において特定したバッファ内の最新のＭＩＣデータが有効期間内であるか否かを判定する（Ｓ１５４）。具体的には、ＣＰＵ１０２は、バッファリストにおいて、最新のＭＩＣデータが格納されたバッファに対応するバッファ情報内の格納時刻を取得し、当該格納時刻から現在までの経過時間が予め定められた所定期間内であるか否かを判定する。
【００５７】
最新のＭＩＣデータが有効期間内である場合には、次に、ＣＰＵ１０２は、Ｓ１５２において特定したバッファ内の最新のＭＩＣデータを読み出し（Ｓ１５５）、その最新のＭＩＣデータを使用した音声調整処理を行う（Ｓ１５６）。具体的には、ＣＰＵ１０２は、最新のＭＩＣデータに基づいて外部音声のレベルを認識し、その外部音声のレベルに応じてガイダンス音声のレベルを設定し、その設定したレベルに応じてデジタルのガイダンス音声のデータを補正する。ここでは、外部音声のレベルが高いほど、ガイダンス音声のレベルが高くなるように、補正される。更に、ＣＰＵ１０２は、サウンドドライバの実行によって、補正後のガイダンス音声を再生する。補正後のガイダンス音声のデータは、ＤＡＣ１０８によってアナログ化され、スピーカ１１０からガイダンス音声が出力される。
【００５８】
次に、ＣＰＵ１０２は、Ｓ１５６における出力音声調整処理に使用した最新のＭＩＣデータと、当該最新のＭＩＣデータよりも過去のＭＩＣデータとをバッファから削除する（Ｓ１５７）。上述したＳ１５６において、最新のＭＩＣデータを使用した出力音声調整処理が行われているため、当該最新のＭＩＣデータは不要であり、当該最新のＭＩＣデータよりも過去のＭＩＣデータも、出力音声調整処理にリアルタイム性が要求されることを鑑みれば、同様に不要である。このため、Ｓ１５７では、最新のＭＩＣデータと、当該最新のＭＩＣよりも過去のＭＩＣデータとがバッファから削除され、出力音声調整処理の対象から除外される。
【００５９】
具体的には、ＣＰＵ１０２は、バッファリストにおいて、最新のＭＩＣデータが格納されたバッファに対応するバッファ情報内のバッファＩＤを取得し、そのバッファＩＤにより特定されるバッファ内のＭＩＣデータを削除する。更に、ＣＰＵ１０２は、バッファリストにおいて、最新のＭＩＣデータが格納されたバッファに対応するバッファ情報よりも上位に設定されているバッファ情報を、最新のＭＩＣデータよりも過去のＭＩＣデータが格納されたバッファに対応するバッファ情報として特定する。そして、ＣＰＵ１０２は、特定したバッファ情報内のバッファＩＤを取得し、そのバッファＩＤにより特定されるバッファ内のＭＩＣデータを削除する。
【００６０】
次に、ＣＰＵ１０２は、サウンドドライバに対して、Ｓ１５７においてＭＩＣデータを削除することによって空になったバッファのキューへの登録要求を行うとともに、バッファリストを更新する（Ｓ１５８）。具体的には、ＣＰＵ１０２は、バッファリストにおいて、Ｓ１５７にてＭＩＣデータを削除したバッファに対応するバッファ情報内のバッファＩＤを取得し、当該バッファＩＤを含んだ登録要求を行う。更に、ＣＰＵ１０２は、バッファリストにおいて、Ｓ１５７にてＭＩＣデータを削除したバッファに対応するバッファ情報内の格納状況が「満」である場合には「空」に更新し、格納時刻が設定されている場合には、その格納時刻を削除する。更に、ＣＰＵ１０２は、Ｓ１５７にてＭＩＣデータを削除したバッファに対応するバッファ情報をバッファリストの末尾に移動させる。
【００６１】
空になったバッファのキューへの登録要求と、バッファリストの更新との後、ＣＰＵ１０２は、バッファ録音完了通知の取得待ち状態となる（Ｓ１５９）。その後は、再び、Ｓ１５１におけるバッファ録音完了通知の取得（Ｓ１５１）以降の動作が繰り返される。
【００６２】
一方、何らかの不具合が生じたことによって、Ｓ１５３において、Ｓ１５２にて特定したバッファに格納されたＭＩＣデータよりも新しいＭＩＣデータを使用した音声調整処理が済んでいると判定した場合には、ＣＰＵ１０２は、バッファ内の全てのＭＩＣデータを削除する（Ｓ１６０）。Ｓ１５２にて特定したバッファに格納されたＭＩＣデータよりも新しいＭＩＣデータを使用した音声調整処理が済んでいる場合には、バッファに格納されているＭＩＣデータは、その音声調整処理に使用されたＭＩＣデータよりも過去のＭＩＣデータであり、出力音声調整処理にリアルタイム性が要求されることを鑑みれば、不要である。このため、Ｓ１６０では、バッファに格納された全てのＭＩＣデータが当該バッファから削除される。
【００６３】
また、Ｓ１５４において、最新のＭＩＣデータが有効期間内でないと判定した場合にも、ＣＰＵ１０２は、バッファ内の全てのＭＩＣデータを削除する（Ｓ１６０）。最新のＭＩＣデータが有効期間内でない場合には、その最新のＭＩＣデータのみならず、当該最新のＭＩＣデータよりも過去のＭＩＣデータも有効期間内でなく、出力音声調整処理にリアルタイム性が要求されることを鑑みれば、不要である。このため、Ｓ１６０では、バッファに格納された全てのＭＩＣデータが当該バッファから削除され、出力音声調整処理の対象から除外される。
【００６４】
Ｓ１６０において、バッファ内の全てのＭＩＣデータが削除された場合、次に、ＣＰＵ１０２は、サウンドドライバに対して、Ｓ１６０においてＭＩＣデータを削除することによって空になったバッファのキューへの登録要求を行うとともに、バッファリストの更新とを行う（Ｓ１５８）。具体的には、ＣＰＵ１０２は、バッファリストにおいて、Ｓ１６０にてＭＩＣデータを削除したバッファに対応するバッファ情報内のバッファＩＤを取得し、当該バッファＩＤを含んだ登録要求を行う。次に、ＣＰＵ１０２は、バッファリストにおいて、Ｓ１６０にてＭＩＣデータを削除したバッファに対応するバッファ情報内の格納状況が「満」である場合には「空」に更新し、格納時刻が設定されている場合には、その格納時刻を削除する。更に、ＣＰＵ１０２は、Ｓ１６０にてＭＩＣデータを削除したバッファに対応するバッファ情報をバッファリストの末尾に移動させる。
【００６５】
空になったバッファのキューへの登録要求と、バッファリストの更新との後、ＣＰＵ１０２は、バッファ録音完了通知の取得待ち状態となる（Ｓ１５９）。その後は、再び、Ｓ１５１におけるバッファ録音完了通知の取得（Ｓ１５１）以降の動作が繰り返される。
【００６６】
再び、図２に戻って説明する。ＣＰＵ１０２は、音声処理用のアプリケーションソフトウェアの実行によって、サウンドドライバに対して、空のバッファをキューの末尾に登録するように要求する（Ｓ１０９）。更に、ＣＰＵ１０２は、サウンドドライバの実行によって、登録が要求されたバッファを、キューの末尾に登録する（Ｓ１１０）。
【００６７】
以下、上述したＳ１０６乃至Ｓ１１０の動作の具体例を説明する。まず、１つのバッファにのみＭＩＣデータが格納されている場合について説明する。この場合、図６に示すように、サウンドドライバにおけるキューの先頭に登録されたバッファ（ここではバッファＡ）にＭＩＣデータが格納されることになる。そして、図７に示すように、バッファリストの最上位であるバッファＡに対応するバッファ情報内の格納状況が「満」となり、格納時刻が設定され、当該バッファＡへのＭＩＣデータの格納が完了したことを示すバッファ録音完了通知がなされる。
【００６８】
その後、図８に示すように、バッファＡに格納されたＭＩＣデータが読み出されて、音声処理用のアプリケーションソフトウェアにおける受付部に受け付けられ、更に、図９に示すように、処理部によって処理される。処理が終了すると、図１０に示すように、バッファＡに格納されたＭＩＣデータが削除され、空になったバッファＡがキューの末尾に登録される。また、図１１に示すように、バッファリストにおけるバッファＡに対応するバッファ情報内の格納状況が「満」から「空」に更新されるとともに、格納時刻が削除され、更に、バッファＡに対応するバッファ情報が末尾に移動する。これにより、キューにおけるバッファの登録状況及びバッファの格納状況と、バッファリストの内容との整合が図られる。
【００６９】
次に、音声処理用のアプリケーションソフトウェアの実行が滞ることによって、複数のバッファにＭＩＣデータが格納される場合について説明する。この場合、図１２に示すように、サウンドドライバにおけるキューの先頭のバッファから順次複数のバッファ（ここでは、バッファＡ乃至Ｃ）にＭＩＣデータが格納される。これらバッファＡ乃至Ｃに格納されたＭＩＣデータのうち、最新のものはバッファＣに格納されたＭＩＣデータである。この場合、図１３に示すように、バッファリストにおける、バッファＡ乃至Ｃに対応するバッファ情報内の格納状況が「満」となり、格納時刻が設定され、バッファＡ乃至ＣへのＭＩＣデータの格納が完了したことを示すバッファ録音完了通知がなされている。
【００７０】
その後、図１４に示すように、バッファＡ乃至Ｃに格納されたＭＩＣデータのうち、最新のＭＩＣデータであるバッファＣに格納されたＭＩＣデータが読み出されて、音声処理用のアプリケーションソフトウェアにおける受付部に受け付けられ、更に、図１５に示すように、処理部によって処理される。処理が終了すると、図１６に示すように、処理に使用されたバッファＣに格納された最新のＭＩＣデータが削除されるとともに、当該最新のＭＩＣデータよりも過去のＭＩＣデータである、バッファＡ及びＢに格納されたＭＩＣデータが削除され、空になったバッファＡ乃至Ｃがキューの末尾に登録される。
【００７１】
また、バッファリストにおけるバッファＣに対応するバッファ情報内の格納状況が「満」から「空」に更新されるとともに、格納時刻が削除され、更に、バッファＣに対応するバッファ情報よりも上位であるバッファＡ及びＢに対応するバッファ情報と、バッファＣに対応するバッファ情報とが末尾に移動する（図１７参照）。これにより、キューにおけるバッファの登録状況及びバッファの格納状況と、バッファリストの内容との整合が図られる。
【００７２】
このように、本実施形態の音声処理装置１００は、音声処理用のアプリケーションソフトウェアの実行が滞ることによって、複数のバッファにＭＩＣデータが格納されている場合には、これら複数のバッファに格納されたＭＩＣデータのうち、最新のＭＩＣデータを読み出して、その最新のＭＩＣデータを使用した出力音声調整処理を行う。従って、従来のように、複数のバッファにＭＩＣデータが格納されている場合に、過去のＭＩＣデータから順に使用して出力音声調整処理を行うことがなく、リアルタイム性を要求される出力音声調整処理を適切に行うことができる。
【００７３】
また、本実施形態の音声処理装置１００は、キューに登録された各バッファの登録順、当該バッファにおけるＭＩＣデータの格納状況、及び、当該バッファにおけるＭＩＣデータの格納時刻を表すバッファリストを用いることにより、最新のＭＩＣデータが格納されているバッファを的確に特定することができるとともに、バッファに格納されたＭＩＣデータが有効期間内であるか否かを適切に判断することが可能となる。
【００７４】
また、本実施形態の音声処理装置１００は、バッファに格納されたＭＩＣデータが有効期間内でない場合や、出力音声調整処理に使用された最新のＭＩＣデータよりも過去の場合には、そのＭＩＣデータは出力音声調整処理には不要であるとみなして削除することで、バッファの有効利用を図ることができる。
【００７５】
なお、上述した実施形態では、出力音声調整処理に使用された最新のＭＩＣデータよりも過去の場合には、そのＭＩＣデータは出力音声調整処理には不要であるとみなして削除したが、削除せずに出力音声調整処理に使用するようにしてもよい。この場合、ＣＰＵ１０２は、図５のＳ１５５乃至Ｓ１５７の動作に代えて、以下の動作を行う。
【００７６】
ＣＰＵ１０２は、最新のＭＩＣデータが格納されたバッファとして特定したバッファ内のその最新のＭＩＣデータを読み出すとともに、当該最新のＭＩＣデータよりも過去のＭＩＣデータをバッファから読み出す。具体的には、ＣＰＵ１０２は、バッファリストにおいて、最新のＭＩＣデータが格納されたバッファに対応するバッファ情報よりも上位に設定されているバッファ情報を、最新のＭＩＣデータよりも過去のＭＩＣデータが格納されたバッファに対応するバッファ情報として特定する。そして、ＣＰＵ１０２は、その特定したバッファに対応するバッファ情報内のバッファＩＤを取得し、そのバッファＩＤにより特定されるバッファ内のＭＩＣデータを読み出す。
【００７７】
更に、ＣＰＵ１０２は、読み出した最新のＭＩＣデータと、当該最新のＭＩＣデータよりも過去のＭＩＣデータとを使用した音声調整処理を行う。具体的には、ＣＰＵ１０２は、最新のＭＩＣデータと、当該最新のＭＩＣデータよりも過去のＭＩＣデータとに基づいて、外部音声の平均レベルを認識し、その外部音声の平均レベルに応じてガイダンス音声のレベルを設定し、その設定したレベルに応じてデジタルのガイダンス音声のデータを補正する。更に、ＣＰＵ１０２は、サウンドドライバの実行によって、補正後のガイダンス音声を再生する。補正後のガイダンス音声のデータは、ＤＡＣ１０８によってアナログ化され、スピーカ１１０からガイダンス音声が出力される。
【００７８】
次に、ＣＰＵ１０２は、出力音声調整処理に使用したＭＩＣデータ、換言すれば、最新のＭＩＣデータと、当該最新のＭＩＣデータよりも過去のＭＩＣデータとをバッファから削除する。具体的には、ＣＰＵ１０２は、バッファリストにおいて、最新のＭＩＣデータが格納されたバッファに対応するバッファ情報内のバッファＩＤを取得し、そのバッファＩＤにより特定されるバッファ内のＭＩＣデータを削除する。更に、ＣＰＵ１０２は、バッファリストにおいて、最新のＭＩＣデータが格納されたバッファに対応するバッファ情報よりも上位に設定されているバッファ情報内のバッファＩＤを取得し、そのバッファＩＤにより特定されるバッファ内のＭＩＣデータを削除する。
【００７９】
その後は、上述と同様、ＣＰＵ１０２は、サウンドドライバに対して、ＭＩＣデータを削除することによって空になったバッファのキューへの登録要求を行うとともに、バッファリストを更新する。
【００８０】
また、上述した実施形態では、有効期間内にないＭＩＣデータについては出力音声調整処理に使用せずに削除したが、当該ＭＩＣデータについても出力音声調整処理に使用するようにしてもよい。
【００８１】
また、上述した実施形態では、ＭＩＣデータの格納状態を、バッファリスト（リスト構造）によって管理したが、例えば、スタック等の構造を用いて管理してもよい。
【産業上の利用可能性】
【００８２】
以上、説明したように、本発明に係る音声処理装置、音声処理方法及び音声処理プログラムは、外部音声データを使用した適切な音声処理を行うことが可能であり、音声処理装置等として有用である。
【図面の簡単な説明】
【００８３】
【図１】本発明の実施形態に係る音声処理装置の構成を示す図である。
【図２】音声処理装置の動作を示すシーケンス図である。
【図３】バッファリストの第１の例を示す図である。
【図４】キューへのバッファ登録処理の第１の例を示す図である。
【図５】出力音声調整処理の動作を示すフローチャートである。
【図６】バッファへのＭＩＣデータの格納処理の第１の例を示す図である。
【図７】バッファリストの第２の例を示す図である。
【図８】バッファからのＭＩＣデータの読み出しの第１の例を示す図である。
【図９】ＭＩＣデータを使用した出力音声調整処理の第１の例を示す図である。
【図１０】キューへのバッファ登録処理の第２の例を示す図である。
【図１１】バッファリストの第３の例を示す図である。
【図１２】バッファへのＭＩＣデータの格納処理の第２の例を示す図である。
【図１３】バッファリストの第３の例を示す図である。
【図１４】バッファからのＭＩＣデータの読み出しの第２の例を示す図である。
【図１５】ＭＩＣデータを使用した出力音声調整処理の第２の例を示す図である。
【図１６】キューへのバッファ登録処理の第３の例を示す図である。
【図１７】バッファリストの第４の例を示す図である。
【図１８】従来の音声処理の動作を示す第１のシーケンス図である。
【図１９】従来のバッファへのＭＩＣデータの格納処理の一例を示す図である。
【図２０】従来の音声処理の動作を示す第２のシーケンス図である。
【図２１】従来のＭＩＣデータを使用した音声処理の第１の例を示す図である。
【図２２】従来のＭＩＣデータを使用した音声処理の第２の例を示す図である。
【図２３】従来のＭＩＣデータを使用した音声処理の第３の例を示す図である。
【符号の説明】
【００８４】
１００  音声処理装置
１０２  ＣＰＵ
１０４  マイク
１０６  ＡＤＣ
１０８  ＤＡＣ
１１０  スピーカ
１１２  メモリ
【図１】
0005278993.tif 000002
【図２】
0005278993.tif 000003
【図３】
0005278993.tif 000004
【図４】
0005278993.tif 000005
【図５】
0005278993.tif 000006
【図６】
0005278993.tif 000007
【図７】
0005278993.tif 000008
【図８】
0005278993.tif 000009
【図９】
0005278993.tif 000010
【図１０】
0005278993.tif 000011
【図１１】
0005278993.tif 000012
【図１２】
0005278993.tif 000013
【図１３】
0005278993.tif 000014
【図１４】
0005278993.tif 000015
【図１５】
0005278993.tif 000016
【図１６】
0005278993.tif 000017
【図１７】
0005278993.tif 000018
【図１８】
0005278993.tif 000019
【図１９】
0005278993.tif 000020
【図２０】
0005278993.tif 000021
【図２１】
0005278993.tif 000022
【図２２】
0005278993.tif 000023
【図２３】
0005278993.tif 000024