説明

発話装置、発話制御プログラムおよび発話制御方法

【課題】 数字をユーザが聞きやすい発話方法で発話すること。
【解決手段】 与えられる文字列に複数桁の数字が含まれる場合、複数桁の数字を1文字ずつ読み上げる第1の発話方法と、複数桁の数字を位取りして読み上げる第2の発話方法とのいずれかで発話する音声合成部55と、文字列の種別と第1の発話方法または第2の発話方法のいずれかを関連付けるユーザ定義テーブル81、関連付テーブル83、地域テーブル84および桁数テーブル87と、処理を実行し、データを出力する処理実行部53と、出力されるデータに基づいて文字列を生成し、第1の発話方法および第2の発話方法のうち出力されるデータの種別に関連付けられた発話方法で生成された文字列を音声合成部55に発話させる発話制御部51と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、発話装置、発話制御プログラムおよび発話制御方法に関し、特に音声合成機能を備えた発話装置、その発話装置で実行される発話制御プログラムおよび発話制御方法に関する。
【背景技術】
【0002】
近年、音声合成機能を備えたナビゲーション装置が登場している。音声合成機能は、テキストを音声に変換する機能であり、TTS(Text To Speach)と呼ばれる。一方、数字の文字列の発話方法には、1文字ずつ発話する発話方法と、位取りして発話する発話方法とがある。ナビゲーション装置に数字の文字列を発話させる場合、いずれの発話方法で発話させるかが問題である。例えば、電話番号は1文字ずつ発話発話させるのが好ましく、距離は位取りして発話させるのが好ましい。特開平09‐006379号公報には、数字を含む文字列が電話番号表記であることを示す表記の形態が存在するか否かを判定し、存在すると判定された場合は1文字ずつ発話する発話方法で発声すべく音声合成を行う音声規則合成装置が記載されている。
【0003】
しかしながら、従来の音声規則合成装置に置いては、電話番号のみが1文字ずつ発話されるため、ナビゲーション装置が発話する他の数字の文字列、例えば、住所の番地、路線番号などはすべて位取りして発話されてしまう。このため、運転者にとって聞きづらい音声が出力され、しまうといった問題がある。
【特許文献1】特開平09‐006379号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
この発明は上述した問題点を解決するためになされたもので、この発明の目的の1つは、数字をユーザが聞きやすい発話方法で発話することが可能な発話装置を提供することである。
【0005】
この発明の他の目的は、数字をユーザが聞きやすい発話方法で発話することが可能な発話制御プログラムを提供することである。
【0006】
この発明の他の目的は、数字をユーザが聞きやすい発話方法で発話することが可能な発話制御方法を提供することである。
【課題を解決するための手段】
【0007】
この発明は上述した目的を達成するためになされたもので、この発明のある局面によれば、発話装置は、与えられる文字列に複数桁の数字が含まれる場合、複数桁の数字を1文字ずつ読み上げる第1の発話方法と、複数桁の数字を位取りして読み上げる第2の発話方法とのいずれかで発話する発話手段と、文字列の種別と第1の発話方法または第2の発話方法のいずれかを関連付ける関連付手段と、所定の処理を実行し、データを出力する処理実行手段と、出力されるデータに基づいて文字列を生成し、第1の発話方法および第2の発話方法のうち出力されるデータの種別に関連付けられた発話方法で生成された文字列を発話手段に発話させる発話制御手段と、を備える。
【0008】
この局面に従えば、文字列の種別と第1の発話方法または第2の発話方法のいずれかが関連付けられ、所定の処理を実行することにより出力されるデータに基づいて文字列が生成され、出力されるデータの種別に関連付けられた発話方法で文字列が発話される。このため、データの種別に対応して予め定められた発話方法で発話されるので、数字をユーザが聞きやすい発話方法で発話することが可能な発話装置を提供することができる。
【0009】
好ましくは、音声を取得する音声取得手段と、取得された音声を認識し、文字列を出力する音声認識手段と、出力された文字列が数字を含む場合、第1の発話方法および第2の発話方法のいずれであるかを判別する発話方法判別手段と、を備え、処理実行手段は、出力される文字列に基づく処理を実行し、関連付手段は、処理実行手段が実行する処理に基づき定まる出力される文字列の種別と、発話方法判別手段により判別された結果とを関連付ける登録手段を含む。
【0010】
この局面に従えば、取得された音声が認識され、出力される文字列が数字を含む場合、第1の発話方法および第2の発話方法のいずれであるかが判別され、出力される文字列に基づく処理に基づき定まる文字列の種別と、判別された発話方法とが関連付けられる。このため、入力される音声に含まれる文字列の種別と同じ種別の文字列を、入力される音声の発話方法と同じ発話方法で発話することができる。
【0011】
この発明の他の局面によれば、発話方法は、与えられる文字列に複数桁の数字が含まれる場合、複数桁の数字を1文字ずつ読み上げる第1の発話方法と、複数桁の数字を位取りして読み上げる第2の発話方法とのいずれかで発話する発話手段と、文字列に含まれる数字の桁数に基づいて、第1の発話方法および第2の発話方法のいずれかを決定する決定手段と、第1の発話方法および第2の発話方法のうち決定された発話方法で発話手段に発話させる発話制御手段と、を備える。
【0012】
この局面によれば、文字列に複数桁の数字が含まれる場合、文字列に含まれる数字の桁数に基づいて、第1の発話方法および第2の発話方法のいずれかが決定され、決定された発話方法で発話される。このため、数字の桁数に応じて発話方法が決定されるので、数字をユーザが聞きやすい発話方法で発話することが可能な発話装置を提供することができる。
【0013】
この発明の他の局面によれば、発話制御プログラムは、複数桁の数字を1文字ずつ読み上げる第1の発話方法および複数桁の数字を位取りして読み上げる第2の発話方法のいずれかを文字列の種別と関連付けるステップと、所定の処理を実行し、データを出力するステップと、出力されるデータに基づいて文字列を生成するステップと、第1の発話方法および第2の発話方法のうち出力されるデータの種別に関連付けられた発話方法で生成された文字列を発話するステップと、をコンピュータに実行させる。
【0014】
この局面に従えば、数字をユーザが聞きやすい発話方法で発話することが可能な発話制御プログラムを提供することができる。
【0015】
この発明のさらに他の局面によれば、発話制御方法は、複数桁の数字を1文字ずつ読み上げる第1の発話方法および複数桁の数字を位取りして読み上げる第2の発話方法のいずれかを文字列の種別と関連付けるステップと、所定の処理を実行し、データを出力するステップと、出力されるデータに基づいて文字列を生成するステップと、第1の発話方法および第2の発話方法のうち出力されるデータの種別に関連付けられた発話方法で生成された文字列を発話するステップと、を含む。
【0016】
この局面に従えば、数字をユーザが聞きやすい発話方法で発話することが可能な発話制御方法を提供することができる。
【発明を実施するための最良の形態】
【0017】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部材には同一の符号を付してある。それらの名称および機能も同じである。しがたってそれらについての詳細な説明は繰り返さない。
【0018】
図1は、本発明の実施の形態の1つにおけるナビゲーション装置のハードウェア構成の一例を示すブロック図である。図1を参照して、ナビゲーション装置1は、ナビゲーション装置1の全体を制御するための中央演算装置(CPU)11と、GPS受信機13と、ジャイロ15と、車速センサ17と、メモリインターフェース(I/F)19と、シリアル通信I/F21と、表示制御部23と、液晶表示装置(LCD)25と、タッチスクリーン27と、マイクロホン29と、スピーカー31と、CPU11が実行するプログラム等を記憶するROM(Read Only Memory)33と、CPU11の作業領域として用いられるRAM(Random Access Memory)35と、データを不揮発的に記憶するEEPROM(Electrically Erasable and Programmable ROM)37と、操作キー39と、を含む。
【0019】
GPS受信機13は、全地球測位システム(GPS)におけるGPS衛星から送信される電波を受信し、現在の地図上の位置を計測する。そして、計測した位置をCPU11に出力する。
【0020】
ジャイロ15は、ナビゲーション装置1が搭載される車両の方位を検出し、検出した方位をCPU11に出力する。車速センサ17は、ナビゲーション装置が搭載される車両の速度を検出し、検出した速度をCPU11に出力する。なお車速センサ17は、車両に搭載されてもよく、この場合には、CPU11は、車両に搭載された車速センサ17から車両の速度が入力される。
【0021】
表示制御部23は、LCD25を制御してLCD25に画像を表示させる。LCD25は、TFT(Thin Film Transistor)型であり、表示制御部23に制御され、表示制御部23より出力される画像を表示する。なお、LCD25に代えて、有機EL(ElectroLuminescence)ディスプレイを用いてもよい。
【0022】
タッチスクリーン27は、透明な部材からなり、LCD25の表示面上に設けられる。タッチスクリーン27は、ユーザが指等で指示したLCD25の表示面における位置を検出し、CPU11に出力する。CPU11は、LCD25に各種ボタンを表示することにより、タッチスクリーンにより検出される指示位置と組み合わせて、各種の操作を受け付ける。CPU11がLCD25に表示する操作画面は、ナビゲーション装置1を操作するための操作画面を含む。操作キー39は、ボタンスイッチであり、主電源のオンとオフとを切換える電源キーを含む。
【0023】
メモリI/F19には、着脱可能なメモリカード19Aが装着される。CPU11は、メモリカード19Aに記憶された地図データを読み出し、GPS受信機13から入力される現在位置とジャイロ15により検出された方位とを示す印を地図上に記した画像をLCD25に表示する。また、CPU11は、車速センサ17およびジャイロ15からそれぞれ入力される車速と方位とに基づいて、車両が移動するに伴って地図上に示す印の位置を移動させる画像をLCD25に表示させる。
【0024】
なお、ここではCPU11が実行するプログラムをROM33に記憶しておく例を説明するが、プログラムをメモリカード19Aに記憶しておき、メモリカード19Aからプログラムを読み出して、CPU11で実行するようにしてもよい。プログラムを記憶する記録媒体としては、メモリカード19Aに限らず、フレキシブルディスク、カセットテープ、光ディスク(CD−ROM(Compact Disc
−ROM)/MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、ICカード(メモリカードを含む)、光カード、マスクROM、EPROM、EEPROMなどの半導体メモリ等でもよい。
【0025】
また、シリアル通信I/F21に接続されるコンピュータからからプログラムを読み出して、CPU11で実行するようにしてもよい。ここでいうプログラムは、CPU11により直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
【0026】
図2は、ナビゲーション装置が備えるCPU11の機能の一例を示す機能ブロック図である。図2を参照してCPU11は、処理を実行する処理実行部53と、音声を合成する音声合成部55と、音声合成部55を制御する発話制御部51と、合成された音声を出力する音声出力部57と、現在位置を取得する位置取得部59と、音声を取得する音声取得部71と、取得された音声を認識し、テキストを出力する音声認識部73と、出力されるテキストに基づいて発話方法を判別する発話方法判別部75と、判別された発話方法登録する登録部77と、を備える。
【0027】
処理実行部53は、ナビゲーション処理を実行する。具体的には、運転者が車両を運転するための道案内を支援する処理、EEPROM37に記憶された地図情報を音声で読み上げる処理などである。道案内を支援する処理は、例えば、現在位置から目的地までの経路を探索し、探索した経路を地図で表示する処理、目的地まで到達する間に進行方向等を示す処理を含む。
【0028】
処理実行部53は、処理を実行した結果を出力するが、結果は、データの実態とそのデータの種別との組からなる。種別は、住所、電話番号、路線情報、距離を含む。例えば、処理実行部53がEEPROM37に記憶されている施設情報を出力する場合、その施設の住所と種別「住所」との組と、その施設の電話番号と種別「電話番号」との組とを出力する。また、現在位置を出力する場合、種別「住所」と現在位置の住所との組を出力する。さらに、探索した経路を出力する場合、種別「路線情報」と経路に含まれる路線を示す路線名称との組を出力する。
【0029】
位置取得部59は、GPS受信機13が衛星から受信する信号に基づいて、現在位置を取得する。位置取得部59は、取得した現在位置を発話制御部51に出力する。現在位置は、たとえば緯度と経度とを含む。なお、位置取得部59は、GPS受信機13が衛星から受信する信号から緯度と経度とを算出してもよいが、インターネット等のネットワークに接続するための無線通信回路を備えるようにし、GPS受信機13が出力する信号を、インターネットに接続されたサーバに送信し、サーバが返信する緯度と経度とを受信するようにしてもよい。
【0030】
発話制御部51は、文字列生成部61と発話方法決定部63とを含む。文字列生成部61は、処理実行部53から入力されるデータに基づいて、文字列を生成し、生成した文字列を音声合成部55に出力する。たとえば、処理実行部53から現在位置を示す住所と種別「住所」との組とが入力される場合、「現在位置はOO町XX番です。」の文字列を生成する。また、処理実行部53から施設の電話番号と種別「電話番号」との組が入力される場合、「電話番号は、XX−XXXX−XXXXです。」の文字列を生成する。
【0031】
発話方法決定部63は、処理実行部53から入力される種別に基づいて、発話方法を決定し、決定した発話方法を音声合成部55に出力する。具体的には、発話方法決定部63は、EEPROM37に記憶されている参照テーブルを参照して、処理実行部53から入力される種別に対応して参照テーブルにより定義されている発話方法を決定する。参照テーブルは、ユーザ定義テーブル81、関連付テーブル83、地域テーブル85および桁数テーブル87を含む。ここで、ユーザ定義テーブル81、関連付テーブル83、地域テーブル85、桁数テーブル87について説明する。
【0032】
図3は、参照テーブルの一例を示す図である。図3(A)は、ユーザ定義テーブルの一例を示し、図3(B)は、関連付テーブの一例を示し、図3(C)は、地域テーブルの一例を示し、図3(D)は桁数テーブルの一例を示す。図3(A)を参照して、ユーザ定義テーブル81は、ナビゲーション装置1のユーザが、予め設定したユーザ定義レコードを含む。ユーザ定義レコードは、種別の項目と、発話方法の項目とを含む。例えば、種別「郵便番号」に対して発話方法「1」が定義され、種別「住所」に対して発話方法「2」が定義される。発話方法「1」は、数字を1文字ずつ読み上げる発話方法を示し、発話方法「2」は、数字を位取りして読み上げる発話方法を示す。図3(A)に示すユーザ定義テーブルにおいては、種別「郵便番号」に対して数字を1文字ずつ読み上げる発話方法が定義され、種別「住所」に対して数字を位取りして読み上げる発話方法が定義される。
【0033】
図3(B)を参照して、関連付テーブルは、種別と発話方法とを関連づける関連付レコードを含む。関連付レコードは、種別の項目と発話方法の項目とを含む。関連付レコードは、ユーザがナビゲーション装置1にデータを音声で入力する際に生成され、関連付テーブルに追加される。これについては、後述する。例えば、種別「電話番号」に対して発話方法「1」が関連付けられ、種別「距離」に対して発話方法「2」が関連付けられる。また、関連付レコードは、発話方法が地域制限される文字列の種別に対して「地域制限」を関連付ける。具体的には、種別「路線情報」に対して発話方法「地域制限」を関連付ける。このため、種別「路線情報」の発話方法に関し、地域による発話方法の差を反映することができる。
【0034】
図3(C)を参照して、地域テーブル85は、地域制限される種別に関して地域と発話方法等関連づける地域レコードを含む。ここでは、図3(B)に示した関連付テーブル83において種別「路線情報」が地域制限されることが定義されるので、地域テーブル85は、路線情報を発話する際に地域で発話される発話方法を定義する。地域レコードは、地域の項目と発話方法の項目とを含む。例えば、地域「A」に対して発話方法「1」が関連付けられ、地域「B」に対して発話方法「2」が関連付けられ、地域「その他」に対して何も関連付けられない。
【0035】
図3(D)を参照して、桁数テーブル87は、桁数と発話方法とを関連付ける桁数レコードを含む。桁数レコードは、桁数の項目と発話方法の項目とを含む。例えば、桁数が「3以上」対して発話方法「1」が関連付けられ、桁数が「3未満」に対して発話方法「2」が関連付けられる。このため、桁数が3以上の数字に対しては1文字ずつ読み上げる発話方法が関連付けられ、桁数が3未満の数字に対しては位取りして読み上げる発話方法が関連付けられる。
【0036】
図2に戻って、発話方法決定部63は、処理実行部53から入力される種別に対応する発話方法が、ユーザ定義テーブルで定義されているか否かを判断する。ユーザ定義テーブルで定義されていれば、その発話方法に決定する。発話方法決定部63は、処理実行部53から入力される種別に対応する発話方法が、ユーザ定義テーブル81で定義されていなければ、関連付テーブル83で定義されているか否かを判断する。処理実行部53から入力される種別が関連付テーブル83で定義されていれば、その発話方法に決定する。発話方法決定部63は、処理実行部53から入力される種別が「路線情報」の場合、地域テーブル85を参照する。この場合、位置取得部59から入力される現在位置に基づいて、現在位置が含まれる地域を決定する。
【0037】
そして、決定された地域に対応して地域テーブルで関連付けられている発話方法に決定する。地域テーブル85において、決定された地域を含む地域レコードが存在しない場合は、発話方法を決定しない。発話方法決定部63は、地域テーブル85を参照して発話方法を決定しない場合、桁数テーブル87を参照する。文字列で表される数字の桁数に対応して桁数テーブル87において関連付けられている発話方法に決定する。桁数が3以上であれば数字を1文字ずつ読み上げる発話方法に決定し、数字の桁数が3未満であれば数字を位取りして読み上げる発話方法に決定する。発話方法決定部63は、決定した発話方法を音声合成部55に出力する。
【0038】
音声合成部の15は、文字列生成部61から入力される文字列を音声合成し、音声データを音声出力部57に出力する。音声合成部55は、文字列生成部61から入力される文字列が数字を含む場合、発話方法決定部63から入力される発話方法に従って音声を合成する。
【0039】
音声出力部57は、音声合成部55から入力される音声データをスピーカー31に出力する。これにより、スピーカー31から音声合成部55により合成された音声データが出力される。
【0040】
音声取得部71は、マイクロホン29と接続され、マイクロホン29が集音し、出力する音声データを取得する。音声取得部71は、取得した音声データを、音声認識部73に出力する。音声認識部73は、入力される音声データを解析し、音声データを文字列に変換する。音声認識部73は、音声データを返還した文字列を処理実行部53および発話方法判別部75に出力する。処理実行部53においては、入力される文字列を用いて処理を実行する。
【0041】
例えば、文字列がコマンドを示す場合、処理実行部53はコマンドに従って処理を実行する。また、処理実行部53がデータを登録する処理を実行する場合、入力される文字列を登録先のデータに追加して記憶する。登録先は、ユーザがコマンドをマイクロホン29に音声で入力することにより指定するようにしてもよいし、操作キー39で指定するようにしてもよい。処理実行部53は、実行する処理に基づき定まる種別を登録部77に出力する。例えば、処理実行部53が目的地を設定する処理を実行する場合、目的地として入力される文字列は住所である。したがって、種別として「住所」を出力する。また、目的地点が路線情報で表される場合、種別として「路線情報」が出力される。さらに、処理実行部53が施設情報を登録する処理を実行する場合、施設名称と住所と電話番号とが入力される場合がある。この場合、処理実行部53は、住所が入力される場合に種別「住所」を出力し、電話番号が入力される場合に種別「電話番号」を出力する。
【0042】
登録部77は、処理実行部53から入力される種別と、発話方法判別部75から入力される発話方法とを関連付けた関連付レコードを生成し、関連付テーブル83に追加して記憶する。これにより、ナビゲーション装置1のユーザが、ナビゲーション装置1に対して音声コマンドを入力したり、データを入力したりする操作をすることによって、新たな関連付レコードが生成され、関連付テーブル83に記憶される。このため、ユーザは、ユーザ定義テーブル81を新たに生成することなく、関連付テーブル83に関連付レコードが記憶されるので、例えば、操作キー39を操作してユーザ定義テーブル81を生成する必要がない。
【0043】
図4は、発話制御処理の流れの一例を示すフローチャートである。発話制御処理は、CPU11が発話制御プログラムを実行することにより、CPU11により実行される処理である。図4を参照して、CPU11は、音声出力するためのデータが発生したか否かを判断する(ステップS01)。データが発生するまで待機状態となり(ステップS01でNO)、データが発生したならば処理をステップS02に進める。ステップS02においては、発生したデータに基づいて音声として出力するための文字列を生成する。そして、生成された文字列が数字を含むか否かを判断する(ステップS03)。文字列が数字を含むならば処理をステップS04に進め、そうでなければ処理をステップS17に進める。
【0044】
ステップS04においては、データの種別を取得する。ステップS01で発生されたデータと共にそのデータを生成した処理に基づいて種別を取得する。具体的には、住所を出力する処理であれば、種別「住所」を取得し、電話番号を出力する処理であれば種別「電話番号」を取得し、路線情報を出力する処理であれば種別「路線情報」を取得し、距離を出力する処理であれば種別「距離」を取得する。
【0045】
次のステップS05においては、EEPROM37に記憶されているユーザ定義テーブル81を参照する。ユーザ定義テーブル81に含まれるユーザ定義レコードのうちに種別の項目にステップS04において取得された種別が設定されているユーザ定義レコードが存在するか否かを判断する(ステップS06)。そのようなユーザ定義レコードが存在すれば処理をステップS07に進めるが、そうでなければ処理をステップS08に進める。ステップS07においては、ステップS04において取得された種別を含むユーザ定義レコードにおいて、種別に関連付けられている発話方法を取得し、取得した発話方法を文字列を発話するための発話方法に設定し、処理をステップS17に進める。ステップS17においては、文字列を設定された発話方法で発音する。ユーザにより定義された種別に対応する数字が、ユーザにより定義された発話方法で発話されるので、ユーザが聞きやすい発話方法で数字を発話することができる。
【0046】
一方、ステップS08においては、EEPROM37に記憶されている関連付テーブル83を参照する。具体的には、関連付テーブル83に含まれる複数の関連付レコードのうちに、ステップS04において取得された種別が種別の項目に設定されている関連付レコードを抽出する。そして、地域制限されているか否かを判断する(ステップS09)。抽出された関連付レコードの発話方法の項目に「地域制限」が設定されているか否かを判断する。「地域制限」が設定されていれば処理をステップS11に進め、そうでなければ処理をステップS10に進める。
【0047】
ステップS10においては、ステップS08において抽出された関連付レコードの発話方法の項目に設定されている発話方法を文字列を発話するための発話方法に設定し、処理をステップS17に進める。ステップS17においては、設定された発話方法で文字列が発話される。関連付テーブル83に含まれる関連付レコードは、後述するように、ユーザがデータをナビゲーション装置1に音声入力する際に発話された発話方法に基づき生成されるため、ユーザが文字列を発話する際に用いた発話方法と同じ発話方法で文字列を発話することができる。このため、ユーザが聞きやすい発話方法で発話することができる。
【0048】
一方、ステップS11においては、現在位置を取得し、現在位置が属する地域を取得する。そして、EEPROM37に記憶されている地域テーブル85を参照する(ステップS12)。そして、ステップS11において取得された地域に対して発話方法が関連付けられているか否かを判断する(ステップS13)。具体的には、地域テーブル85に含まれる地域レコードのうちにステップS11において取得された地域を含む地域レコードが存在するか否かを判断する。そのような地域レコードが存在すれば発話方法が関連付けられていると判断し、処理をステップS14に進めるが、そうでなければ処理をステップS15に進める。ステップS14においては、地域に関連付けられた発話方法を文字列を発話するための発話方法に設定し、処理をステップS17に進める。ステップS17においては、設定された発話方法で文字列が発話される。地域テーブル85に含まれる地域レコードは、地域ごとに発話方法を定義するため、現在位置が属する地域に応じた数字の読み方で発話される。これにより、ユーザは地域による独特の読み方を知ることができるようになる。
【0049】
ステップS15においては、EEPROM37に記憶されている桁数テーブル87を参照する。桁数テーブル87に含まれる桁数レコードのうち桁数の項目が、ステップS02において生成された文字列に含まれる数字の桁数が設定されている桁数レコードを抽出し、抽出した桁数レコードの発話方法の項目に設定されている発話方法を取得する。そして、桁数に関連付けられた発話方法を文字列を発話するための発話方法に設定し(ステップS16)、処理をステップS17に進める。ステップS17においては、設定された発話方法で文字列が発話される。桁数テーブル87に含まれる桁数レコードは、3桁以上の数字は1文字ずつ読み上げる発話方法に関連付けられ、3桁未満の数字は位取りして読み上げる発話方法に関連付けられる。このため、3桁以上の数字は1文字ずつ読み上げられ、3桁未満の数字は位取りして読み上げられる。このため、ユーザが聞きやすい発話方法で発話することができる。
【0050】
ステップS17において発話が終了すると、処理をステップS18に進める。ステップS18においては、終了指示を受け付けたか否かを判断する。終了指示を受け付けたならば発話制御処理を終了するが、そうでなければ処理をステップS01に戻す。
【0051】
図5は、関連付テーブル更新処理の流れの一例を示すフローチャートである。関連付テーブル更新処理は、CPU11が発話制御プログラムを実行することにより、CPU11により実行される処理である。図5を参照して、CPU11は、音声データが入力されたか否かを判断する。音声データが入力されるまで待機状態となり(ステップS21でNO)、音声データが入力されるとを処理をステップS22に進める。
【0052】
ステップS22においては、入力された音声データを音声認識し、テキストデータとしての文字列に変換する。そして、次のステップS23において、発話方法を判別する。例えば、「イチゼロゼロ」と発音する音声データ、または「ヒャク」と発音する音声データのいずれが入力されても文字列「100」に変換される。一方、「イチゼロゼロ」と発音する音声データからは数字を1文字ずつ発話する発話方法が判別され、「ヒャク」と発音する音声データからは位取りして発話する発話方法が判別される。
【0053】
ステップS24においては、ステップS22において音声認識された文字列に基づいて実行される処理に基づいて、その文字列に対応する種別を取得する。例えば、文字列を「住所」として記憶する処理が実行される場合は種別「住所」」を取得し、文字列を電話番号として記憶する処理が実行される場合は種別「電話番号」を取得し、文字列を路線情報として記憶する処理が実行される場合は種別「路線情報」が取得され、文字列を2点間の距離として記憶する処理が実行される場合は種別「距離」が取得される。
【0054】
ステップS25においては、ステップS24において取得された種別とステップS23において判別された発話方法と関連付けた関連付レコードを生成する。そして、生成された関連付レコードをEEPROM37に記憶されている関連付テーブル83に追加して記憶する(ステップS26)。
【0055】
ユーザがデータを登録する際に音声入力する場合、ユーザが文字列を発話する際に用いた発話方法が音声入力された文字列の種別と関連付けて記憶されるので、ユーザが発話した文字列の種別と同じ種別の文字列をユーザが用いたのと同じ発話方法で発話することができる。このため、ユーザの聴きやすい発話方法で発話することができる。
【0056】
以上説明したように本実施の形態におけるナビゲーション装置1は、ユーザ定義テーブル81、関連付テーブル83、地域テーブル85をEEPROM37に予め記憶しており、処理実行部53が処理を実行することにより出力するデータと種別との組に基づいて音声出力するための文字列が生成され、ユーザ定義テーブル81、関連付テーブル83または地域テーブル85によりデータの種別に関連付けられた発話方法で文字列が発話される。このため、データの種別に対応して予め定められた発話方法で発話されるので、数字をユーザが聞きやすい発話方法で発話することができる。
【0057】
また、ユーザがデータを登録などする際に音声でデータを入力すると、その音声が認識され、音声の発話方法が判別され、認識された文字列に基づき実行される処理に基づき定まる種別と、判別された発話方法とを関連付けた関連付レコードを生成し、関連付テーブル83に追加して記憶される。このため、ユーザが発話した文字列の種別と同じ種別の文字列をユーザが用いたのと同じ発話方法で発話することができる。
【0058】
なお、上述した実施の形態においては、発話装置の一例としてナビゲーション装置1を例に説明したが、音声合成機能を備えた装置であればよく、例えば、携帯電話機、PDA(Personal Digital Assistants)等の携帯通信端末パーソナルコンピュータ等であってもよい。
【0059】
また、図4または図5に示した処理をナビゲーション装置1に実行させるための発話制御方法、およびその発話制御方法をコンピュータに実行させるための発話制御プログラムとして発明を捉えることができるのは言うまでもない。
【0060】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【0061】
<付記>
(1) 前記処理実行手段は、ナビゲーション処理を実行する、請求項1に記載の発話装置。
【図面の簡単な説明】
【0062】
【図1】本発明の実施の形態の1つにおけるナビゲーション装置のハードウェア構成の一例を示すブロック図である。
【図2】ナビゲーション装置が備えるCPUの機能の一例を示す機能ブロック図である。
【図3】参照テーブルの一例を示す図である。
【図4】発話制御処理の流れの一例を示すフローチャートである。
【図5】関連付テーブル更新処理の流れの一例を示すフローチャートである。
【符号の説明】
【0063】
1 ナビゲーション装置、11 CPU、13 GPS受信機、15 ジャイロ、17 車速センサ、19 メモリI/F、19A メモリカード、21 シリアル通信I/F、23 表示制御部、25 LCD、27 タッチスクリーン、29 マイクロホン、31 スピーカー、33 ROM、35 RAM、37 EEPROM、39 操作キー、51 発話制御部、53 処理実行部、55 音声合成部、57 音声出力部、59 位置取得部、61 文字列生成部、63 発話方法決定部、71 音声取得部、73 音声認識部、75 発話方法判別部、77 登録部、81 ユーザ定義テーブル、83 関連付テーブル、85 地域テーブル、87 桁数テーブル。

【特許請求の範囲】
【請求項1】
与えられる文字列に複数桁の数字が含まれる場合、前記複数桁の数字を1文字ずつ読み上げる第1の発話方法と、前記複数桁の数字を位取りして読み上げる第2の発話方法とのいずれかで発話する発話手段と、
文字列の種別と前記第1の発話方法または前記第2の発話方法のいずれかを関連付ける関連付手段と、
所定の処理を実行し、データを出力する処理実行手段と、
前記出力されるデータに基づいて文字列を生成し、前記第1の発話方法および前記第2の発話方法のうち前記出力されるデータの種別に関連付けられた発話方法で前記生成された文字列を前記発話手段に発話させる発話制御手段と、を備えた発話装置。
【請求項2】
音声を取得する音声取得手段と、
前記取得された音声を認識し、文字列を出力する音声認識手段と、
前記出力された文字列が数字を含む場合、前記第1の発話方法および前記第2の発話方法のいずれであるかを判別する発話方法判別手段と、を備え、
前記処理実行手段は、前記出力される文字列に基づく処理を実行し、
前記関連付手段は、前記処理実行手段が実行する処理に基づき定まる前記文字列の種別と、前記発話方法判別手段により判別された結果とを関連付ける登録手段を含む、請求項1に記載の発話装置。
【請求項3】
与えられる文字列に複数桁の数字が含まれる場合、前記複数桁の数字を1文字ずつ読み上げる第1の発話方法と、前記複数桁の数字を位取りして読み上げる第2の発話方法とのいずれかで発話する発話手段と、
文字列に含まれる数字の桁数に基づいて、前記第1の発話方法および前記第2の発話方法のいずれかを決定する決定手段と、
前記第1の発話方法および前記第2の発話方法のうち前記決定された発話方法で前記発話手段に発話させる発話制御手段と、を備えた発話装置。
【請求項4】
複数桁の数字を1文字ずつ読み上げる第1の発話方法および複数桁の数字を位取りして読み上げる第2の発話方法のいずれかを文字列の種別と関連付けるステップと、
所定の処理を実行し、データを出力するステップと、
前記出力されるデータに基づいて文字列を生成するステップと、
前記第1の発話方法および前記第2の発話方法のうち前記出力されるデータの種別に関連付けられた発話方法で前記生成された文字列を発話するステップと、をコンピュータに実行させる発話制御プログラム。
【請求項5】
複数桁の数字を1文字ずつ読み上げる第1の発話方法および複数桁の数字を位取りして読み上げる第2の発話方法のいずれかを文字列の種別と関連付けるステップと、
所定の処理を実行し、データを出力するステップと、
前記出力されるデータに基づいて文字列を生成するステップと、
前記第1の発話方法および前記第2の発話方法のうち前記出力されるデータの種別に関連付けられた発話方法で前記生成された文字列を発話するステップと、を含む発話制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2009−244639(P2009−244639A)
【公開日】平成21年10月22日(2009.10.22)
【国際特許分類】
【出願番号】特願2008−91803(P2008−91803)
【出願日】平成20年3月31日(2008.3.31)
【出願人】(000001889)三洋電機株式会社 (18,308)
【Fターム(参考)】