交通渋滞または何かの事故あるいはその他の出来事が発生した場合、ラジオ放送またはテレビ放送を除いて、周囲の環境を知るのが困難であることがある。
さらに、トラックまたはバスなどの大きい車両が、ある車両の前または後を走っている場合、この車両自体の前方または後方の環境を知るのが困難であることがある。
したがって、1つまたは複数の他の車両の前方または後方の環境などの、1つまたは複数の他の車両の周囲の環境を知るために、1つまたは複数の他の車両によって撮影された画像データまたは視界を取得する必要があることがある。
さらに、指定された車両によって撮影された画像、または指定された環境(指定された位置または指定された対象など)に関する画像を、運転中にリアルタイムに見る必要がある。
本発明の1つの態様に従って、本発明の実施形態は、車載カメラによって撮影された画像データを転送するためのコンピュータ実装方法を提供する。
1つの実施形態では、この方法は、車両の近くに位置する車両に関する画像データおよび情報(以下では、「近傍車両情報」とも呼ばれる)を受信することであって、互いに通信できる複数の車両の各々から画像データおよび近傍車両情報が連続的に転送されている、受信することと、近傍車両情報に基づいて、一連の車両に関する情報を生成することと、その後、画像データを一連の車両に関する情報に関連付けることとを含む。
別の実施形態では、この方法は、一連の車両が複数のグループから成り、グループの各々が、複数のグループのうちの2つ以上のグループに共通して属している少なくとも1つの車両を含み、少なくとも1つの車両が画像データおよび近傍車両情報を2つ以上のグループに転送するということを、さらに含んでよい。
さらに別の実施形態では、この方法は、特定の車両のユーザの選択に応答して、指定された車両の車載カメラによって撮影された画像データが連続的に転送されるということを、さらに含んでよい。
さらに別の実施形態では、この方法は、特定の位置または特定の対象のユーザの選択に応答して、指定された位置または指定された対象の近くに位置する車両の各々の車載カメラによって撮影された画像データがそれぞれ連続的に転送されるということを、さらに含んでよい。各車両は、指定された位置または指定された対象の近くを移動していてよい。
さらに別の実施形態では、この方法は、表示データを生成することと、画像データを使用することと、その後、任意選択的に表示データを車両内のディスプレイ・デバイスに提示することとを、さらに含んでよい。
本発明の別の態様によれば、プロセッサと、本明細書に記載された1つまたは複数の方法を実行するためにプロセッサによって実行できる命令のプログラムを格納するメモリとを備えている、コンピュータ・システムなどのシステムが提供されてよい。
本発明の別の態様によれば、本明細書に記載された1つまたは複数の方法を実行するためにシステムによって実行できる命令のプログラムを格納するコンピュータ可読記憶媒体を備えている、コンピュータ・プログラム製品が提供されてもよい。
本発明の前述の実施形態によれば、1つまたは複数の他の車両の車載カメラによって撮影された画像データが提供され、さらに、この画像データが、一連の車両に関する情報に関連付けられる。
本発明の前述の別の実施形態によれば、画像データは、画像が撮影されたグループとは異なる1つまたは複数のグループの各々に属する車両に転送され得る。したがって、画像データは、車両が同じグループに属していない場合でも、車両に転送され得る。言い換えると、画像データはグループ間で転送され得る。
本発明の前述の実施形態によれば、車両内のユーザは、ユーザによって指定された車両の車載カメラによって連続的に撮影された画像を見ることができる。したがって、ユーザは、ユーザによって指定された車両の車載カメラによって撮影された画像を介して、周囲の環境を知ることができる。
本発明の前述の実施形態によれば、車両内のユーザは、指定された位置または指定された対象の近くを移動している車両の各々の車載カメラによって撮影された画像データの転送を介して、ユーザによって指定された位置または対象の画像を見ることができる。
本発明のさまざまな実施形態の説明は、例示の目的で提示されているが、網羅的であることは意図されておらず、開示された実施形態に制限されない。説明された実施形態の範囲を逸脱することなく多くの変更および変形が可能であることは、当業者にとって明らかである。本明細書で使用された用語は、実施形態の原理、実際の適用、または市場で見られる技術を超える技術的改良を最も良く説明するため、または他の当業者が本明細書で開示された実施形態を理解できるようにするために選択されている。
当業者によって理解されるように、本発明の実施形態は、方法、システム、またはコンピュータ・プログラム製品として具現化されてよい。したがって、本発明の実施形態は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)、またはソフトウェアの態様とハードウェアの態様を組み合わせる実施形態の形態を取ってよく、これらはすべて、本明細書では、一般に「回路」、「モジュール」、または「システム」と呼ばれてよい。
本明細書で使用される用語をさらに明確に定義するために、以下では例示的な定義が提供されるが、これらの用語の意味は、本発明が関連する技術分野において知られているように、幅広く解釈されるべきである。
本明細書において使用されるとき、「車両」という用語は、任意の適切な移動車両のことを指す。そのような車両は、例えば、乗用車、トラック、バス、およびその他の四輪車両を含む4つ以上の車輪付きの車両、オートバイ、自転車、およびその他の二輪車両を含む二輪車両、ならびに列車などの、任意の数の車輪付きの車両を含んでよいが、これらに限定されない。
車両は、車両を囲む事前に定義された領域内の画像(すなわち、視覚的情報)を車両が撮影できるようにするために、車載カメラを備えてもよい。
車両は、下で説明される通信ユニットを使用してネットワークを介して車両が車両間で通信できるようにするためのデバイスを備えてもよい。
車両は、車両自体の位置または地理的位置に関する情報を取得するためのGPSユニットまたは任意の適切な位置情報デバイスを、さらに備えてよい。適切な位置情報デバイスは、例えば、電子コンパス、三角測量デバイス、レーダー、ソナー、またはこれらの組み合わせであってよいが、これらに限定されない。以下では、便宜上、GPSが説明される。
本明細書において使用されるとき、「車載カメラ」という用語は、画像を撮影し、画像データとして格納するのに適した任意のカメラのことを指す。例えば、車載カメラを備えている車両の前を走っている車両の画像を記録するために、車載カメラが車両に備えられてよい。
以下では、図1および図2、図3、図4および図5、図6および図7、図8および図9、図10および図11、図12~15、図16および図17、図18および図19、図20、図21および図22、ならびに図23および図24を参照して、本発明の実施形態が詳細に説明される。
本発明の実施形態の考え方は、以下の認識に基づく。
技術開発において、車両が、車載カメラ、V2V通信などの通信ユニット、およびGPSを備える傾向がある。したがって、車載カメラ、V2V通信などの通信ユニット、および任意選択的にGPSを使用して、1つまたは複数の他の車両によって撮影された画像データまたは視界を取得するための新しいメカニズムが確立される。
ここで図1を参照すると、図1は、本発明の実施形態において使用されてよい、車両の例示的な基本ブロック図を示している。
車両(101)は、例示的な基本ブロック図として示されている。車両(101)は、通常、コントローラ(111)およびエンジン制御ユニット(ECU:engine control unit)(124)を備えてよい。さらに、車両(101)は、車載カメラ(121)、通信ユニット(122)、および全地球測位システム(GPS:global positioning system)または任意の適切な位置情報ユニット(123)を備えてよい。以下では、GPSまたは任意の適切な位置情報ユニット(123)は、単にGPSユニット(123)と呼ばれる。
コントローラ(111)は、非汎用の電子制御デバイスであってよく、入出力周辺機器またはポート(131)、メモリまたはコンピュータ可読媒体(141)、およびプロセッサ(142)を備えてよい。以下では、メモリまたはコンピュータ可読媒体(141)は、単にメモリ(141)と呼ばれる。コントローラ(111)は、車載カメラ(121)、通信ユニット(122)、GPSユニット(123)、およびECU(124)と通信できる。
車載カメラ(121)は、1つまたは複数の光センサまたはカメラを含む。車載カメラ(121)は、車両(101)を囲む事前に定義された領域内の画像(すなわち、視覚的情報)を撮影するよう機能する。車載カメラ(121)は、通常、それ自身の車両の前に存在してよい。車載カメラ(121)からの視覚的データは、コントローラ(111)に伝達される。車載カメラ(121)は、走行中に(例えば、事前に定義された期間内で)継続的に画像を撮影し、撮影された画像を画像データとしてストレージ(例えば、メモリ(141))に格納してよい。車載カメラ(121)は、車両の近くに位置する車両(または「近傍車両」)の画像をさらに撮影してよい。近傍車両情報の画像は、近傍車両情報を取得するために使用され得る。近傍車両情報は、プロセッサ(142)によって生成されてよい。
通信ユニット(122)は、1つまたは複数の他の車両(例えば、リモートV2Vを備える1つまたは複数の車両)から無線データを受信するよう機能する受信機を含む。通信ユニット(122)は、V2Vネットワーク(例えば、モバイル・アドホック・ネットワーク(MANET:mobile ad hoc networks)、車両アドホック・ネットワーク(VANET:vehicular ad hoc networks)、またはインテリジェント車両アドホック・ネットワーク(InVANET:Intelligent vehicular ad hoc networks)を含むアドホックV2Vネットワーク)などの車両ネットワークを使用して、1つまたは複数の他の車両と通信できる。通信ユニット(122)は、画像データ、GPS情報、および近傍車両情報などの任意のデータを受信することができ、これらのデータはすべて、1つの車両、または互いに通信できる複数の車両の各々から取得される。このデータは、コントローラ(111)に伝達される。通信ユニット(122)は、画像データ、GPS情報、および近傍車両情報などの任意のデータを、1つまたは複数の他の車両に転送することもできる。このデータは、本明細書において以下で説明される基本データであってよい。
GPSユニット(123)は、従来技術において知られた手法に従って、車両(101)自体の位置または地理的位置に関する情報および時間情報を取得できる。GPSユニット(123)から取得された情報は、メモリ(141)に格納され得る。
ECU(124)は、制動制御システム、スロットル制御システム、ステアリング制御システム、車体制御システムなどの、任意の車両制御システムであってよい。ECU(124)は、車両の安全性または運転者の運転能力あるいはその両方を向上させるために、車両システムを自動化するか、適応させるか、または強化する、高度運転者支援システム(ADAS:advanced driver assistance system)機能を含む。例えば、ECU(124)は、可能性のある問題を運転者に警告するか、または車両(101)を自律的に制御するなどの安全装置を実装することによって衝突を回避するために、ADAS技術を含んでよい。ECU(124)は、自動照明、自動駐車、アダプティブ・クルーズ・コントロール、自動制動、またはカメラ技術を使用して改善された盲点除去などの、特定のシステムを強化するADAS機能を含んでよい。ECU(124)は、画像データ、位置に関する情報、および1つまたは複数の他の車両から取得された任意のデータを処理するために、ADAS機能などのアクションのコマンドを構文解析することもできる。
メモリ(141)は、制御論理、命令、画像データ、近傍車両情報、位置に関する情報、ルックアップ・テーブルなどの、任意のデータを格納できる。
プロセッサ(142)は、制御論理または命令を実行するように構成される。コントローラ(111)は、視覚的データを解析するための知覚論理回路または専用V2V回路などの、プロセッサ(142)と通信する追加のプロセッサまたは追加の集積回路を含んでよい。
車両(101)は、入出力周辺機器またはポート(131)を介して車載カメラ(121)から取得された画像データ、および入出力周辺機器またはポート(131)を介してプロセッサ(142)から取得された近傍車両情報をさらに受信してよい。
車両(101)は、本発明の実施形態に従って生成された表示データを提示できるディスプレイ・ユニット(図示されていない)をさらに備えてよい。
ここで図2を参照すると、図2は、本発明の実施形態の1つの対象である、画像データを含んでいる表示データをリアルタイムに提示する例示的な図を示している。
例示的な図(151)は、複数の車両(161~166)が現在車線上を移動していることを示している。車両(161~166)の各々は、車載カメラ(121)および通信ユニット(122)を含んでいる。
車両(161~166)の各々は、車載カメラ(121)を使用して画像を連続的に撮影し、その画像を画像データとしてメモリ(141)に格納し、その後、その画像データを他の車両に転送することができる。
本発明の一実施形態によれば、車両(163)は、表示データ(170)を車両(163)のディスプレイ・デバイス上に提示することができる。表示データ(170)は、車両(163)自体からの視界(171)に加えて、車両(161)からの視界(173)および車両(162)からの視界(172)を含む。したがって、車両(163)内の運転者を含む人は、車両(163)自体の2台前を移動している車両(161)からの視界、および車両(163)自体の前を移動している車両(162)からの視界をリアルタイムに見ることができる。
本発明の別の実施形態によれば、車両(163)は、表示データ(180)を車両(163)のディスプレイ・デバイス上に提示することができる。表示データ(180)は、電子地図を含み、電子地図上に表示される車両(163)自体からの視界(181)に加えて、車両(161)からの視界(183)および車両(162)からの視界(182)をさらに含む。さらに、表示データ(180)は、電子地図上に表示される車両(164)からの視界(184)を含んでもよい。したがって、車両(163)内の運転者を含む人は、車両(163)自体の2台前を移動している車両(161)からの視界(183)、および車両(163)自体の前を移動している車両(162)からの視界(182)をリアルタイムに見ることができる。さらに、表示データ(180)が車両(164)からの視界(184)を含んでいる場合、車両(163)内の人は、車両(163)自体の後ろを移動している車両(164)からの視界(184)をリアルタイムに見ることができる。
本発明の前述の一実施形態および前述の別の実施形態を実装するために、以下では、残りの図を参照して詳細が説明される。
ここで図3を参照すると、図3は、本発明の実施形態において使用されてよい、車両の例示的な図、およびさらに、車両を含んでいるグループを定義する例示的な図を示している。
例示的な図(201)は、複数の車両(211-1~211-11)が現在3つの車線(271、272、および273)の各々の上を移動していることを示している。
車両(211-1~211-11)の各々は、車載カメラ(121)および通信ユニット(122)を含んでいる。車両(211-1~211-11)の各々は、車載カメラ(121)を使用して画像を連続的に撮影し、その画像を画像データとしてメモリ(141)に格納し、その後、その画像データを他の車両に転送することができる。
この画像データは、通信ユニット(122)を使用して通信を利用できる領域に転送され得る。
したがって、1つの実施形態では、画像データの転送は、通信を利用できる領域内で実行することができ、別の実施形態では、画像データの転送は、通信を利用できる領域内、およびさらに、車両を含んでいるグループを使用して、その領域と、その領域とは異なる別の領域との間で、実行することができる。
本発明の前述の一実施形態では、画像データの転送は、車両を含んでいるグループを使用せずに実行され得る。
ここで、本発明の前述の一実施形態を説明するために、車両(211-6)に注目する。点線(275)は、車両(211-6)が他の各車両と通信できる領域を示している。したがって、車両(211-6)から転送された画像データは、車両(車線(271)上の211-1および211-2、車線(272)上の211-4、211-5、および211-7、ならびに車線(273)上の211-8、211-9、および211-10)よって受信することができる。例えば転送は、画像データをブロードキャストすることによって行われ得る。一方、車両(211-6)から転送された画像データは、車両(車線(272)上の211-3および車線(273)上の211-11)によって受信することができない。したがって、本発明の前述の一実施形態は、本発明の以下の別の実施形態において述べられているようなグループを定義することなく、車両(すなわち、車両(211-1、211-2、211-4、211-5、211-7、211-8、211-9、211-10))によって実行され得る。
以下では、以下の図4、5、および6を参照することによって、本発明の前述の一実施形態の詳細が説明される。
本発明の前述の別の実施形態では、画像データの転送は、車両を含んでいるグループを使用することによって実行され得る。
ここで、前述の別の実施形態を説明するために、車両(211-6)に注目する。車両(211-6)は、車両(211-6)からの画像データの転送先になることができるグループを定義する能力を有してよい。このグループを定義するために、車両(211-6)は、ホスト車両の役割を果たすことができる。車両(211-6)は、車両(211-1、211-2、211-4、211-5、211-7、211-8、211-9、211-10)を含んでいるグループを定義することができる。このグループは、点線(275)で示すことができる。グループ内の他の車両(211-1、211-2、211-4、211-5、211-7、211-8、211-9、211-10)の各々は、メンバー車両の役割を果たすことができる。同様に、ホスト車両の役割を果たすことができる1つまたは複数の他の車両によって、別のグループまたは他のグループが定義され得る。従来技術において知られた任意の既知の方法が、グループの定義に使用され得る。したがって、本発明の前述の別の実施形態は、グループによって、またはグループ間で実行され得る。
グループの各々に属する車両が動的に変更されるということに注意する。これは、各車両が、例えば、道路上の車線を変更することによって、方向を変更することによって、交通信号または交通渋滞に起因して停止することによって、動的に移動しているためである。
以下では、以下の図4、5、および7を参照することによって、本発明の前述の別の実施形態の詳細が説明される。
ここで図4および5を参照すると、図4および5は、車両の車載カメラによって撮影された画像データを転送するためのプロセスの例示的なフローチャートの実施形態を示している。
この車両は、図1に示されている車両(101)に対応する。
以下では、図2で説明された本発明の前述の一実施形態が最初に説明される。この実施形態では、画像データの転送は、車両を含んでいるグループを使用せずに実行され得る。
この実施形態では、車両の各々が基本データを生成してよい。基本データは、例えば、以下の(1)~(6)を含んでよい。
(1)自車両情報および近傍車両情報のセット。自車両情報は、例えば、自動車のナンバー・プレートなどの自車両のナンバー・プレート上の文字、番号、もしくはその組み合わせ、または車両IDの番号、自車両の任意のその他の一意の識別子、自車両に関連付けられたIPアドレス、あるいは任意のその他の一意の識別子であってよいが、これらに限定されない。同様に、近傍車両情報は、例えば、自動車のナンバー・プレートなどの車両のナンバー・プレート上の文字、番号、またはその組み合わせ、車載カメラ(121)から取得される車両の任意のその他の一意の識別子、車両に関連付けられたIPアドレス、あるいは任意のその他の一意の識別子であってよいが、これらに限定されない。自車両情報および近傍車両情報のセットは、一連の車両に関する情報の生成に使用され得る。
(2)画像データ。画像データは、例えば、車載カメラ(121)によって撮影された画像データ自体、または車載カメラ(121)によって撮影された画像データ自体に基づいて処理されたデータを含む。画像データは、表示データの生成に使用され得る。
(3)車両の位置または地理的位置に関する情報。この情報は、座標、方向、高さまたは高度、あるいはこれらの組み合わせを含んでよい。この情報は、GPSユニット、ジャイロ・センサ、高度センサ、またはこれらの組み合わせによって取得され得る。この情報は、表示データの生成に使用され得る。
(4)データ識別子。データ識別子は、異なる車両間で一意でなければならず、そのためデータ識別子は、車両識別子と、画像データの識別子、画像データが車載カメラによって撮影された時刻に関する情報、連続番号、車両の移動距離、またはこれらの組み合わせなどの、一意の識別子との組み合わせであってよく、あるいは車両識別子および前述の一意の識別子に基づいて作成されてよい。基本データに埋め込まれたデータ識別子は、新たに受信されたデータがすでに受信されているかどうかを検証するために、各車両において使用され得る。
(5)タイムスタンプ。タイムスタンプは、画像データが車載カメラによって撮影された時刻を示す。画像データが撮影されることに応答して基本データが生成されているため、タイムスタンプは、基本データが生成された時刻におおよそ等しい時刻も示す。タイムスタンプは、表示データの生成に使用され得る。例えば、タイムスタンプは、画像データが撮影された時刻の情報を表示する目的、または古いタイムスタンプを有する画像データを表示しない目的に使用され得る。
(6)電子地図上の道路の位置に関する情報。この情報は、例えば、電子地図上のノード情報を含んでよい。この情報は、GPS、あるいはジャイロ・センサ、高度センサ、またはこれらの組み合わせなどの任意のセンサによって取得されたデータに基づいて生成され得る。この情報は、表示データの生成に使用され得る。
この実施形態では、下で述べられるステップ301~315が、表示データを提示できる車両(以後、この実施形態では、単に「車両」と呼ばれる)によって実行されてよい。
ステップ301で、車両が前述のプロセスを開始する。
ステップ302で、車両が、車両ネットワークを介して互いに通信できる車両の各々から、画像データおよび近傍車両情報を含んでいる基本データを受信する。この基本データは、車両の各々から連続的に転送され得る。
ステップ303で、車両は、例えば、車載カメラ(121)から取得された画像データ、およびGPSユニット(123)から取得された車両の位置または地理的位置に関する情報を受信する。車両は、画像データおよび位置に関する情報に基づいて基本データを生成し、その後、この基本データを、通信ユニット(122)を介して1つまたは複数の他の車両に転送する。例えば転送は、基本データをブロードキャストすることによって行われてよい。
ステップ302および303は、同時に、または交換可能なように実行され得る。
ステップ304で、車両は、近傍車両情報に基づいて一連の車両に関する情報のセットを生成する。
ステップ305で、車両は、画像データを一連の車両の情報に関連付ける。
任意選択的なステップ306で、車両が、画像データを使用して表示データを生成する。表示データは、管理者によって行われたデフォルト設定またはユーザによって行われた設定に従って生成され得る。
任意選択的なステップ307で、車両が、車両内のディスプレイ・デバイス上に表示データを提示する。1つの実施形態では、表示データは、複数の画像データ、複数の画像データからの2つ以上の画像を含んでいる結合された画像、またはこれらの組み合わせからの画像を結合することによって、あるいは複数の画像データからの画像を重ね合わせることによって、生成される。別の実施形態では、表示データは、電子地図を含む複数の画像データからの1つまたは複数の画像を結合することによって、生成される。
車両は、表示データを、例えば、車両のフロント・ガラス上の平坦または実質的に平坦な影のない領域上、カー・ナビゲーション・システムのディスプレイ・デバイス上、車両の前面パネルに埋め込まれたか、または取り付けられたディスプレイ・デバイス上、あるいは座席の裏側に埋め込まれたか、または取り付けられたディスプレイ・デバイス上に、提示することができる。
任意選択的なステップ308で、車両は、ディスプレイ・デバイス上で実行されるユーザの操作または音声コマンドを介して、特定の車両のユーザの選択に関する情報を車両が受信しているかどうかを判定する。選択される車両は、ユーザの車両(または自車両)とは異なる、別の車両であることができる。判定が肯定である場合、車両はステップ309に進む。一方、判定が否定である場合、車両はステップ310に進む。
任意選択的なステップ309で、車両が、特定の車両が指定されたことを示すコマンド、および任意選択的にホップ数を、1つまたは複数の他の車両に転送する。このコマンドは、選択される車両が、ユーザの車両(または自車両)とは異なる、別の車両であることができるという情報を含んでよい。1つまたは複数の他の車両がこのコマンドを受信した場合、この1つまたは複数の他の車両は、このコマンドを指定された車両に転送できる。指定された車両がコマンドを受信した場合、指定された車両は、指定された車両のデータ識別子を含んでいる画像データを1つまたは複数の他の車両に転送する。指定された車両が自車両である場合、自車両のすぐ前またはすぐ後にいる車両によって撮影された画像データが1つまたは複数の他の車両に転送される。
任意選択的なステップ310で、車両は、ディスプレイ・デバイス上で実行されるユーザの操作または音声コマンドを介して、特定の位置または特定の対象のユーザの選択に関する情報を車両が受信しているかどうかを判定する。判定が肯定である場合、車両はステップ311に進む。一方、判定が否定である場合、車両はステップ312に進む。
任意選択的なステップ311で、車両が、特定の位置または特定の対象が指定されたことを示すコマンド、および任意選択的にホップ数を、1つまたは複数の他の車両に転送する。1つまたは複数の他の車両がこのコマンドを受信した場合、この1つまたは複数の他の車両は、このコマンドを、指定された位置または指定された対象の画像を撮影するか、または撮影した車両に転送できる。指定された位置または指定された対象の画像を撮影するか、または撮影した車両、あるいは指定された位置または指定された対象の近くを移動している車両がこのコマンドを受信した場合、この車両は、この車両の車載カメラによって撮影された画像データを1つまたは複数の他の車両に転送する。画像データは、指定された位置または指定された対象の画像を含んでよい。
任意選択的なステップ312で、車両は、ディスプレイ・デバイス上で実行されるユーザの操作または音声コマンドを介して、推奨される通知のユーザの選択に関する情報を車両が受信しているかどうかを判定する。判定が肯定である場合、車両はステップ313に進む。一方、判定が否定である場合、車両はステップ314に進む。
任意選択的なステップ313で、車両が、推奨される通知を示すコマンド、および任意選択的にホップ数を、1つまたは複数の他の車両に転送する。推奨される通知は、特定の車両が推奨として指定されているということ、または特定の位置または特定の対象が推奨として指定されているということを含んでよい。特定の車両は、自車両を含んでよい。他の車両のうちの別の車両または1つの車両がこのコマンドを受信し、指定された車両またはソース車両のすぐ後を移動している場合、この別の車両または前述の1つの車両が、この別の車両または前述の車両の車載カメラによって撮影された画像データを1つまたは複数の他の車両に転送できる。この別の車両または前述の車両は、指定された車両の前または後ろを移動している車両であってよい。この画像データは、ソース車両の裏側の視界を含んでよい。
任意選択的なステップ314で、車両は、複数の車両がステップ302~313のプロセスを繰り返すかどうかを判定する。判定が肯定である場合、車両はステップ302に戻る。一方、判定が否定である場合、車両は最後のステップ315に進む。
例えば、車両が、車両ネットワークを介して互いに通信できる車両の各々からデータを連続的に受信する場合、車両は、判定が肯定であるということを決定する。
ステップ315で、車両が前述のプロセスを終了する。
ステップ302~313の繰り返しでは、車両が、新たに受信された近傍車両情報に基づいて、一連の車両に関する情報のセットを更新し、新たに受信された画像データを、一連の車両の更新された情報にさらに関連付け、その後、表示データを更新する。言い換えると、転送された近傍車両情報に基づいて一連の車両に関する情報が更新され、転送された画像データが、一連の車両に関する更新された情報に関連付けられると、概して言うことができる。したがって車両は、画像データに基づいて、更新された表示データを生成する。その後、車両は、前述の車両の各々から連続的に送信されている画像データを含んでいる表示データを、車両のディスプレイ・デバイス上にリアルタイムに提示する。
以下では、図2で説明された本発明の前述の別実施形態が次に説明される。この実施形態では、画像データの転送は、車両を含んでいるグループを使用することによって実行され得る。
この実施形態では、図3を参照して説明されたように、複数の車両を含んでいるグループが、ホスト車両によって定義される。グループに属する車両の各々は、基本データを生成してよい。基本データは、例えば、前述の(1)~(6)を含んでよい。
この実施形態では、下で述べられるステップ301~315が、表示データを提示できる、グループに属する車両(以後、この実施形態では、単に「車両」と呼ばれる)によって、実行されてよい。この車両は、グループのホスト車両またはメンバー車両であってよい。
ステップ301で、車両が前述のプロセスを開始する。
ステップ302で、車両が、車両ネットワークを介して、このグループ(以後、この実施形態では、「第1のグループ」と呼ばれる)に属する車両の各々から、画像データおよび近傍車両情報を含んでいる基本データを受信する。
第1のグループに属する車両(以後、この実施形態では、「第1の車両」と呼ばれる)が、別のグループ(以後、この実施形態では、「第2のグループ」と呼ばれる)にも属している場合、第1の車両が、第2のグループに属する他の車両のすべてから基本データを受信し、その後、受信された基本データを第1のグループに属する他の車両のすべてに転送する。したがって、ステップ302の対象である車両は、第2のグループに属する他の車両のすべてのうちの各々から転送された基本データを受信することができる。
同様に、第2のグループに属する車両(以後、この実施形態では、「第2の車両」と呼ばれる)が、別のグループ(以後、この実施形態では、「第3のグループ」と呼ばれる)にも属している場合、第2の車両が、第3のグループに属する他の車両のすべてから基本データを受信し、その後、受信された基本データを第2のグループに属する他の車両のすべてに転送する。したがって、第1の車両は、第3のグループに属する他の車両のすべてのうちの各々から転送された基本データを受信することができる。その結果、第1および第2のグループの両方に属する車両が、第1のグループに属する他の車両に基本データを転送する。第1および第2のグループの両方に属する車両は、第1の車両または第1の車両以外の車両であってよい。これは、第1のグループのメンバー車両が動的に変更される可能性があるためである。したがって、ステップ302の対象である車両は、第3のグループに属する他の車両のすべてのうちの各々から転送された基本データを受信することができる。
同様に、第2のグループに属する車両(以後、この実施形態では、「第2の車両」と呼ばれる)が、他のグループにも属している場合、第2の車両が、この他のグループの各々に属する他の車両のすべてから基本データを受信し、その後、受信された基本データを第2のグループに属する他の車両のすべてに転送する。したがって、第1の車両は、この他のグループの各々に属する他の車両のすべてのうちの各々から転送された基本データを受信することができる。その結果、第1および第2のグループの両方に属する車両が、第1のグループに属する他の車両に基本データを転送する。第1および第2のグループの両方に属する車両は、第1の車両または第1の車両以外の車両であってよい。これは、第1のグループのメンバー車両が動的に変更される可能性があるためである。したがって、ステップ302の対象である車両は、この他のグループの各々に属する他の車両のすべてのうちの各々に属する他の車両のすべてのうちの各々から転送された基本データを受信することができる。
画像データおよび近傍車両情報は、グループの各々に含まれる車両の各々から連続的に転送され得る。
ステップ303~315は、上で説明されたステップ303~315と同じである。したがって、ステップ303~315の重複する説明は、本明細書では省略される。
さらに、ステップ309で、指定された車両が、第1のグループと異なる別のグループに属する場合、指定された車両が属するグループにコマンドが転送されるまで、コマンドがグループ間で転送される。
さらに、ステップ311で、指定された位置または指定された対象の画像を撮影するか、または撮影した車両が、第1のグループと異なる別のグループに属する場合、この車両が属するグループにコマンドが転送されるまで、コマンドがグループ間で転送される。
さらに、ステップ313で、指定された自車両のすぐ後を移動している車両が、第1のグループと異なる別のグループに属する場合、指定された自車両のすぐ後を移動しているこの車両が属するグループにコマンドが転送されるまで、コマンドがグループ間で転送される。
図6および7は、基本データの生成、基本データの転送、および一連の車両に関する情報の生成の例示的な図の実施形態を示している。
ここで図6を参照すると、図6は、基本データの生成、通信を利用できる領域への基本データの転送、および基本データに基づく一連の車両に関する情報の生成の例示的な図の実施形態を示している。
例示的な図(401)は、複数の車両(411-1~411-6)が1本の車線(415)上を現在移動しており、別の車線上には、移動中の接近する車両が存在しないことを示している。
車両(411-1~411-6)の各々は、車載カメラ(121)を使用して画像を撮影し、その後、その画像を画像データとしてメモリ(141)に格納する。さらに、車両(411-1~411-6)の各々は、例えば車載カメラ(121)を使用して近傍車両情報を生成し、その後、自車両情報を近傍車両情報と組み合わせて、自車両情報および近傍車両情報のセットを生成する。このセットから、ある車両と、この車両の前を移動している車両との間の関連性を見つけることができる。例えば、車両(411-5)によって生成されたセット(419-5)は、自車両情報(425-1)および近傍車両情報(424-2)を含んでいる。このようにして、セット(419-1、419-2、419-3、419-4、419-5、および419-6)の各々が生成される。したがって、車両(411-1~411-6)によって保有される基本データの各々は、セット(419-1、419-2、419-3、419-4、419-5、および419-6)の各々をそれぞれ含む。
車両(411-1~411-6)の各々は、このセットを他の車両に転送する。例えば転送は、画像データをブロードキャストすることによって行われ得る。この画像データは、通信ユニット(122)を使用して通信を利用できる領域(491)内に存在する車両によって受信され得る。
ここで、一連の車両に関する情報を生成する車両として、車両(411-5)に注目する。点線(491)は、車両(411-5)が他の各車両と通信できる領域を示している。
車両(411-1~411-6)の各々によって転送が行われた後に、車両(411-5)は、車両(411-3、411-4、および411-6)から転送されたセットを受信できる。
各セットの受信後に、車両(411-5)は、近傍車両情報に基づいて、一連の車両に関する情報を生成できる。線(431)に関する情報は、一連の車両(順番に411-3、411-4、411-5、および411-6)を示している。
ここで図7を参照すると、図7は、基本データの生成、通信を利用できる領域への基本データの転送、およびグループ間の基本データの転送、ならびに基本データに基づく一連の車両に関する情報の生成の例示的な図の実施形態を示している。
例示的な図(402)は、複数の車両(441-1~441-6)が1本の車線(445)上を現在移動しており、別の車線上には、移動中の接近する車両が存在しないことを示している。
車両(441-1~441-6)の各々は、車載カメラ(121)を使用して画像を撮影し、その後、その画像を画像データとしてメモリ(141)に格納する。さらに、車両(441-1~441-6)の各々は、例えば車載カメラ(121)を使用して近傍車両情報を生成し、その後、自車両情報を近傍車両情報と組み合わせて、自車両情報および近傍車両情報のセットを生成する。このセットから、ある車両と、この車両の前を移動している車両との間の関連性を見つけることができる。例えば、車両(441-5)によって生成されたセット(449-5)は、自車両情報(455-1)および近傍車両情報(454-2)を含んでいる。このようにして、セット(449-1、449-2、449-3、449-4、449-5、および449-6)の各々が生成される。したがって、車両(441-1~441-6)によって保有される基本データの各々は、セット(449-1、449-2、449-3、449-4、449-5、および449-6)の各々をそれぞれ含む。
車両(441-1~441-6)の各々は、このセットを他の車両に転送する。例えば転送は、画像データをブロードキャストすることによって行われ得る。この画像データは、通信ユニット(122)を使用して通信を利用できる領域(それぞれ492および493)内に存在する車両によって受信され得る。
ここで、一連の車両に関する情報を生成する車両として、車両(441-5)に注目する。点線(492)は、車両(441-3、441-4、441-5、および441-6)が属するグループ(492)(以後、この実施形態では、「第1のグループ」と呼ばれる)、および車両(441-5)が他の車両(441-3、441-4、および441-6)と通信できる領域を示している。さらに、点線(493)は、車両(441-1、441-2、および441-3)が属する別のグループ(493)(以後、この実施形態では、「第2のグループ」と呼ばれる)、および車両(441-2)が他の車両(441-1および441-3)と通信できる領域を示している。したがって、図7で説明される一連の車両は2つのグループ(492および493)から成ると言うことができる。
さらに、第1のグループ(492)および第2のグループ(493)に属する車両(441-3)が存在するということを仮定する。第1および第2のグループの各々(それぞれ492、493)は、これらのグループ(492および493)に共通して属している少なくとも1つの車両を含むことがあると言うことができる。車両(441-3)は、車両(441-1および441-2)の各々によって生成されたセットを第1のグループ(492)に転送し、車両(441-4、441-5、および441-6)の各々によって生成されたセットを第2のグループ(493)にさらに転送することができる。
車両(441-3~441-6)の各々によって転送が行われた後に、車両(441-5)は、第1のグループ(492)に属する他の車両(441-3、441-4、および441-6)から転送されたセットを受信できる。各セットの受信後に、車両(441-5)は、セット内の近傍車両情報に基づいて、一連の車両(461)に関する情報を生成できる。線(461)に関する情報は、一連の車両(順番に441-3、441-4、441-5、および441-6)を示している。
同様に、車両(441-1および441-2)の各々によって転送が行われた後に、車両(441-2)は、第2のグループに属する他の車両(441-1および441-2)から転送されたセットを受信できる。各セットの受信後に、車両(441-2)または車両(441-3)は、セット内の近傍車両情報に基づいて、一連の車両(462)に関する情報を生成できる。線(462)に関する情報は、一連の車両(順番に441-1、441-2、および441-3)を示している。
前述したように、車両(441-3)は、第1のグループ(492)および第2のグループ(493)の両方に属している。したがって、車両(441-3)は、他の車両(441-1および441-2)から転送されたセットを、第1のグループ(492)に属する他の車両(441-4、441-5、および441-6)のすべてに転送する。代替として、車両(441-3)は、一連の車両(462)に関する情報を、第1のグループ(492)に属する他の車両(441-4、441-5、および441-6)のすべてに転送する(471)。
車両(441-3)からの各セットの受信後に、車両(441-5)は、受信されたセットを使用して、一連の車両(461)に関する情報を更新する。代替として、車両(441-3)からの一連の車両(462)に関する情報の受信後に、車両(441-5)は、例えば、線(461)に関する情報を一連の車両(462)に関する情報と組み合わせることによって、一連の車両(462)に関する情報を使用して一連の車両(461)に関する情報を更新する。
したがって、一連の車両(順番に441-1、441-2、441-3、441-4、441-5、441-5、および441-6(図示されていない))に関する更新された情報が生成される。
この実施形態によれば、一般に、一連の車両が複数のグループから成り、グループの各々が、複数のグループのうちの2つ以上のグループに共通して属している少なくとも1つの車両を含み、少なくとも1つの車両が画像データおよび近傍車両情報を2つ以上のグループに転送すると言うことができる。
図8および9は、転送中の基本データおよびグループ間の基本データの転送の例示的な図の実施形態を示している。
ここで図8を参照すると、図8は、ホップ数に従って画像データの転送の頻度が変更されるか、または画像データの数が減らされる、グループ間の基本データの転送の例示的な図の一実施形態を示している。
例示的な図(501)は、車両A~Oが2本の車線上を現在移動しており、反対車線上には、接近する車両が存在しないことを示している。さらに、例示的な図(501)は、図7の説明に従って5つのグループ(511~515)が定義されていることを示している。
ここで、一連の車両に関する情報を生成する車両として、グループ(515)に属する車両Mに注目する。この実施形態では、画像データの数を減らすため、または画像データの転送の頻度を変更するために、ホップ数が使用される。ホップ数は、基本データによって保持することができ、ゼロに初期設定される。
グループ(511および512)の両方に属する車両Dが存在すると仮定する。車両Dが基本データA、B、およびC(531)を、グループ(512)に属する他の車両のすべてに転送する時点(521)で、ホップ数が1にインクリメントされる。車両Dがグループ(512)に属している限り、グループ(512)内で基本データDが転送され得るため、車両Dが基本データDを転送しないということに注意する。この注意は、以降の転送にも当てはまる。
同様に、グループ(512および513)の両方に属する車両Gが存在する。車両Gが基本データA、B、およびC(532)を、グループ(513)に属する他の車両のすべてに転送する時点(522)で、ホップ数が2にインクリメントされる。さらに、車両Gが基本データD、E、およびF(533)を、グループ(513)に属する他の車両のすべてに転送する時点(522)で、ホップ数が1にインクリメントされる。
同様に、グループ(513および514)の両方に属する車両Jが存在する。車両Jが基本データA、B、およびC(534)を、グループ(514)に属する他の車両のすべてに転送する時点(523)で、ホップ数が3にインクリメントされる。さらに、車両Jが基本データD、E、およびF(535)を、グループ(514)に属する他の車両のすべてに転送する時点(523)で、ホップ数が2にインクリメントされる。さらに、車両Jが基本データG、H、およびI(536)を、グループ(514)に属する他の車両のすべてに転送する時点(523)で、ホップ数が1にインクリメントされる。
同様の方法が、基本データA、B、およびC(537)、基本データD、E、およびF(538)、基本データG、H、およびI(539)、ならびに基本データJおよびK(540)の転送にも当てはまる。
ホップ数に応じて、次のグループに転送される基本データの転送の頻度が、転送において減らされる。例えば、ホップ数が1である場合、転送を500ms間隔で実行することができ、ホップ数が2または3である場合、転送を1秒間隔で実行することができる。すなわち、ホップ数が増加するにつれて、転送の頻度が減少してよい。転送の頻度は、任意に設定され得る。
代替として、ホップ数に応じて、次のグループに転送される画像データの数が、転送において減らされる。例えば、ホップ数が5~9である場合、2つの画像データのうちの1つ(すなわち、転送対象の画像データの数の半分)が転送され、ホップ数が10~19である場合、4つの画像データのうちの1つ(すなわち、転送対象の画像データの数の25%)が転送される。すなわち、ホップ数が増加するにつれて、転送される画像データの数が減少してよい。転送される画像データの数は、任意に設定され得る。
ここで図9を参照すると、図9は、ホップ数に従って画像データの転送の頻度が変更されるか、または画像データの数が減らされる、グループ間の基本データの転送の例示的な図の別の実施形態を示している。
例示的な図(502)は、車両A~Oが2本の車線上を現在移動しており、反対車線上には、接近する車両が存在しないことを示している。さらに、例示的な図(502)は、図7の説明に従って5つのグループ(551~555)が定義されていることを示している。
ここで、一連の車両に関する情報を生成する車両として、グループ(555)に属する車両Mに注目する。この実施形態では、画像データの数を減らすため、または画像データの転送の頻度を変更するために、ホップ数が使用される。ホップ数は、基本データによって保持することができ、ゼロに初期設定される。
グループ(551および552)の両方に属する車両Dが存在すると仮定する。車両Dが基本データA、B、およびC(541)を、グループ(552)に属する他の車両のすべてに転送する時点(561)で、ホップ数が1にインクリメントされる。車両Dがグループ(552)に属している限り、グループ(552)内で基本データDが転送され得るため、車両Dが基本データDを転送しないということに注意する。この注意は、以降の転送にも当てはまる。
同様に、両方のグループ(552および553)の両方に属する2つの車両GおよびHが存在する。車両Gが基本データA、B、およびC(542-1)を、グループ(553)に属する他の車両のすべてに転送する時点(562-1)で、ホップ数が2にインクリメントされる。さらに、車両Gが基本データD、E、およびF(543-1)を、グループ(553)に属する他の車両のすべてに転送する時点(562-1)で、ホップ数が1にインクリメントされる。
車両Hが基本データA、B、およびC(542-2)を、グループ(553)に属する他の車両のすべてに転送する時点(562-2)で、ホップ数が2にインクリメントされる。さらに、車両Gが基本データD、E、F、およびG(543-1)を、グループ(553)に属する他の車両のすべてに転送する時点(562-2)で、ホップ数が1にインクリメントされる。
前述の転送(562-1および562-2)では、基本データA、B、およびC(542-1)が車両Gによって転送され、基本データA、B、およびC(542-2)も車両Hによって転送される。したがって、グループ(553)に属する車両GおよびH以外の他の車両のすべてが、基本データA、B、およびCを2回受信する。しかし、この状況では、同じデータ識別子を含んでいる基本データが削除されるか、または無視される。したがって、基本データA、B、およびC(542-1)ならびに基本データA、B、およびC(542-2)のうちの基本データの1つが、車両GおよびH以外の他の車両のこのすべてによって、削除されるか、または無視される。
同様に、グループ(553および554)の両方に属する車両Jが存在する。車両Jが基本データA、B、およびC(544)を、グループ(554)に属する他の車両のすべてに転送する時点(563)で、ホップ数が3にインクリメントされる。さらに、車両Jが基本データD、E、およびF(545)を、グループ(554)に属する他の車両のすべてに転送する時点(563)で、ホップ数が2にインクリメントされる。さらに、車両Jが基本データG、H、およびI(546)を、グループ(554)に属する他の車両のすべてに転送する時点(563)で、ホップ数が1にインクリメントされる。
同様の方法が、基本データA、B、およびC(547)、基本データD、E、およびF(548)、基本データG、H、およびI(549)、ならびに基本データJおよびK(550)の転送にも当てはまる。
図10および11は、転送中の基本データおよびグループ間の基本データの転送の例示的な図の実施形態を示している。
ここで図10を参照すると、図10は、グループ間で基本データを転送する例示的な図の一実施形態を示しており、これら例の各々は、道路のさまざまなパターンに対して定義されている。
例示的な図(601)は、車両A~Cが、分岐を含んでいる道路上を現在移動していることを示している。車両Aは3つのグループに属している。したがって、車両Aは、3つのグループの各々に属する他の車両のすべての各々から、他の2つのグループの各々に属する他の車両のすべての各々に、基本データを転送できる。したがって、例えば、車両Bの基本データは、車両Aを介して、反対車線上を移動している車両Cに転送され得る。
例示的な図(602)は、車両D~Iが、脇道を含む道路上を現在移動していることを示している。車両Fは2つのグループに属している。したがって、車両Fは、2つのグループの各々に属する他の車両のすべての各々から、別のグループに属する他の車両のすべての各々に、基本データを転送できる。したがって、例えば、車両Dの基本データは、車両Eを介して車両FおよびGに、車両Fを介して車両HおよびIに、転送され得る。
例示的な図(603)は、車両J~Mが、交差点を含んでいる道路上を現在移動していることを示している。車両Kは2つのグループに属している。したがって、車両Kは、2つのグループの各々に属する他の車両のすべての各々から、別のグループに属する他の車両のすべての各々に、基本データを転送できる。したがって、例えば、車両Jの基本データは、車両Kを介して、反対車線上を移動している車両Lに転送され得る。
例示的な図(604)は、車両O~Sが、交差点を含んでいる道路上を現在移動していることを示している。車両Sは3つのグループに属している。したがって、車両Sは、3つのグループの各々に属する他の車両のすべての各々から、他のグループの各々に属する他の車両のすべての各々に、基本データを転送できる。したがって、例えば、車両Oの基本データは、車両Sを介して、車両RおよびQに転送され得る。
ここで図11を参照すると、図11は、グループ間で基本データを転送する例示的な図の別の実施形態を示しており、これら例の各々は、道路のさまざまなパターンに対して定義されている。
例示的な図(611)は、車両aおよびcが高架橋上を移動しており、車両bが高架橋の下の道路上を移動しており、高架橋および高架橋の下の道路が互いに交差していることを示している。車両aは2つのグループに属している。したがって、車両aは、2つのグループの各々に属する他の車両のすべての各々から、別のグループに属する他の車両のすべての各々に、基本データを転送できる。したがって、例えば、車両bが高架橋の下の道路上を移動していても、車両cの基本データが、車両aを介して車両bに転送され得る。
例示的な図(612)は、車両d、e、およびfが高架橋上を移動しており、車両gが高架橋の下の道路上を移動しており、高架橋および高架橋の下の道路が互いに交差していることを示している。車両gは2つのグループに属している。したがって、車両gは、2つのグループの各々に属する他の車両のすべての各々から、別のグループに属する他の車両のすべての各々に、基本データを転送できる。したがって、例えば、車両gが高架橋の下の道路上を移動していても、車両fの基本データが、車両eおよびgを介して車両dに転送され得る。
例示的な図(613)は、車両hおよびiが本線上を移動しており、車両j、k、およびlが、本線の近くを並行している脇道上を移動していることを示している。車両kは2つのグループに属している。したがって、車両kは、2つのグループの各々に属する他の車両のすべての各々から、別のグループに属する他の車両のすべての各々に、基本データを転送できる。したがって、例えば、車両lが脇道上を移動していても、車両iの基本データが、車両kを介して車両lに転送され得る。
図12~15は、近傍車両情報に基づいて一連の車両に関する情報を生成する例示的な図の実施形態を示している。
図12を参照すると、図12は、一連の車両に関する情報を生成する例示的な図の一実施形態を示している。
例示的な図(701)は、車両A~Oが1本の車線上を現在移動しており、反対車線上では、接近する車両が移動していないことを示している。
ここで、一連の車両に関する情報を生成する車両として、車両H(711)に注目する。
1つの実施形態では、車両A、B、およびC(721)の基本データが、車両Dを介して車両E、F、およびGに転送され得る(712)。その後、車両A、B、C、D、E、およびF(722)の基本データが、車両Gを介して車両H、I、およびJに転送され得る(713)。
同様に、車両M、N、およびO(724)の基本データが、車両Lを介して車両JおよびKに転送され得る(715)。その後、車両M、N、O、K、およびL(723)の基本データが、車両Jを介して車両G、H、およびIに転送され得る(714)。
したがって、車両H(711)は、車両A、B、C、D、E、およびF(720)の基本データ、およびさらに、車両M、N、O、K、およびL(725)の基本データ、ならびに、さらに、車両G、H、I、およびJの基本データの各々に含んでいる近傍車両情報に基づく一連の車両に関する情報を、生成することができる。
代替として、別の実施形態では、車両Dは、車両A、B、およびCの基本データの各々に含んでいる近傍車両情報に基づいて、一連の車両に関する情報(以後、この実施形態では、「一連の車両に関する第1の情報」と呼ばれる)を生成する。一連の車両に関する第1の情報は、車両Dによって車両E、F、およびGに転送され得る。その後、車両Gは、一連の車両に関する第1の情報ならびにD、E、およびFの基本データの各々に含んでいる近傍車両情報(および任意選択的に、Gの基本データに含んでいる近傍車両情報)に基づいて、一連の車両に関する情報(以後、この実施形態では、「一連の車両に関する第2の情報」と呼ばれる)を生成する。その後、一連の車両に関する第2の情報は、車両Gによって車両H、I、およびJに転送され得る。
同様に、車両Lは、車両M、N、およびOの基本データの各々に含んでいる近傍車両情報に基づいて、一連の車両に関する情報(以後、この実施形態では、「一連の車両に関する第3の情報」と呼ばれる)を生成する。一連の車両に関する第3の情報は、車両Lによって車両JおよびKに転送され得る。その後、車両Jは、一連の車両に関する第3の情報ならびにLおよびKの基本データの各々に含んでいる近傍車両情報(および任意選択的に、Lの基本データに含んでいる近傍車両情報)に基づいて、一連の車両に関する情報(以後、この実施形態では、「一連の車両に関する第4の情報」と呼ばれる)を生成する。その後、一連の車両に関する第4の情報は、車両Jによって車両G、H、およびIに転送され得る。
車両Hは、一連の車両に関する第2の情報およびH(および、一連の車両に関する第2の情報がGの基本データに基づいて生成されなかった場合は、任意選択的にG)の基本データに基づいて、一連の車両に関する情報(以後、この実施形態では、「一連の車両に関する第5の情報」と呼ばれる)(726)を生成する。同様に、車両Hは、一連の車両に関する第4の情報ならびにHおよびI(および、一連の車両に関する第4の情報がJの基本データに基づいて生成されなかった場合は、任意選択的にJ)の基本データに基づいて、一連の車両に関する情報(以後、この実施形態では、「一連の車両に関する第6の情報」と呼ばれる)(727)を生成する。一連の車両に関する第5の情報(726)および一連の車両に関する第6の情報(727)の組み合わせが、表示データの生成に使用され得る。
任意選択的に、車両Hは、一連の車両に関する第5の情報(726)を、共通点(728)で一連の車両に関する第6の情報(727)と組み合わせることによって、一連の車両に関する情報(729)をさらに生成してよい。この生成された一連の車両(729)は、一連の車両に関する第5の情報(726)および一連の車両に関する第6の情報(727)の組み合わせの代わりに、表示データの生成に使用され得る。
ここで図13を参照すると、図13は、一連の車両に関する情報を生成する例示的な図の別の実施形態を示している。
例示的な図(702)は、車両A~Oが1本の車線(415)上または反対車線上を現在移動していることを示している。
ここで、一連の車両に関する情報を生成する車両として、車両H(731)に注目する。
車両A、B、およびCの基本データが、車両Dを介して車両EおよびGに転送され得る。車両Dは車両AおよびBの反対車線上を移動しているが、車両AおよびBの基本データを転送できるということに注意する。その後、車両A、B、C、D、およびEの基本データが、車両Gを介して車両H、I、J、およびFに転送され得る。
同様に、車両M、N、およびOの基本データが、車両Lを介して車両JおよびKに転送され得る。その後、車両K、L、M、N、およびOの基本データが、車両Jを介して車両G、H、IおよびFに転送され得る。
車両Hは、一連の車両に関する情報の次の6つのセットを生成する:AおよびB(741、左方向)、CおよびD(742、右方向)、E、G、およびH(744、左方向)、H、I、J、K、L、およびO(745、左方向)、F(746、右方向)、ならびにMおよびN(747、右方向)。
車両CおよびDは、車両AおよびBの反対方向に移動している。したがって、一連の車両に関する情報の次の2つのセットが生成される:車両AおよびBのセット、ならびに車両CおよびDのセット。
車両Bは、車両Eから遠い前方を移動している。そのため、Eの基本データは、車両BとEの間の近傍車両情報を含んでいない。したがって、車両AおよびBのセット(741)ならびに車両E、G、およびHのセット(744)を互いに組み合わせることができない。
車両Fは、車両Dから遠い前方を移動している。そのため、Dの基本データは、車両FとDの間の近傍車両情報を含んでいない。したがって、車両DおよびCのセット(742)ならびに車両Fのセット(746)を互いに組み合わせることができない。
車両Fは、車両Mから遠い後方、かつ車両Dのさらに前方を移動している。そのため、Fの基本データは、車両MとFの間の近傍車両情報を含んでいない。同様に、Dの基本データは、車両FとDの間の近傍車両情報を含んでいない。したがって、車両Fの一連の車両に関する情報(746)は、車両Fのみから成る。
車両Mは、車両Fから遠い前方を移動している。そのため、Fの基本データは、車両MとFの間の近傍車両情報を含んでいない。したがって、車両NおよびMのセット(747)ならびに車両Fのセット(746)を互いに組み合わせることができない。
車両E、G、およびHのセット(744)ならびに車両H、I、J、K、L、およびOのセット(745)の組み合わせが、表示データの生成に使用され得る。
任意選択的に、車両H(731)は、車両E、G、およびHのセット(744)ならびに車両H、I、J、K、L、およびOのセット(745)を、各セット(744および745)に共通の点(748)で組み合わせることによって、一連の車両に関する情報(749)をさらに生成してよい。車両E、G、およびHのセット(744)ならびに車両H、I、J、K、L、およびOのセット(745)の組み合わせの代わりに、この生成された一連の車両(749)が、表示データの生成に使用され得る。
この実施形態では、一連の車両に関する情報の前述の6つのセットは、車両A~Oのすべての管理を可能にする。
この実施形態では、任意選択的に、線に関する次の情報が使用され得る。(1)始点データのリスト(B、H、O、C、F、およびM)、(2)自車両の線(真または偽)、(3)要素の数n(nは正の整数である)、(4)N個の要素データ、各要素データは、(4-a)自車両の基本データへのポインタ、(4-b)次の要素へのリンク・ポインタ(このリンク・ポインタは、進行中の車両の基本データ用、および任意選択的に、後続の車両の基本データ用であってよい)、および(4-c)電子地図上の先行する車両の移動方向ベクトル(道路上の別々の線が接続されて表示される場合に、ディスプレイ・ユニットによって参照される)を含む。
ここで図14を参照すると、図14は、車両の2本の平行な線に関する情報を生成する例示的な図のさらに別の実施形態を示している。
例示的な図(703)は、車両A~Oが2本の平行な車線の各々の上を現在移動しており、反対車線上では、接近する車両が移動していないことを示している。
ここで、一連の車両に関する情報を生成する車両として、車両H(751)に注目する。
車両A、B、およびCの基本データが、車両Dを介して車両E、F、およびGに転送され得る。車両Dは車両AおよびBの平行な車線上を移動しているが、車両AおよびBの基本データを転送できるということに注意する。その後、車両A、B、C、D、E、およびFの基本データが、車両Gを介して車両H、I、およびJに転送され得る。
同様に、車両M、N、およびO(721)の基本データが、車両Lを介して車両JおよびKに転送され得る。その後、車両K、L、M、N、およびOの基本データが、車両Jを介して車両G、H、およびIに転送され得る。
車両Hは、一連の車両に関する情報の次の5つのセットを生成する:AおよびB(761、左方向)、C、D、およびF(762、左方向)、E、G、およびH(763、左方向)、H、I、J、K、L、およびO(764、左方向)、ならびにMおよびN(765、左方向)。
車両C、D、およびFは、車両AおよびBと同じ方向に移動しているが、車両AおよびBの車線と、車両C、D、およびFの車線は、互いに異なっている。したがって、一連の車両に関する情報の次の2つのセットが生成される:車両AおよびBのセット(761)、ならびに車両C、D、およびFのセット(762)。
車両Bは、車両Eから遠い前方を移動している。そのため、Eの基本データは、車両BとEの間の近傍車両情報を含んでいない。したがって、車両AおよびBのセット(761)ならびに車両E、G、およびHのセット(763)を互いに組み合わせることができない。
車両Fは、車両Mから遠い前方を移動している。そのため、Mの基本データは、車両FとMの間の近傍車両情報を含んでいない。したがって、車両C、D、およびFのセット(762)ならびに車両MおよびNのセット(765)を互いに組み合わせることができない。
車両E、G、およびHのセット(763)ならびに車両H、I、J、K、L、およびOのセット(764)の組み合わせが、表示データの生成に使用され得る。
任意選択的に、車両H(751)は、車両E、G、およびHのセット(763)ならびに車両H、I、J、K、L、およびOのセット(764)を、各セット(763および764)に共通の点(766)で組み合わせることによって、一連の車両に関する情報(767)をさらに生成してよい。車両E、G、およびHのセット(744)ならびに車両H、I、J、K、L、およびOのセット(745)の組み合わせの代わりに、この生成された一連の車両(767)が、表示データの生成に使用され得る。
この実施形態では、一連の車両に関する情報の前述の5つのセットは、車両A~Oのすべての管理を可能にする。
ここで図15を参照すると、図15は、交差点での一連の車両に関する情報を生成する例示的な図のさらに別の実施形態を示している。
例示的な図(704)は、車両A~Oが交差点の隣または近くを現在移動していることを示している。
ここで、一連の車両に関する情報を生成する車両として、車両F(771)に注目する。
車両A、B、およびCの基本データが、車両Dを介して車両E、F、およびGに転送され得る。その後、車両A、B、およびCの基本データが、車両Dを介して車両E、F、およびGに転送され得る。
車両D、E、およびGの基本データが、車両F(771)に直接転送され得る。
車両H、K、J、およびIの基本データが、車両Dを介して車両E、F、およびGに転送され得る。同様に、車両L、M、N、およびOの基本データが、車両Dを介して車両E、F、およびGに転送され得る。
車両F(771)は、一連の車両に関する情報の次の7つのセットを生成する:A、B、およびC(781、左方向)、D、E、およびF(782、左方向)、FおよびG(783、左方向)、OおよびN(784、下方向)、IおよびJ(785、下方向)、HおよびK(786、上方向)、ならびにLおよびM(787、上方向)。
車両A、B、C、D、E、F、およびGは、同じ方向または左方向に移動しているが、車両Dは、現在交差点上にある。したがって、車両F(771)は、電子地図上の道路の位置に関する情報に従って、車両A、B、およびCのセット(781)と、車両FおよびGのセット(783)を別々に生成する。
同様に、車両F(771)は、車両OおよびNのセット(784)と、車両IおよびJのセット(785)を別々に生成する。さらに、車両F(771)は、車両HおよびKのセット(786)と、車両LおよびMのセット(787)を別々に生成する。
さらに、車両F(771)は、車両Gの基本データに基づいて、車両FおよびGのセット(783)を生成する。
車両D、E、およびFのセット(782)ならびに車両FおよびGのセット(783)の組み合わせが、表示データの生成に使用され得る。
任意選択的に、車両F(771)は、車両D、E、およびFのセット(782)ならびに車両FおよびGのセット(783)を、各セット(782および783)に共通の点(788)で組み合わせることによって、一連の車両に関する情報(789)をさらに生成してよい。車両D、E、およびFのセット(782)ならびに車両FおよびGのセット(783)の組み合わせの代わりに、この生成された一連の車両(789)が、表示データの生成に使用され得る。
この実施形態では、一連の車両に関する情報の前述の7つのセットは、車両A~Oのすべての管理を可能にする。
この実施形態によれば、分岐した道路、脇道、および交差点などの分岐点上、または高架道路の上もしくは桁橋の下を車両が移動している場合、一連の車両に関する情報が、分岐点で別々に生成される。
図16および17は、特定の車両を選択するユーザの指示に応答して、指定された車両の車載カメラによって撮影された画像データを連続的に転送する、例示的な図の実施形態を示している。
ここで図16を参照すると、図16は、指定された車両の車載カメラによって撮影された画像データを転送するためのプロセスの開始の一実施形態を示している。
例示的な図(801)は、車両A~Nが交差点の隣または近くを現在移動していることを示している。
ここで、ユーザが、車両I(812)の車載カメラによって連続的に撮影された画像データから得られる画像を見るために、特定の車両(すなわち、車両I(812))を選択している車両として、車両A(811)に注目する。
特定の車両のユーザの選択に応答して、車両A(811)は、車両I(812)が指定されたことを示すコマンドを生成する。このコマンドは、指定された車両(すなわち、車両I(812))の車載カメラによって撮影された画像データを転送する1つまたは複数の車両を要求するために使用される。このコマンドは、(A)画像データを転送するための要求に関連付けられた識別子、(B)指定された車両(すなわち、車両I(812))の車載カメラによって撮影された画像データを転送するための要求、あるいは指定された車両(すなわち、車両A(811))のすぐ前またはすぐ後を移動している1つの車両または複数の車両の各々の車載カメラによって撮影された画像データを転送するための要求の指定、および(C)指定された車両(すなわち、車両A(812))の識別子を含んでよい。
前述のコマンドの生成に応答して、車両A(811)は、通信ユニット(122)を介して、そのコマンドを基本データと共にブロードキャストする。このコマンドは、車両A(811)が属する1つまたは複数のグループに転送することができ、さらに、2つ以上のグループに属する1つの車両または複数の車両の各々を介して、別のグループまたは他のグループに転送することができる。その結果、このコマンドは、車両A(811)から車両I(812)に転送され得る(813)。
車両I(812)が前述のコマンドを受信した場合、車両I(812)は、「画像データの転送が進行中である」ことを示す別のコマンドを含んでいる通信情報の生成を開始する。
また、車両I(812)が前述のコマンドを受信している限り、車両I(812)は、「画像データの転送が進行中である」ことを示す前述の別のコマンドを含んでいる通信情報を生成する。
車両A(811)~車両I(812)の間(すなわち、車両B~H)の、2つのグループに属する1つまたは複数の車両が、「画像データの転送が進行中である」ことを示す前述の別のコマンドを含んでいる通信情報と共に基本データを受信した場合、この1つまたは複数の車両は、車両I(812)から生じた画像データを、別のグループまたは他のグループに属する他の車両のすべてに転送する。車両A(811)~車両I(812)の間のこの1つまたは複数の車両は、車両I(812)に関するコマンドが発行されたこと、および指定された車両に関する情報を記憶する。この転送は、画像データの転送の頻度を変更することも、画像データの数を減らすこともなく、実行されてよい。言い換えると、この転送は、転送の頻度の低下を停止するように、または転送の元の頻度を回復するように、または転送の現在の頻度を転送の元の頻度に近づけるように、指定された車両から生じた画像データを転送する1つまたは複数の車両を制御することによって、実行されてよい。グループ間のホップを担当するすべての車両は、データが送信される方向に存在するグループに、コマンドを転送できる。
表示データ(821、822、および823)に見られるように、車両A(811)は、これらの表示データ(821、822、および823)を車両A(811)のディスプレイ・デバイス上に連続的に表示することができ、これらの表示データの各々は、車両I(812)から生じた画像データを含んでいる。
したがって、車両A(811)内の人は、車両I(812)から生じた画像をリアルタイムに見ることができる。
ここで図17を参照すると、図17は、図16で述べたプロセスの停止の一実施形態を示している。
例示的な図(802)は、車両B~Oが交差点の隣または近くを現在移動しているが、車両Aが現在、駐車場(831)内にいることを示している。
例えば、図16で述べたプロセスの停止は、例えば駐車場(831)で、車両A(811)が停止した場合に発生してよい。
代替として、例えば、このプロセスの停止は、車両I(812)の指定が車両A(811)内のユーザによって終了された場合、または車両A(811)が車両I(812)から離れるように移動しているため、前述のコマンドが車両I(812)に到達できない場合という状況において、発生してよい。
そのような状況において、車両I(812)は、「画像データの転送が進行中である」ことを示す前述の別のコマンドを含んでいない基本データを生成する。
車両A(811)~車両I(812)の間の、2つのグループに属する1つまたは複数の車両が、前述の別のコマンドを受信しない場合、この1つまたは複数の車両は、画像データの数を減らすか、または画像データの転送の頻度を変更して、車両I(812)から生じた画像データを別のグループまたは他のグループに属する他の車両のすべてに転送する。言い換えると、この転送は、画像データの数を減らすように、または転送の現在の頻度と比較して転送の頻度を低くするように、指定された車両から生じた画像データを転送する1つまたは複数の車両を制御することによって、実行されてよい。この制御は、ホップ数に応じて実行されてよい。
この実施形態によれば、車両I(812)において、前述のコマンドを最初に送信するソースとなる車両を管理する必要はないが、車両I(812)において、前述のコマンドがどこかから送信されたということを管理する必要がある。
図18および19は、特定の位置または特定の対象のユーザの選択にそれぞれ応答して、指定された位置または指定された対象の近くを移動している車両の各々の車載カメラによって撮影された画像データを連続的に転送する、例示的な図の実施形態を示している。
特定の位置は、例えば、駐車場、公園、分岐点(分岐した道路、脇道、および交差点など)、またはこれらの入り口であってよいが、これらに限定されない。
特定の対象は、例えば、建物、給油所、幹線道路、または車両であってよいが、これらに限定されない。
以下では、特定の位置の場合が説明される。しかし、この説明は、特定の対象の場合にも適用され得る。
ここで図18を参照すると、図18は、特定の位置のユーザの選択に応答して、指定された位置の近くを移動している車両の各々の車載カメラによって撮影された画像データを転送するプロセスの開始の一実施形態を示している。
例示的な図(901)は、車両A~Nが交差点の隣または近くを現在移動していることを示している。
ここで、ユーザが、移動している1つまたは複数の車両の車載カメラによって連続的に撮影された画像データから得られる画像を見るために、特定の位置または駐車場(921)を選択している車両として、車両A(911)に注目する。
特定の位置または駐車場(921)のユーザの選択に応答して、車両A(911)は、駐車場(921)が指定されたことを示すコマンドを生成する。このコマンドは、駐車場(921)の隣または近くを現在移動している1つまたは複数の車両の各々の車載カメラによって撮影された画像データを転送するこの1つまたは複数の車両を要求するために、使用される。このコマンドは、(A)特定の位置または特定の対象から生じた画像データを転送するための要求に関連付けられた識別子、(B)指定された位置または指定された対象、(C)指定された位置または指定された対象の誤差範囲、(D)車載カメラの方向の指定、および(E)どの車両が指定された位置または指定された対象を撮影したかという事実に基づいて変化することがある特定の車両の識別子を含んでよい。
前述のコマンドの生成に応答して、車両A(911)は、通信ユニット(122)を介して、そのコマンドを基本データと共にブロードキャストする。このコマンドは、車両A(911)が属する1つまたは複数のグループに転送することができ、さらに、2つ以上のグループに属する1つの車両または複数の車両の各々を介して、別のグループまたは他のグループに転送することができる。その結果、このコマンドは、車両A(911)から、駐車場(921)の隣または近くを現在移動している1つまたは複数の車両に、転送され得る(915)。
車両J(912)が駐車場(921)の隣または近くを現在移動しており、前述のコマンドを受信した場合、車両J(912)は、「指定された位置または指定された対象の画像データの転送が進行中である」ことを示す別のコマンドを含んでいる通信情報の生成を開始する。
また、車両J(912)が駐車場(921)の隣または近くを現在移動しており、前述のコマンドを受信している限り、車両J(912)は、「指定された位置または指定された対象の画像データの転送が進行中である」ことを示す前述の別のコマンドを含んでいる通信情報を生成する。
車両A(911)~車両J(912)の間の、2つのグループに属する1つまたは複数の車両が、「指定された位置または指定された対象の画像データの転送が進行中である」ことを示す前述の別のコマンドを含んでいる通信情報と共に基本データを受信した場合、この1つまたは複数の車両は、車両J(912)から生じた画像データを、別のグループまたは他のグループに属する他の車両のすべてに転送する。車両A(911)~車両J(912)の間のこの1つまたは複数の車両は、指定された位置または指定された対象の画像データを撮影したか、または撮影する特定の1つまたは複数の車両に関するコマンドが発行されたこと、および指定された位置または指定された対象に関する情報を記憶する。この転送は、画像データの転送の頻度を変更することも、画像データの数を減らすこともなく、実行されてよい。言い換えると、この転送は、転送の頻度の低下を停止するように、または転送の元の頻度を回復するように、または転送の現在の頻度を転送の元の頻度に近づけるように、指定された位置または指定された対象の隣または近くを現在移動している1つまたは複数の車両から生じた画像データを転送する1つまたは複数の車両を制御することによって、実行されてよい。グループ間のホップを担当するすべての車両は、データが送信される方向に存在するグループに、コマンドを転送できる。
表示データ(931)に見られるように、車両A(911)は、駐車場(921)の隣または近くを現在移動している車両J(912)から生じた画像データを含んでいる表示データ(931)を、車両A(911)のディスプレイ・デバイス上に表示することができる。
したがって、車両A(911)内の人は、駐車場(921)の隣または近くを現在移動している車両J(912)から生じた画像を、リアルタイムに見ることができる。
ここで図19を参照すると、図19は、駐車場(921)の隣または近くを現在移動している1つまたは複数の車両から生じた画像データを連続的に転送する一実施形態を示している。
例示的な図(902)は、車両I(913)および車両H(914)が、車両J(912)の後に続いて、交差点の隣または近くを移動していることを示している。
車両I(913)が駐車場(921)の隣または近くを現在移動しており、前述のコマンドを受信した場合、車両I(913)は、「指定された位置または指定された対象の画像データの転送が進行中である」ことを示す前述の別のコマンドを含んでいる通信情報の生成を開始する。
また、車両I(913)が駐車場(921)の隣または近くを現在移動しており、前述のコマンドを受信している限り、車両I(913)は、「指定された位置または指定された対象の画像データの転送が進行中である」ことを示す前述の別のコマンドを含んでいる通信情報を生成する。
同様に、車両H(914)が駐車場(921)の隣または近くを現在移動しており、前述のコマンドを受信した場合、車両H(914)は、「指定された位置または指定された対象の画像データの転送が進行中である」ことを示す前述の別のコマンドを含んでいる通信情報の生成を開始する。
また、車両H(914)が駐車場(921)の隣または近くを現在移動しており、前述のコマンドを受信している限り、車両H(914)は、「指定された位置または指定された対象の画像データの転送が進行中である」ことを示す前述の別のコマンドを含んでいる通信情報を生成する。
表示データ(942および943)に見られるように、車両A(811)は、これらの表示データ(942および943)を車両A(811)のディスプレイ・デバイス上に連続的に表示することができ、これらの表示データの各々は、車両I(812)および車両H(914)から生じた画像データをそれぞれ含んでいる。
画像データの転送に関して、車両J(912)が駐車場(921)を通り過ぎた場合、車両J(912)は、「指定された位置または指定された対象の画像データの転送が進行中である」ことを示す前述の別のコマンドを含んでいない基本データを生成する。
同様に、車両I(913)が駐車場(921)を通り過ぎた場合、車両I(913)は、「指定された位置または指定された対象の画像データの転送が進行中である」ことを示す前述の別のコマンドを含んでいない基本データを生成する。
画像データの転送に関して、同じことが、車両(914)または後続の1つまたは複数の車両にも当てはまる。
車両A(911)~車両J(912)の間の、2つのグループに属する1つまたは複数の車両が、基本データ受信するが、「指定された位置または指定された対象の画像データの転送が進行中である」ことを示す前述の別のコマンドを受信しない場合、この1つまたは複数の車両は、画像データの数を減らすか、または画像データの転送の頻度を変更して、車両J(912)から生じた画像データを別のグループまたは他のグループに属する他の車両のすべてに転送する。言い換えると、この転送は、画像データの数を減らすように、または転送の現在の頻度と比較して転送の頻度を低くするように、指定された車両から生じた画像データを転送する1つまたは複数の車両を制御することによって、実行されてよい。この制御は、ホップ数に応じて実行されてよい。
図16で述べたプロセスの停止は、例えば、車両A(911)内のユーザによって位置または対象の指定が終了された場合に、発生してよい。
代替として、例えば、このプロセスの停止は、車両A(911)が、指定された位置または指定された対象の隣または近くを現在移動している車両から離れるように移動しているため、前述のコマンドが、指定された位置または指定された対象の隣または近くを現在移動しているこの車両に到達できない場合という状況において、発生してよい。
ここで図20を参照すると、図20は、画像データの推奨される通知として通知されて転送される画像データを提示する例示的な図の実施形態を示している。
例示的な図(1001)は、車両A~Nが交差点の隣または近くを現在移動していることを示している。
ここで、画像データの推奨される通知として画像データを1つまたは複数の他の車両に提供する車両として、車両A(1011)に注目する。
推奨される通知は、例えば、図16および17において説明された実施形態、図18および19において説明された実施形態、またはこれらの組み合わせを使用することによって実現され得る。
ここで、ユーザが画像データの推奨を選択して1つまたは複数の車両にブロードキャストする車両として、車両A(1011)に注目する。この画像データは、指定された車両の車載カメラによって撮影された画像データ(図16および17を参照)、指定された位置または指定された対象の近くを移動している車両の各々の車載カメラによって撮影された画像データ(図18および19を参照)、またはこれらの組み合わせであってよい。
特定の車両、特定の位置、または特定の対象のユーザの選択に応答して、車両A(1011)は、選択された車両、位置、または対象に従って、図16および17または図18および19の説明におい示されたように、推奨される通知を示しているコマンドを生成する。このコマンドは、(A)推奨される通知の要求に関連付けられた識別子、(B)図16および17または図18および19の説明におい示されたのと同じ、前述のコマンド内の項目、(C)推奨される通知の転送先である1つまたは複数の車両ID、ならびに任意選択的に、(D)推奨者の名前および(E)推奨者からのメッセージを含んでよい。
前述のコマンドの生成に応答して、車両A(911)は、通信ユニット(122)を介して、そのコマンドを基本データと共にブロードキャストする。このコマンドは、車両A(911)が属する1つまたは複数のグループに転送することができ、さらに、2つ以上のグループに属する1つの車両または複数の車両の各々を介して、別のグループまたは他のグループに転送することができる。その結果、このコマンドは、車両A(911)から、転送されるコマンドにおいて指定された1つまたは複数の車両に、転送され得る(915)。
ある車両が前述のコマンドを受信した場合、この車両は、図16および17または図18および19で説明されたステップを実行する。
図21および22は、指定された車両から、または指定された位置もしくは指定された対象の近くを移動している車両の各々から連続的に送信されている画像データを含んでいる表示データをリアルタイムに提示する、例示的な図の実施形態を示している。
ここで図21を参照すると、図21は、表示データをリアルタイムに提示する例示的な図の実施形態を示している。
例示的な図(1101)は、図2で説明された図(151)と同じである。
車両(1113)が表示データ(1140)を車両(1113)自体のディスプレイ・デバイス上に提示できるということを仮定する。
車両(1113)は、車両(1111)から取得された画像(1121)を車両(1112)から取得された画像(1122)と結合することによってすでに生成された結合された画像データ(1120)を受信し、車両(1113)自体から取得された画像データ(1130)をさらに受信する。その後、画像(1130)が、結合された画像(1120)と結合されて、表示データ(1140)を生成する。この実施形態では、結合された画像(1142に対応する1120)が、画像(1141に対応する1130)に埋め込まれるか、または重ね合わせられる。
ここで図22を参照すると、図22は、表示データをリアルタイムに提示する例示的な図の別の実施形態を示している。
例示的な図(1102)は、図2で説明された図(151)と同じである。
車両(1143)が表示データ(1150)を車両(1143)自体のディスプレイ・デバイス上に提示できるということを仮定する。
表示データ(1150)は、一連の車両に関する情報に従って、例えば、一連の車両の順序(一連の車両の上から1141、1142、および1143)に従って、複数の画像データまたは3つの画像データ(1141、1142、および1143)が重ね合わせられていることを示している。
図23および24は、電子地図と共に画像データを表示する、例示的な図の実施形態を示している。
ここで図23を参照すると、図23は、電子地図と共に画像データを表示する、例示的な図の一実施形態を示している。
車両のディスプレイ・デバイス(1201)は、複数の画像(1222、1223、および1224)を、アイコン(1211)が示されている電子地図(1221)と共に表示している。複数の画像(1222、1223、および1224)の各々は、道路の同じ車線上を走っている車両の各々から転送されている。ディスプレイ・デバイス(1201)は、画像(1222)とのアイコン(1211)の関連性を示す関連性の矢印(1213)をさらに表示する。この関連性は、画像(1222)が、アイコン(1211)によって表された車両によって撮影されたということを意味する。
ここで図24を参照すると、図24は、電子地図と共に画像データを表示する、例示的な図の別の実施形態を示している。
車両のディスプレイ・デバイス(1202)は、画像(1223)のユーザの選択の後の表示を示している。
ディスプレイ・デバイス上の画像(1223)のユーザの選択に応答して、ディスプレイ・デバイス(1202)は、複数の画像(1242、1243、および1245)を、アイコン(1231および1232)が示された電子地図(1241)と共に表示する。画像(1243)は、ユーザによって選択された画像(1223)に対応しており、アイコン(1232)に関連付けられている。
ディスプレイ・デバイス(1202)は、画像(1243)とのアイコン(1232)の関連性を示す関連性の矢印(1233)をさらに表示する。この関連性は、画像(1243)が、アイコン(1232)によって表された車両によって撮影されるということを意味する。
したがって、ユーザは、ディスプレイ・デバイス(1202)上に表示された複数の画像データのうちから画像データを選択できる。
図25は、図4および5で説明されたフローチャートの実施形態に従って使用されるシステム・ハードウェアの機能ブロック図全体の実施形態を示している。
システム(1301)は、図1で説明された車両(101)を備えることができる。
システム(1301)は、受信セクション(1311)、基本データの生成セクション(1312)、一連の車両に関する情報の生成セクション(1313)、および関連付けセクション(1314)に加えて、車載カメラ・セクション(1321)およびGPSセクション(1322)を備えている。
システム(1301)は、表示データの生成セクション(1315)、提示セクション(1316)、基本データの転送セクション(1317)をさらに備えてよい。
システム(1301)は、車両指定セクション(1331)、位置または対象指定セクション(1332)、および推奨通知セクション(1333)のうちの1つまたは複数をさらに備えてよい。
受信セクション(1311)は、車両の近くに位置する車両に関する画像データおよび情報(「近傍車両情報」)(1341)を受信する。代替として、受信セクション(1311)は、通信ネットワークを介して互いに通信できる複数の車両から、車両の各々の車載カメラによって撮影された画像データ(「画像データ」)および各車両のすぐ前にいる車両に関する近傍車両情報(「近傍車両情報」)を受信してよい。画像データおよび近傍車両情報は、互いに通信できる複数の車両の各々から連続的に転送されてよい。ホップ数に応じて、受信される画像データの数が減らされてよく、または受信される画像データの転送の頻度が変更されてよい。画像データは、表示データが提示される車両のすぐ前またはすぐ後にいる車両の車載カメラによって撮影された画像データであってよい。
受信セクション(1311)は、図4で説明されたステップ302を実行してよい。
基本データの生成セクション(1312)は、画像データおよび位置に関する情報に基づいて、基本データを生成する。
基本データの生成セクション(1312)は、図4で説明されたステップ303の前半を実行してよい。
一連の車両に関する情報の生成セクション(1313)は、近傍車両情報に基づいて、一連の車両に関する情報を生成する。一連の車両は、複数のグループから成っていてよい。それらのグループの各々は、複数のグループのうちの2つ以上のグループに共通して属している少なくとも1つの車両を含んでよい。一連の車両に関する情報の生成セクション(1313)は、転送された近傍車両情報に基づいて、一連の車両に関する情報をさらに更新してよい。
一連の車両に関する情報の生成セクション(1313)は、図4で説明されたステップ304を実行してよい。
関連付けセクション(1314)は、画像データを一連の車両に関する情報に関連付ける。関連付けセクション(1314)は、転送された画像データを一連の車両に関する更新された情報にさらに関連付けてよい。
関連付けセクション(1314)は、図4で説明されたステップ305を実行してよい。
車載カメラ・セクション(1321)は、車両(101)を囲む事前に定義された領域内の画像(すなわち、視覚的情報)を撮影する。車載カメラ・セクション(1321)は、図1で説明された車載カメラ(121)に対応してよい。
GPSセクション(1322)は、車両(101)自体の位置または地理的位置に関する情報および時間情報を取得する。GPSセクション(1322)は、図1で説明されたGPSユニット(123)に対応してよい。
表示データの生成セクション(1315)は、1つまたは複数の画像データを使用して表示データを生成する。表示データは、1つまたは複数の他の車両から生じた画像データから成ってよい。表示データは、表示データが提示される車両のすぐ前またはすぐ後にいる車両の車載カメラから取得された画像データを含んでよい。表示データは、複数の画像データを結合することによって生成されてよい。
代替として、表示データは、電子地図を含む1つまたは複数の画像データを結合することによって、生成されてよい。表示データは、例えば、一連の車両に関する情報に従って複数の画像データが重ね合わせられた表示データ、一連の車両に関する情報に従って複数の画像データが配置された表示データ、または一連の車両に関する情報に従って複数の画像データが電子地図上に表示された表示データであってよい。
表示データの生成セクション(1315)は、図4で説明されたステップ306を実行してよい。
提示セクション(1316)は、車両内のディスプレイ・デバイス上に表示データを提示する。提示セクション(1316)は、指定された車両から連続的に送信されている画像データを含んでいる表示データを、車両のディスプレイ・デバイス上にリアルタイムに提示してよい。提示セクション(1316)は、車両のディスプレイ・デバイス上に表示データを提示してよい。提示セクション(1316)は、車両のフロント・ガラス上の平坦または実質的に平坦な影のない領域上に表示データを提示してよい。
提示セクション(1316)は、図4で説明されたステップ307を実行してよい。
基本データの転送セクション(1317)は、通信ユニット(122)を介して、基本データを1つまたは複数の他の車両に転送する。
基本データの転送セクション(1317)は、図4で説明されたステップ303の後半を実行してよい。
車両指定セクション(1331)は、指定された車両のユーザの選択に応答して、指定された車両が指定されていることを示すコマンドを生成し、その後、このコマンドを基本データと共に1つまたは複数の他の車両に送信する。
車両指定セクション(1331)は、図5で説明されたステップ308および309ならびにステップ312および313を実行してよい。
位置または対象指定セクション(1332)は、特定の位置または特定の対象のユーザの選択に応答して、特定の位置または特定の対象が指定されていることを示すコマンドを生成し、その後、このコマンドを基本データと共に1つまたは複数の他の車両に送信する。
位置または対象指定セクション(1332)は、図5で説明されたステップ310および311を実行してよい。
推奨通知セクション(1333)は、図16および17または図18および19の説明におい示されたように、選択された車両、位置、または対象に従ってコマンドを生成し、その後、このコマンドを基本データと共に1つまたは複数の他の車両に送信する。
前述の説明によれば、本発明の実施形態は、最初に出願される特許請求の範囲として表され得る。さらに、前述の説明によれば、本発明の別の実施形態は、次のように表され得るが、これらに限定されない。
車載カメラによって撮影された画像データを転送するためのコンピュータ実装方法であって、通信ネットワークを介して互いに通信できる複数の車両から、車両の各々の車載カメラによって撮影された画像データ(画像データ)およびこの各車両のすぐ前にいる車両に関する近傍車両情報(近傍車両情報)を受信することと、近傍車両情報に基づいて一連の車両に関する情報を生成することと、その後、画像データを一連の車両に関する情報に関連付けることと、画像データを使用して表示データを生成することとを含んでいる、コンピュータ実装方法。
この方法は、複数の車両が第1のグループとして定義され、第2のグループが同様に形成され、第1のグループに属する第1の車両が第2のグループにも属している場合、第1の車両が、第2のグループに属する他の車両のすべてから、他の車両の各々の車載カメラによって撮影された画像データおよび他の車両のこの各々のすぐ前にいる車両に関する近傍車両情報を受信し、その後、この受信された画像データおよび近傍車両情報を、第1のグループに属する他の車両に転送することを、さらに含んでよい。
この方法は、第3のグループが同様に形成され、第2のグループに属する第2の車両が第3のグループにも属している場合、第2の車両が、第3のグループに属する他の車両のすべてから、他の車両の各々の車載カメラによって撮影された画像データおよび他の車両のこの各々のすぐ前にいる車両に関する近傍車両情報を受信し、その後、この受信された画像データおよび近傍車両情報を、第2のグループに属する他の車両に転送することを、さらに含んでよい。
この方法は、第1および第2のグループの両方に属する車両が、第2の車両から転送された画像データおよび近傍車両情報を、第1のグループに属する他の車両に転送することを、さらに含んでよい。
この方法は、転送された近傍車両情報に基づいて一連の車両に関する情報が更新され、転送された画像データが、一連の車両に関する更新された情報に関連付けられることを、さらに含んでよい。
この方法は、第1および第2のグループの両方に属する車両によって転送された近傍車両情報に基づいて一連の車両に関する情報が更新され、転送された画像データが、一連の車両に関する更新された情報に関連付けられることを、さらに含んでよい。
この方法は、車両内のディスプレイ・デバイス上に表示データを提示することを、さらに含んでよい。
画像データは、表示データが提示される車両のすぐ前またはすぐ後にいる車両の車載カメラによって撮影された画像データであってよい。
表示データは、前述の画像データを含んでよい。
表示データは、一連の車両に関する情報に従って複数の画像データが重ね合わせられた表示データ、一連の車両に関する情報に従って複数の画像データが配置された表示データ、または一連の車両に関する情報に従って複数の画像データが電子地図上に表示された表示データであってよい。
第1の車両によって実行される転送における画像データおよび近傍車両情報の転送の頻度は、第1のグループ内の残りの車両の各々によって実行される画像データおよび近傍車両情報の送信の頻度より低くてよい。
第1の車両によって実行される転送における画像の数は、第1のグループ内の残りの車両の各々によって実行される画像データの送信における画像の数より小さくてよい。
転送される画像データおよび近傍車両情報の転送の頻度(以後、この実施形態では、「第1の転送頻度」と呼ばれる)は、第3のグループに属する他の車両のすべてから第2のグループに属する他の車両に送信された画像データおよび近傍車両情報の転送において減らされよく、転送される画像データおよび近傍車両情報の転送の頻度(以後、この実施形態では、「第2の転送頻度」と呼ばれる)は、第3のグループに属する他の車両のすべてから生じた、第1のグループに属する他の車両への画像データおよび近傍車両情報の転送において減らされ、第1の転送頻度は第2の転送頻度より低い。
転送される画像の数(以後、この実施形態では、「第1の画像の数」と呼ばれる)は、第3のグループに属する他の車両のすべてから第2のグループに属する他の車両に送信された画像データの転送において減らされよく、転送される画像の数(以後、この実施形態では、「第2の画像の数」と呼ばれる)は、第3のグループに属する他の車両のすべてから生じた、第1のグループに属する他の車両への画像データの転送において減らされ、第1の画像の数は第2の画像の数より少ない。
この方法は、複数の車両が第1のグループとして定義され、1つまたは複数の他のグループが同様に形成され、第1のグループに属する第1の車両が1つまたは複数の他のグループにも属している場合、第1の車両が、1つまたは複数の他のグループに属する他の車両のすべてから、1つまたは複数の他のグループの各々の車載カメラによって撮影された画像データおよび1つまたは複数の他のグループのこの各々のすぐ前にいる車両に関する近傍車両情報を受信し、その後、この受信された画像データおよび近傍車両情報を、第1のグループに属する他の車両に転送することを、さらに含んでよい。
この方法は、表示データを車両内のディスプレイ・デバイス上に提示することと、特定の車両または特定の車両から生じた画像のユーザによる選択に応答して、転送の頻度の低下を停止するように、または転送の元の頻度を回復するように、または転送の現在の頻度を転送の元の頻度に近づけるように、特定の車両から生じた画像データを転送する1つまたは複数の車両を制御することとを、さらに含んでよい。
特定の車両から継続的に送信されている画像データを含んでいる表示データは、ディスプレイ・デバイス上にリアルタイムに表示されてよい。
この方法は、表示データを車両内のディスプレイ・デバイス上に提示することと、特定の車両または特定の車両から生じた画像のユーザによる選択に応答して、画像の数の減少を停止するように、または画像の元の数を回復するように、または画像の現在の数を画像の元の数に近づけるように、特定の車両から生じた画像データを転送する1つまたは複数の車両を制御することとを、さらに含んでよい。
特定の車両から継続的に送信されている画像データを含んでいる表示データは、ディスプレイ・デバイス上にリアルタイムに表示されてよい。
この方法は、表示データを車両内のディスプレイ・デバイス上に提示することと、特定の位置または特定の位置を表示している画像データのユーザによる選択に応答して、転送の頻度の低下を停止するように、または転送の元の頻度を回復するように、または転送の現在の頻度を転送の元の頻度に近づけるように、特定の車両から生じた画像データを転送する1つまたは複数の車両を制御することとを、さらに含んでよい。
1つまたは複数の車両から継続的に転送されている画像データを含んでいる表示データは、ディスプレイ・デバイス上にリアルタイムに表示されてよい。
この方法は、表示データを車両内のディスプレイ・デバイス上に提示することと、特定の位置または特定の位置を表示する画像データのユーザによる選択に応答して、画像の数の減少を停止するように、または画像の元の数を回復するように、または画像の現在の数を画像の元の数に近づけるように、特定の車両から生じた画像データを転送する1つまたは複数の車両を制御することとを、さらに含んでよい。
1つまたは複数の車両から継続的に転送されている画像データを含んでいる表示データは、ディスプレイ・デバイス上にリアルタイムに表示されてよい。
本発明は、方法、システム、またはコンピュータ・プログラム製品、あるいはその組み合わせであってよい。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を含んでいるコンピュータ可読記憶媒体を含んでよい。
コンピュータ可読記憶媒体は、命令実行デバイスが使用するための命令を保持および格納できる有形のデバイスであり得る。コンピュータ可読記憶媒体は、例えば、電子ストレージ・デバイス、磁気ストレージ・デバイス、光ストレージ・デバイス、電磁ストレージ・デバイス、半導体ストレージ・デバイス、またはこれらの任意の適切な組み合わせであってよいが、これらに限定されない。コンピュータ可読記憶媒体のさらに具体的な例の非網羅的リストは、ポータブル・フロッピー・ディスク、ハード・ディスク、ランダム・アクセス・メモリ(RAM:random access memory)、読み取り専用メモリ(ROM:read-only memory)、消去可能プログラマブル読み取り専用メモリ(EPROM:erasable programmable read-only memoryまたはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM:static random access memory)、ポータブル・コンパクト・ディスク読み取り専用メモリ(CD-ROM:compact disc read-only memory)、デジタル多用途ディスク(DVD:digital versatile disk)、メモリ・スティック、フロッピー・ディスク、パンチカードまたは命令が記録されている溝の中の***構造などの機械的にエンコードされるデバイス、およびこれらの任意の適切な組み合わせを含む。本明細書において使用されるとき、コンピュータ可読記憶媒体は、それ自体が、電波またはその他の自由に伝搬する電磁波、導波管またはその他の送信媒体を伝搬する電磁波(例えば、光ファイバ・ケーブルを通過する光パルス)、あるいはワイヤを介して送信される電気信号などの一過性の信号であると解釈されるべきではない。
本明細書に記載されたコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から各コンピューティング・デバイス/処理デバイスへ、またはネットワーク(例えば、インターネット、ローカル・エリア・ネットワーク、広域ネットワーク、または無線ネットワーク、あるいはその組み合わせ)を介して外部コンピュータまたは外部ストレージ・デバイスへダウンロードされ得る。このネットワークは、銅伝送ケーブル、光伝送ファイバ、無線送信、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバ、あるいはその組み合わせを備えてよい。各コンピューティング・デバイス/処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インターフェイスは、コンピュータ可読プログラム命令をネットワークから受信し、それらのコンピュータ可読プログラム命令を各コンピューティング・デバイス/処理デバイス内のコンピュータ可読記憶媒体に格納するために転送する。
本発明の処理を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA:instruction-set-architecture)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、あるいは、Smalltalk、C++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語などの従来の手続き型プログラミング言語を含む1つまたは複数のプログラミング言語の任意の組み合わせで記述されたソース・コードまたはオブジェクト・コードであってよい。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で全体的に実行すること、ユーザのコンピュータ上でスタンドアロン・ソフトウェア・パッケージとして部分的に実行すること、ユーザのコンピュータ上およびリモート・コンピュータ上でそれぞれ部分的に実行すること、あるいはリモート・コンピュータ上またはサーバ上で全体的に実行することができる。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN:local area network)または広域ネットワーク(WAN:wide area network)を含む任意の種類のネットワークを介してユーザのコンピュータに接続されてよく、または接続は、(例えば、インターネット・サービス・プロバイダを使用してインターネットを介して)外部コンピュータに対して行われてよい。一部の実施形態では、本発明の態様を実行するために、例えばプログラマブル論理回路、フィールドプログラマブル・ゲート・アレイ(FPGA:field-programmable gate arrays)、またはプログラマブル・ロジック・アレイ(PLA:programmable logic arrays)を含む電子回路は、コンピュータ可読プログラム命令の状態情報を利用することによって、電子回路をカスタマイズするためのコンピュータ可読プログラム命令を実行してよい。
本発明の態様は、本明細書において、本発明の実施形態に記載された方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照して説明される。フローチャート図またはブロック図あるいはその両方の各ブロック、ならびにフローチャート図またはブロック図あるいはその両方に含まれるブロックの組み合わせが、コンピュータ可読プログラム命令によって実装され得るということが理解されるであろう。
これらのコンピュータ可読プログラム命令は、コンピュータまたはその他のプログラム可能なデータ処理装置のプロセッサを介して実行される命令が、フローチャートまたはブロック図あるいはその両方のブロックに指定される機能/動作を実施する手段を作り出すべく、汎用コンピュータ、専用コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサに提供されてマシンを作り出すものであってよい。これらのコンピュータ可読プログラム命令は、命令が格納されたコンピュータ可読記憶媒体がフローチャートまたはブロック図あるいはその両方のブロックに指定される機能/動作の態様を実施する命令を含んでいる製品を備えるように、コンピュータ可読記憶媒体に格納され、コンピュータ、プログラム可能なデータ処理装置、または他のデバイス、あるいはその組み合わせに特定の方式で機能するように指示できるものであってもよい。
コンピュータ可読プログラム命令は、コンピュータ上、その他のプログラム可能な装置上、またはその他のデバイス上で実行される命令が、フローチャートまたはブロック図あるいはその両方のブロックに指定される機能/動作を実施するように、コンピュータ、その他のプログラム可能なデータ処理装置、またはその他のデバイスに読み込まれてもよく、それによって、一連の動作可能なステップを、コンピュータ上、その他のプログラム可能な装置上、またはコンピュータ実装プロセスを生成するその他のデバイス上で実行させる。
図内のフローチャートおよびブロック図は、本発明のさまざまな実施形態に従って、システム、方法、およびコンピュータ・プログラム製品の可能な実装のアーキテクチャ、機能、および動作を示す。これに関連して、フローチャートまたはブロック図内の各ブロックは、規定された論理機能を実装するための1つまたは複数の実行可能な命令を備える、命令のモジュール、セグメント、または部分を表してよい。一部の代替の実装では、ブロックに示された機能は、図に示された順序とは異なる順序で発生してよい。例えば、連続して示された2つのブロックは、実際には、含まれている機能に応じて、実質的に同時に実行されるか、または場合によっては逆の順序で実行されてよい。ブロック図またはフローチャート図あるいはその両方の各ブロック、ならびにブロック図またはフローチャート図あるいはその両方に含まれるブロックの組み合わせは、規定された機能または動作を実行するか、または専用ハードウェアとコンピュータ命令の組み合わせを実行する専用ハードウェアベースのシステムによって実装され得るということにも注意する。
「1つ」という表現は、「少なくとも1つ」と理解されるべきである。
「1つの~を含む/含んでいる」という表現は、「少なくとも1つの~を含む/含んでいる」と理解されるべきである。
「~を含む/含んでいる」という表現は、「少なくとも~を含む/含んでいる」と理解されるべきである。
「/」という表現は、「および/または」と理解されるべきである。