以下、図面を参照して本発明の実施形態について説明する。
[第1実施形態]
A.構成
(1)外観
図1は、第1実施形態による路線検索装置100の外観を示す外観図である。この図に示す路線検索装置100は、ユーザにより携行可能なサイズの筐体で構成され、筐体前面の操作パネルには各種操作画面を表示する表示部13、各種操作キーやスイッチを備える操作部14およびマイクロフォン等から構成される音声入力部17が設けられる。
(2)電気的構成
次に、図2は路線検索装置100の電気的構成を示すブロック図である。この図において、CPU10は操作部14から供給される操作イベントに応じて装置各部を制御するものであり、本発明の要旨に係わる特徴的な処理の動作については追って詳述する。ROM11には、CPU10が実行する、後述のメインルーチン(図3参照)や路線検索処理(図4参照)のプログラムを含む各種プログラムデータが記憶される。
RAM12は、図3に図示するように、各種レジスタ・フラグデータを一時記憶するワークエリアWEとデータエリアDEとを備える。RAM12のデータエリアDEは、住所録ADR、メールボックスMBおよび地域メモリRMから構成される。住所録ADRには、アドレス帳処理部20により住所データがストアされる。住所データは、電話番号、郵便番号および住所地番を含む。メールボックスMBには、メール処理部21により送信メール(送信済みメール)および受信メールの各データがストアされる。地域メモリRMには、地域名とその優先度とを対応付けて複数記憶される。この地域メモリRMの内容が意図するところについては追って述べる。
表示部13は、CPU10から供給される表示制御信号に従って各種操作画面を表示する。操作部14は、装置電源をパワーオン/オフする電源スイッチ、アドレス帳処理部20の起動を指示するアドレス登録スイッチ、メール処理部21の起動を指示するメール送受信スイッチおよび路線検索処理の実行を指示する路線検索スイッチ等の各種スイッチを有し、操作されるスイッチ種に対応した操作イベントを発生する。操作部14が発生する操作イベントはCPU10に取り込まれる。
路線検索用データベース15には、駅名、駅名の駅がある地域名、路線名および各駅における列車の到着・発車時刻が記憶される。ランドマークテーブル16には、各地域別のランドマークの名称が記憶されており、ランドマークの名称を読み出しアドレスとして対応する地域名を読み出す。ここで言うランドマークとは、例えばその地域で著名な建物や商業施設などの名称を指す。後述する地域重み付け処理では、RAM12のメールボックスMBに格納される送受信メールデータ中にランドマークを表す名称が存在する場合、その名称のランドマークがある地域名をランドマークテーブル16から読み出すようになっている。つまり、ランドマークテーブル16は、ランドマークの名称をそのランドマークが存在する地域名に変換して出力する。
音声入力部17は、装置パネルに配設されるマイクロフォンと、このマイクロフォンの出力信号を増幅した後にA/D変換して音声データを発生する変換部とから構成される。音声認識部18は、CPU10の制御の下に、音声入力部17から入力される音声データに音素分析を施し、その分析結果に基づき入力音声を単語認識する。通信部19は、CPU10の制御の下にインターネットに有線接続(又は無線接続)する。
アドレス帳処理部20は、ユーザ操作に応じて入力される住所データをRAM12の住所録ADR(図3参照)に登録したり、住所録ADRに登録した住所データの検索・編集したりする。なお、この図に示すアドレス帳処理部20は独立したハードウェアではなく、CPU10の処理で具現される機能ブロックに相当する。
メール処理部20は、上記アドレス帳処理部20と同様、CPU10の処理で具現される機能ブロックであり、通信部19を介して接続したインターネット上のメールサーバにアクセスし、RAM12のメールボックスMB(図3参照)に保存される送信メールをメールサーバへ送出する一方、当該メールサーバに受信メールがあればそれを受信してメールボックスMBに保存する。
路線検索処理部22は、CPU10の処理(後述の路線検索処理)と協働し、音声入力された乗車駅名と下車駅名とに基づき路線検索用データベース15を参照して路線検索を行って検索結果を発生する。なお、検索結果とは、乗車駅から下車駅に至るまでに乗り継ぎする各路線名、これら乗り継ぎ路線毎の発着時刻および所要時間を含む。
C.動作
次に、図4〜図11を参照して上記構成による第1実施形態の動作を説明する。以下では、第1実施形態の動作として、CPU10が実行するメインルーチンの動作、メインルーチンからコールされる路線検索処理、この路線検索処理を構成する地域重み付け処理、音声入力処理および駅名指定処理の各動作について述べる。
(1)メインルーチンの動作
図4を参照してメインルーチンの動作を説明する。電源スイッチ操作に応じて路線検索装置100がパワーオンされると、CPU10は図4に図示するステップSA1に処理を進め、装置各部を初期化するイニシャライズを行う。そして、ステップSA2以降では、ユーザ操作に応じて発生する操作イベントに従った処理を実行する。
すなわち、ステップSA2では、アドレス登録スイッチが操作されたか否かを判断する。アドレス登録スイッチが操作されなければ、判断結果は「NO」になり、後述のステップSA4に進むが、アドレス登録スイッチが操作されると、判断結果は「YES」となり、ステップSA3に進む。ステップSA3では、アドレス登録スイッチの操作に応じてアドレス帳処理部20を起動する。
これにより、アドレス帳処理部20では、ユーザ操作に応じて入力される住所データをRAM12の住所録ADR(図3参照)に登録したり、住所録ADRに登録した住所データの検索・編集したりするアドレス登録処理を実行する。そして、アドレス帳処理部20のアドレス登録処理が完了すると、CPU10はステップSA4に処理を進める。
ステップSA4では、メール送受信スイッチが操作されたか否かを判断する。メール送受信スイッチが操作されなければ、判断結果は「NO」になり、後述のステップSA6に進むが、メール送受信スイッチが操作されると、判断結果は「YES」となり、ステップSA5に進む。ステップSA5では、メール送受信スイッチの操作に応じてメール処理部21を起動する。
これにより、メール処理部21では、通信部19を介して接続したインターネット上のメールサーバにアクセスし、RAM12のメールボックスMB(図3参照)に保存される送信メールをメールサーバへ送出する一方、当該メールサーバに受信メールがあればそれを受信してメールボックスMBに保存するメール送受信処理を実行する。そして、メール処理部21のメール送受信処理が完了すると、CPU10はステップSA6に処理を進める。
ステップSA6では、路線検索スイッチが操作されたか否かを判断する。路線検索スイッチが操作されなければ、判断結果は「NO」になり、後述のステップSA8に進むが、路線検索スイッチが操作されると、判断結果は「YES」となり、ステップSA7を介して路線検索処理を実行する。
路線検索処理では、後述するように、RAM12の住所録ADRに登録される住所データやメールボックMBに保存されるメールデータなどの、ユーザがメモリ保存しておいた各種データからユーザに何らかの関係があると思われる地域名を検出又は特定する毎に、その地域名の優先度を高める重み付けを行っておき、ユーザが駅名(乗車駅名・下車駅名)を音声で入力すると、入力された音声データに音素分析を施して音声認識した単語と一致する駅名を路線検索用データベース15から検索する。
そして、複数の駅名が検索されると、それら駅名の内、ユーザに何らかの関係がある地域名に存在する駅名については該当する地域名の優先度を高める重み付けを行い、重み付けされた地域名の優先度の大きさに対応した順序で複数の乗車駅名を並べ換えて路線検索画面中に表示する。こうすることでユーザに何らかの関係がある地域名に存在する駅名が上位の選択候補となる結果、誤認識を招いたり、検索の手間が掛かることが無くなり、音声入力される駅名を高精度に認識し得るようになっている。
こうした路線検索処理が完了すると、ステップSA8に進み、例えば音声入力部17のマイク感度を調整する等の、その他の処理を実行する。以後、電源スイッチ操作で装置電源がパワーオフされるまで上記ステップSA2〜ステップSA8を繰り返す。
(2)路線検索処理の動作
次に、図5〜図6を参照して路線検索処理の動作を説明する。上述したメインルーチンのステップSA7(図4参照)を介して本処理が実行されると、CPU10は図5に図示するステップSB1の地域重み付け処理を実行する。地域重み付け処理では、後述するように、RAM12に設けられる住所録ADRの住所データやメールボックスMBのメールデータの内容を参照してユーザに何らかの関係があると思われる地域名の優先度を高める重み付けを行う。
次いで、ステップSB2では、路線検索処理部22に起動を指示し、続くステップSB3では、乗車駅名および下車駅名を音声入力して検索指示するための路線検索画面(不図示)表示部13に表示する。そして、ステップSB4では、路線検索処理部22から乗車駅名の入力が要求されたか否かを判断する。乗車駅名の入力が要求された場合には、ここでの判断結果が「YES」になり、ステップSB5を介して音声入力処理を実行する。
音声入力処理では、後述するように、音声入力部17および音声認識部18を起動させ、これにより音声入力部17によって取り込まれるユーザの音声データに音声認識部18が音素分析を施して認識した単語を抽出し、抽出した単語と一致する駅名を路線検索用データベース15から検索する。
そして、ステップSB6では、駅名指定処理を実行する。駅名指定処理では、後述するように、音声認識で得られた単語と一致する駅名(乗車駅名)が複数存在すると、それら駅名の内でユーザに何らかの関係があると思われる地域名に存在する駅名については該当する地域名の優先度を高める重み付けを行い、重み付けされた地域名の優先度の大きさに対応した順序で複数の駅名(乗車駅名)を並べ換えて路線検索画面中に表示し、それらのいずれかがユーザ操作で選択されるようになっている。
こうして、ステップSB6の駅名指定処理によって乗車駅が選択されると、ステップSB7に進み、両駅(乗車駅と下車駅)が選択済みであるか否かを判断する。乗車駅のみ選択されている場合には、判断結果が「NO」になり、上述したステップSB4に処理を戻す。そして、この場合には、乗車駅名が既に選択されているので、ステップSB4の判断結果は「NO」となり、ステップSB8に進む。
ステップSB8では、路線検索処理部22から下車駅名の入力が要求されたか否かを判断する。下車駅名の入力が要求されると、判断結果は「YES」になり、ステップSB9に進む。ステップSB9では、音声入力部17によって取り込まれるユーザの音声データに音声認識部18が音素分析を施して認識した単語を抽出し、抽出した単語と一致する下車駅名を路線検索用データベース15から検索する音声入力処理を実行する。
次いで、ステップSB10では、音声認識で得られた単語と一致する下車駅名が複数存在すると、ユーザに何らかの関係があると思われる地域名に存在する下車駅名については該当する地域名の優先度を高める重み付けを行い、重み付けされた地域名の優先度の大きさに対応した順序で複数の下車駅名を並べ換えて路線検索画面中に表示し、それらのいずれかがユーザ操作で選択される駅名指定処理を実行した後、ステップSB7に進む。
上記ステップSB10の駅名指定処理によって下車駅が選択され、乗車駅名と下車駅名との両方が選択された状態になると、ステップSB7の判断結果は「YES」になり、ステップSB11に進む。ステップSB11では、選択された乗車駅名および下車駅名の入力を決定する決定スイッチ又は入力をキャンセルするキャンセルスイッチのいずれが操作されたかを判断する。キャンセルスイッチが操作された場合には、判断結果が「NO」になり、上述のステップSB4に処理を戻す。なお、キャンセルスイッチが操作された場合には、路線検索処理部22がCPU10に対して乗車駅名の再入力を要求するようになっている。
さて一方、乗車駅名および下車駅名の入力を決定する決定スイッチが操作された場合には、上記ステップSB11の判断結果が「YES」になり、図6に図示するステップSB12に処理を進める。ステップSB12では、入力決定された乗車駅名と下車駅名とを路線検索処理部22に供給して路線検索の開始を指示する。これにより、路線検索処理部22は、路線検索用データベース15を参照して乗車駅名から下車駅名に至る路線を検索する。
次いで、ステップSB13では、路線検索処理部22の路線検索が完了するまで待機する。そして、路線検索処理部22における路線検索が完了すると、ここでの判断結果が「YES」になり、ステップSB14に進み、路線検索画面に検索結果を表示する。なお、検索結果は、乗車駅から下車駅に至るまでに乗り継ぎする各路線名、これら乗り継ぎ路線毎の発着時刻および所要時間を含む。
この後、ステップSB15に進むと、路線検索のやり直しを指示する戻りスイッチの操作の有無を判断する。戻りスイッチが操作されなければ、判断結果は「NO」になり、後述のステップSB17に進むが、路線検索のやり直しを指示すべく戻りスイッチを操作した場合には、上記ステップSB15の判断結果が「YES」になり、ステップSB16に進む。ステップSB16では、上記ステップSB14において路線検索画面に表示された検索結果をクリアした後、前述したステップSB3(図5参照)に処理を戻して最初から路線検索をやり直す。
続いて、ステップSB17では、終了スイッチの操作の有無を判断する。終了スイッチが操作されなければ、判断結果は「NO」になり、上述のステップSB15に処理を戻すが、終了スイッチが操作された場合には、判断結果が「YES」になり、ステップSB18に進み、路線検索処理部22に処理の停止を指示する。そして、ステップSB19に進み、表示部13に表示中の路線検索画面をクリアして本処理を終える。
このように、路線検索処理では、先ず住所録ADRの住所データやメールボックMBのメールデータの内容を参照してユーザに何らかの関係があると思われる地域名を検出又は特定する毎に、その地域名の優先度を高める重み付けを行う。次に、ユーザが乗車駅名を音声で入力すると、入力された音声データに音素分析を施して音声認識した単語と一致する乗車駅名を路線検索用データベース15から検索する。
そして、音声認識で得られた単語と一致する乗車駅名が複数存在する場合には、ユーザに何らかの関係があると思われる地域名に存在する乗車駅名については該当する地域名の優先度を高める重み付けを行い、重み付けされた地域名の優先度の大きさに対応した順序で複数の乗車駅名を並べ換えて路線検索画面中に表示する。つまり、ユーザに何らかの関係があると思われる地域名に存在する乗車駅名が上位の選択候補として画面表示され、これら選択候補(駅名)のいずれかがユーザ操作で選択される。
下車駅名についても上記と同様にして、ユーザに何らかの関係があると思われる地域名に存在する下車駅名が上位の選択候補として画面表示され、これら選択候補(駅名)のいずれかがユーザ操作で選択される。こうして選択される乗車駅名と下車駅名とに応じて、路線検索を行い、これにより乗車駅から下車駅に至るまでに乗り継ぎする各路線名、これら乗り継ぎ路線毎の発着時刻および所要時間を含む検索結果が路線検索画面に表示される。
(3)地域重み付け処理の動作
次に、図7〜図8を参照して地域重み付け処理の動作を説明する。上述した路線検索処理のステップSB1(図5参照)を介して本処理が実行されると、CPU10は図7に図示するステップSC1に進み、RAM12のデータエリアDEに設けられる地域メモリRM(図3参照)をクリアする。次いで、ステップSC2では、RAM12のデータエリアDEに設けられる住所録ADRから住所データを抽出し、続くステップSC3では、抽出した住所データから地域名を検出する。具体的には、例えば住所データ中の郵便番号を参照して地域名を検出したり、住所データ中の住所地番から地域名を検出したりする。なお、地域名とは、都道府県の市区町までの名称を指す。
そして、ステップSC4では、上記ステップSC3において検出した地域名が、地域メモリRMに登録済みであるか否かを判断する。検出した地域名が地域メモリRMに登録済みであると、上記ステップSC4の判断結果は「NO」になり、ステップSC5に進み、登録済みの地域名に対応する優先度をインクリメントした後、後述のステップSC8に進む。
一方、上記ステップSC3において検出した地域名が、地域メモリRMに登録済みでなければ、上記ステップSC4の判断結果は「YES」になり、ステップSC6に進む。ステップSC6では、上記ステップSC3において検出した地域名を地域メモリRMに新規登録し、続くステップSC7では、その新規登録した地域名に対応する優先度を「1(初期値)」にセットする。
この後、ステップSC8に進み、RAM12のデータエリアDEに設けられる住所録ADRの全ての住所データについて地域名を検出し終えたかどうかを判断する。全ての住所データについて地域名を検出し終えていなければ、判断結果は「NO」になり、上記ステップSC2に処理を戻して上述した過程を繰り返す。そして、全ての住所データについて地域名を検出し終えると、上記ステップSC8の判断結果が「YES」になり、図8に図示するステップSC9に処理を進める。
ステップSC9では、RAM12のデータエリアDEに設けられるメールボックスMB(図3参照)からメールデータを抽出する。メールデータは、送信済みメールデータおよび受信メールデータを含む。次いで、ステップSC10では、メールボックスMBから抽出したメールデータに地域を特定する内容が含有されているか否かを判断する。具体的には、メール本文からランドマークを表す名称(固有名詞)を検索する。メールデータに地域を特定する内容が含有されていない場合、すなわちメール本文からランドマークを表す名称を検索出来なかった場合には、判断結果は「NO」となり、後述のステップSC16に進む。
これに対し、メール本文からランドマークを表す名称を検索出来た場合には、上記ステップSC10の判断結果は「YES」になり、ステップSC11に進む。ステップSC11では、ランドマークテーブル16を参照して、検索されたランドマークの名称を当該ランドマークがある地域名に変換する。こうしてメールデータに含まれるランドマークの名称から地域名が特定されると、ステップSC12に進み、特定した地域名が、地域メモリRMに登録済みであるか否かを判断する。
特定した地域名が既に地域メモリRMに登録済みであると、上記ステップSC12の判断結果は「NO」になり、ステップSC13に進み、登録済みの地域名に対応する優先度をインクリメントした後、後述のステップSC16に進む。一方、特定した地域名が地域メモリRMに登録済みでなければ、上記ステップSC12の判断結果は「YES」になり、ステップSC14に進む。ステップSC14では、上記ステップSC11において特定した地域名を地域メモリRMに新規登録し、続くステップSC15では、その新規登録した地域名に対応する優先度を「1(初期値)」にセットする。
この後、ステップSC16に進み、RAM12のデータエリアDEに設けられるメールボックMBの全てのメールデータについて検索し終えたかどうかを判断する。検索し終えていなければ、判断結果は「NO」になり、上記ステップSC9に処理を戻して上述した過程を繰り返す。そして、全てのメールデータについて検索し終え全てると、上記ステップSC16の判断結果が「YES」になり、本処理を完了する。
以上のように、地域重み付け処理では、地域名とその優先度とが対応付けて記憶されるRAM12の地域メモリRMを用い、RAM12の住所録ADRに登録される住所データから地域名を検出する毎にその検出した地域名に対応する優先度をインクリメントして重み付けすると共に、RAM12のメールボックMBに保存されるメールデータから地域名を特定する毎にその特定した地域名に対応する優先度をインクリメントして重み付けする。つまり、住所録ADRの住所データやメールボックMBのメールデータの内容を参照してユーザに何らかの関係があると思われる地域名を検出又は特定する毎に、その地域名の優先度を高める重み付けが行われる。
つまり、通常、路線検索の為に入力される駅名は、少数の例外を除いてユーザが過去に何らかの係わりを持つ地域(例えば連絡を取り合っている知人や友人がいる、以前に行ったことがある、ビジネス上関係のある会社がある等)に含まれることが多い。そこで、地域重み付け処理では、こうした点に鑑みて、住所録ADRの住所データやメールボックMBのメールデータの内容を参照してユーザに何らかの関係があると思われる地域名の優先度を高める重み付けを行う訳である。
(4)音声入力処理の動作
次に、図9を参照して音声入力処理の動作を説明する。上述した路線検索処理のステップSB5(図5参照)を介して本処理が実行されると、CPU10は図9に図示するステップSD1に進み、音声入力部17および音声認識部18に起動を指示する。続いて、ステップSD2では、音声入力されるまで待機する。そして、ユーザが乗車駅名を音声入力したとする。そうすると、音声認識部18は、音声入力部17により取り込まれた音声データに音素分析を施し、その分析結果に基づき入力音声を単語認識した後、認識完了をCPU10に通知する。
音声認識部18がCPU10に認識完了を通知すると、上記ステップSD2の判断結果が「YES」になり、ステップSD3に進み、音声認識部18が認識した単語を抽出する。次いで、ステップSD4では、その抽出した単語と一致する駅名を路線検索用データベース15から検索して本処理を終える。
このように、音声入力処理では、音声入力部17および音声認識部18を起動させ、これにより音声入力部17によって取り込まれるユーザの音声データに音声認識部18が音素分析を施して認識した単語を抽出し、抽出した単語と一致する駅名を路線検索用データベース15から検索する。
(5)駅名指定処理の動作
次に、図10を参照して駅名指定処理の動作を説明する。上述した路線検索処理のステップSB6(図5参照)又はステップSB10(図5参照)のいずれかを介して本処理が実行されると、CPU10は図10に図示するステップSE1に進み、音声認識で得られた単語と一致する駅名が路線検索用データベース15から複数検索されたか否かを判断する。路線検索用データベース15から検索された駅名が一つであったならば、判断結果は「NO」になり、ステップSE2に進み、その検索された駅名を、路線検索画面中の乗車駅入力エリアに表示する。
一方、路線検索用データベース15から検索された駅名が複数であると、上記ステップSE1の判断結果は「YES」になり、ステップSE3に進む。ステップSE3では、検索された複数の駅名の一つを指定する。続いて、ステップSE4では、その指定した駅名が存在する地域名を路線検索用データベース15から抽出する。そして、ステップSE5に進むと、上記ステップSE4にて抽出した地域名がRAM12のデータエリアDEに設けられる地域メモリRM(図3参照)に登録されているか否かを判断する。
抽出した地域名が地域メモリRMに登録されていると、上記ステップSE5の判断結果は「YES」になり、ステップSE6に進む。ステップSE6では、地域メモリRMに登録されているその地域名(抽出した地域名)に対応する優先度を高める重み付けを行った後、ステップSE7に進む。なお、優先度を高める重み付けとは、例えば優先度に所定の重み付け値を加算する処理を指す。
これに対し、抽出した地域名が地域メモリRMに登録されていなければ、上記ステップSE5の判断結果は「NO」になり、この場合、重み付けを行わずにステップSE7に進む。ステップSE7では、路線検索用データベース15から検索された複数の駅名の全てについて検索し終えたかどうかを判断する。検索し終えていなければ、判断結果が「NO」になり、上述したステップSE3以降の処理を繰り返す。
そして、路線検索用データベース15から検索された複数の駅名の全てについて検索し終えると、上記ステップSE7の判断結果が「YES」になり、ステップSE8に進む。ステップSE8では、重み付けが施された地域メモリRMの内容を参照し、路線検索用データベース15から検索された複数の駅名を、それぞれ対応する地域名の優先度の大きさ順に並べ換えて路線検索画面中に表示する。したがって、地域メモリRMに登録され、ユーザに何らかの関係があると思われる地域名に存在する駅名が上位の選択候補として画面表示される。次いで、ステップSE9では、路線検索画面中に表示された複数の駅名の内、所望の駅名をユーザが選択して本処理を終える。
このように、駅名指定処理では、音声認識で得られた単語と一致する駅名が複数存在すると、ユーザに何らかの関係があると思われる地域名に存在する駅名については該当する地域名の優先度を高める重み付けを行い、重み付けされた地域名の優先度の大きさに対応した順序で複数の駅名を並べ換えて路線検索画面中に表示する。つまり、ユーザに何らかの関係があると思われる地域名に存在する駅名が上位の選択候補として画面表示され、これら選択候補(駅名)のいずれかがユーザ操作で選択されるようになっている。
以上説明したように、第1実施形態では、住所録ADRに登録される住所データやメールボックMBに保存されるメールデータなどの、ユーザがメモリ保存しておいた各種データからユーザに何らかの関係があると思われる地域名を検出又は特定する毎に、その地域名の優先度を高める重み付けを行い、ユーザが駅名(乗車駅名・下車駅名)を音声で入力すると、入力された音声データに音素分析を施して音声認識した単語と一致する駅名を路線検索用データベース15から検索する。
複数の駅名が検索された場合には、それら駅名の内、ユーザに何らかの関係があると思われる地域名に存在する駅名については該当する地域名の優先度を高める重み付けを行い、重み付けされた地域名の優先度の大きさに対応した順序で複数の乗車駅名を並べ換えて路線検索画面中に表示することによって、ユーザに何らかの関係があると思われる地域名に存在する駅名が上位の選択候補となるため、誤認識を招いたり、検索の手間が掛かることが無くなり、音声で入力される駅名を高精度に認識することが出来る。
[第2実施形態]
次に、図11〜図15を参照して第2実施形態について説明する。図11は、第2実施形態による路線検索装置100の電気的構成を示すブロック図である。この図において、図2に図示した第1実施形態と共通する構成要素には同一を番号を付し、その説明を省略する。
第2実施形態が前述の第1実施形態と相違する点は、CPU10の制御の下にGPS衛星信号を受信して現在位置を測位するGPS受信部23と、RAM12のデータエリアDEに設けられるGPSメモリとを具備することにある。GPSメモリには、後述するように、来訪歴のある場所(位置)を含む地域名と、これら地域名にそれぞれ対応し、来訪回数に応じて高められる優先度とが登録される。
次に、第2実施形態の動作を説明する。以下では、第1実施形態と相違する動作、すなわち第2実施形態のメインルーチン、第2実施形態の地域重み付け処理およびGPS処理の各動作について述べる。なお、地域重み付け処理を除く路線検索処理、音声入力処理および駅名指定処理の各動作は前述の第1実施形態と同一なので、その説明については省略する。
(1)第2実施形態のメインルーチンの動作
図12は、第2実施形態のメインルーチンの動作を示すフローチャートである。上述した第1実施形態と同様、電源スイッチ操作に応じて路線検索装置100がパワーオンされると、CPU10は図12に図示するステップSF1に処理を進め、装置各部を初期化するイニシャライズを行う。
続いて、ステップSF2では、アドレス登録スイッチが操作されたか否かを判断する。アドレス登録スイッチが操作されなければ、判断結果は「NO」になり、後述のステップSF4に進むが、アドレス登録スイッチが操作されると、判断結果は「YES」となり、ステップSF3に進む。ステップSF3では、アドレス登録スイッチの操作に応じてアドレス帳処理部20を起動する。
これにより、アドレス帳処理部20では、ユーザ操作に応じて入力される住所データをRAM12の住所録ADR(図3参照)に登録したり、住所録ADRに登録した住所データの検索・編集したりするアドレス登録処理を実行する。そして、アドレス帳処理部20のアドレス登録処理が完了すると、CPU10はステップSF4に処理を進める。
ステップSF4では、メール送受信スイッチが操作されたか否かを判断する。メール送受信スイッチが操作されなければ、判断結果は「NO」になり、後述のステップSF6に進むが、メール送受信スイッチが操作されると、判断結果は「YES」となり、ステップSF5に進む。ステップSF5では、メール送受信スイッチの操作に応じてメール処理部21を起動する。
これにより、メール処理部21では、通信部19を介して接続したインターネット上のメールサーバにアクセスし、RAM12のメールボックスMB(図3参照)に保存される送信メールをメールサーバへ送出する一方、当該メールサーバに受信メールがあればそれを受信してメールボックスMBに保存するメール送受信処理を実行する。そして、メール処理部21のメール送受信処理が完了すると、CPU10はステップSF6に処理を進める。
ステップSF6では、路線検索スイッチが操作されたか否かを判断する。路線検索スイッチが操作されなければ、判断結果は「NO」になり、後述のステップSF8に進むが、路線検索スイッチが操作されると、判断結果は「YES」となり、ステップSF7を介して第2実施形態による路線検索処理を実行する。
第2実施形態による路線検索処理では、RAM12の住所録ADRに登録される住所データやメールボックMBに保存されるメールデータなどの、ユーザがメモリ保存しておいた各種データからユーザに何らかの関係があると思われる地域名を検出又は特定する毎に、その地域名の優先度を高める重み付けを行った後に、GPSメモリの内容に基づき過去に訪れたことがある地域名の優先度を高めておく。そして、ユーザが駅名(乗車駅名・下車駅名)を音声で入力すると、入力された音声データに音素分析を施して音声認識した単語と一致する駅名を路線検索用データベース15から検索する。
複数の駅名が検索されると、それら駅名の内、ユーザと何らかの関係があり、かつ来訪歴のある地域名に存在する駅名については該当する地域名の優先度を高める重み付けを行い、重み付けされた地域名の優先度の大きさに対応した順序で複数の乗車駅名を並べ換えて路線検索画面中に表示することによって、ユーザと何らかの関係があり、かつ来訪歴のある地域名に存在する駅名が上位の選択候補となるため、誤認識を招いたり、検索の手間が掛かることが無くなり、音声で入力される駅名を高精度に認識し得るようになっている。
こうした路線検索処理が完了すると、ステップSF8を介してGPS処理を実行する。GPS処理では、後述するように、一定期間毎に測位した現在位置を含む地域名を抽出し、抽出した地域名がGPSメモリに未登録ならば、GPSメモリに新規登録すると共に、その新規登録した地域名に対応する優先度を「1」にセットし、一方、抽出した地域名がGPSメモリに登録済みならば、その地域名に対応する優先度をインクリメントして優先順位を上げる。こうすることで、GPSメモリには、過去に訪れたことがある場所(位置)、つまり来訪歴ある地域名と、これら地域名にそれぞれ対応し、来訪回数に応じて高められる優先度とが登録され、所定期間再訪していない地域名があれば、それをGPSメモリから削除する。
そして、GPS処理が完了すると、ステップSF9に進み、例えば音声入力部17のマイク感度を調整する等の、その他の処理を実行する。以後、電源スイッチ操作で装置電源がパワーオフされるまで上記ステップSF2〜ステップSF9を繰り返す。
(2)第2実施形態による地域重み付け処理の動作
次に、図13〜図14を参照して第2実施形態による地域重み付け処理の動作を説明する。前述の第1実施形態と同様、路線検索処理のステップSB1(図5参照)を介して本処理が実行されると、CPU10は図13に図示するステップSG1に進み、RAM12のデータエリアDEに設けられる地域メモリRM(図3参照)をクリアする。次いで、ステップSG2では、RAM12のデータエリアDEに設けられる住所録ADRから住所データを抽出し、続くステップSG3では、抽出した住所データから地域名を検出する。具体的には、例えば住所データ中の郵便番号を参照して地域名を検出したり、住所データ中の住所地番から地域名を検出したりする。なお、地域名とは、都道府県の市区町までの名称を指す。
そして、ステップSG4では、上記ステップSG3において検出した地域名が、地域メモリRMに登録済みであるか否かを判断する。検出した地域名が地域メモリRMに登録済みであると、上記ステップSG4の判断結果は「NO」になり、ステップSG5に進み、登録済みの地域名に対応する優先度をインクリメントした後、ステップSG8に進む。
一方、上記ステップSG3において検出した地域名が、地域メモリRMに登録済みでなければ、上記ステップSG4の判断結果は「YES」になり、ステップSG6に進む。ステップSG6では、上記ステップSG3において検出した地域名を地域メモリRMに新規登録し、続くステップSG7では、その新規登録した地域名に対応する優先度を「1(初期値)」にセットする。
この後、ステップSG8に進み、RAM12のデータエリアDEに設けられる住所録ADRの全ての住所データについて地域名を検出し終えたかどうかを判断する。全ての住所データについて地域名を検出し終えていなければ、判断結果は「NO」になり、上記ステップSG2に処理を戻して上述した過程を繰り返す。そして、全ての住所データについて地域名を検出し終えると、上記ステップSG8の判断結果が「YES」になり、図14に図示するステップSG9に処理を進める。
ステップSG9では、RAM12のデータエリアDEに設けられるメールボックスMB(図3参照)からメールデータを抽出する。メールデータは、送信済みメールデータおよび受信メールデータを含む。次いで、ステップSG10では、メールボックスMBから抽出したメールデータに地域を特定する内容が含有されているか否かを判断する。具体的には、メール本文からランドマークを表す名称を検索する。メールデータに地域を特定する内容が含有されていない場合、すなわちメール本文からランドマークを表す名称を検索出来なかった場合には、判断結果は「NO」となり、ステップSG16に進む。
これに対し、メール本文からランドマークを表す名称を検索出来た場合には、上記ステップSG10の判断結果は「YES」になり、ステップSG11に進む。ステップSG11では、ランドマークテーブル16を参照して、検索されたランドマークの名称を当該ランドマークがある地域名に変換する。こうして、メールデータに含まれるランドマークの名称から地域名が特定されると、ステップSG12に進み、特定した地域名が、地域メモリRMに登録済みであるか否かを判断する。
特定した地域名が既に地域メモリRMに登録済みであると、上記ステップSG12の判断結果は「NO」になり、ステップSG13に進み、登録済みの地域名に対応する優先度をインクリメントした後、ステップSG16に進む。一方、特定した地域名が地域メモリRMに登録済みでなければ、上記ステップSG12の判断結果は「YES」になり、ステップSG14に進む。ステップSG14では、上記ステップSG11において特定した地域名を地域メモリRMに新規登録し、続くステップSG15では、その新規登録した地域名に対応する優先度を「1(初期値)」にセットする。
この後、ステップSG16に進み、RAM12のデータエリアDEに設けられるメールボックMBの全てのメールデータについて検索し終えたかどうかを判断する。検索し終えていなければ、判断結果は「NO」になり、上記ステップSG9に処理を戻して上述した過程を繰り返す。そして、全てのメールデータについて検索し終え全てると、上記ステップSG16の判断結果が「YES」になり、ステップSG17に進む。ステップSG17では、GPSメモリの内容に応じて地域メモリRMに登録される地域名の優先度を変更する重み付けを行って本処理を終える。
すなわち、GPSメモリには、後述するGPS処理により来訪歴のある地域名が格納されている。したがって、GPSメモリの内容に応じて地域メモリRMに登録される地域名の優先度を変更する重み付けとは、住所録ADRの住所データやメールボックMBのメールデータから得た各地域名の優先度の内、過去に行ったことがある地域名の優先度を高めることを指す。
以上のように、第2実施形態による地域重み付け処理は、第1実施形態と同様に、住所録ADRの住所データやメールボックMBのメールデータの内容を参照してユーザに何らかの関係があると思われる地域名を検出又は特定する毎に、その地域名の優先度を高める重み付けを行った後、GPSメモリの内容に基づき来訪歴のある地域名の優先度を高めるようになっている。
(3)GPS処理の動作
次に、図15を参照してGPS処理の動作を説明する。第2実施形態によるメインルーチンのステップSF8(図12参照)を介して本処理が実行されると、CPU10は図15に図示するステップSH1に進み、GPS受信部23の起動タイミングであるか否かを判断する。起動タイミング下でなければ、判断結果は「NO」になり、何もせずに本処理を終えるが、起動タイミング(例えば12時間経過毎)になると、上記ステップSH1の判断結果は「YES」になり、ステップSH2に進む。
ステップSH2では、GPS受信部23に起動を指示し、続くステップSH3では、起動したGPS受信部23がGPS衛星信号を受信して位置情報を発生するまで待機する。そして、GPS受信部23が位置情報を発生すると、上記ステップSH3の判断結果が「YES」になり、ステップSH4に進み、GPS受信部23が発生した位置情報、すなわち現在位置を取得する。次いで、ステップSH5では、取得した現在位置を含む地域名を抽出する。
続いて、ステップSH6では、上記ステップSH5において抽出した地域名が、GPSメモリに登録済みであるか否かを判断する。抽出した地域名がGPSメモリに未登録ならば、判断結果は「NO」になり、ステップSH7に進み、上記ステップSH5において抽出した地域名をGPSメモリに新規登録すると共に、その新規登録した地域名に対応する優先度を「1(初期値)」にセットした後、ステップSH9に進む。
一方、抽出した地域名がGPSメモリに登録済みであると、上記ステップSH6の判断結果は「YES」になり、ステップSH8に進み、登録済みの地域名に対応する優先度をインクリメントして優先順位を上げた後、ステップSH9に進む。そして、ステップSH9では、GPSメモリに登録済みの地域名の中で、所定期間以上抽出されない地域名の有無を判断する。
すなわち、GPSメモリには、来訪歴のある地域名が登録されるので、このステップSH9では来訪歴のある地域名の中で所定期間訪れていない地域名の有無を判断する。所定期間訪れていない地域名が無ければ、ここでの判断結果は「NO」になり、本処理を終えるが、所定期間訪れていない地域名が有ると、判断結果が「YES」となり、ステップSH10に進み、該当する地域名をGPSメモリから削除して本処理を終える。
このように、GPS処理では、一定期間毎に測位した現在位置を含む地域名を抽出し、抽出した地域名がGPSメモリに未登録ならば、GPSメモリに新規登録すると共に、その新規登録した地域名に対応する優先度を「1」にセットし、一方、抽出した地域名がGPSメモリに登録済みならば、その地域名に対応する優先度をインクリメントして優先順位を上げる。こうすることで、GPSメモリには、来訪歴のある地域名と、これら地域名にそれぞれ対応し、来訪回数に応じて高められる優先度とが登録される。そして、所定期間訪れていない地域名があれば、その地域名をGPSメモリから削除する。
以上のように、第2実施形態では、住所録ADRに登録される住所データやメールボックMBに保存されるメールデータなどの、ユーザがメモリ保存しておいた各種データからユーザに何らかの関係があると思われる地域名を検出又は特定する毎に、その地域名の優先度を高める重み付けを行った後に、GPSメモリの内容に基づき来訪歴がある地域名の優先度を高めておく。つまり、ユーザと何らかの関係があり、しかも来訪歴のある地域名の優先度を高める。
そして、ユーザが駅名(乗車駅名・下車駅名)を音声で入力すると、入力された音声データに音素分析を施して音声認識した単語と一致する駅名を路線検索用データベース15から検索し、複数の駅名が検索されると、それら駅名の内、ユーザと何らかの関係があり、しかも来訪歴のある地域名に存在する駅名については該当する地域名の優先度を高める重み付けを行い、重み付けされた地域名の優先度の大きさに対応した順序で複数の乗車駅名を並べ換えて路線検索画面中に表示する。これにより、ユーザと何らかの関係があり、しかも来訪歴のある地域名に存在する駅名が上位の選択候補となるため、誤認識を招いたり、検索の手間が掛かることが無くなり、音声で入力される駅名を高精度に認識することが出来る。
なお、上述した第1および第2実施形態では、住所録ADRに登録される住所データやメールボックスMBに保存されるメールデータを基にしてユーザに何らかの関係があると思われる地域名を検出又は特定する態様としたが、これに限らず、例えばウェブブラウザ機能を有する場合、当該機能により閲覧したウェブページを保存するようにし、保存したウェブページからユーザに何らかの関係があると思われる地域名を検出又は特定するようにしても構わない。また、地図サイトから入手した地図データを保存し、そこからユーザに何らかの関係があると思われる地域名を抽出する態様にすることも可能である。