携帯電子機器
【課題】読み仮名の変更に伴う認識辞書の更新をユーザに意識させることなく行うことができる携帯電子機器を提供すること。
【解決手段】携帯電話機1は、所定の処理と編集可能な読み仮名とが対応付けられたアドレス帳データを記憶するアドレス帳DB51と、音声認識の結果と照合する読み仮名の選択肢を含む認識辞書データを、アドレス帳データと関連付けて記憶する認識辞書DB52と、音声認識結果と照合された読み仮名に対応する所定の処理を実行する実行部41と、アドレス帳データと認識辞書データとの読み仮名の差分を示す更新データを記憶する更新情報DB53と、アドレス帳データが更新された場合に、当該更新の内容を示す更新データを更新情報DB53へ記憶し、当該更新後の所定のタイミングで、更新データに基づいて認識辞書データを更新する更新部42と、を備える。
【解決手段】携帯電話機1は、所定の処理と編集可能な読み仮名とが対応付けられたアドレス帳データを記憶するアドレス帳DB51と、音声認識の結果と照合する読み仮名の選択肢を含む認識辞書データを、アドレス帳データと関連付けて記憶する認識辞書DB52と、音声認識結果と照合された読み仮名に対応する所定の処理を実行する実行部41と、アドレス帳データと認識辞書データとの読み仮名の差分を示す更新データを記憶する更新情報DB53と、アドレス帳データが更新された場合に、当該更新の内容を示す更新データを更新情報DB53へ記憶し、当該更新後の所定のタイミングで、更新データに基づいて認識辞書データを更新する更新部42と、を備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、音声認識辞書を有する携帯電子機器に関する。
【背景技術】
【0002】
従来、携帯電話機やナビゲーション装置等の電子機器において、音声認識により所定の処理を実行させる機能が搭載されている。例えば、電子機器のユーザは、選択操作をすることなく、音声によりメール機能の呼び出しやアドレス帳からの選択等の指示を行うことができる。
【0003】
このような電子機器は、音声認識の結果と照合させる認識辞書を備える。しかしながら、認識辞書を変更しなければならない状況も生じうる。特許文献1においては、携帯型の電子機器に対して音声認識サービスを実現する上で用いられる、分散処理型の音声認識サーバにおける認識辞書の更新処理について記載されており、特に複数の音声認識処理部を保有する場合の認識辞書更新の効率の向上を図ることが提案されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−15209号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載されているように、認識辞書の更新には大きな処理負荷を必要としている。一方で、音声認識処理の機能ブロック自体がコンパクト化され、携帯型の電子機器そのものに搭載されるようになりつつある。当然ながら携帯電子機器は、サーバに比べて処理能力が低いため、わずかな認識辞書の更新であっても更新処理が生じると、その処理に大きく時間がかかってしまう。その結果、ユーザの操作に対する応答が遅くなってしまうという不都合が生じてしまう。
【0006】
本発明は、認識辞書の更新をユーザに意識させることなく行うことができる携帯電子機器を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明に係る携帯電子機器は、所定の処理と編集可能な読み仮名とが対応付けられた読み仮名対応データを記憶する読み仮名記憶部と、音声認識の結果と照合する読み仮名の選択肢を含む認識辞書を、前記読み仮名対応データと関連付けて記憶する認識辞書記憶部と、前記音声認識結果と照合された読み仮名に対応する前記所定の処理を実行する実行部と、前記読み仮名対応データと前記認識辞書との読み仮名の差分を示す更新データを記憶する更新データ記憶部と、前記読み仮名対応データが更新された場合に、当該更新の内容を示す更新データを前記更新データ記憶部へ記憶し、当該更新後の所定のタイミングで、前記更新データに基づいて前記認識辞書を更新する更新部と、を備える。
【0008】
また、前記更新部は、前記所定のタイミングとして、予め許可されているアプリケーション以外のアプリケーションが実行されていない場合に、前記更新データに基づいて前記認識辞書を更新することが好ましい。
【0009】
また、前記更新部は、前記所定のタイミングとして、所定時間操作入力がなかった場合に、前記更新データに基づいて前記認識辞書を更新することが好ましい。
【0010】
また、前記読み仮名記憶部は、通信相手と当該通信相手の読み仮名とが対応付けられたアドレス帳を前記読み仮名対応データとして記憶し、前記実行部は、前記所定の処理として、前記照合された読み仮名に対する通信相手を前記アドレス帳から選択することが好ましい。
【0011】
また、前記更新部は、前記認識辞書の更新中に所定のイベントが発生した場合に、当該更新を中断することが好ましい。
【0012】
また、前記更新部は、前記音声認識の実行が指示された際、前記認識辞書への更新が未実施の前記更新データが存在する場合に、当該音声認識の実行前に当該未実施の更新を行うことが好ましい。
【0013】
また、前記更新部は、前記更新データ記憶部に更新データを記憶すると共に、前記認識辞書を更新する必要があることを示すデータを記憶することが好ましい。
【発明の効果】
【0014】
本発明によれば、認識辞書の更新をユーザに意識させることなく行うことができる。
【図面の簡単な説明】
【0015】
【図1】本発明の実施形態に係る携帯電話機の外観斜視図である。
【図2】本発明の実施形態に係る携帯電話機の機能を示すブロック図である。
【図3】本発明の実施形態に係るアドレス帳の編集に伴う認識辞書データの更新方法を示す概要図である。
【図4】本発明の実施形態に係るアドレス帳データの追加に伴う、更新データおよび認識辞書データの更新内容を示す図である。
【図5】本発明の実施形態に係るアドレス帳データの削除に伴う、更新データおよび認識辞書データの更新内容を示す図である。
【図6】本発明の実施形態に係るアドレス帳データの変更に伴う、更新データおよび認識辞書データの更新内容を示す図である。
【図7】本発明の実施形態に係る認識辞書データの更新処理を示すフローチャートである。
【図8】本発明の実施形態に係る認識辞書データの更新時の流れを示すシーケンス図である。
【図9】本発明の実施形態に係る認識辞書データの更新時に割り込み処理が発生した場合の流れを示すシーケンス図である。
【図10】本発明の実施形態に係る音声認識処理起動時に行う認識辞書データの更新の流れを示すシーケンス図である。
【発明を実施するための形態】
【0016】
以下、本発明の好適な実施形態の一例について説明する。なお、本実施形態では、携帯電子機器の一例として、携帯電話機1を説明する。なお、本発明の携帯電子機器はこれには限られず、例えば、PHS、PDA(Personal Digital Assistant)、ゲーム機、ナビゲーション装置やパーソナルコンピュータ等、様々な携帯電子機器に適用可能である。
【0017】
図1は、本実施形態に係る携帯電話機1(携帯電子機器)の外観斜視図である。なお、図1は、いわゆる折り畳み型の携帯電話機の形態を示しているが、本発明に係る携帯電話機の形態はこれに限られない。例えば、両筐体を重ね合わせた状態から一方の筐体を一方向にスライドさせるようにしたスライド式や、重ね合せ方向に沿う軸線を中心に一方の筐体を回転させるようにした回転式(ターンタイプ)や、操作部と表示部とが1つの筐体に配置され、連結部を有さない形式(ストレートタイプ)でもよい。
【0018】
携帯電話機1は、操作部側筐体2と、表示部側筐体3と、を備えて構成される。操作部側筐体2は、表面部10に、操作部11と、携帯電話機1の使用者が通話時や音声認識アプリケーションを利用時に発した音声が入力されるマイク12と、を備えて構成される。操作部11は、各種設定機能や電話帳機能やメール機能等の各種機能を作動させるための機能設定操作ボタン13と、電話番号の数字やメールの文字等を入力するための入力操作ボタン14と、各種操作における決定やスクロール等を行う決定操作ボタン15と、から構成されている。
【0019】
また、表示部側筐体3は、表面部20に、各種情報を表示するための表示部21と、通話の相手側の音声を出力するレシーバ22と、を備えて構成されている。
【0020】
また、操作部側筐体2の上端部と表示部側筐体3の下端部とは、ヒンジ機構4を介して連結されている。また、携帯電話機1は、ヒンジ機構4を介して連結された操作部側筐体2と表示部側筐体3とを相対的に回転することにより、操作部側筐体2と表示部側筐体3とが互いに開いた状態(開放状態)にしたり、操作部側筐体2と表示部側筐体3とを折り畳んだ状態(折畳み状態)にしたりできる。
【0021】
図2は、本実施形態に係る携帯電話機1の機能を示すブロック図である。携帯電話機1は、操作部11と、表示部21と、制御部30と、音声認識処理部40と、記憶部50と、通信部60と、音声部70と、を備える。さらに、音声認識処理部40は、実行部41と、更新部42と、を備える。また、記憶部50は、アドレス帳DB(データベース)51と、認識辞書DB52と、更新情報DB53と、を備える。
【0022】
制御部30は、携帯電話機1の全体を制御しており、例えば、表示部21、通信部60等に対して所定の制御を行う。また、制御部30は、操作部11等から入力を受け付けて、各種処理を実行する。そして、制御部30は、処理実行の際には、記憶部50を制御し、各種プログラムおよびデータの読み出し、およびデータの書き込みを行う。
【0023】
音声認識処理部40は、制御部30からの指令に基づいて、実行部41により音声認識処理の実行と、更新部42により認識辞書の管理を行う。
【0024】
記憶部50は、本実施形態に係る各種プログラムを記憶し、また、制御部30による演算処理に利用される。さらに、記憶部50は、アドレス帳DB51により音声認識の関連データであるアドレス帳データ(読み仮名対応データ)を記憶し、認識辞書DB52により認識辞書データを記憶し、更新情報DB53によりアドレス帳データと認識辞書データとの差分を示す更新データを記憶する。なお、記憶部50は、着脱可能な外部メモリを兼ねていてもよい。
【0025】
ここで、アドレス帳データとは、通話やメール等の通信相手を識別するデータ(例えば、電話番号やメールアドレス、名称等)と読み仮名とを含むデータである。実行部41は、この読み仮名が入力されることにより、通信相手の選択処理(所定の処理)を実行する。
【0026】
また、認識辞書データは、音声認識の結果として得られるテキスト情報と照合する読み仮名の選択肢を含むデータである。この読み仮名のそれぞれは、アドレス帳データと関連付けられており、選択肢の中に音声認識の結果と同一の読み仮名があった場合に、関連付けられているアドレス帳データが読み出される。
【0027】
また、更新データは、認識辞書データとアドレス帳データの読み仮名を一致させるための差分を示すデータであり、アドレス帳の読み仮名が変更された場合に更新部42により生成される。したがって、更新部42が更新データを認識辞書データに適用することにより、認識辞書データの読み仮名が更新されてアドレス帳と一致する。
【0028】
通信部60は、所定の使用周波数帯(例えば、2GHz帯や800MHz帯等)で外部装置(基地局)と通信を行う。通信部60は、アンテナより受信した信号を復調処理し、処理後の信号を制御部30に供給する。また、制御部30から供給された信号を変調処理し、アンテナを介して外部装置に送信する。
【0029】
音声部70は、制御部30の制御に従って、通信部60から供給された信号に対して所定の音声処理を行い、処理後の信号をレシーバ22に出力する。レシーバ22は、音声部70から供給された信号を外部に出力する。なお、この信号は、レシーバ22に代えて、または、レシーバ22と共に、スピーカ(図示せず)から出力されるとしてもよい。また、音声部70は、制御部30の制御に従って、マイク12から入力された信号を処理し、処理後の信号を通信部60に出力する。通信部60は、音声部70から供給された信号に所定の処理を行い、処理後の信号をアンテナから出力する。
【0030】
図3は、本実施形態に係るアドレス帳の編集に伴う認識辞書データの更新方法を示す概要図である。
【0031】
ユーザによりアドレス帳データの読み仮名が追加、削除、変更された場合、この変更を認識辞書データに対しても同様に行う必要がある。第1パターンの場合には、アドレス帳データの更新に応じて即時に認識辞書データを更新する。しかしながら、ユーザにとっては、アドレス帳の更新処理のみの場合に比べて、待ち時間が長くなっていた。
【0032】
一方、第2パターンの場合には、認識辞書用の更新データを介在させることにより、認識辞書データの更新は、バックグラウンドまたは音声認識処理の起動時に行うことができる。すなわち、アドレス帳データの更新時には、更新データを生成しておき、更新に時間のかかる認識辞書データは、別の所定のタイミングで実行する。その結果、アドレス帳の更新時の待ち時間を低減し、認識辞書の更新をユーザに意識させないようにできる。
【0033】
ここで、所定のタイミングとは、予め許可されているアプリケーション以外のアプリケーションが実行されていない場合、および所定時間ユーザからの操作入力がなかった場合である。なお、予め許可されているアプリケーションは、例えば、電波状態表示や時刻表示等、常時実行されており処理負荷が比較的小さいアプリケーションとする。例えば、携帯電話機1が省電力モードとなった際に、これらのアプリケーションのバックグラウンドで、認識辞書データの更新が実行される。
【0034】
認識辞書データの更新には大きな処理負荷とメモリ消費を伴うため、ユーザ操作中やアプリケーションの実行中に更新されるのを抑制することにより、ユーザの操作性やアプリケーションのスムーズな処理を損なうおそれ(例えば、画面表示の遅延や、音声再生の途切れ等)を回避することができる。
【0035】
図4は、本実施形態に係るアドレス帳データの追加に伴う、更新データおよび認識辞書データの更新内容を示す図である。
【0036】
まず、アドレス帳ID(AID)「2」が空欄(NULL)である状態(a1)から、新たにレコードが追加され、認識辞書に反映が必要な読み仮名「ヨコハマサブロウ」が登録されたとする(a2)。
【0037】
このとき、更新データは、(b1)の状態から(b2)の状態へと更新される。(b1)では、全てのレコードが「更新済み」の状況であり、AID「2」のレコードは「NULL」である。そして、更新後の(b2)では、AID「2」に読み仮名「ヨコハマサブロウ」が登録され、このレコードの状況は「未更新」となる。
【0038】
その後、認識辞書データの更新タイミングにおいて、(b2)で「未更新」となっているレコードが読み出され、認識辞書データは(c1)の状態から(c2)の状態へと更新される。これに伴って、更新データは(b2)の状態から(b3)の状態へと更新される。
【0039】
(c1)では、読み仮名とアドレス帳データの識別子であるAIDとが対応付けられており、AID「2」に対応するNo「2」のレコードの読み仮名は「NULL」となっている。(c2)では、このレコードの読み仮名が「ヨコハマサブロウ」に更新されている。そして、認識辞書データが更新されたことに応じて、(b3)では、更新対象となったAID「2」のレコードの状況が「更新済み」となる。
【0040】
図5は、本実施形態に係るアドレス帳データの削除に伴う、更新データおよび認識辞書データの更新内容を示す図である。
【0041】
まず、アドレス帳データにおいて、AID「0」〜「2」のレコードが存在する状態(a1)から、AID「1」のレコードが削除され、認識辞書に反映が必要な読み仮名「ヨコハマジロウ」が「NULL」になったとする(a2)。
【0042】
このとき、更新データは、(b1)の状態から(b2)の状態へと更新される。(b1)では、全てのレコードが「更新済み」の状況であり、AID「1」のレコードには読み仮名「ヨコハマジロウ」が格納されている。そして、更新後の(b2)では、AID「1」読み仮名は「NULL」に変更され、このレコードの状況は「未更新」となる。
【0043】
その後、認識辞書データの更新タイミングにおいて、(b2)で「未更新」となっているレコードが読み出され、認識辞書データは(c1)の状態から(c2)の状態へと更新される。これに伴って、更新データは(b2)の状態から(b3)の状態へと更新される。
【0044】
(c1)では、AID「1」に対応するNo「1」のレコードの読み仮名は「ヨコハマジロウ」となっている。(c2)では、このレコードの読み仮名が「NULL」に更新されている。そして、認識辞書データが更新されたことに応じて、(b3)では、更新対象となったAID「1」のレコードの状況が「更新済み」となる。
【0045】
図6は、本実施形態に係るアドレス帳データの変更に伴う、更新データおよび認識辞書データの更新内容を示す図である。
【0046】
まず、アドレス帳データにおいて、AID「0」〜「2」のレコードが存在する状態(a1)から、AID「0」のレコードが変更され、認識辞書に反映が必要な読み仮名「ヨコハマ」が「ヨコハマタロウ」になったとする(a2)。
【0047】
このとき、更新データは、(b1)の状態から(b2)の状態へと更新される。(b1)では、全てのレコードが「更新済み」の状況であり、AID「0」のレコードには読み仮名「ヨコハマ」が格納されている。そして、更新後の(b2)では、AID「0」読み仮名は「ヨコハマタロウ」に変更され、このレコードの状況は「未更新」となる。
【0048】
その後、認識辞書データの更新タイミングにおいて、(b2)で「未更新」となっているレコードが読み出され、認識辞書データは(c1)の状態から(c2)の状態へと更新される。これに伴って、更新データは(b2)の状態から(b3)の状態へと更新される。
【0049】
(c1)では、AID「0」に対応するNo「0」のレコードの読み仮名は「ヨコハマ」となっている。(c2)では、このレコードの読み仮名が「ヨコハマタロウ」に更新されている。そして、認識辞書データが更新されたことに応じて、(b3)では、更新対象となったAID「0」のレコードの状況が「更新済み」となる。
【0050】
図7は、本実施形態に係る更新部42が実行する認識辞書データの更新処理を示すフローチャートである。
【0051】
ステップS1では、更新部42は、制御部30からの通知に基づいて、予め許可されているアプリケーション以外の他の処理(アプリケーション)が動作していないかどうかを判定する。更新部42は、この判定がYESの場合は処理をステップS2に移し、判定がNOの場合は処理をステップS7に移す。
【0052】
ステップS2では、更新部42は、制御部30からの通知に基づいて、操作部11に対して一定時間操作入力がないかどうかを判定する。更新部42は、この判定がYESの場合は処理をステップS3に移し、判定がNOの場合は処理をステップS7に移す。
【0053】
ステップS3では、更新部42は、認識辞書データの更新が必要であるかどうかを判定する。具体的には、更新部42は、更新情報DB53に適用を要する更新データが存在するか否かを判定する。更新部42は、この判定がYESの場合は処理をステップS4に移し、判定がNOの場合は処理をステップS7に移す。
【0054】
なお、更新部42は、更新情報DB53に更新データを記憶すると共に、認識辞書を更新する必要があることを示すデータ(フラグ)を記憶する。このことにより、更新部42は、更新データ全体を確認することなく、このフラグを参照することにより、効率的に認識辞書データの更新の要否を判定できる。
【0055】
ステップS4では、更新部42は、更新情報DB53に記憶されている更新データに基づいて、認識辞書DB52の認識辞書データを更新する。
【0056】
ステップS5では、更新部42は、制御部30からの通知に基づいて、ユーザ操作や予め登録済みのスケジュールに基づくアラーム等による割り込み処理が発生したか否かを判定する。更新部42は、この判定がYESの場合は処理をステップS6に移し、判定がNOの場合は処理をステップS7に移す。
【0057】
ステップS6では、更新部42は、ステップS5により判定された割り込み処理が、認識辞書データの更新処理により妨げられるのを防ぐため、認識辞書データの更新を中止する。具体的には、更新部42の状態を示すデータを「更新中止」に変更し、以降の更新処理を行わないように設定する。
【0058】
ステップS7では、更新部42は、認識辞書データの更新処理を終了するかどうかを判定する。具体的には、上記の状態が「更新中止」となっている場合には、認識辞書データの更新を継続できないので、判定はYESとなり、更新部42は更新処理を終了する。一方、認識辞書データの更新を継続できる場合は判定がNOとなり、更新部42は処理をステップS1に移す。
【0059】
図8は、本実施形態に係る認識辞書データの更新時の流れを示すシーケンス図である。ここでは、制御部30が実行する認識辞書更新判定処理およびアドレス帳データ処理からの通知に基づいて、更新部42により認識辞書データの更新が実行される。
【0060】
まず、アドレス帳データ処理により読み仮名編集の有無が判定され、編集が行われた場合に更新部42へ更新通知がなされる(ステップS101)。すると、更新部42は、更新情報DB53の更新データを更新し(ステップS102)、更新が完了すると、「更新必要」に状態を変更する(ステップS103)。
【0061】
その後、認識辞書更新判定処理により、アプリケーション実行の有無と、ユーザ操作の有無に関する、携帯電話機1の状態通知を受けると(ステップS104)、更新部42は、認識辞書の更新が開始可能であることを判断し、「更新中」に状態を変更する(ステップS105)。さらに、更新部42は、更新処理が開始されることを制御部30へ通知する。
【0062】
次に、更新部42は、更新情報DB53から更新データを取得する(ステップS106)。更新部42は、更新データの取得が完了すると、認識辞書更新のループに入り、この更新データに従って順次、認識辞書データの更新を行う。
【0063】
更新部42は、認識辞書の更新が可能(状態が「更新中」)であるかどうかを判定し(ステップS107)、可能である(判定がYESの)場合には、取得した更新データに基づいて認識辞書データを1件更新する(ステップS108)。一方、更新が不可能(判定がNO)の場合には、認識辞書更新のループを抜け、更新部42は処理をステップS110に移す。
【0064】
認識辞書データ1件の更新(ステップS108)が完了すると、更新部42は、全ての更新が終了したか(未処理の更新データが存在しないか)どうかを判定し(ステップS109)、終了した(判定がYESの)場合は、認識辞書更新のループを抜け所定をステップS110に移す。一方、更新が終了していない(判定がNOの)場合は、処理をステップS107に戻して更新を継続する。
【0065】
認識辞書更新のループを抜けると、更新部42は、全ての更新が終了したか(未処理の更新データが存在しないか)どうかを判定する(ステップS110)。終了した(判定がYESの)場合は、更新部42は、状態を「更新済」に変更し、この状態を制御部30へ通知する(ステップS111)。一方、更新が終了していない(判定がNOの)場合は、更新部42は、状態を「更新必要」に変更して次の更新可能なタイミングまで処理実行を保留し、この状態を制御部30へ通知する(ステップS112)。
【0066】
図9は、本実施形態に係る認識辞書データの更新時に割り込み処理が発生した場合の流れを示すシーケンス図である。ここでは、図8のステップS107〜S109のループ中に割り込み処理が発生した場合を示している。
【0067】
なお、割り込み処理とは、予め許可されているアプリケーション以外のアプリケーションの起動や、ユーザからの操作入力の受け付け等である。これらの割り込み処理は、処理負荷の大きい認識辞書データの更新中に実行されると、携帯電話機1の処理能力が不足し動作が不安定になるおそれがあるため好ましくない。
【0068】
制御部30により割り込み処理の発生を検知すると(ステップS201)、認識辞書更新判定処理により、認識辞書データの更新中であるかどうかを判定する(ステップS202)。具体的には、制御部30は、状態が「更新中」であるかどうかを判定し、「更新中」(判定がYES)の場合は更新部42に更新不可通知を行う。一方、「更新中」以外(判定がNO)の場合は、制御部30は、割り込みが可能と判断して割り込み処理を実行させる(ステップS204)。
【0069】
認識辞書更新判定処理により更新不可通知がなされた場合には、更新部42は、状態を「更新中止」に変更する(ステップS203)。この場合、ステップS107の判定において更新不可(判定がNO)と判定される。
【0070】
認識辞書更新のループを抜けると、更新部42は、全ての更新が終了したか(未処理の更新データが存在しないか)どうかを判定する(ステップS110)。終了した(判定がYESの)場合は、更新部42は、状態を「更新済」に変更し、この状態を制御部30へ通知する(ステップS111)。一方、更新が終了していない(判定がNOの)場合は、更新部42は、状態を「更新必要」に変更して次の更新可能なタイミングまで処理実行を保留し、この状態を制御部30へ通知する(ステップS112)。
【0071】
制御部30は、更新部42から「更新済」または「更新必要」の状態が通知されたことにより、認識辞書の更新が中断されて割り込みが可能になったと判断し、割り込み処理を実行させる(ステップS204)。
【0072】
図10は、本実施形態に係る音声認識処理起動時に行う認識辞書データの更新の流れを示すシーケンス図である。ここでは、未処理の更新データが存在し、状態が「更新必要」のときに、音声認識処理が起動した場合を示している。
【0073】
制御部30により音声認識処理の起動が検知されると(ステップS301:YES)、更新部42は、認識辞書データの更新が必要かどうかを判定する(ステップS302)。すなわち、未処理の更新データが存在し、アドレス帳データと認識辞書データとが不一致である場合には、音声認識処理が正しく動作しないので、認識辞書データの更新が必要と判定する。
【0074】
認識辞書データの更新が必要な場合(ステップS302:YES)には、図8と同様に、ステップS105〜S109の認識辞書更新のループにおいて、更新データに基づいて認識辞書データを更新する。
認識辞書更新のループを抜けると、更新部42は、全ての更新が終了したか(未処理の更新データが存在しないか)どうかを判定する(ステップS110)。終了した(判定がYESの)場合は、更新部42は、状態を「更新済」に変更し、この状態を制御部30へ通知する(ステップS111)。一方、更新が終了していない(判定がNOの)場合は、更新部42は、状態を「更新必要」に変更して次の更新可能なタイミングまで処理実行を保留し、この状態を制御部30へ通知する(ステップS112)。
【0075】
そして、制御部30は、更新部42から状態を通知されたことに応じて、音声認識処理を実行する(ステップS303)。なお、制御部30は、通知された状態が「更新済」の場合には、音声認識処理を開始できるが、状態が「更新必要」の場合は、認識辞書が最新になっていない(アドレス帳と一致しない)ため、エラー出力して音声認識処理を終了することとしてよい。
【0076】
以上のように、本実施形態によれば、携帯電話機1は、ユーザを待たせることのないタイミングで認識辞書データの更新を行った。さらに、認識辞書データの更新中にイベントが発生した場合には、更新処理を中断した。このように、携帯電話機1は、読み仮名の変更に伴う認識辞書データの更新をユーザに意識させることなく行うことができる。
【0077】
また、未処理の更新データが残っている場合には、音声認識処理が実行される前に認識辞書データを更新するため、携帯電話機1は、アドレス帳データと認識辞書データとの不一致を回避することができる。
【0078】
以上、本実施形態においてはアドレス帳への更新が発生した場合を例に説明を行った。しかしながらアドレス帳以外でも、例えばナビゲーション用の目的地辞書、アプリケーションの実行指示用の読み仮名辞書、データフォルダやメールフォルダの呼び出し指示用の読み仮名辞書等、ユーザによって自由に内容変更可能なユーザ辞書であれば、本発明は適用可能である。
【0079】
本発明によれば、認識辞書がアドレス帳等のユーザ辞書とは別に構成されている場合において、特に有用である。具体的には、音声認識処理に関する機能の処理プログラムがユニット化されたケースも想定され、このケースにおいて、音声認識処理機能部が参照し易い形に認識辞書が構成され、この認識辞書が音声認識処理のユニット内に共にパッケージ化されて収められている場合が考えられる。この場合、ユーザ辞書とは別系統の管理下に認識辞書が置かれることになる。このように、音声認識処理がユニット化されていた場合には、ユーザ辞書が更新される都度、認識辞書にアクセスするために音声認識処理ユニットを起動しなければならなくなるが、本発明によれば音声認識処理ユニットの起動回数を必要最小限に済ませることができる。すなわち総合的に見て、携帯電子機器における省電力化にも繋がる。さらに、音声認識処理ユニット側への改変を必要としないため、このようなユニットを他の音声認識処理ユニットに置き換えることも容易にすることができ、携帯電子機器の開発上の自由度を向上させることにも繋がる。
【0080】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。
【符号の説明】
【0081】
1 携帯電話機
11 操作部
21 表示部
30 制御部
40 音声認識処理部
41 実行部
42 更新部
50 記憶部
51 アドレス帳DB(読み仮名記憶部)
52 認識辞書DB(認識辞書記憶部)
53 更新情報DB(更新データ記憶部)
60 通信部
70 音声部
【技術分野】
【0001】
本発明は、音声認識辞書を有する携帯電子機器に関する。
【背景技術】
【0002】
従来、携帯電話機やナビゲーション装置等の電子機器において、音声認識により所定の処理を実行させる機能が搭載されている。例えば、電子機器のユーザは、選択操作をすることなく、音声によりメール機能の呼び出しやアドレス帳からの選択等の指示を行うことができる。
【0003】
このような電子機器は、音声認識の結果と照合させる認識辞書を備える。しかしながら、認識辞書を変更しなければならない状況も生じうる。特許文献1においては、携帯型の電子機器に対して音声認識サービスを実現する上で用いられる、分散処理型の音声認識サーバにおける認識辞書の更新処理について記載されており、特に複数の音声認識処理部を保有する場合の認識辞書更新の効率の向上を図ることが提案されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−15209号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載されているように、認識辞書の更新には大きな処理負荷を必要としている。一方で、音声認識処理の機能ブロック自体がコンパクト化され、携帯型の電子機器そのものに搭載されるようになりつつある。当然ながら携帯電子機器は、サーバに比べて処理能力が低いため、わずかな認識辞書の更新であっても更新処理が生じると、その処理に大きく時間がかかってしまう。その結果、ユーザの操作に対する応答が遅くなってしまうという不都合が生じてしまう。
【0006】
本発明は、認識辞書の更新をユーザに意識させることなく行うことができる携帯電子機器を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明に係る携帯電子機器は、所定の処理と編集可能な読み仮名とが対応付けられた読み仮名対応データを記憶する読み仮名記憶部と、音声認識の結果と照合する読み仮名の選択肢を含む認識辞書を、前記読み仮名対応データと関連付けて記憶する認識辞書記憶部と、前記音声認識結果と照合された読み仮名に対応する前記所定の処理を実行する実行部と、前記読み仮名対応データと前記認識辞書との読み仮名の差分を示す更新データを記憶する更新データ記憶部と、前記読み仮名対応データが更新された場合に、当該更新の内容を示す更新データを前記更新データ記憶部へ記憶し、当該更新後の所定のタイミングで、前記更新データに基づいて前記認識辞書を更新する更新部と、を備える。
【0008】
また、前記更新部は、前記所定のタイミングとして、予め許可されているアプリケーション以外のアプリケーションが実行されていない場合に、前記更新データに基づいて前記認識辞書を更新することが好ましい。
【0009】
また、前記更新部は、前記所定のタイミングとして、所定時間操作入力がなかった場合に、前記更新データに基づいて前記認識辞書を更新することが好ましい。
【0010】
また、前記読み仮名記憶部は、通信相手と当該通信相手の読み仮名とが対応付けられたアドレス帳を前記読み仮名対応データとして記憶し、前記実行部は、前記所定の処理として、前記照合された読み仮名に対する通信相手を前記アドレス帳から選択することが好ましい。
【0011】
また、前記更新部は、前記認識辞書の更新中に所定のイベントが発生した場合に、当該更新を中断することが好ましい。
【0012】
また、前記更新部は、前記音声認識の実行が指示された際、前記認識辞書への更新が未実施の前記更新データが存在する場合に、当該音声認識の実行前に当該未実施の更新を行うことが好ましい。
【0013】
また、前記更新部は、前記更新データ記憶部に更新データを記憶すると共に、前記認識辞書を更新する必要があることを示すデータを記憶することが好ましい。
【発明の効果】
【0014】
本発明によれば、認識辞書の更新をユーザに意識させることなく行うことができる。
【図面の簡単な説明】
【0015】
【図1】本発明の実施形態に係る携帯電話機の外観斜視図である。
【図2】本発明の実施形態に係る携帯電話機の機能を示すブロック図である。
【図3】本発明の実施形態に係るアドレス帳の編集に伴う認識辞書データの更新方法を示す概要図である。
【図4】本発明の実施形態に係るアドレス帳データの追加に伴う、更新データおよび認識辞書データの更新内容を示す図である。
【図5】本発明の実施形態に係るアドレス帳データの削除に伴う、更新データおよび認識辞書データの更新内容を示す図である。
【図6】本発明の実施形態に係るアドレス帳データの変更に伴う、更新データおよび認識辞書データの更新内容を示す図である。
【図7】本発明の実施形態に係る認識辞書データの更新処理を示すフローチャートである。
【図8】本発明の実施形態に係る認識辞書データの更新時の流れを示すシーケンス図である。
【図9】本発明の実施形態に係る認識辞書データの更新時に割り込み処理が発生した場合の流れを示すシーケンス図である。
【図10】本発明の実施形態に係る音声認識処理起動時に行う認識辞書データの更新の流れを示すシーケンス図である。
【発明を実施するための形態】
【0016】
以下、本発明の好適な実施形態の一例について説明する。なお、本実施形態では、携帯電子機器の一例として、携帯電話機1を説明する。なお、本発明の携帯電子機器はこれには限られず、例えば、PHS、PDA(Personal Digital Assistant)、ゲーム機、ナビゲーション装置やパーソナルコンピュータ等、様々な携帯電子機器に適用可能である。
【0017】
図1は、本実施形態に係る携帯電話機1(携帯電子機器)の外観斜視図である。なお、図1は、いわゆる折り畳み型の携帯電話機の形態を示しているが、本発明に係る携帯電話機の形態はこれに限られない。例えば、両筐体を重ね合わせた状態から一方の筐体を一方向にスライドさせるようにしたスライド式や、重ね合せ方向に沿う軸線を中心に一方の筐体を回転させるようにした回転式(ターンタイプ)や、操作部と表示部とが1つの筐体に配置され、連結部を有さない形式(ストレートタイプ)でもよい。
【0018】
携帯電話機1は、操作部側筐体2と、表示部側筐体3と、を備えて構成される。操作部側筐体2は、表面部10に、操作部11と、携帯電話機1の使用者が通話時や音声認識アプリケーションを利用時に発した音声が入力されるマイク12と、を備えて構成される。操作部11は、各種設定機能や電話帳機能やメール機能等の各種機能を作動させるための機能設定操作ボタン13と、電話番号の数字やメールの文字等を入力するための入力操作ボタン14と、各種操作における決定やスクロール等を行う決定操作ボタン15と、から構成されている。
【0019】
また、表示部側筐体3は、表面部20に、各種情報を表示するための表示部21と、通話の相手側の音声を出力するレシーバ22と、を備えて構成されている。
【0020】
また、操作部側筐体2の上端部と表示部側筐体3の下端部とは、ヒンジ機構4を介して連結されている。また、携帯電話機1は、ヒンジ機構4を介して連結された操作部側筐体2と表示部側筐体3とを相対的に回転することにより、操作部側筐体2と表示部側筐体3とが互いに開いた状態(開放状態)にしたり、操作部側筐体2と表示部側筐体3とを折り畳んだ状態(折畳み状態)にしたりできる。
【0021】
図2は、本実施形態に係る携帯電話機1の機能を示すブロック図である。携帯電話機1は、操作部11と、表示部21と、制御部30と、音声認識処理部40と、記憶部50と、通信部60と、音声部70と、を備える。さらに、音声認識処理部40は、実行部41と、更新部42と、を備える。また、記憶部50は、アドレス帳DB(データベース)51と、認識辞書DB52と、更新情報DB53と、を備える。
【0022】
制御部30は、携帯電話機1の全体を制御しており、例えば、表示部21、通信部60等に対して所定の制御を行う。また、制御部30は、操作部11等から入力を受け付けて、各種処理を実行する。そして、制御部30は、処理実行の際には、記憶部50を制御し、各種プログラムおよびデータの読み出し、およびデータの書き込みを行う。
【0023】
音声認識処理部40は、制御部30からの指令に基づいて、実行部41により音声認識処理の実行と、更新部42により認識辞書の管理を行う。
【0024】
記憶部50は、本実施形態に係る各種プログラムを記憶し、また、制御部30による演算処理に利用される。さらに、記憶部50は、アドレス帳DB51により音声認識の関連データであるアドレス帳データ(読み仮名対応データ)を記憶し、認識辞書DB52により認識辞書データを記憶し、更新情報DB53によりアドレス帳データと認識辞書データとの差分を示す更新データを記憶する。なお、記憶部50は、着脱可能な外部メモリを兼ねていてもよい。
【0025】
ここで、アドレス帳データとは、通話やメール等の通信相手を識別するデータ(例えば、電話番号やメールアドレス、名称等)と読み仮名とを含むデータである。実行部41は、この読み仮名が入力されることにより、通信相手の選択処理(所定の処理)を実行する。
【0026】
また、認識辞書データは、音声認識の結果として得られるテキスト情報と照合する読み仮名の選択肢を含むデータである。この読み仮名のそれぞれは、アドレス帳データと関連付けられており、選択肢の中に音声認識の結果と同一の読み仮名があった場合に、関連付けられているアドレス帳データが読み出される。
【0027】
また、更新データは、認識辞書データとアドレス帳データの読み仮名を一致させるための差分を示すデータであり、アドレス帳の読み仮名が変更された場合に更新部42により生成される。したがって、更新部42が更新データを認識辞書データに適用することにより、認識辞書データの読み仮名が更新されてアドレス帳と一致する。
【0028】
通信部60は、所定の使用周波数帯(例えば、2GHz帯や800MHz帯等)で外部装置(基地局)と通信を行う。通信部60は、アンテナより受信した信号を復調処理し、処理後の信号を制御部30に供給する。また、制御部30から供給された信号を変調処理し、アンテナを介して外部装置に送信する。
【0029】
音声部70は、制御部30の制御に従って、通信部60から供給された信号に対して所定の音声処理を行い、処理後の信号をレシーバ22に出力する。レシーバ22は、音声部70から供給された信号を外部に出力する。なお、この信号は、レシーバ22に代えて、または、レシーバ22と共に、スピーカ(図示せず)から出力されるとしてもよい。また、音声部70は、制御部30の制御に従って、マイク12から入力された信号を処理し、処理後の信号を通信部60に出力する。通信部60は、音声部70から供給された信号に所定の処理を行い、処理後の信号をアンテナから出力する。
【0030】
図3は、本実施形態に係るアドレス帳の編集に伴う認識辞書データの更新方法を示す概要図である。
【0031】
ユーザによりアドレス帳データの読み仮名が追加、削除、変更された場合、この変更を認識辞書データに対しても同様に行う必要がある。第1パターンの場合には、アドレス帳データの更新に応じて即時に認識辞書データを更新する。しかしながら、ユーザにとっては、アドレス帳の更新処理のみの場合に比べて、待ち時間が長くなっていた。
【0032】
一方、第2パターンの場合には、認識辞書用の更新データを介在させることにより、認識辞書データの更新は、バックグラウンドまたは音声認識処理の起動時に行うことができる。すなわち、アドレス帳データの更新時には、更新データを生成しておき、更新に時間のかかる認識辞書データは、別の所定のタイミングで実行する。その結果、アドレス帳の更新時の待ち時間を低減し、認識辞書の更新をユーザに意識させないようにできる。
【0033】
ここで、所定のタイミングとは、予め許可されているアプリケーション以外のアプリケーションが実行されていない場合、および所定時間ユーザからの操作入力がなかった場合である。なお、予め許可されているアプリケーションは、例えば、電波状態表示や時刻表示等、常時実行されており処理負荷が比較的小さいアプリケーションとする。例えば、携帯電話機1が省電力モードとなった際に、これらのアプリケーションのバックグラウンドで、認識辞書データの更新が実行される。
【0034】
認識辞書データの更新には大きな処理負荷とメモリ消費を伴うため、ユーザ操作中やアプリケーションの実行中に更新されるのを抑制することにより、ユーザの操作性やアプリケーションのスムーズな処理を損なうおそれ(例えば、画面表示の遅延や、音声再生の途切れ等)を回避することができる。
【0035】
図4は、本実施形態に係るアドレス帳データの追加に伴う、更新データおよび認識辞書データの更新内容を示す図である。
【0036】
まず、アドレス帳ID(AID)「2」が空欄(NULL)である状態(a1)から、新たにレコードが追加され、認識辞書に反映が必要な読み仮名「ヨコハマサブロウ」が登録されたとする(a2)。
【0037】
このとき、更新データは、(b1)の状態から(b2)の状態へと更新される。(b1)では、全てのレコードが「更新済み」の状況であり、AID「2」のレコードは「NULL」である。そして、更新後の(b2)では、AID「2」に読み仮名「ヨコハマサブロウ」が登録され、このレコードの状況は「未更新」となる。
【0038】
その後、認識辞書データの更新タイミングにおいて、(b2)で「未更新」となっているレコードが読み出され、認識辞書データは(c1)の状態から(c2)の状態へと更新される。これに伴って、更新データは(b2)の状態から(b3)の状態へと更新される。
【0039】
(c1)では、読み仮名とアドレス帳データの識別子であるAIDとが対応付けられており、AID「2」に対応するNo「2」のレコードの読み仮名は「NULL」となっている。(c2)では、このレコードの読み仮名が「ヨコハマサブロウ」に更新されている。そして、認識辞書データが更新されたことに応じて、(b3)では、更新対象となったAID「2」のレコードの状況が「更新済み」となる。
【0040】
図5は、本実施形態に係るアドレス帳データの削除に伴う、更新データおよび認識辞書データの更新内容を示す図である。
【0041】
まず、アドレス帳データにおいて、AID「0」〜「2」のレコードが存在する状態(a1)から、AID「1」のレコードが削除され、認識辞書に反映が必要な読み仮名「ヨコハマジロウ」が「NULL」になったとする(a2)。
【0042】
このとき、更新データは、(b1)の状態から(b2)の状態へと更新される。(b1)では、全てのレコードが「更新済み」の状況であり、AID「1」のレコードには読み仮名「ヨコハマジロウ」が格納されている。そして、更新後の(b2)では、AID「1」読み仮名は「NULL」に変更され、このレコードの状況は「未更新」となる。
【0043】
その後、認識辞書データの更新タイミングにおいて、(b2)で「未更新」となっているレコードが読み出され、認識辞書データは(c1)の状態から(c2)の状態へと更新される。これに伴って、更新データは(b2)の状態から(b3)の状態へと更新される。
【0044】
(c1)では、AID「1」に対応するNo「1」のレコードの読み仮名は「ヨコハマジロウ」となっている。(c2)では、このレコードの読み仮名が「NULL」に更新されている。そして、認識辞書データが更新されたことに応じて、(b3)では、更新対象となったAID「1」のレコードの状況が「更新済み」となる。
【0045】
図6は、本実施形態に係るアドレス帳データの変更に伴う、更新データおよび認識辞書データの更新内容を示す図である。
【0046】
まず、アドレス帳データにおいて、AID「0」〜「2」のレコードが存在する状態(a1)から、AID「0」のレコードが変更され、認識辞書に反映が必要な読み仮名「ヨコハマ」が「ヨコハマタロウ」になったとする(a2)。
【0047】
このとき、更新データは、(b1)の状態から(b2)の状態へと更新される。(b1)では、全てのレコードが「更新済み」の状況であり、AID「0」のレコードには読み仮名「ヨコハマ」が格納されている。そして、更新後の(b2)では、AID「0」読み仮名は「ヨコハマタロウ」に変更され、このレコードの状況は「未更新」となる。
【0048】
その後、認識辞書データの更新タイミングにおいて、(b2)で「未更新」となっているレコードが読み出され、認識辞書データは(c1)の状態から(c2)の状態へと更新される。これに伴って、更新データは(b2)の状態から(b3)の状態へと更新される。
【0049】
(c1)では、AID「0」に対応するNo「0」のレコードの読み仮名は「ヨコハマ」となっている。(c2)では、このレコードの読み仮名が「ヨコハマタロウ」に更新されている。そして、認識辞書データが更新されたことに応じて、(b3)では、更新対象となったAID「0」のレコードの状況が「更新済み」となる。
【0050】
図7は、本実施形態に係る更新部42が実行する認識辞書データの更新処理を示すフローチャートである。
【0051】
ステップS1では、更新部42は、制御部30からの通知に基づいて、予め許可されているアプリケーション以外の他の処理(アプリケーション)が動作していないかどうかを判定する。更新部42は、この判定がYESの場合は処理をステップS2に移し、判定がNOの場合は処理をステップS7に移す。
【0052】
ステップS2では、更新部42は、制御部30からの通知に基づいて、操作部11に対して一定時間操作入力がないかどうかを判定する。更新部42は、この判定がYESの場合は処理をステップS3に移し、判定がNOの場合は処理をステップS7に移す。
【0053】
ステップS3では、更新部42は、認識辞書データの更新が必要であるかどうかを判定する。具体的には、更新部42は、更新情報DB53に適用を要する更新データが存在するか否かを判定する。更新部42は、この判定がYESの場合は処理をステップS4に移し、判定がNOの場合は処理をステップS7に移す。
【0054】
なお、更新部42は、更新情報DB53に更新データを記憶すると共に、認識辞書を更新する必要があることを示すデータ(フラグ)を記憶する。このことにより、更新部42は、更新データ全体を確認することなく、このフラグを参照することにより、効率的に認識辞書データの更新の要否を判定できる。
【0055】
ステップS4では、更新部42は、更新情報DB53に記憶されている更新データに基づいて、認識辞書DB52の認識辞書データを更新する。
【0056】
ステップS5では、更新部42は、制御部30からの通知に基づいて、ユーザ操作や予め登録済みのスケジュールに基づくアラーム等による割り込み処理が発生したか否かを判定する。更新部42は、この判定がYESの場合は処理をステップS6に移し、判定がNOの場合は処理をステップS7に移す。
【0057】
ステップS6では、更新部42は、ステップS5により判定された割り込み処理が、認識辞書データの更新処理により妨げられるのを防ぐため、認識辞書データの更新を中止する。具体的には、更新部42の状態を示すデータを「更新中止」に変更し、以降の更新処理を行わないように設定する。
【0058】
ステップS7では、更新部42は、認識辞書データの更新処理を終了するかどうかを判定する。具体的には、上記の状態が「更新中止」となっている場合には、認識辞書データの更新を継続できないので、判定はYESとなり、更新部42は更新処理を終了する。一方、認識辞書データの更新を継続できる場合は判定がNOとなり、更新部42は処理をステップS1に移す。
【0059】
図8は、本実施形態に係る認識辞書データの更新時の流れを示すシーケンス図である。ここでは、制御部30が実行する認識辞書更新判定処理およびアドレス帳データ処理からの通知に基づいて、更新部42により認識辞書データの更新が実行される。
【0060】
まず、アドレス帳データ処理により読み仮名編集の有無が判定され、編集が行われた場合に更新部42へ更新通知がなされる(ステップS101)。すると、更新部42は、更新情報DB53の更新データを更新し(ステップS102)、更新が完了すると、「更新必要」に状態を変更する(ステップS103)。
【0061】
その後、認識辞書更新判定処理により、アプリケーション実行の有無と、ユーザ操作の有無に関する、携帯電話機1の状態通知を受けると(ステップS104)、更新部42は、認識辞書の更新が開始可能であることを判断し、「更新中」に状態を変更する(ステップS105)。さらに、更新部42は、更新処理が開始されることを制御部30へ通知する。
【0062】
次に、更新部42は、更新情報DB53から更新データを取得する(ステップS106)。更新部42は、更新データの取得が完了すると、認識辞書更新のループに入り、この更新データに従って順次、認識辞書データの更新を行う。
【0063】
更新部42は、認識辞書の更新が可能(状態が「更新中」)であるかどうかを判定し(ステップS107)、可能である(判定がYESの)場合には、取得した更新データに基づいて認識辞書データを1件更新する(ステップS108)。一方、更新が不可能(判定がNO)の場合には、認識辞書更新のループを抜け、更新部42は処理をステップS110に移す。
【0064】
認識辞書データ1件の更新(ステップS108)が完了すると、更新部42は、全ての更新が終了したか(未処理の更新データが存在しないか)どうかを判定し(ステップS109)、終了した(判定がYESの)場合は、認識辞書更新のループを抜け所定をステップS110に移す。一方、更新が終了していない(判定がNOの)場合は、処理をステップS107に戻して更新を継続する。
【0065】
認識辞書更新のループを抜けると、更新部42は、全ての更新が終了したか(未処理の更新データが存在しないか)どうかを判定する(ステップS110)。終了した(判定がYESの)場合は、更新部42は、状態を「更新済」に変更し、この状態を制御部30へ通知する(ステップS111)。一方、更新が終了していない(判定がNOの)場合は、更新部42は、状態を「更新必要」に変更して次の更新可能なタイミングまで処理実行を保留し、この状態を制御部30へ通知する(ステップS112)。
【0066】
図9は、本実施形態に係る認識辞書データの更新時に割り込み処理が発生した場合の流れを示すシーケンス図である。ここでは、図8のステップS107〜S109のループ中に割り込み処理が発生した場合を示している。
【0067】
なお、割り込み処理とは、予め許可されているアプリケーション以外のアプリケーションの起動や、ユーザからの操作入力の受け付け等である。これらの割り込み処理は、処理負荷の大きい認識辞書データの更新中に実行されると、携帯電話機1の処理能力が不足し動作が不安定になるおそれがあるため好ましくない。
【0068】
制御部30により割り込み処理の発生を検知すると(ステップS201)、認識辞書更新判定処理により、認識辞書データの更新中であるかどうかを判定する(ステップS202)。具体的には、制御部30は、状態が「更新中」であるかどうかを判定し、「更新中」(判定がYES)の場合は更新部42に更新不可通知を行う。一方、「更新中」以外(判定がNO)の場合は、制御部30は、割り込みが可能と判断して割り込み処理を実行させる(ステップS204)。
【0069】
認識辞書更新判定処理により更新不可通知がなされた場合には、更新部42は、状態を「更新中止」に変更する(ステップS203)。この場合、ステップS107の判定において更新不可(判定がNO)と判定される。
【0070】
認識辞書更新のループを抜けると、更新部42は、全ての更新が終了したか(未処理の更新データが存在しないか)どうかを判定する(ステップS110)。終了した(判定がYESの)場合は、更新部42は、状態を「更新済」に変更し、この状態を制御部30へ通知する(ステップS111)。一方、更新が終了していない(判定がNOの)場合は、更新部42は、状態を「更新必要」に変更して次の更新可能なタイミングまで処理実行を保留し、この状態を制御部30へ通知する(ステップS112)。
【0071】
制御部30は、更新部42から「更新済」または「更新必要」の状態が通知されたことにより、認識辞書の更新が中断されて割り込みが可能になったと判断し、割り込み処理を実行させる(ステップS204)。
【0072】
図10は、本実施形態に係る音声認識処理起動時に行う認識辞書データの更新の流れを示すシーケンス図である。ここでは、未処理の更新データが存在し、状態が「更新必要」のときに、音声認識処理が起動した場合を示している。
【0073】
制御部30により音声認識処理の起動が検知されると(ステップS301:YES)、更新部42は、認識辞書データの更新が必要かどうかを判定する(ステップS302)。すなわち、未処理の更新データが存在し、アドレス帳データと認識辞書データとが不一致である場合には、音声認識処理が正しく動作しないので、認識辞書データの更新が必要と判定する。
【0074】
認識辞書データの更新が必要な場合(ステップS302:YES)には、図8と同様に、ステップS105〜S109の認識辞書更新のループにおいて、更新データに基づいて認識辞書データを更新する。
認識辞書更新のループを抜けると、更新部42は、全ての更新が終了したか(未処理の更新データが存在しないか)どうかを判定する(ステップS110)。終了した(判定がYESの)場合は、更新部42は、状態を「更新済」に変更し、この状態を制御部30へ通知する(ステップS111)。一方、更新が終了していない(判定がNOの)場合は、更新部42は、状態を「更新必要」に変更して次の更新可能なタイミングまで処理実行を保留し、この状態を制御部30へ通知する(ステップS112)。
【0075】
そして、制御部30は、更新部42から状態を通知されたことに応じて、音声認識処理を実行する(ステップS303)。なお、制御部30は、通知された状態が「更新済」の場合には、音声認識処理を開始できるが、状態が「更新必要」の場合は、認識辞書が最新になっていない(アドレス帳と一致しない)ため、エラー出力して音声認識処理を終了することとしてよい。
【0076】
以上のように、本実施形態によれば、携帯電話機1は、ユーザを待たせることのないタイミングで認識辞書データの更新を行った。さらに、認識辞書データの更新中にイベントが発生した場合には、更新処理を中断した。このように、携帯電話機1は、読み仮名の変更に伴う認識辞書データの更新をユーザに意識させることなく行うことができる。
【0077】
また、未処理の更新データが残っている場合には、音声認識処理が実行される前に認識辞書データを更新するため、携帯電話機1は、アドレス帳データと認識辞書データとの不一致を回避することができる。
【0078】
以上、本実施形態においてはアドレス帳への更新が発生した場合を例に説明を行った。しかしながらアドレス帳以外でも、例えばナビゲーション用の目的地辞書、アプリケーションの実行指示用の読み仮名辞書、データフォルダやメールフォルダの呼び出し指示用の読み仮名辞書等、ユーザによって自由に内容変更可能なユーザ辞書であれば、本発明は適用可能である。
【0079】
本発明によれば、認識辞書がアドレス帳等のユーザ辞書とは別に構成されている場合において、特に有用である。具体的には、音声認識処理に関する機能の処理プログラムがユニット化されたケースも想定され、このケースにおいて、音声認識処理機能部が参照し易い形に認識辞書が構成され、この認識辞書が音声認識処理のユニット内に共にパッケージ化されて収められている場合が考えられる。この場合、ユーザ辞書とは別系統の管理下に認識辞書が置かれることになる。このように、音声認識処理がユニット化されていた場合には、ユーザ辞書が更新される都度、認識辞書にアクセスするために音声認識処理ユニットを起動しなければならなくなるが、本発明によれば音声認識処理ユニットの起動回数を必要最小限に済ませることができる。すなわち総合的に見て、携帯電子機器における省電力化にも繋がる。さらに、音声認識処理ユニット側への改変を必要としないため、このようなユニットを他の音声認識処理ユニットに置き換えることも容易にすることができ、携帯電子機器の開発上の自由度を向上させることにも繋がる。
【0080】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。
【符号の説明】
【0081】
1 携帯電話機
11 操作部
21 表示部
30 制御部
40 音声認識処理部
41 実行部
42 更新部
50 記憶部
51 アドレス帳DB(読み仮名記憶部)
52 認識辞書DB(認識辞書記憶部)
53 更新情報DB(更新データ記憶部)
60 通信部
70 音声部
【特許請求の範囲】
【請求項1】
所定の処理と編集可能な読み仮名とが対応付けられた読み仮名対応データを記憶する読み仮名記憶部と、
音声認識の結果と照合する読み仮名の選択肢を含む認識辞書を、前記読み仮名対応データと関連付けて記憶する認識辞書記憶部と、
前記音声認識結果と照合された読み仮名に対応する前記所定の処理を実行する実行部と、
前記読み仮名対応データと前記認識辞書との読み仮名の差分を示す更新データを記憶する更新データ記憶部と、
前記読み仮名対応データが更新された場合に、当該更新の内容を示す更新データを前記更新データ記憶部へ記憶し、当該更新後の所定のタイミングで、前記更新データに基づいて前記認識辞書を更新する更新部と、を備える携帯電子機器。
【請求項2】
前記更新部は、前記所定のタイミングとして、予め許可されているアプリケーション以外のアプリケーションが実行されていない場合に、前記更新データに基づいて前記認識辞書を更新することを特徴とする請求項1に記載の携帯電子機器。
【請求項3】
前記更新部は、前記所定のタイミングとして、所定時間操作入力がなかった場合に、前記更新データに基づいて前記認識辞書を更新することを特徴とする請求項1または請求項2に記載の携帯電子機器。
【請求項4】
前記読み仮名記憶部は、通信相手と当該通信相手の読み仮名とが対応付けられたアドレス帳を前記読み仮名対応データとして記憶し、
前記実行部は、前記所定の処理として、前記照合された読み仮名に対する通信相手を前記アドレス帳から選択することを特徴とする請求項1から請求項3のいずれか1項に記載の携帯電子機器。
【請求項5】
前記更新部は、前記認識辞書の更新中に所定のイベントが発生した場合に、当該更新を中断することを特徴とする請求項1から請求項4のいずれか1項に記載の携帯電子機器。
【請求項6】
前記更新部は、前記音声認識の実行が指示された際、前記認識辞書への更新が未実施の前記更新データが存在する場合に、当該音声認識の実行前に当該未実施の更新を行うことを特徴とする請求項1から請求項5のいずれか1項に記載の携帯電子機器。
【請求項7】
前記更新部は、前記更新データ記憶部に更新データを記憶すると共に、前記認識辞書を更新する必要があることを示すデータを記憶することを特徴とする請求項1から請求項6のいずれか1項に記載の携帯電子機器。
【請求項1】
所定の処理と編集可能な読み仮名とが対応付けられた読み仮名対応データを記憶する読み仮名記憶部と、
音声認識の結果と照合する読み仮名の選択肢を含む認識辞書を、前記読み仮名対応データと関連付けて記憶する認識辞書記憶部と、
前記音声認識結果と照合された読み仮名に対応する前記所定の処理を実行する実行部と、
前記読み仮名対応データと前記認識辞書との読み仮名の差分を示す更新データを記憶する更新データ記憶部と、
前記読み仮名対応データが更新された場合に、当該更新の内容を示す更新データを前記更新データ記憶部へ記憶し、当該更新後の所定のタイミングで、前記更新データに基づいて前記認識辞書を更新する更新部と、を備える携帯電子機器。
【請求項2】
前記更新部は、前記所定のタイミングとして、予め許可されているアプリケーション以外のアプリケーションが実行されていない場合に、前記更新データに基づいて前記認識辞書を更新することを特徴とする請求項1に記載の携帯電子機器。
【請求項3】
前記更新部は、前記所定のタイミングとして、所定時間操作入力がなかった場合に、前記更新データに基づいて前記認識辞書を更新することを特徴とする請求項1または請求項2に記載の携帯電子機器。
【請求項4】
前記読み仮名記憶部は、通信相手と当該通信相手の読み仮名とが対応付けられたアドレス帳を前記読み仮名対応データとして記憶し、
前記実行部は、前記所定の処理として、前記照合された読み仮名に対する通信相手を前記アドレス帳から選択することを特徴とする請求項1から請求項3のいずれか1項に記載の携帯電子機器。
【請求項5】
前記更新部は、前記認識辞書の更新中に所定のイベントが発生した場合に、当該更新を中断することを特徴とする請求項1から請求項4のいずれか1項に記載の携帯電子機器。
【請求項6】
前記更新部は、前記音声認識の実行が指示された際、前記認識辞書への更新が未実施の前記更新データが存在する場合に、当該音声認識の実行前に当該未実施の更新を行うことを特徴とする請求項1から請求項5のいずれか1項に記載の携帯電子機器。
【請求項7】
前記更新部は、前記更新データ記憶部に更新データを記憶すると共に、前記認識辞書を更新する必要があることを示すデータを記憶することを特徴とする請求項1から請求項6のいずれか1項に記載の携帯電子機器。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【公開番号】特開2011−33901(P2011−33901A)
【公開日】平成23年2月17日(2011.2.17)
【国際特許分類】
【出願番号】特願2009−181021(P2009−181021)
【出願日】平成21年8月3日(2009.8.3)
【出願人】(000006633)京セラ株式会社 (13,660)
【Fターム(参考)】
【公開日】平成23年2月17日(2011.2.17)
【国際特許分類】
【出願日】平成21年8月3日(2009.8.3)
【出願人】(000006633)京セラ株式会社 (13,660)
【Fターム(参考)】
[ Back to top ]