(58)【調査した分野】(Int.Cl.,DB名)
前記文の識別情報に対応づけて前記文を音声で出力するための条件が登録された案内条件情報を記憶する記憶手段から、前記案内文章決定手段が決定した前記案内文章に含まれる前記文の識別情報に対応づけられた前記条件を前記読出手段が読み出し、
前記案内文章決定手段は前記文が前記条件を満たすか否かを判定し、満たすと判定された前記文のみを前記音声出力部から出力すると決定する請求項4に記載のプログラム。
【発明を実施するための形態】
【0012】
以下、本発明を実施するための形態を、図面を参照しながら説明する。
図1は、本実施形態のナビゲーションシステム100の概略的な構成を説明する図の一例である。ナビゲーションシステム100は種々の言語に対応した音声管理ファイル101を有している。そして、この音声管理ファイル101には各言語のフレーズ組立定義テーブル102、語順テーブル104及び音声データ301が含まれていることが特徴の1つとなっている。
(1)まず、ユーザは案内音声に用いられる言語(日本語、英語など)を選択することができる。
(2)ナビゲーションシステム100に対応した端末を携帯する歩行者や端末を搭載した車両が案内ポイントに到達すると、案内パターンが決定される。例えば、「ルート案内開始」「ナビ終了」「リルート」などの案内パターンが予め定められている。案内パターンが決定されると、フレーズ組立定義テーブル102に登録されているフレーズコードが決定される。フレーズコードはフレーズを特定する番号などである。フレーズ組立定義テーブル102にはフレーズコードと1つ以上の語順IDが対応付けられている。したがって、フレーズコードにより、例えばフレーズが「語順1と語順2」により構成されることが特定される。
(3)語順テーブル104には語順IDと音声IDが対応付けられている。したがって、語順が決定されると、語順テーブル104に登録されている音声ID(
図1の音声1〜4)が決定される。音声IDは音声データを特定する番号などである。
(4)ナビゲーションシステム100は、特定された音声1、2,3、4を音声データ301から取得して語順にしたがって読み上げる。
【0013】
上記の概略について補足する。まず、言語が異なっても案内ポイントは言語に関わらず同じである。したがって、ナビゲーションシステム100では、同じ案内ポイントに同じフレーズコードを割り当てることができる。
【0014】
また、ある案内ポイントにおけるフレーズは言語が異なってもある程度のパターン化が可能である。例えば、案内パターンが「1.ルート案内開始」の場合、日本語では「2.案内を開始します。」「交通規則にしたがって運転してください。」であり、英語では「a. Now starting navigation.」「b. Please obey all traffic regulations while driving.」である。したがって、1とa、2とbにそれぞれ同じ語順IDを付与しフレーズコードと関連づけておけば、言語が異なってもフレーズコードと語順IDの対応を同じにすることができる。
【0015】
一方、言語が異なると文法などが異なるため、細部の案内音声が異なる場合がある。そこで、言語が異なってもフレーズコードは同じまま、語順IDに対応付けられた音声IDで調整する。すなわち、フレーズ組立定義テーブル102に音声データが直接登録されるのでなく、語順IDが登録されていることで、細部の案内音声の相違を吸収できる。
【0016】
この結果、言語が異なっても発話フレーズを決定する際のロジック(案内ポイントの判定とフレーズコードの対応付け)をほぼ共通にすることができシステムの肥大化を抑制できる。また、開発段階では、細部の異なる案内内容だけ調整すればよいためコスト増も抑制できる。
【0017】
<システム構成例>
図2(a)は、本実施例にかかるナビゲーションシステム100のシステム構成図の一例である。ナビゲーションシステム100は、ネットワーク34を介して通信可能に接続されたサーバ31及び端末35を有している。ネットワーク34は、例えば、LAN、広域範囲の複数のLANが接続されたWAN、及び、インターネットなどである。ネットワーク34は有線のみ又は無線のみで構築されていてもよいし、有線と無線とで構築されていてもよい。また、ネットワーク34にはアクセスポイントなどの基地局32が接続されており、端末35は無線で基地局32にアクセスすることでネットワーク34に接続する。端末35は携帯電話網や無線LANなどの主に無線で構築される通信網を介して基地局32と通信する。
【0018】
サーバ31は、端末35に対し、ナビゲーションに関するサービス・機能を提供する。例えば、端末35から現在位置の位置情報と目的地を取得して経路を検索し、後述する経路情報と電子地図やメニューなどの各種アイコンを含むナビ画面を端末35に送信する。
【0019】
ネットワーク34には符号35にて示す端末1〜Nが接続され得る。端末1〜Nを区別せずに説明する場合は端末35と称する。例えば、端末1を自分であるユーザが使用し、端末2〜Nを相手が使用する。
【0020】
図2(b)に示す用に、端末35は、汎用的な情報処理端末351である場合とナビゲーション専用端末352の場合がある。ナビゲーション専用端末352はPND(Portable Navigation Device)とも呼ばれる。なお、本実施例の端末35は、情報処理端末351又はナビゲーション専用端末352以外でもよい。
【0021】
情報処理端末351としての端末35は、例えば、スマートフォン、タブレット端末、携帯電話、PDA(Personal Digital Assistant)、ノートPC、及び、ウェアラブルPC(例えば、腕時計型、サングラス型など)などである。情報処理端末351はこれらに限定されるものではなく、ナビ画面の表示や経路案内に適切な装置であればよい。これらの装置は、普段は情報処理端末として利用されるが、ナビゲーションのためのアプリケーションソフトウェアを実行すると、ナビゲーション専用端末352と同様、経路検索及び経路案内等を行う。
【0022】
また、端末35は、汎用的な情報処理端末351とナビゲーション専用端末352のどちらの場合でも、車載された状態と携帯可能な状態の切り替えが可能であってもよい。
【0023】
端末35の動作態様には大きく2つある。1つは、端末35が例えば専用のアプリケーションソフトウェアやWebブラウザを起動してサーバ31と通信し、経路案内に関する情報を受信して表示するクライアント型の動作態様である。もう1つは、原則的に地図の描画などの処理を端末内で完結し、地図データの取得など必要な場合にのみサーバ31と通信するアプリケーション型の動作端末である。本実施例では、クライアント型を例に説明するが、アプリケーション型に対しても本実施例のナビゲーションシステム100を好適に適用できる。
【0024】
なお、ユーザは2台の端末35を用いて、ナビゲーションシステム100を利用してもよい。例えば、ノートPCなどの端末35でドライブポータルサイトにアクセスして、出発地から目的地までの経路を事前に検索しておく。ドライブポータルサイトは、運転者(ドライバ)のための情報サービスサイトである。検索された経路はドライブポータルサイトに登録しておき、任意のタイミングでスマートフォンなどの端末35から登録されている経路情報をダウンロードする。このような使い方により、ユーザは予め経路を事前に検索しておくことができ、出発前の端末35の操作を少なくできる。
【0025】
<ハードウェア構成>
図3は、サーバ31及び端末35のハードウェア構成図の一例である。サーバ31及び端末35は情報処理装置の機能を有している。
図3(a)に示すように、サーバ31は、ハードウェア構成として、CPU(Central Processing Unit)211、ROM(Read Only Memory)215、RAM(Random Access Memory)216、補助記憶装置217、入力装置212、表示装置213、及び、通信装置214を有する。
【0026】
また、
図3(b)に示すように、端末35は、ハードウェア構成として、CPU211、ROM215、RAM216、補助記憶装置217、入力装置212、表示装置213、通信装置214、音声入出力装置218、及び、GPS受信装置219を有する。
【0027】
CPU211は、各種プログラムの実行や演算処理を行う。ROM215には、起動時に必要なプログラムなどが記憶されている。RAM216は、CPU211での処理を一時的に記憶したり、データを記憶したりする作業エリアである。補助記憶装置217は、各種データ及びプログラム2101、2102を格納する不揮発性のメモリである。入力装置212は、例えばキーボードやマウスである。表示装置213は、ディスプレイやプロジェクタ、HUD(Head Up Display)であり、例えば、ナビ画面等が表示される。通信装置214は、基地局32を介してネットワーク34に接続しサーバ31等との通信を行う。音声入出力装置218は、音声の入出力を行う装置であり、例えば、経路案内の音声を読み上げる際に使用される。GPS受信装置219は、GPS衛星の電波を受信して現在位置を算出するGNSS(Global Navigation Satellite System)の一例である。
【0028】
なお、端末35の入力装置212は、キーボードやマウスに代え又はこれらに加えて、画面に対する接触位置(タッチ座標)を検知可能なタッチパネルにより実現されうる。また、入力装置212は、音声入出力装置218が入力させた音声を認識する音声認識装置としての機能を有していてもよい。
【0029】
サーバ31又は端末35の補助記憶装置217に記憶されているプログラム2101,2102は、USBメモリなどの記憶媒体に記憶された状態で配布される。あるいは、プログラムを配布する配信サーバから端末35がダウンロードすることで配布される。端末35のプログラム2102は、経路案内に専用のアプリケーションソフトウェアでもよいし、ブラウザソフトウェアでもよい。また、実行形式で配布されてもインストール用の形式で配布されてもよい。
【0030】
なお、サーバ31にはクラウドコンピューティングが適用されていることが好ましい。クラウドコンピューティングの物理的な構成に厳密な定義はないが、情報処理装置を構成するCPU、RAM、ストレージなどのリソースが負荷に応じて動的に接続・切断されることで情報処理装置の構成や設置場所が柔軟に変更されてよい。また、クラウドコンピューティングでは、サーバ31が仮想化されることが一般的である。一台の情報処理装置が仮想化によって複数のサーバ31としての機能を提供することや、複数の情報処理装置が仮想化によって一台のサーバ31としての機能を提供することができる。
【0031】
したがって、図示したサーバ31のハードウェア構成は、1つの筐体に収納されていたり一まとまりの装置として備えられていたりする必要はなく、サーバ31が備えていることが好ましいハード的な要素を示す。なお、サーバ31がクラウドコンピューティングとしてではなく単独の情報処理装置により提供されることも可能である。
【0032】
<ナビシステムの階層>
図4は、本実施形態のナビゲーションシステム100の階層構造を示す図である。ナビゲーションシステム100は、主にデータ層401、エンジン層402、UI層403の3つの階層を有している。データ層401には例えば地図データ、音声管理ファイル、検索データ等が配置される。地図データは地図を描画するためのデータであり、音声管理ファイルは
図1で説明した案内音声のためのテーブルや音声データなどであり、検索データは施設、電話番号、住所などのPOI(Point Of Interest)のデータである。
【0033】
エンジン層402には地図描画エンジン、経路・案内エンジン、検索エンジンなどが含まれる。エンジン層402はUI層403から処理に必要な情報を取得し、データ層401のデータを使用して地図描画、経路の検索・案内、POIの検索等を行い、UI層403に出力する。
【0034】
UI層403は、ユーザインタフェースとなる層であり、表示装置213への地図表示、検索結果に基づく案内音声の出力、出発地や目的地など各種設定の受け付け等を行う。
【0035】
このように階層が区分されていることで、ナビゲーションシステム100のサービス提供者はナビゲーションシステム100を柔軟に構築することが可能になる。例えば、「a. データ層401とエンジン層402をクラウド側に設置しUI層403を端末側に搭載する」、「b.データ層401のみをクラウド側に設置しエンジン層402とUI層403を端末側に搭載する」、「c.データ層401、エンジン層402及びUI層403を一台の情報処理装置に搭載する」、というような構成が可能である。
【0036】
本実施形態ではaの構成に基づいて説明するが、ナビゲーションシステム100の構成はb、cを含め柔軟に構成できる。
【0037】
<経路表示システムの機能構成例>
図5は、本実施例のナビゲーションシステム100が備える各機能を図示した機能ブロック図の一例である。
【0038】
<<サーバの機能構成>>
サーバ31は、サーバ送受信部41、経路検索部42、ナビ画面作成部43、及び、記憶・読出処理部49を有している。これらの各機能は
図3(a)に示したCPU211がプログラム2101を実行してサーバ31のハードウェアと協働することで実現される機能又は手段である。これらの機能の一部又は全てがICなどのハードウェア回路により実現されてもよい。
【0039】
また、サーバ31は、
図3(a)に示した補助記憶装置217、ROM215又はRAM216により構築される記憶部490を有している。記憶部490には、地
図DB491、道路ネットワークDB492、歩行者ネットワークDB493、及び、案内音声定義DB494が構築されている。これらの各データベース(DB)は、サーバ31が直接有していなくてもよく、サーバ31がアクセス可能なネットワーク34上の任意の場所にあればよい。
【0040】
まず、各データベースについて説明する。
地
図DB491は、電子地図を描画するための地図データを記憶している。電子地図に表示される情報には、都道府県などの区画、緑地や河川、道路や鉄道、記号や注記など多くの表示対象があるため、性質の似たものに分類し各分類ごとに描画できるようになっている。それぞれに分類された表示対象又は表示対象が描画された状態をレイヤーといい、電子地図はいくつかのレイヤーを重ねることで描画される。各レイヤーの地図データは、ベクトルデータ又はラスターデータのうち表示対象に適したフォーマットで記述されている。また、地図データは経度・緯度などが既知のメッシュ状に区切られており、1つ以上のメッシュを結合してナビ画面が作成される。ベクトルデータの場合は、緯度・経度でポイント、ポリライン、ポリゴンの位置が定められている。また、ラスターデータの場合は緯度・経度に対応づけて縮尺に応じたデータが用意されている。
【0042】
表1は道路ネットワークDBの構成を模式的に示す。道路ネットワークDB492は、車両が通行可能な道路の構造を表すデータであって、表1(a)のノードテーブルと表1(b)のリンクテーブルとを有している。ノードテーブルには、ノードを識別するためのノードIDとノードの座標(緯度・経度)が登録されている。ノードとは道路網表現上の結節点である。ノードは例えば交差点、分岐点、合流点、屈曲点などである。
【0043】
また、リンクテーブルにはリンクを識別するためのリンクID、リンクの始点ノード、リンクの終点ノード、道路種別などが登録されている。この他、幅員、リンク長などが登録されてよい。リンクとはノードとノードを結ぶ道路をいい、リンクはノード同士を結ぶ線分となる。道路種別は、例えば一般道、高速道路、専用道路、私道などである。ノードIDが分かればノードに繋がっているリンクがリンクテーブルから判明するので、ノードテーブルとリンクテーブルを相互に参照することで道路を検索できる。
【0044】
歩行者ネットワークDB493は、ノードテーブルとリンクテーブルとを有する点で道路ネットワークDB492と同様である。ただし、歩行者ネットワークDB493には、歩行者が通行可能な道(歩道、横断歩道、歩道橋、地下道、通り抜け可能な通路など)のリンクと、リンクの始点と終点のノード等が登録されている。
【0046】
表2(a)は案内音声定義DB494に記憶されているフレーズ組立定義テーブル102を模式的に示す。フレーズ組立定義テーブル102には、フレーズコードfn(nは自然数)に対応づけてフレーズ内容が登録されている。フレーズ内容は1つ以上の文を含む文章である。案内ポイントではこのフレーズ内容が読み上げられる。フレーズコードfnはフレーズ内容を識別する識別情報であり、フレーズ内容は語順IDとその順番を定義する。なお、語順IDは"seq"と1つ以上の数値の組み合わせで表される。語順IDは、1つ以上の音声IDと対応しており、音声IDが示す音声データの読み上げ順を規定する。
【0047】
表2(a)のフレーズ組立定義テーブル102は、英語の音声で案内される場合のものである。しかし、後述されるように日本語の場合のフレーズ組立定義テーブル102も同様になる。
【0048】
表2(b)は案内音声定義DB494に記憶されている案内条件テーブル103を模式的に示す。案内条件テーブル103には語順IDに対応づけて案内条件と必須かどうかが登録されている。案内条件は語順IDで特定される案内音声をナビゲーションシステム100が読み上げるための条件である。必須の欄には必須の場合に"○"が、必須でない場合に"×"がそれぞれ登録されている。なお、表2(b)のオフロード道とは、道路がない地域(砂漠や原野やなど)を走行することを意味している。
【0049】
表2(c)は案内音声定義DB494に記憶されている語順テーブル104を模式的に示す。語順テーブル104には語順IDに対応づけて音声IDが登録されている。音声IDは音声データを識別するための識別情報である。語順IDに音声IDが対応づけられることで、ナビゲーションシステム100は案内ポイントで読み上げる音声データを特定できる。語順IDは主に1つの文を特定するための識別情報であり、音声IDは文、句、又は単語を特定するための識別情報である。
【0050】
フレーズ組立定義テーブル102と語順テーブル104が語順IDにより関連づけられることで、フレーズ組立定義テーブル102は言語が異なっても同じか又はほぼ同じにすることができ、言語間の違いを語順テーブル104で受け持つことができる。フレーズ組立定義テーブル102が各言語に共通であれば、フレーズコードを決定するためのロジックも言語間で同じか又はほぼ同じにすることができる。
【0051】
表2(d)は案内音声定義DB494に記憶されている音声データテーブルを模式的に示す。音声データテーブルには音声IDに対応づけて案内テキスト、意味、音声データが登録されている。案内テキストは、案内音声に用いられる最小単位の文字列(文、句、又は単語)である。
【0052】
なお、表2(d)の「意味」は説明の便宜のために示されたものであり、ナビゲーションシステム100が有していなくてもよい。また、音声データはwavファイルのファイル名を示している。音声データのファイルはmp3などの他の音楽フォーマットでもよい。
【0053】
表2(d)の音声データテーブルに示すように、音声IDにより音声データが特定されるため、ナビゲーションシステム100は音声データを読み上げることができる。
【0054】
(サーバ31の機能について)
続いて、サーバ31が有する機能について説明する。サーバ送受信部41は送信部41aと受信部41bを有している。サーバ送受信部41は、
図3(a)のCPU211及び通信装置214等により実現され、受信部41bは端末35からナビゲーションに関する種々の要求を受け付ける。この要求には、例えば、目的地までの検索要求、ナビ画面の更新要求(拡大・縮小、表示範囲の変更など)がある。これらの要求は、ナビ画面作成部43及び経路検索部42に振り分けられる。また、サーバ送受信部41の送信部41aは経路情報やナビ画面を端末35に送信する。
【0055】
経路検索部42は、
図3(a)のCPU211等により実現され、検索要求に対し道路ネットワークDB492又は歩行者ネットワークDB493の少なくとも一方を用いて経路を検索し経路情報を作成する。経路検索には、リンク長や幅員、渋滞状況をコストに換算して、出発地から目的地までのコストの合計が最も少なくなる経路を選ぶダイクストラ法が知られている。なお、ダイクストラ法以外の検索方法が用いられてもよい。経路情報には案内ポイントが含まれている。
【0056】
ナビ画面作成部43は、
図3(a)のCPU211等により実現され、2点を包含する領域を含み、経路及び2点(例えば出発地及び目的地)が強調表示されたナビ画面を作成する。なお、ナビ画面は経路を含めGIFやJpegなどの画像データとして作成される場合と、画像データとしての電子地図とプログラムコードとして記述された経路情報とに分けて作成される場合がある。
【0057】
後者の場合、経路の描画は端末35が行う。サーバ31のナビ画面作成部43は経路を描画するためのプログラムコードを生成して端末35に送信し、端末35がプログラムコードを実行することでナビ画面に経路を描画できる。このようなプログラムコードとしてはHTMLと共に送信されるJavascript(登録商標)が知られている。
【0058】
ナビ画面はさらに、ユーザの現在位置を表示してもよい。また、ユーザが移動を開始すると、ナビ画面作成部43は案内に適した縮尺のナビ画面を作成する。また、端末35から更新要求を取得すると、ナビ画面作成部43は要求された縮尺や表示範囲に応じてナビ画面を作成する。サーバ送受信部41はこのようにして作成された経路情報とナビ画面を端末35に送信する。
【0059】
記憶・読出処理部49は、
図3(a)のCPU211、ROM215、RAM216及び補助記憶装置217等により実現され、記憶部490に各種データを記憶したり、記憶部490に記憶された各種データを読み出す処理を行う。
【0060】
<<端末の機能構成>>
続いて端末35の機能又は手段について説明する。端末35は、端末送受信部51、操作受付部52、位置検出部53、経路案内部54、ナビ画面表示部55、及び、記憶・読出処理部59を有している。これらは、
図3(b)に示したCPU211がプログラム2102を実行して端末35のハードウェアと協働することで実現される機能又は手段である。これらの機能の一部又は全てがICなどのハードウェア回路により実現されてもよい。
【0061】
また、端末35は、
図3(b)に示した補助記憶装置217、ROM215又はRAM216により構築される記憶部590を有している。記憶部590には、案内パターン管理DB591が構築されている。案内パターン管理DB591は、端末35が直接有していなくてもよく、端末35がアクセス可能なネットワーク34上の任意の場所にあればよい。
【0063】
表3は案内パターン管理DB591に記憶されている案内管理テーブルを模式的に示す。案内管理テーブルには、案内パターン、条件及びフレーズコードが対応づけて登録されている。案内パターンは案内音声が出力されるいくつかのパターンである。案内パターンは説明のために示されており、案内パターン管理DB591が実際に保持していなくてもよい。条件は、フレーズコードを特定するための状況である。例えば、ユーザがある経路におけるナビを開始する操作を行うと、端末35の操作受付部52が操作を受け付け、表3の「ナビ開始時」の条件が成立する。そして、この場合はフレーズコードとしてf1が特定される。
【0064】
なお、表3の案内管理テーブルは説明のために示したものであり、案内管理テーブルはプログラム2102のプログラムコードに含まれている場合が多い。したがって、案内管理テーブルは表3のように独立した形式で存在しない場合がある。案内管理テーブル又はプログラムコードはサーバ31から端末35がダウンロードしてもよいし、予め端末35が保持していてもよい。
【0065】
(端末35の機能について)
続いて、端末35が有する機能について説明する。端末送受信部51は、
図3(b)のCPU211及び通信装置214等により実現され、サーバ31に検索要求及び更新要求を送信したり、サーバ31からナビ画面や経路情報を受信したりする。
【0066】
操作受付部52は、
図3(b)のCPU211及び入力装置212等により実現され、ユーザから、言語の指定、経路検索のためのPOIや検索方法の入力、拡大・縮尺の指示、及び、表示範囲変更などの指示を受け付ける。
【0067】
位置検出部53は、
図3(b)のCPU211及びGPS受信装置219等により実現され、定期的に及びユーザの操作に応じて現在位置を検出する。検出した現在位置は端末送受信部51からサーバ31に送信される。
【0068】
経路案内部54は、
図3(b)のCPU211等により実現され、サーバ31から取得した経路情報と現在位置とに基づいて音声管理ファイル101や案内パターン管理DB591を参照し案内音声を出力する。次述するように音声管理ファイル101は端末35にダウンロードされている。経路案内部54は、ユーザの状況が案内管理テーブルの条件を満たすか否かを判定し、満たす場合には条件に対応するフレーズコードを特定し、さらにフレーズコードに対応した語順ID、音声IDを特定する。これにより、例えば案内ポイントに到達すると、曲がり角などを指示する音声データを音声入出力装置218に出力させる。
【0069】
ナビ画面表示部55は、
図3(b)のCPU211等により実現され、サーバ31から受信したナビ画面を表示装置213に表示する。また、位置検出部53が検出した現在位置を経路上に補正して(ルートマッチングして)、ユーザの現在位置としてナビ画面に合成する。経路情報が検索されていない状態では、道路や道などユーザが存在するはずのリンク上に現在位置を補正するマップマッチングを行う。なお、ルートマッチング又はマップマッチングはサーバ31が行ってもよい。
【0070】
記憶・読出処理部59は、記憶部590に各種データを記憶したり、記憶部590に記憶された各種データを読み出す処理を行う。
【0071】
<多言語に対応した音声管理ファイルと端末35へのダウンロード>
図6は、端末35への音声管理ファイル101のダウンロードを模式的に説明する図の一例である。
図6(a)は、案内音声定義DB494に含まれる各種のテーブル及びファイルを模式的に示す図の一例である。案内音声定義DB494は、1つの言語定義ファイル107、ナビゲーションシステム100が対応している言語の数と同じ数の表示テキストファイル108、及び、ナビゲーションシステム100が対応している言語の数と同じ数の音声管理ファイル101を有している。
【0072】
言語定義ファイル107には、ナビゲーションシステム100が対応している言語、及び、キャラクタボイスの一覧(リスト)が定義されている。言語定義ファイル107は、ナビゲーションシステム100が新たな言語に対応するごとに更新される。端末35はサーバ31から言語定義ファイル107が更新された旨の通知を取得し表示装置213に表示する。この画面例については
図8にて説明する。なお、キャラクタボイスとは、音声データの属性である。属性には例えば、男性の音声、女性の音声等が挙げられるがこれには限られない。
【0073】
表示テキストファイル108は、言語ごとに、表示装置213の画面のタイトル、メニューなどを表示するテキスト(文字、アルファベット、記号、数字等)が記述されたファイルである。したがって、音声データだけでなく、表示装置213の画面の文字などもユーザが所望する言語で表示される。
【0074】
音声管理ファイル101は、上記したフレーズ組立定義テーブル102、案内条件テーブル103、語順テーブル104、音声データテーブル105、及び、音声データ一式106を関連づけるファイル(したがって、音声管理ファイル101はテーブル等がひとつにまとめられた圧縮ファイル又は実際にはフォルダやディレクトリでもよい)である。1つの音声管理ファイル101が1つの言語に対応している。音声データ一式106は、1つの言語分の音声データの集合である(各案内ポイントで読み上げられるフレーズの集合)。音声管理ファイル101が複数の音声データ一式106を有しているのは、異なるキャラクタボイスに対応するためである。したがって、男性が話す英語の音声データ一式106、女性が話す英語の音声データ一式106などが提供され得る。音声データ一式106は1つでもよい。
【0075】
<<ファイル名について>>
続いて、案内音声定義DB494のファイル又はテーブルのファイル名と、端末35にダウンロードされるファイルについて説明する。
図6(b)は端末35の補助記憶装置217に構築されるファイル構造を示している。
【0076】
言語定義ファイル107は例えばLangType.jsonというファイル名で端末35の補助記憶装置217に記憶される。表示テキストファイル108はDisplayというファイル名で端末35の補助記憶装置217に記憶されている。フレーズ組立定義テーブル102、案内条件テーブル103、語順テーブル104及び音声データテーブル105は例えばen_f.jsonというファイル名(以下、en_f.jsonを音声管理ファイル101のファイル名と称す)で端末35の補助記憶装置217に記憶される。そして、音声データ一式106はen_fというフォルダに記憶されている。
【0077】
なお、音声管理ファイル101のファイル名は以下のような規則で付与される。
言語コード+"−"+エリアコード+"_"+キャラクタコード
言語コードは言語を指定する識別情報であり、言語コードは国際基準ISO639−1(2文字コード)に準ずるものとする。例えば、英語の言語コードは「en」、日本語の言語コードは「ja」、中国語の言語コードは「zh」である。
【0078】
エリアコードとは、例えば地域によって異なる表現(例えば方言)がある言語に関し、該地域を指定する識別情報である。エリアコードは国際基準ISO3166−1_alpha−3(3文字コード)に準ずるものとする。例えば、アメリカ英語であればエリアコードは「usa」となる。エリアコードは省略可能である。
【0079】
キャラクタコードは、キャラクタボイスを指定する識別情報である。例えば、女性のキャラクタボイスのキャラクタコードは「f」、男性のキャラクタボイスのキャラクタコードは「m」である。キャラクタコードは省略可能である。
【0080】
以上により、アメリカ英語の女性のキャラクタボイスが格納される音声管理ファイル101のファイル名は「en-usa_f.json」となり、英語の女性のキャラクタボイスが格納される音声管理ファイル101のファイル名は「en-usa_f.json」となる。このようにISOに準拠したファイル名を付与することで、統一されたファイル名を付与することができる。しかしながら、このようなファイル名は一例にすぎず、このようなファイル名に制限されるものではない。
【0081】
なお、ファイルフォーマットとしてjson(JavaScript Object Notation)形式を用いたのは一例に過ぎず、XML(Extensible Markup Language)形式など他の形式を用いてもよい。
【0082】
また、表3の案内管理テーブルは端末35が実行するプログラムコードに含まれているものとし、
図6(b)のファイル構造の中に独立しては存在していない。ただし、案内管理テーブルが音声管理ファイル101(***.json)に含まれていてもよい。
【0083】
<<ダウンロード手順>>
図7は、端末35が音声管理ファイル101等をダウンロードする手順を示すシーケンス図の一例である。なお、端末35にプログラム2102(アプリケーションソフトウェア)がインストールされる際に、基本となる音声管理ファイル101が少なくとも1つダウンロードされている。
【0084】
S1:端末35の端末送受信部51は、定期的にサーバ31と通信している。サーバ31のサーバ送受信部41は、音声管理ファイル101が増えるなどにより新たな言語に対応した場合、端末35からの通信に対し言語更新通知を端末35に送信する。なお、新たな言語に対応した場合とは、新しい表示テキストファイル108と音声管理ファイル101が登録され、言語定義ファイル107が更新されることをいう。
【0085】
S2:端末35の端末送受信部51は言語更新通知を受信すると、言語定義ファイル107をサーバ31に要求する。
【0086】
S3:サーバ31のサーバ送受信部41の受信部41bはこの要求を受信し、サーバ送受信部41の送信部41aは端末35に対し言語定義ファイル107を送信する。
【0087】
S4:端末35の端末送受信部51は言語定義ファイル107を受信して、ナビ画面表示部55が言語設定画面を表示装置213に表示する。言語設定画面を
図8に示す。
【0088】
S5:ユーザが言語(キャラクタボイスを含む)を指定する操作を行うと、端末35の操作受付部52が言語指定の操作を受け付ける。
【0089】
S6:端末35の端末送受信部51は、言語(キャラクタボイスを含む)を指定して音声データをサーバ31に要求する。この要求には、言語コード、エリアコード、キャラクタコードが含まれる。エリアコードとキャラクタコードは必須でない。
【0090】
S7:サーバ31のサーバ送受信部41の受信部41bはこの要求を受信し、サーバ送受信部41の送信部41aはユーザが指定した言語の音声管理ファイル101を端末35に送信する。なお、指定された言語の音声管理ファイル101が複数の音声データ一式106を有する場合、送信するのはエリアコード及びキャラクタボイスで指定されたもののみでよい。
【0091】
このような処理により、端末35は新しい言語の音声データ一式106を取得できる。したがって、ユーザは所望の言語に切り替えることができる。
【0092】
<<言語設定画面>>
図8は、端末35の表示装置213に表示された言語設定画面501の一例を示す。言語設定画面501は、言語名502ごとにキャラクタボイス503、ダウンロードアイコン504、視聴ボタン505、詳細ボタン506を有している。キャラクタボイス503は表示されない場合がある。ダウンロードアイコン504は音声管理ファイル101をダウンロードするためのボタンである。ダウンロードされていない言語についてはアイコンが点線で表示される。視聴ボタン505は予め決まった音声データを視聴するためのボタンである。詳細ボタン506はダウンロード対象の音声管理ファイル101の詳細(例えば、登録年月日、言語、エリア、キャラクタボイスの説明など)を表示させるためのボタンである。
【0093】
ユーザはこのような言語設定画面501から任意の言語(キャラクタボイスを含む)を指定し、指定した言語の音声管理ファイル101をダウンロードすることができる。
【0094】
<他の言語の音声管理ファイル101について>
続いて、言語が異なる場合の音声管理ファイル101について説明する。まず、フレーズ組立定義テーブル102は言語が異なっても同じかほぼ同じ構造にすることができる。一例として、日本語のフレーズ組立定義テーブル102を示す。
【0096】
表4は案内音声定義DB494に記憶されている日本語のフレーズ組立定義テーブル102を模式的に示す。表2(a)と比較すると明らかなように、英語と日本語でフレーズ組立定義テーブル102は同じである。
【0097】
しかしながら、英語と日本語では文法が異なるため、seq1-1などで特定される語順までは完全に同一にならない。一例として、英語と日本語ではseq1-2が異なっている。英語のseq1-2は表2(c)に示すように以下である。
英語のseq1-2 :2111・2115・2117・2116
「This route includes off-road and a border crossing」
これに対し、日本語のseq1-2は以下である。
日本語のseq1-2:2111,2116
「この経路は国境を含んでいます」
つまり、日本語ではオフロード道に関する音声データが含まれない。このように、本実施形態のナビゲーションシステム100は、言語が異なってもフレーズ組立定義テーブル102における語順IDと音声IDの対応関係を同じか又はほぼ同じ構成にすることができる。また、開発段階では、細部の異なる案内内容だけ語順IDに対応づけられた音声IDで調整すればよいためコスト増も抑制できる。
【0098】
<動作手順>
図9は、端末35が音声で案内するまでの処理手順を説明する図の一例である。
図9の処理手順は例えばプログラム2102が起動されるとスタートする。
【0099】
まず、ユーザは言語設定画面501から案内音声の言語の指定を受け付ける(S10)。端末35の操作受付部52は言語の指定を受け付ける。指定された言語は、例えば言語コード、エリアコード及びキャラクタコードの組み合わせで表現されている。ユーザが指定した言語は記憶部590に記憶される。
【0100】
端末35の経路案内部54は記憶部590に記憶されているユーザ指定の言語を読み出して、案内音声の言語を特定する(S20)。
【0101】
この後、端末35の経路案内部54は、ユーザが案内ポイントに到達したか否かを判定する(S30)。
【0102】
案内ポイントに到達した場合(S30のYes)、経路案内部54は案内管理テーブルの条件を参照して案内ポイントにおいて読み上げるフレーズのフレーズコードを決定する(S40)。説明の便宜上、フレーズコードf1が選択されたものとする。
【0103】
次に、端末35の経路案内部54は案内条件テーブル103を参照して、フレーズ内容に含まれる語順IDのうち案内に使用する語順IDを選択する(S50)。フレーズコードf1のフレーズ内容は「seq.0+seq.1-1+seq.1-2+seq.1-3+seq.1-4+seq.1-5」である。seq.0は必須(案内通知音)なので常に出力される。seq.1-1は必須であるが、端末35が交通情報を考慮するか否かによって案内開始1,2のどちらかが選択される。交通情報を考慮するか否かは例えばユーザが端末35に設定している。あるいはVICS(登録商標)(Vehicle Information and Communication System)が接続されているか否かよって自動的に判定してもよい。説明の便宜上、経路案内1が選択されたものとする。seq.1-2、seq.1-3又はseq.1-4について現在の案内ポイントが国境付近かどうか及びオフロード道かどうかを経路案内部54は判定し、必要であればseq.1-2、seq.1-3又はseq.1-4の1つを出力すると判定する。説明の便宜上、seq.1-2、seq.1-3又はseq.1-4はいずれも出力されないものとする。seq.1-5は必須である。
【0104】
次に、端末35の経路案内部54は語順テーブル104を参照して語順IDに対応づけられている音声IDを取得する(S60)。したがって、音声IDとして9、1233、1234が取得される。
【0105】
次に、端末35の経路案内部54は音声データテーブル105を参照して、音声データ一式106から音声データを取得する(S70)。したがって、en_9.wav、en_1233.wav、en_1234.wavの3つの音声データが取得される。
【0106】
次に、端末35の経路案内部54は語順IDに基づいて音声データを並べ替える(S80)。すなわち、フレーズコードf1のフレーズ内容の順番に音声データを並び替える。
【0107】
次に、端末35の経路案内部54は音声データを再生することでフレーズを読み上げる(S90)。例えば、「Pon. Now starting navigation. Please obey all traffic regulations while driving.」というフレーズを読み上げる。
【0108】
以上説明したように、本実施形態のナビゲーションシステム100は、言語が異なっても共通のフレーズのパターンを抽出し、案内ポイントにフレーズコードを対応づける。そしえ、フレーズコードに語順IDを、語順IDに音声IDをそれぞれ対応づけることで、言語が異なってもフレーズコードと語順IDの対応を同じか又はほぼ同じにすることができる。また、フレーズコードに語順IDが対応づけられていることで、語順IDに対応付けられた音声IDによって異なる細部の案内音声の相違を吸収できる。したがって、言語が異なっても発話フレーズを決定する際のロジックをほぼ共通にすることができシステムの肥大化を抑制できる。また、細部の異なる案内内容だけ調整すればよいためコスト増も抑制できる。
【0109】
<その他の好適な適用例>
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【0110】
例えば、サーバ31が音声データをwavファイル等の音声データで配信すると説明したが、案内テキストを端末35に送信してもよい。端末35はTTS(Text-To-Speech)システムにより案内テキストを音声合成して出力する。
【0111】
例えば、
図5などの構成例は、サーバ31による処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本願発明が制限されることはない。サーバ31の処理は、処理内容に応じてさらに多くの処理単位に分割することもできる。また、1つの処理単位がさらに多くの処理を含むように分割することもできる。
【0112】
また、サーバ31が有する各データベースを複数の情報処理装置が分散して有していてもよい。
【0113】
また、
図5では一台のサーバ31を図示したが、サーバ31が複数台、存在してもよい。また、一台のサーバ31が有する機能が複数のサーバに分散して配置されてもよい。
【0114】
また、受信部41bは取得手段の一例であり、記憶・読出処理部49,59は読出手段の一例であり、送信部41aは送信手段の一例である。経路案内部54は案内文章決定手段の一例であり、記憶部490,590は記憶手段の一例である。音声出力部は音声入出力装置218の一例である。フレーズ組立定義テーブル102は第一の案内文章情報の一例であり、語順テーブル104は第二の案内文章情報の一例である。サーバ31の音声管理ファイル101の構造、又は、端末35の補助記憶装置217における音声管理ファイル101の記憶構造はデータ構造の一例である。ナビゲーションシステム100は情報処理システムの一例である。案内条件テーブルは案内条件情報の一例である。