(57)【要約】【課題】音声データにおける話速を正しく算出する。【解決手段】音声処理プログラムは、以下の第１の処理から第５の処理をコンピュータに実行させる。第１の処理は、入力音声データにおける発話区間に含まれる複数の母音区間を検出する処理である。第２の処理は、検出した複数の母音区間それぞれの時間長を算出する処理である。第３の処理は、複数の母音区間の時間長についての頻度分布を算出するとともに、複数の母音区間それぞれの時間長のうちの最小値を特定する処理である。第４の処理は、特定した時間長の最小値と、頻度分布とに基づいて、複数の母音区間それぞれの時間長と対応するモーラ数を算出する処理である。第５の処理は、算出したモーラ数に応じて入力音声データにおける発話区間と対応する出力信号を制御する処理である。【選択図】図２
2018116096.tif 000002
【特許請求の範囲】
【請求項１】
入力音声データにおける発話区間に含まれる複数の母音区間を検出し、
検出した前記複数の母音区間それぞれの時間長を算出し、
前記複数の母音区間の時間長についての頻度分布を算出するとともに、前記複数の母音区間それぞれの時間長のうちの最小値を特定し、
特定した前記時間長の最小値と、前記頻度分布とに基づいて、前記複数の母音区間それぞれの時間長と対応するモーラ数を算出し、
算出した前記モーラ数に応じて前記入力音声データにおける前記発話区間と対応する出力信号を制御する、
処理をコンピュータに実行させることを特徴とする音声処理プログラム。
【請求項２】
前記時間長の最小値を特定する処理では、
前記頻度分布において頻度がピークとなる複数の時間長のうちの最小値を特定する、
ことを特徴とする請求項１に記載の音声処理プログラム。
【請求項３】
前記時間長の最小値を特定する処理では、
前記頻度分布において頻度がピークとなる複数の時間長を特定し、
前記複数の時間長に基づいて、前記頻度分布において隣接する前記ピーク間の時間長を算出し、
算出した前記ピーク間の時間長の平均値を前記時間長の最小値に特定する、
ことを特徴とする請求項１に記載の音声処理プログラム。
【請求項４】
前記頻度分布を算出する処理では、
前記発話区間に含まれる全ての母音区間のうちの、該発話区間における末尾の母音区間を除外して前記頻度分布を算出する、
ことを特徴とする請求項１に記載の音声処理プログラム。
【請求項５】
前記モーラ数を算出する処理では、
前記母音区間の時間長を前記時間長の最小値で除した値に最も近い整数値を、該母音区間のモーラ数とする、
ことを特徴とする請求項１に記載の音声処理プログラム。
【請求項６】
前記出力信号を制御する処理は、
決定した前記複数の母音区間それぞれのモーラ数と、前記入力音声データにおける前記発話区間の時間長とに基づいて、前記入力音声データにおける前記発話区間の話速を算出する処理を含む、
ことを特徴とする請求項１に記載の音声処理プログラム。
【請求項７】
前記出力信号を制御する処理は、
算出した前記話速が閾値以上である場合に、前記入力音声データにおける前記母音区間を伸長して話速を低下させる処理を更に含む、
ことを特徴とする請求項６に記載の音声処理プログラム。
【請求項８】
コンピュータが、
入力音声データにおける発話区間に含まれる複数の母音区間を検出し、
検出した前記複数の母音区間それぞれの時間長を算出し、
前記複数の母音区間の時間長についての頻度分布を算出するとともに、前記複数の母音区間それぞれの時間長のうちの最小値を特定し、
特定した前記時間長の最小値と、前記頻度分布とに基づいて、前記複数の母音区間それぞれの時間長と対応するモーラ数を算出し、
算出した前記モーラ数に応じて前記入力音声データにおける前記発話区間と対応する出力信号を制御する、
処理を実行することを特徴とする音声処理方法。
【請求項９】
入力音声データにおける発話区間に含まれる複数の母音区間を検出する母音区間検出部と、
検出した前記複数の母音区間それぞれの時間長を算出して前記複数の母音区間の時間長についての頻度分布を算出するとともに、前記複数の母音区間それぞれの時間長のうちの最小値を特定し、特定した前記時間長の最小値と、前記頻度分布とに基づいて、前記複数の母音区間それぞれの時間長と対応するモーラ数を決定するモーラ数決定部と、
決定した前記モーラ数と、前記発話区間の時間長とに基づいて前記入力音声データにおける前記発話区間の話速を算出する話速算出部と、
を備えることを特徴とする音声処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声処理プログラム、音声処理方法、及び音声処理装置に関する。
【背景技術】
【０００２】
マイクロフォンで収音して得られる音声データに対する音声処理の１つとして、音声データにおける話速を算出する処理が知られている。音声データにおける話速を算出する際には、フォルマント周波数等の声道特性の変化に基づいて、音声データに含まれる母音の変化を検出し、単位時間あたりの母音数（モーラ数）を算出する（例えば、特許文献１，２を参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平７−２９５５８８号公報
【特許文献２】特開平１０−７０７９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
人が発話する際には同じ母音が連続する長母音が含まれることがある。同じ母音を連続して発する場合、母音の切れ目において声道特性はほとんど変化しない。このため、声道特性の変化に基づいて、音声データに含まれる母音の変化を検出する場合、長母音は１個の母音として検出される。すなわち、声道特性の変化に基づいて、音声データに含まれる母音の変化を検出する場合、実際には２モーラである母音区間が１モーラの母音区間となり、音声データにおける正しい話速を算出することが難しい。
【０００５】
１つの側面において、本発明は、音声データにおける話速を正しく算出することを目的とする。
【課題を解決するための手段】
【０００６】
１つの態様に係る音声処理プログラムは、以下の第１の処理から第５の処理をコンピュータに実行させる。第１の処理は、入力音声データにおける発話区間に含まれる複数の母音区間を検出する処理である。第２の処理は、検出した複数の母音区間それぞれの時間長を算出する処理である。第３の処理は、複数の母音区間の時間長についての頻度分布を算出するとともに、複数の母音区間それぞれの時間長のうちの最小値を特定する処理である。第４の処理は、特定した時間長の最小値と、頻度分布とに基づいて、複数の母音区間それぞれの時間長と対応するモーラ数を算出する処理である。第５の処理は、算出したモーラ数に応じて入力音声データにおける発話区間と対応する出力信号を制御する処理である。
【発明の効果】
【０００７】
上述の態様によれば、音声データにおける話速を正しく算出することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態に係る話速推定装置の機能的構成を示す図である。
【図２】第１の実施形態に係る話速推定装置が行う処理を説明するフローチャートである。
【図３】母音区間を検出する処理の内容を説明するフローチャートである。
【図４】音声データにおける単独母音と長母音との関係を説明する図である。
【図５】母音区間の頻度分布の例を示す図である。
【図６】発話区間の発話内容と各母音区間のモーラ数の算出結果とを説明する図である。
【図７】話速の算出結果の出力例を示す図である。
【図８】モーラ数の算出方法の別の例を示す図である。
【図９】話速推定装置の第１の適用例を示す図である。
【図１０】話速推定装置の第２の適用例を示す図である。
【図１１】第２の実施形態に係る話速推定装置の機能的構成を示す図である。
【図１２】第２の実施形態に係る母音区間を検出する処理の内容を説明するフローチャートである。
【図１３】第２の実施形態に係る母音区間を検出する処理の変形例を説明するフローチャートである。
【図１４】第３の実施形態に係る通話システムのシステム構成を示す図である。
【図１５】第３の実施形態に係る話速調整部の機能的構成を示す図である。
【図１６】話速制御部の機能的構成を示す図である。
【図１７】第３の実施形態に係る話速調整部が行う処理を説明するフローチャートである。
【図１８】音声データの話速を制御する処理の内容を説明するフローチャートである。
【図１９】基本周期の検出方法を説明する図である。
【図２０】音声波形を重ね合わせる方法を説明する図である。
【図２１】音声波形を重ねる際の重み付けの方法を説明する図である。
【図２２】コンピュータのハードウェア構成を示す図である。
【発明を実施するための形態】
【０００９】
［第１の実施形態］
図１は、第１の実施形態に係る話速推定装置の機能的構成を示す図である。
【００１０】
図１に示すように、本実施形態に係る話速推定装置１は、音声取得部１１０と、発話区間検出部１２０と、母音区間検出部１３０と、モーラ数決定部１４０と、話速算出部１５０と、出力部１６０と、を備える。また、図１では省略しているが、話速推定装置１は、音声データを含む各種情報を記憶させる記憶部を備える。
【００１１】
音声取得部１１０は、収音装置２から音声信号（音声データ）を取得する。
発話区間検出部１２０は、音声データにおける発話区間を検出する。発話区間は、話速推定の対象である人物が発した音声を含む区間である。
【００１２】
母音区間検出部１３０は、音声データの発話区間に含まれる母音区間を検出する。
モーラ数決定部１４０は、音声データから検出した複数の母音区間それぞれの長さ（時間長）に基づいて、各母音区間のモーラ数を算出する。本実施形態に係る話速推定装置１のモーラ数決定部１４０は、まず、複数の母音区間それぞれの時間長を算出して該複数の母音区間についての時間長の頻度分布を算出するとともに、複数の母音区間それぞれの時間長のうちの最小値を特定する。その後、モーラ数決定部１４０は、特定した時間長の最小値と、頻度分布とに基づいて、複数の母音区間それぞれの時間長と対応するモーラ数を算出する（決定する）。
【００１３】
話速算出部１５０は、発話区間の時間長と、該発話区間に含まれる母音区間のモーラ数とに基づいて、音声データにおける発話区間の話速（発話速度）を算出する。
【００１４】
出力部１６０は、算出した話速を可視化する表示データを生成して表示装置３に出力する。
【００１５】
また、本実施形態の話速推定装置１におけるモーラ数決定部１４０は、図１に示したように、頻度分布算出部１４１と、ピーク検出部１４２と、モーラ数算出部１４３と、を含む。
【００１６】
頻度分布算出部１４１は、複数の母音区間の時間長に基づいて、音声データにおける母音区間の時間長毎の出現頻度を示す頻度分布を算出する。
【００１７】
ピーク検出部１４２は、母音区間の時間長についての頻度分布において出現頻度がピーク（極大値）となる母音区間の時間長を検出する。
【００１８】
モーラ数算出部１４３は、出現頻度が極大値となる母音区間の時間長に基づいて、各母音区間のモーラ数を算出する。本実施形態に係るモーラ数算出部１４３は、出現頻度が極大値となる母音区間の時間長のうちの最短の時間長を基準時間長（１モーラに相当する時間長）とし、母音区間の時間長と基準時間長との比に基づいて、各母音区間のモーラ数を算出する。
【００１９】
本実施形態の話速推定装置１は、動作を開始すると、収音装置２から音声データを取得する処理と、取得した音声データにおける話速を推定し推定結果を表示装置３に出力する処理とを行う。音声データを取得する処理は、話速推定装置１の音声取得部１１０が行う。
【００２０】
一方、音声データにおける話速を推定し推定結果を表示装置３に出力する処理は、話速推定装置１の発話区間検出部１２０、母音区間検出部１３０、モーラ数決定部１４０、話速算出部１５０、及び出力部１６０が行う。話速推定装置１は、音声データにおける話速を推定し推定結果を表示装置３に出力する処理として、図２に示した処理を行う。
【００２１】
図２は、第１の実施形態に係る話速推定装置が行う処理を説明するフローチャートである。
【００２２】
音声データにおける話速を推定し推定結果を表示装置３に出力する処理において、話速推定装置１は、まず、音声データに含まれる発話区間を検出する（ステップＳ１）。ステップＳ１の処理は、発話区間検出部１２０が行う。発話区間検出部１２０は、既知の検出方法に従い、音声データに含まれる発話区間（言い換えると話速推定の対象である人物が発した音声を含む区間）を検出する。例えば、発話区間検出部１２０は、Voice Activity Detection（ＶＡＤ）により発話区間を検出する。
【００２３】
次に、話速推定装置１は、発話区間に含まれる母音区間を検出する（ステップＳ２）。ステップＳ２の処理は、母音区間検出部１３０が行う。母音区間検出部１３０は、既知の検出方法に従い、音声データの発話区間に含まれる母音区間を検出する。例えば、母音区間検出部１３０は、発話区間内における信号対雑音比の時間変化に基づいて、信号対雑音比が所定の閾値以上で連続する１個の区間を１個の母音区間として検出する。
【００２４】
次に、話速推定装置１は、検出した母音区間のモーラ数（母音数）を決定する処理（ステップＳ３〜Ｓ５）を行う。母音区間のモーラ数を決定するステップＳ３〜Ｓ５の処理は、話速推定装置１のモーラ数決定部１４０が行う。
【００２５】
モーラ数決定部１４０は、まず、検出した複数の母音区間それぞれの時間長に基づいて、母音区間の時間長についての頻度分布を算出する（ステップＳ３）。ステップＳ３の処理は、モーラ数決定部１４０の頻度分布算出部１４１が行う。頻度分布算出部１４１は、検出した複数の母音区間のそれぞれにおける区間の開始時刻と終了時刻とに基づいて、各母音区間の時間長を算出する。また、頻度分布算出部１４１は、各母音区間の時間長に基づいて時間長毎の母音区間の出現頻度を計数し、頻度分布を算出する。この際、頻度分布算出部１４１は、例えば、１個の発話区間における末尾の母音区間を除外して、頻度分布を算出する。また、頻度分布算出部１４１は、例えば、１個の発話区間に含まれる全ての母音区間のうちの、時間長が所定の範囲内である母音区間を抽出して頻度分布を算出してもよい。時間長の所定の範囲は、例えば、一般的な話速における単独母音及び長母音の時間長等に基づいて設定する。
【００２６】
次に、モーラ数決定部１４０は、ステップＳ３で算出した頻度分布において出現頻度がピーク（極大値）となる時間長を検出する（ステップＳ４）。ステップＳ４の処理は、モーラ数決定部１４０のピーク検出部１４２が行う。例えば、ピーク検出部１４２は、頻度分布における最短時間長の出現頻度から順に、判定対象である時間長の出現頻度と、その前後の時間長の出現頻度と比較し、出現頻度が極大値となる時間長を検出する。
【００２７】
次に、モーラ数決定部１４０は、頻度分布から検出した時間長のうちの最小値と、母音区間の時間長とに基づいて、各母音区間のモーラ数を算出する（ステップＳ５）。ステップＳ５の処理は、モーラ数決定部１４０のモーラ数算出部１４３が行う。モーラ数算出部１４３は、頻度分布においてピークとなる複数の時間長のうちの最小値を基準時間長とし、母音区間の時間長を基準時間長で除した値を算出する。基準時間長は、音声データの発話区間における１モーラ（単独母音）の時間長に相当する。このため、モーラ数算出部１４３は、母音区間の時間長を基準時間長で除した値に近い整数値を、該母音区間のモーラ数とする。例えば、ある母音区間の時間長が基準時間長の約２倍である場合、モーラ数算出部１４３は、該母音区間のモーラ数を２とする。
【００２８】
モーラ数決定部１４０によるステップＳ３〜Ｓ５の処理を終えると、話速推定装置１は、次に、ステップＳ５で算出した各母音区間のモーラ数と、発話区間の時間長とに基づいて、発話区間の話速を算出する（ステップＳ６）。ステップＳ６の処理は、話速算出部１５０が行う。話速算出部１５０は、話速として、発話区間に含まれる母音区間についてのモーラ数の合計を該発話区間の時間長で除した値（モーラ／秒）を算出する。
【００２９】
次に、話速推定装置１は、算出した話速を出力する（ステップＳ７）。ステップＳ７の処理は、出力部１６０が行う。例えば、出力部１６０は、ステップＳ６で算出した話速を可視化する表示データを生成し、該表示データを表示装置３に出力する。
【００３０】
話速推定装置１は、上記のステップＳ１〜Ｓ７の処理を繰り返し行う。話速推定装置１は、ステップＳ１で検出した１個の発話区間に対するステップＳ２〜Ｓ７の処理を終えてから次の発話区間を検出する処理（ステップＳ１）を行ってもよいし、ステップＳ１〜Ｓ７の処理の全体又は一部をパイプライン化して行ってもよい。
【００３１】
図３は、母音区間を検出する処理の内容を説明するフローチャートである。
本実施形態の話速推定装置１は、上記のステップＳ２の処理（母音区間を検出する処理）として、例えば、図３に示した処理を行う。図３に示した処理は、話速推定装置１の母音区間検出部１３０が行う。
【００３２】
母音区間検出部１３０は、まず、音声データの発話区間における時刻ｔｍ（ｍ＝１，２，・・・，Ｍ）の信号対雑音比ＳＮＲ（ｔｍ）を算出する（ステップＳ２０１）。発話区間における時刻ｔｍの時間間隔（ｔｍ−ｔｍ−１）は、例えば、音声データのパワー及び雑音パワーを算出する際の処理単位（フレーム）の時間長とする。以下の説明では、音声データにおける時刻ｔｍと対応付けられたフレームを、時刻ｔｍのフレームという。
【００３３】
ステップＳ２０１の処理において、母音区間検出部１３０は、下記式（１）により時刻ｔｍのフレームにおける信号対雑音比ＳＮＲ（ｔｍ）を算出する。
【００３４】
ＳＮＲ（ｔｍ）＝Ｐ（ｔｍ）＋Ｎ（ｔｍ）      ・・・（１）
【００３５】
式（１）のＰ（ｔｍ）は、音声データのうちの時刻ｔｍのフレームにおけるパワーである。式（１）のＮ（ｔｍ）は、音声データのうちの時刻ｔｍのフレームにおける雑音パワーである。母音区間検出部１３０は、既知の算出方法に従って時刻ｔｍのフレームにおけるパワーＰ（ｔｍ）及び雑音パワーＮ（ｔｍ）を算出する。例えば、時刻ｔｍの雑音パワーＮ（ｔｍ）は、式（２）により算出する。
【００３６】
【数１】
2018116096.tif 000003
【００３７】
式（２）のＮ１（ｔｍ−１）は、音声データにおけるパワーＰ（ｔｍ−１）と雑音パワーＮ（ｔｍ−２）との差に基づいて更新される雑音パワーである。また、式（２）において、ＴＨＰは判定閾値であり、ＣＯＦは忘却係数である。判定閾値ＴＨＰ及び忘却係数ＣＯＦの値は、それぞれ、適宜設定すればよい。
【００３８】
ステップＳ２０１の処理を終えると、母音区間検出部１３０は、次に、変数ｍ、変数ｉ、及び信号対雑音比ＳＮＲ（ｔ０）を、それぞれ、ｍ＝１、ｉ＝１、及びＳＮＲ（ｔ０）＝０に設定する（ステップＳ２０２）。変数ｉは、母音区間を識別する値である。
【００３９】
次に、母音区間検出部１３０は、時刻ｔｍ−１の信号対雑音比ＳＮＲ（ｔｍ−１）が閾値ＴＨＳＮＲよりも小さく、かつ時刻ｔｍの信号対雑音比ＳＮＲ（ｔｍ）が閾値ＴＨＳＮＲ以上であるか否かを判定する（ステップＳ２０３）。すなわち、ステップＳ２０３では、ＳＮＲ（ｔｍ−１）＜ＴＨＳＮＲ、かつＳＮＲ（ｔｍ）≧ＴＨＳＮＲであるか否かを判定する。
【００４０】
閾値ＴＨＳＮＲは、発話区間における音声が母音であるか非母音（子音等）であるかを判別する値である。音声データの発話区間に含まれる母音区間の信号対雑音比は、該発話区間における非母音区間（子音区間等）の信号対雑音比と比べて大きな値となる。このため、本実施形態では、発話区間のうちの信号対雑音比が閾値ＴＨＳＮＲ以上である区間を母音区間とする。閾値ＴＨＳＮＲは、例えば、母音区間における信号対雑音比の統計値と、非母音区間における信号対雑音比の統計値とに基づいて設定する。
【００４１】
ＳＮＲ（ｔｍ−１）＜ＴＨＳＮＲ、かつＳＮＲ（ｔｍ）≧ＴＨＳＮＲである場合、信号対雑音比は、時刻ｔｍ−１からｔｍの間において閾値ＴＨＳＮＲよりも小さい値から閾値ＴＨＳＮＲ以上の値に変化する。すなわち、ＳＮＲ（ｔｍ−１）＜ＴＨＳＮＲ、かつＳＮＲ（ｔｍ）≧ＴＨＳＮＲである場合、時刻ｔｍ−１は非母音区間に含まれ、時刻ｔｍは母音区間に含まれる。よって、ＳＮＲ（ｔｍ−１）＜ＴＨＳＮＲ、かつＳＮＲ（ｔｍ）≧ＴＨＳＮＲである場合（ステップＳ２０３；ＹＥＳ）、母音区間検出部１３０は、次に、ｉ番目の母音区間の開始時刻Ｔｓ（ｉ）を時刻ｔｍに設定する（ステップＳ２０４）。ステップＳ２０４の処理を終えると、母音区間検出部１３０は、次に、変数ｍが発話区間における最後の値Ｍ以上であるか否かを判定する（ステップＳ２０７）。
【００４２】
一方、ＳＮＲ（ｔｍ−１）≧ＴＨＳＮＲ、又はＳＮＲ（ｔｍ）＜ＴＨＳＮＲである場合（ステップＳ２０３；ＮＯ）、母音区間検出部１３０は、次に、ＳＮＲ（ｔｍ−１）≧ＴＨＳＮＲ、かつＳＮＲ（ｔｍ）＜ＴＨＳＮＲであるか否かを判定する（ステップＳ２０５）。
【００４３】
ＳＮＲ（ｔｍ−１）≧ＴＨＳＮＲ、かつＳＮＲ（ｔｍ）＜ＴＨＳＮＲである場合（ステップＳ２０５；ＹＥＳ）、時刻ｔｍ−１は母音区間に含まれ、時刻ｔｍは非母音区間に含まれる。よって、ＳＮＲ（ｔｍ−１）≧ＴＨＳＮＲ、かつＳＮＲ（ｔｍ）＜ＴＨＳＮＲである場合（ステップＳ２０５；ＹＥＳ）、母音区間検出部１３０は、次に、ｉ番目の母音区間の終了時刻Ｔｅ（ｉ）を時刻ｔｍ−１に設定し、変数ｉをｉ＋１に更新する（ステップＳ２０６）。ステップＳ２０６において、母音区間検出部１３０は、母音区間の終了時刻Ｔｅ（ｉ）を時刻ｔｍ−１に設定した後、変数ｉをｉ＋１に更新する。ステップＳ２０６の処理を終えると、母音区間検出部１３０は、次に、ステップＳ２０７の判定を行う。
【００４４】
これに対し、ＳＮＲ（ｔｍ−１）≧ＴＨＳＮＲ、かつＳＮＲ（ｔｍ）＜ＴＨＳＮＲを満たしていない場合、時刻ｔｍ−１及び時刻ｔｍにおける信号対雑音比は、両方とも閾値ＴＨＳＮＲ以上であるか、或いは両方とも閾値ＴＨＳＮＲよりも小さい。すなわち、ＳＮＲ（ｔｍ−１）≧ＴＨＳＮＲ、かつＳＮＲ（ｔｍ）＜ＴＨＳＮＲを満たしていない場合、時刻ｔｍ−１，ｔｍは、両方とも非母音区間に含まれるか、或いは両方とも母音区間に含まれる。よって、ＳＮＲ（ｔｍ−１）＜ＴＨＳＮＲ、又はＳＮＲ（ｔｍ）≧ＴＨＳＮＲである場合（ステップＳ２０５；ＮＯ）、母音区間検出部１３０は、ステップＳ２０６をスキップし、次に、ステップＳ２０７の判定を行う。
【００４５】
ステップＳ２０７では、母音区間検出部１３０は、上記のように、現在の変数ｍの値が発話区間における最大値Ｍ以上であるか否かを判定する。ｍ＜Ｍである場合（ステップＳ２０７；ＮＯ）、母音区間検出部１３０は、変数ｍをｍ＋１に更新し（ステップＳ２０８）、ステップＳ２０３以降の処理を行う。
【００４６】
一方、ｍ≧Ｍである場合（ステップＳ２０７；ＹＥＳ）、母音区間検出部１３０は、母音区間を示す情報［Ｔｓ（ｉ），Ｔｅ（ｉ）］を出力し（ステップＳ２０９）、１個の発話区間に含まれる母音区間を検出する処理を終了する。
【００４７】
本実施形態に係る母音区間検出部１３０は、発話区間検出部１２０で検出した発話区間のそれぞれに対し、図３のステップＳ２０１〜Ｓ２０９の処理を行う。
【００４８】
母音区間検出部１３０で発話区間に含まれる複数の母音区間を検出した後、話速推定装置１は、ステップＳ３〜Ｓ５の処理により、検出した各母音区間のモーラ数（母音数）を決定する。母音区間のモーラ数を決定する処理は、話速推定装置１のモーラ数決定部１４０が行う。本実施形態に係るモーラ数決定部１４０は、上記のように、各母音区間の時間長Ｌ（ｉ）＝｛Ｔｅ（ｉ）−Ｔｓ（ｉ）｝に基づいて、各母音区間のモーラ数を決定する。
【００４９】
図４は、音声データにおける単独母音と長母音との関係を説明する図である。
図４の（ａ）には、単独母音の例として、音声データにおける「はる」という言葉の発話区間４０１についての時間長を示している。例えば、「はる」が季節の「春」である場合、「は」の発話時間と、「る」の発話時間とは略同一となる。すなわち、図４の（ａ）に示した「は」の時間長ΔＴ１（＝ｔｍ２−ｔ１）と、「る」の時間長ΔＴ２（＝ｔｍ３−ｔｍ２）は、略同一（ΔＴ１≒ΔＴ２）となる。
【００５０】
一方、図４の（ｂ）には、長母音の例として、音声データにおける「きょう」という言葉の発話区間４０３についての時間長を示している。例えば、「きょう」が日付の「今日」である場合、「きょ」の発話時間と、「う」の発話時間とは略同一となる。すなわち、図４の（ｂ）に示した「きょ」の時間長ΔＴ３（＝ｔｍ５−ｔ１）と、「う」の時間長ΔＴ４（＝ｔｍ６−ｔｍ５）とは、略同一（ΔＴ３≒ΔＴ４）となる。更に、話者が同一人物であり一定の話速で発話した場合、「きょ」の時間長ΔＴ３や「う」の時間長ΔＴ４は、図４の（ａ）に示した「は」の時間長ΔＴ１や「る」の時間長ΔＴ２と、略同一となる。
【００５１】
人が「はる」と発話する際には、図４の（ａ）に示した発音表記４０２のように、２音節目の「る」を発話する際に母音から子音（非母音）に変化する。このため、音声データにおける「はる」の発話区間４０１では、「は」を発話している時刻ｔ１と時刻ｔｍ２との間の時刻ｔｍ１が母音区間の開始時刻Ｔｓ（１）となり、「は」の発話が終了する時刻ｔｍ２が母音区間の終了時刻Ｔｅ（１）となる。また、音声データにおける「はる」の発話区間４０１では、「る」を発話している時刻ｔｍ２と時刻ｔｍ３との間に母音区間の開始時刻Ｔｓ（２）が存在し、「る」の発話が終了する時刻ｔｍ３が母音区間の終了時刻Ｔｅ（２）となる。よって、音声データにおける「はる」という発話区間４０１から検出される母音区間は２個となる。
【００５２】
一方、人が「きょう」と発話する際には、図４の（ｂ）に示した発音表記４０４のように「ＫＹＯＯ」と発声することが多い。すなわち、人が「きょう」と発話する際には、２音節目を「う（Ｕ）」と発音する代わりに、「きょ（ＫＹＯ）」の母音「Ｏ」を長母音のように発声することが多い。このため、音声データにおける「きょう」の発話区間４０３では、「きょ」を発話している時刻ｔ１と時刻ｔｍ５との間の時刻ｔｍ４が母音区間の開始時刻Ｔｓとなり、「う」の発話が終了する時刻ｔｍ６が母音区間の終了時刻Ｔｅとなる。よって、音声データにおける「きょう」という発話区間４０３から検出される母音区間は１個となる。
【００５３】
このように、音声データにおける「はる」という発話区間４０１と、「きょう」という発話区間４０３とは、いずれも２音節であり発話区間の時間長が略同一であるものの、検出される母音区間の数が異なる。「はる」は母音区間の数が２個であるのに対し、「きょう」の母音区間の数は１個である。このため、母音数を発話区間の時間長で除して話速を算出した場合、音声データにおける「きょう」という発話区間４０３の話速は、「はる」という発話区間４０１の話速の約２倍となってしまう。本実施形態に係る話速推定装置１は、このような長母音化による話速の誤りを防ぐため、母音区間の時間長についての頻度分布に基づいて、各母音区間の母音数（モーラ数）を決定する。
【００５４】
図４の（ａ）の発音表記４０２のように、音声データにおける「は（ＨＡ）」や「る（ＲＵ）」等の子音を含む音節では、母音区間の時間長が音節全体の時間長の７割以上を占める。例えば、音声データにおける「は」の発話区間では、母音区間の時間長Ｌ（１）＝Ｔｅ（１）−Ｔｓ（１）が発話区間の時間長ΔＴ１の７割以上を占める。同様に、音声データにおける「る」の発話区間では、母音区間の時間長Ｌ（２）＝Ｔｅ（２）−Ｔｓ（２）が発話区間の時間長ΔＴ２の７割以上を占める。
【００５５】
一方、図４の（ｂ）の発音表記４０４のように、子音を含む音節と母音のみの音節とが連続した区間で母音が長母音化した場合、母音区間の時間長は、次のようになる。まず、子音を含む「きょ」の音節における母音区間の時間長は、当該音節の時間長ΔＴ３の７割以上を占める。また、母音のみである「う」の音節における母音区間の時間長は、当該音節の時間長ΔＴ４となる。このため、「きょう」という発話区間４０３に含まれる母音区間の時間長Ｌは、｛（０．７×ΔＴ３）＋ΔＴ４｝≦Ｌ＜（ΔＴ３＋ΔＴ４）となる。よって、「きょう」という発話区間４０３に含まれる母音区間の時間長Ｌは、単独母音の時間長Ｌ（１），Ｌ（２）の約２倍となる。
【００５６】
このように、長母音化した母音区間の時間長は、単独母音の時間長の整数倍に近い値となる。このため、発話区間に含まれる複数の母音区間の時間長についての頻度分布には、単独母音の時間長と対応した特徴が現れる。
【００５７】
図５は、母音区間の頻度分布の例を示す図である。
１個の発話区間に含まれる複数の母音区間のそれぞれにおける時間長に基づいて、時間長毎の母音区間の頻度を計数して算出した頻度分布は、例えば、図５に示したように４個のピークＰ１，Ｐ２，Ｐ３，及びＰ４が見られる。なお、図５の頻度分布は、時間長Ｌを０．０２秒毎の複数の区間に分割し、区間毎に、区間内に時間長が含まれる母音区間の数を頻度として算出している。例えば、時間長Ｌ＝０．２秒である母音区間の頻度は、発話区間における複数の母音区間のうちの、時間長（Ｔｅ−Ｔｓ）が０．１９≦（Ｔｅ−Ｔｓ）＜０．２１である母音区間の数を示している。
【００５８】
長母音化した母音区間や複数種の単独母音が連続した母音区間の時間長は、単独母音の母音区間の時間長よりも長くなる。また、日本語では一般的に発話中の１モーラ（単独母音）をほぼ同じ長さで発話する性質（モーラの等時性）があるため、上記のように、１個の発話区間内における単独母音の母音区間の時間長は、略一定である。このため、頻度分布における４個のピークＰ１〜Ｐ４のうちの時間長が最短であるピークＰ１が、単独母音の母音区間の時間長を示しているといえる。また、長母音化した母音区間の時間長は、単独母音の母音区間の時間長の整数倍に近い値となる。このため、頻度分布においてピークＰ２〜Ｐ４が現れる時間長は、ピークＰ１の時間長ＴＰ１の整数倍に近い値となる。したがって、本実施形態では、頻度分布における時間長が最短であるピークＰ１の時間長ＴＰ１を基準時間長とし、下記式（３）により各母音区間の母音数（モーラ数）ＶＮ（ｉ）を算出する。
【００５９】
【数２】
2018116096.tif 000004
【００６０】
式（３）のＬ（ｉ）は、ｉ番目の母音区間の時間長である。
【００６１】
このように、本実施形態の話速推定装置１では、母音区間の時間長についての頻度分布に基づいて母音区間の基準時間長（単独母音の時間長）ＴＰ１を推定し、各母音区間の時間長と基準時間長ＴＰ１との比から各母音区間の母音数を決定する。このため、本実施形態の話速推定装置１では、長母音化された母音区間のモーラ数（母音数）の誤りを防ぐことが可能となる。
【００６２】
図６は、発話区間の発話内容と各母音区間のモーラ数の算出結果とを説明する図である。
【００６３】
図６の文字列４１１は、音声データの発話区間における発話内容をテキスト化して示したものである。また、図６の発音表記４１２は、文字列４１１における各音節を母音及び子音で示したものである。文字列４１１に示した「きょうはいいようきですね」という言葉を自然に発話した場合、発音表記４１２に示したように「きょう」、「いい」、及び「よう」の部分で母音が長母音化することが多い。このため、音声データの発話区間に含まれる母音区間を検出する処理を行うと、発音表記４１２の下方に示したように７個の母音区間が検出される。この際、文字列４１１の「はいい」の部分から検出される母音区間は、母音が「Ａ」である区間と、母音が「Ｉ」である区間とが連続している区間である。このため、母音が長母音化している母音区間の母音数を１とした場合、「はいい」の部分から検出される母音区間の母音数は２となり、他の母音区間の母音数は１となる。よって、母音が長母音化している母音区間の母音数を１とした場合、音声データの発話区間（時刻ｔ１〜ｔＭ）におけるモーラ数（母音数）は８となり、実際のモーラ数（１１個）とは異なる。すなわち、話速の算出に用いるモーラ数と、音声データにおける実際のモーラ数とに差異があるため、話速を精度良く推定することが困難である。
【００６４】
これに対し、本実施形態に係るモーラ数の算出方法では、まず、各母音区間の時間長についての頻度分布に基づいて基準時間長ＴＰ１を算出する。図６に示した例における基準時間長ＴＰ１は、文字列４１１における「きですね」の部分区間から検出された母音区間の時間長Ｌ（４），Ｌ（５），Ｌ（６），及びＬ（７）のそれぞれと略同一の時間長となる。算出した基準時間長ＴＰ１を用い、式（３）により各母音区間のモーラ数ＶＮ（ｉ）を算出すると、それぞれ、図６に示した結果が得られる。１番目の母音区間の時間長Ｌ（１）及び３番目の母音区間の時間長Ｌ（３）は、それぞれ、基準時間長ＴＰ１の約２倍となる。そのため、１番目の母音区間のモーラ数ＶＮ（１）及び３番目の母音区間のモーラ数ＶＮ（３）は、それぞれ、２となる。また、２番目の母音区間の時間長Ｌ（２）は、基準時間長ＴＰ１の約３倍となる。そのため、２番目の母音区間のモーラ数ＶＮ（２）は、３となる。更に、残りの母音区間のモーラ数ＶＮ（４）〜ＶＮ（７）は、それぞれ、１となる。したがって、本実施形態に係るモーラ数の算出方法では、文字列４１１の発話区間に含まれるモーラ数が１１となる。すなわち、本実施形態によれば、各母音区間のモーラ数を正しく算出することが可能となる。よって、本実施形態によれば、発話区間の話速を正しく推定することが可能となる。
【００６５】
発話区間の話速ＳＲは、例えば、下記式（４）により算出する。
【００６６】
【数３】
2018116096.tif 000005
【００６７】
式（４）のＳＴｓ及びＳＴｅは、それぞれ、発話区間の開始時刻及び終了時刻である。
【００６８】
発話区間の時間長（ＳＴｅ−ＳＴｓ）を１０秒とすると、発話区間に含まれる母音区間の数に基づいて算出した話速は、約０．７（モーラ／秒）となる。これに対し、母音区間の時間長についての頻度分布に基づいて各母音区間のモーラ数ＶＮ（ｉ）を決定した場合の話速ＳＲは、１．１（モーラ／秒）となる。このように、本実施形態によれば、発話区間のモーラ数（母音数）を正しく算出し、発話区間における話速を精度良く算出することが可能となる。
【００６９】
本実施形態に係る話速推定装置１は、話速を算出した後、算出した話速を可視化する表示データを生成し表示装置３に出力する。
【００７０】
図７は、話速の算出結果の出力例を示す図である。
図７には、話速の算出結果の出力例として、発話区間毎に算出した話速の時間変化を提示するグラフ４２１を示している。グラフ４２１の左端には、話速の値と、話速が適正であるか否かを示す情報が表示される。図７に示した例では、話速が６．０〜８．０モーラ／秒である場合を適正な話速としている。グラフ４２１における横軸は、会話時間である。グラフ４２１には、音声データから検出した各発話区間における話速ＳＲを示す曲線５０１が表示される。表示装置３に表示したグラフ４２１における曲線５０１は、話速推定装置１において発話区間及び母音区間を検出して話速を算出する毎に、更新される。グラフ４２１における曲線５０１は、例えば、会話中の全ての発話区間の話速を示すものであってもよいし、会話中の直近の所定時間内における話速のみを示すものであってもよい。
【００７１】
なお、図７のグラフ４２１は、話速の算出結果を可視化して表示する方法の一例に過ぎない。話速の算出結果は、グラフ４２１のような話速の時間変化を示す方法に限らず、他の方法で表示してもよい。例えば、話速の算出結果の表示形態をレベルメータのような表示形態とし、話速推定装置１で算出した最新（直近）の話速のみを表示してもよい。また、話速の算出結果を表示装置３に表示する際には、例えば、算出した話速が所定の閾値以上となった場合にのみ話者に注意喚起する表示をしてもよい。
【００７２】
上記のように、本実施形態に係る話速推定装置１では、発話区間に含まれる複数の母音区間のそれぞれにおける時間長の頻度分布に基づいて検出した単独母音の時間長と、母音区間の時間長との比に基づいて、各母音区間のモーラ数（母音数）を算出する。このため、本実施形態に係る話速推定装置１では、長母音化した母音区間についてのモーラ数の誤りを防ぎ、発話区間の正しい話速を算出することが可能となる。よって、話速推定装置１は、例えば、話速の推定対象である利用者に対して正しい話速の時間変化を提示し、適正な話速での発話をするよう該利用者を導くことが可能となる。
【００７３】
なお、図２及び図３のフローチャートは、本実施形態に係る発話推定装置１が行う処理の一例に過ぎない。本実施形態に係る発話推定装置１が行う処理は、図２及び図３に示した内容に限らず、適宜変更可能である。例えば、発話区間に含まれる母音区間を検出する処理では、信号対雑音比の代わりに、音声データの波形自己相関、或いはフォルマント周波数に基づいて母音区間を検出してもよい。
【００７４】
また、母音区間の時間長についての頻度分布を算出する際には、例えば、検出した複数の母音区間のうちの、時間長が所定の範囲内である母音区間のみを抽出して算出してもよい。所定の範囲は、例えば、予め統計処理を行って得た単独母音の時間長に基づいて設定する。
【００７５】
また、各母音区間のモーラ数を算出する際に用いる基準時間長は、頻度分布における複数のピークのうちの時間長が最短となるピークと対応した時間長ＴＰ１に限らず、例えば、頻度分布において隣接するピークの時間間隔の平均値としてもよい。
【００７６】
図８は、モーラ数の算出方法の別の例を示す図である。
図８には、発話区間に含まれる複数の母音区間の時間長についての頻度分布の例を示している。図８の頻度分布は、図５の頻度分布と同じ算出方法により算出したものである。すなわち、図８の頻度分布は、横軸（時間長Ｌ）を０．０２秒毎の複数の区間に分割し、区間毎に、区間内に時間長が含まれる母音区間の数を頻度として算出している。例えば、時間長Ｌ＝０．２秒である母音区間の頻度は、発話区間における複数の母音区間のうちの、時間長（Ｔｅ−Ｔｓ）が０．１９≦（Ｔｅ−Ｔｓ）＜０．２１である母音区間の数を示している。
【００７７】
図８の頻度分布からは、時間長の短いピークから順に第１のピークＰ１，第２のピークＰ２，第３のピークＰ３，及び第４のピークＰ４が検出される。第１のピークＰ１の時間長ＴＰ１は、モーラ数が１である母音区間の時間長（すなわち単独母音の時間長）と略一致する。また、第２のピークＰ２の時間長ＴＰ２、第３のピークＰ３の時間長ＴＰ３、第４のピークＰ４の時間長ＴＰ４は、それぞれ、モーラ数が２、３、及び４の母音区間の時間長と略一致する。
【００７８】
このように、母音区間の時間長についての頻度分布から４個のピークが検出された場合、各母音区間のモーラ数を算出する際に用いる基準時間長は、例えば、下記式（５）により算出される平均時間長ｄ＿ａｖｅとしてもよい。
【００７９】
【数４】
2018116096.tif 000006
【００８０】
式（５）におけるｄｊ（ｊ＝１，２，３）は、それぞれ、ｊ＋１番目のピークＰｊ＋１の時間長ＴＰｊ＋１と、ｊ番目のピークＰｊの時間長ＴＰｊとの時間差である。
【００８１】
式（５）により算出した平均時間長ｄ＿ａｖｅを基準時間長とする場合、各母音区間のモーラ数ＶＮ（ｉ）は、下記式（６）により算出する。
【００８２】
【数５】
2018116096.tif 000007
【００８３】
頻度分布における第１のピークＰ１の時間長ＴＰ１は、母音のみの１音節における母音区間の時間長と、図４に示したような子音を含む１音節における母音区間の時間長とにより定まる。子音を含む１音節における母音区間の時間長は、上記のように１音節分の時間長の７割以上を占めるが、１音節分の時間長よりも短い。したがって、図４の（ｂ）に示したように、子音を含む音節の母音区間が１音節分だけ長母音化した場合の母音区間の時間長は、２音節分の時間長よりも短くなる。
【００８４】
これに対し、式（５）における時間差ｄ１，ｄ２，及びｄ３は、それぞれ、１音節分に相当する時間長と略一致する。このため、第１のピークＰ１の時間長ＴＰ１のみに基づいて各母音区間のモーラ数ＶＮ（ｉ）を算出する場合に比べと、例えば、判定条件の境界部分におけるモーラ数ＶＮ（ｉ）を正しく算出することが可能となる。
【００８５】
本実施形態に係る話速推定装置１は、例えば、電話網等のネットワークを利用した通話システムにおける話者の話速の推定に適用可能である。
【００８６】
図９は、話速推定装置の第１の適用例を示す図である。
図９に示すように、通話システム１０は、第１の話者９Ａと、第２の話者９Ｂとの通話に利用される。第１の話者９Ａは、話速推定装置１と、通話処理装置１１とを含む情報処理装置１２に、収音装置２、表示装置３、及びレシーバ１３を接続したものを通話装置（電話機）として用いる。
【００８７】
第１の話者９Ａが通話装置（情報処理装置１２）を用いて通話を行う際、通話処理装置１１は、第１の交換機１４Ａ、及びネットワーク１５を介して、通話相手が利用する通話装置（電話機）に接続される。第１の話者９Ａの通話相手が第２の話者９Ｂである場合、通話処理装置１１は、第１の交換機１４Ａ、ネットワーク１５、及び第２の交換機１４Ｂを介して、第２の話者９Ｂが利用する電話機１６と接続される。
【００８８】
通話処理装置１１は、収音装置２から取得した第１の話者９Ａの音声を含む音声データを電話機１６に向けて送信する処理と、電話機１６から受信した音声データをレシーバ１３に出力する処理とを行う。一方、電話機１６の通話処理部１６１０は、収音装置１６２０から取得した第２の話者９Ｂの音声を含む音声データを通話処理装置１１（情報処理装置１２）に向けて送信する処理と、通話処理装置１１から受信した音声データをレシーバ１６３０に出力する処理とを行う。
【００８９】
第１の話者９Ａと第２の話者９Ｂとが通話している間、情報処理装置１２に含まれる話速推定装置１は、収音装置２から第１の話者９Ａの音声を含む音声データを取得し、図２及び図３のフローチャートに沿って第１の話者９Ａの話速を算出する。また、話速推定装置１は、算出した話速を可視化する表示データを生成して表示装置３に出力する。このため、第１の話者９Ａは、第２の話者９Ｂとの通話中に、自身の話速が適正であるか否かを把握し、話速を調整することが可能となる。これにより、例えば、第１の話者９Ａを、第２の話者９Ｂが発話内容を聞き取りやすい話速での発話に導くことが可能となる。
【００９０】
なお、情報処理装置１２は、話速推定装置１と、通話処理装置１１との２個の装置を内包する装置に限らず、話速推定装置１が行う処理を担う第１の処理部と、通話処理装置１１が行う処理を担う第２の処理部とを含む１個の装置であってもよい。
【００９１】
また、通話システム１０は、例えば、ネットワーク１５を利用した電話会議システムや、テレビ会議システムであってもよい。
【００９２】
図１０は、話速推定装置の第２の適用例を示す図である。
図１０に示した通話システム１０は、第１の話者９Ａと、第２の話者９Ｂとの通話に利用される。第１の話者９Ａは、通話処理装置１１に相当する通話処理部２１を含む情報処理装置１２に収音装置２、及びレシーバ１３を接続したものを、通話装置（電話機）として用いる。この際、情報処理装置１２には話速推定装置１を接続し、話速推定装置１には表示装置３を接続する。
【００９３】
第１の話者９Ａが通話装置を用いて通話を行う際、情報処理装置１２の通話処理部２１は、第１の交換機１４Ａ、及びネットワーク１５を介して、通話相手が利用する通話装置（電話機）に接続される。第１の話者９Ａの通話相手が第２の話者９Ｂである場合、情報処理装置１２の通話処理部２１は、第１の交換機１４Ａ、ネットワーク１５、及び第２の交換機１４Ｂを介して、第２の話者９Ｂが利用する電話機１６と接続される。
【００９４】
情報処理装置１２の通話処理部２１は、収音装置２から取得した第１の話者９Ａの音声を含む音声データを電話機１６に向けて送信する処理と、電話機１６から受信した音声データをレシーバ１３に出力する処理とを行う。また、情報処理装置１２の通話処理部２１は、収音装置２から取得した音声データを話速推定装置１に出力する。一方、電話機１６の通話処理部１６１０は、収音装置１６２０から取得した第２の話者９Ｂの音声を含む音声データを情報処理装置１２に向けて送信する処理と、情報処理装置１２から受信した音声データをレシーバ１６３０に出力する処理とを行う。
【００９５】
第１の話者９Ａと第２の話者９Ｂとが通話している間、話速推定装置１は、情報処理装置１２を介して第１の話者９Ａの音声を含む音声データを取得し、図２及び図３のフローチャートに沿って第１の話者９Ａの話速を算出する。また、話速推定装置１は、算出した話速を可視化する表示データを生成して表示装置３に出力する。これにより、第１の話者９Ａは、第２の話者９Ｂとの通話中に、自身の話速が適正であるか否かを把握し、話速を調整することが可能となる。
【００９６】
また、図９及び図１０の通話システム１０における表示装置３の設置場所は、第１の話者９Ａの近傍に限らず、例えば、第１の話者９Ａとは異なる場所にいる第三者の近傍に設置することも可能である。更に、通話システム１０における表示装置３は、複数個であってもよい。
【００９７】
加えて、話速推定装置１で算出した（推定した）第１の話者９Ａの話速は、例えば、図示しない話速推定装置１の記憶部、或いは他の装置に記憶させてもよい。
【００９８】
なお、本実施形態で挙げた話速推定装置１は、モーラ数決定部１４０において決定した複数の母音区間それぞれのモーラ数に基づいて、入力音声データと対応する出力信号を制御する音声処理装置の一例に過ぎない。すなわち、本実施形態に係るモーラ数決定部１４０において決定した複数の母音区間それぞれのモーラ数は、入力音声データの話速を提示する表示データ（出力信号）を制御するだけでなく、入力データと対応する他の出力信号の制御にも利用可能である。
【００９９】
更に、本実施形態に係る話速推定装置１の機能的構成は、図１に示した構成に限らず、話速推定装置１で行う処理の内容に応じて適宜変更可能である。例えば、図２のステップＳ３、Ｓ４、及びＳ５の処理は、それぞれ、ステップＳ３’，Ｓ４’，及びＳ５’に置換可能である。
（ステップＳ３’）複数の母音区間それぞれの時間長を算出する処理。
（ステップＳ４’）複数の母音区間の時間長についての頻度分布を算出するとともに、複数の母音区間それぞれの時間長のうちの最小値を特定する処理。
（ステップＳ５’）特定した時間長の最小値と、頻度分布とに基づいて複数の母音区間それぞれの時間長と対応するモーラ数を算出する処理。
【０１００】
話速処理装置１においてステップＳ３’〜Ｓ５’の処理を行う場合、話速推定装置１のモーラ数決定部１４０は、時間長算出部と、最小値特定部と、モーラ数算出部と、を含むものであってもよい。この場合、時間長算出部はステップＳ３’の処理を行い、最小値特定部はステップＳ４’の処理を行う。また、モーラ数算出部はステップＳ５’の処理を行う。
【０１０１】
［第２の実施形態］
図１１は、第２の実施形態に係る話速推定装置の機能的構成を示す図である。
【０１０２】
図１１に示すように、本実施形態に係る話速推定装置１は、音声取得部１１０と、発話区間検出部１２０と、母音区間検出部１３０と、モーラ数決定部１４０と、話速算出部１５０と、出力部１６０と、を備える。また、図１１では省略しているが、話速推定装置１は、音声データを含む各種情報を記憶させる記憶部を備える。
【０１０３】
音声取得部１１０は、収音装置２から音声データを取得する。
発話区間検出部１２０は、音声データにおける発話区間を検出する。発話区間は、話速推定の対象である人物が発した音声を含む区間である。
【０１０４】
母音区間検出部１３０は、音声データの発話区間に含まれる母音区間を検出する。なお、本実施形態の話速推定装置１における母音区間検出部１３０は、発話区間検出部１２０で検出した発話区間からではなく、音声データ全体から母音区間を検出する。
【０１０５】
モーラ数決定部１４０は、音声データから検出した複数の母音区間のそれぞれにおける時間長に基づいて、各母音区間のモーラ数を算出する。頻度分布算出部１４１と、ピーク検出部１４２と、モーラ数算出部１４３と、を含む。
【０１０６】
話速算出部１５０は、発話区間の時間長と、該発話区間に含まれる母音区間のモーラ数とに基づいて、音声データにおける話速を算出する。
【０１０７】
出力部１６０は、算出した話速を可視化する表示データを生成して表示装置３に出力する。
【０１０８】
本実施形態の話速推定装置１は、動作を開始すると、収音装置２から音声データを取得する処理と、取得した音声データにおける話速を推定し推定結果を表示装置３に出力する処理とを行う。音声データを取得する処理は、話速推定装置１の音声取得部１１０が行う。
【０１０９】
一方、音声データにおける話速を推定し推定結果を表示装置３に出力する処理は、話速推定装置１の発話区間検出部１２０、母音区間検出部１３０、モーラ数決定部１４０、話速算出部１５０、及び出力部１６０が行う。本実施形態の話速推定装置１は、音声データにおける話速を推定し推定結果を表示装置３に出力する処理として、図２のステップＳ１〜Ｓ７の処理を行う。なお、本実施形態の話速推定装置１における母音区間検出部１３０は、発話区間検出部１２０による発話区間の検出結果を参照せずに、音声データ全体から母音区間を検出する。すなわち、本実施形態の話速推定装置１における母音区間検出部１３０は、ステップＳ２の母音区間を検出する処理として、例えば、図１２に示した処理を行う。
【０１１０】
図１２は、第２の実施形態に係る母音区間を検出する処理の内容を説明するフローチャートである。
【０１１１】
本実施形態の話速推定装置１における母音区間検出部１３０は、音声データを複数の区間に分割し、区間毎に図１２に示したステップＳ２１１〜Ｓ２１９の処理を行う。母音区間検出部１３０は、まず、音声データのうちの処理対象の区間における時刻ｔｍ（ｍ＝１，２，・・・，Ｍ）のそれぞれで、音声データの波形自己相関ＡＣ（ｔｍ）を算出する（ステップＳ２１１）。発話区間における時刻ｔｍの時間間隔（ｔｍ−ｔｍ−１）は、例えば、音声データを処理する際の処理単位（フレーム）の時間長とする。以下の説明では、音声データにおける時刻ｔｍと対応付けられたフレームを、時刻ｔｍのフレームという。
【０１１２】
ステップＳ２１１の処理において、母音区間検出部１３０は、下記式（７）により時刻ｔ（各時刻ｔｍ）の波形自己相関ＡＣ（ｔ）を算出する。
【０１１３】
【数６】
2018116096.tif 000008
【０１１４】
式（７）のＮは、波形自己相関の算出幅（サンプル数）であり、例えば、Ｎ＝５００とする。式（７）のＳＬは、波形自己相関の探索範囲の下限値（サンプル数）であり、例えば、ＳＬ＝２０とする。式（７）のＳＨは、波形自己相関の探索範囲の上限値（サンプル数）であり、例えば、ＳＨ＝１２０とする。
【０１１５】
ステップＳ２１１の処理を終えると、母音区間検出部１３０は、次に、変数ｍ、変数ｉ、及び波形自己相関ＡＣ（ｔ０）を、それぞれ、ｍ＝１、ｉ＝１、及びＡＣ（ｔ０）＝０に設定する（ステップＳ２１２）。変数ｉは、母音区間を識別する値である。
【０１１６】
次に、母音区間検出部１３０は、時刻ｔｍ−１の波形自己相関ＡＣ（ｔｍ−１）が閾値ＴＨＡＣよりも小さく、かつ時刻ｔｍの自己波形相関ＡＣ（ｔｍ）が閾値ＴＨＡＣ以上であるか否かを判定する（ステップＳ２１３）。すなわち、ステップＳ２１３では、ＡＣ（ｔｍ−１）＜ＴＨＡＣ、かつＡＣ（ｔｍ）≧ＴＨＡＣであるか否かを判定する。
【０１１７】
閾値ＴＨＡＣは、音声データに含まれる音声が母音であるか非母音（子音等）であるかを判別する値である。式（７）により波形自己相関を算出した場合、音声データに含まれる母音区間の波形自己相関は、非母音区間（子音区間等）の波形自己相関と比べて大きな値となる。このため、本実施形態では、音声データのうちの波形自己相関が閾値ＴＨＡＣ以上である区間を母音区間とする。閾値ＴＨＡＣは、例えば、母音区間における波形自己相関の統計値と、非母音区間における波形自己相関の統計値とに基づいて設定する。
【０１１８】
ＡＣ（ｔｍ−１）＜ＴＨＡＣ、かつＡＣ（ｔｍ）≧ＴＨＡＣである場合、波形自己相関は、時刻ｔｍ−１からｔｍの間において閾値ＴＨＡＣよりも小さい値から閾値ＴＨＡＣ以上の値に変化する。すなわち、ＡＣ（ｔｍ−１）＜ＴＨＡＣ、かつＡＣ（ｔｍ）≧ＴＨＡＣである場合、時刻ｔｍ−１のフレームは非母音区間に含まれ、時刻ｔｍのフレームは母音区間に含まれる。よって、ＡＣ（ｔｍ−１）＜ＴＨＡＣ、かつＡＣ（ｔｍ）≧ＴＨＡＣである場合（ステップＳ２１３；ＹＥＳ）、母音区間検出部１３０は、次に、ｉ番目の母音区間の開始時刻Ｔｓ（ｉ）を時刻ｔｍに設定する（ステップＳ２１４）。ステップＳ２１４の処理を終えると、母音区間検出部１３０は、次に、変数ｍが音声データのうちの波形自己相関を算出した区間における最後の値Ｍ以上であるか否かを判定する（ステップＳ２１７）。
【０１１９】
一方、ＡＣ（ｔｍ−１）≧ＴＨＡＣ、又はＡＣ（ｔｍ）＜ＴＨＡＣである場合（ステップＳ２１３；ＮＯ）、母音区間検出部１３０は、次に、ＡＣ（ｔｍ−１）≧ＴＨＡＣ、かつＡＣ（ｔｍ）＜ＴＨＡＣであるか否かを判定する（ステップＳ２１５）。
【０１２０】
ＡＣ（ｔｍ−１）≧ＴＨＡＣ、かつＡＣ（ｔｍ）＜ＴＨＡＣである場合（ステップＳ２１５；ＹＥＳ）、時刻ｔｍ−１のフレームは母音区間に含まれ、時刻ｔｍのフレームは非母音区間に含まれる。よって、ＡＣ（ｔｍ−１）≧ＴＨＡＣ、かつＡＣ（ｔｍ）＜ＴＨＡＣである場合（ステップＳ２１５；ＹＥＳ）、母音区間検出部１３０は、次に、ｉ番目の母音区間の終了時刻Ｔｅ（ｉ）を時刻ｔｍ−１に設定し、変数ｉをｉ＋１に更新する（ステップＳ２１６）。ステップＳ２１６において、母音区間検出部１３０は、母音区間の終了時刻Ｔｅ（ｉ）を時刻ｔｍ−１に設定した後、変数ｉをｉ＋１に更新する。ステップＳ２１６の処理を終えると、母音区間検出部１３０は、次に、ステップＳ２１７の判定を行う。
【０１２１】
これに対し、ＡＣ（ｔｍ−１）≧ＴＨＡＣ、かつＡＣ（ｔｍ）＜ＴＨＡＣを満たしていない場合（ステップＳ２１５；ＮＯ）、時刻ｔｍ−１及び時刻ｔｍにおける波形自己相関は、両方とも閾値ＴＨＡＣ以上であるか、或いは両方とも閾値ＴＨＡＣよりも小さい。すなわち、ＡＣ（ｔｍ−１）≧ＴＨＡＣ、かつＡＣ（ｔｍ）＜ＴＨＡＣを満たしていない場合、時刻ｔｍ−１，ｔｍのフレームは、両方とも非母音区間に含まれるか、或いは両方とも母音区間に含まれる。よって、ＡＣ（ｔｍ−１）≧ＴＨＡＣ、かつＡＣ（ｔｍ）＜ＴＨＡＣを満たしていない場合（ステップＳ２１５；ＮＯ）、母音区間検出部１３０は、ステップＳ２１６の処理をスキップし、次に、ステップＳ２１７の判定を行う。
【０１２２】
ステップＳ２１７では、母音区間検出部１３０は、上記のように、変数ｍが音声データのうちの現在処理対象となっている区間における最後の値Ｍ以上であるか否かを判定する。ｍ＜Ｍである場合（ステップＳ２１７；ＮＯ）、母音区間検出部１３０は、変数ｍをｍ＋１に更新し（ステップＳ２１８）、ステップＳ２１３以降の処理を行う。
【０１２３】
一方、ｍ≧Ｍである場合（ステップＳ２１７；ＹＥＳ）、母音区間検出部１３０は、母音区間を示す情報［Ｔｓ（ｉ），Ｔｅ（ｉ）］を出力し（ステップＳ２１９）、音声データにおける１個の処理対象区間に含まれる母音区間を検出する処理を終了する。
【０１２４】
本実施形態に係る母音区間検出部１３０は、音声データにおける処理対象区間毎に、ステップＳ２１１〜Ｓ２１９の処理を行う。
【０１２５】
本実施形態に係る話速推定装置１は、発話区間検出部１２０で検出した発話区間と、ステップＳ２１１〜Ｓ２１９の処理により母音区間検出部１３０で検出した母音区間とに基づいて、図２のステップＳ３〜Ｓ６の処理を行い、話速を算出する。すなわち、本実施形態に係る話速推定装置１は、音声データに含まれる母音区間の時間長についての頻度分布に基づいて、１モーラ（単独母音）の母音区間の時間長を検出する。その後、話速推定装置１は、１モーラの母音区間の時間長と、母音区間の時間長とに基づいて、各母音区間のモーラ数を決定する。このため、本実施形態に係る話速推定装置１では、長母音化した母音区間についてのモーラ数の誤りを防ぎ、発話区間の正しい話速を算出することが可能となる。よって、話速推定装置１は、例えば、話速の推定対象である利用者に対して正しい話速の時間変化を提示し、適正な話速での発話をするよう該利用者を導くことが可能となる。
【０１２６】
また、本実施形態の話速推定装置１は、例えば、算出した話速を可視化する表示データを生成して表示装置３に出力する。この際、話速推定装置１は、例えば、図１０に示したグラフ４２１のような表示データを生成して表示装置３に表示させる。これにより、話速の推定対象である人物に対し、会話中に話速を提示することが可能となり、適正な話速に導くことが可能となる。
【０１２７】
なお、図１２のフローチャートは、母音区間を検出する処理の一例に過ぎない。本実施形態に係る母音区間を検出する処理では、波形自己相関の時間変化に限らず、音声データにおける他の特性の時間変化に基づいて母音区間を検出してもよい。例えば、母音区間を検出する処理では、第１の実施形態で説明した信号対雑音比の時間変化に基づいて母音区間を検出してもよい。また、例えば、母音区間を検出する処理では、図１３のようにフォルマント周波数の時間変化に基づいて母音区間を検出してもよい。
【０１２８】
図１３は、第２の実施形態に係る母音区間を検出する処理の変形例を説明するフローチャートである。
【０１２９】
フォルマント周波数に基づいて母音区間を検出する場合、母音区間検出部１３０は、まず、音声データのうちの処理対象の区間における時刻ｔｍ（ｍ＝１，２，・・・，Ｍ）のそれぞれでの、フォルマント周波数を算出する（ステップＳ２２１）。発話区間における時刻ｔｍの時間間隔（ｔｍ−ｔｍ−１）は、例えば、音声データを処理する際の処理単位（フレーム）の時間長とする。以下の説明では、音声データにおける時刻ｔｍと対応付けられたフレームを、時刻ｔｍのフレームという。
【０１３０】
ステップＳ２１１の処理において、母音区間検出部１３０は、既知の算出方法に従い、例えば、音声データの時刻ｔｍのフレームにおけるフォルマント周波数ＦＭ（ｔｍ，ｋ）を算出する。例えば、母音区間検出部１３０は、第１フォルマント周波数ＦＭ（ｔｍ，１）、第２フォルマント周波数ＦＭ（ｔｍ，２）、及び第３フォルマント周波数ＦＭ（ｔｍ，３）を算出する。
【０１３１】
ステップＳ２２１の処理を終えると、母音区間検出部１３０は、次に、変数ｍ、変数ｉ、フォルマント周波数、及びフォルマント周波数の時間変化平均の各値を初期値に設定する（ステップＳ２２２）。ステップＳ２２２において、母音区間検出部１３０は、変数ｍ、及び変数ｉを、それぞれ、ｍ＝１，ｉ＝１に設定する。変数ｉは、母音区間を識別する値である。また、母音区間検出部１３０は、フォルマント周波数の初期値を、例えば、ＦＭ（ｔ０，１）＝ＦＭ（ｔ０，２）＝ＦＭ（ｔ０，３）＝０に設定する。更に、母音区間検出部１３０は、フォルマント周波数の時間変化平均の初期値ΔＦＭ（ｔ０）を、ΔＦＭ（ｔ０）≧ＴＨＦＭとなる値に設定する。閾値ＴＨＦＭは、音声データに含まれる音声が母音であるか非母音（子音）であるかを判別する値である。
【０１３２】
次に、母音区間検出部１３０は、時刻ｔｍ−１からｔｍにおけるフォルマント周波数の時間変化平均ΔＦＭ（ｔｍ）を算出する（ステップＳ２２３）。母音区間検出部１３０は、例えば、下記式（８）によりフォルマント周波数の時間変化平均ΔＦＭ（ｔｍ）を算出する。
【０１３３】
【数７】
2018116096.tif 000009
【０１３４】
次に、母音区間検出部１３０は、時刻ｔｍ−１での時間変化平均ΔＦＭ（ｔｍ−１）が閾値ＴＨＦＭ以上であり、かつ時刻ｔｍでの時間変化平均ΔＦＭ（ｔｍ）が閾値ＴＨＦＭよりも小さいか否かを判定する（ステップＳ２２４）。閾値ＴＨＦＭは、音声データに含まれる音声が母音であるか非母音（子音）であるかを判別する値である。音声データにおける母音区間の特徴は、主として、第１フォルマント周波数及び第２フォルマント周波数の分布により決定する。言い換えると、音声データの１個の母音区間におけるフォルマント周波数の時間変化平均ΔＦＭは、略一定の値であり、かつ非母音区間における時間変化平均ΔＦＭと比べて小さな値となる。このため、音声データのうちのフォルマント周波数の時間変化平均ΔＦＭが閾値ＴＨＦＭよりも小さいフレームが連続する区間を母音区間とみなすことが可能となる。閾値ＴＨＦＭは、例えば、統計処理により得られる、母音区間におけるフォルマント周波数の時間変化平均の統計値と、非母音区間におけるフォルマント周波数の時間変化平均の統計値とに基づいて設定する。
【０１３５】
ΔＦＭ（ｔｍ−１）≧ＴＨＦＭ、かつΔＦＭ（ｔｍ）＜ＴＨＦＭである場合（ステップＳ２２４；ＹＥＳ）、母音区間検出部１３０は、次に、ｉ番目の母音区間の開始時刻Ｔｓ（ｉ）を時刻ｔｍ−１に設定する（ステップＳ２２５）。ステップＳ２２５の処理を終えると、母音区間検出部１３０は、次に、変数ｍが音声データのうちのフォルマント周波数を算出した区間における最後の値Ｍ以上であるか否かを判定する（ステップＳ２２８）。
【０１３６】
一方、ΔＦＭ（ｔｍ−１）＜ＴＨＦＭ、又はΔＦＭ（ｔｍ）≧ＴＨＦＭである場合（ステップＳ２２４；ＮＯ）、母音区間検出部１３０は、次に、ΔＦＭ（ｔｍ−１）＜ＴＨＦＭ、かつΔＦＭ（ｔｍ）≧ＴＨＦＭであるか否かを判定する（ステップＳ２２６）。
【０１３７】
ΔＦＭ（ｔｍ−１）＜ＴＨＦＭ、かつΔＦＭ（ｔｍ）≧ＴＨＦＭである場合（ステップＳ２２６；ＹＥＳ）、母音区間検出部１３０は、次に、ｉ番目の母音区間の終了時刻Ｔｅ（ｉ）を時刻ｔｍ−１に設定するとともに、変数ｉをｉ＋１に更新する（ステップＳ２２７）。ステップＳ２２７の処理を終えると、母音区間検出部１３０は、次に、ステップＳ２２８の判定を行う。
【０１３８】
これに対し、ΔＦＭ（ｔｍ−１）＜ＴＨＦＭ、かつΔＦＭ（ｔｍ）≧ＴＨＦＭを満たしていない場合、時刻ｔｍ−１及び時刻ｔｍにおけるフォルマント周波数の時間変化平均は、両方とも閾値ＴＨＦＭ以上であるか、或いは両方とも閾値ＴＨＦＭよりも小さい。すなわち、ΔＦＭ（ｔｍ−１）＜ＴＨＦＭ、かつΔＦＭ（ｔｍ）≧ＴＨＦＭを満たしていない場合、音声データにおける時刻ｔｍ−１，ｔｍのフレームは、両方とも非母音区間に含まれるか、或いは両方とも母音区間に含まれる。よって、ΔＦＭ（ｔｍ−１）＜ＴＨＦＭ、かつΔＦＭ（ｔｍ）≧ＴＨＦＭを満たしていない場合（ステップＳ２２６；ＮＯ）、母音区間検出部１３０は、ステップＳ２２７の処理をスキップして、次に、ステップＳ２２８の判定を行う。
【０１３９】
上記のように、ステップＳ２２８では、母音区間検出部１３０は、変数ｍが音声データのうちのフォルマント周波数を算出した区間における最後の値Ｍ以上であるか否かを判定する。ｍ＜Ｍである場合（ステップＳ２２８；ＮＯ）、母音区間検出部１３０は、変数ｍをｍ＋１に更新し（ステップＳ２２９）、ステップＳ２２３以降の処理を行う。
【０１４０】
一方、ｍ≧Ｍである場合（ステップＳ２２８；ＹＥＳ）、母音区間検出部１３０は、母音区間を示す情報［Ｔｓ（ｉ），Ｔｅ（ｉ）］を出力し（ステップＳ２３０）、音声データにおける１個の処理対象区間に対する母音区間を検出する処理を終了する。
【０１４１】
このように、音声データにおける母音区間は、第１フォルマント周波数及び第２フォルマント周波数を含むフォルマント周波数の時間変化平均に基づいて検出することも可能である。フォルマント周波数の時間変化平均に基づいて母音区間を検出する場合も、母音が長母音化することにより、例えば、実際には２モーラである母音区間が１個の母音区間として検出されることがある。しかしながら、音声データに含まれる母音区間の時間長についての頻度分布に基づいて各母音区間の母音数を決定することにより、音声データにおける発話区間のモーラ数（母音数）を正しく算出し、話速を精度良く算出することが可能となる。
【０１４２】
なお、本実施形態で挙げた話速推定装置１は、モーラ数決定部１４０において決定した複数の母音区間それぞれのモーラ数に基づいて、入力音声データと対応する出力信号を制御する音声処理装置の一例に過ぎない。すなわち、本実施形態に係るモーラ数決定部１４０において決定した複数の母音区間それぞれのモーラ数は、入力音声データの話速を提示する表示データ（出力信号）を制御するだけでなく、入力データと対応する他の出力信号の制御にも利用可能である。
【０１４３】
また、本実施形態に係る話速推定装置１のモーラ数決定部１４０は、上述したステップＳ３’の処理を行う時間長算出部と、ステップＳ４’の処理を行う最小値特定部と、ステップＳ５’の処理を行うモーラ数決定部とを含むものであってもよい。
【０１４４】
［第３の実施形態］
図１４は、第３の実施形態に係る通話システムのシステム構成を示す図である。
【０１４５】
図１４に示すように、本実施形態に係る通話システム１０は、第１の話者９Ａと、第２の話者９Ｂとの通話に利用される。第１の話者９Ａは、携帯電話端末２５を通話装置（電話機）として用いる。携帯電話端末２５は、通話処理部２１と、収音装置２と、レシーバ１３と、話速調整部２６とを含む。
【０１４６】
第１の話者９Ａが携帯電話端末２５を用いて通話を行う際、通話処理部２１は、基地局３０、及びネットワーク１５を介して、通話相手が利用する通話装置（電話機）に接続される。携帯電話端末２５（通話処理部２１）と基地局３０とは、所定の無線通信規格に従った無線通信により接続される。第１の話者９Ａの通話相手が第２の話者９Ｂである場合、通話処理部２１は、基地局３０、ネットワーク１５、及び交換機１４Ｂを介して、第２の話者９Ｂが利用する電話機１６と接続される。
【０１４７】
携帯電話端末２５は、収音装置２から取得した第１の話者９Ａの音声を含む音声データの話速を調整して電話機１６に向けて送信する処理と、電話機１６から受信した音声データをレシーバ１３に出力する処理とを行う。携帯電話端末２５において音声データの話速を調整する処理は、話速調整部２６が行う。また、携帯電話端末２５において、話速を調整した音声データを電話機１６に向けて送信する処理と、電話機１６から受信した音声データをレシーバ１３に出力する処理とは、通話処理部２１が行う。
【０１４８】
一方、第２の話者９Ｂが利用する電話機１６は、通話処理部１６０１と、収音装置１６２０と、レシーバ１６３０とを含む。電話機１６の通話処理部１６１０は、収音装置１６２０から取得した第２の話者９Ｂの音声を含む音声データを携帯電話端末２５に向けて送信する処理と、携帯電話端末２５から受信した音声データをレシーバ１６３０に出力する処理とを行う。
【０１４９】
本実施形態に係る通話システムにおける携帯電話端末２５は、上記のように、話速調整部２６において、収音装置２から取得した第１の話者９Ａの音声を含む音声データの話速を調整する処理を行う。話速調整部２６は、音声データにおける第１の話者９Ａの話速を算出した後、該話速の算出結果に基づいて、音声データにおける話速が適正な話速になるよう音声データを調整する。本実施形態における話速調整部２６は、音声データにおける話速が閾値以上である場合に、音声データを伸長させて話速を減速させる。
【０１５０】
図１５は、第３の実施形態に係る話速調整部の機能的構成を示す図である。
図１５に示すように、本実施形態の携帯電話端末２５における話速調整部２６は、音声取得部１１０と、発話区間検出部１２０と、母音区間検出部１３０と、モーラ数決定部１４０と、話速算出部１５０と、話速制御部１７０と、出力部１６２と、を備える。また、話速調整部２６は、音声データ１９１及び目標伸長率１９２を含む各種情報を記憶させる記憶部１９０を備える。目標伸長率１９２は、音声データにおける話速を減速させる際の音声データの伸長率の目標値である。
【０１５１】
音声取得部１１０は、収音装置２から音声データを取得する。
発話区間検出部１２０は、音声データにおける発話区間を検出する。発話区間は、話速推定の対象である人物が発した音声を含む区間である。
【０１５２】
母音区間検出部１３０は、音声データの発話区間に含まれる母音区間を検出する。なお、本実施形態の話速調整部２６における母音区間検出部１３０は、発話区間検出部１２０で検出した発話区間からではなく、音声データ全体から母音区間を検出する。
【０１５３】
モーラ数決定部１４０は、音声データから検出した複数の母音区間のそれぞれの時間長に基づいて、各母音区間のモーラ数を算出する。モーラ数決定部１４０は、第１の実施形態で説明した方法により、各母音区間のモーラ数を算出する。モーラ数決定部１４０は、頻度分布算出部１４１と、ピーク検出部１４２と、モーラ数算出部１４３と、を含む。
【０１５４】
話速算出部１５０は、発話区間の時間長と、該発話区間に含まれる母音区間のモーラ数とに基づいて、音声データにおける話速（発話速度）を算出する。
【０１５５】
話速制御部１７０は、話速算出部１５０で算出した話速に基づいて、音声データの話速を制御する。本実施形態に係る話速制御部１７０は、算出した話速が適正な話速よりも速い場合に、目標伸長率１９２を参照して、音声データの話速が適正な話速となるよう音声データを伸長させる。
【０１５６】
出力部１６２は、話速制御部１７０により話速を制御した音声データを通話処理部２１に出力する。
【０１５７】
図１６は、話速制御部の機能的構成を示す図である。
図１６に示すように、本実施形態に係る話速制御部１７０は、基本周期検出部１７１と、波形処理部１７２と、伸長制御部１７３と、を含む。
【０１５８】
基本周期検出部１７１は、音声データのうちの処理対象である母音区間の基本周期を検出する。
【０１５９】
波形処理部１７２は、音声データに基本周期の波形を重ねて音声データを伸長させる。
伸長制御部１７３は、音声データを伸長させるか否か、言い換えると基本周期の波形を重ねるか否かの制御を行う。伸長制御部１７３は、まず、話速算出部１５０で算出した話速に基づいて、音声データを伸長させるか否かを判定する。また、音声データを伸長させる場合、伸長制御部１７３は、波形処理部１７２で基本周期の波形を重ねた音声データの実績伸長率と、目標伸長率とに基づいて、基本周期の波形を更に重ねるか否かの制御を行う。
【０１６０】
本実施形態の携帯電話端末２５における話速調整部２６は、収音装置２から音声データを取得する処理と、取得した音声データにおける話速を制御して通話処理部２１に出力する処理とを行う。音声データを取得する処理は、話速調整部２６の音声取得部１１０が行う。
【０１６１】
一方、音声データにおける話速を制御して出力する処理は、話速調整部２６の発話区間検出部１２０、母音区間検出部１３０、モーラ数決定部１４０、話速算出部１５０、話速制御部１７０、及び出力部１６２が行う。話速調整部２６は、音声データにおける話速を制御して出力する処理として、図１７に示した処理を行う。
【０１６２】
図１７は、第３の実施形態に係る話速調整部が行う処理を説明するフローチャートである。
【０１６３】
音声データにおける話速を制御して出力する処理において、話速調整部２６は、まず、音声データに含まれる発話区間を検出する（ステップＳ１）。ステップＳ１の処理は、発話区間検出部１２０が行う。発話区間検出部１２０は、既知の検出方法に従い、音声データに含まれる発話区間（言い換えると話速推定の対象である人物が発した音声を含む区間）を検出する。例えば、発話区間検出部１２０は、ＶＡＤにより発話区間を検出する。
【０１６４】
次に、話速調整部２６は、発話区間に含まれる母音区間を検出する（ステップＳ２）。ステップＳ２の処理は、母音区間検出部１３０が行う。母音区間検出部１３０は、既知の検出方法に従い、音声データにおける母音区間を検出する。例えば、母音区間検出部１３０は、音声データにおける信号対雑音比の時間変化に基づいて、信号対雑音比が所定の閾値以上で連続する１個の区間を１個の母音区間として検出する。
【０１６５】
次に、話速調整部２６は、検出した母音区間のモーラ数（母音数）を決定する処理（ステップＳ３〜Ｓ５）を行う。母音区間のモーラ数を決定するステップＳ３〜Ｓ５の処理は、話速調整部２６のモーラ数決定部１４０が行う。
【０１６６】
モーラ数決定部１４０は、まず、検出した複数の母音区間のそれぞれの時間長に基づいて、母音区間の時間長についての頻度分布を算出する（ステップＳ３）。ステップＳ３の処理は、モーラ数決定部１４０の頻度分布算出部１４１が行う。頻度分布算出部１４１は、検出した複数の母音区間のそれぞれにおける区間の開始時刻と終了時刻とに基づいて、母音区間の時間長を算出する。また、頻度分布算出部１４１は、各母音区間の時間長に基づいて時間長毎の母音区間の出現頻度を計数し、頻度分布を算出する。この際、頻度分布算出部１４１は、例えば、１個の発話区間における末尾の母音区間を除外して、頻度分布を算出する。
【０１６７】
次に、モーラ数決定部１４０は、ステップＳ３で算出した頻度分布において出現頻度が極大値（ピーク）となる時間長を検出する（ステップＳ４）。ステップＳ４の処理は、モーラ数決定部１４０のピーク検出部１４２が行う。例えば、ピーク検出部１４２は、頻度分布における最短時間長の出現頻度から順に、判定対象である時間長の出現頻度と、その前後の時間長の出現頻度と比較し、出現頻度が極大値となる時間長を検出する。
【０１６８】
次に、モーラ数決定部１４０は、頻度分布から検出した時間長のうちの最小値と、母音区間の時間長とに基づいて、各母音区間のモーラ数を算出する（ステップＳ５）。ステップＳ５の処理は、モーラ数決定部１４０のモーラ数算出部１４３が行う。モーラ数算出部１４３は、頻度分布においてピークとなる複数の時間長のうちの最小値を基準時間長とし、まず、母音区間の時間長を基準時間長で除した値を算出する。その後、モーラ数算出部１４３は、母音区間の時間長を基準時間長で除した値に近い整数値を、該母音区間のモーラ数とする。
【０１６９】
モーラ数決定部１４０によるステップＳ３〜Ｓ５の処理を終えると、話速調整部２６は、次に、ステップＳ５で算出した各母音区間のモーラ数と、発話区間の時間長とに基づいて、発話区間の話速を算出する（ステップＳ６）。ステップＳ６の処理は、話速算出部１５０が行う。話速算出部１５０は、話速として、発話区間の時間長を、該発話区間に含まれる母音区間についてのモーラ数の合計で除した値（モーラ／秒）を算出する。
【０１７０】
次に、話速調整部２６は、算出した話速に基づいて、音声データの話速を制御する処理（ステップＳ８）を行う。ステップＳ８の処理は、話速制御部１７０が行う。話速制御部１７０は、音声データのうちの算出した話速が適正な話速よりも速い区間に、該当区間における基本周期の波形を重ねて音声データを伸長させる処理を行う。
【０１７１】
次に、話速調整部２６は、話速制御部１７０において話速を調整した音声データを通話処理部２１にする（ステップＳ９）。ステップＳ９の処理は、出力部１６２が行う。
【０１７２】
話速調整部２６は、通話中、上記のステップＳ１〜Ｓ６，Ｓ８，及びＳ９の処理を繰り返し行う。この際、話速調整部２６は、音声データにおける１個の処理対象区間に対するステップＳ１〜ＳＳ６，Ｓ８，及びＳ９の処理を終えてから次の処理対象区間に対する処理を行ってもよいし、各ステップの処理をパイプライン化して行ってもよい。
【０１７３】
本実施形態に係る携帯端末装置１における話速調整部２６は、上記のように、音声データにおける母音区間の時間長についての頻度分布に基づいて、１モーラ（単独母音）に相当する母音区間の時間長を算出し、各母音区間の母音数を決定する。このため、話速調整部２６は、長母音化による話速の誤りを防ぎ、話速を精度良く算出する（推定する）ことが可能となり、音声データにおける話速を適正な話速に調整することが可能となる。
【０１７４】
本実施形態の話速調整部２６における話速制御部１７０は、音声データの話速を制御する処理（ステップＳ８）として、例えば、図１８に示した処理を行う。
【０１７５】
図１８は、音声データの話速を制御する処理の内容を説明するフローチャートである。
話速制御部１７０は、音声データにおける話速を算出した区間（例えば、発話区間）毎に、図１８のステップＳ８０１〜Ｓ８０７の処理を行う。話速制御部１７０は、まず、話速算出部１５０で算出した話速に基づいて、処理対象区間の話速が閾値以上であるか否かを判定する（ステップＳ８０１）。ステップＳ８０１の判定は、例えば、話速制御部１７０の伸長制御部１７３が行う。話速が閾値よりも小さい（遅い）場合（ステップＳ８０１；ＮＯ）、話速制御部１７０は、処理対象区間に対する話速を制御する処理を終了する。話速の閾値は、例えば、８モーラ／秒とする。
【０１７６】
処理対象区間の話速が閾値以上である場合（ステップＳ８０１；ＹＥＳ）、話速制御部１７０は、次に、処理対象区間に対する実績伸長率を初期化する（ステップＳ８０２）。ステップＳ８０２の処理は、話速制御部１７０の伸長制御部１７３が行う。
【０１７７】
その後、話速制御部１７０は、音声データにおける処理対象区間を伸長させるステップＳ８０３〜Ｓ８０７の処理を行う。例えば、ステップＳ８０３〜Ｓ８０７の処理は、１フレーム期間を２０ミリ秒とするフレーム処理とする。
【０１７８】
音声データにおける処理対象区間を伸長させる処理において、話速制御部１７０は、まず、処理対象区間における母音区間の基本周期を検出する（ステップＳ８０３）。ステップＳ８０３の処理は、話速制御部１７０の基本周期検出部１７１が行う。基本周期検出部１７１は、既知の検出方法に従って、処理対象区間の音声波形についての自己相関を算出し、シフト量が０よりも大きい区間において自己相関が初めて極大となるシフト量と対応する周期を、基本周期として算出する。
【０１７９】
次に、話速制御部１７０は、算出した基本周期に基づいてピッチの時間変化率を算出する（ステップＳ８０４）。ステップＳ８０４の処理は、例えば、話速制御部１７０の伸長制御部１７３が行う。伸長制御部１７３は、既知の算出方法に従って、ピッチの時間変化率を算出する。
【０１８０】
次に、話速制御部１７０は、実績伸長率が目標伸長率よりも小さいか否かを判定する（ステップＳ８０５）。ステップＳ８０５の判定処理は、例えば、話速制御部１７０の伸長制御部１７３が行う。伸長制御部１７３は、記憶部１９０の目標伸長率１９２を参照して現在の実績伸長率が目標伸長率１９２よりも小さいか否かを判定する。
【０１８１】
実績伸長率が目標伸長率よりも小さい場合（ステップＳ８０５；ＹＥＳ）、話速制御部１７０は、音声データの処理対象区間に基本周期の音声波形を重ね合わせる（ステップＳ８０６）。ステップＳ８０６の処理は、話速制御部１７０の波形処理部１７２が行う。波形処理部１７２は、既知の方法に従って、音声データの処理対象区間に基本周期の音声波形を重ね合わせる。
【０１８２】
ステップＳ８０６の処理の後、話速制御部１７０は、実績伸長率を更新し（ステップＳ８０７）、ステップＳ８０３以降の処理を行う。ステップＳ８０７の処理は、例えば、伸長制御部１７３が行う。伸長制御部１７３は、例えば、下記式（９）により、実績伸長率rate_result（ｎ）を算出する。
【０１８３】
【数８】
2018116096.tif 000010
【０１８４】
式（９）のｓ及びｎは、それぞれ、処理対象区間の開始フレーム及び現フレームである。式（９）のＭは１フレームのサンプル数であり、例えば、Ｍ＝１６０とする。式（９）のａｄｄ（ｉ）は、ｉ番目のフレーム処理で追加したサンプル数である。
【０１８５】
一方、ステップＳ８０５の判定処理において、実績伸長率が目標伸長率以上であった場合（ステップＳ８０５；ＮＯ）、話速制御部１７０は、音声データにおける処理対象区間を出力して、処理対象区間に対する話速を制御する処理を終了する。話速制御部１７０は、１個の処理対象区間に対する処理を終えると、次の処理対象区間に対するステップＳ８０１以降の処理を行う。
【０１８６】
なお、図１８のフローチャートでは実績伸長率が目標伸長率以上になるまで処理を繰り返しているが、話速を制御する処理は、これに限らず、例えば、ステップＳ８０３以降のループ処理を行う回数に上限値を設けてもよい。すなわち、話速を制御する処理は、ステップＳ８０３以降のループ処理を所定回数行った場合には、実績伸長率が目標伸長率よりも小さくても処理を終了するようにしてもよい。これにより、例えば、処理が長くなり音声データの遅延等による通話品質の劣化を防止することが可能となる。
【０１８７】
図１９は、基本周期の検出方法を説明する図である。
ステップＳ８０３の基本周期を検出する処理では、上記のように、処理対象区間の音声波形についての自己相関に基づいて基本周期を検出する。音声波形についての自己相関は、例えば、図１９に示した曲線５１１のように、シフト量が０から大きくなるにつれて徐々に減少してあるシフト量で極小値となった後、シフト量Ｓｍで極大となる。本実施形態に係る話速制御部１７０の基本周期検出部１７１は、シフト量が０よりも大きい区間において自己相関が初めて極大Ｐとなるシフト量Ｓｍと対応する周期を、基本周期として検出する（算出する）。
【０１８８】
図２０は、音声波形を重ね合わせる方法を説明する図である。図２１は、音声波形を重ねる際の重み付けの方法を説明する図である。
【０１８９】
ステップＳ８０６の音声波形を重ね合わせる処理では、上記のように、音声データの処理対象区間における基本周期Ｋの音声波形を重ね合わせる。例えば、図２０に示すように処理対象区間の波形ｘ（ｔ）が基本周期Ｋの音声波形５２１，５２２，５２３を含む波形であるとする。この波形ｘ（ｔ）に基本周期Ｋの音声波形を重ね合わせる場合、話速制御部１７０は、音声波形５２２を抽出し、波形ｘ（ｔ）における音声波形５２２と、音声波形５２３との間に音声波形５２２を挿入した波形ｙ（ｔ）を生成する。これにより、処理対象区間の時間長が基本周期Ｋだけ長くなり、処理対象区間を含む発話区間の時間長が基本周期Ｋだけ長くなる。したがって、発話区間に含まれる母音数（モーラ数）を発話区間の時間長で除した値（話速）が小さくなる。
【０１９０】
また、音声波形を重ねる際には、サンプルの不連続による音質劣化を防ぐために、重み付け加算を行うことが好ましい。
【０１９１】
例えば、図２１の（ａ）の波形ｘ（ｔ）における基本周期Ｋの音声波形５２２を重ね合わせる際には、音声波形５２２の後方に音声波形５２３の一部を含む第１の範囲５３１と、音声波形５２２の前方に音声波形５２１の一部を含む第２の範囲５３２とを設定する。そして、第２の範囲５３２を基本周期Ｋだけ正の時間方向にシフトさせて第１の範囲５３１と第２の範囲５３２とを結合することで、音声データの波形を伸長させる。
【０１９２】
第１の範囲５３１と、基本周期Ｋだけシフトさせた第２の範囲５３２とを結合する際には、第１の範囲５３１における末尾の部分と、第２の範囲５３２における先頭の部分とが重複する。第１の範囲５３１と第２の範囲５３２とが重複する部分は、第１の範囲５３１における波形（振幅）と、第２の範囲５３２における波形とのそれぞれに重み付けをして加算する。
【０１９３】
例えば、図２１の（ｂ）に示すように、第１の範囲５３１に対する重み係数ｗ１（ｔ）は、第２の範囲５３２と重ならない時刻ｔからｔ１の区間をｗ１（ｔ）＝１とし、第２の範囲５３２と重なる時刻ｔ１からｔ２の区間をｗ１（ｔ）＝ｆ（ｔ）とする。ここで、関数ｆ（ｔ）は、時刻ｔ１からｔ２の区間においてｆ（ｔ１）＝１からｆ（ｔ２）＝０に単調減少する関数とする。
【０１９４】
また、第２の範囲５３２に対する重み係数ｗ２（ｔ）は、第１の範囲５３１と重なる時刻ｔ１〜ｔ２の区間をｗ１（ｔ）＝ｇ（ｔ）とし、第１の範囲５３１と重ならない時刻ｔ２以降の区間をｗ２（ｔ）＝１とする。ここで、関数ｇ（ｔ）は、時刻ｔ１〜ｔ２の区間においてｇ（ｔ１）＝０からｇ（ｔ２）＝１に単調増加し、かつｆ（ｔ）＋ｇ（ｔ）＝１を満たす関数とする。
【０１９５】
図２１の（ａ）に示した音声データの波形ｘ（ｔ）に対し、重み係数ｗ１（ｔ），ｗ２（ｔ）を用いて基本周期Ｋの音声波形５２２を重ね合わせた波形ｙ（ｔ）は、下記式（１０）により算出する。
【０１９６】
ｙ（ｔ）＝ｗ１（ｔ）・ｘ（ｔ）＋ｗ２（ｔ）・ｘ（ｔ＋Ｋ）      ・・・（１０）
【０１９７】
このように、基本周期Ｋの音声波形を重ね合わせる際の境界となる部分において波形を重み付け加算することで、母音区間を伸長した音声データの該境界部分において波形（サンプル）が不連続になり音質が劣化することを防ぐことが可能となる。
【０１９８】
以上のように、本実施形態の携帯電話端末２５は、通話中に自装置の収音装置２から入力される入力音声データの話速を推定し、該入力音声データの話速を適正な話速に制御して通話相手の電話機に送信することが可能である。また、本実施形態の携帯電話端末２５における話速調整部２６では、第１の実施形態で説明した話速推定装置１と同様、話速を推定する際に、入力音声データに含まれる母音区間の時間長についての頻度分布に基づいて、各母音区間の母音数を決定する。このため、本実施形態によれば、音声データにおける話速を精度良く推定することが可能であり、容易に音声データの話速を適正な話速に制御する（減速させる）ことが可能となる。また、基本周期Ｋの音声波形を重ね合わせる際に、境界となる部分において波形を重み付け加算することで、母音区間を伸長した音声データにおける音質の劣化を防ぐことが可能となる。
【０１９９】
なお、基本周期Ｋの音声波形を重ね合わせる処理は、図２０及び図２１を参照して説明した上記の方法に限らず、他の方法に従って行ってもよい。
【０２００】
また、話速調整部２６において発話区間及び母音区間を検出する際の検出方法は、既知の検出方法のいずれかであればよい。例えば、発話区間及び母音区間を検出する際には、音声データにおける自己相関係数ＡＣ（ｔｍ）、或いはフォルマント周波数の時間変化平均ΔＦＭ（ｔｍ）に基づいて検出してもよい。
【０２０１】
更に、本実施形態に係る携帯電話端末２５の話速調整部２６で行う処理は、図１７のフローチャートに限らず、適宜変更可能である。例えば、話速調整部２６では、ステップＳ３〜Ｓ５の処理の代わりに、上述したステップＳ３’〜Ｓ５’の処理を行ってもよい。話速調整部２６においてステップＳ３’〜Ｓ５’の処理を行う場合、モーラ数決定部１４０は、ステップＳ３’の処理を行う時間長算出部と、ステップＳ４’の処理を行う最小値特定部と、ステップＳ５’の処理を行うモーラ数決定部とを含む。
【０２０２】
第１の実施形態及び第２の実施形態で挙げた話速推定装置１、並びに第３の実施形態で挙げた携帯電話端末２５は、それぞれ、コンピュータと、該コンピュータに実行させるプログラムとにより実現可能である。以下、図２２を参照して、コンピュータとプログラムとにより実現される話速推定装置１について説明する。
【０２０３】
図２２は、コンピュータのハードウェア構成を示す図である。
図２２に示すように、コンピュータ８は、プロセッサ８０１と、主記憶装置８０２と、補助記憶装置８０３と、入力装置８０４と、出力装置８０５と、入出力インタフェース８０６と、通信制御装置８０７と、媒体駆動装置８０８と、を備える。コンピュータ８におけるこれらの要素８０１〜８０８は、バス８１０により相互に接続されており、要素間でのデータの受け渡しが可能になっている。
【０２０４】
プロセッサ８０１は、Central Processing Unit（ＣＰＵ）やMicro Processing Unit（ＭＰＵ）等である。プロセッサ８０１は、オペレーティングシステムを含む各種のプログラムを実行することにより、コンピュータ８の全体の動作を制御する。プロセッサ８０１は、例えば、図２のステップＳ１〜Ｓ６の処理を含む音声処理プログラムを実行する。
【０２０５】
主記憶装置８０２は、図示しないRead Only Memory（ＲＯＭ）及びRandom Access Memory（ＲＡＭ）を含む。主記憶装置８０２のＲＯＭには、例えば、コンピュータ８の起動時にプロセッサ８０１が読み出す所定の基本制御プログラム等が予め記録されている。一方、主記憶装置８０２のＲＡＭは、プロセッサ８０１が、各種のプログラムを実行する際に必要に応じて作業用記憶領域として使用する。主記憶装置８０２のＲＡＭは、例えば、音声データの一部、発話区間及び母音区間を示す情報、母音区間の時間長の頻度分布、算出した話速等の保持（記憶）に利用可能である。
【０２０６】
補助記憶装置８０３は、主記憶装置８０２のＲＡＭと比べて容量の大きい記憶装置であり、例えば、Hard Disk Drive（ＨＤＤ）や、フラッシュメモリのような不揮発性メモリ（Solid State Drive（ＳＳＤ）を含む）等である。補助記憶装置８０３は、プロセッサ８０１によって実行される各種のプログラムや各種のデータ等の記憶に利用可能である。補助記憶装置８０３は、例えば、図２のステップＳ１〜Ｓ６の処理を含む音声処理プログラムの記憶に利用可能である。また、補助記憶装置８０３は、例えば、音声データ、該音声データに含まれる発話区間及び母音区間を示す情報、母音区間の時間長の頻度分布、算出した話速等の保持（記憶）に利用可能である。
【０２０７】
入力装置８０４は、例えば、キーボード装置やタッチパネル装置等である。コンピュータ８のオペレータ（利用者）が入力装置８０４に対して所定の操作を行うと、入力装置８０４は、その操作内容に対応付けられている入力情報をプロセッサ８０１に送信する。入力装置８０４は、例えば、話速を推定する処理を開始させる命令の入力や、各種設定値の入力等に利用可能である。
【０２０８】
出力装置８０５は、例えば、液晶表示装置等の表示装置やプリンタ等の印刷装置である。出力装置８０５は、図２のステップＳ６で算出した発話区間の話速の出力に利用可能である。
【０２０９】
入出力インタフェース８０６は、コンピュータ８と、他の電子機器とを接続する。入出力インタフェース８０６は、例えば、フォーンジャックや、Universal Serial Bus（ＵＳＢ）規格のコネクタ等を備える。入出力インタフェース８０６は、例えば、コンピュータ８と、収音装置２との接続に利用可能である。
【０２１０】
通信制御装置８０７は、コンピュータ８をインターネット等のネットワークに接続し、ネットワークを介したコンピュータ８と他の通信機器との各種通信を制御する装置である。通信制御装置８０７は、例えば、コンピュータ８と、電話機１６等との間での音声データの送受信に利用可能である。
【０２１１】
媒体駆動装置８０８は、可搬型記憶媒体８９０に記録されているプログラムやデータの読み出し、補助記憶装置８０３に記憶されたデータ等の可搬型記憶媒体８９０への書き込みを行う。媒体駆動装置８０８には、例えば、１種類又は複数種類の規格に対応したメモリカード用リーダ／ライタが利用可能である。媒体駆動装置８０８としてメモリカード用リーダ／ライタを用いる場合、可搬型記憶媒体８９０としては、メモリカード用リーダ／ライタが対応している規格、例えば、Secure  Digital（ＳＤ）規格のメモリカード（フラッシュメモリ）等を利用可能である。また、可搬型記録媒体８９０としては、例えば、ＵＳＢ規格のコネクタを備えたフラッシュメモリが利用可能である。更に、コンピュータ８が媒体駆動装置８０８として利用可能な光ディスクドライブを搭載している場合、当該光ディスクドライブで認識可能な各種の光ディスクを可搬型記録媒体８９０として利用可能である。可搬型記録媒体８９０として利用可能な光ディスクには、例えば、Compact Disc（ＣＤ）、Digital Versatile Disc（ＤＶＤ）、Blu-ray Disc（Blu-rayは登録商標）等がある。可搬型記録媒体８９０は、例えば、図２のステップＳ１〜Ｓ６の処理を含む音声処理プログラムの記憶に利用可能である。また、可搬型記録媒体８９０は、例えば、音声データ、該音声データに含まれる発話区間及び母音区間を示す情報、母音区間の時間長の頻度分布、算出した話速等の保持（記憶）に利用可能である。
【０２１２】
例えば、オペレータが入力装置８０４等を利用して話速を推定する処理を開始する命令をコンピュータ８に入力すると、プロセッサ８０１が、補助記憶装置８０３等の非一時的な記録媒体に記憶させた音声処理プログラムを読み出して実行する。音声処理プログラムが図２のステップＳ１〜Ｓ７の処理を含むプログラムである場合、コンピュータ８は、入力音声データから話速を算出し、算出した話速を表示装置等の出力装置８０５に出力する処理を繰り返す。音声処理プログラムを実行している間、プロセッサ８０１は、話速推定装置１における音声取得部１１０、発話区間検出部１２０、母音区間検出部１３０、モーラ数決定部１４０、話速算出部１５０、及び出力部１６０として機能する（動作する）。また、プロセッサ８０１が音声処理プログラムを実行している間、主記憶装置８０２のＲＡＭや補助記憶装置８０３等は、話速推定装置１の図示してない記憶部として機能する。すなわち、主記憶装置８０２のＲＡＭや補助記憶装置８０３等は、音声データ、該音声データに含まれる発話区間及び母音区間を示す情報、母音区間の時間長の頻度分布、算出した話速等を記憶する記憶部として機能する。
【０２１３】
なお、話速推定装置１として動作させるコンピュータ８は、図２２に示した全ての要素８０１〜８０８を含む必要はなく、用途や条件に応じて一部の要素を省略することも可能である。例えば、コンピュータ８は、通信制御装置８０７や媒体駆動装置８０８が省略されたものであってもよい。
【０２１４】
また、コンピュータ８に実行させる音声処理プログラムは、図１７のフローチャートのように、算出した話速に基づいて音声データの話速を制御し、話速を制御した音声データを出力する処理を含むプログラムであってもよい。
【０２１５】
更に、コンピュータ８は、携帯電話端末２５等の電話機として動作させることも可能である。コンピュータ８を電話機として動作させる、例えば、コンピュータ８に、各実施形態で説明した処理を行う音声処理プログラムと並行して、コンピュータ８と、他の電話機との間で音声データを送受信する通話処理プログラムを実行させる。この場合、コンピュータ８に実行させるプログラムは、ステップＳ１〜Ｓ６の処理により算出した（推定した）話速に基づいて、音声データの話速を制御する処理を行うプログラムであってもよい。
【０２１６】
加えて、コンピュータ８に実行させる音声処理プログラムは、図２及び図１７のフローチャートにおけるステップＳ３〜Ｓ５の処理が、上述したステップＳ３’〜Ｓ５’の処理に置換されたプログラムであってもよい。
【０２１７】
以上記載した各実施形態に関し、更に以下の付記を開示する。
（付記１）
入力音声データにおける発話区間に含まれる複数の母音区間を検出し、
検出した前記複数の母音区間それぞれの時間長を算出し、
前記複数の母音区間の時間長についての頻度分布を算出するとともに、前記複数の母音区間それぞれの時間長のうちの最小値を特定し、
特定した前記時間長の最小値と、前記頻度分布とに基づいて、前記複数の母音区間それぞれの時間長と対応するモーラ数を算出し、
算出した前記モーラ数に応じて前記入力音声データにおける前記発話区間と対応する出力信号を制御する、
処理をコンピュータに実行させることを特徴とする音声処理プログラム。
（付記２）
前記時間長の最小値を特定する処理では、
前記頻度分布において頻度がピークとなる複数の時間長のうちの最小値を特定する、
ことを特徴とする付記１に記載の音声処理プログラム。
（付記３）
前記時間長の最小値を特定する処理では、
前記頻度分布において頻度がピークとなる複数の時間長を特定し、
前記複数の時間長に基づいて、前記頻度分布において隣接する前記ピーク間の時間長を算出し、
算出した前記ピーク間の時間長の平均値を前記時間長の最小値に特定する、
ことを特徴とする付記１に記載の音声処理プログラム。
（付記４）
前記頻度分布を算出する処理では、
前記発話区間に含まれる全ての母音区間のうちの、該発話区間における末尾の母音区間を除外して前記頻度分布を算出する、
ことを特徴とする付記１に記載の音声処理プログラム。
（付記５）
前記頻度分布を算出する処理では、
前記発話区間に含まれる全ての母音区間のうちの、時間長が所定の範囲内である母音区間を抽出して前記頻度分布を算出する、
ことを特徴とする付記１に記載の音声処理プログラム。
（付記６）
前記モーラ数を算出する処理では、
前記母音区間の時間長を前記時間長の最小値で除した値に最も近い整数値を、該母音区間のモーラ数とする、
ことを特徴とする付記１に記載の音声処理プログラム。
（付記７）
前記母音区間を検出する処理では、
前記入力音声データにおける信号対雑音比を算出し、
算出した前記信号対雑音比が閾値以上で連続する区間を前記母音区間として検出する、
ことを特徴とする付記1に記載の音声処理プログラム。
（付記８）
前記母音区間を検出する処理では、
前記入力音声データにおける波形自己相関を算出し、
算出した前記波形自己相関が閾値以上で連続する区間を前記母音区間として検出する、
ことを特徴とする付記1に記載の音声処理プログラム。
（付記９）
前記母音区間を検出する処理では、
前記入力音声データにおけるフォルマント周波数を算出し、
算出した前記フォルマント周波数の時間変化量が閾値以上となる時刻を前記母音区間と非母音区間との境界として検出する、処理を含む、
ことを特徴とする付記1に記載の音声処理プログラム。
（付記１０）
前記出力信号を制御する処理は、
算出した前記複数の母音区間それぞれのモーラ数と、前記入力音声データにおける前記発話区間の時間長とに基づいて、前記入力音声データにおける前記発話区間の話速を算出する、処理を含む、
ことを特徴とする付記１に記載の音声処理プログラム。
（付記１１）
前記出力信号を制御する処理は、
算出した前記話速が閾値以上である場合に、前記入力音声データにおける前記母音区間を伸長して話速を低下させる、処理を更に含む、
ことを特徴とする付記９に記載の音声処理プログラム。
（付記１２）
コンピュータが、
入力音声データにおける発話区間に含まれる複数の母音区間を検出し、
検出した前記複数の母音区間それぞれの時間長を算出し、
前記複数の母音区間の時間長についての頻度分布を算出するとともに、前記複数の母音区間それぞれの時間長のうちの最小値を特定し、
特定した前記時間長の最小値と、前記頻度分布とに基づいて、前記複数の母音区間それぞれの時間長と対応するモーラ数を算出し、
算出した前記モーラ数に応じて前記入力音声データにおける前記発話区間と対応する出力信号を制御する、
処理を実行することを特徴とする音声処理方法。
（付記１３）
入力音声データにおける発話区間に含まれる複数の母音区間を検出する母音区間検出部と、
検出した前記複数の母音区間それぞれの時間長を算出して前記複数の母音区間の時間長についての頻度分布を算出するとともに、前記複数の母音区間それぞれの時間長のうちの最小値を特定し、特定した前記時間長の最小値と、前記頻度分布とに基づいて、前記複数の母音区間それぞれの時間長と対応するモーラ数を決定するモーラ数決定部と、
決定した前記モーラ数と、前記発話区間の時間長とに基づいて前記入力音声データにおける前記発話区間の話速を算出する話速算出部と、
を備えることを特徴とする音声処理装置。
【符号の説明】
【０２１８】
１  話速推定装置
２，１６２０  収音装置
３  表示装置
８  コンピュータ
９Ａ，９Ｂ  話者
１０  通話システム
１１  通話処理装置
１２  情報処理装置
１３，１６３０  レシーバ
１４Ａ，１４Ｂ  交換機
１５  ネットワーク
１６  電話機
２１，１６１０  通話処理部
２５  携帯電話端末
２６  話速調整部
３０  基地局
１１０  音声取得部
１２０  発話区間検出部
１３０  母音区間検出部
１４０  モーラ数決定部
１４１  頻度分布算出部
１４２  ピーク検出部
１４３  モーラ数算出部
１５０  話速算出部
１６０，１６２  出力部
１７０  話速制御部
１７１  基本周期検出部
１７２  波形処理部
１７３  伸長制御部
１９０  記憶部
１９１  音声データ
１９２  目標伸長率
【図１】
2018116096.tif 000011
【図２】
2018116096.tif 000012
【図３】
2018116096.tif 000013
【図４】
2018116096.tif 000014
【図５】
2018116096.tif 000015
【図６】
2018116096.tif 000016
【図７】
2018116096.tif 000017
【図８】
2018116096.tif 000018
【図９】
2018116096.tif 000019
【図１０】
2018116096.tif 000020
【図１１】
2018116096.tif 000021
【図１２】
2018116096.tif 000022
【図１３】
2018116096.tif 000023
【図１４】
2018116096.tif 000024
【図１５】
2018116096.tif 000025
【図１６】
2018116096.tif 000026
【図１７】
2018116096.tif 000027
【図１８】
2018116096.tif 000028
【図１９】
2018116096.tif 000029
【図２０】
2018116096.tif 000030
【図２１】
2018116096.tif 000031
【図２２】
2018116096.tif 000032