(58)【調査した分野】(Int.Cl.,DB名)
前記周辺の道路交通情報は、車線構成、道路標示、信号機信号、速度、軌跡、他の車両の相対位置、他の車両の車外灯の状態、歩行者、建物、障害物、横断歩道、及び停車標識又は譲れ標識のうちの1つ又は複数を含む、請求項1に記載の方法。
前記周辺の道路交通情報は、車線構成、道路標示、信号機信号、速度、軌跡、他の車両の相対位置、他の車両の車外灯の状態、歩行者、建物、障害物、横断歩道、及び停車標識又は譲れ標識のうちの1つ又は複数を含む、請求項8に記載の非一時的機械可読媒体。
前記周辺の道路交通情報の少なくとも一部を前記ネットワークによって前記所定のサーバーに送信するステップをさらに含む、請求項11に記載の非一時的機械可読媒体。
前記第1の車両は、前記ADVの後端部に対して所定の近接度内に位置し、前記カメラは、前記ADVの後端部の付近に取り付けられている、請求項10に記載の非一時的機械可読媒体。
前記周辺の道路交通情報は、車線構成、道路標示、信号機信号、速度、軌跡、他の車両の相対位置、他の車両の車外灯の状態、歩行者、建物、障害物、横断歩道、及び停車標識又は譲れ標識のうちの1つ又は複数を含む、請求項15に記載のデータ処理システム。
前記第1の車両は、前記ADVの後端部に対して所定の近接度内に位置し、前記カメラは、前記ADVの後端部の付近に取り付けられている、請求項17に記載のデータ処理システム。
【発明を実施するための形態】
【0008】
以下、検討する詳細を参照して、本発明の各実施形態及び態様を記載し、図面においては前記の各実施形態を示す。下記記載及び図面は、本発明を説明するためのものであり、本発明を限定するものとして解釈されるべきではない。特定の詳細を多く記載することは、本発明の各実施形態を全面的に理解するためである。但し、本発明の実施形態を簡潔的に検討するために、周知又は通常の詳細を記載しない場合がある。
【0009】
本明細書において、「一実施形態」又は「実施形態」を言及することは、当該実施形態による記載する特定の特徴、構成又は特性が本発明の少なくとも一つの実施形態に含まれることを意味する。「一実施形態において」という語句について、本明細書における各箇所での記載のすべては、必ずしも同一の実施形態を指すことに限定されない。
【0010】
幾つかの実施形態によれば、自動運転車のセンサー及び感知モジュールを使用して交通ルール違反を自動的に検出しユーザへ通知するための方法、装置、及びシステムを開示する。実行される処理は、ADVの複数のセンサーから取得されたセンサーデータに基づいて、自動運転車(ADV)の周辺の道路交通情報を取得するステップと、ADVにおいて、周辺の道路交通情報とADVが維持している予め設定された1セットの交通ルールとに基づいて、ADVの感知範囲内に位置する第1の車両の交通ルール違反を自動的に検出するステップであって、予め設定された交通ルールに従って周辺の道路交通情報を分析することを含む、ステップと、検出された交通ルール違反に応答して、警報を生成するステップを、を含む。
【0011】
一実施形態によれば、ADVに取り付けられた様々なセンサーから取得されたセンサーデータに応答して、予め設定された1セットの交通ルールに従ってセンサーデータを分析して、ADV周辺の1つ又は複数の車両のうちの第1の車両及び第1の車両の動作を検出することで、第1の車両が交通ルールを違反しているか否かを判断することができる。また、ADVに取り付けられたカメラを使用して、第1の車両の1つ又は複数の画像を取得することができ、当該1つ又は複数の画像は、センサーデータの一部であってもよい。第1の車両が交通ルールを違反していると判断された場合、警報を生成する。警報及び第1の車両の画像は、ADV内の表示装置に表示することができる。
【0012】
警告、第1の車両の画像、及びADV周辺の運転環境を表す感知データは、ADVによって保持されている永続的記憶装置に記憶されてもよい。上記情報は、交通ルール違反の証拠として使用することができる。付加的又は代替的に、警告、第1の車両の画像、及びADV周辺の運転環境を表す感知データは、ネットワークによってセンターサーバーに送信され記憶されてもよい。収集されたデータは、センターサーバーにおいてオフラインで後続的分析が実行されてもよい。
【0013】
第1の車両は、ADVの所定の近接度内に位置する車両のうちの1つ車両であってもよい。例えば、第1の車両は、ADVの後端部の後ろに位置し、ADVにおける、運転者が通常に十分な注意を払わないADVの後端部の近くに設置されたセンサーによって、交通違反が捕捉され検出されてもよい。ADVに取り付けられたセンサーを利用することによって、ADVに乗っている人間の介入なしに、通常に検出されない幾つかの交通違反を捕捉することができる。また、交通情報がセンターサーバーに送信されるので、交通違反の検出をオフラインで行うことができ、特に警察官がより重要なタスクを実行する場合、ADVの乗員(例えば、法執行官)は、違反車両を駐車させることを試みる必要がない。
【0014】
図1は、本発明の一実施形態に係る自動運転車のネットワーク構成を示すブロック図である。
図1を参照すると、ネットワーク構成100は、ネットワーク102を介して一つ又は複数のサーバー103〜104に対して通信可能に接続する自動運転車101を備える。一つの自動運転車のみを示すが、複数の自動運転車は、ネットワーク102を介して相互に接続し、及び/又はサーバー103〜104に接続可能である。ネットワーク102は、いずれのタイプのネットワークであってもよく、例えば、有線又は無線のローカルエリアネットワーク(LAN)、インターネットのような広域ネットワーク(WAN)、セルラ網、衛星ネットワーク又はそれらの組み合せである。サーバー103〜104は、いずれの形式のサーバー又はサーバークラスタであってもよく、例えば、ネットワークサーバーやクラウドサーバー、アプリケーションサーバー、バックエンドサーバー又はそれらの組み合せである。サーバー103〜104は、データ解析サーバーやコンテンツサーバー、交通情報サーバー、地図と関心点(MPOI)サーバー又は位置サーバーなどであってもよい。
【0015】
自動運転車とは、自動運転モードに配置可能な車両を指し、前記自動運転モードで、車両は、運転者からの入力が非常に少なく又は完全にない状況で、ナビゲートにより環境を通過する。そのような自動運転車は、センサーシステムを備えることができ、前記センサーシステムは、車両運転環境に関する情報を検出可能に一つ又は複数のセンサーを有するように配置される。前記車両及び関連するコントローラは、検出された情報を使用して、ナビゲートにより前記環境を通過する。自動運転車101は、手動モード、全自動運転モード又は部分自動運転モードで運転することが可能である。
【0016】
一実施形態において、自動運転車101は、感知・計画システム110と、車両制御システム111と、無線通信システム112と、ユーザインタフェースシステム113と、インフォテインメントシステム114と、センサーシステム115とを備えるが、これに限定されない。自動運転車101は、通常の車両に含まれる一部の汎用的な要素、例えば、エンジン、車輪、ステアリングホイール、変速機などを備えることが可能であり、前記要素は、車両制御システム111及び/又は感知・計画システム110により多種の通信信号及び/又は指令で制御され、当該多種の通信信号及び/又は指令は、例えば、加速信号又は指令、減速信号又は指令、方向転換信号又は指令、ブレーキ信号又は指令などである。
【0017】
要素110〜115は、インターコネクト、バス、ネットワーク又はそれらの組合せを介して相互に通信可能に接続されることが可能である。例えば、要素110〜115は、コントローラエリアネットワーク(CAN)バスを介して相互に通信可能に接続されることが可能である。CANバスは、マイクロコントローラと装置がホストなしの応用において相互に通信することを許容するように設計された車両バス規格である。それは、最初は自動車内部の多重化電気配線のために設計されたメッセージに基づくプロトコルであるが、様々な他の環境にも使用される。
【0018】
図2を参照すると、一実施形態において、センサーシステム115は、一つ又は複数のカメラ211と、全地球測位システム(GPS)ユニット212と、慣性計測ユニット(IMU)213と、レーダユニット214と、光検出と測距(LIDAR)ユニット215とを備えるが、これに限定されない。GPSユニット212は、自動運転車の位置に関する情報を提供するように操作可能な送受信器を備えることが可能である。IMUユニット213は、慣性加速度に基づいて自動運転車の位置及び配方の変化を検知可能である。レーダユニット214は、無線信号により自動運転車のローカル環境における対象を検知するシステムを表すことが可能である。一部の実施形態では、検知対象に加え、レーダユニット214は、更に対象の速度及び/又は前進方向を検知可能である。LIDARユニット215は、レーザーにより自動運転車が所在する環境における対象を検知することが可能である。LIDARユニット215は、他のシステム要素に加え、一つ又は複数のレーザー光源、レーザースキャナ及び一つ又は複数の検出器を備えることが可能である。カメラ211は、自動運転車の周囲環境の画像を撮像するための一つ又は複数の装置を備えることが可能である。カメラ211は、スチルカメラ及び/又はビデオカメラであってもよい。カメラは、機械的に移動可能なものであってもよく、例えば、カメラが回転及び/又は傾斜するステージに取り付けてもよい。
【0019】
センサーシステム115は、例えば、ソナーセンサーや赤外線センサー、ステアリングセンサー、スロットルセンサー、ブレーキセンサー及びオーディオセンサー(例えば、マイクロホン)などの他のセンサーを備えることが可能である。オーディオセンサーは、自動運転車の周囲環境から音声を収音するように配置可能である。ステアリングセンサーは、ステアリングホイール、車両の車輪又はそれらの組み合せのステアリング角度を検知するように配置可能である。スロットルセンサー及びブレーキセンサーは、それぞれ車両のスロットル位置及びブレーキ位置を検知する。スロットルセンサー及びブレーキセンサーは、集積式スロットル/ブレーキセンサーに集積される場合もある。
【0020】
一実施形態では、車両制御システム111は、ステアリングユニット201と、スロットルユニット202(加速ユニットともいう)と、ブレーキユニット203とを備えるが、これに限定されない。ステアリングユニット201は、車両の方向又は前進方向を調整するためのものである。スロットルユニット202は、モータ又はエンジンの速度を制御することにより、車両の速度及び加速度を制御することに使用される。ブレーキユニット203は、摩擦を与えることにより、車両の車輪又はタイヤを減速させて車両を減速させる。なお、
図2に示す要素は、ハードウェア、ソフトウェア又はそれらの組み合せで実現されることが可能である。
【0021】
図1に戻って、無線通信システム112は、自動運転車101と、例えば装置やセンサー、他の車両などの外部システムとの通信を許容する。例えば、無線通信システム112は、一つ又は複数の装置と直接に無線通信を行い、又は通信ネットワークを介して無線通信を行うことが可能であり、例えば、ネットワーク102を介してサーバー103〜104と通信する。無線通信システム112は、いずれのセルラ通信ネットワーク又は無線ローカルエリアネットワーク(WLAN)を使用可能であり、例えば、WiFiを利用して他の要素やシステムと通信可能である。無線通信システム112は、例えば赤外線リンクやブルートゥースなどを利用して装置(例えば、乗員のモバイル装置、表示装置、車両101内のスピーカ)と直接に通信可能である。ユーザインタフェースシステム113は、車両101内で実現された周辺装置の部分であることが可能であり、例えばキーボード、タッチパネル表示装置、マイクロホン及びスピーカなどを含む。
【0022】
特に自動運転モードで操作される際に、自動運転車101の機能の一部又は全部は、感知・計画システム110により制御又は管理されることが可能である。感知・計画システム110は、必要なハードウェア(例えば、プロセッサー、メモリ、記憶装置)及びソフトウェア(例えば、オペレーティングシステム、計画・ルーティングプログラム)を含み、センサーシステム115、制御システム111、無線通信システム112及び/又はユーザインタフェースシステム113から情報を受信して、受信した情報を処理し、起点から目的地点までのルート又は経路を計画した後、計画と制御情報に基づいて車両101を運転する。或いは、感知・計画システム110は、車両制御システム111と集積されてもよい。
【0023】
例えば、乗員であるユーザは、例えばユーザインタフェースを介して行程の出発地位置及び目的地を指定することが可能である。感知・計画システム110は、行程に関するデータを取得する。例えば、感知・計画システム110は、MPOIサーバーから位置とルート情報を取得することが可能であり、前記MPOIサーバーは、サーバー103〜104の一部であってもよい。位置サーバーは位置サービスを提供するとともに、MPOIサーバーは地図サービス及び一部の位置のPOIを提供する。その代わりに、そのような位置及びMPOI情報は、感知・計画システム110の不揮発性記憶装置にローカルキャッシュされてもよい。
【0024】
自動運転車101がルートに沿って移動する際に、感知・計画システム110は、交通情報システム又はサーバー(TIS)からリアタイム交通情報を取得してもよい。なお、サーバー103〜104は、第三者エンティティにより操作されることが可能である。その代わりに、サーバー103〜104の機能は、感知・計画システム110に集積されてもよい。感知・計画システム110は、リアタイム交通情報、MPOI情報及び位置情報、並びサセンサーシステム115により検出又は検知されたリアタイムローカル環境データ(例えば、障害物、対象、周辺車両)に基づいて、最適ルートを計画して、計画したルートに基づいて、例えば制御システム111を介して車両101を運転すること可能であり、これにより、安全で且つ効率よく指定の目的地に到達することができる。
【0025】
サーバー103は、データ解析システムであってもよく、各種のクライアントに対してデータ分析サービスを提供する。一実施形態では、データ分析システム103は、データ収集器121及び機械学習エンジン122を備える。データ収集器121は、各種の車両(自動運転車又は人間の運転者が運転する通常の車両)から運転統計データ123を収集する。運転統計データ123は、発行する運転指令(例えば、スロットル、ブレーキ、ステアリング指令)及び車両のセンサーにより異なる時点で捕捉された車両の応答(例えば、速度、加速、減速、方向)を示す情報を含む。運転統計データ123は、異なる時点での運転環境を記述する情報、例えば、ルート(出発地位置及び目的地位置を備える)、MPOI、道路状況、气候状況などを更に含むことが可能である。
【0026】
機械学習エンジン122は、運転統計データ123に基づいて、各種の目的で、1セットの規則、アルゴリズム及び/又は予測モデル124を生成又は学習する。一実施形態において、アルゴリズム124は、対象(例えば、車両、サイクリスト、歩行者)の挙動に基づいて、当該対象が1セットの交通ルールを違反しているか否かを検出するためのアルゴリズムを含んでもよい。また、サーバ103は、複数のADVによって取得され複数のADVから収集された交通情報を分析して交通ルール違反の何らかの対象があるか否かを判定するための分析モジュールをさらに含んでもよい。そして、自動運転中にリアルタイムで使用するように、アルゴリズム124をADVにアップロードすることができる。なお、サーバ103は、交通違反情報を法執行サーバに送信して、その中で次の処理(例えば、交通違反切符の発行)を行うことができる。代替的に、サーバ103は、法執行サーバの一部として実行されてもよい。
【0027】
図3A及び
図3Bは一実施形態に係る自動運転車とともに使用される感知・計画システムの例を示すブロック図である。システム300は、
図1の自動運転車101の一部として実現されることが可能であり、感知・計画システム110と、制御システム111と、センサーシステム115とを備えるが、これに限定されない。
図3A〜
図3Bを参照すると、感知・計画システム110は、位置計測モジュール301と、感知モジュール302と、予測モジュール303と、決定モジュール304と、計画モジュール305と、制御モジュール306と、ルーティングモジュール307と、交通ルールチェックモジュール308とを備えるが、これに限定されない。
【0028】
モジュール301〜307と関連するサブ要素の一部又は全部は、ソフトウェア、ハードウェア又はそれらの組み合せにより実現されることが可能である。例えば、それらのモジュールは、永続的記憶装置352にインストールされて、メモリ351にローディングされ、且つ一つ又は複数のプロセッサー(図示せず)により実行されることが可能である。なお、それらのモジュールの一部又は全部は、
図2の車両制御システム111のモジュールの一部又は全部に対して通信可能に接続され、又は集積される。モジュール301〜307の一部は、集積モジュールに集積されてもよい。
【0029】
位置計測モジュール301は、自動運転車300の現在位置(例えば、GPSユニット212による)を特定するとともに、ユーザの行程やルートに関するデータ全体を管理する。位置計測モジュール301(地図及びルートモジュールともいう)は、ユーザの行程やルートに関するデータ全体を管理する。ユーザは、例えばユーザインタフェースを介してログインして、行程の出発地位置及び目的地を指定することができる。位置計測モジュール301は、自動運転車300の地図とルート情報311のような他の要素と通信して、行程に関するデータを取得する。例えば、位置計測モジュール301は、位置サーバーと地図及びPOI(MPOI)サーバーから位置とルート情報を取得することが可能である。位置サーバーは位置サービスを提供するとともに、MPOIサーバーは地図サービス及び一部の位置のPOIを提供することにより、それらを地図とルート情報311の一部としてキャッシュすることが可能である。自動運転車300がルートに沿って移動する際に、位置計測モジュール301は、交通情報システム又はサーバーからリアタイム交通情報を取得することができる。
【0030】
感知モジュール302は、センサーシステム115により提供されるセンサーデータ及び位置計測モジュール301により取得される位置計測情報に基づいて、周囲環境への感知を特定する。感知情報は、通常の運転者がその運転している車両の周囲から感知したものを示す。感知は、例えば対象式による車線配置(例えば、直線車線又は湾曲車線)、信号機信号、他の車両の相対位置、歩行者、建物、横断歩道や他の交通に関する標識(例えば、止まれ標識、道譲れ標識)などを備えることが可能である。
【0031】
感知モジュール302は、コンピュータビジョンシステム又はコンピュータビジョンシステムの機能を含むことが可能であり、一つ又は複数カメラにより撮像された画像を処理且つ解析することにより、自動運転車環境における対象及び/又は特徴を認識する。前記対象は、交通信号、道路境界、他の車両、歩行者及び/又は障害物などを含むことが可能である。コンピュータビジョンシステムは、対象認識アルゴリズム、ビデオトラッキング及び他のコンピュータビジョン技術を使用することが可能である。一部の実施形態において、コンピュータビジョンシステムは、環境地図の描画、対象の追跡、及び対象の速度の推定などを行うことが可能である。感知モジュール302は、レーダ及び/又はLIDARのような他のセンサーにより提供される他のセンサーデータに基づいて、対象を検出してもよい。
【0032】
予測モジュール303は、各対象に対して、対象が現在の状況においてどのように動作するかを予測する。予測は、感知データに基づいて行われるものであり、当該感知データは、1セットの地図/ルート情報311及び交通ルール312の時点を考慮して、運転環境を感知したものである。例えば、対象が反対方向の車両であり且つ現在運転環境が交差点を含むと、予測モジュール303は、車両が直進するか又は旋回を行うかを予測する。感知データは、交差点に信号機がないことを示すと、予測モジュール303は、車両が交差点に進入する前に完全に停止する必要があると予測することがある。感知データは、車両が現在で左折専用車線又は右折専用車線にあることを示すと、予測モジュール303は、車両がそれぞれ左折又は右折を行う可能性が高いと予測することがある。
【0033】
決定モジュール304は、各対象に対して、どのように対象を対処するかを决定する。例えば、特定の対象(例えば、交差ルートにある他の車両)及び対象を記述するメタデータ(例えば、速度、方向、旋回角度)に対して、決定モジュール304は、前記対象に行き合う時にどうのように動作するか(例えば、追い越し、一時停止、停止、越え)を決定する。決定モジュール304は、例えば交通ルールや運転規則312の規則集合に基づいて、そのような决定を行うことが可能であり、前記規則集合が不揮発性記憶装置352に記憶されることが可能である。
【0034】
ルーティングモジュール307は、起点から目的地点までの一つ又は複数のルートや経路を提供するように配置される。出発地位置から目的地位置までの所定の行程について、例えばユーザから所定の行程を受信して、ルーティングモジュール307は、地図とルート情報311を取得して、出発地位置から目的地位置までのすべてのルート又は経路を特定する。ルーティングモジュール307は、出発地位置から目的地位置までの各経路を確定した地形図式の基準線を生成することが可能である。基準線とは、例えば、他の車両、障害物や交通状況などの影響を全く受けない、理想的なルート又は経路である。即ち、道路には他の車両、歩行者や障害物がないと、ADVは、正確又は厳密に基準線に追従すべきである。そして、地形図を決定モジュール304及び/又は計画モジュール305に提供する。決定モジュール304及び/又は計画モジュール305は、すべてのルートをチェックして、他のモジュールにより提供される他のデータに基づいて、最適ルートの一つを選択して補正し、前記他のデータは、例えば、位置計測モジュール301からの交通状況、感知モジュール302により感知された運転環境、及び予測モジュール303により予測された交通状況である。その時点における特定の運転環境により、ADVを制御するための実際ルート又は経路は、ルーティングモジュール307により提供される基準線に対して近接し、又は相違する可能性がある。
【0035】
感知された各対象に対する决定に基づいて、計画モジュール305は、ルーティングモジュール307により提供された基準線を基にして使用して、自動運転車に対してルート又は経路、及び運転パラメータ(例えば、距離、速度及び/又は旋回角度)を計画する。言い換えれば、所定の対象に対して、決定モジュール304は、当該対象が何をすべきかを決定する一方、計画モジュール305は、どのようにするかを決定する。例えば、所定の対象に対して、決定モジュール304は、前記対象を越えることを決定することが可能である一方、計画モジュール305は、前記対象の左側か右側かで越えることを決定することが可能である。計画と制御データは、計画モジュール305により生成されて、車両300が次の移動サイクル(例えば、次のルート/経路セグメント)でどのように移動するかを記述する情報を含む。例えば、計画と制御データは、車両300が30mphの速度で10メートル移動した後、25mphの速度で右側の車線に変更することを指示可能である。
【0036】
計画と制御データに基づいて、制御モジュール306は、計画と制御データにより限定されるルート又は経路に応じて、適当な指令又は信号を車両制御システム111に発信することにより、自動運転車を制御し運転する。前記計画と制御データは、ルート又は経路に沿って、異なる時点で適当な車両配置又は運転パラメータ(例えば、スロットル、ブレーキ及び旋回指令)を使用して車両をルート又は経路の第一点から第二点に運転させるための十分な情報を含む。
【0037】
一実施形態では、計画段階が複数の計画周期(指令周期ともいう)で実行され、例えば、各時間間隔が100ミリ秒(ms)である周期で実行される。
【0038】
計画周期又は指令周期の各々に対して、計画と制御データに基づいて一つ又は複数の制御指令を発行する。即ち、各々の100msに対して、計画モジュール305は、次のルートセグメント又は経路セグメントを計画し、例えば、目標位置、及びADVが目標位置に到達するのに必要な時間を含む。その代わりに、計画モジュール305は、具体的な速度、方向及び/又はステアリング角などを規定してもよい。一実施形態では、計画モジュール305は、次の所定の期間(例えば、5秒)に対してルートセグメント又は経路セグメントを計画する。各計画周期に対して、計画モジュール305は、前の周期で計画した目標位置に基づいて現在周期(例えば、次の5秒)のための目標位置を計画する。そして、制御モジュール306は、現在周期の計画と制御データに基づいて一つ又は複数の制御指令(例えば、スロットル、ブレーキ、ステアリング制御指令)を生成する。
【0039】
なお、決定モジュール304と計画モジュール305は、集積モジュールとして集積されることが可能である。決定モジュール304/計画モジュール305は、自動運転車の運転経路を決定するために、ナビゲーションシステム又はナビゲーションシステムの機能を含むことが可能である。例えば、ナビゲーションシステムは、自動運転車が最終目的地への車線に基づく経路に沿って前進すると同時に、感知した障害物を実質的に回避するような経路に沿って、自動運転車が移動することを達成するための一連の速度及び前進方向を決定すること可能である。目的地は、ユーザインタフェースシステム113を介して行われるユーザの入力に基づいて設定可能である。ナビゲーションシステムは、自動運転車が運転していると同時に、動的に運転経路を更新することが可能である。ナビゲーションシステムは、自動運転車用の運転経路を決定するために、GPSシステム及び一つ又は複数の地図からのデータを合併する。
【0040】
交通ルールチェックモジュール308は、運転/交通ルール312に従って、感知モジュール302により得られた感知情報(例えば、周辺の道路交通情報)をチェックし、それらが自動運転車の感知範囲内で発生された時に、1つ又は複数の他の車両の交通ルール違反を自動的に検出する。交通ルールチェックモジュールによって検出され得る交通ルール違反は、速度違反、交通信号違反、駐車標識違反、(歩行又は他の車両に対する)譲れ違反、外部照明障害、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されない。上記非網羅的リストは、例示の目的にすぎない。交通ルールチェックモジュール308は、他の交通ルール違反を検出することもできる。
【0041】
図4は、一実施形態に係る自動運転車と共に使用される各モジュールを示すブロック
図400である。交通ルール違反を自動的に検出しユーザへ通知するための方法は、
図4のモジュールにより実施されることが可能である。
図4に示すモジュール又はサブモジュールのうちの一部又は全部は、ハードウェア、ソフトウェア、又はそれらの組み合わせにより実現されることが可能である。ADVは、警察のパトロール車であってもよい。感知モジュール302は、ADVのセンサーを使用してADV周辺の道路交通情報を取得する。使用されるセンサーは、カメラ211、GPSユニット212、IMU213、レーダユニット214、LIDARユニット215、又はそれらの組み合わせを含んでもよい。周辺の道路交通情報は、車線構成、道路標示、信号機信号、速度、軌跡、他の車両の相対位置、他の車両の車外灯の状態、歩行者、建物、障害物、横断歩道、又はその他の交通関連標識(例えば、停車標識や譲れ標識)又はそれらの組み合わせを含んでもよいが、これらに限定されない。上記非網羅的リストは、例示の目的にすぎない。周辺の道路交通情報は、他の情報を含んでもよい。
【0042】
交通ルールチェックモジュール308は、周囲の道路交通情報及び予め記憶された交通ルール312に基づいて、ADVの感知範囲内の他の車両の交通ルール違反を検出する。特定の時間に使用される交通ルール312は、ADVが運営される場所及び管轄区域(例えば、特定の国、州、都市など)によって変わり得ることを理解されたい。検出された交通ルール違反は、速度違反、交通信号違反、駐車標識違反、(歩行又は他の車両に対する)譲れ失敗違反、外部照明障害、又はそれらの任意の組み合わせを含んでもよいが、これらに限定されない。上記非網羅的リストは、例示の目的にすぎない。検出された交通ルール違反は、上記以外の別の違反であってもよい。通知モジュール401は、交通ルール違反が検出されたことをユーザ(例えば、ADVに乗っている警察官)へ警告する。これにより、ユーザは適切な処置を取ることができる。
【0043】
一実施形態によれば、交通ルールチェックモジュール308(交通違反検出器又は検出モジュールとも呼ばれる)は、分析モジュール(図示せず)を含む。ADVに取り付けられた様々なセンサーから得られたセンサーデータに応答して、1セットの予め設定された交通ルールに従って、分析モジュールは、センサーデータを分析して、ADV周辺の1つ又は複数の車両のうちの第1の車両及び第1の車両の動作を検出することで、第1の車両が交通ルールを違反しているか否かを判断する。また、ADVに取り付けられたカメラを使用して、第1の車両の1つ又は複数の画像(例えば、ナンバープレート、車両のモデル又は製造業者、色や形状などの車両の外観)を取得することができる。当該1つ又は複数の画像は、センサーシステム115によって提供されるセンサーデータの一部であってもよい。第1の車両が交通ルールを違反していると判断された場合、通知モジュール401は、交通違反が検出されたことを示す警報を生成する。警告、及び第1の車両のグラフィック表示(例えば、アイコン)又は画像は、ADV内の表示装置に表示することができる。第1の車両のグラフィック表示は、ADVの乗員が違反の発生位置を分かるように、ADVの位置に対する相対地点又は位置に対応して表示されてもよい。第1の車両の相対地点又は位置は、センサーデータに基づいて確定することができる。
【0044】
警告、第1の車両の画像、及びADV周辺の運転環境を表す感知データは、ADVによって維持されている永続的記憶装置に記憶されてもよい。上記情報は、交通ルール違反の証拠として使用することができる。付加的又は代替的に、警告、第1の車両の画像、及びADV周辺の運転環境を表す感知データは、ネットワークによってセンターサーバー(例えば、サーバー103)に送信され記憶されてもよい。収集されたデータは、センターサーバーにおいてオフラインで後続的分析が実行されてもよい。
【0045】
第1の車両は、ADVの所定の近接度内に位置する車両のうちの1つ車両であってもよい。例えば、第1の車両は、ADVの後端部の後ろに位置し、ADVにおける、運転者が通常に十分な注意を払わないADVの後端部の近くに設置されたセンサーによって、交通違反が捕捉出されてもよい。ADVに取り付けられたセンサーを利用することによって、ADVに乗っている人間の介入なしに、通常に検出されない幾つかの交通違反を捕捉することができる。また、交通情報がセンターサーバーに送信されるので、交通違反の検出をオフラインで行うことができ、特に警察官がより重要なタスクを実行する場合、ADVの乗員(例えば、法執行官)は、交通違反の時間点で違反車両を駐車させる必要がない。後にオフラインで実行された分析に応答して、違反車両の所有者へ交通違反切符を発行することができる。
【0046】
なお、この場合、ADVは、法執行機関の車両(例えば、パトロールカー)の一部として実施することができる。代替的に、ADVは、法執行システムを支援して何らかの交通違反を検出するように交通データを収集する、従来の車両又は準法執行車両(quasi−law enforcement vehicles)における多くのADVのうちの1つであってもよい。最終的な違反検出は、中央施設部で決定することができる。
【0047】
図5は、本発明の一実施形態に係る自動運転車のセンサー及び感知モジュールを使用して交通ルール違反を自動的に検出しユーザへ通知するための例示的な方法500のフローチャートである。プロセス500は、処理ロジックによって実行することができき、当該処理ロジックは、ソフトウェア、ハードウェア、又はそれらの組み合わせを含んでもよい。例えば、プロセス500は、上述のように交通ルールチェックモジュール308によって実行されてもよい。ブロック501において、ADVの複数のセンサーから取得されたセンサーデータに基づいて、自動運転車(ADV)の周辺の道路交通情報を取得する。ブロック502において、周辺の道路交通情報とADVが維持している予め設定された1セットの交通ルールとに基づいて、ADVの感知範囲内に位置する第1の車両の交通ルール違反を自動的に検出し、予め設定された交通ルールに従って周辺の道路交通情報を分析することを含む。ブロック503において、検出された交通ルール違反に応答して、警報を生成することができる。
【0048】
なお、上記のように記載された要素の一部又は全部は、ソフトウェア、ハードウェア又はそれらの組み合せにより実現されることが可能である。例えば、このような要素は、不揮発性記憶装置にインストールして記憶されるソフトウェアとして実現されることが可能であり、前記ソフトウェアがプロセッサー(図示せず)によりメモリにローディングされて、メモリで実行されることで、本発明に記載のプロセスや操作を実施する。その代わりに、このような要素は、専用ハードウェア(例えば、集積回路(例えば、専用集積回路(ASIC)、デジタルシグナルプロセッサー(DSP)又はフィールドプログラマブルゲートアレイ(FPGA))にプログラミングされ、又は組み込まれる、実行可能なコードとして実現されてもよく、前記実行可能なコードが、アプリケーションからの相応的なドライバ及び/又はオペレーティングシステムを介してアクセス可能である。また、このような要素は、プロセッサー又はプロセッサーコアにおける特定ハードウェアロジックとして実現されることが可能であり、ソフトウェア要素が一つ又は複数の特定指令によりアクセス可能な指令セットの一部とされる。
【0049】
したがって、本明細書に記載の本発明の実施形態の助けにより、ADVに乗っている警察官は、付近の交通ルール違反を見つけるというタスクから解放することができる。ADVの感知及び交通ルール検出機能により、ADVの感知範囲内の全方向に発生する交通ルール違反を自動的に検出すると同時に、速度及び正確度を確保することができる。
【0050】
図6は、本発明の一実施形態とともに使用可能なデータ処理システムの例示を示すブロック図である。例えば、システム1500は、上述のように上記プロセス又は方法のいずれか一つを実行する任意のデータ処理システム、例えば、
図1の感知・計画システム110又はサーバー103〜104の任意の一つを示す。システム1500は、様々の要素を備えることが可能である。これらの要素は、集積回路(IC)、集積回路の一部、個別の電子装置や回路基板(例えば、コンピュータシステムのマザーボード又は挿入カード)に適用される他のモジュールとして実現され、又は、他の方式でコンピュータシステムのフレームに組み込まれる要素として実現されることが可能である。
【0051】
なお、システム1500は、コンピュータシステムの多くの要素の上位図を示すためである。しかしながら、一部の実施形態では、付加要素を有してもよく、また、他の実施形態では、図示する要素と異なる配置を有してもよいこと、を理解すべきである。システム1500は、デスクトップ型コンピュータ、ラップトップ型コンピュータ、タブレット型コンピュータ、サーバー、携帯電話、メディアプレイヤ、携帯情報端末(PDA)、スマートウォッチ、パーソナル通信機器、ゲーム装置、ルータやハブ機器、ワイヤレスアクセスポイント(AP)やリピーター、セットトップボックス、又はそれらの組み合せを示すことが可能である。また、単一の機器又はシステムのみを示すが、「機器」又は「システム」という用語は、一つ(又は複数)の指令セットを単独的又は共同的に実行することにより、本明細書で検討する任意の一つ又は複数の方法を実行する機器又はシステムの任意の集合を含むことを、理解されるべきである。
【0052】
一実施形態において、システム1500は、バス又はインターコネクト1510を介して接続されるプロセッサー1501、メモリ1503及び装置1505〜1508を含む。プロセッサー1501は、単一のプロセッサーコア、又は複数のプロセッサーコアの一つのプロセッサーや複数のプロセッサーを含むことを表すことが可能である。プロセッサー1501は一つ又は複数の汎用プロセッサー、例えば、マイクロプロセッサー、中央処理ユニット(CPU)などを表すことが可能である。より具体的には、プロセッサー1501は、複合指令セットコンピュータ(CISC)方式のマイクロプロセッサー、縮小指令セットコンピュータ(RISC)方式のマイクロプロセッサー、超長指令語(VLIW)マイクロプロセッサーや他の指令セットを実施するプロセッサー、又は指令セットの組み合せを実施するプロセッサーであってもよい。プロセッサー1501は、一つ又は複数の専用プロセッサー、例えば、専用集積回路(ASIC)、セルラやベースバンドプロセッサー、フィールドプログラマブルゲートアレイ(FPGA)、デジタルシグナルプロセッサー(DSP)、ネットワークプロセッサー、グラフィックプロセッサー、通信プロセッサー、暗号化プロセッサー、コプロセッサー、組込み用途向けプロセッサー、又は指令を処理可能な任意の他のロジックであってもよい。
【0053】
プロセッサー1501(低パワーマルチコアプロセッサーソケットインタフェース、例えば超低電圧プロセッサーであってもよい)は、前記システムの各種の要素と通信するためのメイン処理ユニット及び中央ハブとされることが可能である。このようなプロセッサーは、システムオンチップ(SoC)として実現されることが可能である。プロセッサー1501は、本明細書で検討する操作及びステップを実行するための指令を実行するように配置される。システム1500は、選択可能なグラフィックサブシステム1504と通信可能なグラフィックインタフェースを更に含み、グラフィックサブシステム1504が、表示制御部、グラフィックプロセッサー及び/又は表示装置を備えることが可能である。
【0054】
プロセッサー1501は、メモリ1503と通信可能であり、一実施形態において、メモリ1503が所定量のシステムメモリを提供するように、複数のメモリ装置により実現されることが可能である。メモリ1503は、一つ又は複数の揮発性記憶(又はメモリ)装置、例えば、ランダムアクセスメモリ(RAM)、ダイナミックRAM(DRAM)、シンクロナスDRAM(SDRAM)、スタティックRAM(SRAM)又は他のタイプの記憶装置を含むことが可能である。メモリ1503は、プロセッサー1501又はその他の任意の装置により実行される指令列を含む情報を記憶可能である。例えば、各種のオペレーティングシステム、デバイスドライバ、ファームウェア(例えば、入出力基本システム又はBIOS)及び/又はアプリケーションの実行可能なコード及び/又はデータは、メモリ1503にローディングされてプロセッサー1501により実行されることが可能である。オペレーティングシステムは、任意タイプのオペレーティングシステム、例えば、ロボットオペレーティングシステム(ROS)、Microsoft
(R)社のWindows
(R)オペレーティングシステム、アップル社のMAC OS
(R)/IOS
(R)、Google
(R)社のAndroid
(R)、LINUX、UNIX、又は他のリアタイムや組み込みオペレーティングシステムであってもよい。
【0055】
システム1500は、IO装置、例えばネットワークインタフェース装置1505、選択可能な入力装置1506及び他の選択可能なIO装置1507を含む装置1505〜1508をさらに備えることが可能である。ネットワークインタフェース装置1505は、無線送受信器及び/又はネットワークインタフェースカード(NIC)を含むことが可能である。前記無線送受信器は、WiFi送受信器、赤外線送受信器、ブルートゥース送受信器、WiMax送受信器、無線携帯電話送受信器、衛星送受信器(例えば、全地球測位システム(GPS)送受信器)や他の無線周波数(RF)送受信器、又はそれらの組み合せであってもよい。NICは、イーサネットカードであってもよい。
【0056】
入力装置1506は、マウス、タッチパネル、タッチスクリーン(表示装置1504に集積されることが可能である)、ポインティングデバイス(例えば、スタイラスペン)及び/又はキーボード(例えば、物理的なキーボード又はタッチスクリーンの一部として表示される仮想的なキーボード)を含むことが可能である。例えば、入力装置1506は、タッチスクリーンに接続されるタッチスクリーンコントローラを含むことが可能である。タッチスクリーン及びタッチスクリーンコントローラは、例えば複数の種類のタッチセンシティブ技術(容量、電気抵抗、赤外線及び弾性表面波技術を含むが、これに限定されない)の任意の1種、及び他の近接センサーレイ又はタッチスクリーンに接触する一つ又は複数の点を特定するための他の素子により、その接触、及び移動や間欠を検出する。
【0057】
I/O装置1507は、オーディオ装置を含むことが可能である。オーディオ装置は、音声を支持する機能、例えば音声認識、音声複製、ディジタル記録及び/又は電話機能を促すために、スピーカ及び/又はマイクロホンを含むことが可能である。他のIO装置1507として、ユニバーサル・シリアル・バス(USB)ポート、パラレルポート、シリアルポート、プリンタ、ネットワークインタフェース、バスブリッジ(例えば、PCI−PCIブリッジ)、センサー(例えば、加速度計モーションセンサー、ジャイロ、磁力計、光センサー、コンパス、接近センサーなど)又はそれらの組み合せを含むことが可能である。装置1507は、カメラ機能(例えば、写真及び動画セグメントの記録)を促すための光学センサー、例えば電荷結合素子(CCD)又は相補型金属酸化物半導体(CMOS)光学センサーを備える撮像処理サブシステム(例えば、カメラ)をさらに含むことが可能である。一部のセンサーは、センサーハブ(図示せず)を介してインターコネクト1510に接続されることが可能である一方、キーボードや感熱センサーなどの他の装置は、システム1500の具体的な配置や設計に応じて、埋め込みコントローラ(図示せず)により制御されることが可能である。
【0058】
例えばデータ、アプリケーション、一つ又は複数のオペレーティングシステムなどの情報の永続的な記憶を提供するために、大容量記憶装置(図示せず)がプロセッサー1501に接続されてもよい。各種の実施形態では、薄型化且つ軽量化のシステム設計を実現するとともにシステムの応答性を改善するために、このような大容量記憶装置は、固体装置(SSD)により実現されることが可能である。但し、他の実施形態では、大容量記憶装置は、主にハードディスクドライブ(HDD)により実現されてもよく、このうち少量のSSD記憶装置は、SSD用キャッシュとされることにより、停電期間でコンテキストの状態及び他の情報の不揮発性記憶を実現して、システム活動が再起動する際に急速通電を実現することができる。また、フラッシュメモリ装置は、例えばシリアルペリフェラルインタフェース(SPI)を介してプロセッサー1501に接続されることが可能である。このようなフラッシュメモリ装置は、前記システムのBIOS及び他のファームウェアを含むシステムソフトウェアの不揮発性記憶を提供することが可能である。
【0059】
記憶装置1508は、本明細書に記載の任意の一つ又は複数の方法や機能を実現する一つ又は複数の指令セットやソフトウェア(例えば、モジュール、ユニット及び/又はロジック1528)が記憶されているコンピュータ可読記憶媒体1509(機械可読記憶媒体又はコンピュータ可読媒体ともいう)を含むことが可能である。処理モジュール/ユニット/ロジック1528は、上記要素の任意の一つ、例えば計画モジュール305、制御モジュール306、感知モジュール302及び関連するサブ要素を表すことが可能である。また、処理モジュール/ユニット/ロジック1528は、データ処理システム1500、メモリ1503及びプロセッサー1501により実行されている期間において、全部又は少なくとも一部がメモリ1503及び/又はプロセッサー1501の中に貯留することができ、メモリ1503及び/又はプロセッサー1501も機械アクセス可能な記憶媒体を構成する。更に、処理モジュール/ユニット/ロジック1528は、ネットワークによりネットワークインタフェース装置1505を介して伝送又は受信を行うことが可能である。
【0060】
コンピュータ可読記憶媒体1509は、上述した一部のソフトウェア機能を永続的に記憶することが可能である。コンピュータ可読記憶媒体1509は、例示的な実施形態では単一の媒体として示されるが、「コンピュータ可読記憶媒体」という用語は、前記一つ又は複数の指令セットを記憶する単一の媒体又は複数の媒体(例えば、集中又は分散データベース及び/又は関連するキャッシュメモリ及びサーバー)を含む、と考えられる。「コンピュータ可読記憶媒体」という用語は、機械により実行されるとともに、前記機械が本発明の任意の一つ又は複数の方法を実行させる指令セットを記憶又はコーディング可能な任意の媒体を含む、と考えられる。従って、「コンピュータ可読記憶媒体」という用語は、固体メモリ、光学媒体及び磁気媒体、又は他の不揮発性機械可読媒体の任意を含むが、これに限定されない、と考えられる。
【0061】
本明細書に記載の処理モジュール/ユニット/ロジック1528、要素及び他の特徴は、個別ハードウェア要素とされ、又はハードウェア要素(例えば、ASICS、FPGA、DSP又は類似の装置)の機能に集積されるように、実現可能である。また、処理モジュール/ユニット/ロジック1528は、ハードウェア装置におけるファームウェア又は機能回路として実現されることが可能である。また、処理モジュール/ユニット/ロジック1528は、ハードウェア装置とソフトウェア要素との任意の組み合せにより実現されることが可能である。
【0062】
なお、システム1500は、データ処理システムの各種の要素を備えるように示されるが、要素を相互に接続する任意の特定の構成又は形態を示すためではない。このような詳細は、本発明の実施態様と密接な関係がないからである。さらに、より少ない要素又はより多い要素を有するネットワークコンピュータ、ハンディコンピュータ、携帯電話、サーバー及び/又は他のデータ処理システムも、本発明の実施形態とともに使用可能であることを、認識すべきである。
【0063】
詳細に記載した前記内容の一部は、既にコンピュータメモリで行われるデータビットの演算のアルゴリズム及び符号表示に応じて表現された。これらのアルゴリズムの記載及び表示は、データ処理分野での技術者が使用する方式であり、技術者らの仕事の本質を効率よく本分野での他の技術者に伝達するためである。本明細書では、アルゴリズムは、通常に所望の結果を達成する自己矛盾なし操作シーケンスとして考えられる。これらの操作とは、物理量に対して物理的な操作を行う必要がある操作である。
【0064】
ところで、これらの用語及びその類似する用語のすべては、適当な物理量に関連し、且つ単にこれらの物理量を便宜上に表記することに適用されることはいうまでもない。以上の検討において他の形態で明確に限定しない限り、本明細書全体において、用語(例えば、添付した特許請求の範囲に記載の用語)により検討されることは、コンピュータシステムや類似する電子計算装置の動作及び処理を指す。前記コンピュータシステムや類似する電子計算装置は、コンピュータシステムのレジスタ及びメモリでの物理(電子)量として表示されるデータを操作して、前記データをコンピュータシステムメモリやレジスタ、又は他の情報記憶装置、伝送装置や表示装置での類似的に物理量として表示される他のデータを変換する。
【0065】
本発明の実施形態は、本明細書における操作を実行するためのデバイスにさらに関する。このようなコンピュータプログラムは、不揮発性コンピュータ可読媒体に記憶される。機械可読媒体は、機械(例えば、コンピュータ)可読形態で情報を記憶する任意の機構を含む。例えば、機械可読(例えば、コンピュータ可読)媒体は、機械(例えば、コンピュータ)可読記憶媒体(例えば、リードオンリー専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリ装置)を含む。
【0066】
前記図面に記載のプロセスや方法は、ハードウェア(例えば、回路、専用ロジックなど)、ソフトウェア(例えば、不揮発性コンピュータ可読媒体で体現される)又はそれらの組み合せを含む処理ロジックにより実行されることが可能である。前記プロセスや方法は、上記の内容において一部の順序操作に基づいて記載されているが、前記操作の一部が異なる順序で実行されてもよいことを、理解すべきである。また、一部の操作は、順序に実行されることではなく、並列に実行されてもよい。
【0067】
本発明の実施形態は、いずれの特定のプログラミング言語を参照して記載されることではない。複数のプログラミング言語を使用して本明細書に記載の本発明の実施形態の教示を実施可能であることを、理解すべきである。
【0068】
前記明細書の中で、本発明の具体的例示の実施形態を参照して、本発明の実施形態に対して説明した。本発明に添付する特許請求の範囲に記載のより広い要旨及び範囲を逸脱しない状況で、本発明に様々な修正を加えることができることが明らかである。従って、明細書及び図面は、制限的な意味ではなく、例示的な意味で理解されるべきである。