(57)【要約】      （修正有）【課題】車線領域内の車両の位置を効率的に推定する。【解決手段】車両に搭載された撮像デバイスは、車両を取り巻く環境を描写する画像ストリームを捕捉する。画像は、検査させて、画像に描かれた道路の車線マーキングを示すピクセルバンドを識別させる。識別されたピクセルバンドに基づいて、道路の車線を示す車線領域を抽出する。車線領域の中心に対する車両のオフセットを示す車線ドリフト指標を生成させる。出力アクションは、車線ドリフト指標で示されるオフセットに基づいて開始する。車線領域は、車線ドリフト指標の効率的な導出を支援する変換行列を使用して、第１フレームから第２フレームに変換させて、車線領域内の車両のトップダウン表示を提供する。【選択図】図４
2020115322.tif 000002
【特許請求の範囲】
【請求項１】
車両の決定された車線シフトに応じて出力を生成する方法であって、
前記車両に搭載された撮像デバイスによって捕捉された、車両を取り巻く環境の第１の画像の第１フレームを取得するステップと、
前記画像からピクセルの複数の水平バンドを抽出するステップと、
前記車両が走行している車線を表すピクセルの各水平バンド内の少なくとも１つのマーキングを識別するステップと、
ピクセルの各水平バンドで識別される前記少なくとも１つのマーキングに基づいて車線領域を定義するステップと、
前記第１の画像で識別された前記車線領域を、前記車線領域内の前記車両の第２の表示を提供する第２の画像に変換するように構成された変換行列を生成するステップと、
前記変換行列を使用して、前記第１の画像において識別された前記車線領域を、前記第２の画像に変換するステップと、
前記第２の画像内の前記車線領域に関する前記車両の位置に基づいて、前記車線領域の中心に対する前記車両のオフセットを示す車線ドリフト指標を決定するステップと、
前記決定された車線ドリフト指標に基づいて、車両制御に関する出力を生成するステップとを、備える方法。
【請求項２】
前記第１の画像が、前記車両を取り巻く前記環境の前方表示を示し、前記第２の表示が、前記車両を取り巻く環境のトップダウン図を示す、請求項１に記載の方法。
【請求項３】
期間中に識別されたピクセルバンドのシリーズを集合する方法であって、前記車線領域が、前記ピクセルバンドのシリーズに基づいて抽出される、請求項１に記載の方法。
【請求項４】
前記車線ドリフト指標が、前記期間中に識別された、前記集合されたピクセルバンドのシリーズに基づいて、前記車両が、前記期間中に前記車線領域の中心から離れる頻度を示す、請求項３に記載の方法。
【請求項５】
前記車線領域を抽出する当該ステップが、さらに、
前記車線マーキングの既定のプロパティのシリーズに基づいて、前記第１の画像から前記車線マーキングの水平位置を抽出するステップを備える、
請求項１に記載の方法。
【請求項６】
前記ピクセルバンドを識別するために、前記車両を取り巻く前記環境の前記第１の画像を検査する当該ステップが、さらに、
閾値強度を超える前記第１の画像内の他のピクセルに対するコントラスト強度を含む前記第１の画像内のピクセルを検出するステップであって、前記ピクセルバンド内の各ピクセルが、前記閾値強度を超えるコントラスト強度を有するピクセルを含む、ステップを備える、
請求項１に記載の方法。
【請求項７】
前記車線領域を識別するように構成されている、訓練されている分類モデルへの入力として前記ピクセルバンドを提供するステップと、
前記訓練された分類モデルから前記車線領域に関する情報を受け取るステップであって、前記車線領域を抽出する当該ステップが、前記訓練されている分類モデルから受け取られた前記車線領域に関する情報を検査することに基づいている、ステップと
を、さらに、備える、請求項１に記載の方法。
【請求項８】
前記車線ドリフト指標を決定する当該ステップが、
２回目に前記車両を取り巻く前記環境を描写する前記第１の画像の第２のフレームを取得するステップと、
前記第２のフレームのピクセルバンドを識別するために、前記第２のフレームを検査するステップと、
前記第２のフレームで識別された前記ピクセルバンドに基づいて、更新された車線領域を抽出するステップと、
前記車線領域と前記更新された車線領域との間の車線マーキングに含まれる水平重心の相対位置の変化を決定するステップであって、前記車線ドリフト指標が、前記決定された変化に基づいて決定される、ステップと
を、さらに、備える、請求項１に記載の方法。
【請求項９】
前記車線ドリフト指標が、車線ドリフトモデルに基づいて決定され、前記車線ドリフトモデルへの入力が、コンテキストパラメータおよび前記車線領域を含み、前記車線ドリフトモデルが、前記入力に基づいて前記車線ドリフト指標を出力するように構成されている、請求項１に記載の方法。
【請求項１０】
前記車両が、無線通信インターフェースを介して遠隔コンピューティングデバイスと無線通信するように構成されている車載コンピューティングデバイスを含む、請求項１に記載の方法。
【請求項１１】
前記変換行列を生成する当該ステップが、前記変換行列の生成に組み込むことが出来る、前記車両を取り巻く前記環境の既定の特徴のセットを利用するステップを含む、請求項１に記載の方法。
【請求項１２】
車両制御に関連して生成された前記出力に従って、前記車線領域内の前記車両の車線位置を修正するように構成されている車両アクションを実行するステップを、
さらに、備える、請求項１に記載の方法。
【請求項１３】
車両の車線位置に基づいて車両の位置決めを制御する出力アクションを実行する、車両に搭載されたコンピューティングデバイスによって実行されるコンピュータ実装方法であって、
前記車両に接続されているカメラによって生成された、車両の前方に位置する環境の画像を取得するステップと、
前記画像からピクセルの複数の水平バンドを抽出するステップと、
前記車両が走行している車線を表すピクセルの各水平バンド内の少なくとも１つのマーキングを識別するステップと、
ピクセルの各水平バンド内で識別される前記少なくとも１つのマーキングに基づいて車線領域を定義するステップと、
前記車線領域の中心に対する前記車両の位置のオフセットを示す車線ドリフト指標を導出するステップと、
前記車線ドリフト指標に示された前記オフセットを修正するために出力アクションを実行するステップと
を備える方法。
【請求項１４】
前記車線領域内の前記車両のトップダウン表示を提供する、前記画像で識別された車線領域を後続の画像に変換するように構成されている変換行列を生成するステップと、
前記変換行列を使用して、前記画像で識別された、前記抽出された車線領域を前記後続の画像に変換するステップであって、前記車線ドリフト指標が後続の画像に基づいて導出されるステップと
を、さらに、備える、請求項１３に記載のコンピュータ実装方法。
【請求項１５】
期間中に識別されたピクセルバンドの複数のセットを集合するステップと、
ピクセルバンドの前記複数のセットに渡って複数のトレンドラインを決定するステップであって、各トレンドラインが、車線マーキングを備え、前記車両が、前記期間中に前記車線領域の中心から逸脱する頻度を、前記車線ドリフト指標が、前記期間中に前記決定された車線マーキングに基づいて、示す、ステップと
を、さらに、備える、請求項１３に記載のコンピュータ実装方法。
【請求項１６】
前記画像の平均強度に対して、閾値コントラスト値を超える強度を含む画像内の全てのピクセルを検出するステップであって、ピクセルバンドの前記セット内の各ピクセルが、前記閾値コントラスト値を超える強度を含む、ステップを
さらに、備える、請求項１３に記載のコンピュータ実装方法。
【請求項１７】
プロセッサが、車両に接続されたカメラによって生成された車両の前に位置する環境の画像を取得するステップと、
前記プロセッサが、前記画像からピクセルの複数の水平バンドを抽出するステップと、
前記プロセッサが、前記車両が走行している車線を表すピクセルの各水平バンド内の少なくとも１つのマーキングを識別するステップと、
前記プロセッサが、ピクセルの各水平バンドで識別された前記少なくとも１つのマーキングに基づいて車線領域を定義するステップと、
前記プロセッサが、前記車線領域に基づいてドリフト指標を生成するステップとを
備える方法。
【請求項１８】
ピクセルの各水平バンドが、前記画像の幅全体に及ぶ、請求項１７に記載の方法。
【請求項１９】
ピクセルの各水平バンドが、重なり合わない高さと同等となるように、前記画像の高さよりも低い高さに広がる、請求項１７に記載の方法。
【請求項２０】
前記プロセッサが、前記ドリフト指標に基づいて前記車両を制御するための出力を生成するステップと、
前記プロセッサが、前記出力を、運転者からの入力なしで前記車両に対する制御信号として適用するステップと
を、さらに、備える、請求項１７に記載の方法。
【請求項２１】
前記プロセッサが、前記車両の運転者に関連付けられているプロファイルに前記ドリフト指標を保存するステップ
を、さらに、備える、請求項１７に記載の方法。
【請求項２２】
前記プロセッサおよび前記カメラが、前記車両に接続されている車載車両システム内に存する、請求項１７に記載の方法。
【請求項２３】
プロセッサが、車両に接続されている前方向カメラによって生成された画像のシリーズを取得するステップと、
前記プロセッサが、前記画像のシリーズの各画像からピクセルのバンドを抽出するステップと、
前記プロセッサが、前記車両が走行している車線を表すピクセルの各バンド内のマーキングを識別するステップと、
前記プロセッサが、各画像で識別された前記マーキングに基づいて各画像の個別のドリフト指標を生成することにより、画像の前記シリーズに対するドリフト指標のシリーズを生成するステップを、
備える方法。
【請求項２４】
前記プロセッサが、前記ドリフト指標のシリーズの軌跡、値、またはパターンに基づいて、前記車両の運転者にスコアを付けるステップ
を、さらに、備える、請求項２３に記載の方法。
【請求項２５】
ピクセルの各バンドが、各画像の幅全体にわたるピクセルの水平バンドである、請求項２３に記載の方法。
【請求項２６】
ピクセルの前記バンドが、各画像から抽出されたピクセルの複数の水平バンドの１つであり、そしてピクセルの前記複数の水平バンドが、各画像の上半分に位置するピクセルの第１の水平バンドおよび各画像の下半分にあるピクセルの第２の水平バンドを含む、請求項２５に記載の方法。
【請求項２７】
当該識別するステップが、
ピクセルの前記水平バンドに渡って、各垂直列のピクセルの輝度値を平均化するステップと、
前記平均化された強度値の暗から明への遷移または明から暗への遷移に基づいて、各画像の各象限にマーキングの水平重心を確立するステップと
を、備える、請求項２６に記載の方法。
【請求項２８】
当該識別するステップが、
前記車両が位置する地理的位置に対応する既知の規制に基づく、前記マーキングに関連付けられている既定の幅に基づいて、前記マーキングの水平重心を確立するステップを、
備える、請求項２３に記載の方法。
【請求項２９】
前記マーキングの水平重心が、
所定の画像で観察された特徴と前記画像のシリーズの先行する画像の前記特徴との比較、
所定の画像で観察された複数の特徴の比較、または
これらの任意の組み合わせ
に基づいて動的に決定される、請求項２３に記載の方法。
【請求項３０】
当該識別するステップが、
ピクセルの前記水平バンドに渡って角度が付けられた列のピクセルの強度値を平均化するステップと、
前記平均強度値の暗から明への遷移または明から暗への遷移に基づいて、各画像の各象限に前記マーキングの水平重心を確立するステップを
備える、請求項２６に記載の方法。
【請求項３１】
前記角度が付けられた列が、前記車両に対して前方方向に沿って直線であると想定される所定のマーキングの投影角度に基づいて決定される角度に向けられている、請求項３０に記載の方法。
【請求項３２】
識別する当該ステップが、
前記画像のシリーズから抽出されたピクセルの前記バンドを、入力として分類モデルに提供するステップを備え、
前記ドリフト指標のシリーズが、ピクセルの前記バンドに基づいて前記分類モデルによって生成された出力のシリーズに基づいて、生成される、
請求項２３に記載の方法。
【請求項３３】
前記画像のシリーズが、前記前方向カメラによって前記プロセッサにストリーミングされるときに、当該提供するステップが、リアル−タイムで実行される、請求項３２に記載の方法。
【請求項３４】
ドリフト指標の前記シリーズが、平均偏差、中央偏差、時間間隔にわたる偏差パターン、または偏差の大きさの個別の計算を表す、請求項２３に記載の方法。
【請求項３５】
プロセッサによって実行されると、前記プロセッサに、以下のステップを備える演算：
車両に接続されたカメラによって生成された前方向画像を取得するステップ；
前記前方向画像からピクセルのバンドを抽出するステップ；
前記車両が走行している車線を表すピクセルの前記バンド内の少なくとも１つのマーキングを識別するステップ；
ピクセルの前記バンド内で識別された前記少なくとも１つのマーキングに基づいて車線領域を定義するステップ；
前記前方向画像の車線領域の頂点を定義する参照行列を作成するステップ；および
変換行列に従って、前記前方向画像を前記車線領域のトップダウン図に変換するステップ
を実行させる命令が、格納されている非一時的コンピュータ可読媒体。
【請求項３６】
前記演算が、さらに、個人から車線領域を示す入力を受け取るステップを備え、前記変換が、前記入力に応答し、かつ前記入力に基づいて実行される、請求項３５に記載の非一時的コンピュータ可読媒体。
【請求項３７】
当該変換するステップが、左側指標乗算で参照行列に変換行列を乗算するステップを備える、請求項３５に記載の非一時的コンピュータ可読媒体。
【請求項３８】
前記変換行列が、前記車線領域の頂点、車線の既知の幅、車両の運動学的データ、またはこれらの任意の組み合わせに基づいて計算される、請求項３５に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、自動車分野に関し、より具体的には、自動車分野における車両位置の推定に関する。
【背景技術】
【０００２】
車両（例えば、自動車、トラック、オートバイ）は、通常、道路を走行する。道路は、通常、車両を車線内の位置に維持させ、道路を走行する隣接車両と接触する可能性を低くするために、複数の車線に分割されている。
【０００３】
しかしながら、様々な理由により、車両が、道路上の指定された車線からドリフトする（外れる）ことは、多々ある。例えば、車両の運転中に運転者の注意力が散漫になり、車両が車線から隣接する車線にドリフトすることが起こり得る。これにより、道路で車両衝突が発生するリスクが高まる可能性がある。
【０００４】
車両が車線からドリフトしているか否かを識別するための簡単な試みの１つは、車両に１つ以上のカメラを装備させて、車両が車線からドリフトしているか否かを示す画像を取り込むことである。しかしながら、車線ラインに対する車両位置を抽出する従来の画像処理技術は、画像センサまたは車両（例、画像センサが存在する車両）のユニバーサルではないカメラの予備較正手順および／または他の内因性パラメータに依存することになる。これにより、画像の精度が低下するので、この画像から抽出された、誤った車線シフトが決定されることになる。さらに、これらの画像処理技術は、複雑なモデルまたはアルゴリズムを必要とする３次元環境で、車両の動きおよび／または位置情報を確立するために画像全体を頻繁に利用する可能性があるため、計算リソースを集中的に使用することになる。
【０００５】
本技術の様々な特徴および特性は、図面と併せて詳細な説明を検討することにより、当業者にはより明らかになるであろう。技術の実施形態は、限定するのではなく例として、図面に示されていて、ここでは同様の参照番号は同様の要素を示すことができる。
【０００６】
図面は、例示のみを目的として様々な実施形態を示している。当業者は、本技術の原理から逸脱することなく代替実施形態を採用できることを認識するであろう。したがって、特定の実施形態が図面に示されているが、この技術はさまざまな修正に適用可能である。
【図面の簡単な説明】
【０００７】
【図１】本実施形態を実装することができる例示的な環境の図である。
【図２Ａ】例示的な撮像領域および抽出された車線領域を示す。
【図２Ｂ】画像から抽出された例示的な車線マーキングを示す。
【図３】車線ドリフト指標を生成するために使用される抽出された車線領域の例示的なブロック図を示す。
【図４】車線ドリフト指標を導出するための例示的な方法のブロック図を示す。
【図５】変換行列に従って前方向画像から変換された車線領域に対する車両の例示的なトップダウン図のブロック図を示す。
【図６】車両の決定された車線位置推定の例示的なグラフィック表現を示す。
【図７】変換行列を実装する方法のブロック図を示す。
【図８】車両の車線位置に基づいて車両の位置決めを制御する出力アクションを実行する例示的な方法のブロック図を示す。
【図９】本明細書に記載される少なくともいくつかの演算を実施させることができる処理システムの例を示すブロック図である。
【発明を実施するための形態】
【０００８】
（概要）
歴史的に、車両の位置は、三辺測量により全地球測位システム（ＧＰＳ）によって確立されて来た。しかしながら、これらの測定は、不正確である場合があり（例えば、誤差が１０メートルを超える場合もあり）、精度が重要な状況には適していない。このような状況の例には、自動運転、コンピュータ支援運転、コンピュータ監視運転が含まれる。したがって、エンティティは、はるかに高い精度で（例えば、１０センチメートル未満の誤差で）車両の位置を推定するように設計されたアルゴリズムの開発を開始して来ている。これらのアルゴリズムを実装／採用するプロセスは、「位置推定（localization）」と呼ばれる。
【０００９】
上述したように、従来の位置推定プロセスにはいくつかの欠点がある。例えば、いくつかのアルゴリズムでは、煩わしい較正手順を定期的に（例えば、各運転セッションの前に）実行する必要がある。別の例では、いくつかのアルゴリズムは、複雑なコンピュータ実装モデル、機械学習（ＭＬ: machine learning）アルゴリズム、コンピュータビジョン（ＣＶ: computer vision）アルゴリズムなどの使用により、計算コストが高くなる。
【００１０】
したがって、本出願で紹介されるものは、車線内にある車両の位置推定のためのコンピュータプログラムおよび関連するコンピュータ実装技術である。例えば、プロセッサは、ホスト車両に接続された前方向画像センサによって生成された画像データのストリームを取得するように、構成させることができる。本明細書で使用される「ホスト車両」という用語は、画像センサが接続されている車両を指す。いくつかの実施形態では、画像センサは、ホスト車両の内側に（例えば、フロントガラスの内面に）固定され、他の実施形態では、画像センサは、ホスト車両の外側に（例えば、ボンネットの上面に）固定される。画像センサの例は、電荷結合素子（ＣＣＤ）センサおよび相補型金属酸化膜半導体（ＣＭＯＳ）センサ等のアクティブピクセルセンサを含む。前方向画像センサが、１つ以上のＣＣＤセンサを含む場合、画像データのストリームは、時間の経過とともに生成される画像のシリーズを含むことができる。これらの画像は、例えば、ビデオフィードのフレームである。
【００１１】
ここで、このプロセッサは、画像データのストリームに基づいて車線ドリフト指標を生成することにより、車線内にあるホスト車両の位置を推定することが出来る。例えば、画像データのストリームが、経時的に生成された画像のシリーズを含む場合、このプロセッサは、画像のシリーズ内の画像ごとに、個別の車線ドリフト指標を生成することができる。各画像について、このプロセッサは、ピクセルの複数のバンドを抽出し、車線を表すピクセルの複数のバンド内にある１つまたは複数のマーキングを識別し、次いで、このマーキングに基づいて車線領域を定義する。運転者のパフォーマンスは、画像のシリーズに関連付けられた車線ドリフト指標のシリーズに基づいて、評価／スコア付けさせることが出来る。例えば、このプロセッサは、幾つの車線ドリフト指標が、閾値を下回ったかに基づいて、運転者にスコアを付けることができる。別の例として、このプロセッサは、車線ドリフト指標の一般的な軌跡に基づいて（例、車線ドリフト指標が経時的に減少しているか否か、車線ドリフト指標が周期的に振動しているか否か、等）、運転者にスコアを付けることができる。
【００１２】
いくつかの実施形態では、このプロセッサは、ホスト車両の内部に配置される。例えば、このプロセッサは、ホスト車両に取り付けられた車載システム内に配置させることができ、またこのプロセッサは、運転者に関連付けられた電子デバイス（例えば、携帯電話）内に配置させることも出来るであろう。他の実施形態では、このプロセッサは、ホスト車両の外部に配置される。例えば、このプロセッサは、車載システム、電子デバイスなどと通信するコンピュータサーバに配置させることも出来るであろう。
【００１３】
実施形態は、個人をリアル−タイムで監視する目的のために、車両位置推定の文脈で説明することができる。例えば、本明細書で説明される技術は、運転セッション中に車両の運転者を監視して、この運転者が適切な（例、安全な）行動を示しているか否かを決定するように設計されている観測システムの部分とすることができる。このような決定は、この運転者のために生成された車線ドリフト指標に基づいて行うことができる。しかしながら、当業者は、これらの特徴が、自動運転車両を制御するような他の状況にも等しく適用可能であることを認識するであろう。
【００１４】
（用語）
本明細書で使用される用語の目的は、実施形態を説明するためだけであり、本開示の範囲を限定することを意図するものではない。文脈が許す限り、単数形または複数形を使用する単語は、それぞれ、複数形または単数形を含むことができる。
【００１５】
本明細書で使用される場合、特に明記されない限り、「処理する(processing)」、「計算する(calculating)」、「コンピューティングする(computing)」、「決定する(determining)」、「表示する(displaying)」、「生成する(generating)」、等の用語は、コンピュータのメモリまたはレジスタ内の物理（電子）量として表されるデータを、コンピュータのメモリ、レジスタ、または他のそのような記憶媒体、伝送、または表示装置内の物理量として同様に表される他のデータに、操作するおよび変換するコンピュータまたは類似の電子計算装置のアクションおよびプロセスを指す。
【００１６】
本明細書で使用される「接続された(connected)」、「結合された(coupled)」、等のような用語は、２つ以上の要素間の直接または間接の任意の接続または結合を指すことができる。要素間の結合または接続は、物理的、論理的、またはそれらの組み合わせとすることが出来る。
【００１７】
「実施形態(an embodiment)」または「一実施形態(one embodiment)」への言及は、説明されている推定の特徴、機能、構造、または特性が、少なくとも一つの実施形態に含まれることを意味する。このようなフレーズの出現は、必ずしも同じ実施形態を指すわけではなく、またそれらが、必ずしも相互に排他的な代替実施形態を指すわけでもない。
【００１８】
文脈が明らかにそうであることを必要としない限り、「含む（comprise）」および「含む(comprising)」という言葉は、排他的または網羅的な意味ではなく、包括的な意味（すなわち、「〜を含むが、それに限定されない」という意味）で解釈されるべきである。
【００１９】
「に基づいて(based on)」という用語も、また、排他的または網羅的な意味ではなく、包括的な意味で解釈されるべきである。したがって、特に明記しない限り、「〜に基づいて(based on)」という用語は、「〜に少なくとも部分的に基づいて(based at least in part on)」を意味することを意図している。
【００２０】
「モジュール(module)」という用語は、広く、ソフトウェアコンポーネント、ハードウェアコンポーネント、および／またはファームウェアコンポーネントを指す。このモジュールは、通常、指定された入力に基づいて有用なデータまたは他の出力を生成することが出来る機能コンポーネントである。このモジュールは、自己充足型とすることができる。コンピュータプログラムは、１つまたは複数のモジュールを含むことができる。したがって、コンピュータプログラムは、異なるタスクの完了を担当する複数のモジュール、または複数のタスクの完了を担当する単一のモジュールを含むことができる。
【００２１】
複数のアイテムのリストに関して使用される場合、単語「または(or)」は、リスト内のアイテムの何れか、リスト内のアイテムの全て、およびリスト内のアイテムの任意の組み合わせ、の全ての解釈を網羅することを意図している。
【００２２】
本明細書に記載のプロセスの何れかで実行されるステップのシーケンスは、例示である。しかしながら、物理的な可能性に反しない限り、ステップは、さまざまなシーケンスおよび組み合わせで実行させることができる。例えば、本明細書で説明されているステップは、プロセスに追加させ、またはそこから削除させることが出来るであろう。同様に、ステップは、置換または並べ替えることも出来るであろう。したがって、如何なるプロセスの説明も、オープンエンドであることが意図されている。
【００２３】
（システムの概要）
本実施形態は、導出された車線ドリフト指標に基づいて、車線内にある車両を効率的に推定することに関する。車両に搭載された画像ストリームは、記録させることができ、これは、車両を取り巻く環境の画像のストリームを表す。車両は、画像ストリームを使用して車線内の位置を推定させて、車線内の車両の位置を示す車線ドリフト指標を生成することができる。この車線ドリフト指標に基づいて、運転者にスコアを付ける、または車両制御に関する出力を提供して、車線内にある車両への如何なるシフトも修正することが出来る。
【００２４】
本実施形態は、運転セッション中に車両が車線内でドリフトしているか否か（例、車線ドリフトを経験しているか否か）の決定を提供することができる。これは、（例、車線ドリフト指標として定量化されている）車線ドリフトの程度（例、重症度、頻度、振幅、等）の決定を含むことができる。
【００２５】
車両を取り囲む領域の取得された画像ストリームは、車両のトップダウン図に変換させることができる。この変換された車両のトップダウン図は、画像ストリームを車両のトップダウン図に変換するように構成されている変換モジュールの自動較正を容易にすることが出来る。さらに、車線ドリフトに関する運転者の行動（運転者の注意散漫、運転者のスキル、運転者のステアリング技術、運転者の計画能力、等）は、車線ドリフト指標を使用して決定させることができる。
【００２６】
本実施形態は、本実施形態の特徴を実装するコンピューティングシステムの計算機能を改善させることができる。例えば、この技術は、収集された非ジェネリックデータの処理を改善することが出来る（例、収集されたセンサデータをデータの顕著性に基づいてフィルタリングすることにより、処理中に、最も顕著なデータに焦点を合わせかつそれを処理し、そして最も顕著でないデータを無視しまたは重み付けを解除することが出来る）。別の例では、この技術は、分析される画像の部分を制約することによる（例、分析された画像を、元の画像から分離された水平ピクセルバンドのペアに制約することによる）より少ない計算ノードおよび／またはレイヤ；単一画像処理に代える（例、単一画像分析よりも画像当たり低い解像度の）時系列情報；そしてイベントトリガ（例、実質的に直線の道路区間での高速道路走行に対応するイベントトリガによる、想定されるラインの直線性に基づく車線領域の抽出）に基づいた想定データコンテキスト、を使用することにより計算効率を向上させることが出来る。
【００２７】
本実施形態は、本実施形態の特徴を実施する撮像システムの機能を改善させることができる。絶対的または相対的な幾何学的パラメータ（例、実際の距離、相対的な間隔、等）を抽出する従来の画像処理は、多くの場合、車両内のカメラの配置、視野およびレンズのプロパティ、等のような、撮像システムの内因性および外因性パラメータを記述する既定の較正データを必要とする。対照的に、この技術の変形例は、画像システムの内因性および／または外因性パラメータを事前に知る必要無しに、車線位置推定情報（車線ドリフト指標、車線位置安定性、等）を抽出することが出来る。これは、（例、寸法較正誤差伝播の減少により）撮像技術および画像処理技術の精度を改善させ、および（例、内因性パラメータがわずかに異なる、使用されている撮像ハードウェアの変動に対する）復元性を改善させることが出来る。
【００２８】
図１は、本実施形態を実装することができる例示的な環境１００の図である。図１に示されるように、環境は、車両１０２を含むことができる。例示的な車両は、自動車、トラック、バス、スクータ、等のような任意のモータ駆動マシンを含むことが出来る。
【００２９】
車両１０２は、センサ（例えば、センサ１０４ａ−ｂ）を含むことができる。センサは、車両１０２に関する様々なデータを取得することが出来る。例えば、センサ１０４ｂは、撮像範囲１０６によって表される車両１０２の周囲の画像データを捕捉する画像センサを含むことが出来る。
【００３０】
環境は、複数の車線を含む道路を含むことが出来る。例えば、この道路は、外側車線マーカ１０８ａ−ｂおよび車線マーカ１１０ａ−ｂを含むことができる。いくつかの実施形態では、この道路は、車両が、車線のマーカ間を移動することを可能とする車線を含むことが出来る。例えば、図１に示される実施形態では、車両１０２は、マーカ１１０ａと１１０ｂの間を移動することができる。この道路の車線を明確に分離するために、道路に車線マーカをペイントする、または道路に強調表示をすることができる。
【００３１】
本明細書で説明する実施形態の特徴は、様々な関連システムによって実装および／または実行させることができる。例えば、本実施形態の特徴は、車両に搭載された検知およびコンピューティングシステム（例、車載システム）によって少なくとも部分的に実行させることが出来るが、これに加えまたは代えて、サーバシステム、ユーザデバイス（スマートフォン、タブレット、等）、またはコンピューティングシステムの他の適切なセットまたはネットワークのような遠隔コンピューティングシステムによって少なくとも部分的に実行させることが出来る。
【００３２】
実施形態の特徴は、車載車両システム（例、車両センサデータ）によってサンプリングされたデータを使用して実装させることができるが、これに加えまたは代えて、補助車両データ（例、車載システムの車両センサ以外の他の車両センサによってサンプリングされた信号、データベースから取得された車両データ、車両自体に関連付けられていてかつ車載システムに保存されている内因性の車両データ、等）、（例、ソース車両、データベース、または他の適切な遠隔コンピューティングシステムから受け取られた）他の車両のデータ、集合人口データ、（例、車両、運転者、地理的位置、等の）履歴データ、または他の適切なソースからの他の適切なデータ、を使用して実行させることが出来る。車載車両システムは、車両イベント（例、イベントシーン、運転シーン、等）中の車両周囲に対応する車両センサデータを捕捉、記録、または適切に取得し、同時に、（例、運転者の行動の決定に使用するための）車両イベント中の運転者に対応する車両センサデータを捕捉、記録、または適切に取得するように機能することが出来る。しかし、車載システムは、運転者の運転方針を決定するために使用することが出来る、相関する内部−外部データを適切に捕捉することが出来る。
【００３３】
搭載車両システムは、処理システム（例、ＧＰＵ、ＣＰＵ、マイクロプロセッサ、ＴＰＵ、車両コンピューティングシステム、等のセット）、ストレージシステム（例、ＲＡＭ、フラッシュ）、通信システム、センサセット、電源システム（例、バッテリ、車両電源コネクタ、太陽光発電システム、等）、CANバスインターフェース（例、有線または無線）、ハウジング、または他の適切なコンポーネントを含むことが出来る。通信システムは、（例、車両間、車両からインフラストラクチャ、車両から遠隔コンピューティングシステム、または他の通信用のための）テレメトリシステム、ワイヤレスシステム（例、セルラ、Ｗｉ−Ｆｉ、または他の８０２.１１ｘプロトコル、Ｂｌｕｅｔｏｏｔｈ、ＲＦ、ＮＦＣ、等）、有線システム（例、イーサネット、車両バス接続、等）、または他の適切な通信システムを含むことが出来る。センサは、カメラ（例、広角、狭角、または他の適切な視野を持つもの；可視範囲、不可視範囲、ＩＲ、マルチスペクトル、ハイパースペクトル、または適切な波長に沿った感度の高いもの；単眼、立体、または適切な数のセンサまたはカメラ、等）、運動学的センサ（例、加速度計、ＩＭＵ、ジャイロスコープ、等）、光学システム（例、周囲光センサ）、音響システム（例、マイク、スピーカ、等）、範囲-検索システム（例、レーダ、ソナー、ＴＯＦシステム、ＬＩＤＡＲシステム、等）、位置情報システム（例、ＧＰＳ、携帯三辺測量システム、短距離定位システム、推測航法システム、等）、温度センサ、圧力センサ、近接センサ（例、距離測定システム、短距離無線、等）、または他の適切なセンサのセットを含むことが出来る。
【００３４】
いくつかの実施形態では、車載システムは、内部センサのセット、外部センサのセット、および処理システムの何れかを含むことができる。この内部センサ（例、内向きカメラ、マイク、等）は、車内、より好ましくは、運転者の容積（例、車両の運転者がいる容積、および／またはこの車両の運転中に占められるであろう車室内の容積）に、およびこれに代えてまたは加えて、任意の適切な内部容積に、向けられていてかつそれを監視することが出来る。この外部センサ（例、外向きカメラ）は、車両の外側に向けられていることが好ましく、かつ車両の前方領域（例、車両軌道に沿って車両に先行する領域、運転容積に近接しかつ車両を囲む領域、ドライブトレインの縦方向ベクトル、等）を含むことが好ましい。しかしながら、この外部センサは、これに代えて、車両の側面、上部、下部、背面、または車両の外部および／または車両周辺を含む他の適切な領域に向けることも出来る。これらのセンサは、車両におよび／または（例、ハウジングを介して）互いに静的に取り付けることができるが、ジンバル、減衰システム、または他の運動機構によって移動可能に取り付けることも出来る。
【００３５】
本実施形態の特徴は、リアル−タイムまたはほぼリアル−タイムで実行（例、実行、実装、等）させることが出来るが、本明細書に記載の特徴の全てまたは一部は、これに代えて、非同期でまたは他の任意の適切な時間に実行させることも出来る。本実施形態の特徴は、好ましくは、既定の頻度（例、ミリ秒ごと、サンプリング周波数で、等）で繰り返し実行させることができるが、これに代えて、トリガイベント（例、車両の変化、姿勢、ユーザの注意散漫レベルの変化、運転セッション情報の受信、新しいセンサ情報の受信、高衝突リスクに関する地理的領域への車両の物理的な進入、物体近接検出、運転セッションの開始または終了の検出、等）の発生に応答して、運転セッションに対して１回、車両に対して１回、または他の適切な頻度で、実行させることも出来る。
【００３６】
これらのセンサは、車両内に配置された車載車両システムで画像ストリームを記録するように構成させることができる。これにより、（例、外向きカメラから取得される画像ストリームに描かれる）車両の周囲を示すデータを取得することを可能にすることができる。これは、運転に関するシナリオ（例、画像ストリームが、内向きカメラから取得される場合に、画像ストリームに示される車両イベント）中に、周囲に対する運転者のアクションを示すデータを取得する機能も果たすことが出来る。この画像ストリームは、上記の車載システムを使用して記録させることができる。しかしながら、この画像ストリームは、これに加えまたは代えて、車両自体（例、車両、エゴ車両、等）に統合されたおよび／またはそれとは別個の任意の適切なセンサシステムを使用して、記録させることも出来る。
【００３７】
画像ストリームは、少なくとも２つのカメラ：車外を撮像する第１のカメラ、および車内を撮像する第２のカメラから捕捉された同期画像データ（例、時間的に同期している、空間的に同期または相関している、等）を含むことが出来る。（例、内部および外部カメラからの）同期されたセンサデータは、運転者の活動（例、運転者の行動）を、車外で発生しつつあるイベント（例、車両のイベント、車線のドリフト、走行シナリオ、等）に関連付けるために使用することができる。
【００３８】
これらのセンサは、運転環境を感知する（例、車両を取り巻くシーン内のオブジェクトは何か、そのようなオブジェクトはどこにあるか、オブジェクトの特性、等）ことができるようにしても良い。運転環境は、連続的または不連続的に感知、記録、または適切に決定することが出来る。これは、さまざまな形で、トリガ（例、イベントベースのトリガ、閾値ベースのトリガ、等）に応じて実行させることが出来る。
【００３９】
これらのセンサは、視覚（例、画像）および／または非視覚車両センサデータとすることが出来る、補足データを収集することが出来る。この車両センサデータは、これに加えてまたは代えて、位置データ（例、ＧＰＳデータ）、運動データ（例、慣性測定ユニット（ＩＭＵ: inertial measurement unit）データ）、および任意の他の適切なタイプのセンサデータを含むことが出来る。１つ以上のデータストリームから集合的に集合される車両センサデータは、双方向ビデオデータ（例、内向きビデオカメラデータと外向きビデオカメラデータ）を含み、そして慣性データ、ジャイロスコープデータ、位置データ、ルーティングデータ、運動学データ、および（例、適切なデータ接続を介してＯＢＤＩＩポートから収集される）他の適切な車両遠隔測定データも含むことが出来る。しかしながら、車両センサデータは、他の適切なデータを含むことも出来る。
【００４０】
（車線ドリフト指標の導出）
上述したように、センサ（例、撮像デバイス）は、車両を取り巻く環境の画像を捕捉することができる。車線領域は、捕捉した画像に基づいて、検出させることが出来る。図２Ａは、例示的な撮像領域２１２および抽出された車線領域２１４を示す。図２に示される実施形態では、撮像領域２１２は、道路の様々な車線マーカ（例えば、車線マーカ２０８ａ−ｂおよび外側車線マーカ２１０ａ−ｂ）を識別することができる。
【００４１】
撮像領域２１２を検査して車線内の車両の位置を推定し、車線ドリフト指標を生成することが出来、これにより車線内の車両の位置に関する情報が（例、時間の関数として、ある時点で、等）決定され、そしてこの情報が車線ドリフト指標として定量化される。
【００４２】
車両の位置を推定することにより、車線内の車両の位置変化（例、位置の時間微分）を示す（例、車線ドリフト指標として定量化される）情報を決定することができるが、これに代えて、車線内の車両の相対位置を決定するように機能させることも出来る。車線領域の位置を推定することは、運転セッション中に車両が走行している車線領域を決定することを含むことも出来る。
【００４３】
図２Ａに示されるように、車線領域２１４は、画像ストリーム２１２の前方向画像から抽出させることができる。例えば、車線領域は、車線位置（例、車線ドリフト指標）の時間変化を決定するために使用することが出来る近似車線領域とすることが出来る。この近似車線領域は、時間的変動を決定するための閾値精度よりも大きく、かつ絶対位置の決定または推定のための閾値精度よりも低い、精度を有する。いくつかの例では、より低い精度の閾値を適用することは、車線領域を決定するのに必要な計算能力および／またはアルゴリズムの複雑さを低減させ、そして車線領域を決定する速度を上げるように、機能することが出来る。
【００４４】
いくつかの実施形態では、車線領域２１４を決定することは、前方向画像２１２から少なくとも２つの水平ピクセルバンド（例、バンド２１６ａ−ｂ）を抽出し、これらの２つの水平ピクセルバンドから車線マーキングを抽出し、そしてこの抽出された車線マーキングに基づいて車線領域を決定することを含むことが出来る。しかしながら、単一のバンド（例、水平バンド、傾斜バンド、等）または任意の適切な数のバンドを、前方向画像から抽出させることも出来る。
【００４５】
いくつかの実施形態では、２つの水平ピクセルバンド（例、バンド２１６ａ−ｂ）は、前方向画像の幅全体に広がり、そして各水平ピクセルは、２つの水平ピクセルバンドが、重なり合わない高さと同等となるように、前方向画像の高さよりも低い高さに広がることが出来る。他の実施形態では、２つ以上の水平ピクセルバンドは、任意の適切な幅および／また  は高さとさせることが出来、そして重複または非重複とさせることが出来る。
【００４６】
図２Ｂは、画像２１２から抽出された例示的な車線マーキング２１８を示す。図２Ｂに示されるように、車線マーキング２１８は、ある期間中に画像から抽出されたピクセルバンドのシリーズ（例、バンド２１６ａ−ｂ）を含むことが出来る。例えば、バンド２１６ａ−ｂは、第１の画像から第１の期間に導出させることができ、そしてバンド２１６ｃ−ｄは、第２の画像から第２の期間に導出させることができる。ピクセルバンドのシリーズを組み合わせることにより、例示的な車線マーキング２１８の生成が可能になる。
【００４７】
車線マーキングの抽出は、車線マーキングの特性（例、車線ラインの既知の標準化された幅、車線の既知の標準化された幅、そしてしたがって車線マーキングの相対位置、車線マーキングの局所的な直線性、等）に基づいて、（例、画像内の）車線マーキングの水平位置を抽出することを含むことができる。これは、（例、履歴データ、地理的位置または地域に関する規制、等に基づいて）事前に決定させることが出来、および／または（例、画像ストリームの以前のフレームから、画像ストリームの同じフレーム内の特徴から推定して、等）動的に決定させることが出来る。
【００４８】
一例では、車線マーキングを抽出することは、水平バンドに渡って各垂直列の各ピクセルの強度値を平均化し、そしてこの強度値の明から暗へおよび／または暗から明への遷移に基づいて、画像の各象限の車線マーキングの水平重心を決定することを含む。別の例として、角度が付いた列の各ピクセルの強度値を平均化することが出来る。この角度が付いた列は、車両に対して前方向に沿って直線であると想定される車線マーキングの投影角度に基づいて決定される角度で角度が付けられている。代替例および／または変形例では、車線マーキングの抽出は、（例、水平ピクセルバンドの高さが単一ピクセルである場合、複数の平均化されていない水平強度トレースが、車線マーキングの水平重心を決定する上で考慮される場合、等）ピクセル強度の平均化を省略することが出来る。
【００４９】
いくつかの実施形態では、車線マーキングの抽出は、訓練された分類モデルへの入力として水平ピクセルバンドを提供すること、および訓練された分類モデルの出力に基づいて車線領域を取得することを含むことが出来る。この分類モデルは、任意の適切な機械学習法および／または技術に従って訓練することが出来る。第１の例では、この訓練された分類モデルは、（例、前方向画像のフレーム内の）車線領域を出力として出力するエンドツーエンドモデルを含むことができる。第２の例では、訓練された分類モデルは、水平ピクセルバンド内の車線マーキングの水平位置を出力することが出来、そしてこの車線領域は、4つの水平位置（例、２つの水平ピクセルバンドがある場合、水平ピクセルバンドあたり２つ）から構成される4辺ポリゴンから決定論的に計算される。いくつかの実施形態では、車線マーキングは、手動で抽出することが出来、この場合ユーザは各バンドの車線マーカに対応する２つのポイントを選択する。しかしながら、この車線領域は、訓練された分類モデルを使用して適切に決定することも出来る。
【００５０】
図３は、車線ドリフト指標を生成するために使用される抽出された車線領域３００の例示的なブロック図を示す。図３に示されるように、抽出された車線領域は、車線領域３００を定義する複数のポイントを含むことが出来る。いくつかの実施形態では、ポイントの各シリーズは、ある時点で画像から検出されたピクセルバンドを示すことができる。例えば、ポイント３０２ａ−ｄは、１回目に捕捉された第１の画像から検出されたピクセルバンドを含み、ポイント３０２ｅ−ｈは、２回目に捕捉された第２の画像から検出されたピクセルバンドを含み、そしてポイント３０２ｉ−ｌは、３回目に捕捉された３番目の画像から検出されピクセルバンドを含むことができる。
【００５１】
いくつかの実施形態では、抽出された車線領域に含まれるポイントを検査して、ポイント間のラインを導出することができる。例えば、ライン３０4ａ−ｆは、共通のピクセルバンド間に生成させることができる。
【００５２】
画像から検出されたピクセルバンドは、ある期間中追跡させることができ、これは追跡ライン３０6ａ−ｄによって表すことができる。追跡ライン３０６ａ−ｄは、ある期間にわたるピクセルバンドの全般的な傾向を識別することができる。
【００５３】
車線ドリフト指標は、画像ストリームの複数の画像から、車線領域に基づいて導出させることができる。車線ドリフト指標の導出により、車線領域（例、画像ストリームから抽出された車線領域）内の車両のドリフトを定量化することができる。決定することが出来る車線ドリフト指標の例には、平均偏差または中央値偏差（例、経時的な車線領域ポイントの横方向変化の平均値または中央値）、経時的な偏差パターン、偏差の大きさ、または車線ドリフトに関する他の適切な指標を含めることが出来る。
【００５４】
図４は、車線ドリフト指標を導出するための例示的な方法４００のブロック図を示している。この方法は、車両を取り巻く環境の画像を受け取ることを含むことができる（ブロック4０２）。この画像は、車両に配置されたカメラで捕捉させることが出来る。
【００５５】
この方法は、車線領域を決定することを含むことができる（ブロック４０４）。車線領域を決定することは、画像から少なくとも２つのピクセルバンドを抽出することを含むことができる（ブロック4０6）。車線領域を決定することは、抽出されたピクセルバンドによって境界付けられる車線領域を定義することを含むことができる（ブロック４０８）。
【００５６】
この方法は、ある期間中に決定された車線領域を集合することを含むことができる（ブロック４１０）。この集合された車線領域は、抽出されたピクセルバンドのシリーズによって区切られた拡張車線領域を示す。
【００５７】
この方法は、車線ドリフト指標を決定することを含むことができる（ブロック４１２）。車線ドリフト指標は、車両が車線領域内を移動する程度（例、車両が車線の水平または横方向の中心から閾値距離を超えて逸脱する頻度、車の横方向位置が変化する割合、車両の変更、等）を定量化することが出来る。この車線領域は、車線ドリフト指標の導出に関して上述したように、画像ストリームの前方向画像から抽出させることができるが、これに加えてまたは代えて適切に決定させることも出来る。
【００５８】
いくつかの実施形態では、車線ドリフト指標を導出することは、車線内の車両の絶対位置とは無関係に車線ドリフト指標を抽出することを含むことができる。このような変形形態では、車線ドリフト指標は、時間の関数として車線位置の変化（例、車線位置の時間微分）を定量化させることができ、そして各画像の車線位置を計算することなく、画像ストリームデータ（例、画像の時系列）から直接計算させることが出来る。いくつかの実施形態では、車線ドリフト指標を導出することは、画像ストリームからの対応する画像のシリーズから抽出された車線位置の時系列に基づいて車線ドリフト指標を抽出すること、および／または別の方法で車線ドリフト指標を適切に抽出することを含むことが出来る。
【００５９】
いくつかの実施形態では、車線ドリフト指標の抽出は、画像ストリームの２つ以上の画像フレーム（例、前方向画像ストリーム、合成トップダウン画像ストリーム、等）の間の車線マーキングの抽出された水平重心の相対位置の変化を計算することを含むことが出来る。
【００６０】
第１の例では、車線ドリフト指標は、車線位置の時間導関数（例、導関数の定数因子、時間導関数に依存する関数、等）に基づいて計算される。ここで、この時間導関数は、有限差分演算（例、前方差分、中央差分、後方差分、他の適切な有限差分スキーム、等）によって計算される。
【００６１】
第２の例では、車線ドリフト指標は、車線ドリフトモデル（例、訓練された機械学習モデル）に基づいて計算される。この場合、この車線ドリフトモデルへの入力は、コンテキストパラメータおよび車線領域を含み、そしてこの車線ドリフトモデルは、これらの入力に基づいて車線ドリフト指標を出力する。特定の例の場合、これには、（平均シフト追跡、輪郭追跡、カルマンフィルタ、粒子フィルタ、等を使用して）画像ストリームの連続するフレームにより水平重心を識別および追跡すること等により、各ピクセルバンドの各車線マーキングを追跡すること；１つ以上の連続する画像フレーム間のそれぞれのピクセルバンド内の各車線マーキングの相対位置の空間的変化を計算すること；そして１つ以上の車線マーキングの空間的変化に基づいて車線ドリフト指標を計算することを、含めることが出来る。しかしながら、車線ドリフト指標の抽出は、これに加えまたは代えて、他の方法で適切に実行させることも出来る。
【００６２】
車線ドリフト指標を決定することは、集合された車線領域で識別された車線内の車両の横方向シフトを決定することを含むことができる（ブロック４１４）。横方向シフトは、車線領域内の車両間のオフセットを表すことができる。車線ドリフト指標を決定することは、集合された車線領域内で識別された横方向シフトの程度を識別することを含むことができる（ブロック4１6）。横方向シフトの程度は、車両の中心と車線領域の中心との間の距離を示すことができる。
【００６３】
（変換行列の実装）
図５は、変換行列に従って前方向画像から変換された車線領域に対する車両の例示的なトップダウン図のブロック図５００を示す。図5に示されるように、トップダウン図（または鳥瞰図）は、車両の車線領域に対する車線ドリフトを表す車両のトップダウン図を提供することが出来る。
【００６４】
上述したように、車線領域（車線５０４ａ−ｂ）は、画像ストリームから生成された複数のポイント５０２ａ−ｄを備えることが出来る。決定された車線領域に基づいて、中心5０6は、車線領域の間（例、車線5０4aと5０4bの間）の中央ポイントを表すように、導出させることが出来る。車線領域内の中心５０６に対する車両５０８の位置は、車両５０８の車線ドリフトの程度を表すことが出来る。例えば、車両の中心が、直接、中心５０６にある場合、この車両には車線ドリフトは発生していないであろう。図５に示されるように、車両５０８の中心が中心５０６から外れている場合には、これは、この車両が車線領域の中心５０６からドリフトしていることを示す。
【００６５】
車線領域に対する車両のトップダウン図は、前方向画像に基づいて、変換行列に従って生成させることができる。この変換行列は、前方向画像から抽出された情報を、トップダウン図（例、鳥瞰図）からの車両の映像に変換することが出来る。抽出された車線位置推定データが、マッピングおよび／または他の地理空間位置データとともに使用されるアプリケーションでは、変換行列は、位置推定情報を、車両の周囲および／または環境をトップダウン表示で表すマッピングデータと直接比較することができるように機能することも出来る。
【００６６】
変換行列は、（例、前方向フレームの代わりに、またはそれに加えて）車線位置推定情報（例、車線ドリフト指標）を抽出することが出来るトップダウンフレームを定義することができる。以下に示されるように、車両および車線領域のトップダウン図の生成は、変換行列を初期化すること、画像ストリームのフレームに対応する変換行列を計算すること、および前方向画像から決定された車線領域を、変換行列に従って、車線領域のトップダウン図に変換すること、の何れかを含むことができる。
【００６７】
車両の変換行列および／またはトップダウン図の生成は、車両で（例、車載システムのコンピューティングモジュールで、車両内のモバイルデバイスで実行されるアプリケーションで、等）、遠隔コンピューティングシステムで（例、車載システム、分散データストレージおよび検索インフラストラクチャ等と通信する遠隔サーバで）、および／または他の適切な場所で、実行させることができる。特定の例では、車載システムに送信される変換行列の生成は、車載システムから受け取られた画像に基づいて遠隔コンピューティングシステムで実行され、そして車両のトップダウン図の生成は、車載システムで、遠隔コンピューティングシステムから車載システムに送信された、初期化された変換行列に基づいて、実行される。しかしながら、変換行列および／または車両のトップダウン図の生成は、遠隔コンピューティングシステムおよび搭載車両システムを含むコンピューティングシステムの部分（例、搭載コンピューティングシステムを含む搭載車両システム）の部分間で適切に分配させることが出来る。
【００６８】
変換行列および／または車両のトップダウン図の生成は、１つまたは複数の仮定に基づいて実行させることが出来る。仮定は、変換の側面を事前に計算および／または簡略化することを可能にするように機能することが出来る。例えば、変換行列は、道路の局所的な平坦度、道路の実質的な直線性、車両速度（例、高速道路に関する最高速度を超える速度、慣性データから抽出された特定車両の速度、等）、および他の適切な仮定に基づいて、生成させることができる。これにより、画像データから抽出された車線マーキングに修正を適用する（例、トップダウン図に平行ラインを適用する、速度に基づいて２つ以上のフレームにわたる車線マーキング間の縦間隔を決定する、等）ことが可能になる。仮定は、変換行列が、存在すること、そして前方向画像から実際のポイントのセットが与えられると、初期化されたポイントのセットから計算させることが出来ることも含むことが出来る。
【００６９】
車両の変換行列および／またはトップダウン図は、トリガに応答して生成させることができ、そのような変形態様では、トリガは、変換行列の計算が基づく仮定の精度を高めるように機能する。このトリガは、任意の適切なセンサデータ、車両イベントデータ、および／またはコンテキスト（例、補足、補助）データ（例、上記のデータ）に基づいて生成させることが出来る。例えば、変換行列は、前方向画像の車線ラインが実質的に直線であり、そして車両が横方向移動閾値を超えて横方向に動いていないという、仮定に基づくことができる。例えば、変換行列は、車両が高速道路上にありそして（例、車載システムのＩＭＵから）受け取られた横方向加速度信号が閾値を下回っているとして、車両を指定する車両の地理的位置に基づいて生成されたトリガに応じて、生成させることができる。
【００７０】
図６は、車両の決定された車線位置推定の例示的なグラフィック表現６００を示す。図6に示されるように、車両に対して決定された車線位置推定情報のシリーズは、時間に対するグラフィック表示で表すことが出来る。このグラフは、導出された車線領域を示すグラフ上に配置された車線領域6０２ａ−ｂを含むことができる。
【００７１】
車線位置推定は、本明細書に記載のステップを使用して、導き出すことができる。車両の車線位置推定は、車線領域（例、車線領域６０２ａおよび６０２ｂによって境界付けられた領域）に対する車両の位置を表すことができる。一定期間にわたる車両の車線位置推定は、トレンドライン6０4で表すことが出来る。車線位置推定の精度閾値は、マーカ6０6で表すことが出来る。
【００７２】
このグラフ６００は、車両が車線領域の外側を横断した時間を表すことが出来る。例えば、図６に示されるように、車線位置推定傾向線６０４は車線領域６０２ａ−ｂの境界から外に出ることが出来る。以下に示されるように、車両が、車線ドリフトを発生させたことの検出に応じて、車線ドリフトを修正するために、後続するアクションを実行させることができる。
【００７３】
図７は、変換行列を実装する方法７００のブロック図を示す。この方法は、画像フレームを遠隔コンピューティングシステムに送信することを含むことができる（ブロック７０２）。遠隔コンピューティングシステムは、無線通信インターフェースを介して搭載コンピューティングデバイスから受け取られた画像フレームを処理するように構成された、相互接続されたコンピューティングデバイスのシリーズを含むことが出来る。
【００７４】
この方法は、車線領域を示すポイントのセットを取得することを含むことができる（ブロック７０４）。ポイントのセットは、車線ドリフト指標の生成に使用することが出来る車線領域を示すことができる。車線ドリフト指標に基づいて、以下に詳しく説明されるように、車線ドリフト指標に関連して運転者にスコア付けをする、または出力を生成させることができる。これらは、以下に詳述される。
【００７５】
この方法は、受け取られたポイントのセットに基づいて変換行列を初期化することを含むことができる（ブロック7０6）。変換行列の初期化は、変換行列の初期値の決定を含むことができる。
【００７６】
いくつかの実施形態では、変換行列を初期化することは、車両が高速道路を移動していることを示すトリガの検出に応じて、車両で収集された１つまたは複数の画像フレームを（例、ユーザインターフェースで）遠隔コンピューティングシステムに自動的に送信すること、車線マーキングポイントのセットをユーザに提案すること、並びに車線領域を示すポイントのセットをユーザから受け取りそしてこの受け取られたポイントのセットに基づいて変換行列を初期化すること、を含むことができる。
【００７７】
いくつかの実施形態では、変換行列の初期化は、１つ以上の画像フレームを記録しそしてそれを遠隔コンピューティングシステムへアップロードした後に、非同期で（例、非リアル−タイムで）実行させることが出来る。ここで、この１つ以上の画像フレームには、メタデータ（例、画像データ収集時に車両が高速道路を通過していたことを示すラベル、タグ、等）が関連付けられている。変換行列の初期化は、これに加えまたは代えて、コンピューティングシステム、自律システム、等によって自動的に実行させることも出来る。
【００７８】
特定の例では、画像フレームを遠隔コンピューティングデバイスに送信することは、車両が、高速道路運転に関する閾値速度（例、４５mph、５５mph、６５mph、等）を超えて運転していることの検出に応答して、画像フレームのセット（例、ビデオクリップ）をアップロードすること、遠隔コンピューティングシステムと通信しているユーザインターフェースでユーザから車線領域インジケータを受け取ること、そしてこの受け取られた車線領域インジケータに基づいて変換行列を初期化することを含む。この特定の例では、これは、車載システムの設置および／または調整後（例、設置後）に１回実行される。車載信号システムの調整は、慣性信号の監視（例、方向センサが、設置方向からの逸脱を検出する）、画像信号の監視（例、車両起動時に収集された画像の比較、および画像内のシーン間の静止オブジェクトの相対方向）により、検出させる、または他の方法で適切に決定させることが出来る。
【００７９】
この方法は、前方向フレーム内の車線領域を定義するポイントを、トップダウンフレーム内の車線領域を定義するポイントに変換する変換行列の値を生成することを含むことができる（ブロック７０８）。変換行列の生成は、前方向フレームの車線領域を定義するポイントを、トップダウンフレームの車線領域を定義するポイントに変換する変換行列の値を生成するように機能することができる。変換行列は、自車の運動学的データから（例、ジャイロスコープのデータから）、車線領域のポイントから、既知の車線幅（例、画像に関連付けられた地理的位置、自車速度に関連付けられた道路タイプ、等）、または他の適切なデータから、計算させることが出来る。
【００８０】
計算された変換行列は、
【数１】
2020115322.tif 000003
のような行列
【数２】
2020115322.tif 000004
を含むことができる。ここで、
【数３】
2020115322.tif 000005
は、前方向フレームの車線領域の頂点を定義する行列であり、
【数４】
2020115322.tif 000006
は、トップダウンフレームの車線領域の頂点を定義する行列である。しかしながら、計算される変換行列は、
【数５】
2020115322.tif 000007
のような行列
【数６】
2020115322.tif 000008
および／または他の適切な行列とすることが出来る。
【００８１】
この方法は、初期化された変換行列の更新行列を計算することを含むことができる（ブロック７１０）。例えば、行列
【数７】
2020115322.tif 000009
は、第１の画像フレームに関連付けられた第１の車線領域に対して初期化され、そして更新行列の計算には、
【数８】
2020115322.tif 000010
のような第１の画像フレームに続く第２の画像フレームに関連付けられた第２の車線領域に対する行列
【数９】
2020115322.tif 000011
の計算が含まれる。しかしながら、これに加えまたは代えて、更新行列を計算することは、他の適切な方法で変換行列を更新することを含むことができる。  
【００８２】
この方法は、変換行列に従って、前方向画像から決定された車線領域を、車線領域のトップダウン図に変換することを含むことができる（ブロック７１２）。この車線領域の変換は、変換行列の値を、前方向フレームの車線領域を定義するポイントに適用して、トップダウンフレームの車線領域を定義するポイントを計算するように機能することができる。この車線領域の変換は、行列乗算演算（例、左行列乗算において、前方向画像のポイントを定義する行列に変換行列を乗算する演算）によって実行させることが好ましいが、これに加えまたは代えて、適切な数学的変換によって実行させることも出来る。この車線領域の変換は、トップダウン表示から、車線領域内の車両を合成したビューを生成すること含むことが出来る。
【００８３】
（車線ドリフト指標に基づく後続アクションのパフォーマンス）
上述したように、車線ドリフト指標は、車両の車線位置に基づいて計算させることができる。これには、時間の関数として（例、時系列として）車線位置を測定することを含むことが出来る。所定のフレーム内の車線位置を計算する精度は、車線ドリフト指標の所望の精度閾値（例、複数の画像フレームにわたる車線位置の時間微分）に基づいて、いくつかの変形形態で緩和させることが出来る。
【００８４】
運転者には、車線ドリフト指標から導出された値をスコア付けする、またはそれに関連付けることができる。スコア／値は、ある期間中に運転者が車線領域内でシフトされている程度を示すことができる。これは、運転者が、車両を運転している間に自分の車線内でドリフトする程度に基づいて、運転者の運転スキルを定量化することができる。このスコア／値は、車線ドリフト指標をコンテキスト化し、そして車線ドリフト指標が決定されるコンテキストに基づいて、運転者にスコア付けをすることができる。このスコア／値は、運転者のスキル以外の運転者のパフォーマンスの他の側面（例、運転者の覚醒度、運転者の注意散漫、運転者のナビゲーション効率、運転者の安全性および／またはリスク回避、等）をスコア付けするためにも機能することができる。
【００８５】
車線ドリフト指標に基づくスコア付けは、車線ドリフト指標を、可能なスコアのスペクトル上の関連付けられているスコアに割り当てることを含むことが出来る。ここで、高いスコアは、低い車線ドリフト値に対応し、そして低いスコアは、高い車線ドリフトに対応する。代替変形形態では、この対応関係を逆にする、または適切にマッピングすることが出来る。スコア付けは、これに加えまたは代えて、車線ドリフト指標の「ビニング」に基づかせることが出来る。ここで、指標値の第１の範囲は、第１のスコアに対応し、指標値の第２の範囲は、第２のスコアに対応し、以下同様であり、これらは、スコアの離散セット（例、１−５のスケール、「優れた、良い、中庸、悪い、許容できないほど悪い」の値を含むセマンティックスケール、または他の適切なセマンティックスケール、等）に対応する。
【００８６】
これに加えまたは代えて、（例、本願に組み込まれている、前述の出願に記載されているように実質的に決定される）相関する車内イベントおよび車外イベントは、車線ドリフト指標を決定する際のコンテキストとして使用することが出来る。例えば、運転者のスコア／値の導出は、車載システムで収集されたセンサ信号（例、慣性センサ信号、室内画像、等）に基づいて、運転者が、注意散漫になっていると決定することと、決定された運転者の注意散漫と車線ドリフト指標の両方に基づいて運転者にスコアを付ける（例、運転者が、高度の車線ドリフトを示すことに加えて、運転者が、注意散漫になった場合、スコアは、所定の車線ドリフト指標に対し低くなる）こととを、含むことが出来る。
【００８７】
運転者のスコアは、経時的に（例、複数の運転セッションにわたって、一運転セッション内で、等）追跡させることが出来、そして運転者のスコア履歴を記録することができる。運転者のスコア履歴とそれに関する車線ドリフト指標は、将来の運転セッションで運転者スコアを決定するためのベースラインとして使用することが出来る。例えば、高いベースラインの車線ドリフトを示す運転者には、低いベースラインの車線ドリフトを示す運転者とは異なるスコアが付けられる。低いベースラインの車線ドリフトを示す運転者には、同じ車線ドリフト指標に対して低い（例、悪い）スコアを付ける（例、そしてベースライン車線ドリフトが高い運転者に対して相対差が大きくなる）ことが出来る。いくつかの実施形態では、運転者のスコアは、履歴データ（例、運転者の履歴スコア、運転スケジュールなどの他の履歴データ、交通違反記録、および他の適切なデータ、等）に基づかせることができる。
【００８８】
車両制御に関する出力は、車線ドリフト指標に基づいて生成させることができる。車両制御に関する出力の生成は、決定された車線ドリフト指標に基づいて、車両制御（例、直接的影響、間接的影響、等）に影響を与えることができる。車両制御に関する出力の生成は、車両制御信号として直接適用することが出来る、車線ドリフト指標に基づいている出力信号（例、ステアリングアクチュエータ、アクセル、スロットルアクチュエータ、サスペンションアクチュエータのような制御アクチュエータを駆動する信号）を生成するように機能することも出来る。車両制御に関する出力の生成は、制御に関するメッセージ（例、可聴アラート、視覚的警告、制御命令付きのオーディオビデオ信号、等）を、車両運転者に提供するように機能することも出来る。
【００８９】
車両制御に関する出力は、車線ドリフト指標に基づいて車両制御信号を生成し、そしてこの車両制御信号に基づいて車両を自動的に制御することを含む。例えば、車両制御に関する出力には、車線ドリフト指標を閾値未満に維持する（例、車線逸脱を防止する、旋回を減らす、等の）ために、車両の操舵可能な車輪のステアリング角度を制御することが含まれる。ステアリング角度の制御は、ステアリング入力が閾値入力を超えることを阻止すること（例、ホイールを「ジャークすること」）を含むことが出来、これは、実質的にリアル−タイムで、完全にリアル−タイムで、および／または他の適切な時間的特性またはレートで実行させることが出来る。
【００９０】
別の例では、車両制御に関する出力は、車線ドリフト指標が閾値を超えることに基づいて、（例、運転者が、運転中に自分の車線をドリフトしている程度に基づいて、運転者が、決定された速度制限を超えて運転することを防ぐために）車両の速度を制御する（例、速度を制限する）ことを含む。別の特定例では、車両制御に関する出力を生成することは、（例、人間の運転者によって提供される）ステアリング入力に支障をきたすことなく車線逸脱を防止するために、決定された車線領域と一致する仮想「バンパ」を強制することを含むことが出来る。しかしながら、車両制御に関する出力の生成は、これに加えまたは代えて、車線ドリフト指標に基づいて、適切な車両制御信号（例、ブレーキ信号、ステアリング信号、加速度信号、等）を生成し、そして他の適切な方法でこの車両制御信号に基づいて自動的に車両を制御することも含むことが出来る。
【００９１】
車両制御に関する出力は、車線ドリフト指標に基づいて、車両オペレーション特性を自動的に修正することを含むことができる。車両制御出力のこのように修正された車両オペレーション特性は、サスペンション剛性、ブレーキ応答性、ステアリング応答性、および他の適切な特性を含むことが出来る。例えば、車両制御に関する出力は、閾値を超える車線ドリフト指標に基づいて、（例、ステアリングホイールへの運転者入力による車線内の変動を防ぐため）車両のステアリング応答性を低下させることを含むことが出来る。別の例では、車両制御に関する出力は、車線ドリフト指標が閾値を超えることに基づいて、（例、制御の推定、予測、および／または運転者の車両制御に対する認識不足による急速な減速と停止を可能にするため）ブレーキの応答性を高めることを含むことが出来る。さらなる例では、車両制御に関する出力は、車線ドリフト指標に基づく高度な運転者支援システムおよび／または機能の実装（例、自動ブレーキ、衝突回避、衝突対応、等）を含むことが出来る。しかしながら、車両制御に関する出力は、他の適切な方法で、車線ドリフト指標に基づいて他の適切な車両オペレーション特性を適切に変更することを含むことが出来る。
【００９２】
車両制御に関する出力は、車両制御に関するメッセージを生成し、そしてそのメッセージを車両運転者に提供することを含むことができる。メッセージには、警告、アラート、指示（例、ナビゲーション指示、制御指示、等）、通知、および／または車両制御に関する他の適切なタイプの情報を含めることが出来る。メッセージの提供は、車載車両システム（例、ビープ音のような音声警告を提供するスピーカ、点滅ライトのような視覚アラートを提供するライト、方向矢印のような視覚指示を提供するディスプレイ、等）の出力、（例、運転者に関連付けられている、車載システムと通信している、等の）車両内のモバイルデバイスの出力、および／または他の適切な出力またはユーザインターフェースの出力で実行させることが出来る。一例として、車両制御に関する出力は、車線ドリフト指標が対応する閾値のシリーズを超えることに基づいて、音量が大きくなるビープ音である聴覚警告の段階的なシリーズを提供する（例、運転者が、運転者の車線内でドリフトし過ぎであることを、運転者に警告する）ことを含むことが出来る。別の例では、車両制御に関する出力は、瞬間的な車線ドリフト指標に応じて様々な色の視覚信号（例、光）を発する（例、緑色の光は、閾値未満の車線ドリフト指標に対応し、黄色の光は、閾値を超える車線ドリフト指標に対応し、そして赤色の光は、許容できないほど高い車線ドリフト指標に対応する、等）ことを含む。しかしながら、車両制御に関する出力は、これに加えまたは代えて、車線ドリフト指標に基づいて適切なモダリティで適切なメッセージを生成し、そして他の適切な方法で運転者にメッセージを提供することを含むことが出来る。
【００９３】
図８は、車両の車線位置に基づいて、車両の位置決めを制御する出力アクションを実行する例示的な方法８００のブロック図を示す。この方法は、車両に搭載された車載コンピューティングデバイスおよび／または遠隔コンピューティングデバイスの何れかによって実装させることができる。この車載コンピューティングデバイスは、無線通信インターフェース（例、Ｗｉ−Ｆｉ、セルラネットワーク）を介して遠隔コンピューティングデバイスと無線で通信するように構成させることができる。
【００９４】
第１のフレームは、トリガイベントに応答して、取得させることができる。このトリガイベントは、車両が、道路を示す地理的位置内にあることを決定すること、および車両の加速度が、閾値を超えることを決定すること、を含むことができる。
【００９５】
この方法は、車両に搭載された撮像デバイスによって捕捉された、車両を取り巻く環境の第１の画像の第１のフレームを取得することを含むことができる（ブロック８０２）。第１の画像は、図２Ａに示される画像２１２のように、車両を取り巻く環境の前方向表示で示すことができる。
【００９６】
期間（例、１分、１０分）中に環境の複数の画像を提供する画像のストリームを、取得することができる。
【００９７】
この方法は、第１のフレームを検査して、道路の車線マーキングを示すピクセルバンドを識別することを含むことができる（ブロック８０４）。このピクセルバンドは、例えば、図２Aで識別されるバンド２１6ａ−ｂを含むことができる。いくつかの実施形態では、この方法は、期間中に識別されたピクセルバンドのシリーズを集合することを含むことができる。ここで、車線領域はピクセルバンドのシリーズに基づいて抽出される。
【００９８】
この方法は、ピクセルバンドの複数のセットにわたる複数のトレンドラインを決定することを含むことができる。ここで、各トレンドラインは車線マーキングを含み、そして車線ドリフト指標は、車両が、期間中に決定された車線マーキングに基づいて、期間中に車線領域の中心から逸脱する頻度を示す。
【００９９】
いくつかの実施形態では、ピクセルバンドを識別することは、閾値強度を超える、第１の画像内の他のピクセルに対してコントラスト強度を有する第１の画像のピクセルを検出することを含む。ここで、このピクセルバンドの各ピクセルは、閾値強度を超えるコントラスト強度を有するピクセルを含む。
【０１００】
いくつかの実施形態では、この方法は、車線マーキングの既定の特性のシリーズに基づいて、第１のフレームから車線マーキングの水平位置を抽出することを含むことができる。この車線マーキングの既定の特性は、これらの車線マーキングが実質的に直線であることの表示、道路が実質的に平坦であることの表示、および車線マーキングが閾値範囲内の幅を含むことの表示、の何れかを含む。
【０１０１】
この方法は、識別されたピクセルバンドに基づいて、道路の識別された各車線マーキングによって境界付けられた車線領域を抽出することを含むことができる（ブロック８０６）。例示的な車線領域は、図２Ａに関して説明したように、車線マーカ２０８ａ−ｂ間の領域を含むことができる。
【０１０２】
いくつかの実施形態では、この方法は、車線マーキングの既定の特性のシリーズに基づいて、第１の画像から車線マーキングの水平位置を抽出することを含むことができる。
【０１０３】
いくつかの実施形態では、この方法は、車線領域を識別するように構成された訓練済み分類モデルへの入力としてピクセルバンドを提供し、そしてこの訓練済み分類モデルから車線領域に関する情報を受け取ることを含むことができる。ここで、当該車線領域の抽出は、この訓練された分類モデルから受け取られた車線領域に関する情報を検査することに基づく。
【０１０４】
この方法は、第１の画像で識別された、抽出された車線領域を、車線領域内の車両の第２の表示を提供する第２の画像に、変換するように構成されている変換行列を生成することを含むことができる（ブロック８０８）。この車線領域内の車両のトップダウン図を描写する例示的な第２の画像は、図5に示されるようなブロック図5００を含む。
【０１０５】
いくつかの実施形態では、この方法は、行列乗算演算を実行して、画像の第１フレームを定義する行列に、変換行列を乗算することを含むことができる。
【０１０６】
この方法は、変換行列を使用して、識別されて、抽出された車線領域を、第１の画像から第２の画像に変換することを含むことができる（ブロック８１０）。いくつかの実施形態では、この方法は、変換行列の生成に組み込むことができる、車両を取り巻く環境の既定の特徴のセットを利用することを含むことができる。
【０１０７】
この方法は、第２の画像における車線領域に関する車両の位置に基づいて、車線領域の中心に対する車両のオフセットを示す車線ドリフト指標を決定することを含むことができる（ブロック８１２）。
【０１０８】
この車線ドリフト指標は、期間中に識別されて、集合されたピクセルバンドのシリーズに基づいて、期間中に車両が車線領域の中心から離れる頻度を示すことができる。
【０１０９】
車線ドリフト指標を決定することは、２回目に車両を取り巻く環境を描写する第１の画像の第２のフレームを取得し、この第２のフレーム内のピクセルバンドを識別するために第２のフレームを検査し、この第２フレーム内で識別されたピクセルバンドに基づいて更新された車線領域を抽出し、車線領域とこの更新された車線領域との間の車線マーキングに含まれる水平重心の相対位置の変化を決定する。ここで、車線ドリフト指標は、決定された変化に基づいて決定させることができる。
【０１１０】
いくつかの実施形態では、車線ドリフト指標は、車線ドリフトモデルに基づいて決定される。ここで、この車線ドリフトモデルへの入力は、コンテキストパラメータおよび車線領域を含むことができ、そしてこの車線ドリフトモデルは、入力に基づいて車線ドリフト指標を出力するように構成させることができる。
【０１１１】
この方法は、決定された車線ドリフト指標に基づいて、車両制御に関する出力を生成することを含むことができる（ブロック８１４）。いくつかの実施形態では、この方法は、車両制御に関連する、生成された出力に従って、車線領域内の車両の車線位置を修正するように構成された車両アクションを実行することを含むことができる。
【０１１２】
この方法は、車線ドリフト指標に基づいて、運転者スコアを生成することを含むことができ、この運転者スコアは、車両の運転者が、期間中に車線領域内で車両をシフトさせた程度を示すことができる。
【０１１３】
（処理システムの例）
図９は、本明細書で説明する少なくともいくつかの演算を実施することができる処理システム９００の一例を示すブロック図である。図９に示されるように、処理システム９００は、１つ以上の中央処理装置（「プロセッサ」）９０２、メインメモリ９０６、不揮発性メモリ９１０、ネットワークアダプタ９１２（例、ネットワークインターフェース）、ビデオディスプレイ９１８、入力、入／出力デバイス９２０、制御デバイス９２２（例、キーボードおよびポインティングデバイス）、記憶媒体９２６を含む駆動ユニット９２４、およびバス９１６に通信可能に接続される信号生成デバイス９３０、を含むことができる。バス９１６は、１つ以上の個別の物理バス、ポイントツーポイント接続、または適切なブリッジ、アダプタ、またはコントローラによって接続されたその両方を表す抽象として示される。したがって、バス９１６は、例えば、システムバス、周辺機器相互接続（ＰＣＩ）バスまたはＰＣＩエクスプレスバス、ハイパートランスポート（HyperTransport）または産業標準アーキテクチャ（ＩＳＡ: industry standard architecture）バス、小型コンピュータシステムインターフェース（ＳＣＳＩ: small computer system interface）バス、ユニバーサルシリアルバス（ＵＳＢ: universal serial bus）、ＩＩＣ（I２C）バス、または米国電気電子学会（ＩＥＥＥ: Institute of Electrical and Electronics Engineers）標準の１３９４バス（「Fｉｒｅｗｉｒｅ」とも呼ばれる）を含むことが出来る。
【０１１４】
様々な実施形態において、処理システム９００は、（例、有線または無線で）ユーザデバイスに接続させることもできるが、この処理システム９００は、ユーザデバイスの一部としても動作することができる。ネットワーク化された展開では、処理システム9００は、クライアント／サーバネットワーク環境におけるサーバまたはクライアントマシンとして、またはピアツーピア（または分散）ネットワーク環境のピアマシンとして動作することができる。
【０１１５】
処理システム９００は、サーバコンピュータ、クライアントコンピュータ、パーソナルコンピュータ、タブレット、ラップトップコンピュータ、携帯情報端末（ＰＤＡ）、携帯電話、プロセッサ、ウェブアプライアンス、ネットワークルータ、スイッチまたはブリッジ、コンソール、ハンドヘルドコンソール、ゲームデバイス、音楽プレーヤー、ネットワーク接続（「スマート」）テレビ、テレビ接続デバイス、またはマシン処理システム9００によって実行されるアクションを指定する（シーケンシャルまたは他の）命令セットを実行することができる任意のポータブルデバイスまたはマシンとすることができる。
【０１１６】
メインメモリ９０６、不揮発性メモリ９１０、および記憶媒体９２６（「機械可読媒体」とも呼ばれる）は、単一の媒体として示されているが、「機械可読媒体」および「記憶媒体」という用語は、１つ以上の命令のセット９２８を格納する単一または複数の媒体（例、集中型または分散型データベース、および／または関連するキャッシュおよびサーバ）を含むと解釈されるべきである。また、「機械可読媒体」および「記憶媒体」という用語は、コンピューティングシステムによる実行のための命令セットを保存、エンコード、または保持することができ、そして本明細書で開示されている実施形態の方法の１つまたは複数をコンピューティングシステムに実行する、任意の媒体を含むものと解すべきである。
【０１１７】
一般に、本開示の実施形態を実装するために実行されるルーチンは、オペレーティングシステムまたは特定アプリケーション、コンポーネント、プログラム、オブジェクト、モジュール、または「コンピュータプログラム」と呼ばれる命令のシーケンスの部分として実装させることができる。コンピュータプログラムは、通常、さまざまな時点で、コンピュータ内のさまざまなメモリおよび記憶装置内で設定される１つまたは複数の命令（例、命令9０4、9０８、9２８）を備え、そして１つまたは複数の処理ユニットまたはプロセッサ9０２によって読み取られて実行されると、本開示の様々な態様に関係する要素を実行させるために、処理システム９００に演算を実行させる。
【０１１８】
さらに、実施形態は、完全に機能するコンピュータおよびコンピュータシステムの文脈で説明されて来たが、当業者は、様々な実施形態が、プログラム製品として様々な形態で配布できること、およびこの開示が、実際に配信を行うために使用される特定のタイプのマシンまたはコンピュータ読み取り可能なメディアに関係なく、等しく適用されることを理解するであろう。例えば、本明細書で説明される技術は、仮想マシンまたはクラウドコンピューティングサービスを使用して実装させることが出来るであろう。
【０１１９】
機械可読記憶媒体、機械可読媒体、またはコンピュータ可読（記憶）媒体のさらなる例には、これらに限定されることはないが、揮発性および不揮発性メモリデバイス９１０、フロッピのような記録可能なタイプの媒体、リムーバブルディスク、ハードディスクドライブ、光ディスク（例、コンパクトディスク読み取り専用メモリ（ＣＤ  ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ））、およびデジタルおよびアナログ通信リンクのような伝送タイプのメディアが、含まれる。
【０１２０】
ネットワークアダプタ９１２により、処理システム９００は、処理システム９００および外部エンティティによってサポートされる任意の既知および／または便利な通信プロトコルを介して、ネットワーク９１４内のデータを、処理システム９００の外部にあるエンティティに仲介することができる。ネットワークアダプタ９１２は、ネットワークアダプタカード、無線ネットワークインターフェースカード、ルータ、アクセスポイント、無線ルータ、スイッチ、多層スイッチ、プロトコルコンバータ、ゲートウェイ、ブリッジ、ブリッジ、ルータ、ハブ、デジタルメディアレシーバ、リピータのうちの１つ以上を含むことができる。
【０１２１】
ネットワークアダプタ９１２は、いくつかの実施形態では、コンピュータネットワーク内のデータへのアクセス／プロキシの許可を運営および／または管理し、異なるマシンおよび／またはアプリケーション間の様々な信頼レベルを追跡することができるファイアウォールを含むことが出来る。ファイアウォールは、マシンとアプリケーション、マシンとマシン、および／またはアプリケーションとアプリケーションの特定のセットの間に既定のアクセス権のセットを実施する（例えば、これらのさまざまなエンティティ間で共有されるトラフィックとリソースのフローを調整する）ことができるハードウェアおよび／またはソフトウェアコンポーネントの任意の組み合わせを持つ任意の数のモジュールとすることが出来る。ファイアウォールは、加えて、例えば、個人、マシン、および／または演算によるオブジェクトのアクセス権と演算権を含む許可および許可が与えられる状況を詳述するアクセス制御リストへのアクセス制御を管理および／または有することができる。
【０１２２】
上述したように、本明細書で紹介される技術は、例えば、ソフトウェアおよび／またはファームウェアでプログラムされたプログラム可能な回路（例、１つ以上のマイクロプロセッサ）によって完全に専用ハードワイヤード（すなわち、プログラム不能な）回路、またはこれらの組み合わせなどの形式で実装される。専用回路は、例えば、１つ以上の推定用途向け集積回路（ＡＳＩＣ）、プログラマブルロジックデバイス（ＰＬＤ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）などの形式にすることが出来る。
【０１２３】
上記から、本発明の推定の実施形態が例示の目的で本明細書に記載されて来たが、本発明の範囲から逸脱することなく様々な修正を行うことができることは理解されるであろう。したがって、本発明は、添付の特許請求の範囲による場合を除いて限定されることはない。
【０１２４】
（ 関連出願への相互参照）
本出願は、発明の名称が「車両の位置推定のためのシステムと方法」でありかつ２０１８年１１月１9日に出願された米国仮特許出願シリアル番号第６２ ／７６９、５０１号（これは、本参照によりその全体が本願に組み込まれている）に関する優先権を主張する。
【図１】
2020115322.tif 000012
【図２Ａ】
2020115322.tif 000013
【図２Ｂ】
2020115322.tif 000014
【図３】
2020115322.tif 000015
【図４】
2020115322.tif 000016
【図５】
2020115322.tif 000017
【図６】
2020115322.tif 000018
【図７】
2020115322.tif 000019
【図８】
2020115322.tif 000020
【図９】
2020115322.tif 000021
【外国語明細書】
2020115322000001.pdf
2020115322000002.pdf
2020115322000003.pdf
2020115322000004.pdf