(57)【特許請求の範囲】
【請求項１】
音声入力システムと通信可能なコンピュータによって実行される方法であって、
車両の運転者がヘッドアップディスプレイ（ＨＵＤ）を通して視認できる環境内にある対象物の画像を取り込む取得ステップと、
前記対象物を識別する識別ステップと、
前記識別の結果に基づいて、前記音声入力システム向けの音声コマンドであって、前記対象物に関連する音声コマンドを選択する選択ステップと、
前記選択された音声コマンドに基づいて、前記対象物に関連する３Ｄオーバーレイを生成する生成ステップと、
前記ＨＵＤにおいて、前記運転者が視認する前記対象物の近傍に、前記３Ｄオーバーレイを描画する描画ステップと、
を含む方法。
【請求項２】
前記選択ステップでは、前記対象物の現在の状態に起因して、入力が無益となりうる音声コマンドがある場合に、当該音声コマンドを選択から除外する、
請求項１に記載の方法。
【請求項３】
前記対象物に関する詳細情報を取得する情報取得ステップをさらに含む、
請求項２に記載の方法。
【請求項４】
現在時刻を取得する時刻取得ステップをさらに含み、
前記対象物は施設であり、
前記詳細情報は前記施設の営業時間を含む、
請求項３に記載の方法。
【請求項５】
前記詳細情報および現在時刻に基づいて、前記施設が営業しているか否かを判定するステップをさらに含む、
請求項４に記載の方法。
【請求項６】
前記音声コマンドは、前記施設への架電を要求するコマンドであり、
前記３Ｄオーバーレイは、前記運転者が前記施設に架電可能であることを示す、
請求項５に記載の方法。
【請求項７】
前記音声コマンドは、前記対象物に関する情報を要求するコマンドであり、
前記３Ｄオーバーレイは、前記運転者が前記対象物に関する情報を要求可能であることを示す、
請求項３から６のいずれかに記載の方法。
【請求項８】
現在位置の天気を表す気象データを取得するステップをさらに含む、
請求項１から７のいずれかに記載の方法。
【請求項９】
前記対象物は屋外施設であり、
前記気象データに基づいて、前記屋外施設の状況を判定する、
請求項８に記載の方法。
【請求項１０】
前記対象物は駐車スペースであり、
前記音声コマンドは、車両に対して自動運転による入庫を要求するコマンドであり、
前記３Ｄオーバーレイは、前記駐車スペースにおいて自動運転による入庫が要求可能であることを示す、
請求項１に記載の方法。
【請求項１１】
音声入力システムと通信可能なコンピュータによって実行される方法であって、
車両の運転者がヘッドアップディスプレイ（ＨＵＤ）を通して視認できる環境内にある駐車スペースの画像を取り込む取得ステップと、
前記駐車スペースに設置された標識を識別する識別ステップと、
前記識別の結果に基づいて、前記駐車スペースの駐車規則を判定する第一の判定ステップと、
前記駐車規則に基づいて、前記駐車スペースに駐車が可能であるか否かを判定する第二の判定ステップと、
前記駐車スペースに駐車可能である旨を示す３Ｄオーバーレイを生成する生成ステップと、
前記ＨＵＤにおいて、前記運転者が視認する前記駐車スペースの近傍に、前記３Ｄオーバーレイを描画する描画ステップと、
を含む方法。
【請求項１２】
現在時刻を取得するステップをさらに含み、
前記駐車規則は、時刻によって駐車の可否が変わるものであり、
前記第二の判定ステップでは、前記現在時刻を用いて判定を行う、
請求項１１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、車両の三次元ヘッドアップディスプレイ装置（３Ｄ−ＨＵＤ）向けの三次元（３Ｄ）オーバーレイ技術に関する。
【背景技術】
【０００２】
（関連出願への相互参照）
本出願は、"THREE DIMENSIONAL HEADS-UP DISPLAY UNIT INCLUDING VISUAL CONTEXT FOR VOICE COMMANDS"と題し、２０１６年３月２４日に出願された米国特許出願第１５／０
８０，３９４号の優先権を主張する。当該出願は、その全体が本明細書中に参照として組み込まれる。
【０００３】
ヘッドアップディスプレイ装置（ＨＵＤ）を搭載した車両がある。また、車両には音声コマンドシステムを搭載することができる。例えば、車両のナビゲーションシステムは、車両の運転者が「ガソリンスタンドまで案内して」と言った場合に、ナビゲーションシステムが車両の現在位置から最も近くのガソリンスタンドまでの経路を検索するように、音声コマンドシステムによって動作することができる。また、他の車両システムも、音声コマンドシステムによって動作することができる。
【発明の概要】
【０００４】
本明細書には、車両の３Ｄ−ＨＵＤを用いて、車両の運転者が利用できる音声コマンドに対応した視覚コンテキストを提供するシステムおよび方法を含む実装形態が開示される。
【０００５】
本明細書に記載される視覚コンテキストアプリケーションは、３Ｄ−ＨＵＤを通して運転者に見えるオブジェクトに対応する１つ以上の３Ｄオーバーレイを提供する。例えば、運転者が車両の３Ｄ−ＨＵＤを通して見ると、店舗および駐車スペースの案内板が見える。また運転者には、運転者が店舗に関する詳細情報を要求するために車両の音声コマンドシステムに音声コマンド（例えば、「営業時間は？」「販売している製品やサービスは？」）を提供することができることを示す、店舗の案内板の近くに表示された３Ｄオーバーレイが見える。また、３Ｄ−ＨＵＤには、運転者が車両を駐車スペースに自動駐車させる音声コマンドを提供することができることを示す、駐車スペースの近くの３Ｄオーバーレイも表示される。
【０００６】
３Ｄオーバーレイとは、３Ｄ−ＨＵＤによって表示された三次元（本明細書では「３Ｄ」と表記）グラフィック画像である。したがって、本明細書に記載される各３Ｄオーバーレイは、３Ｄ−ＨＵＤにより三次元で表示される。
【０００７】
３Ｄ−ＨＵＤを通して見ることのできるオブジェクトとは、車両に搭載されたカメラによって取り込まれた画像に含まれる何らかの物体（車両、標識、建物、建造物等）である。カメラは、車両環境の画像を取り込むように構成される。車両環境は、車両の周辺環境である。車両環境内のオブジェクトには、例えば、目的地（例えば図３および図５参照）、駐車スペース（例えば図４参照）、駐車案内板（例えば図４参照）、追従対象である別の車両（例えば図６参照）、および車両環境内の任意の他のオブジェクトのうちの１つ以上が含まれうる。
【０００８】
１つまたは複数のコンピュータのシステムを、動作に際してシステムに特定の操作また
は動作を行わせるソフトウェア、ファームウェア、ハードウェア、またはそれらの組み合わせをシステム上にインストールすることによってそれらの動作を行うように構成することができる。１つまたは複数のコンピュータプログラムを、データ処理装置によって実行されると装置に特定の操作または動作を行わせる命令を含むことによってそれらの動作を行うように構成することができる。
【０００９】
１つの一般的態様は、音声入力システムと通信可能なコンピュータによって実行される方法であって、車両の運転者がヘッドアップディスプレイ（ＨＵＤ）を通して視認できる環境内にある対象物の画像を取り込む取得ステップと、前記対象物を識別する識別ステップと、前記識別の結果に基づいて、前記音声入力システム向けの音声コマンドであって、前記対象物に関連する音声コマンドを選択する選択ステップと、前記選択された音声コマンドに基づいて、前記対象物に関連する３Ｄオーバーレイを生成する生成ステップと、前記ＨＵＤにおいて、前記運転者が視認する前記対象物の近傍に、前記３Ｄオーバーレイを描画する描画ステップと、を含む方法を含む。
本態様の他の実施形態は、対応するコンピュータシステム、装置、および方法の動作を行うように各々構成された１台または複数のコンピュータ記憶装置上に記録されたコンピュータプログラムを含む。
【００１０】
各実装形態は、以下の特徴のうちの１つまたは複数を含むことができる。
例えば、前記選択ステップでは、前記対象物の現在の状態に起因して、入力が無益となりうる音声コマンドがある場合に、当該音声コマンドを選択から除外することを特徴としてもよい。
また、前記対象物に関する詳細情報を取得する情報取得ステップをさらに含むことを特徴としてもよい。
また、現在時刻を取得する時刻取得ステップをさらに含み、前記対象物は施設であり、前記詳細情報は前記施設の営業時間を含むことを特徴としてもよい。
また、前記詳細情報および現在時刻に基づいて、前記施設が営業しているか否かを判定するステップをさらに含むことを特徴としてもよい。
また、前記音声コマンドは、前記施設への架電を要求するコマンドであり、前記３Ｄオーバーレイは、前記運転者が前記施設に架電可能であることを示すことを特徴としてもよい。
また、前記音声コマンドは、前記対象物に関する情報を要求するコマンドであり、前記３Ｄオーバーレイは、前記運転者が前記対象物に関する情報を要求可能であることを示すことを特徴としてもよい。
また、現在位置の天気を表す気象データを取得するステップをさらに含むことを特徴としてもよい。
また、前記対象物は屋外施設であり、前記気象データに基づいて、前記屋外施設の状況を判定することを特徴としてもよい。
また、前記対象物は駐車スペースであり、前記音声コマンドは、車両に対して自動運転による入庫を要求するコマンドであり、前記３Ｄオーバーレイは、前記駐車スペースにおいて自動運転による入庫が要求可能であることを示すことを特徴としてもよい。
前述の技法の実装形態は、ハードウェア、方法もしくはプロセス、またはコンピュータアクセス可能媒体上のコンピュータソフトウェアを含むことができる。
【００１１】
１つの一般的態様は、音声入力システムと通信可能なコンピュータによって実行される方法であって、車両の運転者がヘッドアップディスプレイ（ＨＵＤ）を通して視認できる環境内にある駐車スペースの画像を取り込む取得ステップと、前記駐車スペースに設置された標識を識別する識別ステップと、前記識別の結果に基づいて、前記駐車スペースの駐車規則を判定する第一の判定ステップと、前記駐車規則に基づいて、前記駐車スペースに駐車が可能であるか否かを判定する第二の判定ステップと、前記駐車スペースに駐車可能
である旨を示す３Ｄオーバーレイを生成する生成ステップと、前記ＨＵＤにおいて、前記運転者が視認する前記駐車スペースの近傍に、前記３Ｄオーバーレイを描画する描画ステップと、を含む方法を含む。
本態様の他の実施形態は、対応するコンピュータシステム、装置、および方法の動作を行うように各々構成された１台または複数のコンピュータ記憶装置上に記録されたコンピュータプログラムを含む。
【００１２】
各実装形態は、以下の特徴のうちの１つまたは複数を含むことができる。
例えば、現在時刻を取得するステップをさらに含み、前記駐車規則は、時刻によって駐車の可否が変わるものであり、前記第二の判定ステップでは、前記現在時刻を用いて判定を行うことを特徴としてもよい。
前述の技法の実装形態は、ハードウェア、方法もしくはプロセス、またはコンピュータアクセス可能媒体上のコンピュータソフトウェアを含むことができる。
【００１３】
本開示は、限定のためではなく例として、添付の図面の各図に示されており、図面において類似した参照符号は類似した要素を指すのに用いられている。
【図面の簡単な説明】
【００１４】
【図１】視覚コンテキストアプリケーションのための動作環境の例を示すブロック図である。
【図２Ａ】視覚コンテキストアプリケーションを含むコンピュータシステムの例を示すブロック図である。
【図２Ｂ】３Ｄ−ＨＵＤを示すブロック図である。
【図３】３Ｄ−ＨＵＤにおいて表示される３Ｄオーバーレイのグラフィック例である。
【図４】３Ｄ−ＨＵＤにおいて表示される３Ｄオーバーレイのグラフィック例である。
【図５】３Ｄ−ＨＵＤにおいて表示される３Ｄオーバーレイのグラフィック例である。
【図６】３Ｄ−ＨＵＤにおいて表示される３Ｄオーバーレイのグラフィック例である。
【図７Ａ】音声コマンドに対応した視覚コンテキストを提供するために３Ｄ−ＨＵＤにおいて３Ｄオーバーレイを表示する方法例のフローチャートである。
【図７Ｂ】音声コマンドに対応した視覚コンテキストを提供するために３Ｄ−ＨＵＤにおいて３Ｄオーバーレイを表示する方法例のフローチャートである。
【発明を実施するための形態】
【００１５】
ヘッドアップディスプレイ装置（ＨＵＤ）を搭載した車両がある。また、車両には音声コマンドシステムを搭載することができる。例えば、車両のナビゲーションシステムは、車両の運転者が「ガソリンスタンドまでの経路案内」と言った場合に、ナビゲーションシステムが車両の現在位置から最も近くのガソリンスタンドまでの経路を検索するように、音声コマンドシステムによって動作することができる。経路案内は、車両のオーディオシステムを介して運転者に提供され、または車両のヘッドユニットに表示されうる。
【００１６】
他の車両システムも、音声コマンドシステムによる動作が可能である。例えば、インフォテインメントシステム、インフォテインメントシステムのブラウザ、電子パーソナルアシスタント、音声通話を行うための通話機能、自動駐車システムなど、のうちの１つ以上を音声コマンドシステムによって動作させることができる。
【００１７】
本明細書に記載される視覚コンテキストアプリケーションは、車両の３Ｄ−ＨＵＤ（例
えば図２Ｂ参照）において、車両の運転者が利用できる音声コマンドに関する視覚コンテキストを表示する。視覚コンテキストアプリケーションは、音声コマンドシステムの使い勝手を改善するため有利である。というのは、車両のヘッドユニットに、利用可能なコマンドのリストを列挙しなくても、どんな音声コマンドが現在利用できるかを運転者が把握できるからである。３Ｄ−ＨＵＤを用いて視覚コンテキストを提供することにより、所与のコマンドに複数の可能なターゲットがあることによって生じる曖昧さの可能性が取り除かれる。
【００１８】
目下のところ、本明細書に記載される視覚コンテキストアプリケーションによって提供される機能を提供する先行技術はない。
【００１９】
第１に、３Ｄ−ＨＵＤを用いて音声コマンドに関する視覚コンテキストを提供する既存の技術がない。
【００２０】
第２に、視覚コンテキストアプリケーションは、有利なことに、車両環境に基づいて、運転者が利用できる音声コマンドのリストを編集し、次いで、編集されたリストを３Ｄ−ＨＵＤ上で運転者に見えるように表示する。車両がおかれている環境を検出し、現在の環境に基づいて、運転者と関連性を有する音声コマンドのみを提供するように、利用可能なコマンドのリストを編集するという他の解決策はない。
【００２１】
第３に、視覚コンテキストアプリケーションは、利用できる音声コマンドを、３Ｄ−ＨＵＤ上において、関連したオブジェクトの近くに（３Ｄ−ＨＵＤ内に）３Ｄオーバーレイとして表示する。
例えば、音声コマンドのうちの１つが、店舗の詳細情報を取得するコマンドである場合、この音声コマンドに対応するグラフィックオーバーレイは「情報を取得」という内容となり、３Ｄ−ＨＵＤに表示された当該店舗の看板の近くに表示させる。
コマンド「情報を取得」が用いられうる、相互に近接した複数の店舗が存在する場合もある。例えば図３を参照されたい。３Ｄ−ＨＵＤをこのように用いると、オーバーレイによって生じる曖昧さが取り除かれる。というのは、３Ｄ−ＨＵＤ技術によって、運転者から適切な距離のところに視覚的なサインを配置することができるからである。３Ｄ−ＨＵＤを用いて、利用できる音声コマンドの視覚指示（例えば３Ｄオーバーレイ）を提供する一方で、３Ｄオーバーレイが、関連するオブジェクトの近くに表示されるように３Ｄ−ＨＵＤの画面において３Ｄオーバーレイの描画を行う技術は他には無い。
【００２２】
本明細書に記載される視覚コンテキストアプリケーションは、車両の３Ｄ−ＨＵＤを用いて、車両の運転者が利用できる音声コマンドに対応する視覚コンテキストを提供するシステムおよび方法を含むことができる。視覚コンテキストは、３Ｄ−ＨＵＤの画面上に表示される３Ｄオーバーレイを含む。
【００２３】
いくつかの実装形態において、表示されるグラフィックオーバーレイは、３Ｄ−ＨＵＤを介して車両の運転者が視認できる何らかのオブジェクトと関連している。例えば、オブジェクトは、店舗、駐車スペース、関心地点、公共施設（公園、遊園地、病院、警察署など）、車道上の別の車両、または環境内にある任意の他のオブジェクトなどである。
【００２４】
いくつかの実装形態において、視覚コンテキストアプリケーションは、オブジェクトを特定し、現在時刻、車両位置および条件が与えられた場合に、当該オブジェクトが車両の運転者とどのような関連性を有するか判定する（例えば、店舗が閉まっている場合、運転者と店舗は関連性を有しない。オブジェクトが公園や遊園地であるが気象条件が悪い場合、運転者とオブジェクトは関連性を有しない。オブジェクトが駐車スペースであるが、駐車が許容される時間帯でない場合、運転者とオブジェクトは関連性を有しない）。
【００２５】
いくつかの実装形態において、視覚コンテキストアプリケーションは、オブジェクト識別情報が与えられた場合に、利用できる音声コマンドのうちのどれがオブジェクトおよび運転者と関連性を有するか判定する（例えば、オブジェクトが店舗である場合、「ラジオの音量を上げて」という音声コマンドはオブジェクトと関連性を有しないが、「店に電話をかけて」という音声コマンド、または、「店の情報を見せて」という音声コマンドは関連性を有する）。このステップは、３Ｄ−ＨＵＤにおいて運転者が視認でき、特定されたオブジェクトの各々について繰り返される。
【００２６】
いくつかの実装形態において、オブジェクトの運転者との関連性は、先に提供されたユーザ入力に基づいて判定できる。ユーザ入力は、ウェブインターフェース、スマートフォンアプリケーション、または車両のヘッドユニットを介して提供されてもよい。運転者は、どのオブジェクト／音声コマンドのペアが運転者と関連性を有するかに関してシステムを訓練するために、システムに音声入力を提供することができてもよい。
【００２７】
いくつかの実装形態において、視覚コンテキストアプリケーションは、３Ｄ−ＨＵＤにおいてオブジェクトの近くに表示するためのグラフィックを生成する。グラフィックは、どの音声コマンドが特定のオブジェクトに対して利用できるかを記述する。グラフィックは、運転者の注意をそらさないように工夫して設計されたグラフィックオーバーレイまたは３Ｄオーバーレイとすることができる。またグラフィックは、背後の道路および交通が運転者に見えるように半透明とすることもできる。
【００２８】
いくつかの実装形態において、視覚コンテキストアプリケーションは、どの音声コマンドがオブジェクトに利用できるかが運転者にわかるように、オブジェクトに近接して３Ｄ−ＨＵＤ上にグラフィックを描画する。関連性を有する複数のオブジェクトがある場合、システムは視覚グラフィックを運転者にとって適切な距離のところに配置する。
なお、本明細書において、「運転者とオブジェクトが関連性を有する」とは、当該オブジェクトに対する運転者の音声インタラクションが有益であることを意味する。すなわち、オブジェクトに対して音声コマンドを介して行うインタラクション（例えば電話をかける動作）が無益である（例えば店が営業時間外である）場合、当該音声コマンドは選択されず、対応するグラフィックも出力されない。
【００２９】
いくつかの実装形態において、視覚コンテキストアプリケーションは、グラフィックが運転者の注意をそらし、または安全リスクをもたらすことになるかどうか事前に判定し、安全リスクをもたらすと判定される特定のグラフィックの描画を選択的に抑制してもよい。例えば、２つのグラフィックが描画されることになっており、１つのグラフィックは運転者の対面交通の視界を見えにくくし、他方のグラフィックはそうではない場合、本発明は、運転者の交通の視界を見えにくくしないグラフィックのみを描画する。
【００３０】
いくつかの実装形態において、視覚コンテキストアプリケーションは音声コマンドを提供するために運転者の声を聴き取ることができる。音声コマンドが与えられた場合、視覚コンテキストアプリケーションは当該音声コマンドに基づいて処理を行う。
【００３１】
車両環境は、車両の周辺領域を含む。車両環境は、以下のうちの１つ以上を含むことができる。
車両自体、他の車両、１つまたは複数の店舗、１つまたは複数の公共駐車スペース、１つまたは複数の駐車場、１つまたは複数のレクリエーションエリア（公園、ビーチ、登山道）、１つまたは複数の緊急サービス（病院、警察署など）、１つまたは複数の関心地点（旅行目的地、ランドマーク、流行の場所、友人が所在する場所）など
【００３２】
車両は、車両環境内に存在するシーンの画像を取り込むために車両に搭載された外部カメラを含む。外部カメラは視覚コンテキストアプリケーションに通信可能に結合する。視覚コンテキストアプリケーションは外部カメラの動作を制御するように動作する。
【００３３】
いくつかの実装形態において、視覚コンテキストアプリケーションは、カメラに車両環境内のオブジェクトのうちの１つまたは複数の画像を取り込ませるようにカメラを操作する。画像は、現時点において３Ｄ−ＨＵＤを介して運転者が見ることのできる車両環境内のシーンを含む。
【００３４】
車両は全地球測位システム（ＧＰＳ）ユニットを含むことができる。視覚コンテキストアプリケーションは、ＧＰＳユニットに通信可能に結合する。視覚コンテキストアプリケーションは、ＧＰＳユニットの動作を制御するように動作する。
【００３５】
いくつかの実装形態において、視覚コンテキストアプリケーションは車両のＧＰＳ座標を取得する。
【００３６】
車両は通信ユニットを含む。通信ユニットはネットワークに通信可能に結合する。通信ユニットはネットワークを介して１つまたは複数のサービスからデータを検索し、またはそれ以外の方法で受け取る。サービスには、ソーシャル・ネットワーク・サービス、ディレクトリサービス、地図サービスおよび気象サービスなどが含まれうる。ソーシャル・ネットワーク・サービスは、１つまたは複数のソーシャルネットワークを提供することができる。ディレクトリサービスは、１つまたは複数の目的地（例えば、店舗、レクリエーションエリア、関心地点、ランドマークなど）を表すデータを提供する。気象サービスは、現在の天気または天気予報を表す情報を提供する。
【００３７】
いくつかの実装形態において、視覚コンテキストアプリケーションは、ＧＰＳ座標で示される地域の近くの１つまたは複数の店舗、公園、ビーチおよび関心地点のディレクトリデータを検索することができる。
【００３８】
いくつかの実装形態において、視覚コンテキストアプリケーションは、画像に存在するオブジェクトを特定するために１つまたは複数の画像を解析する。視覚コンテキストは、オブジェクト事前情報を用いて、画像に含まれる目的地（例えば、候補の店舗、駐車スペースおよび他のオブジェクト）を特定することができる。ディレクトリデータは次いで、目的地の名称をさらに特定するのに用いることができる。
【００３９】
いくつかの実装形態において、視覚コンテキストアプリケーションは、ＧＰＳ座標で示される地域の気象データを検索することができる。
【００４０】
いくつかの実装形態において、視覚コンテキストアプリケーションは運転者のソーシャルデータを検索することができる。
【００４１】
いくつかの実装形態において、視覚コンテキストアプリケーションは、現在時刻および曜日を表す時間データを取得することができる。
【００４２】
いくつかの実装形態においては、画像に含まれる特定されたオブジェクトごとに、視覚コンテキストアプリケーションは、現在時刻、今日の日付、車両位置、および他の条件（気象条件、ソーシャルメディア条件など）のうちの１つまたは複数が与えられた場合に、オブジェクトが運転者とどのように関連性を有するか判定する。
例えば、オブジェクトが、閉まっている店舗である場合、運転者とオブジェクトは関連性を有しない。オブジェクトが公園や遊園地であるが気象条件が悪い場合、運転者とオブ
ジェクトは関連性を有しない。オブジェクトが駐車スペースであるが、駐車が許容される時間帯でない場合、運転者とオブジェクトは関連性を有しない。
【００４３】
車両は音声コマンドシステムを含む。音声コマンドシステムは音声コマンドセットを含む。音声コマンドシステムは、音声コマンドの取得に基づいて、１つまたは複数の車両機能を制御するように動作する。例えば、運転者が「駐車スペースに駐車」と言った場合、音声コマンドシステムは、車両の自動駐車システムに、目標の駐車スペースに駐車させるように動作することができる。
【００４４】
上記の例では、音声コマンドは、ターゲットと関連性を有する（すなわち、音声コマンドのターゲットは駐車スペース）ものであった。しかし、音声コマンドシステムは、ターゲットと関連性を有しない他の音声コマンドを含む。例えば、音声コマンドシステムは、駐車スペースを含むターゲットと関連性を有しない、「ラジオの音量を上げて」といった音声コマンドを含みうる。
【００４５】
いくつかの実装形態において、視覚コンテキストアプリケーションは、オブジェクト識別情報が与えられた場合に、利用できる音声コマンドのうちのどれが画像内の特定されたオブジェクトおよび運転者と関連性を有するか判定する（例えば、オブジェクトが店舗である場合には、「ラジオの音量を上げて」という音声コマンドはオブジェクトと関連性を有しない。しかし、「店に電話をかけて」という音声コマンドは関連性を有する。別の関連性を有する音声コマンドとして、例えば、店舗に関する情報を要求するものがある）。このステップは、３Ｄ−ＨＵＤにおいて運転者が視認でき、特定されたオブジェクトの各々について繰り返されうる。
【００４６】
いくつかの実装形態において、視覚コンテキストアプリケーションは、３Ｄ−ＨＵＤにおいてオブジェクトの近くに表示するためのグラフィックを生成する。
【００４７】
いくつかの実装形態において、視覚コンテキストアプリケーションは、どの音声コマンドがオブジェクトに利用できるかが運転者にわかるように、オブジェクトのセンサ座標を運転者の視点座標に変換し、対象オブジェクトに近接して３Ｄ−ＨＵＤ上にグラフィックを描画することができる。
【００４８】
いくつかの実装形態においては、閉まっている店舗について、視覚コンテキストアプリケーションは、運転者に店舗の名称および（店舗が閉まっていることを示す）営業時間を知らせる、３Ｄ−ＨＵＤ上のグラフィックを描画することができる。
【００４９】
いくつかの実装形態において、視覚コンテキストアプリケーションは、グラフィックが運転者の注意をそらし、または安全リスクをもたらすことになるかどうか事前に判定し、安全リスクをもたらす場合、特定のグラフィックの描画を選択的に抑制してもよい。例えば、２つのグラフィックが描画されることになっており、１つのグラフィックは運転者の対面交通の視界を見えにくくし、他方のグラフィックはそうではない場合、本発明は、運転者の交通の視界を見えにくくしないグラフィックのみを描画する。
【００５０】
いくつかの実装形態において、視覚コンテキストアプリケーションは音声コマンドを提供するために運転者の声を聴き取ることができる。音声コマンドが与えられた場合、視覚コンテキストアプリケーションは音声コマンドに基づいて処理を行う。例えば、視覚コンテキストアプリケーションは、音声コマンドシステムに、音声コマンドに従った処理を行わせるように動作することができる。
【００５１】
視覚コンテキストアプリケーションは、音声コマンドに加えて、運転者がハンドルに付
いたボタンを押すことや車両のインフォテインメントシステムといった他の種類のコマンドと協働して動作してもよい。
【００５２】
（システム概要）
図１は、いくつかの実装形態による視覚コンテキストアプリケーション１９９のための動作環境例１００を示すブロック図である。
【００５３】
動作環境１００は、車両１０３と、ソーシャル・ネットワーク・サーバ１０１と、ディレクトリサーバ１３０と、地図サーバ１９０と、気象サーバ１７０と、車両環境１９８とを含む。車両１０３は信号線１２２を介して運転者１２５によってアクセスされる。図示の実装形態において、動作環境１００のこれらのエンティティはネットワーク１０５を介して通信可能に結合されうる。動作環境１００は、例えば、交通データを提供するための交通サーバ、インフォテインメントコンテンツを提供するためのコンテンツサーバ、インターネットプロトコル上の音声（ＶｏＩＰ）サービスを提供するためのＶｏＩＰサーバ、電力利用サービス（例えば、課金サービス）を提供するための電力サービスサーバなどを含む、図１に示されていない他のサーバまたはデバイスも含むことができる。
【００５４】
図１の車両１０３は例として用いられる。図１には、１台の車両１０３が示されているが、本開示は、１台または複数の車両１０３を有するシステムアーキテクチャに適用できる。さらに、図１には、車両１０３、ソーシャル・ネットワーク・サーバ１０１、ディレクトリサーバ１３０、地図サーバ１９０および気象サーバ１７０に結合された１つのネットワーク１０５が示されているが、実際には、これらのエンティティに１つまたは複数のネットワーク１０５を接続することができる。図１は１つのソーシャル・ネットワーク・サーバ１０１、１つのディレクトリサーバ１３０、１つの地図サーバ１９０および１つの気象サーバ１７０を含むが、動作環境１００は、１つまたは複数のソーシャル・ネットワーク・サーバ１０１、１つまたは複数のディレクトリサーバ１３０、１つまたは複数の地図サーバ１９０および１つまたは複数の気象サーバ１７０を含むこともできる。
【００５５】
ネットワーク１０５は従来型の有線または無線とすることができ、スター型構成、トークンリング構成、または他の構成を含む多くの異なる構成を有しうる。さらに、ネットワーク１０５は、ローカル・エリア・ネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）（例えばインターネット）、または、複数のデバイスが通信するための他の相互接続データパスを含むことができる。いくつかの実装形態において、ネットワーク１０５はピア・ツー・ピア・ネットワークとすることができる。またネットワーク１０５は、多種多様な通信プロトコルでデータを送るための電気通信ネットワークの各部分に結合され、またはこれらを含んでいてもよい。いくつかの実装形態において、ネットワーク１０５は、ショート・メッセージ・サービス（ＳＭＳ）、マルチメディア・メッセージング・サービス（ＭＭＳ）、ハイパーテキスト転送プロトコル（ＨＴＴＰ）、直接データ接続、ＷＡＰ、電子メールなどによるものを含む、データを送受信するためのＢｌｕｅｔｏｏｔｈ（登録商標）通信ネットワークまたはセルラ通信ネットワークを含む。いくつかの実装形態において、ネットワーク１０５は、車両１０３にＧＰＳナビゲーションを提供するためのＧＰＳ衛星を含むことができる。ネットワーク１０５は、３Ｇ、４Ｇ、ＬＴＥ、ボイスオーバＬＴＥ（ＶｏＬＴＥ）、狭域通信（ＤＳＲＣ）、ミリ波通信（ｍｍＷａｖｅ通信）、または任意の他のモバイル・データ・ネットワークもしくはモバイル・データ・ネットワークの組み合わせといったモバイル・データ・ネットワークとすることができる。
【００５６】
いくつかの実装形態において、動作環境１００は、車両１０３の地理的位置を表すＧＰＳ位置データを提供するためのＧＰＳ衛星を含むことができる。ＧＰＳ位置データは、車両１０３のＧＰＳ座標を含む。このデータは、図２Ａに関連して後述するＧＰＳデータ２９５として記憶される。
【００５７】
いくつかの実装形態において、車両１０３は、車両１０３の位置を車線レベルの精度で表すＧＰＳデータを提供するように動作するＤＳＲＣ準拠のＧＰＳユニットを搭載している。ＤＳＲＣ規格は、ＧＰＳデータが、車両がどの車線を走行しているか特定するのに十分なほど高精度である。ＤＳＲＣ準拠のＧＰＳユニットは、その二次元位置を、１．５メートル（１シグマ）以内で特定し、モニタし、追跡できる。
言い換えると、車両１０３の実際の位置を、ＤＳＲＣ準拠のＧＰＳユニットによって生成されたＧＰＳデータが表す位置と比較したときに、ＧＰＳデータに基づく位置が、車両１０３の実際の位置の１．５メートル以内にある確率が少なくとも６８％となる。
各車線および車両は、典型的には幅３メートル未満であるため、ＧＰＳデータの二次元誤差が１．５メートル以下であるときは常に、本明細書に記載される車両１０３は、ＧＰＳデータを解析し、１．５メートル以内までの精度を有する車両１０３の位置を知ることができる。
【００５８】
いくつかの実装形態において、視覚コンテキストアプリケーション１９９は、車両１０３上で動作することができる。車両１０３は、電池システムを備える移動式クライアントデバイスとすることもできる。例えば、車両１０３は、自動車、トラック、乗用車、バス、トレーラトラック、スポーツ・ユーティリティ・ビークル、自律型車両、半自律型車両、ドローン、バイオニックインプラント、または非一時的コンピュータ電子機器および電池システムを含む任意の他の移動式システムのうちの１つであってもよい。いくつかの実装形態において、車両１０３は、メモリとプロセッサとを含むコンピューティングデバイスを含むことができる。図示の実装形態において、車両１０３は信号線１０８を介してネットワーク１０５に通信可能に結合されている。
【００５９】
いくつかの実装形態において、車両１０３は、ナビゲーションセンサ（例えば、全地球測位システム（ＧＰＳ）センサ）、赤外線検知器、カメラ、動き検知器、サーモスタット、音検知器、１台または複数のカメラ、および任意の他の種類のセンサといった、１台または複数のセンサ（例えば、図２Ａに示すセンサ群２３３）を含むことができる。例えば、車両１０３は、現在時刻、位置（例えば、緯度／経度、および標高）、車両の加速度、車両の速度、燃料レベル、および車両の電池レベルなどのうちの１つまたは複数を測定するためのセンサを含む。センサは、３Ｄ−ＨＵＤを通して運転者１２５が視認できるオブジェクト、運転者１２５、運転者１２５の目または視線、車両１０３に含まれる３Ｄ−ＨＵＤ（例えば、図２Ａおよび図２Ｂに示す３Ｄ−ＨＵＤ）の画像を取り込むことができる。センサは、車両１０３と、３Ｄ−ＨＵＤを通して運転者１２５が見ることのできるオブジェクトとの距離を求めるように構成されたＬＩＤＡＲセンサまたは距離計を含むことができる。センサは、非一時的メモリに記憶されるセンサデータ（例えば、図２Ａに示すセンサデータ２９３）を作成し、または生成するのに用いることができる。
【００６０】
いくつかの実装形態において、車両１０３は、３Ｄ−ＨＵＤを通して（または３Ｄ−ＨＵＤを）運転者１２５が視認できるものを表す１つまたは複数の画像を取り込むために車両１０３に搭載された１台または複数のカメラを含むことができる。例えば、画像は、（１）３Ｄ−ＨＵＤを通して見たときに運転者１２５に見える実世界、および（２）３Ｄ−ＨＵＤを通して見たときに運転者１２５に見えるグラフィックオーバーレイ、のうちの１つまたは複数である。
【００６１】
いくつかの実装形態において、車両１０３は１台または複数の外部カメラ１０４を含むことができる。外部カメラ１０４は１台または複数のディジタルカメラを含むことができる。外部カメラ１０４は車両環境１９８の画像を取り込むことができる。
【００６２】
車両環境１９８は、（車両１０３の走行有無にかかわらず）車両１０３が位置する環境
を含む。車両環境１９８は、運転者１２５または外部カメラ１０４が見ることのできる外界の部分に限定することができる。車両環境１９８は、以下のオブジェクトのうちの１つまたは複数を含むことができる。
車両１０３、他の車両、一つまたは複数の店舗、１つまたは複数の公共駐車スペース、１つまたは複数の駐車場、１つまたは複数のレクリエーションエリア（例えば、公園、ビーチ、登山口など）、１つまたは複数の関心地点（例えば、旅行目的地、ランドマーク、流行の場所、運転者の友人が所在する場所、運転者の友人がソーシャルネットワーク上でチェックインしたことのある場所など）
車両環境１９８は、車道および１つまたは複数の交通管理機器も含むことができる。例えば、車両環境１９８は、交通標識、交通信号、駐車案内板などを含んでもよい。車両環境１９８は、車道上に位置しうる、または車道から見えうる任意のオブジェクトを含むことができる。
【００６３】
外部カメラ１０４は、車両環境内のシーンの画像を取り込むことができる。各シーンは１つまたは複数のオブジェクトを含む。画像は、図２Ａに関連して後述するセンサデータ２９３の一部として記憶することができる。視覚コンテキストアプリケーション１９９は、オブジェクト事前情報セット（例えば、図２Ａに関連して後述する画像認識データ２９９）を含む。オブジェクト事前情報とは、１つまたは複数の画像内の１つまたは複数のオブジェクトを識別するのに用いられる事前情報である。視覚コンテキストアプリケーション１９９は、オブジェクト事前情報セットに一部基づいて、画像に含まれるオブジェクトを識別するために画像を解析することができる。
【００６４】
車両１０３は音声コマンドシステムおよび３Ｄ−ＨＵＤを含むことができる。１つまたは複数の画像に含まれるオブジェクトは、３Ｄ−ＨＵＤにおいても見ることができる。音声コマンドシステムは、１つまたは複数のオブジェクトと関連性を有する１つまたは複数の音声コマンドを含むことができる。例えば、オブジェクトが店舗であるものと仮定する。また、音声コマンドシステムは音声コマンドのメニューを含むことができる。これらの音声コマンドの中には店舗と関連性を有するものもあり、関連性を有しないものもある。例えば、車両に含まれるラジオの「音量を上げて」という音声コマンドは店舗と関連性を有しないが、「電話をかけて」という音声コマンドは、（店舗が顧客または潜在的顧客からの電話を受け入れる可能性があるため）店舗と関連性を有する。
【００６５】
音声コマンドシステムの問題のひとつに、音声コマンドシステムが音声コマンドに関する多くのオプションを含んでおり、運転者１２５がどんな音声コマンドを利用できるかがわからない場合があるという点がある。
大部分の音声コマンドシステムにおいて、運転者がどんな音声コマンドを利用できるか知るためには、運転者１２５がオプションのメニューを聴く（または車両のディスプレイに表示されたオプションの長いメニューを目で辿る）ことを必要とするように構成されており、これには時間がかかり、面倒であり、結局は音声コマンドシステムを全く使わなくなる可能性がある。
音声コマンドシステムの第２の問題に、音声コマンドの多くが、常時運転者１２５と関連性を有するとは限らないことである。視覚コンテキストアプリケーション１９９は、運転者１２５が利用することができ、運転者１２５または運転者１２５の車両環境１９８と関連性を有する音声コマンドセットを示す車両の３Ｄ−ＨＵＤ上の３Ｄオーバーレイを表示することによって、これらの問題を解決する（例えば図３参照）。
【００６６】
視覚コンテキストアプリケーション１９９は、車両１０３の３Ｄ−ＨＵＤに、例えば、車両１０３の運転者１２５が利用することのできる１つまたは複数の音声コマンドを記述する１つまたは複数の３Ｄオーバーレイを表示させるためのソフトウェアを含む。
【００６７】
いくつかの実装形態において、視覚コンテキストアプリケーション１９９は、車両１０３の３Ｄ−ＨＵＤに図３から図６に示すＧＵＩのうちの１つまたは複数を表示させるためのソフトウェアを含む。
【００６８】
いくつかの実装形態において、視覚コンテキストアプリケーション１９９は、車両１０３のプロセッサ（例えば図２Ａに示すプロセッサ２２５参照）によって実行された場合に、プロセッサに、図７Ａおよび図７Ｂに関連して後述する方法７００の１つまたは複数のステップを実行させるコードおよびルーチンを含む。
【００６９】
いくつかの実装形態において、視覚コンテキストアプリケーション１９９は、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）または特定用途向け集積回路（ＡＳＩＣ）を含むハードウェアを用いて実施することができる。いくつかの他の実装形態において、視覚コンテキストアプリケーション１９９は、ハードウェアとソフトウェアの組み合わせを用いて実施することができる。視覚コンテキストアプリケーション１９９は、デバイスとサーバの組み合わせに、またはデバイスもしくはサーバのうちの１つに記憶することができる。
【００７０】
視覚コンテキストアプリケーション１９９については、いくつかの実装形態に従って図２Ａに関連して、以下でより詳細に説明する。
【００７１】
ソーシャル・ネットワーク・サーバ１０１は、プロセッサとメモリとネットワーク通信機能とを含むハードウェアサーバとすることができる。図示の実装形態において、ソーシャル・ネットワーク・サーバ１０１は信号線１０２を介してネットワーク１０５に結合されている。ソーシャル・ネットワーク・サーバ１０１は、ネットワーク１０５を介して動作環境１００の他のエンティティとの間でデータを送受信する。
【００７２】
ソーシャル・ネットワーク・サーバ１０１は、ソーシャル・ネットワーク・アプリケーション１１１を含む。ソーシャルネットワークは、運転者１２５と別の人とが共通の特徴によって結びつくことのできるソーシャル構造の一種とすることができる。共通の特徴には、関係／結びつき、例えば、知人、家族、仕事、関心などが含まれる。共通の特徴は、明示的に定義された関係および他のオンラインユーザとのソーシャルな結びつきによって示唆される関係を含む１つまたは複数のソーシャル・ネットワーキング・システムによって提供され、それらの関係はソーシャルグラフを形成する。場合によっては、ソーシャルグラフはこれらのユーザのマッピングおよびこれらのユーザがどのように関連しうるかを反映することもできる。
【００７３】
いくつかの実装形態において、ソーシャル・ネットワーク・アプリケーション１１１は、交通情報を決定するのに用いられうるソーシャルネットワークを生成する。例えば、ソーシャル・ネットワーク・アプリケーション１１１は、人々が主要幹線道路上の事故に関して投稿するミニブログ、人々が速度違反取り締まりについて論じるフォーラム、ユーザが道路渋滞について話し合う友人を有するソーシャルネットワークなどとすることができる。いくつかの実装形態において、視覚コンテキストアプリケーション１９９は、運転者１２５が３Ｄ−ＨＵＤのインターフェースを介してソーシャルネットワーク内の別の人と相互に対話し、または協調することを可能にする。例えば、運転者１２５と別の人が協調するチャットセッションを、ソーシャル・ネットワーク・アプリケーション１１１を介して提供することができる。
【００７４】
いくつかの実装形態においては、他の人がソーシャルネットワーク内で更新情報を提供することもでき、これらの更新情報は、それらの人が車両環境１９８内のどこに位置するかに関する情報を含むことができる。視覚コンテキストアプリケーション１９９は、この
情報を（相手の人の許可を得て）ソーシャル・ネットワーク・アプリケーション１１１から受け取り、車両環境内の相手の人の位置を示し、相手の人に関連して運転者１２５が用いることのできる１つまたは複数の音声コマンドを提供する３Ｄ−ＨＵＤ上で表示するための３Ｄオーバーレイを提供することができる。例えば、音声コマンドは相手の人に電話をかけるコマンドを含む。
【００７５】
ソーシャル・ネットワーク・サーバ１０１およびソーシャル・ネットワーク・アプリケーション１１１は１つのソーシャルネットワークを表すことができること、ならびに、各々が独自のサーバ、アプリケーション、およびソーシャルグラフを有する複数のソーシャルネットワークがネットワーク１０５に結合されうることが理解される。例えば、第１のソーシャルネットワークは商取引ネットワーキング向けとすることができ、第２のソーシャルネットワークは学界を対象とし、または学界中心とすることができ、第３のソーシャルネットワークは地方の商取引向けとすることができ、第４のソーシャルネットワークは出会いを対象とすることができ、他のソーシャルネットワークは、一般的関心または特定の関心対象のものとすることができる。
【００７６】
ディレクトリサーバ１３０は、プロセッサと、メモリと、ネットワーク通信機能とを含むハードウェアサーバとすることができる。図示の実装形態において、ディレクトリサーバ１３０は信号線１９７を介してネットワーク１０５に結合されている。ディレクトリサーバ１３０は、ネットワーク１０５を介して動作環境１００の他のエンティティとの間でデータを送受信する。
【００７７】
ディレクトリサーバ１３０はディレクトリデータ１３１を含む。ディレクトリデータ１３１は、異なる目的地および目的地に関する情報を記述する。この情報を本明細書では「営業情報」と呼ぶ場合がある。
なお、本明細書における目的地とは、必ずしも予定された目的地でなくてもよい。例えば、立ち寄る可能性がある施設等を含む。
目的地は、店舗およびこれらの店舗についての様々な情報を含むことができる。例えば、ディレクトリデータ１３１は、店舗の名称、店舗の営業時間、店舗の電話番号、店舗が販売する商品の種類、店舗に利用できる任意の広告または販促、店舗についての顧客レビューなどを記述することができる。例えば、レストランについて、ディレクトリデータ１３１は提供メニューを記述することができる。また、映画館について、ディレクトリデータ１３１は上映中の映画および上映時間を記述することができる。ガソリンスタンドについて、ディレクトリデータ１３１は、推定待ち時間およびグレードごとの燃料の価格を記述することができる。ホテルについて、ディレクトリデータ１３１は、空室があるかどうかおよび当日の室料を記述することができる。またディレクトリデータ１３１は、屋外施設である目的地についての関連性を有する情報を記述することもできる。例えば、ディレクトリデータ１３１は、公園の規則、営業時間および利用可能なアクティビティといった、レクリエーションエリアに関する情報を含むことができる。レクリエーションエリアには、公園、ビーチ、登山口、パブリック・ゴルフ・コース、サイクリングロードなどが含まれうる。ディレクトリデータ１３１の他の例も可能である。
【００７８】
ディレクトリサーバ１３０は、ディレクトリサーバ１３０のプロセッサによって実行された場合に、プロセッサに、視覚コンテキストアプリケーション１９９からのディレクトリデータ１３１を求める要求を受信させ、これらの要求に応答して、要求に応答する視覚コンテキストアプリケーション１９９へのディレクトリデータ１３１を送信させるコードおよびルーチンを含む。例えば、視覚コンテキストアプリケーション１９９は、ディレクトリサーバ１３０へＧＰＳデータを送信することができる。ディレクトリサーバ１３０は、同じ地理的位置、ほぼ同じ地理的位置、または視覚コンテキストアプリケーション１９９から受信されたＧＰＳデータによって記述される地理的位置からある所定の範囲内にあ
る地理的位置に位置する目的地のディレクトリデータ１３１を検索することができる。
【００７９】
いくつかの実装形態において、視覚コンテキストアプリケーション１９９へ送信されるディレクトリデータ１３１は、視覚コンテキストアプリケーション１９９が、車両１０３の３Ｄ−ＨＵＤを通して運転者１２５が見ることのできる位置ごとのディレクトリデータ１３１を受信するように構成することができる。
【００８０】
いくつかの実装形態において、ディレクトリサーバ１３０は、地域についての（例えば、都市、州、または国についての）すべてのディレクトリデータ１３１を視覚コンテキストアプリケーション１９９へ送信する。視覚コンテキストアプリケーション１９９はその場合、車両１０３の位置を表すＧＰＳデータおよび地図サーバ１９０から受け取った地図データ１９１に基づいてディレクトリデータ１３１をフィルタリングすることができる。
【００８１】
いくつかの実装形態において、ディレクトリデータ１３１は、視覚コンテキストアプリケーション１９９によって、目的地が運転者１２５と関連性を有するかどうか判定し、または運転者１２５に見せるために車両１０３の３Ｄ−ＨＵＤ上にどの３Ｄオーバーレイを表示すべきか選択するのに用いられる。例えば、営業情報が、店舗が閉まっている（すなわち、運転者１２５が利用できない）ことを示す場合には、店舗は運転者１２５と関連性を有さず、または、運転者１２５に提示するために異なる３Ｄオーバーレイが選択されるべきである。例えば、店舗が閉まっている場合には、３Ｄオーバーレイは、店舗に電話をかけるオプションを提供するのではなく、営業時間を記述することができる。というのは、閉まっており利用できない店舗に電話をかけることは意味をなさないからである。
【００８２】
地図サーバ１９０は、プロセッサと、メモリと、ネットワーク通信機能とを含むハードウェアサーバとすることができる。図示の実施形態において、地図サーバ１９０は信号線１１６を介してネットワーク１０５に結合されている。地図サーバ１９０は、ネットワーク１０５を介して動作環境１００の他のエンティティとの間でデータを送受信する。
【００８３】
地図サーバ１９０は地図データ１９１を記憶することができる。地図データ１９１は、車両環境１９８を含む地域内の地図および地理的位置（または目的地）を記述することができる。地理的位置は、地域内の目的地ごとの実際の所在地を含む。
【００８４】
地図サーバ１９０は、地図サーバ１９０のプロセッサによって実行された場合に、プロセッサに、視覚コンテキストアプリケーション１９９からの地図データ１９１を求める要求を受信させ、要求に応答する地図データ１９１を送信させるコードおよびルーチンを含む。例えば、視覚コンテキストアプリケーション１９９は、車両１０３の地理的位置を表すＧＰＳデータを送信することができ、地図サーバ１９０は、車両環境１９８を含む地域内の地図および地理的位置を表す地図データ１９１を選択する。
【００８５】
視覚コンテキストアプリケーション１９９は、どの目的地が車両環境１９８内に位置するか判定するために、ディレクトリデータ１３１と照合して地図データ１９１を相互参照するソフトウェアを含む。
【００８６】
例えば、ディレクトリデータ１３１は、各目的地の名称および各目的地に関する営業情報を定義することができる。地図データ１９１は、各目的地の名称および各目的地の実際の所在地を定義することができる。視覚コンテキストアプリケーション１９９は、車両環境１９８内の各目的地の名称および目的地の実際の所在地を決定するために、地図データ１９１と照合してディレクトリデータ１３１を相互参照することができる。
【００８７】
気象サーバ１７０は、プロセッサと、メモリと、ネットワーク通信機能とを含むハード
ウェアサーバとすることができる。図示の実施形態において、気象サーバ１７０は信号線１１４を介してネットワーク１０５に結合されている。気象サーバ１７０は、ネットワーク１０５を介して動作環境１００の他のエンティティとの間でデータを送受信する。
【００８８】
気象サーバ１７０は気象データ１７１を記憶する。気象データ１７１は車両環境１９８に関連した天気予報を表すデータである。天気予報は、車両環境１９８の現在の気象条件または将来のある時点における車両環境の推定される気象条件を表す。
【００８９】
気象サーバ１７０は、気象サーバ１７０のプロセッサによって実行された場合に、プロセッサに、視覚コンテキストアプリケーション１９９からの気象データ１７１を求める要求を受信させ、要求に応答する気象データ１７１を送信させるコードおよびルーチンを含む。例えば、視覚コンテキストアプリケーション１９９は、車両１０３の地理的位置を表すＧＰＳデータを送信することができ、気象サーバ１７０は、車両環境１９８を含む地域内の天気予報を記述する気象データ１７１を選択する。いくつかの実装形態において、気象データ１７１は、視覚コンテキストアプリケーション１９９によって、目的地が運転者１２５と関連性を有するかどうか判定し、または運転者１２５が見るために車両１０３の３Ｄ−ＨＵＤ上にどの３Ｄオーバーレイを表示すべきか選択するのに用いられる。
【００９０】
（システムの例）
次に図２Ａを参照すると、視覚コンテキストアプリケーション１９９を含むコンピュータシステム２００の一例が示されている。
【００９１】
図２Ａは、いくつかの例による、視覚コンテキストアプリケーション１９９と、プロセッサ２２５と、メモリ２２７と、３Ｄ−ＨＵＤ２３１と、センサ群２３３と、通信ユニット２４５と、音声コマンドシステム２４７とを含むコンピュータシステム２００のブロック図である。コンピュータシステム２００の各構成要素はバス２２０によって通信可能に結合されている。いくつかの実装形態において、コンピュータシステム２００は車両１０３とすることができる。
【００９２】
プロセッサ２２５は、計算処理を行い、表示装置へ電子表示信号を提供するための算術論理演算装置、マイクロプロセッサ、汎用コントローラ、または何らかの他のプロセッサアレイを含む。プロセッサ２２５は信号線２３６を介して他の構成要素と通信するためにバス２２０に結合されている。プロセッサ２２５はデータ信号を処理し、複雑命令セットコンピュータ（ＣＩＳＣ）アーキテクチャ、縮小命令セットコンピュータ（ＲＩＳＣ）アーキテクチャ、または命令セットの組み合わせを実施するアーキテクチャを含む様々なコンピューティングアーキテクチャを含むことができる。プロセッサ２２５は、グラフィックス処理装置（ＧＰＵ）、アドバンストＲＩＳＣマシーンズ（ＡＲＭ）プロセッサまたは何らかの他のプロセッサを含むことができる。図２Ａは単一のプロセッサ２２５を含んでいるが、複数のプロセッサ２２５が含まれていてもよい。他のプロセッサ、オペレーティングシステム、センサ、ディスプレイ、および物理構成も可能である。
【００９３】
メモリ２２７はプロセッサ２２５によって実行されうる命令またはデータを記憶する。メモリ２２７は信号線２４４を介して他の構成要素と通信するためにバス２２０に結合されている。命令またはデータは、本明細書に記載される技法を行うためのコードを含むことができる。メモリ２２７は、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）デバイス、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）デバイス、フラッシュメモリ、または何らかの他のメモリデバイスとすることができる。いくつかの実装形態において、メモリ２２７は、ハード・ディスク・ドライブ、フロッピー・ディスク・ドライブ、ＣＤ−ＲＯＭデバイス、ＤＶＤ−ＲＯＭデバイス、ＤＶＤ−ＲＡＭデバイス、ＤＶＤ−ＲＷデバイス、フラッシュ・メモリ・デバイス、またはより永続的に情報を記憶する
ための何らかの他の大容量記憶装置を含む、不揮発性メモリまたは類似した永続記憶装置および媒体も含む。
【００９４】
図２Ａに示すように、メモリ２２７は、センサデータ２９３、ＧＰＳデータ２９５、３Ｄオーバーレイデータ２９７、追跡データ２９８、画像認識データ２９９、ディレクトリデータ１３１、地図データ１９１、および気象データ１７１、のうち１つまたは複数を記憶する。メモリ２２７の、ディレクトリデータ１３１、地図データ１９１、気象データ１７１、および音声コマンドデータ２９６の各要素については図１に関連して前述したので、ここではこれらについての説明を繰り返さない。またメモリ２２７はソーシャル・ネットワーク・アプリケーション１１１から受け取られたデータを記憶することもできる。
【００９５】
センサデータ２９３は、センサ群２３３に含まれるセンサのうちの１つ以上によって記録された１つ以上の測定値、または外部カメラ１０４によって取り込まれた画像を表すデータを含むことができる。例えば、センサデータ２９３は、外部カメラ１０４によって取り込まれた１つ以上の画像を記述するデータを含む。
【００９６】
ＧＰＳデータ２９５は、無線接続を介して車両１０３に通信可能に結合されているＧＰＳ衛星から受信された車両１０３のＧＰＳ座標を含む。いくつかの実装形態において、コンピュータシステム２００は、ＧＰＳ衛星からＧＰＳデータ２９５を受信するＧＰＳユニットを含む。ＧＰＳユニットは、車両１０３の位置を車線レベルの精度まで記述するＧＰＳデータ２９５を提供するためにＧＰＳ衛星と通信するように動作するＤＳＲＣ準拠のＧＰＳユニットを含む。
【００９７】
３Ｄオーバーレイデータ２９７は、１つまたは複数の３Ｄオーバーレイを表すグラフィックデータを含むことができる。３Ｄオーバーレイデータ２９７は、３Ｄ−ＨＵＤ２３１に３Ｄオーバーレイを表示させるように動作する。例えば、３Ｄオーバーレイデータ２９７は３Ｄ−ＨＵＤ２３１によって受信され、３Ｄ−ＨＵＤ２３１は、３Ｄオーバーレイデータ２９７によって表される３Ｄオーバーレイを表示する。３Ｄオーバーレイデータ２９７によって表される３Ｄオーバーレイは動画化することができる。３Ｄオーバーレイの例が図３から図６に示されている。
【００９８】
音声コマンドデータ２９６は、運転者１２５が利用できる音声コマンドのうちの１つまたは複数を表す。音声コマンドは、音声コマンドシステム２４７によって提供される機能と関連付けられた音声コマンドを含む。音声コマンドデータ２９６は、音声コマンドシステム２４７によって提供される任意の音声コマンドを記述することができる。
【００９９】
３Ｄオーバーレイデータ２９７は、３Ｄオーバーレイが３Ｄ−ＨＵＤ２３１のどこに表示されるべきか記述する情報を含むことができる。例えば、３Ｄオーバーレイデータ２９７は、３Ｄオーバーレイがどこに表示されるべきか記述するデカルト座標（Ｘ，Ｙ，Ｚ）を含むことができる。デカルト座標は、表示モジュール２１０によって、目的地の位置と、３Ｄ−ＨＵＤ２３１を通して見たときに運転者１２５には目的地がどこに見えるかに基づいて、運転者１２５が、運転者１２５から見て、３Ｄオーバーレイが３Ｄ−ＨＵＤ２３１において目的地の位置に近接していると知覚することになる向きで３Ｄオーバーレイが表示されるように決定されうる。
【０１００】
いくつかの実装形態において、本明細書に記載する３Ｄ−ＨＵＤ２３１は、３Ｄ−ＨＵＤ２３１を通して見ることができ、オブジェクトと関連付けられたオーバーレイを有するオブジェクトに追従する（またはオブジェクトを追跡する）３Ｄ重畳表示技術を３Ｄ−ＨＵＤ２３１と共に含むことができ、重畳表示技術は、３Ｄオーバーレイをある位置に位置決めし、車両１０３と、３Ｄオーバーレイと関連付けられたオブジェクトとの相対運動に
基づいてリアルタイムまたはほぼリアルタイムで３Ｄオーバーレイの位置をリフレッシュすることができる。いくつかの実装形態において、表示モジュール２１０は、３Ｄ−ＨＵＤ２３１に、正確な視差および焦点を同時に計算することによって、運転者１２５が３Ｄ−ＨＵＤ２３１において見たときにオブジェクトのところに正しく３Ｄオーバーレイを表示させるように構成されたコードおよびルーチンを含む。（例えば、センサ群２３３に含まれるＬＩＤＡＲセンサによって示される）車両１０３とオブジェクトとの間の距離は、３Ｄ−ＨＵＤ２３１によって、３Ｄ−ＨＵＤ２３１上に３Ｄオーバーレイを表示するのに用いられる。
【０１０１】
追跡データ２９８は、表示モジュール２１０によって、３Ｄ−ＨＵＤ２３１の画面において３Ｄオーバーレイと関連付けられたオブジェクトの位置を追跡し、３Ｄオーバーレイがオブジェクトの位置を追跡するように３Ｄオーバーレイの位置を修正するのに用いられる情報を含む。視覚コンテキストアプリケーション１９９は、オブジェクトの新しい位置を表す周期的アップデートを受け取ることができる。例えば、センサ群２３３は、オブジェクトの位置を絶えずモニタし、オブジェクトの位置を記述するセンサデータ２９３を提供するＬＩＤＡＲセンサまたは何らかの他の距離計を含む。
【０１０２】
画像認識データ２９９は、本明細書に記載されるオブジェクトの画像認識を行うのに用いられるデータを含む。画像認識データ２９９は、図１について前述したオブジェクト事前情報セットを含む。例えば、オブジェクトは店舗の正面とすることができる。店舗正面は、外部カメラ１０４によって取り込まれた画像として示すことができる。画像認識データ２９９はオブジェクト事前情報セットを含むことができる。オブジェクト事前情報は、先に取り込まれた店舗正面の画像を含むことができる。解析モジュール２０６は、画像認識データ２９９によって記述される店舗正面の画像およびオブジェクト事前情報を含むセンサデータ２９３を用いて、オブジェクトを特定の店舗の店舗正面（または一般的な店舗の一般的な店舗正面）として特定することができる。
【０１０３】
３Ｄ−ＨＵＤ２３１については、図２Ｂに関連して以下でより詳細に説明する。３Ｄ−ＨＵＤ２３１は信号線２３２を介してバス２２０に通信可能に結合することができる。
【０１０４】
センサ群２３３については図１に関連して前述したので、ここではその説明を繰り返さない。センサ群２３３は、車両に搭載された１台以上の内部カメラまたは外部カメラ（例えば外部カメラ１０４）を含むことができる。いくつかの実装形態においては、カメラのうちの少なくとも１台は車両１０３の内部に搭載された、運転者１２５の視線をモニタし、運転者１２５が３Ｄ−ＨＵＤ２３１のどの領域を見ているか判定するように構成されたデジタルカメラである。例えば、内部カメラは、第１の運転者の顔（特に、第１の運転者の目と３Ｄ−ＨＵＤ２３１に対するその視線）を記録する。
【０１０５】
センサ群２３３は、現在時刻または今日の曜日を記述する時間データを取得するように構成された電子クロックまたはカレンダを含むことができる。時間データはセンサデータ２９３に記憶される。
【０１０６】
センサ群２３３は、信号線２３４を介してバス２２０に通信可能に結合されている。
【０１０７】
通信ユニット２４５は、動作環境１００の要素のうちの１つ以上との間でデータを送受信する。通信ユニット２４５は、ネットワーク１０５を介して、または直接通信結合を介して、動作環境１００の様々な要素との間でデータを送受信することができる。通信ユニット２４５は信号線２４６を介してバス２２０に結合されている。いくつかの実装形態において、通信ユニット２４５は、ネットワーク１０５への、または別の通信路への直接物理接続のためのポートを含む。例えば、通信ユニット２４５は、ＵＳＢ、ＳＤ、ＣＡＴ−
５、または動作環境１００の１つもしくは複数の要素との有線通信のための類似したポートを含む。いくつかの実装形態において、通信ユニット２４５は、ＩＥＥＥ８０２．１１、ＩＥＥＥ８０２．１６、ＢＬＵＥＴＯＯＴＨ（登録商標）、ＤＳＲＣ、ｍｍＷＡＶＥ通信または別の適切な無線通信方法を含む１つまたは複数の無線通信方法を用いてネットワーク１０５（または動作環境１００の何らかの他の要素）または他の通信路とデータを交換するための無線送受信機を含む。
【０１０８】
いくつかの実装形態において、通信ユニット２４５は、ショート・メッセージ・サービス（ＳＭＳ）、マルチメディア・メッセージング・サービス（ＭＭＳ）、ハイパーテキスト転送プロトコル（ＨＴＴＰ）、直接データ接続、ＷＡＰ、電子メール、または別の適切な種類の電子通信によるものを含む、セルラ通信ネットワーク上でデータを送受信するためのセルラ通信送受信機を含む。いくつかの実装形態において、通信ユニット２４５は、有線ポートおよび無線送受信機を含む。また通信ユニット２４５は、ＴＣＰ／ＩＰ、ＨＴＴＰ、ＨＴＴＰＳ、およびＳＭＴＰなどを含む標準ネットワークプロトコルを用いたファイルまたはメディアオブジェクトの配布のためのネットワーク１０５への他の従来型の接続も提供する。
【０１０９】
音声コマンドシステム２４７は、運転者１２５の人間音声によって制御されうる音声コマンド機器を含む。音声コマンドシステム２４７は信号線２４８を介してバス２２０に通信可能に結合されている。
【０１１０】
視覚コンテキストアプリケーション１９９は、通信モジュール２０２、データモジュール２０４、解析モジュール２０６、関連性モジュール２０８、表示モジュール２１０、およびコマンドモジュール２１２のうちの１つまたは複数を含む。
【０１１１】
通信モジュール２０２は信号線２２２を介してバス２２０に通信可能に結合されている。データモジュール２０４は信号線２２４を介してバス２２０に通信可能に結合されている。解析モジュール２０６は信号線２２６を介してバス２２０に通信可能に結合されている。関連性モジュール２０８は信号線２２８を介してバス２２０に通信可能に結合されている。表示モジュール２１０は信号線２２９を介してバス２２０に通信可能に結合されている。コマンドモジュール２１２は信号線２３０を介してバス２２０に通信可能に結合されている。
【０１１２】
通信モジュール２０２は、視覚コンテキストアプリケーション１９９とコンピュータシステム２００の他の構成要素との間の通信を処理するためのルーチンを含むソフトウェアである。いくつかの実装形態において、通信モジュール２０２は、視覚コンテキストアプリケーション１９９とコンピュータシステム２００の他の構成要素との間の通信を処理するための後述する機能を提供するようにプロセッサ２２５によって実行可能な命令セットとすることができる。
【０１１３】
いくつかの実装形態において、通信モジュール２０２は、コンピュータシステム２００のメモリ２２７に記憶することができ、プロセッサ２２５によってアクセス可能、実行可能とすることができる。
【０１１４】
通信モジュール２０２はデータを受信し、そのデータを、通信ユニット２４５を介して、動作環境１００のその他の構成要素へ転送する。例えば、通信モジュール２０２は、通信ユニット２４５を介して、ディレクトリデータ１３１、地図データ１９１、気象データ１７１、ＧＰＳデータ２９５、およびソーシャル・ネットワーク・アプリケーション１１１からのデータのうちの１つまたは複数を受信する。
【０１１５】
通信モジュール２０２はデータを受信し、そのデータをコンピュータシステム２００のその他の構成要素へ転送する。例えば、通信モジュール２０２は３Ｄオーバーレイデータ２９７を３Ｄ−ＨＵＤ２３１へ送信する。
【０１１６】
通信モジュール２０２は車両１０３の要素と通信することができる。
【０１１７】
データモジュール２０４は、プロセッサ２２５に、以下の動作のうちの１つまたは複数を行わせるためのルーチンを含むソフトウェアである。
センサ群２３３を操作してセンサ群２３３にセンサデータ２９３を取り込ませる動作
外部カメラ１０４を操作して外部カメラ１０４に車両環境１９８の画像を取り込ませ、それらの画像をセンサデータ２９３として記憶し、車両１０３のＧＰＳユニットにＧＰＳ衛星からのＧＰＳデータ２９５を要求させ、ディレクトリサーバ１３０からのディレクトリデータ１３１を要求する動作
地図サーバ１９０からの地図データ１９１を要求する動作
気象サーバ１７０からの気象データ１７１を要求する動作
ソーシャル・ネットワーク・アプリケーション１１１からのソーシャル・ネットワーク・データまたはソーシャルネットワーク更新を要求する動作、および
図１について前述したように地図データ１９１とディレクトリデータ１３１とを相互参照して、車両環境１９８に存在する目的地、これらの目的地の実際の所在地、およびこれらの目的地が運転者１２５から見て３Ｄ−ＨＵＤ２３１の画面のどこに位置するかを決定する動作
【０１１８】
いくつかの実装形態において、データモジュール２０４は、コンピュータシステム２００のメモリ２２７に記憶することができ、プロセッサ２２５によってアクセス可能、実行可能とすることができる。
【０１１９】
解析モジュール２０６は、プロセッサ２２５に、以下の動作のうちの１つまたは複数を行わせるためのルーチンを含むソフトウェアである。
画像内に存在するオブジェクトを特定するために画像を解析する動作（オブジェクトは、目的地（例えば図３および図５参照）、駐車スペース（例えば図４参照）、駐車案内板（例えば図４参照）、追従されている別の車両（例えば図６参照）、および車両環境１９８内の任意の他のオブジェクトとすることができる）
オブジェクトの識別情報（例えば、店舗の名称や店舗の営業情報）を決定するために車両環境１９８についてのディレクトリデータ１３１を解析する動作、ならびに
現在時刻または今日の曜日を決定するために時間データを解析する動作
【０１２０】
いくつかの実装形態において、車両１０３は別の車両に追従しており、解析モジュール２０６は、車道上の、３Ｄ−ＨＵＤ２３１を通して運転者１２５が見ることのできる多くの車両の中で、車道上のどの車両が追従されている車両であるか決定するために、車両環境１９８の画像を解析する。例えば図６を参照されたい。解析モジュール２０６は、運転者１２５が車道上の車両を追跡することができるように、追従されている車両の位置を追跡し続けることができる。
【０１２１】
いくつかの実装形態において、解析モジュール２０６は、コンピュータシステム２００のメモリ２２７に記憶することができ、プロセッサ２２５によってアクセス可能、実行可能とすることができる。
【０１２２】
関連性モジュール２０８は、プロセッサ２２５に、画像に含まれる特定されたオブジェクトごとに、以下のうちの１つまたは複数が与えられた場合に、オブジェクトが運転者１２５とどのように関連性を有するか判定させるためのルーチンを含むソフトウェアである
。
現在時刻
今日の日付
車両１０３の地理的位置、および
他の条件（気象データ１７１によって記述される気象条件、ソーシャル・ネットワーク・アプリケーション１１１から受信されたソーシャル・メディア・データによって記述されるソーシャルメディア条件など）
【０１２３】
例えば、オブジェクトが、閉まっている店舗である場合、関連性モジュール２０８は、オブジェクトは運転者１２５と関連性を有しないと判定する。
【０１２４】
別の例では、オブジェクトが公園や遊園地であるが、気象データ１７１は気象条件が悪いことを示す場合（または、それ以外に公園といった屋外施設を訪れることと相反する場合）には、関連性モジュール２０８は、オブジェクトは運転者１２５と関連性を有しないと判定する。
【０１２５】
別の例では、オブジェクトが駐車スペースであるが、時刻またはレッカー移動対象区域の存在が理由で運転者１２５が駐車スペースに車両１０３を駐車させることが現在は違法である場合には、関連性モジュール２０８は、オブジェクトは運転者１２５と関連性を有しないと決定することができる（例えば、図４を参照すると、２つの駐車スペースがあるが、一方はレッカー移動対象区域であり他方はそうではなく、そのため、他方は関連性モジュール２０８によって運転者１２５と関連性を有すると判定される）。
【０１２６】
関連性モジュール２０８は、プロセッサ２２５に、オブジェクトの識別情報が与えられた場合に、音声コマンドデータ２９６によって記述される利用できる音声コマンドのうちのどれが、オブジェクトおよび運転者１２５と関連性を有するか判定させるためのルーチンを含むソフトウェアである。このプロセスを、「音声コマンドの選択」という。
【０１２７】
例えば、オブジェクトが店舗である場合には、関連性モジュール２０８は、ラジオの音量を上げる音声コマンドは、オブジェクトとも運転者１２５とも関連性を有しないと判定することができる。しかし、関連性モジュール２０８は、店舗に電話をかける音声コマンドは関連性を有すると判定することができる。関連性モジュール２０８は、別の関連性を有する音声コマンドは、店舗に関する情報を要求するものであろうと判定することができる。店舗に関する情報は、ディレクトリデータ１３１に含まれる営業情報によって記述される。
【０１２８】
いくつかの実装形態において、関連性モジュール２０８は、解析モジュール２０６によって３Ｄ−ＨＵＤ２３１を介して見ることができると特定されたオブジェクトの各々について、この動作を繰り返す。
【０１２９】
いくつかの実装形態において、関連性モジュール２０８は、コンピュータシステム２００のメモリ２２７に記憶することができ、プロセッサ２２５によってアクセス可能、実行可能とすることができる。
【０１３０】
表示モジュール２１０は、３Ｄ−ＨＵＤ２３１に、３Ｄオーバーレイデータ２９７に基づいて３Ｄオーバーレイを表示させるためのルーチンを含むソフトウェアである。表示モジュール２１０は、関連性モジュール２０８によって選択された音声コマンドに基づいて３Ｄオーバーレイデータ２９７を生成する。例えば、関連性モジュール２０８によって選択された音声コマンドが、「情報を取得」というものであった場合、表示モジュール２１０は、３Ｄ−ＨＵＤ２３１に図３に示す３Ｄオーバーレイ３００、３０５、３１０のうち
の１つまたは複数を表示させるように構成された３Ｄオーバーレイデータ２９７を生成する。表示モジュール２１０は次いで３Ｄ−ＨＵＤ２３１に３Ｄオーバーレイを表示させる。運転者１２５が次いで「情報を取得」、または何らかの類似した音声コマンド（例えば、「店の情報を見せて」等）を言った場合には、表示モジュール２１０は、店舗の営業情報の一部または全部を記述する店舗の営業情報に基づいて３Ｄオーバーレイデータ２９７を生成する。表示モジュール２１０は次いで、３Ｄ−ＨＵＤ２３１に、店舗の営業情報（例えば、店舗の営業時間はいつか、店舗が次に開くのはいつか、店舗は現在開いているか、店舗によって提供される品物またはサービス、店舗についてのレビュー、店舗の価格帯、店舗の内部の画像、店舗の電話番号、店舗は創業して何年になるかなど）を記述する３Ｄオーバーレイを表示させる。
【０１３１】
オプションとして、３Ｄオーバーレイデータ２９７は動画化された３Ｄオーバーレイを表示するためのデータを含んでもよい。動画は運転者１２５の注意をそらさないように工夫して構成されうる。
【０１３２】
いくつかの実装形態において、表示モジュール２１０は、プロセッサ２２５に、どの音声コマンドがオブジェクトに利用できるかが運転者１２５にわかるようにオブジェクトのセンサ座標を運転者の視点座標に変換することによって、オブジェクトに近接して３Ｄ−ＨＵＤ２３１上に３Ｄオーバーレイを描画させるためのソフトウェアである。例えば、以下の図２Ｂの説明または上記の「３Ｄ重畳表示技術」の説明を参照されたい。
【０１３３】
いくつかの実装形態において、表示モジュール２１０は、プロセッサ２２５に、３Ｄオーバーレイが運転者１２５の注意をそらし、または安全リスクをもたらすことになるかどうか事前に判定させ、それらが安全リスクをもたらすことになる場合には特定のグラフィックの描画を選択的に抑制するソフトウェアである。例えば、２つの３Ｄオーバーレイが描画されることになっており、１つのグラフィックは運転者の対面交通の視界を見えにくくし、他方のグラフィックはそうではない場合には、表示モジュール２１０はプロセッサ２２５に、運転者の交通の視界を見えにくくしない３Ｄオーバーレイのみを描画させる。
【０１３４】
いくつかの実装形態において、表示モジュール２１０は、コンピュータシステム２００のメモリ２２７に記憶することができ、プロセッサ２２５によってアクセス可能、実行可能とすることができる。
【０１３５】
コマンドモジュール２１２は、プロセッサに音声コマンドを提供し、音声コマンドに基づいて処理を行うために運転者１２５の声を聴き取るためのルーチンを含むソフトウェアである。例えば、コマンドモジュール２１２は、音声コマンドシステム２４７に、音声コマンドに基づいて処理を行わせることができる。別の例では、コマンドモジュール２１２は、表示モジュール２１０に、音声コマンドに応答して３Ｄ−ＨＵＤ２３１上に特定の３Ｄオーバーレイを描画させる。センサ群２３３は、音声コマンドを聴き取るためのマイクロフォンを含んでもよい。
【０１３６】
いくつかの実装形態において、コマンドモジュール２１２は、コンピュータシステム２００のメモリ２２７に記憶することができ、プロセッサ２２５によってアクセス可能、実行可能とすることができる。
【０１３７】
次に図２Ｂを参照すると、いくつかの実装形態による３Ｄ−ＨＵＤ２３１の例を示すブロック図が示されている。
【０１３８】
いくつかの実装形態において、３Ｄ−ＨＵＤ２３１は、プロジェクタ１００１と、可動式スクリーン１００２と、スクリーン駆動部１００３と、光学系（レンズ１００４、レン
ズ１００６、反射板１００５などを含む）とを含む。プロジェクタ１００１は、ディジタル・ミラー・デバイス（ＤＭＤ）プロジェクタ、液晶プロジェクタといった任意の種類のプロジェクタとすることができる。プロジェクタ１００１は可動式スクリーン１００２上に画像（グラフィック）１００８を投影する。可動式スクリーン１００２は透明板を含み、そのため、投影画像の光は可動式スクリーン１００２を透過して、車両１０３の風防ガラス１００７上に投影される。風防ガラス１００７上に投影された画像は、あたかもそれが、風防ガラス上に投影されているオブジェクトではなく、実世界の三次元空間に存在する現実のオブジェクト（１０１１ａ、１０１１ｂで示す）であるかのように運転者１０１０によって知覚される。
【０１３９】
いくつかの実装形態において、３Ｄ−ＨＵＤ２３１は、スクリーン１００２上の投影位置を調整することによって運転者１０１０に対する画像の方向（言い換えると、風防ガラス内の画像の位置）を制御することができる。スクリーン１００２はスクリーン駆動部１００３によって位置１００３ａから位置１００３ｂまでの範囲を移動させることができる。スクリーン１００２の位置を調整することにより、実世界における運転者１０１０からの投影画像の深度（距離）を変えることができる。一例では、スクリーン１００２の可動範囲（位置１００３ａと位置１００３ｂとの距離）は５ｍｍであり、これは実世界における５ｍから無限遠までに対応する。３Ｄ−ＨＵＤ２３１の使用は、運転者１０１０が実世界（三次元空間）に存在する投影画像を知覚することを可能にする。例えば、画像が（歩行者、車などといった）現実のオブジェクトと同じ三次元位置（または少なくともほぼ同じ深度）に投影されるときに、運転者は投影画像を見るために目の焦点を調整しなくてもよく、実世界を見ながら投影画像を容易に把握することができることになる。
【０１４０】
図２Ｂに示す３Ｄ−ＨＵＤ２３１は例として提供するものである。他の例も可能である。これらの例は、図２Ｂに示す３Ｄ−ＨＵＤ２３１と概ね同様の複雑さを有するヘッドアップディスプレイを含むことができる。例えば、将来においては、可動式スクリーン１００２といった可動部品を必要としないヘッドアップディスプレイになるであろうと予期される。例えば、移動しない静止画面が配置される可能性もある。配置されるヘッドアップディスプレイが二次元ヘッドアップディスプレイではない可能性もある。図２Ａに関連して前述した視覚コンテキストアプリケーション１９９は、そうした構成要素と共に動作するように設計される。
【０１４１】
（３Ｄオーバーレイの例）
図３から図６は、いくつかの実装形態による３Ｄ−ＨＵＤ２３１において表示される例示的３Ｄオーバーレイのグラフィック表現である。
【０１４２】
図３を参照すると、いくつかの実装形態による３Ｄ−ＨＵＤ２３１において表示される３つの例示的３Ｄオーバーレイ３００、３０５、３１０のグラフィック表現が示されている。
【０１４３】
第１の３Ｄオーバーレイ３００および第２の３Ｄオーバーレイ３１０は店舗と関連付けられている。いくつかの実装形態においては、運転者１２５が「情報を取得」と言うと、車両のスピーカが店舗の営業情報を案内する音声を提供する。オプションとして、運転者が「情報を取得」と言うと、３Ｄ−ＨＵＤ２３１は、別の３Ｄオーバーレイとして３Ｄ−ＨＵＤ２３１上に店舗のうちの１つまたは複数に関する営業情報を表示する。
【０１４４】
いくつかの実装形態において、視覚コンテキストアプリケーション１９９は、どの営業情報セットを運転者１２５に提供すべきか（例えば、第１の３Ｄオーバーレイ３００と関連付けられた店舗か、それとも第２の３Ｄオーバーレイ３１０と関連付けられた店舗か）決定するために、運転者１２５が３Ｄオーバーレイのうちのどれを見ているか判定するこ
とができる。
【０１４５】
したがって、視覚コンテキストアプリケーション１９９は、運転者１２５がどの音声コマンドを利用できるか見つけるのを支援することができる。また視覚コンテキストアプリケーション１９９は、利用できる音声コマンドをフィルタリングし、運転者１２５または車両環境１９８と関連性を有する音声コマンドだけを提示することもできる。
【０１４６】
第３の３Ｄオーバーレイ３０５は標識と関連付けられている。標識は、駐車案内板、交通管理標識、店舗の看板などとすることができる。いくつかの実装形態においては、運転者１２５が「情報を取得」と言うと、車両のスピーカは標識の内容を表すオーディオを提供する。任意選択で、運転者が「情報を取得」と言うと、３Ｄ−ＨＵＤ２３１は、別の３Ｄオーバーレイとして３Ｄ−ＨＵＤ２３１上に標識の内容を表示する。標識の内容は、外部カメラ１０４によって取り込まれ、または標識の内容を示すオブジェクト事前情報に基づいて決定される。したがって、視覚コンテキストアプリケーション１９９は運転者が新しい目的地を特定するのを支援することができる。
【０１４７】
図４を参照すると、いくつかの実装形態による３Ｄ−ＨＵＤ２３１において表示される例示的な第４の３Ｄオーバーレイ４００のグラフィック表現が示されている。
【０１４８】
第４の３Ｄオーバーレイ４００は、現在時刻が与えられた場合に、運転者１２５にとって駐車が合法である第１の駐車スペースと関連付けられている。要素４１５は、（第２の駐車案内板４１０によってレッカー移動対象区域にあると示されているために）駐車が違法である第２の駐車スペースを示す。
【０１４９】
第１の駐車スペースは第１の駐車案内板４０５も含む。視覚コンテキストアプリケーション１９９は以下の動作のうちの１つまたは複数を行うことができる。
外部カメラ１０４によって取り込まれた画像において第１の駐車スペースを特定する
外部カメラ１０４によって取り込まれた画像内の第１の駐車スペースと関連付けられた第１の駐車案内板４０５を特定する
１つまたは複数のオブジェクト事前情報に基づいて第１の駐車案内板４０５によって示される規則を決定する
現在時刻および第１の駐車案内板によって示される規則に基づいて、第１の駐車スペースに駐車することが合法であると判定する
第１の駐車スペースに駐車することは合法であるため、第１の駐車スペースは運転者１２５と関連性を有すると判定する
車両１０３の自動駐車システムを作動させて車両１０３を第１の駐車スペースに自動駐車させる音声コマンドを選択する
運転者１２５が車両１０３を第１の駐車スペースに自動駐車させる音声コマンドを提供しうることを示す３Ｄオーバーレイを選択する
３Ｄ−ＨＵＤ２３１上に第４の３Ｄオーバーレイ４００を描画する
外部カメラ１０４によって取り込まれた画像において第２の駐車スペース４１５を特定する
外部カメラ１０４によって取り込まれた画像内の第２の駐車スペース４１５と関連付けられた第２の駐車案内板４１０を特定する
１つまたは複数のオブジェクト事前情報に基づいて第２の駐車案内板４１０によって示される規則を決定する
第２の駐車案内板４１０によって示される規則に基づいて第２の駐車スペース４１５に駐車することは違法であると判定する
第２の駐車スペースに駐車することは違法であるため、第２の駐車スペースは運転者１２５と関連性を有しないと判定する
第２の駐車スペースは関連性を有さず、第２の駐車スペースのための関連性を有する音声コマンドがないため、第２の駐車スペースの３Ｄオーバーレイを描画しないことにと決定する
【０１５０】
図５を参照すると、いくつかの実装形態による３Ｄ−ＨＵＤ２３１において表示される例示的な第５の３Ｄオーバーレイ５００のグラフィック表現が示されている。
【０１５１】
ソーシャル・ネットワーク・アプリケーション１１１は流行（トレンド）の目的地を特定することができる。目的地は、運転者１２５の、または運転者一般の間での流行の対象とすることができる。視覚コンテキストアプリケーション１９９は、流行の目的地に通ずる道路を特定し、運転者１２５にこの流行を知らせる３Ｄ−ＨＵＤ２３１上の３Ｄオーバーレイを描画することができる。第５の３Ｄオーバーレイ５００は、流行の目的地に通ずる道路と関連付けられている。
【０１５２】
いくつかの実装形態において、第５の３Ｄオーバーレイは、順類に情報だけであり、音声コマンドと関連付けられないものとすることができる。
【０１５３】
いくつかの実装形態において、車両１０３は自動運転車両とすることができ、第５の３Ｄオーバーレイは、車両１０３を流行の目的地に通ずる道路へ向けさせる音声コマンドと関連付けることができる。
【０１５４】
図６を参照すると、いくつかの実装形態による３Ｄ−ＨＵＤ２３１において表示される例示的な第６の３Ｄオーバーレイ６００のグラフィック表現が示されている。
【０１５５】
視覚コンテキストアプリケーション１９９によって特定されるオブジェクトは必ずしも店舗とは限らない。例えば、オブジェクトは他の車両とすることができる。いくつかの実装形態において、音声コマンドデータ２９６は、３Ｄ−ＨＵＤ２３１を介して見える車両に追従する音声コマンドを含むことができ、視覚コンテキストアプリケーション１９９は、どの車両に追従すべきかに関するオプションを与えることができる。運転者１２５が「車両Ｘに追従」と言うと、視覚コンテキストアプリケーション１９９は、運転者１２５が車両に追従するのを支援し、または、車両１０３が自動運転車両である場合には、自動運転車両１０３を第６の３Ｄオーバーレイ６００と関連付けられた特定された車両に追従させる３Ｄオーバーレイを提供する。
【０１５６】
例えば、２台の車両（車両Ａおよび車両Ｂ）が同じ目的地へ向かって走行しているものと仮定する。車両Ａの運転者は目的地に到達するために取るべき最適な経路を熟知している。車両Ｂの運転者は車両Ｂの３Ｄ−ＨＵＤ２３１を、運転者が車両Ａに追従するのを３Ｄ−ＨＵＤ２３１が容易にするように構成することができる。例えば、車両Ａは、車両Ｂの運転者が車両Ａに容易に追従することができるように車両Ｂの３Ｄ−ＨＵＤ２３１に異なるやり方で表示される。
【０１５７】
（方法）
図７Ａおよび図７Ｂは、いくつかの実装形態による、音声コマンドに対応した視覚コンテキストを提供するために、３Ｄ−ＨＵＤにおいて３Ｄオーバーレイを表示する例示的方法７００のフローチャートである。いくつかの実装形態において、視覚コンテキストアプリケーション１９９は、プロセッサ２２５に、プロセッサ２２５によって実行された場合に方法７００の１つまたは複数のステップを実行させるように構成されたコードおよびルーチンを含む。
【０１５８】
車両環境は車両の周囲の領域を含むことができる。車両環境は、車両自体、他の車両、
１つまたは複数の店舗、１つまたは複数の公共駐車スペース、１つまたは複数の駐車場、１つまたは複数のレクリエーションエリア（公園、ビーチ、登山道）、１つまたは複数の緊急サービス（病院、警察署など）、１つまたは複数の関心地点（旅行目的地、ランドマーク、流行の場所、友人が所在する場所）などのうちの１つ以上を含むことができる。
【０１５９】
車両は、車両環境内に存在するシーンの画像を取り込むために車両に搭載された外部カメラを含む。外部カメラは視覚コンテキストアプリケーションに通信可能に結合する。視覚コンテキストアプリケーションは外部カメラの動作を制御するように動作する。
【０１６０】
いくつかの実装形態において、ステップ７０２で、視覚コンテキストアプリケーションは、カメラに、車両環境内のオブジェクトのうちの１つまたは複数の画像を取り込ませるようにカメラを操作することができる。画像は、現時点において３Ｄ−ＨＵＤを介して運転者が見ることのできる車両環境内のシーンを含むことができる。
【０１６１】
車両は全地球測位システム（ＧＰＳ）ユニットを含むことができる。視覚コンテキストアプリケーションはＧＰＳユニットに通信可能に結合することができる。視覚コンテキストアプリケーションはＧＰＳユニットの動作を制御するように動作することができる。ＧＰＳユニットはＤＳＲＣ準拠のＧＰＳユニットとすることができる。
【０１６２】
いくつかの実装形態において、ステップ７０４で、視覚コンテキストアプリケーションは車両のＧＰＳ座標を決定することができる。
【０１６３】
車両は通信ユニットを含む。通信ユニットはネットワークに通信可能に結合する。通信ユニットはネットワークを介して１つまたは複数のサービスからデータを検索し、またはそれ以外の方法で受け取ることができる。サービスには、ソーシャル・ネットワーク・サービス、ディレクトリサービス、地図サービスおよび気象サービスが含まれうる。ソーシャル・ネットワーク・サービスは、１つまたは複数のソーシャルネットワークを提供することができる。ディレクトリサービスは、１つまたは複数の目的地（例えば、店舗、レクリエーションエリア、関心地点、ランドマークなど）を表すデータを提供することができる。気象サービスは、現在の天気または天気予報を記述する情報を提供することができる。
【０１６４】
いくつかの実装形態において、ステップ７０６で、視覚コンテキストアプリケーションは、ＧＰＳ座標で示される地域の近くの１つまたは複数の店舗、公園、ビーチおよび関心地点のディレクトリデータを検索することができる。
【０１６５】
いくつかの実装形態において、ステップ７０８で、視覚コンテキストアプリケーションは、画像に存在するオブジェクトを特定するために１つまたは複数の画像を解析する。視覚コンテキストは、オブジェクト事前情報を用いて、画像に含まれる目的地（例えば、候補の店舗、駐車スペースおよび他のオブジェクト）を特定する。ディレクトリデータは次いで、目的地の名称をさらに特定するのに用いられる。
【０１６６】
いくつかの実装形態において、ステップ７１０で、視覚コンテキストアプリケーションは、ＧＰＳ座標で示される地域の気象データを検索する。
【０１６７】
いくつかの実装形態において、ステップ７１２で、視覚コンテキストアプリケーションは運転者のソーシャルデータを検索する。
【０１６８】
いくつかの実装形態において、ステップ７１４で、視覚コンテキストアプリケーションは、現在時刻および曜日を記述する時間データを決定する。
【０１６９】
次に図７Ｂを参照する。いくつかの実装形態においては、画像に含まれる特定されたオブジェクトごとに、ステップ７１６で、視覚コンテキストアプリケーションは、現在時刻、今日の日付、車両位置、および他の条件（気象条件、ソーシャルメディア条件など）のうちの１つまたは複数が与えられた場合に、オブジェクトが運転者とどのように関連性を有するか判定する。例えば、オブジェクトが閉まっている店舗である場合には、オブジェクトは関連性を有しない。オブジェクトが公園や遊園地であるが気象条件が悪い場合には、オブジェクトは関連性を有しない。オブジェクトが駐車スペースであるが、時刻が理由で、運転者が駐車スペースに駐車することが現在は違法である場合には、オブジェクトは関連性を有しない。
【０１７０】
車両は音声コマンドシステムを含む。音声コマンドシステムは音声コマンドセットを含む。音声コマンドシステムは、音声コマンドの受け取りに基づいて１つまたは複数の車両機能を制御するように動作する。例えば、運転者が「駐車スペースに駐車」と言った場合には、音声コマンドシステムは、車両の自動駐車システムに目標の駐車スペースに駐車させるように動作する。
【０１７１】
上記の例では、音声コマンドは音声コマンドのターゲットと関連性を有する（すなわち、音声コマンドのターゲットは駐車スペースである）ものであった。しかし、音声コマンドシステムはターゲットと関連性を有しない他の音声コマンドを含む。例えば、音声コマンドシステムは、駐車スペースを含むターゲットと関連性を有しない、「ラジオの音量を上げて」といった音声コマンドを含むことができる。
【０１７２】
いくつかの実装形態において、ステップ７１８で、視覚コンテキストアプリケーションは、オブジェクト識別情報が与えられた場合に、利用できる音声コマンドのうちのどれが画像内の特定されたオブジェクトおよび運転者と関連性を有するか判定する（例えば、オブジェクトが店舗である場合には、ラジオの音量を上げる音声コマンドはオブジェクトと関連性を有しない。しかし、店舗に電話をかける音声コマンドは関連性を有する。別の関連性を有する音声コマンドは、例えば、店舗に関する情報を要求するものである）。このステップは、３Ｄ−ＨＵＤにおいて見ることができると特定されたオブジェクトの各々について繰り返される。
【０１７３】
いくつかの実装形態において、ステップ７２０で、視覚コンテキストアプリケーションは、３Ｄ−ＨＵＤにおいてオブジェクトの近くに表示するためのグラフィックを決定する。グラフィックはオーバーレイを含む。オーバーレイは３Ｄオーバーレイとすることができる。グラフィックはいくつかの実装形態においては動画化することができる。
【０１７４】
いくつかの実装形態において、ステップ７２２で、視覚コンテキストアプリケーションは、どの音声コマンドがオブジェクトに利用できるかが運転者にわかるようにオブジェクトのセンサ座標を運転者の視点座標に変換することによって、オブジェクトに近接して３Ｄ−ＨＵＤ上にグラフィックを描画する。
【０１７５】
いくつかの実装形態においては、閉まっている店舗について、ステップ７２４で、視覚コンテキストアプリケーションは、運転者に店舗の名称および店舗が閉まっていることを示す営業時間を知らせる３Ｄ−ＨＵＤ上のグラフィックを描画する。
【０１７６】
いくつかの実装形態において、ステップ７２６で、視覚コンテキストアプリケーションは、グラフィックがユーザの注意をそらし、または安全リスクをもたらすことになるかどうか事前に判定し、それらが安全リスクをもたらすことになる場合には特定のグラフィックの描画を選択的に抑制する。
例えば、２つのグラフィックが描画されることになっており、１つのグラフィックは運転者の対面交通の視界を見えにくくし、他方のグラフィックはそうではない場合には、運転者の交通の視界を見えにくくしないグラフィックを描画する。
【０１７７】
いくつかの実装形態において、ステップ７２８で、視覚コンテキストアプリケーションは、音声コマンドを提供するために運転者の声を聴き取る。音声コマンドが与えられた場合、視覚コンテキストアプリケーションは音声コマンドに基づいて処理を行う。例えば、視覚コンテキストアプリケーションは、音声コマンドシステムに、音声コマンドを遂行する処理を行わせるように動作することができる。
【０１７８】
以上の説明では、本発明を十分に理解できるように、多くの詳細について説明した。しかしながら、各実施形態はこれらの具体的な詳細無しでも良いことは当業者にとって明らかであろう。また、説明が不明瞭になることを避けるために、構造や装置をブロック図の形式で表すこともある。たとえば、一実施形態は、ユーザインタフェースおよび特定のハードウェアとともに説明される。しかし、ここでの説明は、データおよびコマンドを受信する任意のタイプの計算装置および任意の周辺機器について適用できる。
【０１７９】
本明細書における「一実施形態」または「ある実施形態」等という用語は、その実施形態と関連づけて説明される特定の特徴・構造・性質が少なくとも本発明の一つの実施形態に含まれることを意味する。「一実施形態における」等という用語は本明細書内で複数用いられるが、これらは必ずしも同一の実施形態を示すものとは限らない。
【０１８０】
以上の詳細な説明の一部は、非一時的（non-transitory）なコンピュータ可読記憶媒体に記憶されたデータビットに対する動作のアルゴリズムおよび記号的表現として提供される。これらのアルゴリズム的な説明および表現は、データ処理技術分野の当業者によって、他の当業者に対して自らの成果の本質を最も効果的に説明するために用いられるものである。なお、本明細書において（また一般に）アルゴリズムとは、所望の結果を得るための論理的な手順を意味する。処理のステップは、物理量を物理的に操作するものである。必ずしも必須ではないが、通常は、これらの量は記憶・伝送・結合・比較およびその他の処理が可能な電気的または磁気的信号の形式を取る。通例にしたがって、これらの信号をビット・値・要素・エレメント・シンボル・キャラクタ・項・数値などとして称することが簡便である。
【０１８１】
なお、これらの用語および類似する用語はいずれも、適切な物理量と関連付いているものであり、これら物理量に対する簡易的なラベルに過ぎないということに留意する必要がある。以下の説明から明らかなように、特に断らない限りは、本明細書において「処理」「計算」「コンピュータ計算（処理）」「判断」「表示」等の用語を用いた説明は、コンピュータシステムや類似の電子的計算装置の動作および処理であって、コンピュータシステムのレジスタやメモリ内の物理的（電子的）量を、他のメモリやレジスタまたは同様の情報ストレージや通信装置、表示装置内の物理量として表される他のデータへ操作および変形する動作および処理を意味する。
【０１８２】
本発明は、本明細書で説明される動作を実行する装置にも関する。この装置は要求される目的のために特別に製造されるものであっても良いし、汎用コンピュータを用いて構成しコンピュータ内に格納されるプログラムによって選択的に実行されたり再構成されたりするものであっても良い。このようなコンピュータプログラムは、コンピュータのシステムバスに接続可能な、例えばフロッピー（登録商標）ディスク・光ディスク・ＣＤ−ＲＯＭ・ＭＯディスク・磁気ディスクなど任意のタイプのディスク、読み込み専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カード、フラッシュメモリ、光学式カード、電子的命令を格納するために適した任意のタイプの媒
体などの、非一時的なコンピュータ可読記憶媒体に記憶される。
【０１８３】
発明の具体的な実施形態は、完全にハードウェアによって実現されるものでも良いし、完全にソフトウェアによって実現されるものでも良いし、ハードウェアとソフトウェアの両方によって実現されるものでも良い。好ましい実施形態は、ソフトウェアによって実現される。ここでソフトウェアとは、ファームウェア、常駐ソフトウェア、マイクロコードやその他のソフトウェアを含むものである。
【０１８４】
さらに、ある実施形態は、コンピュータが利用あるいは読み込み可能な記憶媒体からアクセス可能なコンピュータプログラムプロダクトの形態を取る。この記憶媒体は、コンピュータや任意の命令実行システムによってあるいはそれらと共に利用されるプログラムコードを提供する。コンピュータが利用あるいは読み込み可能な記憶媒体とは、命令実行システムや装置によってあるいはそれらと共に利用されるプログラムを、保持、格納、通信、伝搬および転送可能な任意の装置を指す。
【０１８５】
プログラムコードを格納・実行するために適したデータ処理システムは、システムバスを介して記憶素子に直接または間接的に接続された少なくとも１つのプロセッサを有する。記憶素子は、プログラムコードの実際の実行に際して使われるローカルメモリや、大容量記憶装置や、実行中に大容量記憶装置からデータを取得する回数を減らすためにいくつかのプログラムコードを一時的に記憶するキャッシュメモリなどを含む。
【０１８６】
入力／出力（Ｉ／Ｏ）装置は、例えばキーボード、ディスプレイ、ポインティング装置などであるが、これらはＩ／Ｏコントローラを介して直接あるいは間接的にシステムに接続される。
【０１８７】
システムにはネットワークアダプタも接続されており、これにより、私的ネットワークや公共ネットワークを介して他のデータ処理システムやリモートにあるプリンタや記憶装置に接続される。モデム、ケーブルモデム、イーサネット（登録商標）は、現在利用可能なネットワークアダプタのほんの一例である。
【０１８８】
最後に、本明細書において提示されるアルゴリズムおよび表示は特定のコンピュータや他の装置と本来的に関連するものではない。本明細書における説明にしたがったプログラムを有する種々の汎用システムを用いることができるし、また要求された処理ステップを実行するための特定用途の装置を製作することが適した場合もある。これら種々のシステムに要求される構成は、以下の説明において明らかにされる。さらに、本発明は、特定のプログラミング言語と関連づけられるものではない。本明細書で説明される本発明の内容を実装するために種々のプログラミング言語を利用できることは明らかであろう。
【０１８９】
実施形態の前述の説明は、例示と説明を目的として行われたものである。したがって、開示された実施形態が本発明の全てではないし、本発明を上記の実施形態に限定するものでもない。本発明は、上記の開示にしたがって、種々の変形が可能である。本発明の範囲は上述の実施形態に限定解釈されるべきではなく、特許請求の範囲にしたがって解釈されるべきである。本発明の技術に詳しい者であれば、本発明はその思想や本質的特徴から離れることなくその他の種々の形態で実現できることを理解できるであろう。同様に、モジュール・処理・特徴・属性・方法およびその他の本発明の態様に関する名前付けや分割方法は必須なものでものないし重要でもない。また、本発明やその特徴を実装する機構は異なる名前や分割方法や構成を備えていても構わない。さらに、当業者であれば、モジュール・処理・特徴・属性・方法およびその他の本発明の態様は、ソフトウェア、ハードウェア、ファームウェアもしくはこれらの組合せとして実装できることを理解できるであろう。また、本発明をソフトウェアとして実装する場合には、モジュールなどの各要素は、ど
のような様式で実装されても良い。例えば、スタンドアローンのプログラム、大きなプログラムの一部、異なる複数のプログラム、静的あるいは動的なリンクライブラリー、カーネルローダブルモジュール、デバイスドライバー、その他コンピュータプログラミングの当業者にとって既知な方式として実装することができる。さらに、本発明の実装は特定のプログラミング言語に限定されるものではないし、特定のオペレーティングシステムや環境に限定されるものでもない。以上のように、上記の本発明の説明は限定的なものではなく例示的なものであり、本発明の範囲は添付の特許請求の範囲にしたがって定められる。
【符号の説明】
【０１９０】
１００  動作環境
１０１  ソーシャル・ネットワーク・サーバ
１０３  車両
１０４  外部カメラ
１１１  ソーシャル・ネットワーク・アプリケーション
１２５  運転者
１３０  ディレクトリサーバ
１３１  ディレクトリデータ
１７０  気象サーバ
１７１  気象データ
１９０  地図サーバ
１９１  地図データ
１９８  車両環境
１９９  視覚コンテキストアプリケーション
【図１】
0006418266.tif 000002
【図２Ａ】
0006418266.tif 000003
【図２Ｂ】
0006418266.tif 000004
【図３】
0006418266.tif 000005
【図４】
0006418266.tif 000006
【図５】
0006418266.tif 000007
【図６】
0006418266.tif 000008
【図７Ａ】
0006418266.tif 000009
【図７Ｂ】
0006418266.tif 000010