(57)【要約】【課題】カメラの撮像画像に基づいて中間言語データを生成する発話内容認識装置を提供する。【解決手段】音声認識装置１は、スタンバイモードで動作している間にユーザの発話を検出した場合には、そのユーザが発話した音声データ及びその際の画像データを元に、２つ音節を続けて発声する際の口唇の動きパターンを示す連結唇動データと、２つ音節を続けて発声する際の声調を示す声調パターンデータとを生成し、声調ＤＢ１ｃに蓄積していく。そして、ユーザのトークＳＷ３の押下をトリガとして読唇処理を実施した場合には、ユーザの発話時の画像データから連結唇動パターンを特定して、その特定した連結唇動パターンと声調ＤＢ１ｃに保存されているデータとから、音節毎の声調を決定する。【選択図】図１
2018013549.tif 000002
【特許請求の範囲】
【請求項１】
所定のユーザ操作をトリガとしてユーザの発話内容を特定する処理を実行する発話内容認識装置であって、
前記ユーザ操作を受け付ける操作受付部（Ｆ２）と、
マイクを介して前記ユーザの発話音声を発話音声データとして取得する音声取得部（Ｆ３）と、
前記ユーザの顔部を撮影するように配置されたカメラが撮影した画像であるユーザ画像を逐次取得する画像取得部（Ｆ６）と、
前記画像取得部が取得した前記ユーザ画像から前記ユーザの口唇形状の変化パターンである唇動パターンを検出し、さらに、その検出した唇動パターンに基づいて前記ユーザの発話音声に対応する文字列である発話文字列を生成する読唇処理部（Ｆ７）と、
前記音声取得部が取得した前記発話音声データに基づいて、２つの音節を連続して発声する際の声調パターンを特定する声調パターン特定部（Ｆ８１）と、
前記画像取得部が取得した前記ユーザ画像から、前記ユーザが２つの音節を連続して発声する際の口唇形状の変化パターンである連結唇動パターンを特定する連結唇動パターン特定部（Ｆ８２）と、
前記ユーザが続けて発声した２音節に対して、前記連結唇動パターン特定部が特定した前記連結唇動パターンと、前記声調パターン特定部が特定した前記声調パターンを対応付けて声調データベースに保存する処理であるパターン学習処理を実行する学習処理部（Ｆ８）と、
前記声調データベースに保存されているデータと、前記発話文字列の生成に用いられた前記ユーザ画像とを用いて、前記発話文字列を構成する各音節文字に対して声調情報を付加した中間言語データを生成する中間言語データ生成部（Ｆ９）と、を備え、
前記学習処理部は、前記操作受付部が前記ユーザ操作を受け付けていない場合に、前記声調パターン特定部及び前記連結唇動パターン特定部と協働して前記パターン学習処理を逐次実行し、
前記中間言語データ生成部は、前記操作受付部が前記ユーザ操作を受け付けたことに基づいて前記読唇処理部が前記発話文字列を生成した場合に、前記中間言語データを生成するものであって、
前記中間言語データ生成部は、
前記発話文字列を構成する或る１つの音節文字である対象文字についての声調を決定する場合には、前記声調データベースに格納されている複数の前記連結唇動パターンの中から、前記対象文字の１つ前に位置する音節文字と前記対象文字とを連続して発声した時の前記ユーザの口唇形状の変化パターンと類似度が高い前記連結唇動パターンを特定し、
その特定された前記連結唇動パターンに対応付けられている前記声調パターンを用いて前記対象文字についての声調を決定することを特徴とする発話内容認識装置。
【請求項２】
請求項１において、
前記音声取得部が取得した前記発話音声データに基づいて音声認識処理を実行する音声認識部（Ｆ４）と、
前記マイクから出力される音声信号の振幅に基づいて、騒音のレベルであるノイズレベルを判定するノイズレベル判定部（Ｆ５）と、を備え、
前記操作受付部が前記ユーザ操作を受け付けた時点において前記ノイズレベル判定部によって前記ノイズレベルは高レベルである判定されている場合に、前記読唇処理部が前記ユーザ画像に基づいて前記発話文字列を生成する一方、
前記操作受付部が前記ユーザ操作を受け付けた時点において前記ノイズレベル判定部によって前記ノイズレベルは低レベルである判定されている場合には前記音声認識部が前記音声認識処理を実行することで前記ユーザの発話内容を特定することを特徴とする発話内容認識装置。
【請求項３】
請求項２において、
前記音声認識部は、前記中間言語データ生成部が生成した前記中間言語データを用いて前記音声認識処理を実施することで、前記ユーザの発話内容を特定することを特徴とする発話内容認識装置。
【請求項４】
請求項１から３の何れか１項において、
前記中間言語データ生成部が生成した前記中間言語データは、音声合成処理を実行するアプリケーションソフトウェアに提供されることを特徴とする発話内容認識装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラが撮像したユーザの唇の動きパターンからユーザが発話している内容を認識する技術に関する。
【背景技術】
【０００２】
特許文献１に開示されているように従来、発話者の顔画像に対して画像認識処理を施すことによって、発話者の発話内容を特定し、発話内容に応じたテキストデータや音声データを生成する技術（いわゆる読唇技術）がある。このような読唇技術は、文字入力等の種々のアプリケーションに利用される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−２２０６８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ユーザの発話音声には、何を話しているかといったテキスト情報だけでなく、どのような調子で話しているかといった声調情報も含まれている。しかしながら、従来の読唇技術では、ユーザの発話音声に含まれる声調情報を含むテキストデータ（以降、中間言語データ）を生成する方法については検討されていない。なお、ここでの声調情報とは、抑揚（いわゆるイントネーション）や、ユーザの声の高さ、話す速度、音量などといった種々のパラメータを示す情報である。
【０００５】
本発明は、この事情に基づいて成されたものであり、その目的とするところは、カメラの撮像画像に基づいて中間言語データを生成する発話内容認識装置を提供することにある。
【課題を解決するための手段】
【０００６】
その目的を達成するための本発明は、所定のユーザ操作をトリガとしてユーザの発話内容を特定する処理を実行する発話内容認識装置であって、ユーザ操作を受け付ける操作受付部（Ｆ２）と、マイクを介してユーザの発話音声を発話音声データとして取得する音声取得部（Ｆ３）と、ユーザの顔部を撮影するように配置されたカメラが撮影した画像であるユーザ画像を逐次取得する画像取得部（Ｆ６）と、画像取得部が取得したユーザ画像からユーザの口唇形状の変化パターンである唇動パターンを検出し、さらに、その検出した唇動パターンに基づいてユーザの発話内容に対応する文字列である発話文字列を生成する読唇処理部（Ｆ７）と、音声取得部が取得した発話音声データに基づいて、２つの音節を連続して発声する際の声調パターンを特定する声調パターン特定部（Ｆ８１）と、画像取得部が取得したユーザ画像から、ユーザが２つの音節を連続して発声する際の唇の変化パターンである連結唇動パターンを特定する連結唇動パターン特定部（Ｆ８２）と、ユーザが続けて発声した２音節に対して、連結唇動パターン特定部が特定した連結唇動パターンと、声調パターン特定部が特定した声調パターンを対応付けて声調データベースに保存する処理であるパターン学習処理を実行する学習処理部（Ｆ８）と、声調データベースに保存されているデータと、発話文字列の生成に用いられたユーザ画像とを用いて、発話文字列を構成する各音節文字に対して声調情報を付加した中間言語データを生成する中間言語データ生成部（Ｆ９）と、を備え、学習処理部は、操作受付部がユーザ操作を受け付けていない場合に、声調パターン特定部及び連結唇動パターン特定部と協働して学習処理を逐次実行し、中間言語データ生成部は、操作受付部がユーザ操作を受け付けたことに基づいて読唇処理部が発話文字列を生成した場合に、中間言語データを生成するものであって、中間言語データ生成部は、発話文字列を構成する或る音節文字である対象文字についての声調を決定する場合には、声調データベースに格納されている複数の連結唇動パターンの中から、対象文字の１つ前に位置する音節文字と対象文字とを発声した時のユーザの口唇形状の変化パターンと類似度が高い連結唇動パターンを特定し、その特定された連結唇動パターンに対応付けられている声調パターンを用いて対象文字についての声調を決定することを特徴とする。
【０００７】
以上の構成では、操作受付部が、発話内容を特定する処理の実行命令に相当するユーザ操作を受け付けていない場合には（換言すれば入力待機状態となっている場合には）、学習処理部が、声調パターン特定部及び連結唇動パターン特定部と協働してパターン学習処理を逐次実行する。つまり、ユーザの日常会話を元に、２音節毎のユーザの発話時の声調パターンと、連結唇動パターンと学習していく。したがって、声調データベースに蓄積されるデータは、ユーザの実際の発話を元にしたデータである。
【０００８】
そして、操作受付部が上述のユーザ操作を受け付けたことに基づいて読唇処理部がユーザの口唇の動きに応じた文字列（つまり発話文字列）を生成した場合には、中間言語データ生成部が、声調データベースに保存されているデータと、発話文字列の生成に用いたユーザ画像とから、発話文字列に声調情報を付加した中間言語データを生成する。
【０００９】
このような態様によれば、カメラの撮像画像に基づいて中間言語データを生成することができる。また、上述した態様によって生成される中間言語データが備える声調情報は、実際のユーザの発話履歴に基づいて生成される。したがって、ユーザの発声時の癖等が再現された声調情報となることが期待される。
【００１０】
なお、特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本発明の技術的範囲を限定するものではない。
【図面の簡単な説明】
【００１１】
【図１】音声入力システム１００の概略的な構成を示すブロック図である。
【図２】学習処理部Ｆ８が備える機能を概念的に表したブロック図である。
【図３】スタンバイモード処理について説明するためのフローチャートである。
【図４】パターン学習処理について説明するためのフローチャートである。
【図５】パターン学習処理について説明するための図である。
【図６】音節セットデータについて概念的に表した図である。
【図７】発話内容認識処理について説明するためのフローチャートである。
【図８】中間言語データ生成処理について説明するためのフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明が適用された音声入力システム１００について図を用いて説明する。音声入力システム１００は、車両に搭載されてあって、図１に示すように、音声認識装置１、シートセンサ２、トークスイッチ（以降、トークＳＷ）３、マイク４、及びカメラ５を備えている。シートセンサ２、トークＳＷ３、マイク４、及びカメラ５のそれぞれは、車両内に構築されたローカルネットワーク（以降、ＬＡＮ：Local Area Network）を介して、音声認識装置１と通信可能に構成されている。
【００１３】
音声認識装置１は、ＣＰＵ、ＲＡＭ、ＲＯＭ、Ｉ／Ｏ、及びこれらの構成を接続するバスラインなどを備えた、通常のコンピュータとして構成されている。ＲＯＭには、通常のコンピュータを音声認識装置１として機能させるためのプログラム（以降、発話内容特定プログラム）等が格納されている。
【００１４】
なお、上述の発話内容特定プログラムは、ＲＯＭに限らず、非遷移的実体的記録媒体（non- transitory tangible storage medium）に格納されていればよい。ＣＰＵが発話内容特定プログラムを実行することは、発話内容特定プログラムに対応する方法が実行されることに相当する。
【００１５】
この音声認識装置１は、概略的には、マイク４やカメラ５から入力されるデータに基づいて、ユーザが発話している内容を認識し、その認識した結果を所定のアプリケーションソフトウェア（以降、アプリ）に提供する装置である。この音声認識装置１の詳細については別途後述する。なお、ここでのユーザとは、音声入力システム１００が搭載された車両を利用する人物であって、特に、運転席に着座している人物を指すものとする。音声認識装置１が請求項に記載の発話内容認識装置に相当する。
【００１６】
シートセンサ２は、運転席に乗員（つまりユーザ）が着座しているか否かを示す信号を出力するセンサである。シートセンサ２は例えば圧力センサを用いて実現することができる。すなわち、シートセンサ２は、運転席の着座部に設けられた圧力センサであって、当該着座部に作用する圧力を示す信号を音声認識装置１に出力する。
【００１７】
トークＳＷ３は、ユーザが音声入力を開始する旨を指示するためのスイッチである。トークＳＷ３はここでは一例として、いわゆるクリック方式のスイッチとし、トークＳＷ３は、ユーザの操作によってオンに設定されると（すなわち、クリックされると）、オン信号を音声認識装置１に出力する。トークＳＷ３は、例えばステアリングコラムカバーの側面部やシフトレバーの近傍などユーザが操作しやすい位置に設けられている。
【００１８】
なお、トークＳＷ３は、ディスプレイに表示されたボタン画像であってもよい。その場合、音声認識装置１は、タッチパネルや周知のポインティングデバイスを介して、当該ボタン画像がユーザによって選択されたことを検出すればよい。
【００１９】
マイク４は、例えば無指向性の小型マイクであり、ユーザが発話した音声や雑音などの周囲の音を集音し、電気的な音声信号に変換して、音声認識装置１に出力する。マイク４は、例えばステアリングコラムカバーの上面部や運転席側のサンバイザー等のユーザの音声を拾いやすい位置に設けられる。
【００２０】
カメラ５は、光学式のカメラであって、例えばＣＭＯＳカメラやＣＣＤカメラ等を用いることができる。カメラ５は、運転席に着座している乗員の顔部を撮影するように、例えばステアリングコラムカバーや、インストゥルメントパネルの運転席に対向する部分等、適宜設計される位置に配置されている。なお、また、他の態様としてカメラ５は、赤外線カメラや近赤外線カメラなどであってもよい。カメラ５は所定のフレームレート（例えば３０ｆｐｓ）で撮影した画像データを音声認識装置１へ逐次出力する。なお、カメラ５は、撮影画像を映像信号として出力するものであってもよい。カメラ５が撮影した画像が請求項に記載のユーザ画像に相当する。
【００２１】
＜音声認識装置１について＞
音声認識装置１は、ＣＰＵが上述の発話内容特定プログラムを実行することによって、図１に示す種々の機能ブロックに対応する機能を提供する。具体的には、音声認識装置１は、機能ブロックとして、着座判定部Ｆ１、操作受付部Ｆ２、音声取得部Ｆ３、音声認識部Ｆ４、ノイズレベル判定部Ｆ５、画像取得部Ｆ６、読唇処理部Ｆ７、学習処理部Ｆ８、中間言語化部Ｆ９、及び認識媒体設定部Ｆ１０を備える。
【００２２】
なお、音声認識装置１が備える機能ブロックの一部又は全部は、一つあるいは複数のＩＣ等を用いてハードウェアとして実現されていてもよい。また、ＣＰＵによるソフトウェアの実行とハードウェア部材の組み合わせによって実現されてもよい。
【００２３】
また、音声認識装置１は、不揮発性の記憶媒体を用いて実現されるデータベース（以降、ＤＢ）として、音声認識用ＤＢ１ａ、読唇用ＤＢ１ｂ、及び声調ＤＢ１ｃを備える。これらのＤＢは、例えばハードディスクやフラッシュメモリ等といった、不揮発性であって書き換え可能な記憶媒体を用いて実現されればよい。
【００２４】
音声認識用ＤＢ１ａは、音声認識処理に必要なデータが格納されているＤＢである。音声認識処理に必要なデータとは、例えば、人間の発声の小さな単位（いわゆる音素）の音響特徴が記述されている音響モデルや、音素の音響特徴と単語とを対応付ける認識辞書、単語間の連接関係を表現する言語モデルなどである。
【００２５】
読唇用ＤＢ１ｂは、後述する読唇処理に必要なデータが格納されているＤＢである。読唇処理に必要なデータとは、例えば、音節文字毎の口唇形状の変化パターン（以降、唇動パターン）を示す唇動モデルや、ユーザが使用したことがある単語を音節文字で記述した単語辞書などである。単語辞書においては、単語ごとの使用頻度や、その単語の前後で用いられた他の単語についての情報が関連付けられていることが好ましい。なお、音節文字とは、平仮名や片仮名といった仮名を指す。
【００２６】
唇動モデルには、少なくとも、日本語の母音である「あ」、「い」、「う」、「え」、「お」の５つの音声文字に、撥音としての音節文字「ん」を加えた、６つの音声文字に対応する唇動パターンを示す画像データが登録されている。もちろん、唇動モデルには、母音と子音とが組み合わさってなる音節についての唇動パターンを示す画像データも含まれている。なお、母音と子音とが組み合わさってなる音節とは、「か」「き」「く」「け」「こ」などの直音や、「きゃ」「きゅ」「きょ」などの拗音、「しぇ」「ちぇ」などの外来音、濁音などである。モーラの概念を導入して促音や長音を１つの音節として取り扱うか否かは適宜設計されれば良い。これらの音節文字毎の唇動パターンを示すデータは、後述するパターン学習処理の過程において生成されれば良い。
【００２７】
声調ＤＢ１ｃは、後述する声調パターンデータを含む音節セットデータを記憶するＤＢである。声調パターンデータや音節セットデータについては別途後述する。
【００２８】
着座判定部Ｆ１は、シートセンサ２から入力される信号に基づいて、ユーザが運転席に着座しているか否かを判定する。具体的には、シートセンサ２が所定の閾値（以降、着座判定閾値）以上の圧力を検出した場合に、ユーザが運転席に着座していると判定する。また、シートセンサ２が検出している圧力が着座判定閾値未満となっている場合には、運転席にユーザは着座していないと判定する。
【００２９】
なお、本実施形態では一例として、シートセンサ２を用いてユーザが運転席に着座しているか否かを判定する態様を採用するが、これに限らない。他の態様として、カメラ５の撮影画像に基づいてユーザが運転席に着座しているか否かを判定してもよい。その場合には撮影画像中にユーザの顔を検出できた場合に、運転席にユーザが着座していると判定すればよい。
【００３０】
操作受付部Ｆ２は、ユーザがトークＳＷ３を押下した操作を検出する。つまり、操作受付部Ｆ２は、ユーザが音声入力を開始するためのユーザ操作（以降、音声入力操作）を受け付ける。
【００３１】
ところで、音声認識装置１は動作モードとして、スリープモードと、スタンバイモードと、認識実行モードとの３つの動作モードを備える。動作モードの切り替えは図示しないオペレーティングシステム（以降、ＯＳ）によって実施される。
【００３２】
スリープモードは、音声認識装置１が起動してあって、かつ、運転席に乗員が着座していない場合の動作モードである。スリープモードとなっている場合、音声認識装置１は、マイク４やカメラ５の電源をオフにする。
【００３３】
スリープモード時においてユーザの運転席への着座を検出すると、マイク４やカメラ５の電源をオンにしてスタンバイモードへと移行する。なお、音声認識装置１は車両の走行用電源（例えばイグニッション電源）がオンとなった場合や、車両のドアが開かれた場合に、起動するように構成されているものとする。
【００３４】
スタンバイモードは、ユーザが運転席に着座している状態において、ユーザによる音声入力操作が実行されていない場合（換言すれば入力待機状態となっている場合）の動作モードである。音声認識装置１がスタンバイモードで動作している状態において操作受付部Ｆ２が音声入力操作を受け付けた場合、音声認識装置１はスタンバイモードから認識実行モードへと移行して、ユーザの発話内容を認識する処理（以降、発話内容認識処理）を実行する。そして、当該処理が完了するとスタンバイモードへと戻る。換言すれば、発話内容認識処理を実行している状態が認識実行モードに相当する。なお、スタンバイモードにおいてユーザの運転席からの離席を検出した場合にはスリープモードへと移行する。発話内容認識処理については別途後述する。
【００３５】
音声取得部Ｆ３は、マイク４から出力される音声信号を取得する。また、音声取得部Ｆ３は、マイク４からの入力信号に基づいて、ユーザが発話しているか否かを判定する。発話しているか否かは、例えば、音声信号の零交差数に基づいて判断することができる。すなわち、一定のレベルを越える信号が入力されており、かつ、所定の単位時間当りの零交差数が一定数を越えた時を発話が開始された時点（以降、発話開始点）として採用する。また、当該条件が充足されなくなった時点を発話が終了した時点（以降、発話終了点）として採用する。以降では発話開始点から発話終了点までを発話区間と称するとともに、発話区間以外の期間を非発話区間と称する。
【００３６】
さらに、音声取得部Ｆ３は、発話区間であると判定されている期間に入力された音声信号に対してＡ／Ｄ変換を施すことで、ユーザが発話した音声に対応するデジタルデータ（以降、発話音声データ）を生成する。発話音声データは、その発声開始時刻を含む時間情報と対応付けられて図示しないメモリに保存される。
【００３７】
なお、発話区間、非発話区間の識別は、その他の周知の方法によって実施されても良い。例えば、ガウス混合分布モデル (Gaussian Mixture Model：ＧＭＭ)に基づいて発話区間の開始及び終了を検出する方法を採用してもよい。これは音声と非音声のそれぞれのＧＭＭを定義し、入力短時間フレームごとに特徴量抽出から各ＧＭＭの尤度計算を行い、音声ＧＭＭと非音声ＧＭＭの尤度比から，発話区間の開始・終了を判別する方法である。
【００３８】
音声認識部Ｆ４は、音声取得部Ｆ３が生成した発話音声データに対して、音声認識用ＤＢ１ａに格納されている種々のデータを用いて、音声認識処理を実施する。音声認識処理は、公知の技術を用いればよいため、ここでの説明は省略する。
【００３９】
ノイズレベル判定部Ｆ５は、音声取得部Ｆ３によって非発話区間であると判定されている時にマイク４から入力される音声信号の振幅に基づいて、騒音の大きさ（つまりノイズレベル）を判定する。例えば、非発話区間に入力されている音声信号の振幅が予め定められた所定の閾値を超えている場合にはノイズレベルは高レベルであると判定し、閾値未満となっている場合にはノイズレベルは低レベルであると判定する。
【００４０】
画像取得部Ｆ６は、カメラ５が撮像した画像データを逐次取得する。画像取得部Ｆ６は、取得した画像データに、その取得時刻を示すタイムスタンプを付与して、図示しないメモリに保存する。メモリに保存されている画像データの容量が所定の上限に達した場合には、取得時刻が古いデータから順次削除されていけばよい。
【００４１】
読唇処理部Ｆ７は、画像取得部Ｆ６から取得する画像データからユーザの口唇部の動きを検出する。そして、読唇処理部Ｆ７は、ユーザの口唇の動きの有無から、ユーザが発話を開始した時点（つまり発話開始点）、及び、発話を終了した時点（つまり発話終了点）を特定する。つまり、発話区間を特定する。
【００４２】
また、発話区間に撮像された一連の画像データ（以降、発話画像データ）におけるユーザの口唇形状の変化パターン（つまり唇動パターン）から、ユーザが発声した音声をテキスト化する。つまり、読唇処理部Ｆ７は読唇処理を実行する。なお、ここでのテキスト化とは、ユーザの発話音声に対応する音節文字の列（以降、発話文字列）を生成することである。
【００４３】
発話文字列の生成は、画像データから特定した唇動パターンと、読唇用ＤＢ１ｂにおいて唇動モデルとして保存されている音節文字毎の唇動パターンとを比較することで実現されればよい。比較方法としては、動的計画法などの周知の方法を援用することができる。１文字分の唇動パターンに対して複数の音節文字が候補として抽出された場合には、その前後に発声された音節文字を用いてユーザが発声した単語の候補を抽出し、単語辞書を参照して尤度が高い単語を形成する文字を採用すればよい。その他、画像データから発話文字列を生成するためのアルゴリズムとしては周知の方法を援用することができる。
【００４４】
学習処理部Ｆ８は、後述するパターン学習処理を実行する機能ブロックである。学習処理部Ｆ８は、パターン学習処理を実施するためのより細かい機能（つまりサブ機能）として、図２に示すように、声調パターン特定部Ｆ８１、連結唇動パターン特定部Ｆ８２、及び保存処理部Ｆ８３を備える。これらのサブ機能およびパターン学習処理の詳細については別途後述する。
【００４５】
中間言語化部Ｆ９は、後述する中間言語データ生成処理を実施する。中間言語化部Ｆ９が請求項に記載の中間言語データ生成部に掃討する。認識媒体設定部Ｆ１０は、ノイズレベル判定部Ｆ５の判定結果に基づき、音声認識部Ｆ４と読唇処理部Ｆ７のどちらを用いてユーザの発話内容を特定するのかを切り替える。具体的には、ノイズレベルが低レベルに判定されている場合には、音声認識部Ｆ４をユーザの発話内容を特定するための手段（以降、認識媒体）に設定する一方、ノイズレベルが高レベルに判定されている場合には読唇処理部Ｆ７を認識媒体に設定する。
【００４６】
＜スタンバイモード処理＞
次に、図３に示すフローチャートを用いて、音声認識装置１がスタンバイモードで動作している場合に実行する処理（以降、スタンバイモード処理）について説明する。図３に示すフローチャートは、運転席へのユーザが着座したことを検出した場合に開始される。また、後述する発話内容認識処理が完了した場合にも開始される。つまり、スリープモードや認識実行モードから、スタンバイモードへと移行した場合に開始されれば良い。
【００４７】
なお、スリープモードからスタンバイモードに移行する際には、カメラ５やマイク４の電源がオンされるものとする。また、このスタンバイモードとは独立して、ノイズレベル判定部Ｆ５は、マイク４から入力される音声信号に基づいて、ノイズレベルの判定を逐次実行しているものとする。
【００４８】
まずステップＳ１０１では音声取得部Ｆ３が、マイク４から入力されている音声信号に基づいて、ユーザが発話しているか否かを判定する。ユーザが発話していると判定した場合にはステップＳ１０１が肯定判定されてステップＳ１０２に移る。一方、ユーザが発話していないと判定した場合にはステップＳ１０１が否定判定されてステップＳ１０４に移る。
【００４９】
ステップＳ１０２では音声取得部Ｆ３が発話音声データを取得するとともに、読唇処理部Ｆ７がメモリの保存された画像データから、発話画像データを抽出してステップＳ１０３に移る。ステップＳ１０３では学習処理部Ｆ８が、パターン学習処理を実行してステップＳ１０４に移る。このステップＳ１０３で実施されるパターン学習処理については別途後述する。
【００５０】
ステップＳ１０４では着座判定部Ｆ１が、シートセンサ２から入力される信号に基づいて、ユーザが運転席に着座しているか否かを判定する。シートセンサ２からユーザが運転席に着座していることを示す信号が入力されている場合には、ステップＳ１０４は肯定判定されてステップＳ１０５に移る。一方、シートセンサ２からユーザが運転席に着座していないことを示す信号が入力されている場合には、ステップＳ１０４は否定判定されてステップＳ１０７に移る。
【００５１】
ステップＳ１０５では操作受付部Ｆ２が、トークＳＷ３が押下されたか否かを判定する。トークＳＷ３が押下されている場合にはステップＳ１０５が肯定判定されてステップＳ１０６に移る。一方、トークＳＷ３が押下されていない場合にはステップＳ１０５が否定判定されてステップＳ１０１に戻る。
【００５２】
ステップＳ１０６では、動作モードを認識実行モードに設定して本フローを終了する。ステップＳ１０７では、動作モードをスリープモードに設定して本フローを終了する。
【００５３】
＜パターン学習処理＞
次に、図４に示すフローチャートを用いて、学習処理部Ｆ８が実施するパターン学習処理について述べる。このフローチャートは、図３に示すスタンバイモード処理のステップＳ１０３に移った時に開始されれば良い。
【００５４】
まず、ステップＳ２０１では音声認識部Ｆ４が、音声取得部Ｆ３から提供される発話音声データを用いて音声認識処理を実施する。このステップＳ２０１を実行することによって、ユーザの発話音声に応じた文字列（つまり発話文字列）が生成されるとともに、各音節文字を発声しているタイミングが特定される。また、以降での処理の準備として、ユーザが発話した音節文字に対して、発話された順番に番号（以降、発声番号）を付与する。このステップＳ２０１が完了するとステップＳ２０２に移る。
【００５５】
ステップＳ２０２では、読唇処理部Ｆ７が発話画像データからユーザの口唇部の動きを検出し、一連の発話画像データにおいて、ユーザが各音節文字を発声しているフレーム部分を順次特定する。そして、各音節文字を発声する際の唇動パターンを特定する。ステップＳ２０２の処理が完了するとステップＳ２０３に移る。ステップＳ２０３では学習処理部Ｆ８が、各音節文字を発声している時の唇動パターンを読唇用ＤＢ１ｂに保存する。
【００５６】
このようなステップＳ２０１〜Ｓ２０３を実施することで、音声認識装置１は、音節文字毎のユーザの唇動パターンを学習していく。図５は、ステップＳ２０１〜Ｓ２０３までの処理の流れを概念的に表したものである。
【００５７】
音声認識部Ｆ４は、図５の（Ａ）に示す発話音声データに対して音声認識処理を実施することで、図５の（Ｂ）に示すようにユーザが発話した音節文字を順次特定していく。つまり、発話文字列を生成する。また、各音節文字に対して発声された順番に発声番号を付与する。そして、学習処理部Ｆ８は、各状態に対応する画像データを、その時に発声されている音節文字の唇動パターンとして読唇用ＤＢ１ｂに登録していく。なお、図５の（Ｃ）は、各音節文字に割り当てられた発声番号を表し、（Ｄ）は各音節文字に対応する唇動パターンを表している。
【００５８】
以降では、一連の発話文字列において先頭からｊ番目（ｊは整数）の音節文字を発声している状態のことをｊ番目の状態とも記載する。また、第１声の直前の状態（つまり、無発声の状態）については、０番目の状態として取り扱う。また、発話終了直後の無発声状態に対しても１つの発声番号を付与して取り扱う。図５では発話終了直後の無発声状態を８番目の状態に設定している。
【００５９】
再び図４に戻り、パターン学習処理の説明を続ける。ステップＳ２０４では、以降での処理に用いる変数ｊを１に設定してステップＳ２０５に移る。ステップＳ２０５では、発話文字列を構成する音節文字の数ｎを取得してステップＳ２０６に移る。ｎは自然数である。なお、図５に示す例ではｎ＝７である。
【００６０】
ステップＳ２０６ではｊがｎ＋１未満であるか否かを判定する。ｊがｎ＋１未満である場合にはステップＳ２０６が肯定されてステップＳ２０７に移る。一方、ｊがｎ＋１以上である場合には、ステップＳ２０６が否定判定されて本フローを終了する。なお、本フローが終了した場合には、本フローの呼び出し元であるスタンバイモード処理にリターンし、ステップＳ１０４に移る。
【００６１】
ステップＳ２０７では声調パターン特定部Ｆ８１が、ｊ−１番目からｊ番目までの状態に対応する音声データに基づいて、ｊ−１番目の音節とｊ番目の音節とを続けて発声する際の声調パターンを示すデータ（以降、声調パターンデータ）を生成する。つまり、声調パターンデータは、１音節目の声調と２音節目の声調の、２つの音節に対する声調を示すデータである。
【００６２】
ここでの声調には、抑揚（いわゆるイントネーション）や、ユーザの声の高さ、話す速度、音量などといった種々のパラメータが含まれる。図６の（Ａ）及び（Ｂ）は、「きょ」と「う」を続けて発声する際の声調データを概念的に表している。具体的には、（Ａ）は音調の変化を表しており、（Ｂ）は音量の変化を表している。話す速度については図示を省略しているが、話す速度についても周知の方法で数値化されれば良い。なお、声調データを構成する項目の種類は適宜設計されればよい。イントネーションと声の高さは、音調を示すデータによって表現されているものとする。
【００６３】
声調データの表現形式は、周知の種々の形式を採用することができる。ここでは一例として、電子情報技術産業協会規格においてＩＴＳ車載器用音声合成記号（JEITA TT-6004）として規定されている形式で表現することとする。
【００６４】
なお、ｊ＝１である場合、つまりｊ−１番の状態が無発声状態である場合には、ステップＳ２０７は無発声の状態から１番目の音節文字を発声する際の声調パターンデータを生成する処理に相当する。ステップＳ２０７での処理が完了するとステップＳ２０８に移る。
【００６５】
ステップＳ２０８では連結唇動パターン特定部Ｆ８２が、ｊ−１番目からｊ番目までの状態に対応する発話画像データに基づいて、ｊ−１番目の音節とｊ番目の音節とを続けて発声する際の唇動パターン（以降、連結唇動パターン）を特定する。そして、その連結唇動パターンを示す連結唇動データを生成する。図６の（Ｃ）は、「きょ」と「う」を続けて発声する際の連結唇動パターンを概念的に表している。ステップＳ２０８での処理が完了するとステップＳ２０９に移る。
【００６６】
ステップＳ２０９では保存処理部Ｆ８３が、ステップＳ２０７で生成した声調データと、ステップＳ２０８で生成した連結唇動データと、それらが示す２つの音節文字と、を対応づけて声調ＤＢ１ｃに保存する。便宜上、ステップＳ２０７で生成した声調データと、ステップＳ２０８で生成した連結唇動データとを対応づけたデータを音節セットデータと称する。ステップＳ２０９での処理が完了するとステップＳ２１０に移る。
【００６７】
ステップＳ２１０では変数ｊの値を１つ増やして（つまりインクリメントして）、ステップＳ２０６に戻る。したがって、ステップＳ２０６からステップＳ２１０を繰り返すことで、２つの連続する音節毎の音節セットデータが生成される。例えば図５に示す例の場合には、７つの音節セットデータが生成される。
【００６８】
声調ＤＢ１ｃにおいて、種々の音節セットデータは、例えば、その音節セットデータが示す２つの音節文字をラベルとしてグループ化して保存されている。「きょう」という発声に対する音節セットデータが複数存在している場合には、それらを「きょう」という２音節に対応するデータとしてグループ化して保存する。なお、「きょう」という発声に対する音節セットデータが複数存在する場合とは、過去にユーザが種々の声調パターン又は連結唇動パターンで「きょう」と発声したことがある場合に相当する。
【００６９】
＜発話内容認識処理＞
次に、図７に示すフローチャートを用いて、学習処理部Ｆ８が実施する発話内容認識処理について述べる。発話内容認識処理は、マイク４が集音した音声又はカメラ５の撮像画像に基づいて（換言すれば音声認識と読唇処理の何れか一方を用いて）、ユーザが発話した内容を特定する処理である。発話内容認識処理は、トークＳＷ３が押下された場合に開始されれば良い。つまり、動作モードが認識実行モードへと移行した時に開始される。
【００７０】
まずステップＳ３０１では認識媒体設定部Ｆ１０が、ノイズレベル判定部Ｆ５の判定結果に基づき、音声認識部Ｆ４と読唇処理部Ｆ７のどちらを用いてユーザの発話内容を特定するのかを判定する。ノイズレベルが低レベルと判定されている場合には、音声認識部Ｆ４を用いてユーザの発話内容を特定することを決定してステップＳ３１０に移る。一方、ノイズレベルが高レベルと判定されている場合には、読唇処理部Ｆ７を用いてユーザの発話内容を特定することを決定してステップＳ３２０に移る。
【００７１】
ステップＳ３１０では音声認識部Ｆ４が、音声取得部Ｆ３が生成した発話音声データを取得して、ステップＳ３１１に移る。ステップＳ３１１では音声認識部Ｆ４が、取得した発話音声データに基づいて音声認識処理を実施してステップＳ３３０に移る。
【００７２】
ステップＳ３２０では発話画像データを取得してステップＳ３２１に移る。ステップＳ３２１では読唇処理部Ｆ７がステップＳ３２１で取得した発話画像データを用いて読唇処理を実施することで発話文字列を生成して、ステップＳ３２２に移る。
【００７３】
ステップＳ３２２では中間言語化部Ｆ９が、ステップＳ３２１で生成された発話文字列を用いた中間言語データ生成処理を実施してステップＳ３２３に移る。この中間言語データ生成処理については別途後述する。なお、この中間言語データ生成処理の成果物として、発話文字列に、各音節文字をユーザが発声した際の声調を示す声調情報を付加したデータ（以降、中間言語データ）が生成される。
【００７４】
ステップＳ３２３では音声認識部Ｆ４が、ステップＳ３２３で生成された中間言語データを用いた音声認識処理を実行することでユーザの発話内容を特定する。ここでの発話内容との特定とは、例えば、発話文字列をイントネーションに基づいて単語レベルに分割し、さらに単語間の連接関係に基づいて、意味の通じる１文に変換することである。ステップＳ３２３での処理が完了するとステップＳ３３０に移る。
【００７５】
ステップＳ３３０では以上の処理で特定したユーザの発話内容を示すデータを、所定のアプリに提供してステップＳ３３１に移る。ステップＳ３３１では動作モードをスタンバイモードへと移行して本フローを終了する。なお、本フローが終了した場合、図３に示すスタンバイモード処理が開始される。
【００７６】
＜中間言語データ生成処理＞
次に、図８に示すフローチャートを用いて、中間言語化部Ｆ９が実施する中間言語データ生成処理について述べる。このフローチャートは、図８に示す発話内容認識処理のステップＳ３２２に移った時に開始されれば良い。
【００７７】
まず、ステップＳ４０１では、読唇処理部Ｆ７によって生成された発話文字列が備える音節文字の数ｎを取得してステップＳ４０２に移る。ステップＳ４０２では、以降の処理に用いる変数ｋを１に設定してステップＳ４０３に移る。なお、ｋは、自然数が設定される変数である。
【００７８】
ステップＳ４０３では、ｋがｎ＋１未満であるか否かを判定する。ｋがｎ＋１未満である場合にはステップＳ４０３が肯定されてステップＳ４０４に移る。一方、ｋがｎ＋１以上である場合には、ステップＳ４０３が否定判定されて本フローを終了する。なお、本フローが終了した場合には、本フローの呼び出し元である発話内容認識処理にリターンし、ステップＳ３２３に移る。
【００７９】
ステップＳ４０４では、ｋ−１番目からｋ番目までの状態に対応する発話画像データに基づいて、ｋ−１番目の音節とｋ番目の音節とを続けて発声する際の唇動パターン（以降、観測唇動パターン）を特定する。ステップＳ４０４での処理が完了すると、ステップＳ４０５に移る。ｋ番目の音節文字が請求項に記載の対象文字に相当し、ｋ−１番目の音節文字が請求項に記載の、対象文字の１つ前に位置する音節文字に相当する。
【００８０】
なお、観測唇動パターンは、中間言語化部Ｆ９が特定してもよいし、連結唇動パターン特定部Ｆ８２が特定してもよい。また、発話文字列の生成時に読唇処理部Ｆ７が特定した唇動パターンを用いて中間言語化部Ｆ９が特定してもよい。何れにしても観測唇動パターンは、発話文字列の生成に用いられた画像データに基づいて特定される。
【００８１】
ステップＳ４０５では、声調ＤＢ１ｃに保存されている種々の連結唇動データの中から、ステップＳ４０４で特定した観測唇動パターンとの類似度合いが最も高い連結唇動パターンを示す連結唇動データを特定する。ここでは一例として、ｋ−１番目の音節とｋ番目の音節文字をラベルとして付与されている連結唇動データを抽出し、その中で観測唇動パターンとの類似度合いが最も高い連結唇動パターンを示す連結唇動データを選択するものとする。
【００８２】
類似度合いの算出は、パターンマッチング等の周知の手法を用いて実施されれば良い。なお、声調ＤＢ１ｃに、ｋ−１番目の音節とｋ番目の音節文字をラベルとして割り当てられている連結唇動データが１つしか登録されていない場合には、その連結唇動データを選択すればよい。ステップＳ４０５での処理が完了するとステップＳ４０６に移る。
【００８３】
ステップＳ４０６では、ステップＳ４０５で選択された連結唇動データと対応付けられている声調データを読みだしてステップＳ４０７に移る。ステップＳ４０７では、読み出した声調データと、そのｋ−１番目の音節文字に対して割り当てた声調とから、ｋ番目の音節文字に対する声調を決定する。例えばｋ＝１の時は、読み出した声調データに示される２音節目の声調をそのまま採用する。
【００８４】
また、ｋ≧２の時は、読み出した声調データに示される１音節目の声調が、発話文字列におけるｋ−１番目の音節文字に対して設定した声調と一致するように、読み出した声調データに示される２つの音節に対する声調を等しく補正する。例えば、読み出した声調データに示される１音節目の声調が、発話文字列におけるｋ−１番目の音節文字に設定した声調に対して０．５オクターブ低い場合には、声調データに示される２つの音節に対する声調を両方とも０．５オクターブずつ上げる。そして、そのような補正を施した声調データの２音節目の声調を、ｋ番目の音節文字に対する声調として採用する。
【００８５】
ステップＳ４０７での処理が完了するとステップＳ４０８に移る。ステップＳ４０８では、変数ｋの値を１つ増やして（つまりインクリメントして）、ステップＳ４０３に戻る。したがって、ステップＳ４０３からステップＳ４０８を繰り返すことで発話文字列を構成する全ての音節文字に対する声調が決定される。つまり、発話文字列に声調情報が付加された中間言語データが生成される。中間言語データの表現形式は、上述の通りJEITA TT-6004などの任意の形式を採用することができる。
【００８６】
＜実施形態のまとめ＞
以上の構成では、スタンバイモードで動作している間にユーザの発話を検出した場合には、そのユーザが発話した音声データ及びその際の画像データを元に、連結唇動データと声調パターンデータとを生成し、声調ＤＢ１ｃに保存する（ステップＳ１０３）。
【００８７】
そして、ユーザのトークＳＷ３の押下をトリガとして読唇処理を実施した場合には、ユーザの発話時の画像データから連結唇動パターンを特定して、その特定した連結唇動パターンと声調ＤＢ１ｃに保存されているデータとから、音節毎の声調を決定する。
【００８８】
つまり、以上の構成によれば、カメラ５が撮像した画像データから、中間言語データを生成することができる。また、音節毎に割り当てられる声調は、実際にユーザが発話した時の唇動パターンと声調パターンとに基づいて決定されるため、実際のユーザの声調と近い声調であることが期待される。したがって、上述した方法によって生成される中間言語データは、ユーザの声調を相対的に精度良く再現した中間言語データとなることが期待できる。
【００８９】
なお、一般的に、単なる音節文字の羅列（つまり発話文字列）よりも、それらが発話された際の声調情報が付加された中間言語データのほうが情報量は大きい。そのため、発話内容を解析する上では、発話文字列よりも中間言語データを用いたほうが、単語の切れ目や疑問文であるか否かなどの特定精度が向上し、より適切な認識結果が得られるようになる。すなわち、以上の構成によれば、読唇処理の結果に基づいて、発話内容をより精度よく認識できるようになる。
【００９０】
以上、本発明の実施形態を説明したが、本発明は上述の実施形態に限定されるものではなく、以降で述べる種々の変形例も本発明の技術的範囲に含まれ、さらに、下記以外にも要旨を逸脱しない範囲内で種々変更して実施することができる。
【００９１】
なお、前述の実施形態で述べた部材と同一の機能を有する部材については、同一の符号を付し、その説明を省略する。また、構成の一部のみに言及している場合、他の部分については先に説明した実施形態の構成を適用することができる。
【００９２】
［変形例１］
以上では、生成した中間言語データを、発話内容の特定（換言すれば認識）に利用する態様を開示したが、これに限らない。中間言語データは、音声合成処理に利用されても良い。その場合、音声認識装置１は、中間言語化部Ｆ９が生成した中間言語データを、音声合成処理を実行するアプリケーションソフトウェアに提供する。
【００９３】
［変形例２］
上述した実施形態では、ユーザの離席時にマイク４をオフする態様を開示したが、これに限らない。マイク４は走行用電源がオンとなっている間は常にオン状態が維持されても良い。
【００９４】
［変形例３］
車両を利用する人物（つまりユーザ）が複数存在する場合には、上述した種々の処理は、ユーザを識別して実施することが好ましい。つまり、顔画像や声紋、指紋等によってユーザを識別し、ユーザ毎に音節文字毎の唇動パターンや、連結唇動データ、声調データを生成することが好ましい。
【００９５】
［変形例４］
以上では、ユーザの発話音声を音節の概念で区切って処理を実施する態様を開示したが、これに限らない。ユーザの発話音声をモーラの概念で区切って処理してもよい。
【符号の説明】
【００９６】
１００  音声入力システム、１  音声認識装置、２  シートセンサ、３  トークスイッチ、４  マイク、５  カメラ、Ｆ１  着座判定部、Ｆ２  操作受付部、Ｆ３  音声取得部、Ｆ４  音声認識部、Ｆ５  ノイズレベル判定部、Ｆ６  画像取得部、Ｆ７  読唇処理部、Ｆ８  学習処理部、Ｆ９  中間言語化部（中間言語データ生成部）、Ｆ１０  認識媒体設定部、Ｆ８１  声調パターン特定部、Ｆ８２  連結唇動パターン特定部、Ｆ８３  保存処理部、１ａ  音声認識用データベース、１ｂ  読唇用データベース、１ｃ  声調データベース
【図１】
2018013549.tif 000003
【図２】
2018013549.tif 000004
【図３】
2018013549.tif 000005
【図４】
2018013549.tif 000006
【図５】
2018013549.tif 000007
【図６】
2018013549.tif 000008
【図７】
2018013549.tif 000009
【図８】
2018013549.tif 000010