(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-08-15
(45)【発行日】2023-08-23
(54)【発明の名称】検出プログラム、検出方法、検出装置
(51)【国際特許分類】
G10L 15/04 20130101AFI20230816BHJP
G10L 15/06 20130101ALI20230816BHJP
【FI】
G10L15/04 300C
G10L15/06 500P
(21)【出願番号】P 2019136079
(22)【出願日】2019-07-24
【審査請求日】2022-04-07
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】外川 太郎
(72)【発明者】
【氏名】中山 紗友梨
(72)【発明者】
【氏名】森岡 清訓
【審査官】中村 天真
(56)【参考文献】
【文献】特開2019-008131(JP,A)
【文献】特開2012-118251(JP,A)
【文献】特開2012-073361(JP,A)
【文献】特開2010-010869(JP,A)
【文献】特開2009-020460(JP,A)
【文献】特開2008-152125(JP,A)
【文献】特開2005-049876(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 13/00-25/93
H04R 1/14
(57)【特許請求の範囲】
【請求項1】
複数の発話者の音声が含まれる音声情報を取得し、
前記複数の発話者のうち、第1発話者に対して予め学習した音響特徴に基づいて、前記音声情報に含まれる前記第1発話者の第1発話区間を検出し、
前記第1発話区間外であって、前記第1発話区間から所定の時間範囲に含まれる音響特徴を基にして、前記複数の発話者のうち、第2発話者の第2発話区間を検出する
処理をコンピュータに実行させることを特徴とする検出プログラム。
【請求項2】
前記第1発話区間を検出する処理は、前記学習した音響特徴と、音声情報に含まれる音響特徴との類似性を基にして、前記第1発話区間を検出することを特徴とする請求項1に記載の検出プログラム。
【請求項3】
前記第1発話区間の音響特徴を基にして、前記学習した音響特徴を更新する処理を更に実行することを特徴とする請求項1または2に記載の検出プログラム。
【請求項4】
前記第1発話者の顔または発声器官の映像情報、または、前記発声器官の振動情報を取得し、前記第1発話区間を検出する処理は、前記映像情報、または、前記振動情報を更に用いて、前記第1発話区間を検出することを特徴とする請求項1、2または3に記載の検出プログラム。
【請求項5】
前記第1発話区間を検出する処理によって、前記第1発話区間を検出されてから、次の前記第1発話区間が検出されるまでの時間間隔の平均値を算出し、前記平均値に基づいて、前記所定の時間範囲を設定する処理を更に実行することを特徴とする請求項1~4のいずれか一つに記載の検出プログラム。
【請求項6】
複数の前記第1発話区間の平均区間長を算出し、前記第1発話区間が前記平均区間長未満である場合、前記所定の時間範囲を広げ、前記第1発話区間が前記平均区間長以上である場合、前記所定の時間範囲を狭める処理を更に実行することを特徴とする請求項5に記載の検出プログラム。
【請求項7】
前記第2発話区間を検出する処理は、前記第1発話区間外であって、前記第1発話区間から前記所定の時間範囲に含まれる複数のフレームの音響特徴の最頻値を特定し、前記最頻値
を含む一定範囲の音響特徴を有するフレームが含まれる区間を、前記第2発話区間として検出することを特徴とする請求項1~6のいずれか一つに記載の検出プログラム。
【請求項8】
前記第2発話区間を検出する処理は、前記第1発話区間外であって、前記第1発話区間から前記所定の時間範囲に含まれる複数のフレームの音響特徴と、前記学習した音響特徴との類似度の最頻値を特定し、前記最頻値に応じた閾値を特定し、特定した閾値を用いて、前記第2発話区間を検出することを特徴とする請求項1~6のいずれか一つに記載の検出プログラム。
【請求項9】
複数の発話者の音声が含まれる音声情報を取得し、
前記複数の発話者のうち、第1発話者に対して予め学習した音響特徴に基づいて、前記音声情報に含まれる前記第1発話者の第1発話区間を検出し、
前記第1発話区間外であって、前記第1発話区間から所定の時間範囲に含まれる音響特徴を基にして、前記複数の発話者のうち、第2発話者の第2発話区間を検出する
処理をコンピュータが実行することを特徴とする検出方法。
【請求項10】
複数の発話者の音声が含まれる音声情報を取得する取得部と、
前記複数の発話者のうち、第1発話者に対して予め学習した音響特徴に基づいて、前記音声情報に含まれる前記第1発話者の第1発話区間を検出する第1検出部と、
前記第1発話区間外であって、前記第1発話区間から所定の時間範囲に含まれる音響特徴を基にして、前記複数の発話者のうち、第2発話者の第2発話区間を検出する第2検出部と
を有することを特徴とする検出装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、検出プログラム等に関する。
【背景技術】
【0002】
各種の製品を販売する店舗では、店内に複数のカメラを設置し撮影した映像から顧客の行動を解析することで、企業のサービスや製品に対する要望、改善点の情報を得る取り組みが行われ始めている。顧客と店員の会話についても、今後、店員がマイクを装着して顧客と会話を行うことで、顧客の音声を録音することができれば、録音した顧客の音声を解析することで、企業のサービスや製品に対する要望、改善点等の情報を得ることが期待できる。
【0003】
ここで、店員のマイクによって録音される音声には、店員の音声と顧客の音声とが混合しているため、混合した音声から顧客の音声を抽出することが求められる。たとえば、事前登録した登録話者の音声と、入力音声との類似度の分布に基づいて、入力音声が、登録話者であるか否かを判定する従来技術がある。この従来技術を用いることで、店員の音声と顧客の音声とが混在した音声から、店員の音声を特定し、店員以外の音声を顧客の音声として抽出することができる。
【0004】
図22は、従来技術を用いて顧客の発話区間を特定する処理を説明するための図である。
図22の縦軸は音量(または、SNR(Signal-to-Noise Ratio))に対応する軸であり、横軸は時間に対応する軸である。線1aは、入力音声の音量と時間との関係を示すものである。前提として、
図22では、店員のマイクと、顧客との距離が近いものとする。以下の説明では、従来技術を実行する装置を、単に装置と表記する。
【0005】
装置は、店員の音声を事前登録しておき、店員の音声および顧客の音声の混在する入力音声と、登録された音声との類似度の分布に基づいて、店員の発話区間TAを特定する。装置は、店員の発話区間TA以外の発話区間のうち、音量が閾値Th以上となる区間TBを、顧客の発話区間として検出し、発話区間TBの音声を、顧客の音声として抽出する。
【先行技術文献】
【特許文献】
【0006】
【文献】特開2007-27918号公報
【文献】特開2013-140534号公報
【文献】特開2014-145932号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、上述した従来技術では、特定の発話者の発話区間を検出することができないという問題がある。
【0008】
たとえば、店員のマイクと、顧客との距離が近い場合には、
図22で説明したように、顧客の音声情報を抽出することが可能であるが、通常、対面の接客では、店員と顧客との距離は一定ではなく、距離が離れる場合も多い。店員と顧客との距離が離れると、顧客以外の雑音が、音声情報に含まれ、対応中の顧客の発話区間を検出することは難しい。顧客以外の雑音には、周囲の人の話し声等が含まれる。
【0009】
図23は、従来技術の問題を説明するための図である。
図23の縦軸は音量(または、SNR)に対応する軸であり、横軸は時間に対応する軸である。線1bは、入力音声の音量と時間との関係を示すものである。前提として、
図23では、店員のマイクと、顧客との距離が遠いものとする。
【0010】
店員の音声を事前登録しておき、店員の音声および顧客の音声の混在する入力音声と、登録された音声との類似度の分布に基づいて、店員の発話区間TAを特定する。一方、店員の発話区間TA以外の発話区間のうち、音量が閾値Th以上となる区間を、顧客の発話区間として検出すると、顧客の発話区間TBに、雑音の区間TCが含まれてしまう。また、顧客の発話区間TBと、雑音の区間TCとを区別することは難しい。
【0011】
1つの側面では、本発明は、特定の発話者の発話区間を検出することができる検出プログラム、検出方法、検出装置を提供することを目的とする。
【課題を解決するための手段】
【0012】
第1の案では、コンピュータに次の処理を実行させる。コンピュータは、複数の発話者の音声が含まれる音声情報を取得する。コンピュータは、複数の発話者のうち、第1発話者に対して予め学習した音響特徴に基づいて、音声情報に含まれる第1発話者の第1発話区間を検出する。コンピュータは、第1発話区間外であって、第1発話区間から所定の時間範囲に含まれる音響特徴を基にして、複数の発話者のうち、第2発話者の第2発話区間を検出する。
【発明の効果】
【0013】
特定の発話者の発話区間を検出することができる。
【図面の簡単な説明】
【0014】
【
図1】
図1は、本実施例1に係る検出装置の処理を説明するための図(1)である。
【
図2】
図2は、本実施例1に係る検出装置の処理を説明するための図(2)である。
【
図3】
図3は、本実施例1に係るシステムの一例を示す図である。
【
図4】
図4は、本実施例1に係る検出装置の構成を示す機能ブロック図である。
【
図5】
図5は、音響特徴の分布の一例を示す図である。
【
図6】
図6は、本実施例1に係る検出装置の処理手順を示すフローチャートである。
【
図7】
図7は、本実施例2に係る検出装置の処理を説明するための図(1)である。
【
図8】
図8は、本実施例2に係る検出装置の処理を説明するための図(2)である。
【
図9】
図9は、本実施例2に係る検出装置の処理を説明するための図(3)である。
【
図10】
図10は、本実施例2に係る検出装置の構成を示す機能ブロック図である。
【
図11】
図11は、本実施例2に係る学習音響特徴情報のデータ構造の一例を示す図である。
【
図12】
図12は、本実施例2に係る検出装置の処理手順を示すフローチャートである。
【
図13】
図13は、検出装置のその他の処理を説明するための図である。
【
図14】
図14は、本実施例3に係るシステムの一例を示す図である。
【
図15】
図15は、本実施例3に係る検出装置の構成を示す機能ブロック図である。
【
図16】
図16は、本実施例3に係る音声認識装置の構成を示す機能ブロック図である。
【
図17】
図17は、本実施例3に係る検出装置の処理手順を示すフローチャートである。
【
図18】
図18は、本実施例4に係るシステムの一例を示す図である。
【
図19】
図19は、本実施例4に係る検出装置の構成を示す機能ブロック図である。
【
図20】
図20は、本実施例4に係る検出装置の処理手順を示すフローチャートである。
【
図21】
図21は、検出装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【
図22】
図22は、従来技術を用いて顧客の発話区間を特定する処理を説明するための図である。
【
図23】
図23は、従来技術の問題を説明するための図である。
【発明を実施するための形態】
【0015】
以下に、本願の開示する検出プログラム、検出方法、検出装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例1】
【0016】
図1および
図2は、本実施例1に係る検出装置の処理を説明するための図である。本実施例1に係る検出装置は、第1発話者が発話する音声の音響特徴を予め学習しておく。以下の説明において、学習済みの音響特徴を「学習音響特徴」と表記する。検出装置は、第1発話者の音声と、第2発話者の音声と、第1、2発話者以外の発話者の音声とを含む音声の情報(以下、音声情報)を取得する。たとえば、第1発話者は店員に対応し、第2発話者は顧客に対応する。音声情報は、第1発話者に取り付けられたマイクから集音される音声の情報である。
【0017】
図1の縦軸は音量(または、SNR)に対応する軸であり、横軸は時間に対応する軸である。線1cは、音声情報の音量と時間との関係を示すものである。検出装置は、音声情報と、学習音響特徴とを基にして、音声情報に含まれる第1発話者の第1発話区間T
A1,T
A2を検出する。図示を省略するが、第1発話区間T
A1の開始時刻をS
A1とし、終了時刻をE
A1とする。第1発話区間T
A2の開始時刻をS
A2とし、終了時刻をE
A2とする。以下の説明では、第1発話区間T
A1,T
A2をまとめて、適宜、第1発話区間T
Aと表記する。
【0018】
検出装置は、第1発話区間T
Aを基準とした探索範囲を設定する。探索範囲は、所定の時間範囲の一例である。
図1に示す例では、探索範囲T
1-1、T
1-2、T
2-1、T
2-2が設定される。探索範囲T
1-1の開始時刻はS
A1-D、終了時刻はS
A1である。探索範囲T
1-2の開始時刻はE
A1、終了時刻はE
A1+Dである。探索範囲T
1-2の開始時刻はS
A2-D、終了時刻はS
A2である。探索範囲T
1-2の開始時刻はE
A2、終了時刻はE
A2+Dである。Dは、先の第1発話区間の終了時刻から、次の第1発話区間の開始時刻までの平均的な時間間隔である。
【0019】
検出装置は、探索範囲T1-1,T1-2に含まれる音声情報について、音響特徴と頻度との関係を特定する。たとえば、探索範囲T1-1,T1-2に含まれる音声情報は、複数のフレームによって分割されており、フレーム毎に音響特徴が算出されているものとする。探索範囲T1-1,T1-2に含まれる音声情報の複数のフレームの区間は、第2発話者の第2発話区間の候補となる区間である。
【0020】
図2の縦軸は頻度に対応する軸であり、横軸は音響特徴に対応する軸である。音響特徴は、ピッチ周波数、フレームパワー、フォルマント周波数、音声到来方向のうち、少なくとも一つの特徴に対応する。検出装置は、音響特徴と頻度との関係を基にして、最頻値Fを特定する。検出装置は、第2発話区間の候補となる複数のフレームのうち、最頻値Fを基準とする一定範囲T
Fの音響特徴を有するフレームの範囲を、第2発話区間として検出する。
【0021】
検出装置は、探索範囲T2-1,T2-2に含まれる音声情報についても同様にして、音響特徴と頻度との関係を基にして、第2発話区間を検出する。
【0022】
上記のように、本実施例1に係る検出装置は、第1発話者の学習音響特徴に基づいて、複数の話者の音声情報から、第1発話者の第1発話区間を検出し、第1発話区間外の一定範囲に含まれる探索範囲の音響特徴を基にして、第2発話者の第2発話区間を検出する。これによって、複数の発話者の音声を含む音声情報から、第2発話者の発話区間を精度よく検出することができる。
【0023】
次に、本実施例1にかかるシステムの構成について説明する。
図3は、本実施例1に係るシステムの一例を示す図である。
図3に示すように、このシステムは、マイク端末10と、検出装置100とを有する。たとえば、マイク端末10と、検出装置100とは、無線によって相互に接続される。なお、マイク端末10と、検出装置100とを有線で接続してもよい。
【0024】
マイク端末10は、発話者1Aに取り付けられる。発話者1Aは、顧客に接客を行う店員に対応する。発話者1Aは、第1発話者の一例である。発話者1Bは、発話者1Aから接客を受ける顧客に対応する。発話者1Bは、第2発話者の一例である。発話者1A,1Bの周りには、発話者1Aが接客を行っていない発話者1Cが存在しているものとする。
【0025】
マイク端末10は、音声を収録する装置である。マイク端末10は、音声情報を検出装置100に送信する。音声情報には、発話者1A~1Cの音声の情報が含まれる。マイク端末10は、複数のマイクを備えていてもよい。マイク端末10は、複数のマイクを備えている場合、各マイクで集音した音声情報を、検出装置100に送信する。
【0026】
検出装置100は、マイク端末10から音声情報を取得し、発話者1Aの学習音響特徴に基づいて、音声情報から発話者1Aの発話区間を検出する。検出装置100は、検出した発話者1Aの発話区間外の一滴範囲に含まれる探査区間の音響特徴を基にして、発話者1Bの発話区間を検出する。
【0027】
図4は、本実施例1に係る検出装置の構成を示す機能ブロック図である。
図4に示すように、この検出装置100は、通信部110と、入力部120と、表示部130と、記憶部140と、制御部150とを有する。
【0028】
通信部110は、無線によって、マイク端末10とデータ通信を実行する処理部である。通信部110は、通信装置の一例である。通信部110は、マイク端末10から音声情報を受信し、受信した音声情報を、制御部150に出力する。なお、検出装置100は、有線によって、マイク端末10に接続してもよい。検出装置100は、通信部110によってネットワークに接続し、外部装置(図示略)とデータを送受信してもよい。
【0029】
入力部120は、検出装置100に各種の情報を入力するための入力装置である。入力部120は、キーボードやマウス、タッチパネル等に対応する。
【0030】
表示部130は、制御部150から出力される情報を表示する表示装置である。表示部130は、液晶ディスプレイやタッチパネル等に対応する。
【0031】
記憶部140は、音声バッファ140aと、学習音響特徴情報140bと、音声認識情報140cとを有する。記憶部140は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子や、HDD(Hard Disk Drive)などの記憶装置に対応する。
【0032】
音声バッファ140aは、マイク端末10から送信される音声情報を格納するバッファである。音声情報では、音声信号と時刻とが対応付けられる。
【0033】
学習音響特徴情報140bは、予め学習される発話者1A(第1発話者)の音声の音響特徴の情報である。音響特徴には、ピッチ周波数、フレームパワー、フォルマント周波数、音声到来方向が含まれる。たとえば、学習音響特徴情報140bは、ピッチ周波数、フレームパワー、フォルマント周波数、音声到来方向の値をそれぞれ要素とするベクトルである。
【0034】
音声認識情報140cは、発話者1Bの第2発話区間の音声情報を文字列に変換した情報である。
【0035】
制御部150は、取得部150aと、第1検出部150bと、第2検出部150cと、認識部150dとを有する。制御部150は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などのハードワイヤードロジック等によって実現される。
【0036】
取得部150aは、通信部110を介して、マイク端末10から音声情報を取得する処理部である。取得部150aは、音声情報を順次、音声バッファ140aに格納する。
【0037】
第1検出部150bは、音声バッファ140aから音声情報を取得し、学習音響特徴情報140bを基にして、発話者1A(第1発話者)の第1発話区間を検出する処理部である。第1検出部150bは、音声区間検出処理、音響解析処理、類似性評価処理を行う。
【0038】
まず、第1検出部150bが実行する「音声区間検出処理」の一例について説明する。第1検出部150bは、音声情報のパワーを特定し、パワーが閾値未満となる無音区間に挟まれた区間を、音声区間として検出する。第1検出部150bは、国際公開第2009/145192号に開示された技術を用いて、音声区間を検出してもよい。
【0039】
第1検出部150bは、音声区間によって区切られる音声情報を、固定長のフレームに分割する。第1検出部150bは、各フレームのフレームを識別するフレーム番号を設定する。第1検出部150bは、各フレームに対して、後述する音響解析処理、類似性評価処理を実行する。
【0040】
続いて、第1検出部150bが実行する「音響解析処理」の一例について説明する。たとえば、第1検出部150bは、音声情報に含まれる音声区間の各フレームを基にして、音響特徴を算出する。第1検出部150bは、音響特徴として、ピッチ周波数、フレームパワー、フォルマント周波数、音声到来方向をそれぞれ算出する。
【0041】
第1検出部150bが、音響特徴として「ピッチ周波数」を算出する処理の一例について説明する。第1検出部150bは、RAPT(A Robust Algorithm for Pitch Tracking)の推定手法を用いて、フレームに含まれる音声信号のピッチ周波数p(n)を算出する。「n」はフレーム番号を示す。第1検出部150bは、「D.Talkin,"A Robust Algorithm for Pitch Tracking (RAPT),"in Speech Coding & Synthesis,W.B. Kleijn and K. K. Pailwal (Eds.),Elsevier,pp.495-518,1995」に記載された技術を用いて、ピッチ周波数を算出してもよい。
【0042】
第1検出部150bが、音響特徴として「フレームパワー」を算出する処理の一例について説明する。たとえば、第1検出部150bは、式(1)に基づいて、所定長のフレームにおけるパワーS(n)を算出する。式(1)において、「n」はフレーム番号を示し、「M」は1フレームの時間長(たとえば、20ms)を示し、「t」は時間を示す。「C(t)」は、時間tにおける音声信号を示す。なお、第1検出部150bは、所定の平滑化係数を用いて、時間平滑化したパワーを、フレームパワーとして算出してもよい。
【0043】
【0044】
第1検出部150bが、音響特徴として「フォルマント周波数」を算出する処理の一例について説明する。第1検出部150bは、フレームに含まれる音声信号C(t)に対して線形予測(Linear Prediction Coding)分析を行い、複数のピークを抽出することで、複数のフォルマント周波数を算出する。たとえば、第1検出部150bは、周波数の低い順に、第1フォルマント周波数:F1、第2フォルマント周波数:F2、第3フォルマント周波数:F3を算出する。第1検出部150bは、特開昭62-54297号公報に開示された技術を用いて、フォルマント周波数を算出してもよい。
【0045】
第1検出部150bが、音響特徴として「音声到来方向」を算出する処理の一例について説明する。第1検出部150bは、2つのマイクに収録された音声情報の位相差を基にして、音声到来方向を算出する。
【0046】
この場合、第1検出部150bは、マイク端末10の複数のマイクによって収録された各音声情報から、音声区間をそれぞれ検出し、各音声区間の同一時間のフレームの音声情報を比較して、位相差を算出する。第1検出部150bは、特開2008-175733号公報に開示された技術を用いて、音声到来方向を算出してもよい。
【0047】
第1検出部150bは、上記の音響解析処理を実行することで、音声情報の音声区間に含まれる各フレームの音響特徴をそれぞれ算出する。第1検出部150bは、音響特徴として、ピッチ周波数、フレームパワー、フォルマント周波数、音声到来方向のうち、少なくとも一つを、音響特徴として用いてもよいし、複数の組み合わせを音響特徴として用いてもよい。以下の説明において、音声情報の音声区間に含まれる各フレームの音響特徴を「評価対象音響特徴」と表記する。
【0048】
続いて、第1検出部150bが実行する「類似性評価処理」の一例について説明する。第1検出部150bは、音声区間の各フレームの評価対象音響特徴と、学習音響特徴情報140bとを類似度を算出する。
【0049】
たとえば、第1検出部150bは、ピアソンの積率相関係数を類似度として算出してもよいし、ユークリッド距離を用いて、類似度を算出してもよい。
【0050】
第1検出部150bが、ピアソンの積率相関係数を類似度として算出する場合について説明する。ピアソンの積率相関係数corは、式(2)によって算出される。式(2)において、「X」は、学習音響特徴情報140bに含まれる発話者1A(第1発話者)の音響特徴のピッチ周波数、フレームパワー、フォルマント周波数、音声到来方向の値をそれぞれ要素とするベクトルである。「Y」は、評価対象音響特徴のピッチ周波数、フレームパワー、フォルマント周波数、音声到来方向の値をそれぞれ要素とするベクトルである。「i」は、ベクトルの要素を示す番号である。第1検出部150bは、ピアソンの積率相関係数corが、閾値Thc以上となる評価対象音響特徴のフレームを、発話者1Aの音声を含むフレームとして特定する。たとえば、閾値Thcを「0.7」とする。閾値Thcを適宜変更してもよい。
【0051】
【0052】
第1検出部150bが、ユークリッド距離を用いて、類似度を算出する場合について説明する。ユークリッド距離dは、式(3)によって算出され、類似度Rは、式(4)によって算出される。式(3)において、a1~aiは、学習音響特徴情報140bに含まれる発話者1A(第1発話者)の音響特徴のピッチ周波数、フレームパワー、フォルマント周波数、音声到来方向の値に対応する。b1~biは、評価対象音響特徴のピッチ周波数、フレームパワー、フォルマント周波数、音声到来方向の値に対応する。第1検出部150bは、類似度Rが閾値Thr以上となる評価対象音響特徴のフレームを、発話者1Aの音声を含むフレームとして特定する。たとえば、閾値Thrを「0.7」とする。閾値Thrを適宜変更してもよい。
【0053】
【0054】
R=1/(1+d)・・・(4)
【0055】
第1検出部150bは、類似度が閾値以上となる評価対象音響特徴のフレームを、発話者1A(第1発話者)の音声を含むフレームとして特定する。第1検出部150bは、発話者1Aの音声を含む一連のフレームの区間を、第1発話区間として検出する。
【0056】
第1検出部150bは、上記処理を繰り返し実行し、第1発話区間を検出する度に、第1発話区間の情報を、第2検出部150cに出力する。i番目の第1発話区間の情報は、i番目の第1発話区間の開始時刻Siと、i番目の第1発話区間の終了時刻Eiとを含む。
【0057】
また、第1検出部150bは、音声区間に含まれる各フレームと評価対象音響特徴とを対応付けた情報を、第2検出部150cに出力する。
【0058】
第2検出部150cは、第1発話区間の情報を基にして、第1発話区間外であって、第1発話区間から所定の時間範囲に含まれる音声情報の音響特徴を基にして、複数の発話者のうち、発話者1B(第2発話者)の第2発話区間を検出する処理部である。たとえば、第2検出部150cは、平均発話区間算出処理、探索範囲設定処理、分布算出処理、第2発話区間検出処理を実行する。
【0059】
まず、第2検出部150cが実行する「平均発話区間算出処理」について説明する。たとえば、第2検出部150cは、複数の第1発話区間の情報を取得し、式(5)を基にして、先の第1発話区間から次の第1発話区間までの平均的な時間間隔Dを算出する。式(5)において、Siは、i番目の第1発話区間の開始時刻を示す。Eiは、i番目の第1発話区間の終了時刻を示す。
【0060】
【0061】
続いて、第2検出部150cが実行する「探索範囲設定処理」について説明する。第2検出部150cは、i番目の第1発話区間に対して、探索範囲Ti-1,Ti-2を設定する。探索範囲Ti-1の開始時刻はSi-D、終了時刻はSiである。探索範囲Ti-2の開始時刻はEi、終了時刻はEi+Dである。
【0062】
ここで、第2検出部150cは、第1発話区間の区間長を算出し、区間長の平均値と、区間長との比較結果に応じて、時間間隔Dを補正してもよい。第2検出部150cは、i番目の第1発話区間の区間長Liを、式(6)によって算出する。第2検出部150cは、区間長の平均値を、式(7)によって算出する。
【0063】
Li=Ei-Si・・・(6)
【0064】
【0065】
第2検出部150cは、区間長Liが、区間長の平均値よりも小さい場合には、時間間隔Dに補正係数α1を乗算した値D1によって、探索範囲Ti-1,Ti-2を設定する。探索範囲Ti-1の開始時刻はSi-D1、終了時刻はSiである。探索範囲Ti-2の開始時刻はEi、終了時刻はEi+D1である。補正係数α1の範囲を「1<α1<2」とする。
【0066】
区間長Liが、区間長の平均値よりも小さい場合には、発話者1Bの発話に対して、発話者1Aが相槌していると推定される。このため、通常よりも発話者1Bが長く発話している可能性が高いため、第2検出部150cは、探索範囲を通常よりも大きくする。
【0067】
第2検出部150cは、区間長Liが、区間長の平均値よりも大きい場合には、時間間隔Dに補正係数α2を乗算した値D2によって、探索範囲Ti-1,Ti-2を設定する。探索範囲Ti-1の開始時刻はSi-D2、終了時刻はSiである。探索範囲Ti-2の開始時刻はEi、終了時刻はEi+D2である。補正係数α2の範囲を「0<α2<1」とする。
【0068】
区間長Liが、区間長の平均値よりも大きい場合には、発話者1Aの発話に対して、発話者1Bが相槌していると推定される。このため、通常よりも発話者1Bが短く発話している可能性が高いため、第2検出部150cは、探索範囲を通常よりも小さくする。
【0069】
続いて、第2検出部150cが実行する「分布算出処理」について説明する。第2検出部150cは、探索範囲設定処理によって設定した探索範囲に含まれる複数のフレームの評価対象音響特徴を集計して、探索範囲毎に、音響特徴の分布を生成する。
【0070】
図5は、音響特徴の分布の一例を示す図である。
図5の縦軸は頻度に対応する軸であり、横軸は音響特徴に対応する軸である。第2検出部150cは、音響特徴と頻度との関係を基にして、最頻値Fに対応する音響特徴の最頻位置Pを特定する。第2検出部150cは、最頻位置Pを含む一定範囲T
Fの音響特徴を有するフレームを、発話者1Bの音声を含むフレームとして特定する。
【0071】
第2検出部150cは、探索範囲毎に、上記処理を繰り返し実行し、発話者1Bの音声を含む複数のフレームを特定する。
【0072】
続いて、第2検出部150cが実行する「第2発話区間検出処理」について説明する。第2検出部150cは、探索範囲毎に検出された、発話者1Bの音声を含む一連のフレームの区間を、第2発話区間として検出する。第2検出部150cは、各探索範囲に含まれる各第2発話区間の情報を、認識部150dに出力する。各第2発話区間の情報は、第2発話区間の開始時刻と、第2発話区間の終了時刻とを含む。
【0073】
認識部150dは、第2発話区間に含まれる音声情報を、音声バッファ140aから取得し、音声認識を実行して、音声情報を文字列に変換する処理部である。認識部150dは、音声情報を文字列に変換する場合に、信頼度を合わせて算出してもよい。認識部150dは、変換した文字列の情報と、信頼度の情報とを、音声認識情報140cに登録する。
【0074】
認識部150dは、どのような技術を用いて、音声情報を文字列に変換してもよい。たとえば、認識部150dは、特開平4-255900号公報に開示された技術を用いて、音声情報を文字列に変換する。
【0075】
次に、本実施例1に係る検出装置100の処理手順の一例について説明する。
図6は、本実施例1に係る検出装置の処理手順を示すフローチャートである。
図6に示すように、検出装置100の取得部150aは、複数の発話者の音声を含む音声情報を取得し、音声バッファ140aに格納する(ステップS101)。
【0076】
検出装置100の第1検出部150bは、音声情報に含まれる音声区間を検出する(ステップS102)。第1検出部150bは、音声区間に含まれる各フレームから音響特徴(評価対象音響特徴)を算出する(ステップS103)。
【0077】
第1検出部150bは、各フレームの評価対象音響特徴と、学習音響特徴情報140bとを基にして、類似度をそれぞれ算出する(ステップS104)。第1検出部150bは、各フレームの類似度を基にして、第1発話区間を検出する(ステップS105)。
【0078】
検出装置100の第2検出部150cは、複数の第1発話区間を基にして、時間間隔を算出する(ステップS106)。第2検出部150cは、算出した時間間隔と、第1発話区間の開始時刻および終了時刻とを基にして、探索範囲を設定する(ステップS107)。
【0079】
第2検出部150cは、探索範囲に含まれる各フレームの音響特徴の分布の最頻値を特定する(ステップS108)。第2検出部150cは、最頻値から一定範囲に含まれる音響特徴に対応する一連のフレームの区間を、第2発話区間として検出する(ステップS109)。
【0080】
検出装置100の認識部150dは、第2発話区間の音声情報に対して音声認識を実行し、音声情報を文字列に変換する(ステップS110)。認識部150dは、音声認識結果となる音声認識情報140cを、記憶部140に格納する(ステップS111)。
【0081】
次に、本実施例1に係る検出装置100の効果について説明する。検出装置100は、第1発話者の学習音響特徴に基づいて、複数の話者の音声情報から、第1発話者の第1発話区間を検出し、第1発話区間外の探索範囲の音響特徴を基にして、第2発話者の第2発話区間を検出する。これによって、複数の発話者の音声を含む音声情報から、第2発話者の発話区間を精度よく検出することができる。
【0082】
検出装置100は、学習音響特徴情報140bと、音声区間の各フレームの評価対象音響特徴との類似度を算出し、類似度が閾値以上となる一連のフレームの区間を、第1発話区間を検出する。これによって、予め学習した音響特徴の音声を発話する発話者1Aの発話区間を検出することができる。
【0083】
検出装置100は、第1発話区間を検出してから、次の第1発話区間を検出するまでの時間間隔の平均値を算出し、算出した平均値を基にして、探索範囲を設定する。これによって、ターゲットとなる発話者の音声情報を含む範囲を適切に設定することができる。
【0084】
検出装置100は、複数の第1発話区間の平均値を算出しておき、第1発話区間が平均値より小さい場合には、探索範囲を広くし、第2発話区間が平均値よりも大きい場合には、探索範囲を狭くする。これによって、ターゲットとなる発話者の音声情報を含む範囲を適切に設定することができる。
【0085】
第1発話区間が、区間長の平均値よりも小さい場合には、ターゲットの発話者1Bの発話に対して、発話者1Aが相槌していると推定される。このため、検出装置100は、通常よりも発話者1Bが長く発話している可能性が高いため、探索範囲を通常よりも大きくすることで、発話者1Bの音声情報が、探索範囲外となることを抑止することができる。
【0086】
第1発話区間が、区間長の平均値よりも大きい場合には、発話者1Aの発話に対して、ターゲットの発話者1Bが相槌していると推定される。このため、通常よりも発話者1Bが短く発話している可能性が高いため、探索範囲を通常よりも小さくすることで、発話者1Bの音声情報が含まれる可能性の低い範囲を、探索範囲に含めることを抑止できる。
【0087】
検出装置100は、探索範囲に含まれる複数のフレームの評価対象音響特徴の最頻値を特定し、最頻値に近いフレームが含まれる区間を、第2発話区間として検出する。これによって、ターゲットとなる発話者1B以外の、周囲の人(たとえば、発話者1C)の声の雑音を効率よく除外することができる。
【実施例2】
【0088】
次に、本実施例2に係る検出装置について説明する。本実施例2に係るシステムは、実施例1の
図3で説明したシステムと同様にして、マイク端末10に無線によって接続されているものとする。本実施例2においても、マイク端末10は、発話者1Aに取り付けられる。発話者1Aは、顧客に接客を行う店員に対応する。発話者1Bは、発話者1Aから接客を受ける顧客に対応する。発話者1A,1Bの周りには、発話者1Aが接客を行っていない発話者1Cが存在しているものとする。
【0089】
本実施例2に係る検出装置は、マイク端末10から音声情報を取得すると、学習音響特徴を基にして、第1発話者の第1発話区間を検出する。検出装置は、第1発話区間を検出する度に、第1発話区間に含まれる音響特徴に基づいて、学習音響特徴を更新する。
【0090】
また、本実施例2に係る検出装置は、探索範囲の音響特徴を基にして、第2発話区間を検出する場合に、次の処理を実行する。検出装置は、探索範囲の各フレームの評価対象音響特徴と、学習音響特徴との類似度の最頻値を算出し、算出した最頻値に応じた閾値によって、第2発話区間を検出する。
【0091】
図7~
図9は、本実施例2に係る検出装置の処理を説明するための図である。
図7および
図8の縦軸は、頻度に対応する軸である。横軸は、学習音響特徴と評価対象音響特徴との類似度に対応する軸である。以下の説明では適宜、学習音響特徴と評価対象音響特徴との類似度を、「音響特徴の類似度」と表記する。
【0092】
たとえば、ターゲットとなる発話者1Bの音声が大きい場合には、頻度と音響特徴の類似度との関係は、
図7に示すものとなり、類似度の最頻値は「F
1」となる。ターゲットとなる発話者1Bの音声が大きい場合には、発話者1Bの音声の固有の音響特徴が多く残っていることを意味する。
【0093】
一方、発話者1Bの声が小さい場合には、頻度と音響特徴の類似度との関係は、
図8に示すものとなり、類似度の最頻値は「F
2」となる。ターゲットとなる発話者1Bの音声が小さい場合には、発話者1Bの音声が背景雑音(発話者1Cの音声等)に埋もれ、発話者1Bの固有の音響特徴が一部失われてしまう。
【0094】
図9において、類似度の最頻値とSNR閾値との関係を示す。
図9の縦軸は、SNR閾値に対応する軸であり、横軸は、類似度の最頻値に対応する軸である。
図9に示すように、類似度の最頻値が大きくなるほど、SNR閾値が小さくなる。
【0095】
たとえば、
図7で説明したように、ターゲットとなる発話者1Bの音声が大きい場合には、類似度の最頻値F
1は小さくなる。検出装置は、大きめのSNR閾値を設定し、探索範囲の各フレームのうち、SNRが、大きめのSNR閾値以上となるフレームの区間を、第2発話区間として検出する。
【0096】
図8で説明したように、ターゲットとなる発話者1Bの小さい場合には、類似度の最頻値F
2は小さくなる。検出装置は、小さめのSNR閾値を設定し、探索範囲の各フレームのうち、SNRが、小さめのSNR閾値以上となるフレームの区間を、第2発話区間として検出する。
【0097】
上記のように、本実施例2に係る検出装置は、第1発話区間を検出する度に、第1発話区間に含まれる音響特徴に基づいて、学習音響特徴を更新する。これによって、学習音響特徴を、最新の状態に保つことができ、第1発話区間の検出精度を向上させることができる。
【0098】
また、検出装置は、探索範囲の各フレームの評価対象音響特徴と、学習音響特徴との類似度の最頻値を算出し、算出した最頻値に応じたSNR閾値によって、第2発話区間を検出する。これによって、ターゲットとなる第2発話者の音声の大きさに対して最適なSNR閾値を設定することができ、第2発話区間の検出精度を向上させることができる。
【0099】
図10は、本実施例2に係る検出装置の構成を示す機能ブロック図である。
図10に示すように、この検出装置200は、通信部210と、入力部220と、表示部230と、記憶部240と、制御部250とを有する。
【0100】
通信部210は、無線によって、マイク端末10とデータ通信を実行する処理部である。通信部210は、通信装置の一例である。通信部210は、マイク端末10から音声情報を受信し、受信した音声情報を、制御部250に出力する。なお、検出装置200は、有線によって、マイク端末10に接続してもよい。検出装置200は、通信部210によってネットワークに接続し、外部装置(図示略)とデータを送受信してもよい。
【0101】
入力部220は、検出装置200に各種の情報を入力するための入力装置である。入力部220は、キーボードやマウス、タッチパネル等に対応する。
【0102】
表示部230は、制御部250から出力される情報を表示する表示装置である。表示部230は、液晶ディスプレイやタッチパネル等に対応する。
【0103】
記憶部240は、音声バッファ240aと、学習音響特徴情報240bと、音声認識情報240cと、閾値テーブル240dとを有する。記憶部240は、RAM、フラッシュメモリなどの半導体メモリ素子や、HDDなどの記憶装置に対応する。
【0104】
音声バッファ240aは、マイク端末10から送信される音声情報を格納するバッファである。音声情報では、音声信号と時刻とが対応付けられる。
【0105】
学習音響特徴情報240bは、予め学習される発話者1A(第1発話者)の音声の音響特徴の情報である。音響特徴には、ピッチ周波数、フレームパワー、フォルマント周波数、音声到来方向、SNR等が含まれる。たとえば、学習音響特徴情報240bは、ピッチ周波数、フレームパワー、フォルマント周波数、音声到来方向の値をそれぞれ要素とするベクトルである。
【0106】
図11は、本実施例2に係る学習音響特徴情報のデータ構造の一例を示す図である。
図11に示すように、学習音響特徴情報240bは、発話番号と、音響特徴とを対応付ける。発話番号は、発話者1Aが発話した第1発話区間の音響特徴を識別する番号である。音響特徴は、第1発話区間の音響特徴である。
【0107】
音声認識情報240cは、発話者1Bの第2発話区間の音声情報を文字列に変換した情報である。
【0108】
閾値テーブル240dは、音響特徴の類似度と、SNR閾値との関係を定義するテーブルである。閾値テーブル240dで定義する音響特徴の類似度と、SNR閾値との関係は、
図9に示したグラフに対応する。
【0109】
制御部250は、取得部250aと、第1検出部250bと、更新部250cと、第2検出部250dと、認識部250eとを有する。制御部250は、CPUやMPU、ASICやFPGAなどのハードワイヤードロジック等によって実現される。
【0110】
取得部250aは、通信部210を介して、マイク端末10から音声情報を取得する処理部である。取得部250aは、音声情報を順次、音声バッファ240aに格納する。
【0111】
第1検出部250bは、音声バッファ240aから音声情報を取得し、学習音響特徴情報240bを基にして、発話者1A(第1発話者)の第1発話区間を検出する処理部である。第1検出部250bは、音声区間検出処理、音響解析処理、類似性評価処理を行う。第1検出部250bが実行する、音声区間検出処理、類似性評価処理は、実施例1で説明した第1検出部150bの処理と同様である。
【0112】
第1検出部250bは、音響特徴として、ピッチ周波数、フレームパワー、フォルマント周波数、音声到来方向、SNRを算出する。第1検出部250bが、ピッチ周波数、フレームパワー、フォルマント周波数、音声到来方向を算出する処理は、実施例1で説明した第1検出部150bの処理と同様である。
【0113】
第1検出部250bが、音響特徴として「SNR」を算出する処理の一例について説明する。第1検出部250bは、入力音声情報を複数のフレームに区切り、各フレームについて、パワーS(n)を算出する。第1検出部250bは、式(1)を基にして、パワーS(n)を算出する。第1検出部250bは、パワーS(n)に基づいて発話区間の有無を判定する。
【0114】
第1検出部250bは、パワーS(n)が閾値TH1よりも大きい場合、フレーム番号nのフレームに発話が含まれていると判定し、v(n)=1に設定する。一方、第1検出部250bは、パワーS(n)が閾値TH1以下となる場合、フレーム番号nのフレームに発話が含まれていないと判定し、v(n)=0に設定する。
【0115】
第1検出部250bは、発話区間の判定結果v1(n)に応じて、雑音レベルNを更新する。第1検出部250bは「v(n)=1」となる場合、式(8)を基にして、雑音レベルN(n)を更新する。一方、第1検出部250bは「v(n)=0」となる場合、式(9)を基にして、雑音レベルN(n)を更新する。なお、下記の式(8)における「coef」は、忘却係数を指し、例えば、0.9などの値が採用される。
【0116】
N(n)=N(n-1)*coef+S(n)*(1-coef)・・・(8)
N(n)=N(n-1)・・・(9)
【0117】
第1検出部250bは、式(10)を基にして、SNR(n)を算出する。
【0118】
SNR(n)=S(n)-N(n)・・・(10)
【0119】
第1検出部250bは、検出した第1発話区間の情報を、更新部250cおよび第2検出部250dに出力する。i番目の第1発話区間の情報は、i番目の第1発話区間の開始時刻Siと、i番目の第1発話区間の終了時刻Eiとを含む。
【0120】
また、第1検出部250bは、第1発話区間に含まれる各フレームと評価対象音響特徴とを対応付けた情報を、更新部250cに出力する。第1検出部250bは、音声区間に含まれる各フレームと評価対象音響特徴とを対応付けた情報を、第2検出部250dに出力する。
【0121】
更新部250cは、第1発話区間に含まれる各フレームの評価対象音響特徴を基にして、学習音響特徴情報240bを更新する処理部である。更新部250cは、第1発話区間に含まれる各フレームの評価対象音響特徴の代表値を算出する。たとえば、更新部250cは、第1発話区間に含まれる各フレームの評価対象音響特徴の平均値または中央値を、第1発話区間の代表値として算出する。
【0122】
更新部250cは、学習音響特徴情報240bの各レコードの数が、N個未満の場合には、学習音響特徴情報240bに、第1発話区間の代表値を登録する。更新部250cは、N個未満の場合には、第1検出部250bから、第1発話区間に含まれる各フレームの評価対象音響特徴を取得する度に、上記処理を繰り返し実行し、第1発話区間の代表値(音響特徴)を、先頭から順に登録する。
【0123】
更新部250cは、学習音響特徴情報240bの各レコードの数が、N個以上の場合には、学習音響特徴情報240bの先頭のレコードを削除し、新たな第1発話区間の代表値(音響特徴)を、学習音響特徴情報240bの最後尾に登録する。更新部250cは、上記処理を実行することで、学習音響特徴情報240bの各レコードの数をN個に保つ。
【0124】
更新部250cは、学習音響特徴情報240bを更新した場合には、式(11)に基づいて、学習音響特徴の学習値を算出する。更新部250cは、学習音響特徴の学習値を、第2検出部250dに出力する。式(11)に含まれるAtは、発話番号tの音響特徴を示す。Mは、音響特徴の次元数(要素数)を示す。Nの値を50とする。
【0125】
【0126】
第2検出部250dは、第1発話区間の情報を基にして、第1発話区間外であって、第1発話区間から所定の時間範囲に含まれる音声情報の音響特徴を基にして、複数の発話者のうち、発話者1B(第2発話者)の第2発話区間を検出する処理部である。たとえば、第2検出部150cは、平均発話区間算出処理、探索範囲設定処理、分布算出処理、第2発話区間検出処理を実行する。
【0127】
第2検出部250dが実行する平均発話区間算出処理、探索範囲設定処理は、実施例1で説明した第2検出部250dと同様である。
【0128】
第2検出部250dが実行する「分布算出処理」について説明する。第2検出部250dは、探索範囲設定処理によって設定した探索範囲に含まれる複数のフレームの評価対象音響特徴と、更新部250cから取得する学習値(学習音響特徴)との類似度を算出する。たとえば、第2検出部250dは、ピアソンの積率相関係数を類似度として算出してもよいし、ユークリッド距離を用いて類似度を算出してもよい。
【0129】
第2検出部250dは、探索範囲に含まれる複数のフレームの評価対象音響特徴と、更新部250cから取得する学習値(学習音響特徴)との類似度の分布から、分布の最頻値を特定する。たとえば、音響特徴の類似度の分布が、
図7に示す分布となる場合には、最頻値は最頻値F
1となる。音響特徴の類似度の分布が、
図8に示す分布となる場合には、最頻値は最頻値F
2となる。
【0130】
第2検出部250dは、特定した最頻値と、閾値テーブル240dとを比較して、最頻値に対応するSNR閾値を特定する。
【0131】
第2検出部250dが実行する「第2発話区間検出処理」について説明する。第2検出部250dは、探索範囲に含まれる各フレームのSNRと、SNR閾値とを比較し、SNR閾値以上のSNRとなるフレームの区間を、第2発話区間として検出する。第2検出部250dは、各探索範囲に含まれる各第2発話区間の情報を、認識部250eに出力する。各第2発話区間の情報は、第2発話区間の開始時刻と、第2発話区間の終了時刻Eとを含む。
【0132】
認識部250eは、第2発話区間に含まれる音声情報を、音声バッファ240aから取得し、音声認識を実行して、音声情報を文字列に変換する処理部である。認識部250eは、音声情報を文字列に変換する場合に、信頼度を合わせて算出してもよい。認識部250eは、変換した文字列の情報と、信頼度の情報とを、音声認識情報240cに登録する。
【0133】
次に、本実施例2に係る検出装置200の処理手順の一例について説明する。
図12は、本実施例2に係る検出装置の処理手順を示すフローチャートである。
図12に示すように、検出装置200の取得部250aは、複数の発話者の音声を含む音声情報を取得し、音声バッファ240aに格納する(ステップS201)。
【0134】
検出装置200の第1検出部250bは、音声情報に含まれる音声区間を検出する(ステップS202)。第1検出部250bは、音声区間に含まれる各フレームから音響特徴(評価対象音響特徴)を算出する(ステップS203)。
【0135】
第1検出部250bは、各フレームの評価対象音響特徴と、学習音響特徴情報240bとを基にして、類似度をそれぞれ算出する(ステップS204)。第1検出部250bは、各フレームの類似度を基にして、第1発話区間を検出する(ステップS205)。
【0136】
検出装置200の更新部250cは、第1発話区間の音響特徴によって、学習音響特徴情報240bを更新する(ステップS206)。更新部250cは、学習音響特徴情報240bの学習値を更新する(ステップS207)。
【0137】
第2検出部250dは、複数の第1発話区間を基にして、時間間隔を算出する(ステップS208)。第2検出部250dは、算出した時間間隔と、第1発話区間の開始時刻および終了時刻とを基にして、探索範囲を決定する(ステップS209)。
【0138】
第2検出部250dは、探索範囲に含まれる各フレームの音響特徴と学習値(学習音響特徴)との類似度の分布から最頻値を特定する(ステップS210)。第2検出部250dは、閾値テーブル240dを基にして最頻値に対応するSNR閾値を特定する(ステップS211)。
【0139】
第2検出部250dは、SNRがSNR閾値以上となる一連のフレームの区間を、第2発話区間として検出する(ステップS212)。検出装置200の認識部250eは、第2発話区間の音声情報に対して音声認識を実行し、音声情報を文字列に変換する(ステップS213)。認識部250eは、音声認識結果となる音声認識情報240cを、記憶部240に格納する(ステップS214)。
【0140】
次に、本実施例2に係る検出装置200の効果について説明する。検出装置200は、学習音響特徴情報240bを用いて、第1発話区間を検出する度に、第1発話区間に含まれる音響特徴に基づいて、学習音響特徴情報240bを更新する。これによって、学習音響特徴を、最新の状態に保つことができ、第1発話区間の検出精度を向上させることができる。
【0141】
また、検出装置200は、探索範囲の各フレームの評価対象音響特徴と、学習音響特徴との類似度の最頻値を算出し、算出した最頻値に応じたSNR閾値によって、第2発話区間を検出する。これによって、ターゲットとなる第2発話者の音声の大きさに対して最適なSNR閾値を設定することができ、第2発話区間の検出精度を向上させることができる。
【0142】
ところで、本実施例2に係る検出装置200は、最頻値を特定した後に、閾値テーブル240dを基にして、SNR閾値を特定し、SNR閾値を用いて、第2発話区間として検出していたが、これに限定されるものではない。
【0143】
図13は、検出装置のその他の処理を説明するための図である。検出装置200の第2検出部250dは、探索範囲に含まれる複数のフレームの評価対象音響特徴と、更新部250cから取得する学習値(学習音響特徴)との類似度の分布から、分布の最頻値F
1を特定する。
【0144】
ここで、第2検出部250dは、最頻値F1を基準とする範囲TFAを設定する。第2検出部250dは、探索範囲に含まれる複数のフレームのうち、音響特徴の類似度が範囲TFAに含まれる一連のフレームの区間を、第2発話区間として検出する。第2検出部250dが、かかる処理を実行することで、閾値テーブル240dを用いなくても、発話者1Bの第2発話区間を精度よく検出することができる。
【実施例3】
【0145】
次に、本実施例3に係るシステムの構成について説明する。
図14は、本実施例3に係るシステムの一例を示す図である。
図14に示すように、このシステムは、マイク端末15aと、カメラ15bと、中継装置50と、検出装置300と、音声認識装置400とを有する。
【0146】
マイク端末15aおよびカメラ15bは、中継装置50に接続される。中継装置50は、ネットワーク60を介して、検出装置300に接続される。検出装置300は、音声認識装置400に接続される。マイク端末15aの近くでは、発話者2Aが発話者2Bに接客を行っているものとする。たとえば、発話者2Aを店員、発話者2Bを顧客とする。発話者2Aは、第1発話者の一例である。発話者2Bは、第2発話者の一例である。発話者2A,2Bの周辺には、他の発話者(図示略)が存在していてもよい。
【0147】
マイク端末15aは、音声を収録する装置である。マイク端末15aは、音声情報を中継装置50に出力する。音声情報には、発話者2A,2B、他の発話者の音声の情報が含まれる。マイク端末15aは、複数のマイクを備えていてもよい。マイク端末15aは、複数のマイクを備えている場合、各マイクで集音した音声情報を、中継装置50に出力する。
【0148】
カメラ15bは、発話者2Aの顔の映像を撮影するカメラである。カメラ15bの撮影方向は予め設定されているものとする。カメラ15bは、発話者2Aの顔の映像情報を、中継装置50に出力する。映像情報は、複数の画像情報(静止画像)を時系列に含む情報である。
【0149】
中継装置50は、マイク端末15aから取得する音声情報を、ネットワーク60を介して、検出装置300に送信する。中継装置50は、カメラ15bから取得する映像情報を、ネットワーク60を介して、検出装置300に送信する。
【0150】
検出装置300は、中継装置50から、音声情報と、映像情報とを受信する。検出装置300は、音声情報から、発話者2Aの第1発話区間を検出する場合に、映像情報を用いる。検出装置300は、音声情報から複数の音声区間を検出し、検出した複数の音声区間に対応する時間帯の映像情報を解析し、発話者2Aの発声器官(口)が動いているか否かを判定する。検出装置300は、発話者2Aの口が動いている時間帯の音声区間を、第1発話区間として特定する。
【0151】
音声情報に含まれる複数の音声区間のうち、発話者2Aの口が動いている時間帯の音声区間は、発話者2Aが発話している第1発話区間であるといえる。すなわち、カメラ15bに撮影される、発話者2Aの映像情報を用いることで、第1発話区間をより精度よく検出することができる。
【0152】
検出装置300は、実施例1の検出装置100と同様にして、第1発話区間を基準とした探索範囲を設定し、探索範囲の評価対象音響特徴を基にして、第2発話者の第2発話区間を検出する。検出装置300は、第1発話区間の音声情報と、第2発話区間の音声情報を、音声認識装置400に送信する。
【0153】
音声認識装置400は、検出装置300から、第1発話区間の音声情報と、第2発話区間の音声情報を受信する。音声認識装置400は、第1発話区間の音声情報を文字列に変換し、店員の接客時の文字情報として、記憶部に格納する。音声認識装置400は、第2発話区間の音声情報を文字列に変換し、顧客の接客時の文字情報として、記憶部に格納する。
【0154】
次に、本実施例3に係る検出装置300の構成について説明する。
図15は、本実施例3に係る検出装置の構成を示す機能ブロック図である。
図15に示すように、この検出装置300は、通信部310と、入力部320と、表示部330と、記憶部340と、制御部350とを有する。
【0155】
通信部310は、中継装置50および音声認識装置400とデータ通信を実行する処理部である。通信部310は、通信装置の一例である。通信部310は、中継装置50から音声情報および映像情報を受信し、受信した音声情報および映像情報を、制御部350に出力する。通信部310は、制御部350から取得する情報を、音声認識装置400に送信する。
【0156】
入力部320は、検出装置300に各種の情報を入力するための入力装置である。入力部320は、キーボードやマウス、タッチパネル等に対応する。
【0157】
表示部330は、制御部350から出力される情報を表示する表示装置である。表示部330は、液晶ディスプレイやタッチパネル等に対応する。
【0158】
記憶部340は、音声バッファ340aと、映像バッファ340bとを有する。記憶部340は、RAM、フラッシュメモリなどの半導体メモリ素子や、HDDなどの記憶装置に対応する。
【0159】
音声バッファ340aは、中継装置50から送信される音声情報を格納するバッファである。音声情報では、音声信号と時刻とが対応付けられる。
【0160】
映像バッファ340bは、中継装置50から送信される映像情報を格納するバッファである。映像情報は、複数の画像情報を含み、各画像情報は時刻に対応付けられる。
【0161】
制御部350は、取得部350aと、第1検出部350bと、第2検出部350cと、送信部350dとを有する。制御部350は、CPUやMPU、ASICやFPGAなどのハードワイヤードロジック等によって実現される。
【0162】
取得部350aは、通信部310を介して、中継装置50から音声情報および映像情報を取得する処理部である。取得部350aは、音声情報を、音声バッファ340aに格納する。取得部350aは、映像情報を、映像バッファ340bに格納する。
【0163】
第1検出部350bは、音声情報と映像情報とを基にして、発話者2A(第1発話者)の第1発話区間を検出する処理部である。第1検出部350bは、音声区間検出処理、音響解析処理、検出処理を行う。第1検出部350bが実行する、音声区間検出処理、音響解析処理は、実施例1で説明した第1検出部150bの処理と同様である。
【0164】
第1検出部350bが実行する「検出処理」の一例について説明する。第1検出部350bは、音声区間検出処理において検出した各音声区間に撮影された映像情報を、映像バッファ340bから取得する。例えば、i番目の音声区間の開始時刻をsi、終了時刻をeiとすると、i番目の音声区間に対応する映像情報は、時刻si~eiの映像情報となる。
【0165】
第1検出部350bは、時刻si~eiの映像情報に含まれる一連の画像情報から、口の領域を検出し、唇が上下に動いているか否かを判定する。第1検出部350bは、時刻si~eiにおいて、唇が上下に動いている場合には、i番目の音声区間を、第1発話区間として検出する。複数の画像情報から口の領域を検出し、唇の動きを検出する処理は、どのような技術も用いてもよい。
【0166】
第1検出部350bは、上記処理を繰り返し実行し、第1発話区間を検出する度に、第1発話区間の情報を、第2検出部350cおよび送信部350dに出力する。i番目の第1発話区間の情報は、i番目の第1発話区間の開始時刻Siと、i番目の第1発話区間の終了時刻Eiとを含む。
【0167】
また、第1検出部350bは、音声区間に含まれる各フレームと評価対象音響特徴とを対応付けた情報を、第2検出部350cに出力する。
【0168】
第2検出部350cは、第1発話区間の情報を基にして、第1発話区間外であって、第1発話区間から所定の時間範囲に含まれる音声情報の音響特徴を基にして、複数の発話者のうち、発話者2B(第2発話者)の第2発話区間を検出する処理部である。第2検出部350cの処理は、実施例1で説明した第2検出部150cの処理と同様である。
【0169】
第2検出部350cは、各第2発話区間の情報を、送信部350dに出力する。各第2発話区間の情報は、第2発話区間の開始時刻と、第2発話区間の終了時刻とを含む。
【0170】
送信部350dは、各第1発話区間の情報を基にして、各第1発話区間に含まれる音声情報を、音声バッファ340aから取得し、各第1発話区間の音声情報を、音声認識装置400に送信する。送信部350dは、各第2発話区間の情報を基にして、各第2発話区間に含まれる音声情報を、音声バッファ340aから取得し、各第2発話区間の音声情報を、音声認識装置400に送信する。以下の説明では、各第1発話区間の音声情報を、「店員音声情報」と表記する。各第2発話区間の音声情報を、「顧客音声情報」と表記する。
【0171】
次に、音声認識装置400の構成について説明する。
図16は、本実施例3に係る音声認識装置の構成を示す機能ブロック図である。
図16に示すように、音声認識装置400は、通信部410と、入力部420と、表示部430と、記憶部440と、制御部450とを有する。
【0172】
通信部410は、検出装置300とデータ通信を実行する処理部である。通信部410は、通信装置の一例である。通信部410は、検出装置300から、店員音声情報および顧客音声情報を受信する。通信部410は、店員音声情報および顧客音声情報を、制御部450に出力する。
【0173】
入力部420は、音声認識装置400に各種の情報を入力するための入力装置である。入力部420は、キーボードやマウス、タッチパネル等に対応する。
【0174】
表示部430は、制御部150から出力される情報を表示する表示装置である。表示部430は、液晶ディスプレイやタッチパネル等に対応する。
【0175】
記憶部440は、店員音声バッファ440aと、顧客音声バッファ440bと、店員音声認識情報440cと、顧客音声認識情報440dとを有する。記憶部440は、RAM、フラッシュメモリなどの半導体メモリ素子や、HDDなどの記憶装置に対応する。
【0176】
店員音声バッファ440aは、店員音声情報を格納するバッファである。
【0177】
顧客音声バッファ440bは、顧客音声情報を格納するバッファである。
【0178】
店員音声認識情報440cは、発話者2Aの第1発話区間の店員音声情報を文字列に変換した情報である。
【0179】
店員音声認識情報440cは、発話者2Bの第2発話区間の顧客音声情報を文字列に変換した情報である。
【0180】
制御部450は、取得部450aと、認識部450bとを有する。制御部450は、CPUやMPU、ASICやFPGAなどのハードワイヤードロジック等によって実現される。
【0181】
取得部450aは、通信部410を介して、検出装置300から店員音声情報および顧客音声情報を取得する処理部である。取得部450aは、店員音声情報を、店員音声バッファ440aに格納する。取得部450aは、顧客音声情報を、顧客音声バッファ440bに格納する。
【0182】
認識部450bは、店員音声バッファ440aに格納された店員音声情報を取得し、音声認識を実行して、店員音声情報を文字列に変換する。認識部450bは、変換した文字列の情報を、店員音声認識情報440cとして、記憶部440に格納する。
【0183】
認識部450bは、顧客音声バッファ440bに格納された顧客音声情報を取得し、音声認識を実行して、顧客音声情報を文字列に変換する。認識部450bは、変換した文字列の情報を、顧客音声認識情報440dとして、記憶部440に格納する。
【0184】
次に、本実施例3に係る検出装置300の処理手順の一例について説明する。
図17は、本実施例3に係る検出装置の処理手順を示すフローチャートである。
図17に示すように、検出装置300の取得部350aは、複数の発話者の音声を含む音声情報を取得し、音声バッファ340aに格納する(ステップS301)。
【0185】
検出装置300の第1検出部350bは、音声情報に含まれる音声区間を検出する(ステップS302)。第1検出部350bは、音声区間に含まれる各フレームから音響特徴(評価対象音響特徴)を算出する(ステップS303)。
【0186】
第1検出部350bは、音声区間に対応する映像情報を基にして、第1発話区間を検出する(ステップS304)。検出装置300の第2検出部350cは、複数の第1発話区間を基にして、時間間隔を算出する(ステップS305)。第2検出部350cは、算出した時間間隔と、第1発話区間の開始時刻および終了時刻とを基にして、探索範囲を設定する(ステップS306)。
【0187】
第2検出部350cは、探索範囲に含まれる各フレームの音響特徴の分布の最頻値を特定する(ステップS307)。第2検出部350cは、最頻値から一定範囲に含まれる音響特徴に対応する一連のフレームの区間を、第2発話区間として検出する(ステップS308)。
【0188】
検出装置300の送信部350dは、店員音声情報および顧客音声情報を、音声認識装置400に送信する(ステップS309)。
【0189】
次に、本実施例3に係る検出装置300の効果について説明する。検出装置300は、音声情報から複数の音声区間を検出し、検出した複数の音声区間に対応する時間帯の映像情報を解析し、発話者2Aの発声器官(口)が動いているか否かを判定する。検出装置300は、発話者2Aの口が動いている音声区間を、第1発話区間として特定する。
【0190】
音声情報に含まれる複数の音声区間のうち、発話者2Aの口が動いている時間帯の音声区間は、発話者2Aが発話している第1発話区間であるといえる。すなわち、カメラ15bに撮影される、発話者2Aの映像情報を用いることで、第1発話区間をより精度よく検出することができる。
【実施例4】
【0191】
次に、本実施例4に係るシステムの構成について説明する。
図18は、本実施例4に係るシステムの一例を示す図である。
図18に示すように、このシステムは、マイク端末16aと、接触型振動センサ16bと、中継装置55と、検出装置500と、音声認識装置400とを有する。
【0192】
マイク端末16aおよび接触型振動センサ16bは、中継装置55に接続される。中継装置55は、ネットワーク60を介して、検出装置500に接続される。検出装置500は、音声認識装置400に接続される。マイク端末16aの近くでは、発話者2Aが発話者2Bに接客を行っているものとする。たとえば、発話者2Aを店員、発話者2Bを顧客とする。発話者2Aは、第1発話者の一例である。発話者2Bは、第2発話者の一例である。発話者2A,2Bの周辺には、他の発話者(図示略)が存在していてもよい。
【0193】
マイク端末16aは、音声を収録する装置である。マイク端末16aは、音声情報を中継装置55に出力する。音声情報には、発話者2A,2B、他の発話者の音声の情報が含まれる。マイク端末16aは、複数のマイクを備えていてもよい。マイク端末16aは、複数のマイクを備えている場合、各マイクで集音した音声情報を、中継装置55に出力する。
【0194】
接触型振動センサ16bは、発話者2Aの発声器官の振動情報を検出するセンサである。たとえば、接触型振動センサ16bは、発話者2Aの喉付近あるいは頭部等に装着される。接触型振動センサ16bは、振動情報を、中継装置55に出力する。
【0195】
中継装置55は、マイク端末16aから取得する音声情報を、ネットワーク60を介して、検出装置500に送信する。中継装置55は、接触型振動センサ16bから取得する振動情報を、ネットワーク60を介して、検出装置500に送信する。
【0196】
検出装置500は、中継装置55から、音声情報と、振動情報とを受信する。検出装置500は、音声情報から、発話者2Aの第1発話区間を検出する場合に、振動情報を用いる。検出装置500は、音声情報から複数の音声区間を検出し、検出した複数の音声区間に対応する時間帯の振動情報を解析し、発話者2Aの発声器官(喉等)が振動しているか否かを判定する。検出装置500は、発話者2Aの発声器官が振動している時間帯の音声区間を、第1発話区間として特定する。
【0197】
音声情報に含まれる複数の音声区間のうち、発話者2Aの発声器官が振動している時間帯の音声区間は、発話者2Aが発話している第1発話区間であるといえる。すなわち、接触型振動センサ16bに測定される、発話者2Aの振動情報を用いることで、第1発話区間をより精度よく検出することができる。
【0198】
検出装置500は、実施例1の検出装置100と同様にして、第1発話区間を基準とした探索範囲を設定し、探索範囲の評価対象音響特徴を基にして、第2発話者の第2発話区間を検出する。検出装置500は、第1発話区間の音声情報と、第2発話区間の音声情報を、音声認識装置400に送信する。
【0199】
音声認識装置400は、検出装置500から、第1発話区間の音声情報と、第2発話区間の音声情報を受信する。音声認識装置400は、第1発話区間の音声情報を文字列に変換し、店員の接客時の文字情報として、記憶部に格納する。音声認識装置400は、第2発話区間の音声情報を文字列に変換し、顧客の接客時の文字情報として、記憶部に格納する。
【0200】
次に、本実施例4に係る検出装置500の構成について説明する。
図19は、本実施例4に係る検出装置の構成を示す機能ブロック図である。
図19に示すように、この検出装置500は、通信部510と、入力部520と、表示部530と、記憶部540と、制御部550とを有する。
【0201】
通信部510は、中継装置55および音声認識装置400とデータ通信を実行する処理部である。通信部510は、通信装置の一例である。通信部510は、中継装置55から音声情報および振動情報を受信し、受信した音声情報および振動情報を、制御部550に出力する。通信部510は、制御部550から取得する情報を、音声認識装置400に送信する。
【0202】
入力部520は、検出装置500に各種の情報を入力するための入力装置である。入力部520は、キーボードやマウス、タッチパネル等に対応する。
【0203】
表示部530は、制御部550から出力される情報を表示する表示装置である。表示部530は、液晶ディスプレイやタッチパネル等に対応する。
【0204】
記憶部540は、音声バッファ540aと、振動情報バッファ540bとを有する。記憶部540は、RAM、フラッシュメモリなどの半導体メモリ素子や、HDDなどの記憶装置に対応する。
【0205】
音声バッファ540aは、中継装置55から送信される音声情報を格納するバッファである。音声情報では、音声信号と時刻とが対応付けられる。
【0206】
振動情報バッファ540bは、中継装置55から送信される振動情報を格納するバッファである。振動情報では、振動強度を示す信号と時刻とが対応付けられる。
【0207】
制御部550は、取得部550aと、第1検出部550bと、第2検出部550cと、送信部550dとを有する。制御部550は、CPUやMPU、ASICやFPGAなどのハードワイヤードロジック等によって実現される。
【0208】
取得部550aは、通信部510を介して、中継装置55から音声情報および振動情報を取得する処理部である。取得部550aは、音声情報を、音声バッファ540aに格納する。取得部550aは、振動情報を、振動情報バッファ540bに格納する。
【0209】
第1検出部550bは、音声情報と振動情報とを基にして、発話者2A(第1発話者)の第1発話区間を検出する処理部である。第1検出部550bは、音声区間検出処理、音響解析処理、検出処理を行う。第1検出部550bが実行する、音声区間検出処理、音響解析処理は、実施例1で説明した第1検出部150bの処理と同様である。
【0210】
第1検出部550bが実行する「検出処理」の一例について説明する。第1検出部550bは、音声区間検出処理において検出した各音声区間に撮影された振動情報を、振動情報バッファ540bから取得する。例えば、i番目の音声区間の開始時刻をsi、終了時刻をeiとすると、i番目の音声区間に対応する振動情報は、時刻si~eiの振動情報となる。
【0211】
第1検出部550bは、時刻si~eiの振動情報に含まれる一連の振動強度から、振動強度が所定強度以上であるか否かを判定する。第1検出部550bは、時刻si~eiにおいて、振動強度が所定振動強度以上である場合には、発話者2Aが発話していると判定し、i番目の音声区間を、第1発話区間として検出する。たとえば、第1検出部550bは、特開2010-10869号公報に開示された技術を用いて、振動情報から、発話者2Aが発話しているか否かを判定してもよい。
【0212】
第1検出部550bは、上記処理を繰り返し実行し、第1発話区間を検出する度に、第1発話区間の情報を、第2検出部550cおよび送信部550dに出力する。i番目の第1発話区間の情報は、i番目の第1発話区間の開始時刻Siと、i番目の第1発話区間の終了時刻Eiとを含む。
【0213】
また、第1検出部550bは、音声区間に含まれる各フレームと評価対象音響特徴とを対応付けた情報を、第2検出部550cに出力する。
【0214】
第2検出部550cは、第1発話区間の情報を基にして、第1発話区間外であって、第1発話区間から所定の時間範囲に含まれる音声情報の音響特徴を基にして、複数の発話者のうち、発話者2B(第2発話者)の第2発話区間を検出する処理部である。第2検出部550cの処理は、実施例1で説明した第2検出部150cの処理と同様である。
【0215】
第2検出部550cは、各第2発話区間の情報を、送信部550dに出力する。各第2発話区間の情報は、第2発話区間の開始時刻と、第2発話区間の終了時刻とを含む。
【0216】
送信部550dは、各第1発話区間の情報を基にして、各第1発話区間に含まれる音声情報を、音声バッファ540aから取得し、各第1発話区間の音声情報を、音声認識装置400に送信する。送信部550dは、各第2発話区間の情報を基にして、各第2発話区間に含まれる音声情報を、音声バッファ540aから取得し、各第2発話区間の音声情報を、音声認識装置400に送信する。以下の説明では、各第1発話区間の音声情報を、「店員音声情報」と表記する。各第2発話区間の音声情報を、「顧客音声情報」と表記する。
【0217】
次に、本実施例4に係る検出装置500の処理手順の一例について説明する。
図20は、本実施例4に係る検出装置の処理手順を示すフローチャートである。
図20に示すように、検出装置500の取得部550aは、複数の発話者の音声を含む音声情報を取得し、音声バッファ540aに格納する(ステップS401)。
【0218】
検出装置500の第1検出部550bは、音声情報に含まれる音声区間を検出する(ステップS402)。第1検出部550bは、音声区間に含まれる各フレームから音響特徴(評価対象音響特徴)を算出する(ステップS403)。
【0219】
第1検出部550bは、音声区間に対応する振動情報を基にして、第1発話区間を検出する(ステップS404)。検出装置500の第2検出部550cは、複数の第1発話区間を基にして、時間間隔を算出する(ステップS405)。第2検出部550cは、算出した時間間隔と、第1発話区間の開始時刻および終了時刻とを基にして、探索範囲を設定する(ステップS406)。
【0220】
第2検出部550cは、探索範囲に含まれる各フレームの音響特徴の分布の最頻値を特定する(ステップS407)。第2検出部550cは、最頻値から一定範囲に含まれる音響特徴に対応する一連のフレームの区間を、第2発話区間として検出する(ステップS408)。
【0221】
検出装置500の送信部550dは、店員音声情報および顧客音声情報を、音声認識装置400に送信する(ステップS409)。
【0222】
次に、本実施例4に係る検出装置500の効果について説明する。検出装置500は、音声情報から複数の音声区間を検出し、検出した複数の音声区間に対応する時間帯の振動情報を解析し、発話者2Aの発声器官が振動しているか否かを判定する。検出装置500は、発話者2Aの発声器官が振動している音声区間を、第1発話区間として特定する。
【0223】
音声情報に含まれる複数の音声区間のうち、発話者2Aの発声器官が振動している時間帯の音声区間は、発話者2Aが発話している第1発話区間であるといえる。すなわち、接触型振動センサ16bに測定される、発話者2Aの振動情報を用いることで、第1発話区間をより精度よく検出することができる。
【0224】
次に、上記実施例に示した検出装置100(200,300,500)と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。
図21は、検出装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【0225】
図21に示すように、コンピュータ600は、各種演算処理を実行するCPU601と、ユーザからのデータの入力を受け付ける入力装置602と、ディスプレイ603とを有する。また、コンピュータ600は、記憶媒体からプログラム等を読み取る読み取り装置604と、有線または無線ネットワークを介して、マイク、カメラ、振動センサ等からデータを取得するインタフェース装置605とを有する。コンピュータ600は、各種情報を一時記憶するRAM606と、ハードディスク装置607とを有する。そして、各装置601~607は、バス608に接続される。
【0226】
ハードディスク装置607は、取得プログラム607a、第1検出プログラム607b、更新プログラム607c、第2検出プログラム607d、認識プログラム607eを有する。CPU601は、取得プログラム607a、第1検出プログラム607b、更新プログラム607c、第2検出プログラム607d、認識プログラム607eを読み出してRAM606に展開する。
【0227】
取得プログラム607aは、取得プロセス606aとして機能する。第1検出プログラム607bは、第1検出プロセス606bとして機能する。更新プログラム607cは、更新プロセス606cとして機能する。第2検出プログラム607dは、第2検出プロセス606dとして機能する。認識プログラム607eは、認識プロセス606eとして機能する。
【0228】
取得プロセス606aの処理は、取得部150a,250a,350a,550aの処理に対応する。第1検出プロセス606bの処理は、第1検出部150b,250b,350b,550bの処理に対応する。更新プロセス606cの処理は、更新部250cの処理に対応する。第2検出プロセス606dの処理は、第2検出部150c,250d,350c,550cの処理に対応する。認識プロセス606eの処理は、認識部150d,250eの処理に対応する。
【0229】
なお、各プログラム607a~607eについては、必ずしも最初からハードディスク装置607に記憶させておかなくてもよい。例えば、コンピュータ600に挿入されるフレキシブルディスク(FD)、CD-ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ600が各プログラム607a~607eを読み出して実行するようにしてもよい。
【0230】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0231】
(付記1)複数の発話者の音声が含まれる音声情報を取得し、
前記複数の発話者のうち、第1発話者に対して予め学習した音響特徴に基づいて、前記音声情報に含まれる前記第1発話者の第1発話区間を検出し、
前記第1発話区間外であって、前記第1発話区間から所定の時間範囲に含まれる音響特徴を基にして、前記複数の発話者のうち、第2発話者の第2発話区間を検出する
処理をコンピュータに実行させることを特徴とする検出プログラム。
【0232】
(付記2)前記第1発話区間を検出する処理は、前記学習した音響特徴と、音声情報に含まれる音響特徴との類似性を基にして、前記第1発話区間を検出することを特徴とする付記1に記載の検出プログラム。
【0233】
(付記3)前記第1発話区間の音響特徴を基にして、前記学習した音響特徴を更新する処理を更に実行することを特徴とする付記1または2に記載の検出プログラム。
【0234】
(付記4)前記第1発話者の顔または発声器官の映像情報、または、前記発声器官の振動情報を取得し、前記第1発話区間を検出する処理は、前記映像情報、または、前記振動情報を更に用いて、前記第1発話区間を検出することを特徴とする付記1、2または3に記載の検出プログラム。
【0235】
(付記5)前記第1発話区間を検出する処理によって、前記第1発話区間を検出されてから、次の前記第1発話区間が検出されるまでの時間間隔の平均値を算出し、前記平均値に基づいて、前記所定の時間範囲を設定する処理を更に実行することを特徴とする付記1~4のいずれか一つに記載の検出プログラム。
【0236】
(付記6)複数の前記第1発話区間の平均区間長を算出し、前記第1発話区間が前記平均区間長未満である場合、前記所定の時間範囲を広げ、前記第1発話区間が前記平均区間長以上である場合、前記所定の時間範囲を狭める処理を更に実行することを特徴とする付記5に記載の検出プログラム。
【0237】
(付記7)前記第2発話区間を検出する処理は、前記第1発話区間外であって、前記第1発話区間から前記所定の時間範囲に含まれる複数のフレームの音響特徴の最頻値を特定し、前記最頻値に近いフレームが含まれる区間を、前記第2発話区間として検出することを特徴とする付記1~6のいずれか一つに記載の検出プログラム。
【0238】
(付記8)前記第2発話区間を検出する処理は、前記第1発話区間外であって、前記第1発話区間から前記所定の時間範囲に含まれる複数のフレームの音響特徴と、前記学習した音響特徴との類似度の最頻値を特定し、前記最頻値に応じた閾値を特定し、特定した閾値を用いて、前記第2発話区間を検出することを特徴とする付記1~6のいずれか一つに記載の検出プログラム。
【0239】
(付記9)複数の発話者の音声が含まれる音声情報を取得し、
前記複数の発話者のうち、第1発話者に対して予め学習した音響特徴に基づいて、前記音声情報に含まれる前記第1発話者の第1発話区間を検出し、
前記第1発話区間外であって、前記第1発話区間から所定の時間範囲に含まれる音響特徴を基にして、前記複数の発話者のうち、第2発話者の第2発話区間を検出する
処理をコンピュータが実行することを特徴とする検出方法。
【0240】
(付記10)前記第1発話区間を検出する処理は、前記学習した音響特徴と、音声情報に含まれる音響特徴との類似性を基にして、前記第1発話区間を検出することを特徴とする付記9に記載の検出方法。
【0241】
(付記11)前記第1発話区間の音響特徴を基にして、前記学習した音響特徴を更新する処理を更に実行することを特徴とする付記9または10に記載の検出方法。
【0242】
(付記12)前記第1発話者の顔または発声器官の映像情報、または、前記発声器官の振動情報を取得し、前記第1発話区間を検出する処理は、前記映像情報、または、前記振動情報を更に用いて、前記第1発話区間を検出することを特徴とする付記9、10または11に記載の検出方法。
【0243】
(付記13)前記第1発話区間を検出する処理によって、前記第1発話区間を検出されてから、次の前記第1発話区間が検出されるまでの時間間隔の平均値を算出し、前記平均値に基づいて、前記所定の時間範囲を設定する処理を更に実行することを特徴とする付記9~12のいずれか一つに記載の検出方法。
【0244】
(付記14)複数の前記第1発話区間の平均区間長を算出し、前記第1発話区間が前記平均区間長未満である場合、前記所定の時間範囲を広げ、前記第1発話区間が前記平均区間長以上である場合、前記所定の時間範囲を狭める処理を更に実行することを特徴とする付記13に記載の検出方法。
【0245】
(付記15)前記第2発話区間を検出する処理は、前記第1発話区間外であって、前記第1発話区間から前記所定の時間範囲に含まれる複数のフレームの音響特徴の最頻値を特定し、前記最頻値に近いフレームが含まれる区間を、前記第2発話区間として検出することを特徴とする付記9~14のいずれか一つに記載の検出方法。
【0246】
(付記16)前記第2発話区間を検出する処理は、前記第1発話区間外であって、前記第1発話区間から前記所定の時間範囲に含まれる複数のフレームの音響特徴と、前記学習した音響特徴との類似度の最頻値を特定し、前記最頻値に応じた閾値を特定し、特定した閾値を用いて、前記第2発話区間を検出することを特徴とする付記9~14のいずれか一つに記載の検出方法。
【0247】
(付記17)複数の発話者の音声が含まれる音声情報を取得する取得部と、
前記複数の発話者のうち、第1発話者に対して予め学習した音響特徴に基づいて、前記音声情報に含まれる前記第1発話者の第1発話区間を検出する第1検出部と、
前記第1発話区間外であって、前記第1発話区間から所定の時間範囲に含まれる音響特徴を基にして、前記複数の発話者のうち、第2発話者の第2発話区間を検出する第2検出部と
を有することを特徴とする検出装置。
【0248】
(付記18)前記第1検出部は、前記学習した音響特徴と、音声情報に含まれる音響特徴との類似性を基にして、前記第1発話区間を検出することを特徴とする付記17に記載の検出装置。
【0249】
(付記19)前記第1発話区間の音響特徴を基にして、前記学習した音響特徴を更新する更新部を更に有することを特徴とする付記17または18に記載の検出装置。
【0250】
(付記20)前記第1検出部は、前記第1発話者の顔または発声器官の映像情報、または、前記発声器官の振動情報を取得し、前記第1発話区間を検出する処理は、前記映像情報、または、前記振動情報を更に用いて、前記第1発話区間を検出することを特徴とする付記17、18または19に記載の検出装置。
【0251】
(付記21)前記第2検出部は、前記第1検出部によって、前記第1発話区間を検出されてから、次の前記第1発話区間が検出されるまでの時間間隔の平均値を算出し、前記平均値に基づいて、前記所定の時間範囲を設定する処理を更に実行することを特徴とする付記17~20のいずれか一つに記載の検出装置。
【0252】
(付記22)前記第2検出部は、複数の前記第1発話区間の平均区間長を算出し、前記第1発話区間が前記平均区間長未満である場合、前記所定の時間範囲を広げ、前記第1発話区間が前記平均区間長以上である場合、前記所定の時間範囲を狭める処理を更に実行することを特徴とする付記21に記載の検出装置。
【0253】
(付記23)前記第2検出部は、前記第1発話区間外であって、前記第1発話区間から前記所定の時間範囲に含まれる複数のフレームの音響特徴の最頻値を特定し、前記最頻値に近いフレームが含まれる区間を、前記第2発話区間として検出することを特徴とする付記17~22のいずれか一つに記載の検出装置。
【0254】
(付記24)前記第2検出部は、前記第1発話区間外であって、前記第1発話区間から前記所定の時間範囲に含まれる複数のフレームの音響特徴と、前記学習した音響特徴との類似度の最頻値を特定し、前記最頻値に応じた閾値を特定し、特定した閾値を用いて、前記第2発話区間を検出することを特徴とする付記17~22のいずれか一つに記載の検出装置。
【符号の説明】
【0255】
50,55 中継装置
60 ネットワーク
100,200,300,500 検出装置
110,210,310,410,510 通信部
120,220,320,420,520 入力部
130,230,330,430,530 表示部
140,240,340,440,540 記憶部
140a,240a,340a,540a 音声バッファ
140b,240b 学習音響特徴情報
140c,240c 音声認識情報
150,250,350,450,550 制御部
150a,250a,350a,450a,550a 取得部
150b,250b,350b,550b 第1検出部
150c,250d,350c,550c 第2検出部
150d,250e,450b 認識部
240d 閾値テーブル
250c 更新部
340b 映像バッファ
350d,550d 送信部
440a 店員音声バッファ
440b 顧客音声バッファ
440c 店員音声認識情報
440d 顧客音声認識情報
540b 振動情報バッファ