JP2020115322A - 車両位置推定のためのシステムおよび方法 - Google Patents
車両位置推定のためのシステムおよび方法 Download PDFInfo
- Publication number
- JP2020115322A JP2020115322A JP2019207789A JP2019207789A JP2020115322A JP 2020115322 A JP2020115322 A JP 2020115322A JP 2019207789 A JP2019207789 A JP 2019207789A JP 2019207789 A JP2019207789 A JP 2019207789A JP 2020115322 A JP2020115322 A JP 2020115322A
- Authority
- JP
- Japan
- Prior art keywords
- lane
- vehicle
- image
- pixels
- drift
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 96
- 239000011159 matrix material Substances 0.000 claims abstract description 72
- 230000009466 transformation Effects 0.000 claims abstract description 57
- 238000003384 imaging method Methods 0.000 claims abstract description 13
- 230000009471 action Effects 0.000 claims abstract description 12
- 230000001131 transforming effect Effects 0.000 claims abstract description 7
- 238000013145 classification model Methods 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 8
- 230000005484 gravity Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 230000007704 transition Effects 0.000 claims description 5
- 238000012935 Averaging Methods 0.000 claims description 3
- 230000004931 aggregating effect Effects 0.000 claims description 3
- 238000009795 derivation Methods 0.000 abstract description 5
- 238000012545 processing Methods 0.000 description 25
- 238000010586 diagram Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 14
- 230000008569 process Effects 0.000 description 8
- 230000000875 corresponding effect Effects 0.000 description 7
- 230000000007 visual effect Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 5
- 230000001276 controlling effect Effects 0.000 description 5
- 238000000605 extraction Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000002596 correlated effect Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000001747 exhibiting effect Effects 0.000 description 3
- 238000009434 installation Methods 0.000 description 3
- 230000004807 localization Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000004043 responsiveness Effects 0.000 description 3
- 240000004050 Pentaglottis sempervirens Species 0.000 description 2
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000153 supplemental effect Effects 0.000 description 2
- 239000000725 suspension Substances 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 230000036626 alertness Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013016 damping Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/588—Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2420/00—Indexing codes relating to the type of sensors based on the principle of their operation
- B60W2420/40—Photo, light or radio wave sensitive means, e.g. infrared sensors
- B60W2420/403—Image sensing, e.g. optical camera
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
- B60W30/10—Path keeping
- B60W30/12—Lane keeping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30241—Trajectory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
- G06T2207/30256—Lane; Road marking
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Traffic Control Systems (AREA)
- Image Analysis (AREA)
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
Abstract
【課題】車線領域内の車両の位置を効率的に推定する。【解決手段】車両に搭載された撮像デバイスは、車両を取り巻く環境を描写する画像ストリームを捕捉する。画像は、検査させて、画像に描かれた道路の車線マーキングを示すピクセルバンドを識別させる。識別されたピクセルバンドに基づいて、道路の車線を示す車線領域を抽出する。車線領域の中心に対する車両のオフセットを示す車線ドリフト指標を生成させる。出力アクションは、車線ドリフト指標で示されるオフセットに基づいて開始する。車線領域は、車線ドリフト指標の効率的な導出を支援する変換行列を使用して、第1フレームから第2フレームに変換させて、車線領域内の車両のトップダウン表示を提供する。【選択図】図4
Description
本発明は、一般に、自動車分野に関し、より具体的には、自動車分野における車両位置の推定に関する。
車両(例えば、自動車、トラック、オートバイ)は、通常、道路を走行する。道路は、通常、車両を車線内の位置に維持させ、道路を走行する隣接車両と接触する可能性を低くするために、複数の車線に分割されている。
しかしながら、様々な理由により、車両が、道路上の指定された車線からドリフトする(外れる)ことは、多々ある。例えば、車両の運転中に運転者の注意力が散漫になり、車両が車線から隣接する車線にドリフトすることが起こり得る。これにより、道路で車両衝突が発生するリスクが高まる可能性がある。
車両が車線からドリフトしているか否かを識別するための簡単な試みの1つは、車両に1つ以上のカメラを装備させて、車両が車線からドリフトしているか否かを示す画像を取り込むことである。しかしながら、車線ラインに対する車両位置を抽出する従来の画像処理技術は、画像センサまたは車両(例、画像センサが存在する車両)のユニバーサルではないカメラの予備較正手順および/または他の内因性パラメータに依存することになる。これにより、画像の精度が低下するので、この画像から抽出された、誤った車線シフトが決定されることになる。さらに、これらの画像処理技術は、複雑なモデルまたはアルゴリズムを必要とする3次元環境で、車両の動きおよび/または位置情報を確立するために画像全体を頻繁に利用する可能性があるため、計算リソースを集中的に使用することになる。
本技術の様々な特徴および特性は、図面と併せて詳細な説明を検討することにより、当業者にはより明らかになるであろう。技術の実施形態は、限定するのではなく例として、図面に示されていて、ここでは同様の参照番号は同様の要素を示すことができる。
図面は、例示のみを目的として様々な実施形態を示している。当業者は、本技術の原理から逸脱することなく代替実施形態を採用できることを認識するであろう。したがって、特定の実施形態が図面に示されているが、この技術はさまざまな修正に適用可能である。
(概要)
歴史的に、車両の位置は、三辺測量により全地球測位システム(GPS)によって確立されて来た。しかしながら、これらの測定は、不正確である場合があり(例えば、誤差が10メートルを超える場合もあり)、精度が重要な状況には適していない。このような状況の例には、自動運転、コンピュータ支援運転、コンピュータ監視運転が含まれる。したがって、エンティティは、はるかに高い精度で(例えば、10センチメートル未満の誤差で)車両の位置を推定するように設計されたアルゴリズムの開発を開始して来ている。これらのアルゴリズムを実装/採用するプロセスは、「位置推定(localization)」と呼ばれる。
歴史的に、車両の位置は、三辺測量により全地球測位システム(GPS)によって確立されて来た。しかしながら、これらの測定は、不正確である場合があり(例えば、誤差が10メートルを超える場合もあり)、精度が重要な状況には適していない。このような状況の例には、自動運転、コンピュータ支援運転、コンピュータ監視運転が含まれる。したがって、エンティティは、はるかに高い精度で(例えば、10センチメートル未満の誤差で)車両の位置を推定するように設計されたアルゴリズムの開発を開始して来ている。これらのアルゴリズムを実装/採用するプロセスは、「位置推定(localization)」と呼ばれる。
上述したように、従来の位置推定プロセスにはいくつかの欠点がある。例えば、いくつかのアルゴリズムでは、煩わしい較正手順を定期的に(例えば、各運転セッションの前に)実行する必要がある。別の例では、いくつかのアルゴリズムは、複雑なコンピュータ実装モデル、機械学習(ML: machine learning)アルゴリズム、コンピュータビジョン(CV: computer vision)アルゴリズムなどの使用により、計算コストが高くなる。
したがって、本出願で紹介されるものは、車線内にある車両の位置推定のためのコンピュータプログラムおよび関連するコンピュータ実装技術である。例えば、プロセッサは、ホスト車両に接続された前方向画像センサによって生成された画像データのストリームを取得するように、構成させることができる。本明細書で使用される「ホスト車両」という用語は、画像センサが接続されている車両を指す。いくつかの実施形態では、画像センサは、ホスト車両の内側に(例えば、フロントガラスの内面に)固定され、他の実施形態では、画像センサは、ホスト車両の外側に(例えば、ボンネットの上面に)固定される。画像センサの例は、電荷結合素子(CCD)センサおよび相補型金属酸化膜半導体(CMOS)センサ等のアクティブピクセルセンサを含む。前方向画像センサが、1つ以上のCCDセンサを含む場合、画像データのストリームは、時間の経過とともに生成される画像のシリーズを含むことができる。これらの画像は、例えば、ビデオフィードのフレームである。
ここで、このプロセッサは、画像データのストリームに基づいて車線ドリフト指標を生成することにより、車線内にあるホスト車両の位置を推定することが出来る。例えば、画像データのストリームが、経時的に生成された画像のシリーズを含む場合、このプロセッサは、画像のシリーズ内の画像ごとに、個別の車線ドリフト指標を生成することができる。各画像について、このプロセッサは、ピクセルの複数のバンドを抽出し、車線を表すピクセルの複数のバンド内にある1つまたは複数のマーキングを識別し、次いで、このマーキングに基づいて車線領域を定義する。運転者のパフォーマンスは、画像のシリーズに関連付けられた車線ドリフト指標のシリーズに基づいて、評価/スコア付けさせることが出来る。例えば、このプロセッサは、幾つの車線ドリフト指標が、閾値を下回ったかに基づいて、運転者にスコアを付けることができる。別の例として、このプロセッサは、車線ドリフト指標の一般的な軌跡に基づいて(例、車線ドリフト指標が経時的に減少しているか否か、車線ドリフト指標が周期的に振動しているか否か、等)、運転者にスコアを付けることができる。
いくつかの実施形態では、このプロセッサは、ホスト車両の内部に配置される。例えば、このプロセッサは、ホスト車両に取り付けられた車載システム内に配置させることができ、またこのプロセッサは、運転者に関連付けられた電子デバイス(例えば、携帯電話)内に配置させることも出来るであろう。他の実施形態では、このプロセッサは、ホスト車両の外部に配置される。例えば、このプロセッサは、車載システム、電子デバイスなどと通信するコンピュータサーバに配置させることも出来るであろう。
実施形態は、個人をリアル−タイムで監視する目的のために、車両位置推定の文脈で説明することができる。例えば、本明細書で説明される技術は、運転セッション中に車両の運転者を監視して、この運転者が適切な(例、安全な)行動を示しているか否かを決定するように設計されている観測システムの部分とすることができる。このような決定は、この運転者のために生成された車線ドリフト指標に基づいて行うことができる。しかしながら、当業者は、これらの特徴が、自動運転車両を制御するような他の状況にも等しく適用可能であることを認識するであろう。
(用語)
本明細書で使用される用語の目的は、実施形態を説明するためだけであり、本開示の範囲を限定することを意図するものではない。文脈が許す限り、単数形または複数形を使用する単語は、それぞれ、複数形または単数形を含むことができる。
本明細書で使用される用語の目的は、実施形態を説明するためだけであり、本開示の範囲を限定することを意図するものではない。文脈が許す限り、単数形または複数形を使用する単語は、それぞれ、複数形または単数形を含むことができる。
本明細書で使用される場合、特に明記されない限り、「処理する(processing)」、「計算する(calculating)」、「コンピューティングする(computing)」、「決定する(determining)」、「表示する(displaying)」、「生成する(generating)」、等の用語は、コンピュータのメモリまたはレジスタ内の物理(電子)量として表されるデータを、コンピュータのメモリ、レジスタ、または他のそのような記憶媒体、伝送、または表示装置内の物理量として同様に表される他のデータに、操作するおよび変換するコンピュータまたは類似の電子計算装置のアクションおよびプロセスを指す。
本明細書で使用される「接続された(connected)」、「結合された(coupled)」、等のような用語は、2つ以上の要素間の直接または間接の任意の接続または結合を指すことができる。要素間の結合または接続は、物理的、論理的、またはそれらの組み合わせとすることが出来る。
「実施形態(an embodiment)」または「一実施形態(one embodiment)」への言及は、説明されている推定の特徴、機能、構造、または特性が、少なくとも一つの実施形態に含まれることを意味する。このようなフレーズの出現は、必ずしも同じ実施形態を指すわけではなく、またそれらが、必ずしも相互に排他的な代替実施形態を指すわけでもない。
文脈が明らかにそうであることを必要としない限り、「含む(comprise)」および「含む(comprising)」という言葉は、排他的または網羅的な意味ではなく、包括的な意味(すなわち、「〜を含むが、それに限定されない」という意味)で解釈されるべきである。
「に基づいて(based on)」という用語も、また、排他的または網羅的な意味ではなく、包括的な意味で解釈されるべきである。したがって、特に明記しない限り、「〜に基づいて(based on)」という用語は、「〜に少なくとも部分的に基づいて(based at least in part on)」を意味することを意図している。
「モジュール(module)」という用語は、広く、ソフトウェアコンポーネント、ハードウェアコンポーネント、および/またはファームウェアコンポーネントを指す。このモジュールは、通常、指定された入力に基づいて有用なデータまたは他の出力を生成することが出来る機能コンポーネントである。このモジュールは、自己充足型とすることができる。コンピュータプログラムは、1つまたは複数のモジュールを含むことができる。したがって、コンピュータプログラムは、異なるタスクの完了を担当する複数のモジュール、または複数のタスクの完了を担当する単一のモジュールを含むことができる。
複数のアイテムのリストに関して使用される場合、単語「または(or)」は、リスト内のアイテムの何れか、リスト内のアイテムの全て、およびリスト内のアイテムの任意の組み合わせ、の全ての解釈を網羅することを意図している。
本明細書に記載のプロセスの何れかで実行されるステップのシーケンスは、例示である。しかしながら、物理的な可能性に反しない限り、ステップは、さまざまなシーケンスおよび組み合わせで実行させることができる。例えば、本明細書で説明されているステップは、プロセスに追加させ、またはそこから削除させることが出来るであろう。同様に、ステップは、置換または並べ替えることも出来るであろう。したがって、如何なるプロセスの説明も、オープンエンドであることが意図されている。
(システムの概要)
本実施形態は、導出された車線ドリフト指標に基づいて、車線内にある車両を効率的に推定することに関する。車両に搭載された画像ストリームは、記録させることができ、これは、車両を取り巻く環境の画像のストリームを表す。車両は、画像ストリームを使用して車線内の位置を推定させて、車線内の車両の位置を示す車線ドリフト指標を生成することができる。この車線ドリフト指標に基づいて、運転者にスコアを付ける、または車両制御に関する出力を提供して、車線内にある車両への如何なるシフトも修正することが出来る。
本実施形態は、導出された車線ドリフト指標に基づいて、車線内にある車両を効率的に推定することに関する。車両に搭載された画像ストリームは、記録させることができ、これは、車両を取り巻く環境の画像のストリームを表す。車両は、画像ストリームを使用して車線内の位置を推定させて、車線内の車両の位置を示す車線ドリフト指標を生成することができる。この車線ドリフト指標に基づいて、運転者にスコアを付ける、または車両制御に関する出力を提供して、車線内にある車両への如何なるシフトも修正することが出来る。
本実施形態は、運転セッション中に車両が車線内でドリフトしているか否か(例、車線ドリフトを経験しているか否か)の決定を提供することができる。これは、(例、車線ドリフト指標として定量化されている)車線ドリフトの程度(例、重症度、頻度、振幅、等)の決定を含むことができる。
車両を取り囲む領域の取得された画像ストリームは、車両のトップダウン図に変換させることができる。この変換された車両のトップダウン図は、画像ストリームを車両のトップダウン図に変換するように構成されている変換モジュールの自動較正を容易にすることが出来る。さらに、車線ドリフトに関する運転者の行動(運転者の注意散漫、運転者のスキル、運転者のステアリング技術、運転者の計画能力、等)は、車線ドリフト指標を使用して決定させることができる。
本実施形態は、本実施形態の特徴を実装するコンピューティングシステムの計算機能を改善させることができる。例えば、この技術は、収集された非ジェネリックデータの処理を改善することが出来る(例、収集されたセンサデータをデータの顕著性に基づいてフィルタリングすることにより、処理中に、最も顕著なデータに焦点を合わせかつそれを処理し、そして最も顕著でないデータを無視しまたは重み付けを解除することが出来る)。別の例では、この技術は、分析される画像の部分を制約することによる(例、分析された画像を、元の画像から分離された水平ピクセルバンドのペアに制約することによる)より少ない計算ノードおよび/またはレイヤ;単一画像処理に代える(例、単一画像分析よりも画像当たり低い解像度の)時系列情報;そしてイベントトリガ(例、実質的に直線の道路区間での高速道路走行に対応するイベントトリガによる、想定されるラインの直線性に基づく車線領域の抽出)に基づいた想定データコンテキスト、を使用することにより計算効率を向上させることが出来る。
本実施形態は、本実施形態の特徴を実施する撮像システムの機能を改善させることができる。絶対的または相対的な幾何学的パラメータ(例、実際の距離、相対的な間隔、等)を抽出する従来の画像処理は、多くの場合、車両内のカメラの配置、視野およびレンズのプロパティ、等のような、撮像システムの内因性および外因性パラメータを記述する既定の較正データを必要とする。対照的に、この技術の変形例は、画像システムの内因性および/または外因性パラメータを事前に知る必要無しに、車線位置推定情報(車線ドリフト指標、車線位置安定性、等)を抽出することが出来る。これは、(例、寸法較正誤差伝播の減少により)撮像技術および画像処理技術の精度を改善させ、および(例、内因性パラメータがわずかに異なる、使用されている撮像ハードウェアの変動に対する)復元性を改善させることが出来る。
図1は、本実施形態を実装することができる例示的な環境100の図である。図1に示されるように、環境は、車両102を含むことができる。例示的な車両は、自動車、トラック、バス、スクータ、等のような任意のモータ駆動マシンを含むことが出来る。
車両102は、センサ(例えば、センサ104a−b)を含むことができる。センサは、車両102に関する様々なデータを取得することが出来る。例えば、センサ104bは、撮像範囲106によって表される車両102の周囲の画像データを捕捉する画像センサを含むことが出来る。
環境は、複数の車線を含む道路を含むことが出来る。例えば、この道路は、外側車線マーカ108a−bおよび車線マーカ110a−bを含むことができる。いくつかの実施形態では、この道路は、車両が、車線のマーカ間を移動することを可能とする車線を含むことが出来る。例えば、図1に示される実施形態では、車両102は、マーカ110aと110bの間を移動することができる。この道路の車線を明確に分離するために、道路に車線マーカをペイントする、または道路に強調表示をすることができる。
本明細書で説明する実施形態の特徴は、様々な関連システムによって実装および/または実行させることができる。例えば、本実施形態の特徴は、車両に搭載された検知およびコンピューティングシステム(例、車載システム)によって少なくとも部分的に実行させることが出来るが、これに加えまたは代えて、サーバシステム、ユーザデバイス(スマートフォン、タブレット、等)、またはコンピューティングシステムの他の適切なセットまたはネットワークのような遠隔コンピューティングシステムによって少なくとも部分的に実行させることが出来る。
実施形態の特徴は、車載車両システム(例、車両センサデータ)によってサンプリングされたデータを使用して実装させることができるが、これに加えまたは代えて、補助車両データ(例、車載システムの車両センサ以外の他の車両センサによってサンプリングされた信号、データベースから取得された車両データ、車両自体に関連付けられていてかつ車載システムに保存されている内因性の車両データ、等)、(例、ソース車両、データベース、または他の適切な遠隔コンピューティングシステムから受け取られた)他の車両のデータ、集合人口データ、(例、車両、運転者、地理的位置、等の)履歴データ、または他の適切なソースからの他の適切なデータ、を使用して実行させることが出来る。車載車両システムは、車両イベント(例、イベントシーン、運転シーン、等)中の車両周囲に対応する車両センサデータを捕捉、記録、または適切に取得し、同時に、(例、運転者の行動の決定に使用するための)車両イベント中の運転者に対応する車両センサデータを捕捉、記録、または適切に取得するように機能することが出来る。しかし、車載システムは、運転者の運転方針を決定するために使用することが出来る、相関する内部−外部データを適切に捕捉することが出来る。
搭載車両システムは、処理システム(例、GPU、CPU、マイクロプロセッサ、TPU、車両コンピューティングシステム、等のセット)、ストレージシステム(例、RAM、フラッシュ)、通信システム、センサセット、電源システム(例、バッテリ、車両電源コネクタ、太陽光発電システム、等)、CANバスインターフェース(例、有線または無線)、ハウジング、または他の適切なコンポーネントを含むことが出来る。通信システムは、(例、車両間、車両からインフラストラクチャ、車両から遠隔コンピューティングシステム、または他の通信用のための)テレメトリシステム、ワイヤレスシステム(例、セルラ、Wi−Fi、または他の802.11xプロトコル、Bluetooth、RF、NFC、等)、有線システム(例、イーサネット、車両バス接続、等)、または他の適切な通信システムを含むことが出来る。センサは、カメラ(例、広角、狭角、または他の適切な視野を持つもの;可視範囲、不可視範囲、IR、マルチスペクトル、ハイパースペクトル、または適切な波長に沿った感度の高いもの;単眼、立体、または適切な数のセンサまたはカメラ、等)、運動学的センサ(例、加速度計、IMU、ジャイロスコープ、等)、光学システム(例、周囲光センサ)、音響システム(例、マイク、スピーカ、等)、範囲-検索システム(例、レーダ、ソナー、TOFシステム、LIDARシステム、等)、位置情報システム(例、GPS、携帯三辺測量システム、短距離定位システム、推測航法システム、等)、温度センサ、圧力センサ、近接センサ(例、距離測定システム、短距離無線、等)、または他の適切なセンサのセットを含むことが出来る。
いくつかの実施形態では、車載システムは、内部センサのセット、外部センサのセット、および処理システムの何れかを含むことができる。この内部センサ(例、内向きカメラ、マイク、等)は、車内、より好ましくは、運転者の容積(例、車両の運転者がいる容積、および/またはこの車両の運転中に占められるであろう車室内の容積)に、およびこれに代えてまたは加えて、任意の適切な内部容積に、向けられていてかつそれを監視することが出来る。この外部センサ(例、外向きカメラ)は、車両の外側に向けられていることが好ましく、かつ車両の前方領域(例、車両軌道に沿って車両に先行する領域、運転容積に近接しかつ車両を囲む領域、ドライブトレインの縦方向ベクトル、等)を含むことが好ましい。しかしながら、この外部センサは、これに代えて、車両の側面、上部、下部、背面、または車両の外部および/または車両周辺を含む他の適切な領域に向けることも出来る。これらのセンサは、車両におよび/または(例、ハウジングを介して)互いに静的に取り付けることができるが、ジンバル、減衰システム、または他の運動機構によって移動可能に取り付けることも出来る。
本実施形態の特徴は、リアル−タイムまたはほぼリアル−タイムで実行(例、実行、実装、等)させることが出来るが、本明細書に記載の特徴の全てまたは一部は、これに代えて、非同期でまたは他の任意の適切な時間に実行させることも出来る。本実施形態の特徴は、好ましくは、既定の頻度(例、ミリ秒ごと、サンプリング周波数で、等)で繰り返し実行させることができるが、これに代えて、トリガイベント(例、車両の変化、姿勢、ユーザの注意散漫レベルの変化、運転セッション情報の受信、新しいセンサ情報の受信、高衝突リスクに関する地理的領域への車両の物理的な進入、物体近接検出、運転セッションの開始または終了の検出、等)の発生に応答して、運転セッションに対して1回、車両に対して1回、または他の適切な頻度で、実行させることも出来る。
これらのセンサは、車両内に配置された車載車両システムで画像ストリームを記録するように構成させることができる。これにより、(例、外向きカメラから取得される画像ストリームに描かれる)車両の周囲を示すデータを取得することを可能にすることができる。これは、運転に関するシナリオ(例、画像ストリームが、内向きカメラから取得される場合に、画像ストリームに示される車両イベント)中に、周囲に対する運転者のアクションを示すデータを取得する機能も果たすことが出来る。この画像ストリームは、上記の車載システムを使用して記録させることができる。しかしながら、この画像ストリームは、これに加えまたは代えて、車両自体(例、車両、エゴ車両、等)に統合されたおよび/またはそれとは別個の任意の適切なセンサシステムを使用して、記録させることも出来る。
画像ストリームは、少なくとも2つのカメラ:車外を撮像する第1のカメラ、および車内を撮像する第2のカメラから捕捉された同期画像データ(例、時間的に同期している、空間的に同期または相関している、等)を含むことが出来る。(例、内部および外部カメラからの)同期されたセンサデータは、運転者の活動(例、運転者の行動)を、車外で発生しつつあるイベント(例、車両のイベント、車線のドリフト、走行シナリオ、等)に関連付けるために使用することができる。
これらのセンサは、運転環境を感知する(例、車両を取り巻くシーン内のオブジェクトは何か、そのようなオブジェクトはどこにあるか、オブジェクトの特性、等)ことができるようにしても良い。運転環境は、連続的または不連続的に感知、記録、または適切に決定することが出来る。これは、さまざまな形で、トリガ(例、イベントベースのトリガ、閾値ベースのトリガ、等)に応じて実行させることが出来る。
これらのセンサは、視覚(例、画像)および/または非視覚車両センサデータとすることが出来る、補足データを収集することが出来る。この車両センサデータは、これに加えてまたは代えて、位置データ(例、GPSデータ)、運動データ(例、慣性測定ユニット(IMU: inertial measurement unit)データ)、および任意の他の適切なタイプのセンサデータを含むことが出来る。1つ以上のデータストリームから集合的に集合される車両センサデータは、双方向ビデオデータ(例、内向きビデオカメラデータと外向きビデオカメラデータ)を含み、そして慣性データ、ジャイロスコープデータ、位置データ、ルーティングデータ、運動学データ、および(例、適切なデータ接続を介してOBDIIポートから収集される)他の適切な車両遠隔測定データも含むことが出来る。しかしながら、車両センサデータは、他の適切なデータを含むことも出来る。
(車線ドリフト指標の導出)
上述したように、センサ(例、撮像デバイス)は、車両を取り巻く環境の画像を捕捉することができる。車線領域は、捕捉した画像に基づいて、検出させることが出来る。図2Aは、例示的な撮像領域212および抽出された車線領域214を示す。図2に示される実施形態では、撮像領域212は、道路の様々な車線マーカ(例えば、車線マーカ208a−bおよび外側車線マーカ210a−b)を識別することができる。
上述したように、センサ(例、撮像デバイス)は、車両を取り巻く環境の画像を捕捉することができる。車線領域は、捕捉した画像に基づいて、検出させることが出来る。図2Aは、例示的な撮像領域212および抽出された車線領域214を示す。図2に示される実施形態では、撮像領域212は、道路の様々な車線マーカ(例えば、車線マーカ208a−bおよび外側車線マーカ210a−b)を識別することができる。
撮像領域212を検査して車線内の車両の位置を推定し、車線ドリフト指標を生成することが出来、これにより車線内の車両の位置に関する情報が(例、時間の関数として、ある時点で、等)決定され、そしてこの情報が車線ドリフト指標として定量化される。
車両の位置を推定することにより、車線内の車両の位置変化(例、位置の時間微分)を示す(例、車線ドリフト指標として定量化される)情報を決定することができるが、これに代えて、車線内の車両の相対位置を決定するように機能させることも出来る。車線領域の位置を推定することは、運転セッション中に車両が走行している車線領域を決定することを含むことも出来る。
図2Aに示されるように、車線領域214は、画像ストリーム212の前方向画像から抽出させることができる。例えば、車線領域は、車線位置(例、車線ドリフト指標)の時間変化を決定するために使用することが出来る近似車線領域とすることが出来る。この近似車線領域は、時間的変動を決定するための閾値精度よりも大きく、かつ絶対位置の決定または推定のための閾値精度よりも低い、精度を有する。いくつかの例では、より低い精度の閾値を適用することは、車線領域を決定するのに必要な計算能力および/またはアルゴリズムの複雑さを低減させ、そして車線領域を決定する速度を上げるように、機能することが出来る。
いくつかの実施形態では、車線領域214を決定することは、前方向画像212から少なくとも2つの水平ピクセルバンド(例、バンド216a−b)を抽出し、これらの2つの水平ピクセルバンドから車線マーキングを抽出し、そしてこの抽出された車線マーキングに基づいて車線領域を決定することを含むことが出来る。しかしながら、単一のバンド(例、水平バンド、傾斜バンド、等)または任意の適切な数のバンドを、前方向画像から抽出させることも出来る。
いくつかの実施形態では、2つの水平ピクセルバンド(例、バンド216a−b)は、前方向画像の幅全体に広がり、そして各水平ピクセルは、2つの水平ピクセルバンドが、重なり合わない高さと同等となるように、前方向画像の高さよりも低い高さに広がることが出来る。他の実施形態では、2つ以上の水平ピクセルバンドは、任意の適切な幅および/また は高さとさせることが出来、そして重複または非重複とさせることが出来る。
図2Bは、画像212から抽出された例示的な車線マーキング218を示す。図2Bに示されるように、車線マーキング218は、ある期間中に画像から抽出されたピクセルバンドのシリーズ(例、バンド216a−b)を含むことが出来る。例えば、バンド216a−bは、第1の画像から第1の期間に導出させることができ、そしてバンド216c−dは、第2の画像から第2の期間に導出させることができる。ピクセルバンドのシリーズを組み合わせることにより、例示的な車線マーキング218の生成が可能になる。
車線マーキングの抽出は、車線マーキングの特性(例、車線ラインの既知の標準化された幅、車線の既知の標準化された幅、そしてしたがって車線マーキングの相対位置、車線マーキングの局所的な直線性、等)に基づいて、(例、画像内の)車線マーキングの水平位置を抽出することを含むことができる。これは、(例、履歴データ、地理的位置または地域に関する規制、等に基づいて)事前に決定させることが出来、および/または(例、画像ストリームの以前のフレームから、画像ストリームの同じフレーム内の特徴から推定して、等)動的に決定させることが出来る。
一例では、車線マーキングを抽出することは、水平バンドに渡って各垂直列の各ピクセルの強度値を平均化し、そしてこの強度値の明から暗へおよび/または暗から明への遷移に基づいて、画像の各象限の車線マーキングの水平重心を決定することを含む。別の例として、角度が付いた列の各ピクセルの強度値を平均化することが出来る。この角度が付いた列は、車両に対して前方向に沿って直線であると想定される車線マーキングの投影角度に基づいて決定される角度で角度が付けられている。代替例および/または変形例では、車線マーキングの抽出は、(例、水平ピクセルバンドの高さが単一ピクセルである場合、複数の平均化されていない水平強度トレースが、車線マーキングの水平重心を決定する上で考慮される場合、等)ピクセル強度の平均化を省略することが出来る。
いくつかの実施形態では、車線マーキングの抽出は、訓練された分類モデルへの入力として水平ピクセルバンドを提供すること、および訓練された分類モデルの出力に基づいて車線領域を取得することを含むことが出来る。この分類モデルは、任意の適切な機械学習法および/または技術に従って訓練することが出来る。第1の例では、この訓練された分類モデルは、(例、前方向画像のフレーム内の)車線領域を出力として出力するエンドツーエンドモデルを含むことができる。第2の例では、訓練された分類モデルは、水平ピクセルバンド内の車線マーキングの水平位置を出力することが出来、そしてこの車線領域は、4つの水平位置(例、2つの水平ピクセルバンドがある場合、水平ピクセルバンドあたり2つ)から構成される4辺ポリゴンから決定論的に計算される。いくつかの実施形態では、車線マーキングは、手動で抽出することが出来、この場合ユーザは各バンドの車線マーカに対応する2つのポイントを選択する。しかしながら、この車線領域は、訓練された分類モデルを使用して適切に決定することも出来る。
図3は、車線ドリフト指標を生成するために使用される抽出された車線領域300の例示的なブロック図を示す。図3に示されるように、抽出された車線領域は、車線領域300を定義する複数のポイントを含むことが出来る。いくつかの実施形態では、ポイントの各シリーズは、ある時点で画像から検出されたピクセルバンドを示すことができる。例えば、ポイント302a−dは、1回目に捕捉された第1の画像から検出されたピクセルバンドを含み、ポイント302e−hは、2回目に捕捉された第2の画像から検出されたピクセルバンドを含み、そしてポイント302i−lは、3回目に捕捉された3番目の画像から検出されピクセルバンドを含むことができる。
いくつかの実施形態では、抽出された車線領域に含まれるポイントを検査して、ポイント間のラインを導出することができる。例えば、ライン304a−fは、共通のピクセルバンド間に生成させることができる。
画像から検出されたピクセルバンドは、ある期間中追跡させることができ、これは追跡ライン306a−dによって表すことができる。追跡ライン306a−dは、ある期間にわたるピクセルバンドの全般的な傾向を識別することができる。
車線ドリフト指標は、画像ストリームの複数の画像から、車線領域に基づいて導出させることができる。車線ドリフト指標の導出により、車線領域(例、画像ストリームから抽出された車線領域)内の車両のドリフトを定量化することができる。決定することが出来る車線ドリフト指標の例には、平均偏差または中央値偏差(例、経時的な車線領域ポイントの横方向変化の平均値または中央値)、経時的な偏差パターン、偏差の大きさ、または車線ドリフトに関する他の適切な指標を含めることが出来る。
図4は、車線ドリフト指標を導出するための例示的な方法400のブロック図を示している。この方法は、車両を取り巻く環境の画像を受け取ることを含むことができる(ブロック402)。この画像は、車両に配置されたカメラで捕捉させることが出来る。
この方法は、車線領域を決定することを含むことができる(ブロック404)。車線領域を決定することは、画像から少なくとも2つのピクセルバンドを抽出することを含むことができる(ブロック406)。車線領域を決定することは、抽出されたピクセルバンドによって境界付けられる車線領域を定義することを含むことができる(ブロック408)。
この方法は、ある期間中に決定された車線領域を集合することを含むことができる(ブロック410)。この集合された車線領域は、抽出されたピクセルバンドのシリーズによって区切られた拡張車線領域を示す。
この方法は、車線ドリフト指標を決定することを含むことができる(ブロック412)。車線ドリフト指標は、車両が車線領域内を移動する程度(例、車両が車線の水平または横方向の中心から閾値距離を超えて逸脱する頻度、車の横方向位置が変化する割合、車両の変更、等)を定量化することが出来る。この車線領域は、車線ドリフト指標の導出に関して上述したように、画像ストリームの前方向画像から抽出させることができるが、これに加えてまたは代えて適切に決定させることも出来る。
いくつかの実施形態では、車線ドリフト指標を導出することは、車線内の車両の絶対位置とは無関係に車線ドリフト指標を抽出することを含むことができる。このような変形形態では、車線ドリフト指標は、時間の関数として車線位置の変化(例、車線位置の時間微分)を定量化させることができ、そして各画像の車線位置を計算することなく、画像ストリームデータ(例、画像の時系列)から直接計算させることが出来る。いくつかの実施形態では、車線ドリフト指標を導出することは、画像ストリームからの対応する画像のシリーズから抽出された車線位置の時系列に基づいて車線ドリフト指標を抽出すること、および/または別の方法で車線ドリフト指標を適切に抽出することを含むことが出来る。
いくつかの実施形態では、車線ドリフト指標の抽出は、画像ストリームの2つ以上の画像フレーム(例、前方向画像ストリーム、合成トップダウン画像ストリーム、等)の間の車線マーキングの抽出された水平重心の相対位置の変化を計算することを含むことが出来る。
第1の例では、車線ドリフト指標は、車線位置の時間導関数(例、導関数の定数因子、時間導関数に依存する関数、等)に基づいて計算される。ここで、この時間導関数は、有限差分演算(例、前方差分、中央差分、後方差分、他の適切な有限差分スキーム、等)によって計算される。
第2の例では、車線ドリフト指標は、車線ドリフトモデル(例、訓練された機械学習モデル)に基づいて計算される。この場合、この車線ドリフトモデルへの入力は、コンテキストパラメータおよび車線領域を含み、そしてこの車線ドリフトモデルは、これらの入力に基づいて車線ドリフト指標を出力する。特定の例の場合、これには、(平均シフト追跡、輪郭追跡、カルマンフィルタ、粒子フィルタ、等を使用して)画像ストリームの連続するフレームにより水平重心を識別および追跡すること等により、各ピクセルバンドの各車線マーキングを追跡すること;1つ以上の連続する画像フレーム間のそれぞれのピクセルバンド内の各車線マーキングの相対位置の空間的変化を計算すること;そして1つ以上の車線マーキングの空間的変化に基づいて車線ドリフト指標を計算することを、含めることが出来る。しかしながら、車線ドリフト指標の抽出は、これに加えまたは代えて、他の方法で適切に実行させることも出来る。
車線ドリフト指標を決定することは、集合された車線領域で識別された車線内の車両の横方向シフトを決定することを含むことができる(ブロック414)。横方向シフトは、車線領域内の車両間のオフセットを表すことができる。車線ドリフト指標を決定することは、集合された車線領域内で識別された横方向シフトの程度を識別することを含むことができる(ブロック416)。横方向シフトの程度は、車両の中心と車線領域の中心との間の距離を示すことができる。
(変換行列の実装)
図5は、変換行列に従って前方向画像から変換された車線領域に対する車両の例示的なトップダウン図のブロック図500を示す。図5に示されるように、トップダウン図(または鳥瞰図)は、車両の車線領域に対する車線ドリフトを表す車両のトップダウン図を提供することが出来る。
図5は、変換行列に従って前方向画像から変換された車線領域に対する車両の例示的なトップダウン図のブロック図500を示す。図5に示されるように、トップダウン図(または鳥瞰図)は、車両の車線領域に対する車線ドリフトを表す車両のトップダウン図を提供することが出来る。
上述したように、車線領域(車線504a−b)は、画像ストリームから生成された複数のポイント502a−dを備えることが出来る。決定された車線領域に基づいて、中心506は、車線領域の間(例、車線504aと504bの間)の中央ポイントを表すように、導出させることが出来る。車線領域内の中心506に対する車両508の位置は、車両508の車線ドリフトの程度を表すことが出来る。例えば、車両の中心が、直接、中心506にある場合、この車両には車線ドリフトは発生していないであろう。図5に示されるように、車両508の中心が中心506から外れている場合には、これは、この車両が車線領域の中心506からドリフトしていることを示す。
車線領域に対する車両のトップダウン図は、前方向画像に基づいて、変換行列に従って生成させることができる。この変換行列は、前方向画像から抽出された情報を、トップダウン図(例、鳥瞰図)からの車両の映像に変換することが出来る。抽出された車線位置推定データが、マッピングおよび/または他の地理空間位置データとともに使用されるアプリケーションでは、変換行列は、位置推定情報を、車両の周囲および/または環境をトップダウン表示で表すマッピングデータと直接比較することができるように機能することも出来る。
変換行列は、(例、前方向フレームの代わりに、またはそれに加えて)車線位置推定情報(例、車線ドリフト指標)を抽出することが出来るトップダウンフレームを定義することができる。以下に示されるように、車両および車線領域のトップダウン図の生成は、変換行列を初期化すること、画像ストリームのフレームに対応する変換行列を計算すること、および前方向画像から決定された車線領域を、変換行列に従って、車線領域のトップダウン図に変換すること、の何れかを含むことができる。
車両の変換行列および/またはトップダウン図の生成は、車両で(例、車載システムのコンピューティングモジュールで、車両内のモバイルデバイスで実行されるアプリケーションで、等)、遠隔コンピューティングシステムで(例、車載システム、分散データストレージおよび検索インフラストラクチャ等と通信する遠隔サーバで)、および/または他の適切な場所で、実行させることができる。特定の例では、車載システムに送信される変換行列の生成は、車載システムから受け取られた画像に基づいて遠隔コンピューティングシステムで実行され、そして車両のトップダウン図の生成は、車載システムで、遠隔コンピューティングシステムから車載システムに送信された、初期化された変換行列に基づいて、実行される。しかしながら、変換行列および/または車両のトップダウン図の生成は、遠隔コンピューティングシステムおよび搭載車両システムを含むコンピューティングシステムの部分(例、搭載コンピューティングシステムを含む搭載車両システム)の部分間で適切に分配させることが出来る。
変換行列および/または車両のトップダウン図の生成は、1つまたは複数の仮定に基づいて実行させることが出来る。仮定は、変換の側面を事前に計算および/または簡略化することを可能にするように機能することが出来る。例えば、変換行列は、道路の局所的な平坦度、道路の実質的な直線性、車両速度(例、高速道路に関する最高速度を超える速度、慣性データから抽出された特定車両の速度、等)、および他の適切な仮定に基づいて、生成させることができる。これにより、画像データから抽出された車線マーキングに修正を適用する(例、トップダウン図に平行ラインを適用する、速度に基づいて2つ以上のフレームにわたる車線マーキング間の縦間隔を決定する、等)ことが可能になる。仮定は、変換行列が、存在すること、そして前方向画像から実際のポイントのセットが与えられると、初期化されたポイントのセットから計算させることが出来ることも含むことが出来る。
車両の変換行列および/またはトップダウン図は、トリガに応答して生成させることができ、そのような変形態様では、トリガは、変換行列の計算が基づく仮定の精度を高めるように機能する。このトリガは、任意の適切なセンサデータ、車両イベントデータ、および/またはコンテキスト(例、補足、補助)データ(例、上記のデータ)に基づいて生成させることが出来る。例えば、変換行列は、前方向画像の車線ラインが実質的に直線であり、そして車両が横方向移動閾値を超えて横方向に動いていないという、仮定に基づくことができる。例えば、変換行列は、車両が高速道路上にありそして(例、車載システムのIMUから)受け取られた横方向加速度信号が閾値を下回っているとして、車両を指定する車両の地理的位置に基づいて生成されたトリガに応じて、生成させることができる。
図6は、車両の決定された車線位置推定の例示的なグラフィック表現600を示す。図6に示されるように、車両に対して決定された車線位置推定情報のシリーズは、時間に対するグラフィック表示で表すことが出来る。このグラフは、導出された車線領域を示すグラフ上に配置された車線領域602a−bを含むことができる。
車線位置推定は、本明細書に記載のステップを使用して、導き出すことができる。車両の車線位置推定は、車線領域(例、車線領域602aおよび602bによって境界付けられた領域)に対する車両の位置を表すことができる。一定期間にわたる車両の車線位置推定は、トレンドライン604で表すことが出来る。車線位置推定の精度閾値は、マーカ606で表すことが出来る。
このグラフ600は、車両が車線領域の外側を横断した時間を表すことが出来る。例えば、図6に示されるように、車線位置推定傾向線604は車線領域602a−bの境界から外に出ることが出来る。以下に示されるように、車両が、車線ドリフトを発生させたことの検出に応じて、車線ドリフトを修正するために、後続するアクションを実行させることができる。
図7は、変換行列を実装する方法700のブロック図を示す。この方法は、画像フレームを遠隔コンピューティングシステムに送信することを含むことができる(ブロック702)。遠隔コンピューティングシステムは、無線通信インターフェースを介して搭載コンピューティングデバイスから受け取られた画像フレームを処理するように構成された、相互接続されたコンピューティングデバイスのシリーズを含むことが出来る。
この方法は、車線領域を示すポイントのセットを取得することを含むことができる(ブロック704)。ポイントのセットは、車線ドリフト指標の生成に使用することが出来る車線領域を示すことができる。車線ドリフト指標に基づいて、以下に詳しく説明されるように、車線ドリフト指標に関連して運転者にスコア付けをする、または出力を生成させることができる。これらは、以下に詳述される。
この方法は、受け取られたポイントのセットに基づいて変換行列を初期化することを含むことができる(ブロック706)。変換行列の初期化は、変換行列の初期値の決定を含むことができる。
いくつかの実施形態では、変換行列を初期化することは、車両が高速道路を移動していることを示すトリガの検出に応じて、車両で収集された1つまたは複数の画像フレームを(例、ユーザインターフェースで)遠隔コンピューティングシステムに自動的に送信すること、車線マーキングポイントのセットをユーザに提案すること、並びに車線領域を示すポイントのセットをユーザから受け取りそしてこの受け取られたポイントのセットに基づいて変換行列を初期化すること、を含むことができる。
いくつかの実施形態では、変換行列の初期化は、1つ以上の画像フレームを記録しそしてそれを遠隔コンピューティングシステムへアップロードした後に、非同期で(例、非リアル−タイムで)実行させることが出来る。ここで、この1つ以上の画像フレームには、メタデータ(例、画像データ収集時に車両が高速道路を通過していたことを示すラベル、タグ、等)が関連付けられている。変換行列の初期化は、これに加えまたは代えて、コンピューティングシステム、自律システム、等によって自動的に実行させることも出来る。
特定の例では、画像フレームを遠隔コンピューティングデバイスに送信することは、車両が、高速道路運転に関する閾値速度(例、45mph、55mph、65mph、等)を超えて運転していることの検出に応答して、画像フレームのセット(例、ビデオクリップ)をアップロードすること、遠隔コンピューティングシステムと通信しているユーザインターフェースでユーザから車線領域インジケータを受け取ること、そしてこの受け取られた車線領域インジケータに基づいて変換行列を初期化することを含む。この特定の例では、これは、車載システムの設置および/または調整後(例、設置後)に1回実行される。車載信号システムの調整は、慣性信号の監視(例、方向センサが、設置方向からの逸脱を検出する)、画像信号の監視(例、車両起動時に収集された画像の比較、および画像内のシーン間の静止オブジェクトの相対方向)により、検出させる、または他の方法で適切に決定させることが出来る。
この方法は、前方向フレーム内の車線領域を定義するポイントを、トップダウンフレーム内の車線領域を定義するポイントに変換する変換行列の値を生成することを含むことができる(ブロック708)。変換行列の生成は、前方向フレームの車線領域を定義するポイントを、トップダウンフレームの車線領域を定義するポイントに変換する変換行列の値を生成するように機能することができる。変換行列は、自車の運動学的データから(例、ジャイロスコープのデータから)、車線領域のポイントから、既知の車線幅(例、画像に関連付けられた地理的位置、自車速度に関連付けられた道路タイプ、等)、または他の適切なデータから、計算させることが出来る。
計算された変換行列は、
のような行列
を含むことができる。ここで、
は、前方向フレームの車線領域の頂点を定義する行列であり、
は、トップダウンフレームの車線領域の頂点を定義する行列である。しかしながら、計算される変換行列は、
のような行列
および/または他の適切な行列とすることが出来る。
この方法は、初期化された変換行列の更新行列を計算することを含むことができる(ブロック710)。例えば、行列
は、第1の画像フレームに関連付けられた第1の車線領域に対して初期化され、そして更新行列の計算には、
のような第1の画像フレームに続く第2の画像フレームに関連付けられた第2の車線領域に対する行列
の計算が含まれる。しかしながら、これに加えまたは代えて、更新行列を計算することは、他の適切な方法で変換行列を更新することを含むことができる。
この方法は、変換行列に従って、前方向画像から決定された車線領域を、車線領域のトップダウン図に変換することを含むことができる(ブロック712)。この車線領域の変換は、変換行列の値を、前方向フレームの車線領域を定義するポイントに適用して、トップダウンフレームの車線領域を定義するポイントを計算するように機能することができる。この車線領域の変換は、行列乗算演算(例、左行列乗算において、前方向画像のポイントを定義する行列に変換行列を乗算する演算)によって実行させることが好ましいが、これに加えまたは代えて、適切な数学的変換によって実行させることも出来る。この車線領域の変換は、トップダウン表示から、車線領域内の車両を合成したビューを生成すること含むことが出来る。
(車線ドリフト指標に基づく後続アクションのパフォーマンス)
上述したように、車線ドリフト指標は、車両の車線位置に基づいて計算させることができる。これには、時間の関数として(例、時系列として)車線位置を測定することを含むことが出来る。所定のフレーム内の車線位置を計算する精度は、車線ドリフト指標の所望の精度閾値(例、複数の画像フレームにわたる車線位置の時間微分)に基づいて、いくつかの変形形態で緩和させることが出来る。
上述したように、車線ドリフト指標は、車両の車線位置に基づいて計算させることができる。これには、時間の関数として(例、時系列として)車線位置を測定することを含むことが出来る。所定のフレーム内の車線位置を計算する精度は、車線ドリフト指標の所望の精度閾値(例、複数の画像フレームにわたる車線位置の時間微分)に基づいて、いくつかの変形形態で緩和させることが出来る。
運転者には、車線ドリフト指標から導出された値をスコア付けする、またはそれに関連付けることができる。スコア/値は、ある期間中に運転者が車線領域内でシフトされている程度を示すことができる。これは、運転者が、車両を運転している間に自分の車線内でドリフトする程度に基づいて、運転者の運転スキルを定量化することができる。このスコア/値は、車線ドリフト指標をコンテキスト化し、そして車線ドリフト指標が決定されるコンテキストに基づいて、運転者にスコア付けをすることができる。このスコア/値は、運転者のスキル以外の運転者のパフォーマンスの他の側面(例、運転者の覚醒度、運転者の注意散漫、運転者のナビゲーション効率、運転者の安全性および/またはリスク回避、等)をスコア付けするためにも機能することができる。
車線ドリフト指標に基づくスコア付けは、車線ドリフト指標を、可能なスコアのスペクトル上の関連付けられているスコアに割り当てることを含むことが出来る。ここで、高いスコアは、低い車線ドリフト値に対応し、そして低いスコアは、高い車線ドリフトに対応する。代替変形形態では、この対応関係を逆にする、または適切にマッピングすることが出来る。スコア付けは、これに加えまたは代えて、車線ドリフト指標の「ビニング」に基づかせることが出来る。ここで、指標値の第1の範囲は、第1のスコアに対応し、指標値の第2の範囲は、第2のスコアに対応し、以下同様であり、これらは、スコアの離散セット(例、1−5のスケール、「優れた、良い、中庸、悪い、許容できないほど悪い」の値を含むセマンティックスケール、または他の適切なセマンティックスケール、等)に対応する。
これに加えまたは代えて、(例、本願に組み込まれている、前述の出願に記載されているように実質的に決定される)相関する車内イベントおよび車外イベントは、車線ドリフト指標を決定する際のコンテキストとして使用することが出来る。例えば、運転者のスコア/値の導出は、車載システムで収集されたセンサ信号(例、慣性センサ信号、室内画像、等)に基づいて、運転者が、注意散漫になっていると決定することと、決定された運転者の注意散漫と車線ドリフト指標の両方に基づいて運転者にスコアを付ける(例、運転者が、高度の車線ドリフトを示すことに加えて、運転者が、注意散漫になった場合、スコアは、所定の車線ドリフト指標に対し低くなる)こととを、含むことが出来る。
運転者のスコアは、経時的に(例、複数の運転セッションにわたって、一運転セッション内で、等)追跡させることが出来、そして運転者のスコア履歴を記録することができる。運転者のスコア履歴とそれに関する車線ドリフト指標は、将来の運転セッションで運転者スコアを決定するためのベースラインとして使用することが出来る。例えば、高いベースラインの車線ドリフトを示す運転者には、低いベースラインの車線ドリフトを示す運転者とは異なるスコアが付けられる。低いベースラインの車線ドリフトを示す運転者には、同じ車線ドリフト指標に対して低い(例、悪い)スコアを付ける(例、そしてベースライン車線ドリフトが高い運転者に対して相対差が大きくなる)ことが出来る。いくつかの実施形態では、運転者のスコアは、履歴データ(例、運転者の履歴スコア、運転スケジュールなどの他の履歴データ、交通違反記録、および他の適切なデータ、等)に基づかせることができる。
車両制御に関する出力は、車線ドリフト指標に基づいて生成させることができる。車両制御に関する出力の生成は、決定された車線ドリフト指標に基づいて、車両制御(例、直接的影響、間接的影響、等)に影響を与えることができる。車両制御に関する出力の生成は、車両制御信号として直接適用することが出来る、車線ドリフト指標に基づいている出力信号(例、ステアリングアクチュエータ、アクセル、スロットルアクチュエータ、サスペンションアクチュエータのような制御アクチュエータを駆動する信号)を生成するように機能することも出来る。車両制御に関する出力の生成は、制御に関するメッセージ(例、可聴アラート、視覚的警告、制御命令付きのオーディオビデオ信号、等)を、車両運転者に提供するように機能することも出来る。
車両制御に関する出力は、車線ドリフト指標に基づいて車両制御信号を生成し、そしてこの車両制御信号に基づいて車両を自動的に制御することを含む。例えば、車両制御に関する出力には、車線ドリフト指標を閾値未満に維持する(例、車線逸脱を防止する、旋回を減らす、等の)ために、車両の操舵可能な車輪のステアリング角度を制御することが含まれる。ステアリング角度の制御は、ステアリング入力が閾値入力を超えることを阻止すること(例、ホイールを「ジャークすること」)を含むことが出来、これは、実質的にリアル−タイムで、完全にリアル−タイムで、および/または他の適切な時間的特性またはレートで実行させることが出来る。
別の例では、車両制御に関する出力は、車線ドリフト指標が閾値を超えることに基づいて、(例、運転者が、運転中に自分の車線をドリフトしている程度に基づいて、運転者が、決定された速度制限を超えて運転することを防ぐために)車両の速度を制御する(例、速度を制限する)ことを含む。別の特定例では、車両制御に関する出力を生成することは、(例、人間の運転者によって提供される)ステアリング入力に支障をきたすことなく車線逸脱を防止するために、決定された車線領域と一致する仮想「バンパ」を強制することを含むことが出来る。しかしながら、車両制御に関する出力の生成は、これに加えまたは代えて、車線ドリフト指標に基づいて、適切な車両制御信号(例、ブレーキ信号、ステアリング信号、加速度信号、等)を生成し、そして他の適切な方法でこの車両制御信号に基づいて自動的に車両を制御することも含むことが出来る。
車両制御に関する出力は、車線ドリフト指標に基づいて、車両オペレーション特性を自動的に修正することを含むことができる。車両制御出力のこのように修正された車両オペレーション特性は、サスペンション剛性、ブレーキ応答性、ステアリング応答性、および他の適切な特性を含むことが出来る。例えば、車両制御に関する出力は、閾値を超える車線ドリフト指標に基づいて、(例、ステアリングホイールへの運転者入力による車線内の変動を防ぐため)車両のステアリング応答性を低下させることを含むことが出来る。別の例では、車両制御に関する出力は、車線ドリフト指標が閾値を超えることに基づいて、(例、制御の推定、予測、および/または運転者の車両制御に対する認識不足による急速な減速と停止を可能にするため)ブレーキの応答性を高めることを含むことが出来る。さらなる例では、車両制御に関する出力は、車線ドリフト指標に基づく高度な運転者支援システムおよび/または機能の実装(例、自動ブレーキ、衝突回避、衝突対応、等)を含むことが出来る。しかしながら、車両制御に関する出力は、他の適切な方法で、車線ドリフト指標に基づいて他の適切な車両オペレーション特性を適切に変更することを含むことが出来る。
車両制御に関する出力は、車両制御に関するメッセージを生成し、そしてそのメッセージを車両運転者に提供することを含むことができる。メッセージには、警告、アラート、指示(例、ナビゲーション指示、制御指示、等)、通知、および/または車両制御に関する他の適切なタイプの情報を含めることが出来る。メッセージの提供は、車載車両システム(例、ビープ音のような音声警告を提供するスピーカ、点滅ライトのような視覚アラートを提供するライト、方向矢印のような視覚指示を提供するディスプレイ、等)の出力、(例、運転者に関連付けられている、車載システムと通信している、等の)車両内のモバイルデバイスの出力、および/または他の適切な出力またはユーザインターフェースの出力で実行させることが出来る。一例として、車両制御に関する出力は、車線ドリフト指標が対応する閾値のシリーズを超えることに基づいて、音量が大きくなるビープ音である聴覚警告の段階的なシリーズを提供する(例、運転者が、運転者の車線内でドリフトし過ぎであることを、運転者に警告する)ことを含むことが出来る。別の例では、車両制御に関する出力は、瞬間的な車線ドリフト指標に応じて様々な色の視覚信号(例、光)を発する(例、緑色の光は、閾値未満の車線ドリフト指標に対応し、黄色の光は、閾値を超える車線ドリフト指標に対応し、そして赤色の光は、許容できないほど高い車線ドリフト指標に対応する、等)ことを含む。しかしながら、車両制御に関する出力は、これに加えまたは代えて、車線ドリフト指標に基づいて適切なモダリティで適切なメッセージを生成し、そして他の適切な方法で運転者にメッセージを提供することを含むことが出来る。
図8は、車両の車線位置に基づいて、車両の位置決めを制御する出力アクションを実行する例示的な方法800のブロック図を示す。この方法は、車両に搭載された車載コンピューティングデバイスおよび/または遠隔コンピューティングデバイスの何れかによって実装させることができる。この車載コンピューティングデバイスは、無線通信インターフェース(例、Wi−Fi、セルラネットワーク)を介して遠隔コンピューティングデバイスと無線で通信するように構成させることができる。
第1のフレームは、トリガイベントに応答して、取得させることができる。このトリガイベントは、車両が、道路を示す地理的位置内にあることを決定すること、および車両の加速度が、閾値を超えることを決定すること、を含むことができる。
この方法は、車両に搭載された撮像デバイスによって捕捉された、車両を取り巻く環境の第1の画像の第1のフレームを取得することを含むことができる(ブロック802)。第1の画像は、図2Aに示される画像212のように、車両を取り巻く環境の前方向表示で示すことができる。
期間(例、1分、10分)中に環境の複数の画像を提供する画像のストリームを、取得することができる。
この方法は、第1のフレームを検査して、道路の車線マーキングを示すピクセルバンドを識別することを含むことができる(ブロック804)。このピクセルバンドは、例えば、図2Aで識別されるバンド216a−bを含むことができる。いくつかの実施形態では、この方法は、期間中に識別されたピクセルバンドのシリーズを集合することを含むことができる。ここで、車線領域はピクセルバンドのシリーズに基づいて抽出される。
この方法は、ピクセルバンドの複数のセットにわたる複数のトレンドラインを決定することを含むことができる。ここで、各トレンドラインは車線マーキングを含み、そして車線ドリフト指標は、車両が、期間中に決定された車線マーキングに基づいて、期間中に車線領域の中心から逸脱する頻度を示す。
いくつかの実施形態では、ピクセルバンドを識別することは、閾値強度を超える、第1の画像内の他のピクセルに対してコントラスト強度を有する第1の画像のピクセルを検出することを含む。ここで、このピクセルバンドの各ピクセルは、閾値強度を超えるコントラスト強度を有するピクセルを含む。
いくつかの実施形態では、この方法は、車線マーキングの既定の特性のシリーズに基づいて、第1のフレームから車線マーキングの水平位置を抽出することを含むことができる。この車線マーキングの既定の特性は、これらの車線マーキングが実質的に直線であることの表示、道路が実質的に平坦であることの表示、および車線マーキングが閾値範囲内の幅を含むことの表示、の何れかを含む。
この方法は、識別されたピクセルバンドに基づいて、道路の識別された各車線マーキングによって境界付けられた車線領域を抽出することを含むことができる(ブロック806)。例示的な車線領域は、図2Aに関して説明したように、車線マーカ208a−b間の領域を含むことができる。
いくつかの実施形態では、この方法は、車線マーキングの既定の特性のシリーズに基づいて、第1の画像から車線マーキングの水平位置を抽出することを含むことができる。
いくつかの実施形態では、この方法は、車線領域を識別するように構成された訓練済み分類モデルへの入力としてピクセルバンドを提供し、そしてこの訓練済み分類モデルから車線領域に関する情報を受け取ることを含むことができる。ここで、当該車線領域の抽出は、この訓練された分類モデルから受け取られた車線領域に関する情報を検査することに基づく。
この方法は、第1の画像で識別された、抽出された車線領域を、車線領域内の車両の第2の表示を提供する第2の画像に、変換するように構成されている変換行列を生成することを含むことができる(ブロック808)。この車線領域内の車両のトップダウン図を描写する例示的な第2の画像は、図5に示されるようなブロック図500を含む。
いくつかの実施形態では、この方法は、行列乗算演算を実行して、画像の第1フレームを定義する行列に、変換行列を乗算することを含むことができる。
この方法は、変換行列を使用して、識別されて、抽出された車線領域を、第1の画像から第2の画像に変換することを含むことができる(ブロック810)。いくつかの実施形態では、この方法は、変換行列の生成に組み込むことができる、車両を取り巻く環境の既定の特徴のセットを利用することを含むことができる。
この方法は、第2の画像における車線領域に関する車両の位置に基づいて、車線領域の中心に対する車両のオフセットを示す車線ドリフト指標を決定することを含むことができる(ブロック812)。
この車線ドリフト指標は、期間中に識別されて、集合されたピクセルバンドのシリーズに基づいて、期間中に車両が車線領域の中心から離れる頻度を示すことができる。
車線ドリフト指標を決定することは、2回目に車両を取り巻く環境を描写する第1の画像の第2のフレームを取得し、この第2のフレーム内のピクセルバンドを識別するために第2のフレームを検査し、この第2フレーム内で識別されたピクセルバンドに基づいて更新された車線領域を抽出し、車線領域とこの更新された車線領域との間の車線マーキングに含まれる水平重心の相対位置の変化を決定する。ここで、車線ドリフト指標は、決定された変化に基づいて決定させることができる。
いくつかの実施形態では、車線ドリフト指標は、車線ドリフトモデルに基づいて決定される。ここで、この車線ドリフトモデルへの入力は、コンテキストパラメータおよび車線領域を含むことができ、そしてこの車線ドリフトモデルは、入力に基づいて車線ドリフト指標を出力するように構成させることができる。
この方法は、決定された車線ドリフト指標に基づいて、車両制御に関する出力を生成することを含むことができる(ブロック814)。いくつかの実施形態では、この方法は、車両制御に関連する、生成された出力に従って、車線領域内の車両の車線位置を修正するように構成された車両アクションを実行することを含むことができる。
この方法は、車線ドリフト指標に基づいて、運転者スコアを生成することを含むことができ、この運転者スコアは、車両の運転者が、期間中に車線領域内で車両をシフトさせた程度を示すことができる。
(処理システムの例)
図9は、本明細書で説明する少なくともいくつかの演算を実施することができる処理システム900の一例を示すブロック図である。図9に示されるように、処理システム900は、1つ以上の中央処理装置(「プロセッサ」)902、メインメモリ906、不揮発性メモリ910、ネットワークアダプタ912(例、ネットワークインターフェース)、ビデオディスプレイ918、入力、入/出力デバイス920、制御デバイス922(例、キーボードおよびポインティングデバイス)、記憶媒体926を含む駆動ユニット924、およびバス916に通信可能に接続される信号生成デバイス930、を含むことができる。バス916は、1つ以上の個別の物理バス、ポイントツーポイント接続、または適切なブリッジ、アダプタ、またはコントローラによって接続されたその両方を表す抽象として示される。したがって、バス916は、例えば、システムバス、周辺機器相互接続(PCI)バスまたはPCIエクスプレスバス、ハイパートランスポート(HyperTransport)または産業標準アーキテクチャ(ISA: industry standard architecture)バス、小型コンピュータシステムインターフェース(SCSI: small computer system interface)バス、ユニバーサルシリアルバス(USB: universal serial bus)、IIC(I2C)バス、または米国電気電子学会(IEEE: Institute of Electrical and Electronics Engineers)標準の1394バス(「Firewire」とも呼ばれる)を含むことが出来る。
図9は、本明細書で説明する少なくともいくつかの演算を実施することができる処理システム900の一例を示すブロック図である。図9に示されるように、処理システム900は、1つ以上の中央処理装置(「プロセッサ」)902、メインメモリ906、不揮発性メモリ910、ネットワークアダプタ912(例、ネットワークインターフェース)、ビデオディスプレイ918、入力、入/出力デバイス920、制御デバイス922(例、キーボードおよびポインティングデバイス)、記憶媒体926を含む駆動ユニット924、およびバス916に通信可能に接続される信号生成デバイス930、を含むことができる。バス916は、1つ以上の個別の物理バス、ポイントツーポイント接続、または適切なブリッジ、アダプタ、またはコントローラによって接続されたその両方を表す抽象として示される。したがって、バス916は、例えば、システムバス、周辺機器相互接続(PCI)バスまたはPCIエクスプレスバス、ハイパートランスポート(HyperTransport)または産業標準アーキテクチャ(ISA: industry standard architecture)バス、小型コンピュータシステムインターフェース(SCSI: small computer system interface)バス、ユニバーサルシリアルバス(USB: universal serial bus)、IIC(I2C)バス、または米国電気電子学会(IEEE: Institute of Electrical and Electronics Engineers)標準の1394バス(「Firewire」とも呼ばれる)を含むことが出来る。
様々な実施形態において、処理システム900は、(例、有線または無線で)ユーザデバイスに接続させることもできるが、この処理システム900は、ユーザデバイスの一部としても動作することができる。ネットワーク化された展開では、処理システム900は、クライアント/サーバネットワーク環境におけるサーバまたはクライアントマシンとして、またはピアツーピア(または分散)ネットワーク環境のピアマシンとして動作することができる。
処理システム900は、サーバコンピュータ、クライアントコンピュータ、パーソナルコンピュータ、タブレット、ラップトップコンピュータ、携帯情報端末(PDA)、携帯電話、プロセッサ、ウェブアプライアンス、ネットワークルータ、スイッチまたはブリッジ、コンソール、ハンドヘルドコンソール、ゲームデバイス、音楽プレーヤー、ネットワーク接続(「スマート」)テレビ、テレビ接続デバイス、またはマシン処理システム900によって実行されるアクションを指定する(シーケンシャルまたは他の)命令セットを実行することができる任意のポータブルデバイスまたはマシンとすることができる。
メインメモリ906、不揮発性メモリ910、および記憶媒体926(「機械可読媒体」とも呼ばれる)は、単一の媒体として示されているが、「機械可読媒体」および「記憶媒体」という用語は、1つ以上の命令のセット928を格納する単一または複数の媒体(例、集中型または分散型データベース、および/または関連するキャッシュおよびサーバ)を含むと解釈されるべきである。また、「機械可読媒体」および「記憶媒体」という用語は、コンピューティングシステムによる実行のための命令セットを保存、エンコード、または保持することができ、そして本明細書で開示されている実施形態の方法の1つまたは複数をコンピューティングシステムに実行する、任意の媒体を含むものと解すべきである。
一般に、本開示の実施形態を実装するために実行されるルーチンは、オペレーティングシステムまたは特定アプリケーション、コンポーネント、プログラム、オブジェクト、モジュール、または「コンピュータプログラム」と呼ばれる命令のシーケンスの部分として実装させることができる。コンピュータプログラムは、通常、さまざまな時点で、コンピュータ内のさまざまなメモリおよび記憶装置内で設定される1つまたは複数の命令(例、命令904、908、928)を備え、そして1つまたは複数の処理ユニットまたはプロセッサ902によって読み取られて実行されると、本開示の様々な態様に関係する要素を実行させるために、処理システム900に演算を実行させる。
さらに、実施形態は、完全に機能するコンピュータおよびコンピュータシステムの文脈で説明されて来たが、当業者は、様々な実施形態が、プログラム製品として様々な形態で配布できること、およびこの開示が、実際に配信を行うために使用される特定のタイプのマシンまたはコンピュータ読み取り可能なメディアに関係なく、等しく適用されることを理解するであろう。例えば、本明細書で説明される技術は、仮想マシンまたはクラウドコンピューティングサービスを使用して実装させることが出来るであろう。
機械可読記憶媒体、機械可読媒体、またはコンピュータ可読(記憶)媒体のさらなる例には、これらに限定されることはないが、揮発性および不揮発性メモリデバイス910、フロッピのような記録可能なタイプの媒体、リムーバブルディスク、ハードディスクドライブ、光ディスク(例、コンパクトディスク読み取り専用メモリ(CD ROM)、デジタル多用途ディスク(DVD))、およびデジタルおよびアナログ通信リンクのような伝送タイプのメディアが、含まれる。
ネットワークアダプタ912により、処理システム900は、処理システム900および外部エンティティによってサポートされる任意の既知および/または便利な通信プロトコルを介して、ネットワーク914内のデータを、処理システム900の外部にあるエンティティに仲介することができる。ネットワークアダプタ912は、ネットワークアダプタカード、無線ネットワークインターフェースカード、ルータ、アクセスポイント、無線ルータ、スイッチ、多層スイッチ、プロトコルコンバータ、ゲートウェイ、ブリッジ、ブリッジ、ルータ、ハブ、デジタルメディアレシーバ、リピータのうちの1つ以上を含むことができる。
ネットワークアダプタ912は、いくつかの実施形態では、コンピュータネットワーク内のデータへのアクセス/プロキシの許可を運営および/または管理し、異なるマシンおよび/またはアプリケーション間の様々な信頼レベルを追跡することができるファイアウォールを含むことが出来る。ファイアウォールは、マシンとアプリケーション、マシンとマシン、および/またはアプリケーションとアプリケーションの特定のセットの間に既定のアクセス権のセットを実施する(例えば、これらのさまざまなエンティティ間で共有されるトラフィックとリソースのフローを調整する)ことができるハードウェアおよび/またはソフトウェアコンポーネントの任意の組み合わせを持つ任意の数のモジュールとすることが出来る。ファイアウォールは、加えて、例えば、個人、マシン、および/または演算によるオブジェクトのアクセス権と演算権を含む許可および許可が与えられる状況を詳述するアクセス制御リストへのアクセス制御を管理および/または有することができる。
上述したように、本明細書で紹介される技術は、例えば、ソフトウェアおよび/またはファームウェアでプログラムされたプログラム可能な回路(例、1つ以上のマイクロプロセッサ)によって完全に専用ハードワイヤード(すなわち、プログラム不能な)回路、またはこれらの組み合わせなどの形式で実装される。専用回路は、例えば、1つ以上の推定用途向け集積回路(ASIC)、プログラマブルロジックデバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)などの形式にすることが出来る。
上記から、本発明の推定の実施形態が例示の目的で本明細書に記載されて来たが、本発明の範囲から逸脱することなく様々な修正を行うことができることは理解されるであろう。したがって、本発明は、添付の特許請求の範囲による場合を除いて限定されることはない。
( 関連出願への相互参照)
本出願は、発明の名称が「車両の位置推定のためのシステムと方法」でありかつ2018年11月19日に出願された米国仮特許出願シリアル番号第62 /769、501号(これは、本参照によりその全体が本願に組み込まれている)に関する優先権を主張する。
本出願は、発明の名称が「車両の位置推定のためのシステムと方法」でありかつ2018年11月19日に出願された米国仮特許出願シリアル番号第62 /769、501号(これは、本参照によりその全体が本願に組み込まれている)に関する優先権を主張する。
Claims (38)
- 車両の決定された車線シフトに応じて出力を生成する方法であって、
前記車両に搭載された撮像デバイスによって捕捉された、車両を取り巻く環境の第1の画像の第1フレームを取得するステップと、
前記画像からピクセルの複数の水平バンドを抽出するステップと、
前記車両が走行している車線を表すピクセルの各水平バンド内の少なくとも1つのマーキングを識別するステップと、
ピクセルの各水平バンドで識別される前記少なくとも1つのマーキングに基づいて車線領域を定義するステップと、
前記第1の画像で識別された前記車線領域を、前記車線領域内の前記車両の第2の表示を提供する第2の画像に変換するように構成された変換行列を生成するステップと、
前記変換行列を使用して、前記第1の画像において識別された前記車線領域を、前記第2の画像に変換するステップと、
前記第2の画像内の前記車線領域に関する前記車両の位置に基づいて、前記車線領域の中心に対する前記車両のオフセットを示す車線ドリフト指標を決定するステップと、
前記決定された車線ドリフト指標に基づいて、車両制御に関する出力を生成するステップとを、備える方法。 - 前記第1の画像が、前記車両を取り巻く前記環境の前方表示を示し、前記第2の表示が、前記車両を取り巻く環境のトップダウン図を示す、請求項1に記載の方法。
- 期間中に識別されたピクセルバンドのシリーズを集合する方法であって、前記車線領域が、前記ピクセルバンドのシリーズに基づいて抽出される、請求項1に記載の方法。
- 前記車線ドリフト指標が、前記期間中に識別された、前記集合されたピクセルバンドのシリーズに基づいて、前記車両が、前記期間中に前記車線領域の中心から離れる頻度を示す、請求項3に記載の方法。
- 前記車線領域を抽出する当該ステップが、さらに、
前記車線マーキングの既定のプロパティのシリーズに基づいて、前記第1の画像から前記車線マーキングの水平位置を抽出するステップを備える、
請求項1に記載の方法。 - 前記ピクセルバンドを識別するために、前記車両を取り巻く前記環境の前記第1の画像を検査する当該ステップが、さらに、
閾値強度を超える前記第1の画像内の他のピクセルに対するコントラスト強度を含む前記第1の画像内のピクセルを検出するステップであって、前記ピクセルバンド内の各ピクセルが、前記閾値強度を超えるコントラスト強度を有するピクセルを含む、ステップを備える、
請求項1に記載の方法。 - 前記車線領域を識別するように構成されている、訓練されている分類モデルへの入力として前記ピクセルバンドを提供するステップと、
前記訓練された分類モデルから前記車線領域に関する情報を受け取るステップであって、前記車線領域を抽出する当該ステップが、前記訓練されている分類モデルから受け取られた前記車線領域に関する情報を検査することに基づいている、ステップと
を、さらに、備える、請求項1に記載の方法。 - 前記車線ドリフト指標を決定する当該ステップが、
2回目に前記車両を取り巻く前記環境を描写する前記第1の画像の第2のフレームを取得するステップと、
前記第2のフレームのピクセルバンドを識別するために、前記第2のフレームを検査するステップと、
前記第2のフレームで識別された前記ピクセルバンドに基づいて、更新された車線領域を抽出するステップと、
前記車線領域と前記更新された車線領域との間の車線マーキングに含まれる水平重心の相対位置の変化を決定するステップであって、前記車線ドリフト指標が、前記決定された変化に基づいて決定される、ステップと
を、さらに、備える、請求項1に記載の方法。 - 前記車線ドリフト指標が、車線ドリフトモデルに基づいて決定され、前記車線ドリフトモデルへの入力が、コンテキストパラメータおよび前記車線領域を含み、前記車線ドリフトモデルが、前記入力に基づいて前記車線ドリフト指標を出力するように構成されている、請求項1に記載の方法。
- 前記車両が、無線通信インターフェースを介して遠隔コンピューティングデバイスと無線通信するように構成されている車載コンピューティングデバイスを含む、請求項1に記載の方法。
- 前記変換行列を生成する当該ステップが、前記変換行列の生成に組み込むことが出来る、前記車両を取り巻く前記環境の既定の特徴のセットを利用するステップを含む、請求項1に記載の方法。
- 車両制御に関連して生成された前記出力に従って、前記車線領域内の前記車両の車線位置を修正するように構成されている車両アクションを実行するステップを、
さらに、備える、請求項1に記載の方法。 - 車両の車線位置に基づいて車両の位置決めを制御する出力アクションを実行する、車両に搭載されたコンピューティングデバイスによって実行されるコンピュータ実装方法であって、
前記車両に接続されているカメラによって生成された、車両の前方に位置する環境の画像を取得するステップと、
前記画像からピクセルの複数の水平バンドを抽出するステップと、
前記車両が走行している車線を表すピクセルの各水平バンド内の少なくとも1つのマーキングを識別するステップと、
ピクセルの各水平バンド内で識別される前記少なくとも1つのマーキングに基づいて車線領域を定義するステップと、
前記車線領域の中心に対する前記車両の位置のオフセットを示す車線ドリフト指標を導出するステップと、
前記車線ドリフト指標に示された前記オフセットを修正するために出力アクションを実行するステップと
を備える方法。 - 前記車線領域内の前記車両のトップダウン表示を提供する、前記画像で識別された車線領域を後続の画像に変換するように構成されている変換行列を生成するステップと、
前記変換行列を使用して、前記画像で識別された、前記抽出された車線領域を前記後続の画像に変換するステップであって、前記車線ドリフト指標が後続の画像に基づいて導出されるステップと
を、さらに、備える、請求項13に記載のコンピュータ実装方法。 - 期間中に識別されたピクセルバンドの複数のセットを集合するステップと、
ピクセルバンドの前記複数のセットに渡って複数のトレンドラインを決定するステップであって、各トレンドラインが、車線マーキングを備え、前記車両が、前記期間中に前記車線領域の中心から逸脱する頻度を、前記車線ドリフト指標が、前記期間中に前記決定された車線マーキングに基づいて、示す、ステップと
を、さらに、備える、請求項13に記載のコンピュータ実装方法。 - 前記画像の平均強度に対して、閾値コントラスト値を超える強度を含む画像内の全てのピクセルを検出するステップであって、ピクセルバンドの前記セット内の各ピクセルが、前記閾値コントラスト値を超える強度を含む、ステップを
さらに、備える、請求項13に記載のコンピュータ実装方法。 - プロセッサが、車両に接続されたカメラによって生成された車両の前に位置する環境の画像を取得するステップと、
前記プロセッサが、前記画像からピクセルの複数の水平バンドを抽出するステップと、
前記プロセッサが、前記車両が走行している車線を表すピクセルの各水平バンド内の少なくとも1つのマーキングを識別するステップと、
前記プロセッサが、ピクセルの各水平バンドで識別された前記少なくとも1つのマーキングに基づいて車線領域を定義するステップと、
前記プロセッサが、前記車線領域に基づいてドリフト指標を生成するステップとを
備える方法。 - ピクセルの各水平バンドが、前記画像の幅全体に及ぶ、請求項17に記載の方法。
- ピクセルの各水平バンドが、重なり合わない高さと同等となるように、前記画像の高さよりも低い高さに広がる、請求項17に記載の方法。
- 前記プロセッサが、前記ドリフト指標に基づいて前記車両を制御するための出力を生成するステップと、
前記プロセッサが、前記出力を、運転者からの入力なしで前記車両に対する制御信号として適用するステップと
を、さらに、備える、請求項17に記載の方法。 - 前記プロセッサが、前記車両の運転者に関連付けられているプロファイルに前記ドリフト指標を保存するステップ
を、さらに、備える、請求項17に記載の方法。 - 前記プロセッサおよび前記カメラが、前記車両に接続されている車載車両システム内に存する、請求項17に記載の方法。
- プロセッサが、車両に接続されている前方向カメラによって生成された画像のシリーズを取得するステップと、
前記プロセッサが、前記画像のシリーズの各画像からピクセルのバンドを抽出するステップと、
前記プロセッサが、前記車両が走行している車線を表すピクセルの各バンド内のマーキングを識別するステップと、
前記プロセッサが、各画像で識別された前記マーキングに基づいて各画像の個別のドリフト指標を生成することにより、画像の前記シリーズに対するドリフト指標のシリーズを生成するステップを、
備える方法。 - 前記プロセッサが、前記ドリフト指標のシリーズの軌跡、値、またはパターンに基づいて、前記車両の運転者にスコアを付けるステップ
を、さらに、備える、請求項23に記載の方法。 - ピクセルの各バンドが、各画像の幅全体にわたるピクセルの水平バンドである、請求項23に記載の方法。
- ピクセルの前記バンドが、各画像から抽出されたピクセルの複数の水平バンドの1つであり、そしてピクセルの前記複数の水平バンドが、各画像の上半分に位置するピクセルの第1の水平バンドおよび各画像の下半分にあるピクセルの第2の水平バンドを含む、請求項25に記載の方法。
- 当該識別するステップが、
ピクセルの前記水平バンドに渡って、各垂直列のピクセルの輝度値を平均化するステップと、
前記平均化された強度値の暗から明への遷移または明から暗への遷移に基づいて、各画像の各象限にマーキングの水平重心を確立するステップと
を、備える、請求項26に記載の方法。 - 当該識別するステップが、
前記車両が位置する地理的位置に対応する既知の規制に基づく、前記マーキングに関連付けられている既定の幅に基づいて、前記マーキングの水平重心を確立するステップを、
備える、請求項23に記載の方法。 - 前記マーキングの水平重心が、
所定の画像で観察された特徴と前記画像のシリーズの先行する画像の前記特徴との比較、
所定の画像で観察された複数の特徴の比較、または
これらの任意の組み合わせ
に基づいて動的に決定される、請求項23に記載の方法。 - 当該識別するステップが、
ピクセルの前記水平バンドに渡って角度が付けられた列のピクセルの強度値を平均化するステップと、
前記平均強度値の暗から明への遷移または明から暗への遷移に基づいて、各画像の各象限に前記マーキングの水平重心を確立するステップを
備える、請求項26に記載の方法。 - 前記角度が付けられた列が、前記車両に対して前方方向に沿って直線であると想定される所定のマーキングの投影角度に基づいて決定される角度に向けられている、請求項30に記載の方法。
- 識別する当該ステップが、
前記画像のシリーズから抽出されたピクセルの前記バンドを、入力として分類モデルに提供するステップを備え、
前記ドリフト指標のシリーズが、ピクセルの前記バンドに基づいて前記分類モデルによって生成された出力のシリーズに基づいて、生成される、
請求項23に記載の方法。 - 前記画像のシリーズが、前記前方向カメラによって前記プロセッサにストリーミングされるときに、当該提供するステップが、リアル−タイムで実行される、請求項32に記載の方法。
- ドリフト指標の前記シリーズが、平均偏差、中央偏差、時間間隔にわたる偏差パターン、または偏差の大きさの個別の計算を表す、請求項23に記載の方法。
- プロセッサによって実行されると、前記プロセッサに、以下のステップを備える演算:
車両に接続されたカメラによって生成された前方向画像を取得するステップ;
前記前方向画像からピクセルのバンドを抽出するステップ;
前記車両が走行している車線を表すピクセルの前記バンド内の少なくとも1つのマーキングを識別するステップ;
ピクセルの前記バンド内で識別された前記少なくとも1つのマーキングに基づいて車線領域を定義するステップ;
前記前方向画像の車線領域の頂点を定義する参照行列を作成するステップ;および
変換行列に従って、前記前方向画像を前記車線領域のトップダウン図に変換するステップ
を実行させる命令が、格納されている非一時的コンピュータ可読媒体。 - 前記演算が、さらに、個人から車線領域を示す入力を受け取るステップを備え、前記変換が、前記入力に応答し、かつ前記入力に基づいて実行される、請求項35に記載の非一時的コンピュータ可読媒体。
- 当該変換するステップが、左側指標乗算で参照行列に変換行列を乗算するステップを備える、請求項35に記載の非一時的コンピュータ可読媒体。
- 前記変換行列が、前記車線領域の頂点、車線の既知の幅、車両の運動学的データ、またはこれらの任意の組み合わせに基づいて計算される、請求項35に記載の非一時的コンピュータ可読媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862769501P | 2018-11-19 | 2018-11-19 | |
US62/769,501 | 2018-11-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2020115322A true JP2020115322A (ja) | 2020-07-30 |
Family
ID=68732657
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019207789A Pending JP2020115322A (ja) | 2018-11-19 | 2019-11-18 | 車両位置推定のためのシステムおよび方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11403857B2 (ja) |
EP (1) | EP3654241A1 (ja) |
JP (1) | JP2020115322A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI759931B (zh) * | 2020-10-30 | 2022-04-01 | 朝陽科技大學 | 高速攝影測速系統 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3611077B1 (en) * | 2017-04-14 | 2022-02-09 | Nissan Motor Co., Ltd. | Vehicle control method and vehicle control device |
US11273836B2 (en) * | 2017-12-18 | 2022-03-15 | Plusai, Inc. | Method and system for human-like driving lane planning in autonomous driving vehicles |
US20190185012A1 (en) | 2017-12-18 | 2019-06-20 | PlusAI Corp | Method and system for personalized motion planning in autonomous driving vehicles |
US11130497B2 (en) | 2017-12-18 | 2021-09-28 | Plusai Limited | Method and system for ensemble vehicle control prediction in autonomous driving vehicles |
US20230316566A1 (en) * | 2020-09-21 | 2023-10-05 | Siemens Ltd., China | Target Positioning Method and Device, and Computer-Readable Medium |
US20220135030A1 (en) * | 2020-10-29 | 2022-05-05 | Magna Electronics Inc. | Simulator for evaluating vehicular lane centering system |
US20220147746A1 (en) * | 2020-11-10 | 2022-05-12 | Nec Laboratories America, Inc. | End-to-end parametric road layout prediction with cheap supervision |
CN112329722B (zh) * | 2020-11-26 | 2021-09-28 | 上海西井信息科技有限公司 | 行车方向检测方法、系统、设备及存储介质 |
CN112528829B (zh) * | 2020-12-07 | 2023-10-24 | 中国科学院深圳先进技术研究院 | 一种基于视觉的非结构化道路的居中行驶方法 |
US11899468B2 (en) | 2020-12-22 | 2024-02-13 | Waymo Llc | Sensor for flashing light detection |
US11945435B2 (en) | 2021-06-15 | 2024-04-02 | Nauto, Inc. | Devices and methods for predicting collisions and/or intersection violations |
EP4355626A1 (en) * | 2021-06-15 | 2024-04-24 | Nauto, Inc. | Devices and methods for predicting collisions, predicting intersection violations, and/or determining region of interest for object detection in camera images |
US11875548B2 (en) * | 2021-07-22 | 2024-01-16 | GM Global Technology Operations LLC | System and method for region of interest window generation for attention based perception |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6091833A (en) * | 1996-08-28 | 2000-07-18 | Matsushita Electric Industrial Co., Ltd. | Local positioning apparatus, and a method therefor |
US10783382B2 (en) * | 2016-04-06 | 2020-09-22 | Semiconductor Components Industries, Llc | Systems and methods for buffer-free lane detection |
-
2019
- 2019-11-13 US US16/683,106 patent/US11403857B2/en active Active
- 2019-11-18 JP JP2019207789A patent/JP2020115322A/ja active Pending
- 2019-11-19 EP EP19209974.5A patent/EP3654241A1/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI759931B (zh) * | 2020-10-30 | 2022-04-01 | 朝陽科技大學 | 高速攝影測速系統 |
Also Published As
Publication number | Publication date |
---|---|
US11403857B2 (en) | 2022-08-02 |
US20200160069A1 (en) | 2020-05-21 |
EP3654241A1 (en) | 2020-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2020115322A (ja) | 車両位置推定のためのシステムおよび方法 | |
JP6741107B2 (ja) | 交通状況のリアルタイム検出 | |
US11681299B2 (en) | Vehicle sensor system and method of use | |
JP6894471B2 (ja) | 自動運転車(adv)のサブシステムによるパトロールカーのパトロール | |
US10916135B2 (en) | Similarity learning and association between observations of multiple connected vehicles | |
US10586118B2 (en) | Localizing traffic situation using multi-vehicle collaboration | |
US10457294B1 (en) | Neural network based safety monitoring system for autonomous vehicles | |
US10963706B2 (en) | Distributable representation learning for associating observations from multiple vehicles | |
KR101622028B1 (ko) | 차량 통신을 이용한 차량 제어 장치 및 제어 방법 | |
EP3759700A1 (en) | Method for determining driving policy | |
JP7143857B2 (ja) | 情報処理装置、情報処理方法、プログラム、及び、移動体 | |
US20210389133A1 (en) | Systems and methods for deriving path-prior data using collected trajectories | |
JP7027737B2 (ja) | 画像処理装置、および画像処理方法、並びにプログラム | |
CN111094095A (zh) | 自动地接收行驶信号 | |
Ortiz et al. | Applications and services using vehicular exteroceptive sensors: A survey | |
Lim et al. | Real-time forward collision warning system using nested Kalman filter for monocular camera | |
WO2019193928A1 (ja) | 車両システム、空間領域推測方法及び空間領域推測装置 | |
Ortiz et al. | Vehicle telematics via exteroceptive sensors: A survey | |
CN114694111A (zh) | 车辆定位 | |
JP7429246B2 (ja) | 対象を識別する方法とシステム | |
WO2020090320A1 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
US20220377283A1 (en) | Image data collecting apparatus, method, and program | |
US20240157959A1 (en) | Vehicle electronic device and method for providing notification related to parking environment based on image reading | |
KR20240019051A (ko) | 주행 환경에 관한 기능을 개선한 차량용 전자 장치및 방법 | |
KR20240019047A (ko) | Ai 기반하여 주차 환경에 관한 기능을 개선한 차량용전자 장치 및 방법 |