(58)【調査した分野】(Int.Cl.,DB名)
前記コマンド実行可否判定部は、前記走行中操作可否リストに含まれるコマンドの名称と、前記音声データから変換されたテキストデータの類似度を判定することを特徴とする請求項2記載の情報処理装置。
前記走行中操作可否リスト作成部で作成した走行中操作可否リストを用いて、操作できないコマンドに対応したボタンを無効化するアプリケーション制御部を有することを特徴とする請求項1記載の情報処理装置。
前記アプリケーションソフトウェアの画面に表示されている操作用ボタンの名称を抽出することによって、前記アプリケーションソフトウェアから操作するコマンドのリストを作成することを特徴とする請求項4記載の情報処理装置。
車両に搭載され、前記車両走行中においてアプリケーションソフトウェアの操作をおこなう情報処理装置と、ポリシー配信サーバとが通信網により接続された操作システムであって、
前記情報処理装置は、
前記ポリシー配信サーバと通信する情報処理装置通信部と、
前記車両の走行中に実行が禁止される操作に関する情報であるポリシー情報を記録するポリシー情報記録部と、
画面切り替え指示により画面が切り替わる際に、前記ポリシー情報と、画面が切り替わったあとに表示される前記アプリケーションソフトウェアの操作コマンドの表示名称または代替名称からなるリストであるコマンドリストと、を参照することにより、前記アプリケーションソフトウェアに対するコマンドが、前記車両の走行中に操作可能か否かを示す走行中操作可否リストを作成する走行中操作可否リスト作成部と、
前記情報処理装置に関する情報を取得する情報取得部と、を有し、
前記ポリシー配信サーバは、
前記情報処理装置と通信するサーバ通信部と、
前記情報処理装置が使用される場所ごとに定義され、前記アプリーションソフトウェアを操作するコマンドに適用される規制ルールを記録している規制ルール記録部と、
前記情報処理装置に関する情報に基づいて前記規制ルールを選択する規制ルール選択部と、を有し、
前記情報処理装置は、前記情報処理装置通信部を用いて前記ポリシー配信サーバに、前記情報処理装置に関する情報を送信し、
前記ポリシー配信サーバの規制ルール選択部は、前記サーバ通信部を用いて前記情報処理装置から受信した前記情報処理装置に関する情報に基づき、前記規制ルールを選択し、
前記ポリシー配信サーバは、前記規制ルールを、ポリシー情報として、前記サーバ通信部を用いて前記情報処理装置に送信し、
前記情報処理装置は、前記情報処理装置通信部を用いて前記ポリシー配信サーバから送信されてきたポリシー情報を受信することを特徴とする操作システム。
前記コマンド実行可否判定ステップは、前記走行中操作可否リストに含まれるコマンドの名称と、前記音声データから変換されたテキストデータの類似度を判定することを特徴とする請求項12記載の情報処理装置の操作方法。
前記走行中操作可否リスト作成ステップで作成した走行中操作可否リストを用いて、操作できないコマンドに対応したボタンを無効化するアプリケーション制御ステップを有することを特徴とする請求項11記載の情報処理装置の操作方法。
前記アプリケーションソフトウェアの画面に表示されている操作用ボタンの名称を抽出することによって、前記アプリケーションソフトウェアから操作するコマンドのリストを作成することを特徴とする請求項14記載の情報処理装置の操作方法。
【発明を実施するための形態】
【0020】
以下、本発明に係る各実施形態を、
図1ないし
図23を用いて説明する。
【0021】
〔実施形態1〕
以下、本発明の第一の実施形態に係る音声操作システムを、
図1ないし
図17を用いて説明する。
【0022】
本実施形態の音声操作システムは、カーナナビゲーション上で動作するアプリケーションソフトウェア(以下、単に「アプリケーション」ともいう)を音声で操作する際、走行中に実行することが好ましくない操作を制限するものである。具体的には、アプリケーションの画面に表示されている操作ボタンに対応付けられているコマンド名称を音声操作可能なコマンドの名称として抽出するとともに、走行中に実行することが好ましくない操作を意味する単語のリストをサーバ装置から配信して、アプリケーションから抽出した音声操作コマンドの名称とサーバ装置から受信したリストに含まれる単語を照らし合わせることによって、各コマンドの実行可否を判断する。
【0023】
先ず、
図1ないし
図5を用いて本発明の第一の実施形態に係る音声操作システムの構成について説明する。
図1は、本発明の第一の実施形態に係る音声操作システムの全体構成図である。
図2は、車載装置のハードウェア構成図である。
図3は、ポリシー配信サーバのハードウェア構成図である。
図4は、車載装置のデータフローと機能構成を示した図である。
図5は、ポリシー配信サーバのデータフローと機能構成を示した図である。
【0024】
本発明の第一の実施形態に係る音声操作システムは、車両1のユーザーが、車両1に搭載される車載装置100を音声で操作できるようにしたシステムであって、車載装置100を備えた車両1と、基地局70とグローバル網50を介して接続されたポリシー配信サーバ300を含んで構成される。
【0025】
本実施形態における車載装置100は、基地局70との無線通信を介して、グローバル網50に接続されているポリシー配信サーバ300と通信する。ポリシー配信サーバ300は、車載装置100に、音声操作に関するポリシー情報280を配信するサーバである。
【0026】
車載装置100は、定期的、あるいは、ユーザーが明示的に指示したときに、ポリシー情報取得要求のリクエストを発行し、基地局70により無線で通信する。基地局70は、車載装置100の無線通信を仲介して、グローバル網50を中継する無線設備である。
【0027】
そして、基地局70は、グローバル網50に接続されているポリシー配信サーバ300に、リクエストを送信する。ポリシー配信サーバ300は、リクエストに応じたポリシー情報280をレスポンスとして、車載装置100に送信する。
【0028】
ここで、グローバル網50は、電話網やインターネット網などのグローバルな通信網のことである。
【0029】
車載装置100は、受信したポリシー情報280を参照して、音声によるアプリケーション500の操作を制限する。
【0030】
次に、
図2を用いて車載装置100のハードウェア構成について説明する。
【0031】
図2に示されるように、車載装置100は、ハードウェアとして、CPU20、ROM21、RAM22、無線通信インタフェース23、測位センサ24、ジャイロセンサ25、表示装置26、操作装置27、補助記憶装置28、LAN通信インタフェース29、カメラ30、ラジオチューナ31、テレビチューナ32、マイク33、スピーカ34で構成されている。
【0032】
CPU(Central Processing Unit)20は、車載装置100の各部を制御し、RAM22上にロードされるカーナビゲーションのアプリケーションソフトウェアを実行する演算・制御のためのユニットである。
【0033】
ROM(Read Only Memory)21は、制御プログラムなどが書き込まれた読み出し専用の記憶装置である。
【0034】
RAM(Read Access Memory)22は、補助記憶装置28に記憶されているプログラムをロードして一時的に保管したり、ワークデータを記憶する記憶装置である。
【0035】
無線通信インタフェース部23は、基地局70を介して、グローバル網50に接続された外部装置と接続して、データをやり取りするためのインタフェース装置である。
【0036】
測位センサ24は、地球上での緯度および経度で示される自身の位置を測位するためのセンサである。
【0037】
ジャイロセンサ25は、車両の角度や角速度を計測するためのセンサである。
【0038】
表示装置26は、液晶ディスプレイや有機EL(Electro−Luminescence)ディスプレイ等、ユーザーに画像情報を表示する装置である。
【0039】
操作装置27は、ユーザーが車載装置100を指で操作するボタン、スイッチ、キーボード、タッチパネル等の装置である。
【0040】
補助記憶装置28は、地図データベース、ポリシー情報280、音声データ、動画データなどの各種データと、カーナビゲーションのアプリケーションソフトウェアを記憶する大容量の記憶装置であり、例えば、HDD(Hard Disk Drive)やSDD(Solid State Drive)である。
【0041】
LANインタフェース29は、車載ネットワーク41と接続し、車両1の走行状態や内部状態を表す車載ネットワーク41からのデータを内部に取り込むための装置である。
【0042】
また、車載装置100は、車両信号線40とも接続されており、車両30の走行状態や内部状態を取り込むことができる。
【0043】
カメラ30、車両1の外部環境を撮影して画像として取り込む光学装置である。
【0044】
ラジオチューナ31は、アンテナより短波、中波、超短波の電波を受信し、選曲して番組として聴取する装置である。特に、FM多重放送の受信として、VICS(Vehicle Information and Communication System)(登録商標)から交通情報を受信することができる。
【0045】
テレビチューナ32は、超短波の電波を受信し、選曲して、TV番組として動画を再生する装置である。
【0046】
マイク33は、ユーザーの音声を収集するための装置である。
【0047】
スピーカ34は、音楽情報、経路案内時の音声案内および操作音等を出力するための装置である。
【0048】
次に、
図3を用いてポリシー配信サーバ300のハードウェア構成について説明する。
【0049】
ポリシー配信サーバ300のハードウェア構成は、
図3に示されるようにCPU81、RAM82、表示インタフェース83、入出力インタフェース84、ネットワークインタフェース85、補助記憶装置インタフェース86がバスにより接続されたものである。
【0050】
表示装置90には、稼動状況のモニタや出力結果が表示される。入出力インタフェース84には、キーボード91やマウス92などの入出力装置が接続され、管理者は、これらの入出力装置からコマンドなどを入力する。ネットワークインタフェース85には、グローバル網50が接続され、このインタフェースを介して外部の装置と通信をおこなう。補助記憶装置インタフェース86には、データやプログラムを格納するハードディスク装置93などの記憶装置が接続される。ハードディスク装置93は、アレイ上に接続されてディスクアレイを構成する場合もある。
【0051】
ポリシー情報280や、ポリシー配信のデータベース管理プログラム、OSなどは、ハードディスク装置93に格納されており、実行されるときにRAM82にロードされて、CPU81により実行される。
【0052】
次に、
図4を用いて車載装置100のデータフローと機能構成について説明する。
【0053】
車載装置100は、
図4に示されるように、アプリケーション制御部110、画面表示部120、走行中操作可否リスト作成部130、走行中操作可否リスト記録部191、音声入力部181、テキスト変換部140、走行状態取得部182、コマンド実行可否判定部150、ユーザーID取得部183、機器ID取得部184、ポリシー情報更新部160、ポリシー情報記録部192、および、通信部170から構成される。
【0054】
アプリケーション制御部110は、アプリケーション500から音声操作可能なコマンドを抽出してコマンドリスト210(後述)を作成するとともに、アプリケーション500に対して音声による操作を実行する部分である。
【0055】
画面表示部120は、アプリケーション500の実行画面を、表示装置26に表示する部分である。
【0056】
走行中操作可否リスト作成部130は、各音声操作コマンドの走行中における操作可否を判定するための走行中操作可否リスト220(後述)を作成する部分である。
【0057】
走行中操作可否リスト記録部191は、作成された走行中操作可否リスト220を記録する部分である。
【0058】
音声入力部181は、ユーザーが発話した音声データを入力する部分である。
【0059】
テキスト変換部140は、入力された音声データをテキストに変換する部分である。
【0060】
走行状態取得部182は、車両信号線40や車載ネットワーク41から車両の走行状態を取得する部分である。
【0061】
コマンド実行可否判定部150は、テキストが示す音声操作コマンドの実行可否を判定する部分である。
【0062】
ユーザーID取得部183は、車載装置100を使用しているユーザーの識別情報であるユーザーID183を取得する部分である。
【0063】
機器ID取得部184は、車載装置100の識別子である機器ID1000を取得する部分である。
【0064】
ポリシー情報更新部160は、ユーザーID183と機器ID1000を参照して、ポリシー配信サーバ300から規制ルール230(後述)と禁止単語リスト240(後述)を含むポリシー情報280を取得する部分である。
【0065】
ポリシー情報記録部192は、取得したポリシー情報を記録する部分である。
【0066】
通信部170は、ポリシー配信サーバ300との通信をおこなう部分である。
【0067】
次に、ポリシー配信サーバ300のデータフローと機能構成について説明する。
【0068】
ポリシー配信サーバ300は、
図5に示されるように、規制ルール選択部310、機器情報データベース250、地域判定部320、規制ルールデータベース230a、規制ルール取得部330、禁止単語リスト選択部340、ユーザー情報データベース260、使用言語判定部350、禁止単語リストデータベース240a、禁止単語リスト取得部360、および、通信部370から構成される。
【0069】
規制ルール選択部310は、車載装置100から受信するポリシー情報取得要求270の内容に応じて規制ルール230を選択する部分である。
【0070】
機器情報データベース250は、車載装置100を含む複数の機器の情報を格納するデータベースである。
【0071】
地域判定部320は、機器情報データベース250を参照して車載装置100が位置する地域を判定する部分である。
【0072】
規制ルールデータベース230aは、地域毎に定義される複数の規制ルール230を格納するデータベースである。
【0073】
規制ルール取得部330は、判定した地域用の規制ルール230を規制ルールデータベース230aから取得する部分である。
【0074】
禁止単語リスト選択部340は、車載装置100から受信するポリシー情報取得要求270の内容に応じて禁止単語リストを選択する部分である。
【0075】
ユーザー情報データベース260は、車載装置100を使用するユーザーを含む複数のユーザーの情報を記録するデータベースである。
【0076】
使用言語判定部350は、ユーザー情報データベース260を参照して車載装置100を使用するユーザーが使用している言語を判定する部分である。
【0077】
禁止単語リストデータベース240aは、言語毎に定義される複数の禁止単語リストを格納するデータベースである。
【0078】
禁止単語リスト取得部360は、判定した使用言語用の禁止単語リスト240を禁止単語リストデータベース240aから取得する部分である。
【0079】
通信部370は、車載装置100との通信処理をおこなう部分である。
【0080】
次に、
図6および
図7を用いて本発明の音声認識システムに用いられるデータ構造について説明する。
図6は、ポリシー配信サーバ300が保持するデータベースの構造を示した図である。
図7は、車載装置100で用いられるコマンドリスト210と、走行中操作可否リスト220のフォーマットを示した図である。
【0081】
ポリシー配信サーバ300が保持するデータベースは、
図6に示されるように、機器情報データベース250、ユーザー情報データベース260、規制ルールデータベース230a、禁止単語リストデータベース240aである。
【0082】
機器情報データベース250は、機器を一意に識別する機器ID251、および、機器ID251が示す機器が使用される位置の地域252を記録する。
【0083】
ユーザー情報データベース260は、ユーザーを一意に識別するユーザーID261、および、ユーザーID261が示すユーザーが使用している言語を示す使用言語262を記録する。
【0084】
規制ルールデータベース230aは、地域毎に定義される複数の規制ルール230を記録しており、図には、日本、欧州の規制ルール、および、地域が明らかではない場合に参照されるデフォルトルールが記載されている。
【0085】
規制ルール230は、操作の内容を識別する操作ID231、および、操作ID231が示す操作が走行中に操作可能か否かを示す操作可否232を記録する。図の例は、日本の場合、操作IDが“OPE1”あるいは“OPE2”の操作は、走行中に操作することが禁止され、操作IDが“OPE3”の操作は走行中でも操作可能であることを示している。
【0086】
禁止単語リストデータベース240aは、言語毎に定義される複数の禁止単語リスト240を記録しており、図は、日本語および英語の例を示している。
【0087】
禁止単語リスト240は、操作の内容を識別する操作ID241、および、操作ID241が示す操作を意味する一つ以上の単語を記載した禁止単語242を記録する。図の例では、操作IDが“OPE1”の操作を表す単語として、“再生”、“停止”等を定義している。また、規制ルール230と、禁止単語リスト240は、操作IDをキーとして結びついている。
【0088】
車載装置100で用いられるデータとしては、
図7に示されるように、コマンドリスト210と、走行中操作可否リスト220があり、コマンドリスト210は、車載装置100のアプリケーション制御部110が作成し、走行中操作可否リスト220は、走行中操作可否リスト作成部130が作成する。
【0089】
コマンドリスト210は、コマンドの名称を示す文字列であるコマンド名称211、および、そのコマンドをアプリケーション500内で一意に識別するコマンド識別子212を格納する。
【0090】
走行中操作可否リスト220は、コマンドリスト210と同様のコマンド名称221およびコマンド識別子222に加えて、走行中に操作することが可能か否かを示す操作可否223のフラグを格納する。
【0091】
次に、
図8を用いて本発明の第一の実施形態に係る音声操作システムのユーザインタフェースの操作イメージについて説明する。
【0092】
図8は、音声操作システムのアプリケーションにおいて動画視聴を実行しようしたときの画面例を示す図である。
【0093】
メニュー画面121は、表示装置26に表示される車載装置100の起動後の画面を示したものである。メニュー画面121は、車載装置100が備える機能に対応するナビボタン1211、動画視聴ボタン1212、電話ボタン1213、および、音声入力を開始するための音声入力開始ボタン1214を備えている。
【0094】
このうち、動画視聴のアプリケーション500を起動するための動画視聴ボタン1212を押下することにより、車両1が停車中のときには、アプリケーション500の動画視聴画面122aが表示される。動画視聴画面122aは、映像コンテンツを表示するコンテンツ表示領域1221、再生可能なコンテンツの一覧を表示するコンテンツ一覧表示領域1222、コンテンツの再生を開始する再生ボタン1223、コンテンツの再生を停止する停止ボタン1224、メニュー画面121に戻るための戻るボタン1225、および、メニュー画面121と音声入力開始ボタン1214を備えている。
【0095】
一方、動画視聴のアプリケーション500を起動するための動画視聴ボタン1212を押下し、車両1が走行中のときには、アプリケーション500の動画視聴画面122bが表示される。この動画視聴画面122bは、動画視聴画面122aと比較して、映像コンテンツを表示するコンテンツ表示領域1221、コンテンツの一覧を表示するコンテンツ一覧表示領域1222、再生ボタン1223、および、停止ボタン1224は、ユーザーの注意力散漫を防止するため、操作ができないように無効化され、非入力表示になっている。ただし、戻るボタン1225は、走行中も操作可能であるため無効化されない。そして、画面122が表示されている状態でユーザーが音声入力開始ボタン1214を押下して、“戻る”と発話した場合、車両が走行中においてもメニュー画面121へ遷移する。ただし、画面122が表示されている状態でユーザーが音声入力開始ボタン1214を押下して、“再生”、“停止”という動画視聴に関するコマンドを発話した場合には、操作が禁止されているためそのコマンドは、無効となる。
【0096】
ユーザーは、無効なコマンドに関するボタンが非入力表示になっているため、そのボタンを誤操作で押下することもないし、“再生”、“停止”という動画視聴に関する禁止されたコマンドを発話することも防止することができる。
【0097】
次に、
図9ないし
図11を用いて動画視聴ボタンを押下し、動画視聴画面を表示するまでの処理について説明する。
図9は、動画視聴ボタン1212を押下し、動画視聴画面122bが表示されるまでの処理を示すフローチャートである。
図10は、コマンドリスト作成処理のステップS110の処理を詳細に示すフローチャートである。
図11は、走行中操作可否リスト220作成の処理のステップS130を詳細に示すフローチャートである。
【0098】
ユーザーが動画視聴ボタン1212を押下すると、画面表示部120からアプリケーション制御部110へ画面切り替え指示が伝達され、動画視聴画面122bを表示するタイミングで、アプリケーション制御部110は、コマンドリスト210を作成する(S110)。
【0099】
次に、走行中操作可否リスト作成部130は、作成されたコマンドリスト210と、ポリシー情報記録部192に記録されている規制ルール230および禁止単語リスト240を参照して、走行中操作可否リスト220を作成する(S130)。
【0100】
走行中操作可否リスト220を作成後、アプリケーション制御部110は、アプリケーション500の画面122において操作できないボタンを無効化するとともに(S111)、走行中操作可否リスト作成部130は、走行中操作可否リスト220を作成し、走行中操作可否リスト記録部191は、補助記憶装置28に作成された走行中操作可否リスト220を記録する(S131)。
【0101】
次に、
図10を用いてコマンドリスト作成処理のステップS110の処理について詳細に説明する。
【0102】
先ず、コマンドリスト210の記録領域を初期化して空の状態にする(S1101)。
【0103】
次に、現在表示している画面(すなわち、動画視聴画面122b)に含まれるオブジェクト(ボタン等)の数を変数Nにセットする(S1102)。
【0104】
次に、Nが0(ゼロ)か否かを判定する(S1103)。
【0105】
Nが0ではない場合、N番目のオブジェクトがボタンか否かを判定する(S1104)。
【0106】
N番目のオブジェクトがボタンの場合、ボタンの表示名称と識別情報を取得してコマンドリスト210のコマンド名称211とコマンド識別子212にそれぞれ追加する(S1105)。例えば、
図8の再生ボタン1223のオブジェクトとしての表示名称が、“再生”となっているとする。そのときには、それをコマンドリスト210のコマンド名称211に、“再生”としてセットする。また、プレイヤーの再生機器としては、再生のための記号として、右三角が一般に使われるが、そのボタンの表示名称として、“右三角”、その代替名称として、その機能を表す“再生”が定義されているときには、代替名称の“再生”をとってきて、それをコマンドリスト210のコマンド名称211に、“再生”としてセットする。
【0107】
これにより、開発者は、表示名称とコマンドの機能を一致させておけば、表示名称を、そのままコマンド名称として利用することができるので、開発労力の軽減となる。
【0108】
次に、Nから1を減算した値をNにセットし(S1106)、S1103に戻る。
【0109】
そして、S1103からS1106の手順を繰返し、Nが0になった時点でコマンドリスト210を走行中操作可否リスト作成部130に通知して処理を完了する(S1107)。なお、上記のS1102におけるオブジェクトの数の取得や、S1104におけるN番目のオブジェクトの取得等は、GUI(Graphical User Interface)画面を作成するためのソフトウェアライブラリが一般的に備えているものであり、例えばスマートフォンのOSであるAndroid上で動くアプリケーションの場合は、Java(登録商標)言語によって提供されるgetChildCount()メソッドや、getChildAt()メソッド等を使用することにより取得することができる。
【0110】
次に、
図11を用いて走行中操作可否リスト220作成の処理のステップS130の詳細について説明する。
【0111】
先ず、作成されたコマンドリスト210の行数を変数Nにセットする(S1301)。
【0112】
次に、Nが0(ゼロ)か否かを判定する(S1302)。
【0113】
次に、Nが0ではない場合、ポリシー情報記録部192に記録している禁止単語リスト240を検索し(S1303)、コマンドリスト210のN行目のコマンド名称211が禁止単語リスト240の禁止単語242に含まれるか否かを調べる(S1304)。
【0114】
N行目のコマンド名称211に一致する単語が禁止単語リスト240の禁止単語242に含まれる場合、一致する単語を含む行の操作ID241と、ポリシー情報記録部192に記録している規制ルール230を参照して、その操作IDが示す操作の走行中の操作可否232を取得する(S1305)。
【0115】
次に、取得した操作可否232が“可”と“不可”のいずれであるかを判定し(S1306),“不可”である場合は、走行中操作可否リスト220の操作可否223を“不可”に設定する(S1307)。
【0116】
上記のステップS1304においてコマンド名称211を含む行が禁止単語リスト240に存在しない場合、あるいは、上記のステップS1306において取得した操作可否232が“可”の場合は、走行中操作可否リスト220の操作可否223を“可”に設定する(S1308)。
【0117】
次に、Nから1を減算した値をNにセットして(S1309)、S1302に戻る。
【0118】
そして、S1302からS1309の手順を繰返し、Nが0になった時点で処理を完了する。
【0119】
次に、
図12ないし
図14を用いてユーザーが発話した音声に対応するコマンドを実行する際の車載装置100の処理について説明する。
図12は、動画視聴画面122a,122bの音声操作開始ボタン1214を押下し、音声による操作を実行する処理の流れを示したフローチャートである。
図13は、コマンド実行可否判定処理のステップS150を詳細に示すフローチャートである。
図14は、音声操作のための動画視聴時のポップアップメッセージの例を示した図である。
【0120】
音声操作開始ボタン1214を押下すると、画面表示部120から音声入力部181へ音声入力開始指示が伝達される。これを受けて、音声入力部181は、マイク33を用いてユーザーが発話した音声を入力する(S181)。
【0121】
次に、テキスト変換部140は、入力された音声データをテキストに変換する(S140)。なお、マイクで入力された音声データを解析してテキストに変換する処理は、公知であり、一般的にSpeech−to−Textと総称される技術として実用化されている。
【0122】
次に、音声データをテキストへ変換できたか否かを判定する(S141)。何らかのテキストに変換できた場合、コマンド実行可否判定部150は、変換されたテキストと走行中操作可否リスト220を参照して、変換されたテキストに対応する音声操作コマンドの実行可否を判定する(S150)。
【0123】
次に、判定した実行可否が“可”か否かを判断し(S151)、変換されたテキストに対応する音声操作コマンドの実行が可能な場合、走行中操作可否リスト220に記載されているコマンド識別子222をアプリケーション制御部110に伝達し、アプリケーション制御部110は、コマンド識別子222に対応するボタンの押下処理を実行する(S111)。
【0124】
上記のステップS141において音声データからテキストへの変換ができなかった場合、あるいは、変換されたテキストに対応するコマンドの実行がS151において、“不可”と判断された場合、画面表示部120は、表示装置26にエラー画面を表示する(S121)。
【0125】
次に、
図13を用いてコマンド実行可否判定処理のステップS150の詳細について説明する。
【0126】
コマンド実行可否判定部150は、先ず、走行中操作可否リスト220を検索し(S1501)、音声データから変換したテキストと走行中操作可否リスト220のコマンド名称221が一致する行があるか否かを検索する(S1502)。なお、この一致判定は、両者の文字列が厳密に一致することを判定の条件としても良いし、いずれか一方の文字列が他方の文字列に含まれる場合を判定の条件としても良いし、あるいは、N−gram等の公知の手法によって2つの文字列の類似度を判定する仕組みとしてもよい。なお、N−gramとは、検索エンジン等で用いられている文字列の類似度を判定する手法であり、複数の文字列において、N個の連続する文字が一致する数をカウントして類似の度合いを判定するものである。
【0127】
以上のような手法によって、変換したテキストとコマンド名称221が一致する行があると判定した場合、走行状態取得部182により走行状態を取得し(S1503)、取得した走行状態を参照して車両が走行中か否かを判定する(S1504)。なお、車両が走行しているか否かは、従来のカーナビは一般的に車両のシステムの車両信号線40から車速パルス等の車両信号を取得しておこなっており、本実施形態における音声認識システムにおいても同様の手法で判定する。
【0128】
そして、車両が走行中であると判定した場合、ステップS1502において検索した行における操作可否223を参照し、走行中に操作可能か否かを判定する(S1505)。
【0129】
操作可能である場合、その行のコマンド識別子222をアプリケーション制御部110に通知する(S1506)。なお、上記のS1504において車両が走行中ではないと判定された場合も同様に、コマンド識別子222をアプリケーション制御部110に通知して処理を完了する。
【0130】
ステップS1502において、変換したテキストと走行中操作可否リスト220のコマンド名称221が一致する行が無い場合、実行可能なコマンドは無いとして終了する(S1507)。また、上記のS1505において走行中の操作は不可であると判定した場合、アプリケーション500が走行中の操作を許可された特別なアプリケーションとして認証されているか否かを判定し(S1509)、認証されたアプリケーションである場合は走行中の操作可否リストの内容に関わらずS1506を実行する。なお、認証済みアプリケーションか否かを識別する手段については、例えば、公開鍵暗号技術に基づくデジタル署名をアプリケーションに付与する等の手段によって実現可能である。アプリケーション500が認証された特別なものでもない場合、ユーザーが発話した内容に対応するコマンドは存在するが走行中は実行できないとして終了する(S1508)。
【0131】
このように、認証済みアプリケーションのときには、コマンドを実行不可としないことにより、例えば、カーナビゲーション対応のアプリケーションなどに関する操作については、常に、車両の走行状態にかかわらず常に実行することができる。
【0132】
次に、
図14を用いて音声操作に関するユーザインタフェースについて説明する。
【0133】
図14(a)に示されるポップアップメッセージ1231は、ステップS1507が実行されて、実行可能なコマンドが無いことをユーザーに通知する場合のメッセージの例である。
【0134】
また、
図14(b)に示されるポップアップメッセージ1232は、ステップS1508が実行されて、ユーザーが発話した内容に対応するコマンドは存在するが走行中は実行できないことをユーザーに通知する場合のメッセージの例を示したものである。
【0135】
いずれのポップアップメッセージも、ユーザーの操作の負担を軽減するために、一定の時間、例えば、10秒程度表示された後には、自動的に閉じられるようにする。
【0136】
次に、
図15および
図16を用いて参照した規制ルールおよび禁止単語リストをポリシー配信サーバから取得する処理について説明する。
【0137】
図15は、本発明の第一の実施形態において、規制ルール230をポリシー配信サーバ300から取得する処理の流れを示すフローチャートである。
【0138】
図16は、禁止単語リスト230aをポリシー配信サーバ300から取得する処理の流れを示すフローチャートである。
【0139】
車載装置100が起動した際、
図15に示されるように、ポリシー情報更新部160は、機器ID取得部184から機器IDを取得する(S1601)。そして、取得した機器IDは、ポリシー情報取得要求270に含めてポリシー配信サーバ300の規制ルール選択部310を経由して地域判定部320に送信される。地域判定部320は、機器情報データベース250を参照し、受信した機器IDと機器情報データベース250の機器ID251が一致する行があるか否かを判定する(S3201)。
【0140】
一致する行がある場合、その行に記載されている地域252を参照して車載装置100が位置する地域を取得する(S3202)。
【0141】
次に、規制ルール取得部330は、規制ルールデータベース230aを参照し、判定した地域用の規制ルール230が存在するか否かを判定する(S3301)。
【0142】
規制ルール230が存在する場合、その規制ルール230を規制ルールデータベース230aから取得し(S3302)、規制ルール選択部310に通知する。
【0143】
一方、ステップS3201において受信した機器IDと一致する行が見つからなかった場合、あるいは、ステップS3301において、判定した地域用の規制ルールが存在しなかった場合、規制ルール選択部310は、デフォルトルールを選択する(S3101)。
【0144】
規制ルール選択部310は、ステップS3302、あるいは、ステップS3101で取得した規制ルール230を、ポリシー情報更新部160に応答する(S3102)。
【0145】
ポリシー情報更新部160は、受信した規制ルール230を、ポリシー情報記録部192により記録して処理を完了する(S1602)。なお、以上の処理では、規制ルールを取得する一連の手順においてエラーが起きた場合は、デフォルトルールを選択しているが、エラーが発生した場合は車載装置100の動作を停止してユーザーに修理を促すようなポップアップメッセージを表示するようにしてもよい。
【0146】
車載装置100が起動した際、
図16に示されるように、ポリシー情報更新部160は、ユーザーID取得部183からユーザーIDを取得する(S1605)。
【0147】
取得したユーザーIDは、ポリシー情報取得要求270に含めてポリシー配信サーバ300の禁止単語リスト選択部340を経由して使用言語判定部350に送信される。
【0148】
使用言語判定部350は、ユーザー情報データベース260を参照し、受信したユーザーIDとユーザー情報データベース260のユーザーID261が一致する行があるか否かを判定する(S3501)。
【0149】
一致する行がある場合、その行に記載されている使用言語262を参照して受信したユーザーIDが示すユーザーの使用言語を判定する(S3502)。
【0150】
次に、禁止単語リスト取得部360は、禁止単語リストデータベース240aを参照し、判定した使用言語で記載された禁止単語リスト240が存在するか否かを判定する(S3601)。
【0151】
禁止単語リスト240が存在する場合、その禁止単語リスト240を禁止単語リストデータベース240aから取得し(S3602)、禁止単語リスト選択部340に通知する。
【0152】
禁止単語リスト選択部340は、取得した禁止単語リスト240を、ポリシー情報更新部160に応答する(S3402)。
【0153】
ポリシー情報更新部160は、受信した禁止単語リスト240を、ポリシー情報記録部192により記録して処理を完了する(S1607)。
【0154】
一方、ステップS3501において受信したユーザーIDに対応するユーザーの使用言語を判定できなかった場合、あるいは、ステップS3601において、判定した使用言語用の禁止単語リストが存在しなかった場合、禁止単語リスト選択部340はポリシー情報更新部160に禁止単語リスト取得エラーを応答する(S3401)。
【0155】
禁止単語リスト取得エラーを受信したポリシー情報更新部160は、画面表示部120にエラーメッセージを表示する(S1606)。
【0156】
次に、
図17を用いて音声操作のためのポリシー情報取得時のユーザインタフェースについて説明する。
図17は、音声操作のためのポリシー情報取得時のポップアップメッセージの例を示す図である。
【0157】
ステップS3401において、禁止単語リストの取得に失敗したことをユーザーに通知する必要がある場合には、
図17のようなポップアップメッセージ1241が表示される。
【0158】
なお、以上の説明では、規制ルール230を選択するために、あらかじめ車載装置100が存在する地域の情報をデータベースに記録しているが、GPS(Global Positioning System)等を用いて車載装置100の現在地座標を取得し、これと地図データを照らし合わせて地域を判定する仕組みとしてもよい。また、この例では、禁止単語リスト240を選択するために、予めユーザーの使用言語をデータベースに記録しているが、ユーザーが車載装置100に設定している使用言語の情報等を参照する仕組みとしてもよい。
【0159】
以上のように、本実施形態の音声操作システムによって、車載装置100上で動作するアプリケーションを音声で操作する際、走行中に実行することが好ましくない操作を制限することが可能となる。また、このような制限をおこなうためのポリシー情報をポリシー情報配信装置から配信する仕組みにすることにより、各国のガイドラインの改訂や、制限したい操作を意味する単語の追加等に柔軟に対応することが可能となる。
【0160】
〔実施形態2〕
以下、本発明の第二の実施形態に係る音声操作システムを、
図18ないし
図21を用いて説明する。
【0161】
本実施形態の音声操作システムは、近年急速に普及しているスマートフォン等の携帯電話端末で実行されるアプリケーションを音声で操作する際、第一の実施形態と同様に走行中に実行することが好ましくない操作の実行を制限するものである。
【0162】
先ず、
図18ないし
図20を用いて本発明の第一の実施形態に係る音声操作システムの構成について説明する。
図18は、本発明の第二の実施形態に係る音声操作システムの全体構成図である。
図19は、携帯電話端末のハードウェア構成図である。
図20は、本発明の第二の実施形態に係る携帯電話端末と車載装置のデータフローと機能構成を示した図である。
【0163】
図18に示すように、本実施形態の音声操作システムは、車両30内に携帯電話端末20が車載装置100aに接続され、携帯電話端末20は、基地局70との無線通信を介して、グローバル網50のポリシー配信サーバ300と通信する。
【0164】
図18に示したその他の構成要素については、
図1と同様である。
【0165】
ここで、携帯電話端末20は、ユーザーが持ち歩くスマートフォン等の携帯電話端末であり、車載装置100aは、カーナビゲーション装置である。
【0166】
次に、
図19を用いて本発明の第二の実施形態に係る携帯電話端末20のハードウェア構成について説明する。
【0167】
図19に示されるように、携帯電話端末20は、ハードウェアとして、APU(Application Processor Unit)80、ベースバンドプロセッサ81、RAM82、フラッシュメモリ83、無線通信インタフェース84、測位センサ85、加速度センサ86、ジャイロセンサ87、表示装置88、操作装置89、機器間通信インタフェース90、カメラ91、マイク92、スピーカ93で構成されている。
【0168】
APU80は、携帯電話端末20の各部を制御し、RAM81上にロードされる音声操作のアプリケーションソフトウェアのプログラムを実行する演算・制御のためのユニットである。
【0169】
ベースバンドプロセッサ81は、携帯電話端末20の通信や通話に関するモジュールを制御するプロセッサである。
【0170】
RAM(Read Access Memory)82は、フラッシュメモリ83に記憶されているプログラムをロードして一時的に保管したり、ワークデータを記憶する記憶装置である。
【0171】
フラッシュメモリ82は、プログラムやデータを格納する不揮発性のメモリである。フラッシュメモリ82は、地
図DB、ポリシー情報280、音声データ、動画データなどの各種データと、音声操作のアプリケーションソフトウェアなどのプログラムを記憶する比較的大容量の記憶装置である。
【0172】
無線通信インタフェース84は、ベースバンドプロセッサ81の信号を無線帯域の高周波信号に変換したり、逆に、無線帯域の高周波信号を、ベースバンドプロセッサ81の信号に変換するためのインタフェース装置である。携帯電話端末20は、無線通信インタフェース83を介して基地局70と通信し、これにより、通話や電子メール、ブラウザによるWebページの閲覧が可能になる。無線帯域は、通常、UHF(ultra high frequency)帯が使われる。
【0173】
測位センサ85は、地球上での緯度および経度で示される自身の位置を測位するためのセンサである。
【0174】
加速度センサ86は、携帯電話端末20の加速度を計測するためのセンサである。これにより、携帯電話端末20の搭載されている車両30の加速度も間接的に計測される。
【0175】
ジャイロセンサ87は、携帯電話端末20の角度や角速度を計測するためのセンサである。これにより、車両30の角度や角速度も間接的に計測される。
【0176】
表示装置88は、液晶ディスプレイや有機EL(Electro−Luminescence)ディスプレイ等のユーザーに画像情報を表示する装置であり、3インチ〜5インチ画面の表示サイズのものが一般に使用されている。
【0177】
操作装置89は、ユーザーが携帯電話端末20を指で操作するボタン、スイッチ、キーボード、タッチパネル等の装置である。
【0178】
機器間通信インタフェース90は、他の装置、例えば、車載装置100aと接続して、データをやり取りするためのインタフェース装置である。接続方式は、USB(Universal Serial Bus)やHDMI(High−Definition Multimedia Interface)等の規格に準拠した有線接続でもよいし、無線LAN(Local Area Network)のIEEE 802.11a/b/g/nやBluetooth(登録商標)等の規格に準拠した無線接続でもよい。
【0179】
カメラ91、携帯電話端末20の周囲を撮影して画像として取り込む光学装置である。
【0180】
マイク92は、ユーザーの発話、または、携帯電話端末20の周囲の音声を収集するための装置である。
【0181】
スピーカ93は、ユーザーに音声により情報を伝えるための装置である。なお、図示しなかったが、音声出力装置として、イヤホーンやヘッドホンなども用いられる。
【0182】
次に、
図20を用いて携帯電話端末20と車載装置100aのデータフローと機能構成について説明する。
【0183】
車載装置100aは、
図20に示されるように、機器ID取得部884、走行状態取得部882、映像受信部885、画面表示部820、および、通信部875を備えている。
【0184】
携帯電話端末20は、
図20に示されるように、アプリケーション制御部110、映像送信部185、走行中操作可否リスト作成部130、走行中操作可否リスト記録部191、音声入力部181、テキスト変換部140、コマンド実行可否判定部150、ユーザーID取得部183、ポリシー情報更新部160、ポリシー情報記録部192、および、通信部170から構成される。
【0185】
ここで、第一の実施形態の車載装置100との構成と比較すると、第一の実施形態の車載装置100が備えていた機器ID取得部184、走行状態取得部182、画面表示部120が無くなり、映像送信部185、走行状態記憶部186、および、車載装置100aと通信をおこなうための通信部175が追加されている。
【0186】
本実施形態の携帯電話端末20に追加された映像送信部185は、実施例1の情報処理装置100が備えていた画面表示部120の代わりに追加しているものであり、第一の実施形態の車載装置100では、画面表示部120により表示装置26に表示していたアプリケーションの画面を、映像データとして車載装置100aに送信するものである。車載装置100aの映像受信部885は、この映像データを受信するものであり、受信した映像データは、画面表示部820により表示装置88に表示される。この映像送信部185および映像受信部885は、例えば、ビデオカメラとテレビをHDMIケーブル等で接続してビデオカメラの出力映像をテレビの画面に表示するなどの技術により、携帯電話端末20(すなわち、スマートフォン)の出力映像を車載装置100a(すなわち、カーナビゲーション装置)の画面に表示するためのものである。
【0187】
本実施形態の携帯電話端末20の走行状態記憶部186は、車載装置100aから定期的に受信する走行状態を記憶するためのものである。
【0188】
本実施形態の車載装置100aが備える機器ID取得部884は、第一の実施形態の車載装置100が備えていた機器ID取得部184と同様の機能を有し、車載装置100aを識別する情報である機器IDを通信部875および通信部175を介してポリシー情報更新部160に通知するためのものである。
【0189】
本実施形態の車載装置100aが備える走行状態取得部882は、第一の実施形態の車載装置100が備えていた走行状態取得部182と同様に、車両の走行状態を取得するものであり、通信部875および通信部175を介して携帯電話端末20の走行状態記憶部186に通知するためのものである。
【0190】
アプリケーション500の操作イメージは、
図8に示した第一の実施形態におけるアプリケーション500と同様である。また、ユーザーがメニュー画面121の動画視聴ボタン1212を押下してアプリケーション500の画面122が表示された際の、情報処理装置100において実行される走行中操作可否リスト220を作成する処理についても、
図9ないし
図11に示した第一の実施形態における車載装置100の処理の流れと同様である。
【0191】
また、ユーザーが画面122の音声操作開始ボタン1214を押下し、音声による操作を実行する処理の流れについても、基本的に
図12ないし
図14に示した第一の実施形態における車載装置100の処理の流れと同様である。ただし、本実施形態においては、
図13のS1503における走行状態の取得は、携帯電話端末20の走行状態記憶部186が記憶している走行状態を参照することによりおこなう。
【0192】
次に、
図21を用いて参照した規制ルールおよび禁止単語リストをポリシー配信サーバから取得する処理について説明する。
図21は、本発明の第二の実施形態において、規制ルール230をポリシー配信サーバ300から取得する処理の流れを示すフローチャートである。
【0193】
基本的な流れは第一の実施形態の
図15で示した処理の流れと同様であるが、
図15において機器IDを取得していたS1601が無くなり、機器IDの取得は、車載装置100aの機器ID取得部884に対して機器ID取得要求を送信し、機器ID取得部884から車載装置100aの機器IDを受信することによりおこなう。以降の処理については、
図15で示した処理の流れと同様である。
【0194】
以上、本実施形態に示されるように、スマートフォンなどの携帯電話端末上で動作するアプリケーションの実行画面をカーナビゲーション装置の画面に表示して使用する形態のシステムにおいても、スマートフォンなどの携帯電話端末のアプリケーションを音声で操作する際に、走行中に実行することが好ましくない操作を制限することが可能となる。
【0195】
〔実施形態3〕
以下、本発明の第三の実施形態に係る音声操作システムを、
図22および
図23を用いて説明する。
図22は、本発明の第三の実施形態に係る音声操作システムの全体構成図である。
図23は、本発明の第三の実施形態に係る携帯電話端末と車載装置のデータフローと機能構成を示した図である。
【0196】
本実施形態の音声操作システムにおいても、第二の実施形態と同様に、近年急速に普及しているスマートフォン等の携帯電話端末で実行されるアプリケーションを音声で操作する際、走行中に実行することが好ましくない操作の実行を制限するものである。ただし、第二の実施形態は、スマートフォン等の携帯電話端末の出力映像をカーナビの画面に表示して使用する形態であるのに対して、本実施形態は、クレードル等を用いてスマートフォンを等の携帯電話端末を運転席に設置して使用する形態を想定したものである。
【0197】
本実施形態に係る音声操作システムの全体構成図も、
図22に示されるように、第二の実施形態と同様、携帯電話端末20aと車載装置100bが、接続された構成であるが、車載装置100bの方が、基地局70を介してポリシー配信サーバと通信をおこなうことが異なっている。
【0198】
以下、第一の実施形態との差異を中心に、本実施形態における携帯電話端末と車載装置のデータフローと機能構成について説明する。
【0199】
本実施形態の全体構成は、
図4に示した第一の実施形態の全体構成と比較して、携帯電話端末20aが追加されている。携帯電話端末20aは、アプリケーション制御部910、画面表示部920、および、車載装置10bと通信をおこなうための通信部977を備えている。
【0200】
一方、車載装置10bは、第一の実施例の車載装置100と比較して、アプリケーション制御部110、画面表示部120が無くなり、携帯電話端末20aと通信をおこなうための通信部177が追加されている。
【0201】
携帯電話端末20aが備えるアプリケーション制御部910、および、画面表示部920は、それぞれ、第一の実施形態の車載装置100におけるアプリケーション制御部110、および、画面表示部120に相当する。すなわち、第一の実施形態との差異は、第一の実施形態におけるアプリケーション制御部110、および画面表示部120を備える装置を、携帯電話端末20aの機能として分離している点である。このように分離した上で、車載装置10bと携帯電話端末20aの間でおこなわれる通信処理、すなわち、アプリケーション制御部910から走行中操作可否リスト作成部130へコマンドリスト210を送信する処理、走行中操作可否リスト作成部130からアプリケーション制御部910へ走行中操作可否リスト220を送信する処理、および、コマンド実行可否判定部150からアプリケーション制御部110へコマンド識別子を送信する処理を、通信部177および通信部977を介しておこなうようにしている。
【0202】
以上、本実施形態に示されるように、スマートフォンなどの携帯電話端末をクレードルによって運転席に設置して使用するような形態においても、アプリケーションを音声で操作する際に、走行中に実行することが好ましくない操作を制限することが可能となる。