(57)【要約】  本開示は、車両を走行させるシステムおよび方法に関する。一実装例において、少なくとも１つの処理デバイスは、第１のデータ源からの第１の出力と、第２のデータ源からの第２の出力とを受信し得、第１の出力における目標オブジェクトの表現を識別し得、目標オブジェクトの特性が少なくとも１つの走行制約を引き起こすかどうか判定し得、少なくとも１つの走行制約が目標オブジェクトの特性によって引き起こされない場合、第１の出力および第２の出力の組み合わせに基づいて目標オブジェクトの表現の識別を検証し、少なくとも１つの走行制約が目標オブジェクトの特性によって引き起こされる場合、第１の出力に基づいて目標オブジェクトの表現の識別を検証し、検証に応答して、車両への少なくとも１つの走行変化を生じさせる。
2020523660.tif 000002
【特許請求の範囲】
【請求項１】
ホスト車両のための走行システムであって、前記走行システムは、
前記ホスト車両に関連づけられた第１のデータ源からの第１の出力と、前記ホスト車両に関連づけられた第２のデータ源からの第２の出力とを受信することであって、前記第１のデータ源および前記第２のデータ源のうち少なくとも一方は、前記ホスト車両に搭載されたセンサを含む、受信することと、
前記第１の出力において目標オブジェクトの表現を識別することと、
前記目標オブジェクトの特性が、少なくとも１つの走行制約を引き起こすかどうか判定することと、
前記少なくとも１つの走行制約が、前記目標オブジェクトの前記特性によって引き起こされない場合、前記第１の出力および前記第２の出力の組み合わせに基づいて前記目標オブジェクトの前記表現の前記識別を検証することと、
前記少なくとも１つの走行制約が、前記目標オブジェクトの前記特性によって引き起こされる場合、前記第１の出力に基づいて前記目標オブジェクトの前記表現の前記識別を検証することと、
前記検証に応答して、前記ホスト車両への少なくとも１つの走行変化を生じさせることと、
を行うようにプログラムされた、少なくとも１つの処理デバイスを備える、走行システム。
【請求項２】
前記少なくとも１つの走行変化は、前記ホスト車両を減速させることを含む、請求項１に記載の走行システム。
【請求項３】
前記少なくとも１つの走行変化は、前記ホスト車両を加速させることを含む、請求項１または２に記載の走行システム。
【請求項４】
前記少なくとも１つの走行変化は、前記ホスト車両のステアリング機構を作動させることを含む、請求項１から３のいずれか一項に記載の走行システム。
【請求項５】
前記第１のデータ源は、前記ホスト車両に搭載されたカメラ、ライダ、またはレーダのうち少なくとも１つを含む、請求項１から４のいずれか一項に記載の走行システム。
【請求項６】
前記第２のデータ源は、前記少なくとも１つの処理デバイスによってアクセスされる地図データを含む、請求項１から５のいずれか一項に記載の走行システム。
【請求項７】
前記第１の出力および前記第２の出力の前記組み合わせに基づいて前記目標オブジェクトの前記表現の前記識別を検証することは、前記目標オブジェクトの表現が前記第１の出力および前記第２の出力の両者において識別されるかどうか判定することを含む、請求項１から６のいずれか一項に記載の走行システム。
【請求項８】
前記第１の出力および前記第２の出力の前記組み合わせに基づいて前記目標オブジェクトの前記表現の前記識別を検証することは、前記第１の出力に射影された前記第２の出力を用いて前記目標オブジェクトの前記特性を判定することを含む、請求項１から７のいずれか一項に記載の走行システム。
【請求項９】
前記第２の出力は、地図データを含み、前記第１の出力は、前記ホスト車両の環境の少なくとも１つのイメージを含み、前記射影は、前記地図データを用いて前記少なくとも１つのイメージにおいて１または複数の道路縁部を検出することを含む、請求項８に記載の走行システム。
【請求項１０】
前記第２の出力は、ライダからの出力を含み、前記第１の出力は、前記ホスト車両の環境の少なくとも１つのイメージを含み、前記射影は、前記第２の出力を用いて前記少なくとも１つのイメージにおけるフリースペースを検出することを含む、請求項８に記載の走行システム。
【請求項１１】
前記目標オブジェクトの前記特性は、前記目標オブジェクトのサイズを含む、請求項１から１０のいずれか一項に記載の走行システム。
【請求項１２】
前記目標オブジェクトの前記特性は、前記ホスト車両から前記目標オブジェクトへの距離を含む、請求項１から１１のいずれか一項に記載の走行システム。
【請求項１３】
前記目標オブジェクトの前記特性は、前記ホスト車両の環境における前記目標オブジェクトの位置を含む、請求項１から１２のいずれか一項に記載の走行システム。
【請求項１４】
ホスト車両を走行させるコンピュータ実装方法であって、
前記ホスト車両に関連づけられた第１のデータ源からの第１の出力と、前記ホスト車両に関連づけられた第２のデータ源からの第２の出力とを受信する段階であって、前記第１のデータ源および前記第２のデータ源のうち少なくとも一方は、前記ホスト車両に搭載されたセンサを含む、段階と、
前記第１の出力において、目標オブジェクトの表現を識別する段階と、
前記目標オブジェクトの特性が、少なくとも１つの走行制約を引き起こすかどうか判定する段階と、
前記少なくとも１つの走行制約が、前記目標オブジェクトの前記特性によって引き起こされない場合、前記第１の出力および前記第２の出力の組み合わせに基づいて前記目標オブジェクトの前記表現の前記識別を検証する段階と、
前記少なくとも１つの走行制約が、前記目標オブジェクトの前記特性によって引き起こされる場合、前記第１の出力に基づいて前記目標オブジェクトの前記表現の前記識別を検証する段階と、
前記検証に応答して、前記ホスト車両への少なくとも１つの走行変化を生じさせる段階と
を備える、方法。
【請求項１５】
前記少なくとも１つの走行変化は、前記ホスト車両を減速させること、前記ホスト車両を加速させること、または、前記ホスト車両のステアリング機構を作動させることのうち少なくとも１つを含む、請求項１４に記載の方法。
【請求項１６】
前記第１のデータ源は、前記ホスト車両に搭載されたカメラ、ライダ、またはレーダのうち少なくとも１つを含む、請求項１４または１５に記載の方法。
【請求項１７】
前記第２のデータ源は、前記少なくとも１つの処理デバイスによってアクセスされる地図データを含む、請求項１４から１６のいずれか一項に記載の方法。
【請求項１８】
前記第１の出力および前記第２の出力の前記組み合わせに基づいて前記目標オブジェクトの前記表現の前記識別を検証する段階は、前記目標オブジェクトの表現が前記第１の出力および前記第２の出力の両者において識別されるかどうか判定することを含む、請求項１４から１７のいずれか一項に記載の方法。
【請求項１９】
前記第１の出力および前記第２の出力の前記組み合わせに基づいて前記目標オブジェクトの前記表現の前記識別を検証する段階は、前記第１の出力に射影された前記第２の出力を用いて前記目標オブジェクトの前記特性を判定することを含む、請求項１４から１８のいずれか一項に記載の方法。
【請求項２０】
少なくとも１つの処理デバイスに、
ホスト車両に関連づけられた第１のデータ源からの第１の出力と、前記ホスト車両に関連づけられた第２のデータ源からの第２の出力を受信する手順であって、前記第１のデータ源および前記第２のデータ源のうち少なくとも一方は、前記ホスト車両に搭載されたセンサを含む、手順と、
前記第１の出力において目標オブジェクトの表現を識別する手順と、
前記目標オブジェクトの特性が、少なくとも１つの走行制約を引き起こすかどうか判定する手順と、
前記少なくとも１つの走行制約が、前記目標オブジェクトの前記特性によって引き起こされない場合、前記第１の出力および前記第２の出力の組み合わせに基づいて前記目標オブジェクトの前記表現の前記識別を検証する手順と、
前記少なくとも１つの走行制約が、前記目標オブジェクトの前記特性によって引き起こされる場合、前記第１の出力に基づいて前記目標オブジェクトの前記表現の前記識別を検証する手順と、
前記検証に応答して、前記ホスト車両への前記少なくとも１つの走行変化を生じさせる手順と、
を実行させるためのプログラム。
【請求項２１】
サーバに、
複数の車両から走行情報を受信する手順であって、前記複数の車両からの前記走行情報は、共通道路セグメントに関連づけられる、手順と、
共通道路セグメントにローカルな座標系内での前記走行情報を調整する手順であって、前記ローカルな座標系は、前記複数の車両に含まれるイメージセンサによって取り込まれる複数のイメージに基づく座標系を含む、手順と、
調整された前記走行情報を、前記共通道路セグメントに関連づけて格納する手順と、
前記共通道路セグメントに沿って１または複数の自律走行車両を自律的に走行させる際の使用のために、前記１または複数の自律走行車両に、調整された前記走行情報を分配する手順と、
を実行させるためのプログラム。
【請求項２２】
前記走行情報は、コンピュータネットワークを介して受信される、請求項２１に記載のプログラム。
【請求項２３】
前記走行情報は、グローバルポジショニングシステム（ＧＰＳ）情報を含む、請求項２１または２２に記載のプログラム。
【請求項２４】
前記走行情報は、前記複数の車両に含まれる前記イメージセンサによって取り込まれたイメージに含まれる１または複数のランドマークを含む、請求項２１から２３のいずれか一項に記載のプログラム。
【請求項２５】
前記走行情報を調整することは、前記１または複数のランドマークに基づく、請求項２４に記載のプログラム。
【請求項２６】
前記１または複数のランドマークは、前記共通道路セグメントに沿った可視オブジェクトを含む、請求項２４または２５に記載のプログラム。
【請求項２７】
前記可視オブジェクトは、路面標示および道路標識のうち少なくとも１つを含む、請求項２６に記載のプログラム。
【請求項２８】
前記サーバに、
前記調整された走行情報をグローバルな座標のセットに外挿する手順と、
グローバルに調整された前記走行情報を、前記共通道路セグメントに関連づけて格納する手順と、
をさらに実行させる、請求項２１から２７のいずれか一項に記載のプログラム。
【請求項２９】
前記複数の車両は、特定の期間の最中に前記走行情報を取り込む、請求項２１から２８のいずれか一項に記載のプログラム。
【請求項３０】
前記サーバに、
第２の複数の車両から追加走行情報を受信する手順であって、前記第２の複数の車両からの前記追加走行情報は、第２の期間の最中に取り込まれ、前記共通道路セグメントに関連づけられる、手順と、
前記共通道路セグメントにローカルな座標系内で前記追加走行情報を調整する手順であって、前記ローカルな座標系は、前記第２の複数の車両に含まれるイメージセンサによって取り込まれた複数のイメージに基づく座標系を含む、手順と、
調整された前記追加走行情報を、前記共通道路セグメントに関連づけて格納する手順と、
をさらに実行させる、請求項２９に記載のプログラム。
【請求項３１】
前記サーバに、
調整された前記走行情報および調整された前記追加走行情報を、グローバルな座標のセットに外挿する手順と、
グローバルに調整された前記走行情報および前記追加走行情報を、前記共通道路セグメントに関連づけて格納する手順と、
をさらに実行させる、請求項３０に記載のプログラム。
【請求項３２】
前記複数の車両は、ある回数の運転の間に前記走行情報を取り込み、運転の前記回数は、運転の回数の閾値を超えない、請求項２１から３１のいずれか一項に記載のプログラム。
【請求項３３】
前記サーバに、
第２の複数の車両からの追加走行情報を受信する手順であって、前記第２の複数の車両からの前記追加走行情報は、追加の運転を介して取り込まれ、前記共通道路セグメントに関連づけられる、手順と
前記共通道路セグメントにローカルな座標系内で前記追加走行情報を調整する手順であって、前記ローカルな座標系は、前記第２の複数の車両に含まれるイメージセンサによって取り込まれる複数のイメージに基づく座標系を含む、手順と
調整された前記追加走行情報を、前記共通道路セグメントに関連づけて格納する手順と、
をさらに実行させる、請求項３２に記載のプログラム。
【請求項３４】
前記サーバに、
調整された前記走行情報および調整された前記追加走行情報をグローバルな座標のセットに外挿する手順と、
グローバルに調整された前記走行情報および前記追加走行情報を、前記共通道路セグメントに関連づけて格納する手順と、
をさらに実行させる、請求項３３に記載のプログラム。
【請求項３５】
複数の車両からの走行情報を調整するサーバであって、
前記複数の車両から走行情報を受信することであって、前記複数の車両からの前記走行情報は共通道路セグメントに関連づけられる、受信することと、
前記共通道路セグメントにローカルな座標系内で走行情報を調整することであって、前記ローカルな座標系は前記複数の車両に含まれるイメージセンサによって取り込まれた複数のイメージに基づく座標系を含む、調整することと、
調整された前記走行情報を、前記共通道路セグメントに関連づけて格納することと、
前記共通道路セグメントに沿って１または複数の自律走行車両を自律的に走行させる際の使用のために、前記１または複数の自律走行車両に、調整された前記走行情報を分配することと、
を行わせるようにプログラムされる少なくとも１つの処理デバイスを備える、サーバ。
【請求項３６】
前記少なくとも１つの処理デバイスは、
調整された前記走行情報をグローバルな座標のセットに外挿することと、
グローバルに調整された前記走行情報を前記共通道路セグメントに関連づけて格納することと、
をさらに行わせるようにプログラムされる、請求項３５に記載のサーバ。
【請求項３７】
前記複数の車両は、特定の期間の最中に前記走行情報を取り込み、前記少なくとも１つの処理デバイスは、
第２の複数の車両から追加走行情報を受信することであって、前記第２の複数の車両からの前記追加走行情報は、第２の期間の最中に取り込まれ、前記共通道路セグメントに関連づけられる、受信することと、
前記共通道路セグメントにローカルな座標系内で前記追加走行情報を調整することであって、前記ローカルな座標系は、前記第２の複数の車両に含まれるイメージセンサによって取り込まれる複数のイメージに基づく座標系を含む、調整することと、
調整された前記追加走行情報を、前記共通道路セグメントに関連づけて格納することと、
をさらに行わせるようにプログラムされる、請求項３５または３６に記載のサーバ。
【請求項３８】
前記複数の車両は、ある回数の運転の間に前記走行情報を取り込み、運転の前記回数は運転の回数の閾値を超えず、前記少なくとも１つの処理デバイスは、
第２の複数の車両から追加走行情報を受信することであって、前記第２の複数の車両からの前記追加走行情報は、追加の運転を介して取り込まれ、共通道路セグメントに関連づけられる、受信することと、
前記共通道路セグメントにローカルな座標系内で前記追加走行情報を調整することであって、前記ローカルな座標系は、前記第２の複数の車両に含まれるイメージセンサによって取り込まれる複数のイメージに基づく座標系を含む、調整することと、
調整された前記追加走行情報を、前記共通道路セグメントに関連づけて格納することと、
を行わせるようにさらにプログラムされる、請求項３５から３７のいずれか一項に記載のサーバ。
【請求項３９】
前記走行情報は、グローバルポジショニングシステム（ＧＰＳ）情報と、前記複数の車両に含まれる前記イメージセンサによって取り込まれたイメージに含まれる１または複数のランドマークとを含む、請求項３５から３８のいずれか一項に記載のサーバ。
【請求項４０】
複数の車両からの走行情報を調整するコンピュータ実装方法であって、
前記複数の車両から前記走行情報を受信する段階であって、前記複数の車両からの前記走行情報は、共通道路セグメントに関連づけられる、段階と、
前記共通道路セグメントにローカルな座標系内で前記走行情報を調整する段階であって、前記ローカルな座標系は、前記複数の車両に含まれるイメージセンサによって取り込まれた複数のイメージに基づく座標系を含む、段階と、
調整された前記走行情報を、前記共通道路セグメントに関連づけて格納する段階と、
前記共通道路セグメントに沿って１または複数の自律走行車両を自律的に走行させる際の使用のために、前記１または複数の自律走行車両に、前記調整された走行情報を分配する段階と、
を備える、方法。
【発明の詳細な説明】
【背景技術】
【０００１】
［関連出願の相互参照］
本出願は、２０１７年６月１４日に出願された、米国仮特許出願第６２／５１９，４７１号、および、２０１７年６月１４日に出願された、米国仮特許出願第６２／５１９，４９３号の優先権の利益を主張する。上記出願のすべては、それらの全体において、参照により本明細書に組み込まれる。
【技術分野】
【０００２】
本開示は、一般に、自律走行車両の走行に関する。
［背景情報］
【０００３】
技術が進展し続けるにつれ、車道上を走行することが可能な完全自律走行車両の目標の兆しが見えてきた。自律走行車両は、意図された目的地に安全にかつ正確に達するように、様々な要因を考慮に入れ、それらの要因に基づいて適切な決定を行う必要があり得る。例えば、自律走行車両は、視覚情報（例えば、カメラから取り込まれた情報）を処理および解釈する必要があり得、また、他の源（例えば、ＧＰＳデバイス、速度センサ、加速度計、サスペンションセンサなど）から取得された情報を使用し得る。同時に、目的地へ走行するように、自律走行車両はまた、特定の道路（例えば、複数車線道路のうちの特定の車線）内でのその位置を識別し、他の車両と一緒に走行し、障害物および歩行者を回避し、交通信号および標識を観測し、適切な交差点またはインターチェンジで道路から別の道路へ移動する必要があり得る。自律走行車両がその目的地へと移動するにつれて車両によって収集される莫大な量の情報を利用および解釈することは、たくさんの設計課題をもたらす。自律走行車両が分析、アクセス、および／または、格納する必要があり得る完全な件数のデータ（例えば、取り込まれたイメージデータ、地図データ、ＧＰＳデータ、センサデータなど）は、自律走行を実際に制限し得る、または悪影響さえも与え得る、という課題をもたらす。さらに、自律走行車両が走行するために従来のマッピング技術に依拠する場合、地図を格納および更新するために必要とされる完全な量のデータが、困難な課題をもたらす。
【０００４】
地図を更新するためのデータの収集に加えて、自律走行車両は、走行のために地図の使用を可能にしなければならない。したがって、地図のサイズおよび詳細は、それらの構築および伝送と同様に、最適化されなければならない。さらに、自律走行車両は、地図を用いることと同様に、その搭乗者および車道上の他の運転者および歩行者の安全性を確実にするために、車両の周囲のものに基づいた制約を用いて走行しなければならない。
【発明の概要】
【０００５】
本開示と合致する実施形態は、自律走行車両の走行のためのシステムおよび方法を提供する。開示される実施形態は、自律走行車両の走行の特徴を提供するためにカメラを使用し得る。例えば、開示される実施形態に合致するように、開示されるシステムは、車両の環境を監視する１つ、２つ、またはそれ以上のカメラを含み得る。開示されるシステムは、例えば、カメラのうち１または複数によって取り込まれるイメージの分析に基づいて、走行応答を提供し得る。開示されるシステムは、また、クラウドソーシングされたスパースマップによる構築および走行を提供し得る。他の開示されるシステムは、走行を補い得る位置推定をスパースマップによって実行するために、イメージの関連分析を使用し得る。また、走行応答は、例えば、グローバルポジショニングシステム（ＧＰＳ）データ、センサデータ（例えば加速度計、速度センサ、サスペンションセンサなど）、および／または他の地図データを含む、他のデータを考慮に入れ得る。さらにまた、開示される実施形態は、他の運転者および歩行者を危険にさらすことなく車両の走行を最適化するために、快適性の制約および安全性の制約を使用して、カメラ、センサ、地図などのような、複数の源からのデータを結合し得る。
【０００６】
ホスト車両のための走行システムの、１つの実施形態において、走行システムは少なくとも１つの処理デバイスを含み得る。少なくとも１つの処理デバイスは、ホスト車両に関連づけられた第１のデータ源からの第１の出力と、ホスト車両に関連づけられた第２のデータ源からの第２の出力とを受信するようにプログラムされ得る。第１のデータ源および第２のデータ源のうち少なくとも一方は、ホスト車両に搭載されたセンサを含み得る。少なくとも１つの処理デバイスは、第１の出力における目標オブジェクトの表現を識別し、目標オブジェクトの特性が少なくとも１つの走行制約を引き起こすかどうかを判定し、少なくとも１つの走行制約が目標オブジェクトの特性によって引き起こされない場合、第１の出力および第２の出力の組み合わせに基づいて目標オブジェクトの表現の識別を検証し、少なくとも１つの走行制約が目標オブジェクトの特性によって引き起こされる場合、第１の出力に基づいて目標オブジェクトの表現の識別を検証し、検証に応答して、ホスト車両への少なくとも１つの走行変化を生じさせるように、さらにプログラムされ得る。
【０００７】
１つの実施形態において、ホスト車両を走行させるためのコンピュータ実装方法は、ホスト車両に関連づけられた第１のデータ源からの第１の出力と、ホスト車両に関連づけられた第２のデータ源からの第２の出力とを受信する段階を含み得る。第１のデータ源および第２のデータ源のうち少なくとも一方は、ホスト車両に搭載されたセンサを含み得る。方法はさらに、第１の出力における目標オブジェクトの表現を識別する段階と、目標オブジェクトの特性が少なくとも１つの走行制約を引き起こすかどうか判定する段階と、少なくとも１つの走行制約が目標オブジェクトの特性によって引き起こされない場合、第１の出力および第２の出力の組み合わせに基づいて目標オブジェクトの表現の識別を検証する段階と、少なくとも１つの走行制約が目標オブジェクトの特性によって引き起こされる場合、第１の出力に基づいて目標オブジェクトの表現の識別を検証する段階と、検証に応答して、ホスト車両への少なくとも１つの走行変化を生じさせる段階とを含み得る。
【０００８】
１つの実施形態において、複数の車両からの走行情報を調整するサーバは、少なくとも１つの処理デバイスを含み得る。少なくとも１つの処理デバイスは、複数の車両から走行情報を受信するようにプログラムされ得る。複数の車両からの走行情報は、共通道路セグメントに関連づけられ得る。少なくとも１つの処理デバイスは、共通道路セグメントにローカルな座標系内で走行情報を調整するように、さらにプログラムされ得る。ローカルな座標系は、複数の車両に含まれるイメージセンサによって取り込まれた複数のイメージに基づく座標系を含み得る。少なくとも１つの処理デバイスは、調整された走行情報を共通道路セグメントに関連づけて格納し、調整された走行情報を、共通道路セグメントに沿った１または複数の自律走行車両を自律的に走行させる際の使用のために、１または複数の自律走行車両へ分配するように、さらにプログラムされ得る。
【０００９】
１つの実施形態において、複数の車両からの走行情報を調整するコンピュータ実装方法は、複数の車両からの走行情報を受信する段階を含み得る。複数の車両からの走行情報は、共通道路セグメントに関連づけられ得る。方法はさらに、共通道路セグメントにローカルな座標系内の走行情報を調整する段階を含み得る。ローカルな座標系は、複数の車両上に含まれるイメージセンサによって取り込まれた複数のイメージに基づく座標系を含み得る。方法はさらに、調整された走行情報を共通道路セグメントに関連づけて格納する段階、および、調整された走行情報を、１または複数の自律走行車両を共通道路セグメントに沿って自律的に走行させる際の使用のために、１または複数の自律走行車両に分配する段階を含み得る。
【００１０】
他の開示される実施形態と合致して、非一時的コンピュータ読み取り可能格納媒体は、少なくとも１つの処理デバイスによって実行され、本明細書に説明されたいずれかの方法を実行するプログラム命令を格納し得る。
【００１１】
上記の一般的な説明および以下の詳細な説明は、例示および説明のみのものであり、特許請求の範囲の限定ではない。
【図面の簡単な説明】
【００１２】
本開示に組み込まれ、その部分を構成する添付図面は、様々な開示される実施形態を示す。以下の図面において：
【００１３】
【図１】開示される実施形態と合致する例示的なシステムの概略的表現である。
【００１４】
【図２Ａ】開示される実施形態と合致するシステムを含む例示的な車両の概略側面図表現である。
【００１５】
【図２Ｂ】開示される実施形態と合致する図２Ａに示される車両およびシステムの概略平面図表現である。
【００１６】
【図２Ｃ】開示される実施形態と合致するシステムを含む車両の別の実施形態の概略平面図表現である。
【００１７】
【図２Ｄ】開示される実施形態と合致するシステムを含む車両のさらに別の実施形態の概略平面図表現である。
【００１８】
【図２Ｅ】開示される実施形態と合致するシステムを含む車両のさらに別の実施形態の概略平面図表現である。
【００１９】
【図２Ｆ】開示される実施形態と合致する例示的な車両制御システムの概略図表現である。
【００２０】
【図３Ａ】開示される実施形態と合致する車両取り込みシステムに関するバックミラーおよびユーザインタフェースを含む車両内部の概略図表現である。
【００２１】
【図３Ｂ】開示される実施形態と合致する車両のバックミラーの後ろに、車両のフロントガラスと向かい合って配置されるように構成された、カメラマウントの例示である。
【００２２】
【図３Ｃ】開示される実施形態と合致する、図３Ｂに示されたカメラマウントの、異なる視点からの例示である。
【００２３】
【図３Ｄ】開示される実施形態と合致する車両のバックミラーの後ろに、車両のフロントガラスと向かい合って配置されるように構成された、カメラマウントの例示である。
【００２４】
【図４】開示される実施形態と合致する１または複数の操作を実行するための命令を格納するように構成された、メモリの例示的なブロック図である。
【００２５】
【図５Ａ】開示される実施形態と合致する単眼イメージ分析に基づいて、１または複数の走行応答を生じさせる例示的なプロセスを示すフローチャートである。
【００２６】
【図５Ｂ】開示される実施形態と合致するイメージのセットにおいて、１または複数の車両および／または歩行者を検出するための例示的なプロセスを示すフローチャートである。
【００２７】
【図５Ｃ】開示される実施形態と合致するイメージのセットにおいて、路面標示および／または車線形状情報を検出する例示的なプロセスを示すフローチャートである。
【００２８】
【図５Ｄ】開示される実施形態と合致するイメージのセットにおいて、交通信号灯を検出する例示的なプロセスを示すフローチャートである。
【００２９】
【図５Ｅ】開示される実施形態と合致する車両経路に基づいて、１または複数の走行応答を生じさせる例示的なプロセスを示すフローチャートである。
【００３０】
【図５Ｆ】開示される実施形態と合致する、先行車両が車線を変更中かどうかを判定する例示的なプロセスを示すフローチャートである。
【００３１】
【図６】開示される実施形態と合致する、ステレオイメージ分析に基づいて、１または複数の走行応答を生じさせる例示的なプロセスを示すフローチャートである。
【００３２】
【図７】開示される実施形態と合致する、イメージの３つのセットの分析に基づいて、１または複数の走行応答を生じさせる例示的なプロセスを示すフローチャートである。
【００３３】
【図８Ａ】開示される実施形態と合致する、道路セグメントの部分の多項式表現を示す図である。
【００３４】
【図８Ｂ】開示される実施形態と合致する、スパースマップに含まれる、特定の道路セグメントに関する、車両の目標軌跡を表す３次元空間内の曲線を示す図である。
【００３５】
【図９Ａ】開示される実施形態と合致する、軌跡の多項式表現を示す図である。
【００３６】
【図９Ｂ】開示される実施形態と合致する、複数車線道路に沿った目標軌跡を示す図である。
【図９Ｃ】開示される実施形態と合致する、複数車線道路に沿った目標軌跡を示す図である。
【００３７】
【図９Ｄ】開示される実施形態と合致する、道路シグナチャプロファイルの例を示す図である。
【００３８】
【図１０】開示される実施形態と合致する、複数の３次元スプラインによって表される例示的な自律走行車両の道路走行モデルを示す図である。
【００３９】
【図１１】開示される実施形態と合致する、多くの運転からの位置情報を結合することによって生成される、地図の概要を示す図である。
【００４０】
【図１２】開示される実施形態と合致する、１または複数の操作を実行するための命令を格納するように構成されたメモリの例示的なブロック図である。
【００４１】
【図１３Ａ】開示される実施形態と合致する、安全性および快適性の制約の例の概略的な描写を提供する。
【図１３Ｂ】開示される実施形態と合致する、安全性および快適性の制約の例の概略的な描写を提供する。
【００４２】
【図１３Ｃ】開示される実施形態と合致する、安全性および快適性の制約のさらなる例の概略的な描写を提供する。
【図１３Ｄ】開示される実施形態と合致する、安全性および快適性の制約のさらなる例の概略的な描写を提供する。
【００４３】
【図１４】開示される実施形態と合致する、安全性および快適性の制約に基づいてホスト車両を走行させる例示的なプロセスを示すフローチャートである。
【００４４】
【図１５】開示される実施形態と合致する、１または複数の操作を実行するための命令を格納するように構成されたメモリの例示的なブロック図である。
【００４５】
【図１６】開示される実施形態と合致する、道路データを結合することによって生成される、多くの運転および例示的なグローバル地図からの走行情報を結合することによって生成される道路データの例を示す。
【００４６】
【図１７】開示される実施形態と合致する、複数の車両からの走行情報を調整するための例示的なプロセスを示すフローチャートである。
【発明を実施するための形態】
【００４７】
以下の詳細な説明は、添付図面を参照する。可能な限り、図面および以下の操作の説明において、同じまたは類似の部分を参照するために、同じ参照符号が用いられる。いくつかの例示的な実施形態が本明細書に説明されるが、修正形態、適応形態、および他の実装が可能である。例えば、図面に示された構成要素に、置換、追加、または修正が行われ得、本明細書に説明された例示的な方法は、開示されている方法に段階を置換する、並べ替える、削除する、または追加することによって修正され得る。したがって、以下の詳細な説明は、開示される実施形態および例に限定されない。代わりに、適切な範囲が、添付の特許請求の範囲によって定義される。
【００４８】
自律走行車両の概要
【００４９】
本開示全体において用いられるものとして、用語「自律走行車両」は、運転者の入力なしで少なくとも１つの走行変化を実装することが可能な車両を指す。「走行変化」は、車両のステアリング、ブレーキ、または加速のうち１または複数における変更を指す。自律的であるためには、車両は、完全に自動（例えば、運転者なしでの、または運転者の入力なしでの完全動作）である必要はない。むしろ、自律走行車両は、特定の期間の最中は運転者の制御のもとで動作し、他の期間の最中は運転者の制御なしで動作し得るものを含む。また、自律走行車両は、（例えば、車両の車線の制約の中で車両のコースを保持するための）ステアリングなどの、車両の走行のうちいくつかの態様のみを制御し、他の態様（例えば、ブレーキ）は運転者に任せ得る車両を含み得る。いくつかの場合において、自律走行車両は、車両のブレーキ、速度制御、および／またはステアリングのうち、いくつかまたはすべての態様を処理し得る。
【００５０】
人間の運転者は、一般に、車両を制御するために視覚的なきっかけおよび観測に頼るので、したがって、車線標示、交通標識、および交通信号灯がすべて、運転者に視覚情報を提供するように設計された状態で、交通インフラストラクチャーが形成されている。交通インフラストラクチャーのこれらの設計特性を念頭に置くと、自律走行車両は、車両の環境から取り込まれた視覚情報を分析するカメラおよび処理ユニットを含み得る。視覚情報は、例えば、運転者によって観測可能な交通インフラストラクチャーの構成要素（例えば、車線標示、交通標識、交通信号灯など）、および、他の障害物（例えば、他の車両、歩行者、ごみなど）を含み得る。加えて、自律走行車両はまた、走行時に車両の環境のモデルを提供する情報などの、格納された情報を使用し得る。例えば、車両は、車両が移動している間に、その環境に関連する情報を提供するように、ＧＰＳデータ、（例えば、加速度計、速度センサ、サスペンションセンサなどからの）センサデータ、および／または、他の地図データを使用し得、車両（他の車両も同様）は、モデル上でそれ自身を位置特定するために当該情報を使用し得る。
【００５１】
本開示のいくつかの実施形態において、自律走行車両は、走行の間に（例えば、カメラ、ＧＰＳデバイス、加速度計、速度センサ、サスペンションセンサなどから）取得された情報を用い得る。他の実施形態において、自律走行車両は、走行の間、その車両によって（または他の車両によって）過去の走行から取得された情報を使用し得る。さらに他の実施形態において、自律走行車両は、走行の間に取得された情報と、過去の走行から取得された情報との組み合わせを用い得る。以下の部分は、開示される実施形態と合致するシステムの概要を提供し、前向きの取り込みシステムの概要およびそのシステムと合致する方法が後に続く。以下に続く部分は、自律走行車両の走行のためのスパースマップを構築する、用いる、および更新するためのシステムおよび方法を開示する。
【００５２】
システム概要
【００５３】
図１は、例示的な開示される実施形態と合致する、システム１００のブロック図表現である。システム１００は、特定の実装の要件に応じて、様々な構成要素を含み得る。いくつかの実施形態において、システム１００は、処理ユニット１１０、イメージ取得ユニット１２０、位置センサ１３０、１または複数のメモリユニット１４０、１５０、地図データベース１６０、ユーザインタフェース１７０、および無線送受信機１７２を含み得る。処理ユニット１１０は、１または複数の処理デバイスを含み得る。いくつかの実施形態において、処理ユニット１１０は、アプリケーションプロセッサ１８０、イメージプロセッサ１９０、または任意の他の適切な処理デバイスを含み得る。同様に、イメージ取得ユニット１２０は、特定の用途の要件に依存した、任意の数のイメージ取得デバイスおよび構成要素を含み得る。いくつかの実施形態において、イメージ取得ユニット１２０は、撮像デバイス１２２、撮像デバイス１２４、および撮像デバイス１２６などの、１または複数の撮像デバイス（例えば、カメラ）を含み得る。また、システム１００は、処理デバイス１１０をイメージ取得デバイス１２０と通信可能に接続するデータインタフェース１２８を含み得る。例えば、データインタフェース１２８は、イメージ取得デバイス１２０によって取得されたイメージデータを処理ユニット１１０に伝送する任意の有線および／または無線リンクを含み得る。
【００５４】
無線送受信機１７２は、無線周波数、赤外線周波数、磁場、または電場の使用により、１または複数のネットワーク（例えば、セルラー、インターネットなど）とエアインタフェースを介した伝送をやり取りするように構成された、１または複数のデバイスを含み得る。無線送受信機１７２は、データの送信および／または受信のために、任意の知られた規格（例えば、Ｗｉ−Ｆｉ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｂｌｕｅｔｏｏｔｈ（登録商標）スマート、８０２．１５．４、ＺｉｇＢｅｅ（登録商標）など）を用い得る。そのような伝送は、ホスト車両から、１または複数の離れて配置されたサーバへの通信を含み得る。また、そのような伝送は、（例えば、ホスト車両の環境において、目標車両を考慮した、または目標車両と一緒の、ホスト車両の走行の調整を促すための）ホスト車両の環境における、ホスト車両と１または複数の目標車両との間の（一方向または双方向）通信を、または、伝送している車両の近傍の不特定の受信者へのブロードキャスト送信さえも、含み得る。
【００５５】
アプリケーションプロセッサ１８０およびイメージプロセッサ１９０は、様々な種類の処理デバイスを含み得る。例えば、アプリケーションプロセッサ１８０およびイメージプロセッサ１９０のいずれか、あるいは両方が、マイクロプロセッサ、プリプロセッサ（イメージプリプロセッサなど）、グラフィック処理ユニット（ＧＰＵ）、中央演算処理デバイス（ＣＰＵ）、サポート回路、デジタル信号プロセッサ、集積回路、メモリ、または、アプリケーションを実行させてイメージ処理および分析を行うために適切な、任意の他の種類のデバイスを含み得る。いくつかの実施形態において、アプリケーションプロセッサ１８０および／またはイメージプロセッサ１９０は、任意の種類のシングルコアまたはマルチコアプロセッサ、モバイルデバイスマイクロコントローラ、中央演算処理デバイスなどを含み得る。例えば、Ｉｎｔｅｌ（Ｒ）、ＡＭＤ（Ｒ）などの製造業者から入手可能なプロセッサ、または、ＮＶＩＤＩＡ（Ｒ）、ＡＴＩ（Ｒ）などの製造業者から入手可能なＧＰＵを含む様々な処理デバイスが用いられ得、処理デバイスは様々なアーキテクチャ（例えば、ｘ８６プロセッサ、ＡＲＭ（Ｒ）など）を含み得る。
【００５６】
いくつかの実施形態において、アプリケーションプロセッサ１８０および／またはイメージプロセッサ１９０は、Ｍｏｂｉｌｅｙｅ（Ｒ）から入手可能なＥｙｅＱシリーズのプロセッサチップのいずれかを含み得る。これらのプロセッサ設計はそれぞれ、ローカルメモリおよび命令のセットを有する複数の処理ユニットを含む。そのようなプロセッサは、複数のイメージセンサからイメージデータを受信するためのビデオ入力を含み得、また、ビデオ出力機能を含み得る。一例において、ＥｙｅＱ２（Ｒ）は、３３２ＭＨｚで動作する９０ｎｍ−ミクロン技術を使用する。ＥｙｅＱ２（Ｒ）アーキテクチャは、２つの浮動小数点ハイパースレッド３２ビットＲＩＳＣ  ＣＰＵ（ＭＩＰＳ３２（Ｒ）  ３４Ｋ（Ｒ）コア）、５つのビジョンコンピューティングエンジン（ＶＣＥ）、３つのベクトルマイクロコードプロセッサ（ＶＭＰ（Ｒ））、デナリ６４ビットモバイルＤＤＲコントローラ、１２８ビットインターナルソニックスインターコネクト、デュアル１６ビットビデオ入力、および１８ビットビデオ出力コントローラ、１６チャネルＤＭＡ、およびいくつかの周辺機器からなる。ＭＩＰＳ３４Ｋ  ＣＰＵは、５つのＶＣＥ、３つのＶＭＰ（ＴＭ）およびＤＭＡ、第２のＭＩＰＳ３４Ｋ  ＣＰＵおよびマルチチャネルＤＭＡ、ならびに他の周辺機器を管理する。５つのＶＣＥ、３つのＶＭＰ（Ｒ）、およびＭＩＰＳ３４Ｋ  ＣＰＵは、マルチファンクションバンドルアプリケーションにより要求される集中的な視覚的計算を実行し得る。別の例において、ＥｙｅＱ３（Ｒ）は、第３世代プロセッサであり、ＥｙｅＱ２（Ｒ）の６倍の能力があり、開示される実施形態において用いられ得る。他の例において、ＥｙｅＱ４（Ｒ）および／またはＥｙｅＱ５（Ｒ）が、開示される実施形態において用いられ得る。もちろん、任意のより新しい、または将来のＥｙｅＱ処理デバイスが、開示される実施形態と共に用いられ得る。
【００５７】
本明細書に開示されるいかなる処理デバイスも、特定の機能を実行するように構成され得る。特定の機能を実行するように、説明されたＥｙｅＱプロセッサのいずれか、または他のコントローラまたはマイクロプロセッサなどの、処理デバイスを構成することは、コンピュータ実行可能な命令のプログラミング、および、処理デバイスの動作の最中の実行のためにそれらの命令を処理デバイスに利用可能にすることを含み得る。いくつかの実施形態において、処理デバイスを構成することは、アーキテクチャ命令で直接処理デバイスをプログラミングすることを含み得る。例えば、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）などの処理デバイスは、例えば、１または複数のハードウェア記述言語（ＨＤＬ）を用いて構成され得る。
【００５８】
他の実施形態において、処理デバイスを構成することは、実行可能な命令を、動作の最中に処理デバイスにアクセス可能なメモリに格納することを含み得る。例えば、処理デバイスは、動作の最中に、格納された命令を取得および実行するようにメモリにアクセスし得る。いずれかの場合において、本明細書で開示される、感知、イメージ分析、および／または走行機能を実行するように構成される処理デバイスは、ホスト車両のハードウェアベースの複数の構成要素を制御する専用ハードウェアベースのシステムを表す。
【００５９】
図１は処理ユニット１１０内に含まれる２つの別個の処理デバイスを示すが、より多い、またはより少ない処理デバイスが用いられ得る。例えば、いくつかの実施形態において、単独の処理デバイスが、アプリケーションプロセッサ１８０およびイメージプロセッサ１９０のタスクを達成するように用いられ得る。他の実施形態において、これらのタスクは、２つより多い処理デバイスによって実行され得る。さらに、いくつかの実施形態において、システム１００は、イメージ取得ユニット１２０などの他の構成要素を含まずに、１または複数の処理ユニット１１０を含み得る。
【００６０】
処理ユニット１１０は、様々な種類のデバイスを含み得る。例えば、処理ユニット１１０は、コントローラ、イメージプリプロセッサ、中央演算処理デバイス（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）、サポート回路、デジタル信号プロセッサ、集積回路、メモリ、またはイメージ処理および分析のための任意の他の種類のデバイスなどの、様々なデバイスを含み得る。イメージプリプロセッサは、イメージセンサからの像（ｉｍａｇｅｒｙ）の取り込み、デジタル化、および処理のためのビデオプロセッサを含み得る。ＣＰＵは任意の数のマイクロコントローラまたはマイクロプロセッサを含み得る。また、ＧＰＵは、任意の数のマイクロコントローラまたはマイクロプロセッサを含み得る。サポート回路は、キャッシュ、電源、クロック、および入出力回路を含む、当該技術において一般によく知られている任意の数の回路を含み得る。メモリは、プロセッサによって実行されるとき、システムの動作を制御するソフトウェアを格納し得る。メモリは、データベースおよびイメージ処理ソフトウェアを含み得る。メモリは、任意の数のランダムアクセスメモリ、リードオンリーメモリ、フラッシュメモリ、ディスクドライブ、光記憶装置、テープストレージ、リムーバブルストレージ、および他の種類のストレージを含み得る。一例において、メモリは、処理ユニット１１０とは別個であり得る。別の例において、メモリは処理ユニット１１０に統合され得る。
【００６１】
メモリ１４０、１５０はそれぞれ、プロセッサ（例えば、アプリケーションプロセッサ１８０および／またはイメージプロセッサ１９０）によって実行されたときにシステム１００の様々な態様の動作を制御し得るソフトウェア命令を含み得る。これらのメモリユニットは、例えばニューラルネットワーク、またはディープニューラルネットワークなどの訓練されたシステムと同様に、様々なデータベースおよびイメージ処理ソフトウェアを含み得る。メモリユニットは、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、フラッシュメモリ、ディスクドライブ、光記憶装置、テープストレージ、リムーバブルストレージ、および／または任意の他の種類のストレージを含み得る。いくつかの実施形態において、メモリユニット１４０、１５０は、アプリケーションプロセッサ１８０および／またはイメージプロセッサ１９０と別個であり得る。他の実施形態において、これらのメモリユニットは、アプリケーションプロセッサ１８０および／またはイメージプロセッサ１９０に統合され得る。
【００６２】
位置センサ１３０は、システム１００の少なくとも１つの構成要素に関連づけられた位置を判定するのに適切な任意の種類のデバイスを含み得る。いくつかの実施形態において、位置センサ１３０はＧＰＳ受信機を含み得る。そのような受信機は、グローバルポジショニングシステム衛星によってブロードキャストされる信号を処理することによって、ユーザの位置および速度を判定し得る。位置センサ１３０からの位置情報は、アプリケーションプロセッサ１８０および／またはイメージプロセッサ１９０に利用可能とし得る。
【００６３】
いくつかの実施形態において、システム１００は、車両の速度２００を測定するための速度センサ（例えば、回転速度計、速度計）、および／または、車両２００の加速度を測定するための（単軸または複数軸のいずれかの）加速度計などの構成要素を含み得る。
【００６４】
ユーザインタフェース１７０は、システム１００の１または複数のユーザに情報を提供するために、または当該ユーザから入力を受信するために適切な任意のデバイスを含み得る。いくつかの実施形態において、ユーザインタフェース１７０は、例えば、タッチスクリーン、マイク、キーボード、ポインタデバイス、トラックホイール、カメラ、ノブ、ボタンなどを含むユーザ入力デバイスを含み得る。そのような入力デバイスによって、ユーザは、命令または情報をタイピングすること、音声コマンドを提供すること、ボタン、ポインタ、またはアイトラッキング機能を用いて画面上のメニュー選択肢を選択すること、またはシステム１００に情報を通信するための任意の他の適切な技法によって、システム１００に情報入力またはコマンドを提供することが可能であり得る。
【００６５】
ユーザインタフェース１７０は、ユーザとの間で情報を提供および受信し、例えばアプリケーションプロセッサ１８０による使用のために情報を処理するように構成された、１または複数の処理デバイスを備え得る。いくつかの実施形態において、そのような処理デバイスは、眼の運動を認識およびトラッキングする、音声コマンドを受信および解釈する、タッチスクリーン上で行われたタッチおよび／またはジェスチャを認識および解釈する、キーボード入力またはメニュー選択に応答する、などのための命令を実行し得る。いくつかの実施形態において、ユーザインタフェース１７０は、ディスプレイ、スピーカ、触覚デバイス、および／または、ユーザへの出力情報を提供するための任意の他のデバイスを含み得る。
【００６６】
地図データベース１６０は、システム１００に有用な地図データを格納する任意の種類のデータベースを含み得る。いくつかの実施形態において、地図データベース１６０は、基準座標系において、道路、水を利用した構造物（ｗａｔｅｒ  ｆｅａｔｕｒｅｓ）、地理的形状、ビジネス、関心のある地点、レストラン、ガソリンスタンド、などを含む様々な項目の位置に関連するデータを含み得る。地図データベース１６０は、そのような項目の位置のみでなく、例えば、格納された特徴のいずれかに関連づけられた名前を含む、それらの項目に関連する記述子もまた格納し得る。いくつかの実施形態において、地図データベース１６０は、システム１００の他の構成要素と共に物理的に配置され得る。代替的にまたは加えて、地図データベース１６０またはそれらの部分は、システム１００の他の構成要素（例えば、処理ユニット１１０）に対して離れて配置され得る。そのような複数の実施形態において、地図データベース１６０からの情報は、ネットワークへの有線または無線のデータ接続を介して（例えば、セルラーネットワークおよび／またはインターネットなどを介して）ダウンロードされ得る。いくつかの場合において、地図データベース１６０は、特定の道路特徴（例えば、車線標示）またはホスト車両の目標軌跡の多項式表現を含むスパースデータモデルを格納し得る。そのような地図を生成するシステムおよび方法は、図８Ａから１９を参照して以下に説明される。
【００６７】
撮像デバイス１２２、１２４および１２６はそれぞれ、環境から少なくとも１つのイメージを取り込むための任意の種類の適切なデバイスを含み得る。加えて、任意の数の撮像デバイスは、イメージプロセッサへの入力のためにイメージを取得するように用いられ得る。いくつかの実施形態は、単一の撮像デバイスのみを含み得るが、他の実施形態は、２つ、３つ、またはさらに４つ、またはそれ以上の撮像デバイスを含み得る。撮像デバイス１２２、１２４および１２６は、以下の図２Ｂから図２Ｅを参照してさらに説明されるであろう。
【００６８】
システム１００、またはそれらの様々な構成要素は、様々な異なるプラットフォームに組み込まれ得る。いくつかの実施形態において、システム１００は、図２Ａに示されるように、車両２００に含まれ得る。例えば、車両２００は、図１に対して上で説明されたように、処理ユニット１１０および、システム１００の任意の他の構成要素を備え得る。いくつかの実施形態において、車両２００は、単独の撮像デバイス（例えば、カメラ）のみを備え得るが、図２Ｂから図２Ｅに関連して説明されるものなどの、他の実施形態においては、複数の撮像デバイスが用いられ得る。例えば、車両２００の撮像デバイス１２２および１２４のいずれかは、図２Ａに示されるように、ＡＤＡＳ（先進運転者支援システム）取り込みセットの部分であり得る。
【００６９】
イメージ取得ユニット１２０の一部として車両２００に含まれる撮像デバイスは、任意の適切な位置に配置され得る。いくつかの実施形態において、図２Ａから図２Ｅおよび図３Ａから図３Ｃに示されるように、撮像デバイス１２２は、バックミラーの近傍に配置され得る。この位置は、車両２００の運転者の視線に類似する視線を提供し得、運転者に何が見えて何が見えないかを判定するための助けとなり得る。撮像デバイス１２２は、バックミラーの近くの任意の位置に配置され得るが、ミラーの運転者側に撮像デバイス１２２を設置することは、運転者の視野および／または視線を表すイメージを得るための、さらなる助けとなり得る。
【００７０】
イメージ取得ユニット１２０の撮像デバイスに関する他の位置も、また用いられ得る。例えば、撮像デバイス１２４は、車両２００のバンパーに、またはその内部に配置され得る。そのような位置は、広い視野を有する撮像デバイスに特に適切であり得る。バンパーに配置された撮像デバイスの視線は、運転者の視線とは異なるものであり得る。したがって、バンパーの撮像デバイスおよび運転者は、常に同じオブジェクトを見ているのではないことがある。撮像デバイス（例えば、撮像デバイス１２２、１２４および１２６）は、また、他の位置に配置され得る。例えば、撮像デバイスは、車両２００のサイドミラーの１つまたは両方またはその内部、車両２００の屋根、車両２００のフード、車両２００のトランク、車両２００の側部に配置される、車両２００の任意の窓に取りつけられる、窓の後ろに配置される、または窓の前に配置される、および、車両２００の前および／または後ろのライトの形態（ｌｉｇｈｔ  ｆｉｇｕｒｅ）内に、またはその近くに取りつけられる、などであり得る。
【００７１】
撮像デバイスに加えて、車両２００は、システム１００の様々な他の構成要素を含み得る。例えば、処理ユニット１１０は、車両のエンジン制御ユニット（ＥＣＵ）に統合されて、またはそれから分離してのいずれかで、車両２００に含まれ得る。車両２００は、また、ＧＰＳ受信機などの位置センサ１３０を備え得、また、地図データベース１６０およびメモリユニット１４０および１５０を含み得る。
【００７２】
前に説明されたように、無線送受信機１７２は１または複数のネットワーク（例えば、セルラーネットワーク、インターネットなど）を介してデータを送信および／または受信し得る。例えば、無線送受信機１７２は、システム１００によって収集されたデータを１つまたは複数のサーバにアップロードし、データを１つまたは複数のサーバからダウンロードし得る。無線送受信機１７２を介して、システム１００は、例えば、地図データベース１６０、メモリ１４０、および／またはメモリ１５０に格納されたデータへの、周期的またはオンデマンドの更新を受信し得る。同様に、無線送受信機１７２は、システム１００からの任意のデータ（例えば、イメージ取得ユニット１２０によって取り込まれたイメージ、位置センサ１３０または他のセンサ、車両制御システムなどによって受信されたデータ）を、および／または、処理ユニット１１０によって処理された任意のデータを、１つまたは複数のサーバにアップロードし得る。
【００７３】
システム１００は、プライバシーレベル設定に基づいて、データをサーバ（例えば、クラウド）にアップロードし得る。例えば、システム１００は、車両および／または車両の運転者／所有者を一意的に識別し得る、サーバに送られるデータ（メタデータを含む）の種類を規制または制限するように、プライバシーレベル設定を実装し得る。そのような設定は、例えば無線送受信機１７２を介してユーザによって設定され、工場のデフォルト設定によって初期化され得、または、無線送受信機１７２によて受信されたデータによって初期化され得る。
【００７４】
いくつかの実施形態において、システム１００は、「高」プライバシーレベルに従ってデータをアップロードし得、設定の設定中に、システム１００は、特定の車両および／または運転者／所有者についてのいかなる詳細もなしで、データ（例えば、経路関連の位置情報、取り込まれたイメージなど）を伝送し得る。例えば、「高」プライバシー設定に従ってデータをアップロードしたとき、システム１００は、車両識別番号（ＶＩＮ）、または、車両の運転者または所有者の名前を含めなくともよく、代わりに、取り込まれたイメージおよび／または経路に関連して限定された位置情報などのデータを伝送し得る。
【００７５】
他のプライバシーレベルが意図される。例えば、システム１００は、「中間」プライバシーレベルに従ってサーバにデータを送信し得、車両の型式および／またはモデル、および／または、車両の種類（例えば、乗用車、スポーツ用多目的車、トラックなど）などの、「高」プライバシーレベルのもとでは含まれない追加の情報を含み得る。いくつかの実施形態において、システム１００は、「低」プライバシーレベルに従ってデータをアップロードし得る。「低」プライバシーレベル設定のもとで、システム１００は、データをアップロードし、特定の車両、所有者／運転者、および／または車両が移動した経路の部分または全体を一意的に識別するのに十分な情報を含み得る。そのような「低」プライバシーレベルデータは、例えば、ＶＩＮ、運転者／所有者の名前、出発前の車両の原地点、車両の意図された目的地、車両の型式および／またはモデル、車両の種類などのうち、１または複数を含み得る。
【００７６】
図２Ａは、開示される実施形態と合致する例示的な車両取り込みシステムの概略側面図表現である。図２Ｂは、図２Ａに示される実施形態の概略平面図の例示である。図２Ｂに示されるように、開示される実施形態は、バックミラーおよび／または車両２００の運転者の近傍に配置される第１の撮像デバイス１２２、車両２００のバンパー領域（例えば、バンパー領域２１０の１つ）に、またはその内部に配置される第２の撮像デバイス１２４、および処理ユニット１１０を有する、システム１００をそのボディ内に含む、車両２００を含み得る。
【００７７】
図２Ｃに示されるように、撮像デバイス１２２および１２４は両方、バックミラーの近傍に、および／または、車両２００の運転者の近くに配置され得る。加えて、２つの撮像デバイス１２２および１２４が図２Ｂおよび２Ｃに示されるが、他の実施形態は、２つより多い撮像デバイスを含み得ることを理解されたい。例えば、図２Ｄおよび２Ｅに示された実施形態においては、第１、第２および第３の撮像デバイス１２２、１２４および１２６が、車両２００のシステム１００に含まれる。
【００７８】
図２Ｄに示されるように、撮像デバイス１２２はバックミラーの近傍および／または車両２００の運転者の近くに配置され得、撮像デバイス１２４および１２６は、車両２００のバンパー領域（例えば、バンパー領域２１０のうち１つ）に、またはその中に配置され得る。そして、図２Ｅに示されるように、撮像デバイス１２２、１２４および１２６は、車両２００のバックミラーの近傍および／または運転席の近くに配置され得る。開示される実施形態は、何か特定の数および構成の撮像デバイスに限定されず、撮像デバイスは、車両２００の内部および／または車両２００上の、任意の適切な位置に配置され得る。
【００７９】
開示される実施形態は、車両に限定されず、他の文脈に適用されることがあることを理解すべきである。また、開示される実施形態は、特定の種類の車両２００に限定されず、自動車、トラック、トレーラ、または他の種類の車両を含むすべての種類の車両に適用可能であり得ることを理解すべきである。
【００８０】
第１の撮像デバイス１２２は、任意の好適な種類の撮像デバイスを含み得る。撮像デバイス１２２は、光軸を含み得る。一例において、撮像デバイス１２２は、グローバルシャッタを備えるＡｐｔｉｎａ  Ｍ９Ｖ０２４  ＷＶＧＡセンサを含み得る。他の実施形態において、撮像デバイス１２２は、１２８０×９６０ピクセルの分解能を提供し得、ローリングシャッタを含み得る。撮像デバイス１２２は、様々な光学要素を含み得る。いくつかの実施形態において、例えば、撮像デバイスに所望の焦点距離および視野を提供するように、１または複数のレンズが含まれ得る。いくつかの実施形態において、撮像デバイス１２２は、６ｍｍレンズまたは１２ｍｍレンズに関連づけられ得る。いくつかの実施形態において、図２Ｄに示されるように、撮像デバイス１２２は、所望の視野（ＦＯＶ）２０２を有するイメージを取り込むように構成され得る。例えば、撮像デバイス１２２は、４６度ＦＯＶ、５０度ＦＯＶ、５２度ＦＯＶ、またはより大きいものを含む、４０度から５６度の範囲などの、通常のＦＯＶを有するように構成され得る。代替的に、撮像デバイス１２２は、２８度ＦＯＶまたは３６度ＦＯＶなどの、２３から４０度の範囲の狭いＦＯＶを有するように構成され得る。さらに、撮像デバイス１２２は、１００から１８０度の範囲の広いＦＯＶを有するように構成され得る。いくつかの実施形態において、撮像デバイス１２２は、広角バンパーカメラ、または１８０度までのＦＯＶを有するカメラを含み得る。いくつかの実施形態において、撮像デバイス１２２は、約１００度の水平ＦＯＶを有する、約２：１の縦横比（例えば、Ｈ×Ｖ＝３８００×１９００ピクセル）で７．２Ｍピクセルの撮像デバイスであり得る。そのような撮像デバイスは、３撮像デバイス構成の代わりに用いられ得る。大幅なレンズの歪みに起因して、撮像デバイスが半径方向に対称なレンズを用いる実装時には、そのような撮像デバイスの鉛直ＦＯＶは５０度より大幅に小さくなり得る。例えば、そのようなレンズは、５０度より大きい鉛直ＦＯＶおよび１００度の水平ＦＯＶを可能とするであろう半径方向に対称なものではなくてもよい。
【００８１】
第１の撮像デバイス１２２は、車両２００に関連づけられたシーンに対走査線して複数の第１のイメージを取得し得る。複数の第１のイメージのそれぞれは、一連のイメージ走査線として取得されてよく、それはローリングシャッタを用いて取り込まれ得る。各走査線は、複数のピクセルを含み得る。
【００８２】
第１の撮像デバイス１２２は、第１の一連のイメージ走査線のそれぞれの取得に関連する走査速度を有し得る。走査速度は、イメージセンサが特定の走査線に含まれる各ピクセルに関連するイメージデータを取得できる速度を指し得る。
【００８３】
撮像デバイス１２２、１２４および１２６は、例えばＣＣＤセンサまたはＣＭＯＳセンサが挙げられる、任意の好適な種類および数のイメージセンサを含み得る。１つの実施形態において、一行における各ピクセルが一回で１つずつ読み取られ、イメージフレーム全体が取り込まれるまで行のスキャンが行ごとに進行するように、ＣＭＯＳイメージセンサはローリングシャッタと共に使用される。いくつかの実施形態において、行はフレームに対して上から下へ逐次的に取り込まれ得る。
【００８４】
いくつかの実施形態において、本明細書に開示された撮像デバイス（例えば、撮像デバイス１２２、１２４および１２６）のうち１または複数は、高分解能のイメージャを構成し得、５Ｍピクセルより大きい、７Ｍピクセル、１０Ｍピクセル、またはより大きい分解能を有し得る。
【００８５】
ローリングシャッタの使用は、異なる行におけるピクセルが異なる時点に露出および取り込まれることをもたらし得、それは取り込まれたイメージフレームにおいて、スキュー、および他のイメージのアーチファクトを生じさせることがある。他方で、撮像デバイス１２２がグローバルまたはシンクロナスシャッタで動作するように構成されるとき、すべてのピクセルは同じ時間量だけ、共通露出期間の最中に露出され得る。結果として、グローバルシャッタを使用したシステムから収集されたフレームにおけるイメージデータは、特定の時点のＦＯＶ（ＦＯＶ２０２など）全体のスナップショットを表す。対照的に、ローリングシャッタ用途においては、フレームの各行は異なる時点で露出され、データは異なる時点で取り込まれる。したがって、ローリングシャッタを有する撮像デバイスにおいては、動くオブジェクトは歪んで見えることがある。この現象は、以下でより詳細に説明する。
【００８６】
第２の撮像デバイス１２４および第３の撮像デバイス１２６は、任意の種類の撮像デバイスであり得る。第１の撮像デバイス１２２のように、撮像デバイス１２４および１２６のそれぞれは光軸を含み得る。１つの実施形態において、撮像デバイス１２４および１２６のそれぞれは、グローバルシャッタを有するＡｐｔｉｎａ  Ｍ９Ｖ０２４  ＷＶＧＡセンサを含み得る。代替的に、撮像デバイス１２４および１２６のそれぞれは、ローリングシャッタを含み得る。撮像デバイス１２２のように、撮像デバイス１２４および１２６は、様々なレンズおよび光学要素を含むように構成され得る。いくつかの実施形態において、撮像デバイス１２４および１２６に関連づけられたレンズは、撮像デバイス１２２に関連づけられたＦＯＶ（ＦＯＶ２０２など）と同じ、またはそれより狭い、ＦＯＶ（ＦＯＶ２０４および２０６など）を提供し得る。例えば、撮像デバイス１２４および１２６は、４０度、３０度、２６度、２３度、２０度、またはより小さい角度のＦＯＶを有し得る。
【００８７】
撮像デバイス１２４および１２６は、車両２００に関連づけられたシーンに対して複数の第２および第３のイメージを取得し得る。複数の第２および第３のイメージのそれぞれは、第２および第３の一連のイメージ走査線として取得され得、それはローリングシャッタを用いて取り込まれ得る。各走査線または行は、複数のピクセルを有し得る。撮像デバイス１２４および１２６は、第２および第３の一連に含まれるイメージ走査線のそれぞれの取得に関連づけられた、第２および第３の走査速度を有し得る。
【００８８】
撮像デバイス１２２、１２４および１２６のそれぞれは、車両２００に対して、任意の適切な位置および向きに配置され得る。撮像デバイス１２２、１２４および１２６の相対的な配置は、撮像デバイスから取得された情報を共に結合することの助けとなるように選択され得る。例えば、いくつかの実施形態において、撮像デバイス１２４に関連づけられたＦＯＶ（ＦＯＶ２０４など）は、撮像デバイス１２２に関連づけられたＦＯＶ（ＦＯＶ２０２など）および撮像デバイス１２６に関連づけられたＦＯＶ（ＦＯＶ２０６など）と、部分的に、または完全に重なり得る。
【００８９】
撮像デバイス１２２、１２４および１２６は、任意の適切な相対的な高さで車両２００に配置され得る。一例において、撮像デバイス１２２、１２４および１２６の間には高さの差異があり得、それは、ステレオ分析を可能にするために十分な視差情報を提供し得る。例えば、図２Ａに示されるように、２つの撮像デバイス１２２および１２４は異なる高さである。また、撮像デバイス１２２、１２４および１２６の間には、横方向の変位の差異があり得、それは、例えば処理ユニット１１０によるステレオ分析に関して、追加の視差情報をもたらす。横方向の変位の差異は、図２Ｃおよび２Ｄにおいて示されるように、ｄｘによって示され得る。いくつかの実施形態において、前方または後方変位（例えば、範囲変位）が、撮像デバイス１２２、１２４および１２６の間に存在し得る。例えば、撮像デバイス１２２は、撮像デバイス１２４および／または撮像デバイス１２６から０．５から２メートル以上後ろに配置され得る。この種類の変位は、撮像デバイスの一方が、他方の撮像デバイスで可能性のある死角を、補うことを可能にし得る。
【００９０】
撮像デバイス１２２は、任意の適切な分解能（例えば、イメージセンサに関連づけられたピクセルの数）を有し得、撮像デバイス１２２に関連づけられたイメージセンサの分解能は、撮像デバイス１２４および１２６に関連づけられたイメージセンサの分解能より高くても、より低くても、または同じでもよい。いくつかの実施形態において、撮像デバイス１２２および／または撮像デバイス１２４および１２６に関連づけられたイメージセンサは、６４０×４８０、１０２４×７６８、１２８０×９６０の分解能、または任意の他の適切な分解能を有し得る。
【００９１】
フレームレート（例えば、撮像デバイスが、次のイメージフレームに関連づけられたピクセルデータの取り込みへと移る前に、１つのイメージフレームのピクセルデータのセットを取得するレート）は、制御可能であり得る。撮像デバイス１２２に関連づけられたフレームレートは、撮像デバイス１２４および１２６に関連づけられたフレームレートより高くても、より低くても、または同じでもよい。撮像デバイス１２２、１２４および１２６に関連づけられたフレームレートは、フレームレートのタイミングに影響を与え得る様々な要因に依存し得る。例えば、撮像デバイス１２２、１２４および１２６のうち１または複数は、撮像デバイス１２２、１２４および／または１２６におけるイメージセンサの１または複数のピクセルに関連づけられたイメージデータの取得の前または後に加えられた、選択可能なピクセル遅延時間を含み得る。一般に、各ピクセルに対応するイメージデータは、デバイスのクロックレートに従って（例えば、クロック周期につき１ピクセル）取得され得る。加えて、ローリングシャッタを含む実施形態において、撮像デバイス１２２、１２４および１２６のうち１または複数は、撮像デバイス１２２、１２４および／または１２６におけるイメージセンサのピクセルの行に関連づけられたイメージデータの取得前または後に加えられる、選択可能な水平帰線区間を含み得る。さらに、撮像デバイス１２２、１２４および／または１２６のうち１または複数は、撮像デバイス１２２、１２４および１２６のイメージフレームに関連づけられたイメージデータの取得前または後に加えられる、選択可能な垂直帰線区間を含み得る。
【００９２】
それぞれのライン走査速度が異なる場合でさえも、このタイミング制御は、撮像デバイス１２２、１２４および１２６に関連づけられたフレームレートとの同期が可能であり得る。加えて、以下でより詳細に説明されるように、撮像デバイス１２２の視野が、撮像デバイス１２４および１２６のＦＯＶと異なる場合でさえも、この選択可能なタイミング制御は、要因（例えば、イメージセンサ分解能、最大ライン走査速度など）の中でも特に、撮像デバイス１２２のＦＯＶが撮像デバイス１２４および１２６の１または複数のＦＯＶと重なる領域からの、撮像の同期を可能にし得る。
【００９３】
撮像デバイス１２２、１２４および１２６におけるフレームレートタイミングは、関連のイメージセンサの分解能に依存し得る。例えば、両方のデバイスでライン走査速度が同等であると仮定すると、１つのデバイスが６４０×４８０の分解能を有するイメージセンサを含み、別のデバイスが１２８０×９６０の分解能を有するイメージセンサを含む場合、より高い解像度を有するセンサからイメージデータのフレームを取得するために、より多くの時間が必要となるであろう。
【００９４】
撮像デバイス１２２、１２４および１２６におけるイメージデータ取得のタイミングに影響を与え得る別の要因は、最大ライン走査速度である。例えば、撮像デバイス１２２、１２４および１２６に含まれるイメージセンサからイメージデータの行を取得するには、ある最小の時間量が必要となるであろう。ピクセルの遅延時間が加えられることがないものと仮定すると、イメージデータの行を取得するためのこの最小の時間量は、特定のデバイスに関する最大ライン走査速度に関連するであろう。より高い最大ライン走査速度を提示するデバイスは、より低い最大ライン走査速度を有するデバイスよりも、より高いフレームレートを提供する可能性がある。いくつかの実施形態において、１または複数の撮像デバイス１２４および１２６は、撮像デバイス１２２に関連づけられた最大ライン走査速度より高い最大ライン走査速度を有し得る。いくつかの実施形態において、撮像デバイス１２４および／または１２６の最大ライン走査速度は、撮像デバイス１２２の最大ライン走査速度の、１．２５倍、１．５倍、１．７５倍、または２倍、またはそれより大きいものであり得る。
【００９５】
別の実施形態において、撮像デバイス１２２、１２４および１２６は、同じ最大ライン走査速度を有し得るが、撮像デバイス１２２は、その最大走査速度より小さいか、それに等しい走査速度で動作し得る。システムは、１または複数の撮像デバイス１２４および１２６が、撮像デバイス１２２のライン走査速度に等しいライン走査速度で動作するように構成され得る。他の事例において、システムは、撮像デバイス１２４および／または撮像デバイス１２６のライン走査速度が、撮像デバイス１２２のライン走査速度の、１．２５倍、１．５倍、１．７５倍、または２倍、またはそれより大きいものであり得るように構成され得る。
【００９６】
いくつかの実施形態において、撮像デバイス１２２、１２４および１２６は非対称であり得る。すなわち、それらは、異なる視野（ＦＯＶ）および焦点距離を有するカメラを含み得る。撮像デバイス１２２、１２４および１２６の視野は、例えば、車両２００の環境に対する任意の所望の領域を含み得る。いくつかの実施形態において、撮像デバイス１２２、１２４および１２６の１または複数は、車両２００の前、車両２００の後ろ、車両２００の側部、またはそれらの組み合わせの環境からイメージデータを取得するように構成されてもよい。
【００９７】
さらに、撮像デバイス１２２、１２４および／または１２６のそれぞれに関連づけられた焦点距離は、各デバイスが、車両２００に対する所望の距離範囲のオブジェクトのイメージを取得するように、（例えば、適切なレンズなどを含むことによって）選択可能であり得る。例えば、いくつかの実施形態において、撮像デバイス１２２、１２４および１２６は、車両から数メートルの範囲内に接近したオブジェクトのイメージを取得し得る。また、撮像デバイス１２２、１２４および１２６は、車両からより遠い範囲（例えば、２５ｍ、５０ｍ、１００ｍ、１５０ｍ、またはそれ以上）のオブジェクトのイメージを取得するように構成され得る。さらに、撮像デバイス１２２、１２４および１２６の焦点距離は、１つの撮像デバイス（例えば、撮像デバイス１２２）が車両に比較的近い（例えば、１０ｍ以内または２０ｍ以内）オブジェクトのイメージを取得し得、他の撮像デバイス（例えば、撮像デバイス１２４および１２６）は、車両２００からより遠い（例えば、２０ｍ、５０ｍ、１００ｍ、１５０ｍ、などより大きい）オブジェクトのイメージを取得し得るように選択され得る。
【００９８】
いくつかの実施形態に従えば、１または複数の撮像デバイス１２２、１２４および１２６のＦＯＶは広角を有し得る。例えば、１４０度のＦＯＶを有することが好都合であり得、特に、車両２００の近傍の領域のイメージを取り込むために用いられ得る撮像デバイス１２２、１２４および１２６に対してあてはまる。例えば、撮像デバイス１２２は車両２００の右または左の領域のイメージを取り込むように用いられ得、そのような複数の実施形態においては、広いＦＯＶ（例えば、少なくとも１４０度）を有することが、撮像デバイス１２２に望ましくあり得る。
【００９９】
撮像デバイス１２２、１２４および１２６のそれぞれに関連づけられた視野は、それぞれの焦点距離に依存し得る。例えば、焦点距離が増大するにつれ、対応する視野は減少する。
【０１００】
撮像デバイス１２２、１２４および１２６は、任意の適切な視野を有するように構成され得る。１つの特定の例において、撮像デバイス１２２は、４６度の水平ＦＯＶを有し得、撮像デバイス１２４は、２３度の水平ＦＯＶを有し得、撮像デバイス１２６は、２３度から４６度の間の水平ＦＯＶを有し得る。別の例において、撮像デバイス１２２は、５２度の水平ＦＯＶを有し得、撮像デバイス１２４は、２６度の水平ＦＯＶを有し得、撮像デバイス１２６は、２６度から５２度の間の水平ＦＯＶを有し得る。いくつかの実施形態において、撮像デバイス１２２のＦＯＶの、撮像デバイス１２４および／または撮像デバイス１２６のＦＯＶに対する比は、１．５から２．０で変化し得る。他の実施形態において、この比は１．２５から２．２５の間で変化し得る。
【０１０１】
システム１００は、撮像デバイス１２２の視野が、少なくとも部分的に、または完全に、撮像デバイス１２４および／または撮像デバイス１２６の視野と重なるように構成され得る。いくつかの実施形態において、システム１００は、撮像デバイス１２４および１２６の視野が、撮像デバイス１２２の視野の、例えば範囲内にあり（例えば、１２２の視野より狭い）、かつ、１２２の視野と共通の中心を共有するように構成され得る。他の実施形態において、撮像デバイス１２２、１２４および１２６は、近接するＦＯＶを取り込み得、または、それらのＦＯＶにおいて部分的な重なりを有し得る。いくつかの実施形態において、撮像デバイス１２２、１２４および１２６の視野は、より狭いＦＯＶの撮像デバイス１２４および／または１２６の中心が、より広いＦＯＶのデバイス１２２の視野の下半分に配置され得るように、調整され得る。
【０１０２】
図２Ｆは、開示される実施形態と合致する、例示的な車両制御システムの概略図表現である。図２Ｆに明示されるように、車両２００は、スロットリングシステム２２０、ブレーキシステム２３０、およびステアリングシステム２４０を含み得る。システム１００は、１または複数のデータリンク（例えば、データを伝送するための任意の有線および／または無線リンク）を介して、スロットリングシステム２２０、ブレーキシステム２３０、およびステアリングシステム２４０のうち１または複数への入力（例えば、制御信号）を提供し得る。例えば、撮像デバイス１２２、１２４、および／または１２６によって取得されたイメージの分析に基づいて、システム１００は、（例えば、加速、ターン、車線変更などを生じさせることによって）車両２００を走行させるように、スロットリングシステム２２０、ブレーキシステム２３０、およびステアリングシステム２４０のうち１または複数への制御信号を提供し得る。さらなるシステム１００は、車両２００の動作状態（例えば、速度、車両２００がブレーキをかけているか、および／またはターンしているか、など）を示す、スロットリングシステム２２０、ブレーキシステム２３０、およびステアリングシステム２４０のうち１または複数からの入力を受信し得る。さらなる詳細が、以下の図４から図７に関連して提供される。
【０１０３】
図３Ａにおいて示されるように、車両２００は、車両２００の運転者または搭乗者とのインタラクションのためのユーザインタフェース１７０もまた含み得る。例えば、車両用途におけるユーザインタフェース１７０は、タッチスクリーン３２０、ノブ３３０、ボタン３４０、およびマイク３５０を含み得る。また、車両２００の運転者または搭乗者は、システム１００とインタラクションするように、ハンドル（例えば、方向指示灯ハンドルを含む、例えば、車両２００のステアリングコラム上または近くに配置される）、ボタン（例えば、車両２００のステアリングホイール上に配置される）などを用い得る。いくつかの実施形態において、マイク３５０は、バックミラー３１０に隣接して配置され得る。同様に、いくつかの実施形態において、撮像デバイス１２２は、バックミラー３１０の近くに配置され得る。また、いくつかの実施形態において、ユーザインタフェース１７０は、１または複数のスピーカ３６０（例えば、車両オーディオシステムのスピーカ）を含み得る。例えば、システム１００は、スピーカ３６０を介して様々な通知（例えば、警告）を提供し得る。
【０１０４】
図３Ｂから図３Ｄは、開示される実施形態と合致する、バックミラー（例えば、バックミラー３１０）の後ろに、かつ車両のフロントガラスに向かい合って配置されるように構成された、例示的なカメラマウント３７０の例示である。図３Ｂに示されるように、カメラマウント３７０は、撮像デバイス１２２、１２４および１２６を含み得る。撮像デバイス１２４および１２６は、グレアシールド３８０の後ろに配置され得、グレアシールド３８０は、車両のフロントガラスとぴったり重なっており、フィルムおよび／または反射防止材料の組成を含み得る。例えば、グレアシールド３８０は、そのシールドがマッチング傾斜を有する車両のフロントガラスと向かい合う位置に調整されるように配置され得る。いくつかの実施形態において、撮像デバイス１２２、１２４および１２６のそれぞれは、例えば、図３Ｄにおいて図示されるように、グレアシールド３８０の後ろに配置され得る。開示される実施形態は、撮像デバイス１２２、１２４および１２６、カメラマウント３７０、およびグレアシールド３８０のいかなる特定の構成にも限定されない。図３Ｃは、図３Ｂに示されたカメラマウント３７０を前方視点から見た例示である。
【０１０５】
本開示に利益を有する当業者には理解されるように、数々の変形形態および／または修正形態が、上記の開示される実施形態から作成されるであろう。例えば、すべての構成要素がシステム１００の動作に不可欠とは限らない。さらに、任意の構成要素が、システム１００の任意の適当な部分に配置されされ得、構成要素は、開示される実施形態の機能性を提供しながら、様々な構成へと再構成され得る。したがって、上記構成は例であり、上で説明された構成に関わらず、システム１００は、車両２００の周囲を分析し、分析に応答して車両２００を走行させるように、幅広い範囲の機能性を提供し得る。
【０１０６】
以下でさらに詳細に説明されるように、様々な開示される実施形態と合致して、システム１００は、自律運転および／または運転者支援技術に関連する様々な特徴を提供し得る。例えば、システム１００は、イメージデータ、位置データ（例えば、ＧＰＳ位置情報）、地図データ、速度データ、および／または、車両２００に含まれるセンサからのデータを分析し得る。システム１００は、例えば、イメージ取得ユニット１２０、位置センサ１３０、および他のセンサから、分析のためにデータを収集し得る。さらに、システム１００は、車両２００が特定の動作をとるべきか否かを判定し、次に、判定された動作を人の介在なしで自動的にとるように、収集されたデータを分析し得る。例えば、車両２００が人の介在なしで走行するとき、システム１００は、（例えば、スロットリングシステム２２０、ブレーキシステム２３０、およびステアリングシステム２４０のうち１または複数へと制御信号を送ることによって）車両２００のブレーキ、アクセル、および／またはステアリングを自動的に制御し得る。さらに、システム１００は、収集されたデータを分析し、収集されたデータの分析に基づいて車両の占有者に警報および／または警告を発し得る。システム１００によって提供される、様々な実施形態に関する追加の詳細が、以下に提供される。
【０１０７】
前向きのマルチ取り込みシステム
【０１０８】
上で説明されたように、システム１００は、マルチカメラシステムを使用する運転支援機能を提供し得る。マルチカメラシステムは、車両の前方向を向く１または複数のカメラを使用し得る。他の実施形態において、マルチカメラシステムは、車両の側部、または車両の後部に向く１または複数のカメラを含み得る。１つの実施形態において、例えば、システム１００は、２カメラ取り込みシステムを使用し得、ここで、第１のカメラおよび第２のカメラ（例えば、撮像デバイス１２２および１２４）は、車両（例えば、車両２００）の前部および／または側部に配置され得る。第１のカメラは、第２のカメラの視野より大きい、より小さい、または部分的に重なった、視野を有し得る。さらに、第１のカメラは、第１のカメラによって提供されたイメージの単眼イメージ分析を実行するように、第１のイメージプロセッサに接続され得、第２のカメラは、第２のカメラによって提供されたイメージの単眼イメージ分析を実行するように、第２のイメージプロセッサに接続され得る。第１の、および第２のイメージプロセッサの出力（例えば、処理された情報）は、組み合わせられ得る。いくつかの実施形態において、第２のイメージプロセッサは、第１のカメラおよび第２のカメラの両者からのイメージを受信して、ステレオ分析を実行し得る。別の実施形態において、システム１００は、各カメラが異なる視野を有する、３カメラ取り込みシステムを使用し得る。そのようなシステムは、したがって、車両の前方および側方の両者から様々な距離の位置にある、オブジェクトから導出された情報に基づいて決定を行い得る。単眼イメージ分析との言及は、単独の視点から（例えば、単独のカメラから）取り込まれたイメージに基づいてイメージ分析が実行される事例を指し得る。ステレオイメージ分析は、イメージ分析が、撮像パラメータに１または複数の変更を行って取り込まれた２またはそれ以上のイメージに基づいて実行される事例を参照し得る。例えば、ステレオイメージ分析を実行するために適切な取り込まれたイメージは、２またはそれ以上の異なる位置から、異なる視野から、異なる焦点距離を用いて、視差情報を伴って、などで取り込まれたイメージを含み得る。
【０１０９】
例えば、１つの実施形態において、システム１００は、撮像デバイス１２２、１２４および１２６を用いた３カメラ構成を実装し得る。そのような構成において、撮像デバイス１２２は、狭い視野（例えば、３４度、または約２０から４５度の範囲から選択された他の値など）を提供し得、撮像デバイス１２４は、広い視野（例えば、１５０度、または約１００から約１８０度の範囲から選択された他の値）を提供し得、撮像デバイス１２６は、中間の視野（例えば、４６度、または約３５から約６０度の範囲から選択された他の値）を提供し得る。いくつかの実施形態において、撮像デバイス１２６は、主要カメラ、またはプライマリカメラとして動作し得る。撮像デバイス１２２、１２４および１２６は、バックミラー３１０の後ろに配置され、実質的に互いに並んで（例えば、６ｃｍ離れて）配置され得る。さらに、いくつかの実施形態において、上で説明されたように、撮像デバイス１２２、１２４および１２６のうち１または複数は、車両２００のフロントガラスとぴったり重なっているグレアシールド３８０の後ろに取りつけられ得る。そのようなシールドは、撮像デバイス１２２、１２４および１２６への、車の内側からのいかなる反射の影響も減少させるように作用し得る。
【０１１０】
別の実施形態において、図３Ｂおよび３Ｃに関連して上で説明されたように、広い視野のカメラ（例えば、上記の例の撮像デバイス１２４）は、狭い視野のカメラおよび主要視野のカメラ（例えば、上記の例のイメージデバイス１２２および１２６）よりも低い位置に取りつけられ得る。この構成は、広い視野のカメラからの自由な視線を提供し得る。反射を低減するように、カメラは、車両２００のフロントガラスの近くに取りつけられ得、反射光を減衰するようにカメラ上に偏光板を含み得る。
【０１１１】
３カメラシステムは、特定の性能の特性を提供し得る。例えば、いくつかの実施形態は、別のカメラから得られた検出に基づいて、１つのカメラによるオブジェクトの検出を検証する可能性を含み得る。上で説明された３カメラ構成において、処理ユニット１１０は、例えば３つの処理デバイス（例えば、上で説明されたような、３つのＥｙｅＱシリーズのプロセッサチップ）を含み得、各処理デバイスは、撮像デバイス１２２、１２４および１２６のうち１または複数によって取り込まれたイメージの処理に特化される。
【０１１２】
３カメラシステムにおいて、第１の処理デバイスは、主要カメラおよび狭い視野のカメラの両者からイメージを受信し得、例えば、他の車両、歩行者、車線標示、交通標識、交通信号灯、および他の道路オブジェクトを検出するように、狭いＦＯＶのカメラの視覚的処理を実行し得る。さらに、第１の処理デバイスは、主要カメラからのイメージと狭い視野のカメラからのイメージとの間のピクセルの視差を計算し得、車両２００の環境の３Ｄ再構築を生成し得る。第１の処理デバイスは、次に、別のカメラからの情報に基づいて算出された３Ｄ地図データまたは３Ｄ情報と、３Ｄ再構築を結合し得る。
【０１１３】
第２の処理デバイスは、主要カメラからのイメージを受信し得、他の車両、歩行者、車線標示、交通標識、交通信号灯、および他の道路オブジェクトを検出するように、視覚的処理を実行し得る。加えて、第２の処理デバイスは、カメラ変位を計算し、変位に基づいて一連のイメージの間のピクセルの視差を計算し、シーン（例えば、ｓｔｒｕｃｔｕｒｅ  ｆｒｏｍ  ｍｏｔｉｏｎ）の３Ｄ再構築を生成し得る。第２の処理デバイスは、ｓｔｒｕｃｔｕｒｅ  ｆｒｏｍ  ｍｏｔｉｏｎベースの３Ｄ再構築を、ステレオ３Ｄイメージと組み合わせるように、第１の処理デバイスに送信し得る。
【０１１４】
第３の処理デバイスは、広いＦＯＶのカメラからイメージを受信し得、車両、歩行者、車線標示、交通標識、交通信号灯、および他の道路オブジェクトを検出するように、イメージを処理し得る。第３の処理デバイスは、さらに、車線を変更する車両、歩行者など、イメージ内で動くオブジェクトを識別するようにイメージを分析する、追加の処理命令を実行し得る。
【０１１５】
いくつかの実施形態において、イメージベースの情報のストリームの取り込みおよび処理を独立に行わせることは、システム内に冗長性を提供する機会を提供し得る。そのような冗長性は、例えば、第１の撮像デバイスおよびそのデバイスから処理されたイメージを用いて、少なくとも第２の撮像デバイスからのイメージ情報を取り込みおよび処理することによって取得された情報を検証すること、および／または、補足することを含み得る。
【０１１６】
いくつかの実施形態において、システム１００は、車両２００に走行支援を提供するときに、２つの撮像デバイス（例えば、撮像デバイス１２２および１２４）を用い得、他の２つの撮像デバイスから受信されたデータの分析に冗長性を提供し、分析を検証するように、第３の撮像デバイス（例えば、撮像デバイス１２６）を用い得る。例えば、そのような構成において、撮像デバイス１２２および１２４は、車両２００を走行させるためのシステム１００によるステレオ分析にイメージを提供し得、撮像デバイス１２６は、撮像デバイス１２２および／または撮像デバイス１２４から取り込まれたイメージに基づいて取得された情報の冗長性および検証を提供するように、システム１００による単眼分析のためにイメージを提供し得る。すなわち、撮像デバイス１２６（および対応する処理デバイス）は、撮像デバイス１２２および１２４から導出された分析へのチェックを提供するための、冗長なサブシステムを提供する（例えば、自動緊急ブレーキ（ＡＥＢ）システムを提供する）と見なされてよい。さらに、いくつかの実施形態において、１または複数のセンサ（例えば、レーダ、ライダ、音響センサ、車両外の１または複数の送受信機から受信された情報など）から受信された情報に基づいて、受信されたデータの冗長性および検証が補足され得る。
【０１１７】
当業者は、上記のカメラの構成、カメラの配置、カメラの数、カメラの位置などが、例にすぎないことを認識するであろう。全体的なシステムに関して説明されたこれらの構成要素などは、開示される実施形態の範囲から逸脱することなく、様々な異なる構成で組み合わせられ得、用いられ得る。運転者支援、および／または、自律走行車両の機能性を提供するための、マルチカメラシステムの使用に関するさらなる詳細が、以下に続く。
【０１１８】
図４は、開示される実施形態と合致する１または複数の操作を実行ための命令を格納され／プログラミングされ得る、メモリ１４０および／または１５０の例示的な機能ブロック図である。以下はメモリ１４０を参照するが、当業者は、命令はメモリ１４０および／または１５０に格納され得ることを認識するであろう。
【０１１９】
図４に示されるように、メモリ１４０は、単眼イメージ分析モジュール４０２、ステレオイメージ分析モジュール４０４、速度および加速度モジュール４０６、および走行応答モジュール４０８を格納し得る。開示される実施形態は、メモリ１４０のいかなる特定の構成にも限定されない。さらに、アプリケーションプロセッサ１８０および／またはイメージプロセッサ１９０は、メモリ１４０に含まれるいかなるモジュール４０２、４０４、４０６および４０８に格納された命令も実行し得る。当業者は、処理ユニット１１０への以下の説明における参照が、個々に、または集合的に、アプリケーションプロセッサ１８０およびイメージプロセッサ１９０を指し得ることを、理解するであろう。したがって、以下のいかなるプロセスの段階も、１または複数の処理デバイスによって実行され得る。
【０１２０】
１つの実施形態において、単眼イメージ分析モジュール４０２は、命令（コンピュータビジョンソフトウェアなどの）を格納し得、それは、処理ユニット１１０によって実行されたとき、撮像デバイス１２２、１２４および１２６のうち１つによって取得されたイメージのセットの単眼イメージ分析を実行する。いくつかの実施形態において、処理ユニット１１０は、単眼イメージ分析を実行するように、イメージのセットからの情報に、追加の知覚情報（例えば、レーダ、ライダなどからの情報）を結合し得る。以下の図５Ａから図５Ｄに関連して説明されるように、単眼イメージ分析モジュール４０２は、車線標示、車両、歩行者、道路標識、高速道路出口ランプ、交通信号灯、危険物、および、車両の環境に関連づけられた任意の他の特徴などの、イメージのセット内の特徴のセットを検出するための命令を含み得る。分析に基づいて、走行応答モジュール４０８に関連して以下に説明されるように、システム１００（例えば、処理ユニット１１０を介して）は、車両２００に、ターン、車線変更、加速の変更などの、１または複数の走行応答を生じさせ得る。
【０１２１】
１つの実施形態において、ステレオイメージ分析モジュール４０４は、処理ユニット１１０によって実行されたとき、撮像デバイス１２２、１２４および１２６のいずれかから選択された撮像デバイスの組み合わせによって取得された第１および第２のイメージセットのステレオイメージ分析を実行する、命令（コンピュータビジョンソフトウェアなど）を格納し得る。いくつかの実施形態において、処理ユニット１１０は、ステレオイメージ分析を実行するように、第１および第２のイメージセットからの情報と、追加の知覚情報（例えば、レーダからの情報）とを結合し得る。例えば、ステレオイメージ分析モジュール４０４は、撮像デバイス１２４によって取得されたイメージの第１のセットと、撮像デバイス１２６によって取得されたイメージの第２のセットとに基づいてステレオイメージ分析を実行するための命令を含み得る。以下の図６に関連して説明されるように、ステレオイメージ分析モジュール４０４は、車線標示、車両、歩行者、道路標識、高速道路出口ランプ、交通信号灯、危険物などの、第１および第２のイメージセット内の特徴のセットを検出するための命令を含み得る。分析に基づいて、走行応答モジュール４０８に関連して以下に説明されるように、処理ユニット１１０は、ターン、車線変更、加速の変更など、車両２００に１または複数の走行応答を生じさせ得る。さらに、いくつかの実施形態において、ステレオイメージ分析モジュール４０４は、知覚情報が取り込みおよび処理される環境における、コンピュータビジョンアルゴリズムを使用してオブジェクトの検出および／またはラべリングを行うように構成され得るシステムなどの、訓練されたシステム（ニューラルネットワークまたはディープニューラルネットワークなど）、または、訓練されていないシステムに関連づけられた技法を実装し得る。１つの実施形態において、ステレオイメージ分析モジュール４０４、および／または他のイメージ処理モジュールは、訓練されたシステムおよび訓練されていないシステムの組み合わせを使用するように構成され得る。
【０１２２】
１つの実施形態において、速度および加速度モジュール４０６は、車両２００の速度および／または加速度に変化を生じさせるように構成される、車両２００内の１または複数のコンピューティングデバイスおよび電気機械デバイスから受信されるデータを、分析するように構成されたソフトウェアを格納し得る。例えば、処理ユニット１１０は、単眼イメージ分析モジュール４０２および／またはステレオイメージ分析モジュール４０４の実行から導出されるデータに基づいて車両２００の標的速度を計算するように、速度および加速度モジュール４０６に関連づけられた命令を実行し得る。そのようなデータは、例えば、目標の位置、速度および／または加速度、近くの車両、歩行者、または道路オブジェクトに対する車両２００の位置および／または速度、道路の車線標示に対する車両２００の位置情報、などを含み得る。さらに、処理ユニット１１０は、知覚入力（例えば、レーダからの情報）、および、車両２００のスロットリングシステム２２０、ブレーキシステム２３０、および／またはステアリングシステム２４０などの、車両２００の他のシステムからの入力に基づいて車両２００に関する標的速度を計算し得る。算出された標的速度に基づいて、処理ユニット１１０は、車両２００のスロットリングシステム２２０、ブレーキシステム２３０、および／またはステアリングシステム２４０に電子信号を送信して、例えば、車両２００のブレーキの物理的な押し下げ、またはアクセラレータの緩和のオフによる、速度および／または加速度の変更を引き起こし得る。 
【０１２３】
１つの実施形態において、走行応答モジュール４０８は、単眼イメージ分析モジュール４０２および／またはステレオイメージ分析モジュール４０４の実行から導出されたデータに基づいて所望の走行応答を判定するように、処理ユニット１１０によって実行可能なソフトウェアを格納し得る。そのようなデータは、近くの車両、歩行者、道路オブジェクト、車両２００に関する目標位置情報、などに関連づけられた位置および速度情報を含み得る。加えて、いくつかの実施形態において、走行応答は、地図データ、予め定められた車両２００の位置、および／または、車両２００と、単眼イメージ分析モジュール４０２および／またはステレオイメージ分析モジュール４０４の実行から検出された１または複数のオブジェクトとの間の相対速度または相対加速度に、（部分的にまたは完全に）基づき得る。走行応答モジュール４０８は、また、知覚入力（例えば、レーダからの情報）、および、車両２００のスロットリングシステム２２０、ブレーキシステム２３０、およびステアリングシステム２４０などの、車両２００の他のシステムからの入力に基づいて所望の走行応答を判定し得る。所望の走行応答に基づいて、処理ユニット１１０は、予め定められた角度の回転を実現するように、車両２００のスロットリングシステム２２０、ブレーキシステム２３０、およびステアリングシステム２４０に電子信号を送信して、例えば車両２００のステアリングホイールを回転させることによって所望の走行応答を引き起こし得る。いくつかの実施形態において、処理ユニット１１０は、車両２００の速度の変更の算出のために、速度および加速度モジュール４０６の実行への入力として、走行応答モジュール４０８（例えば、所望の走行応答）の出力を用い得る。
【０１２４】
さらに、本明細書に開示されたいかなるモジュール（例えばモジュール４０２、４０４および４０６）も、訓練されたシステム（ニューラルネットワークまたはディープニューラルネットワークなど）、または訓練されていないシステムに関連づけられた技法を実装し得る。
【０１２５】
図５Ａは、開示される実施形態と合致する、単眼イメージ分析に基づいて１または複数の走行応答を生じさせる、例示的なプロセス５００Ａを示すフローチャートである。段階５１０において、処理ユニット１１０は、処理ユニット１１０とイメージ取得ユニット１２０との間のデータインタフェースを介して複数のイメージ１２８を受信し得る。例えば、イメージ取得ユニット１２０に含まれるカメラ（視野２０２を有する撮像デバイス１２２など）は、車両２００の前方（または、例えば、車両の側部または後部）の領域の複数のイメージを取り込んで、それらを、データ接続（例えば、デジタル、有線、ＵＳＢ、無線、Ｂｌｕｅｔｏｏｔｈなど）を介して、処理ユニット１１０に送信し得る。処理ユニット１１０は、以下に図５Ｂから図５Ｄに関連してさらに詳細に説明されるように、段階５２０において、単眼イメージ分析モジュール４０２を実行して、複数のイメージを分析し得る。分析を実行することによって、処理ユニット１１０は、車線標示、車両、歩行者、道路標識、高速道路出口ランプ、交通信号灯などの、イメージのセット内の特徴のセットを検出し得る。
【０１２６】
処理ユニット１１０は、また、段階５２０において、単眼イメージ分析モジュール４０２を実行して、例えば、トラックのタイヤの部品、抜け落ちた道路標識、ばらの貨物、小動物などの、様々な道路障害物を検出し得る。道路障害物は、構造、形状、サイズ、および色が様々であり得るため、そのような障害物の検出を、より課題にし得る。いくつかの実施形態において、処理ユニット１１０は、単眼イメージ分析モジュール４０２を実行して、複数のイメージ上でマルチフレーム分析を実行して、道路障害物を検出し得る。例えば、処理ユニット１１０は、道路の３Ｄ地図を構築するように、連続するイメージフレームの間のカメラの動きを推定し、フレーム間のピクセルにおける視差を計算し得る。処理ユニット１１０は、次に、３Ｄ地図を使用して、路面を検出し、同様に、路面上に存在する障害物を検出し得る。
【０１２７】
段階５３０において、処理ユニット１１０は、段階５２０において実行される分析、および、図４に関連して上で説明されたような技法に基づいて車両２００に１または複数の走行応答を生じさせる、走行応答モジュール４０８を実行し得る。走行応答は、例えば、ターン、車線変更、加速度の変更などを含み得る。いくつかの実施形態において、処理ユニット１１０は、速度および加速度モジュール４０６の実行から導出されるデータを使用して、１または複数の走行応答を生じさせ得る。加えて、複数の走行応答は、同時に、連続して、またはそれらの任意の組み合わせで生じ得る。例えば、処理ユニット１１０は、車両２００をある車線に変更させ、次に、例えば、車両２００のステアリングシステム２４０およびスロットリングシステム２２０に制御信号を逐次的に伝送することによって加速させる。代替的に、処理ユニット１１０は、例えば、車両２００のブレーキシステム２３０およびステアリングシステム２４０に制御信号を同時に伝送することによって、車両２００にブレーキをかけさせながら、同時に車線を変更させ得る。
【０１２８】
図５Ｂは、開示される実施形態と合致して、イメージのセットにおいて、１または複数の車両および／または歩行者を検出する例示的なプロセス５００Ｂを示すフローチャートである。処理ユニット１１０は、プロセス５００Ｂを実装する単眼イメージ分析モジュール４０２を実行し得る。段階５４０において、処理ユニット１１０は、可能性のある車両および／または歩行者を表す、候補オブジェクトのセットを判定し得る。例えば、処理ユニット１１０は１または複数のイメージをスキャンし、そのイメージを１または複数の予め定められたパターンと比較し、関心のあるオブジェクト（例えば、車両、歩行者、またはそれらの部分）を含み得る可能な位置を各イメージの範囲内で識別し得る。予め定められたパターンが、「誤ったヒット」である高速および、「喪失」である低速を実現するように設計され得る。例えば、処理ユニット１１０は、候補オブジェクトを可能性のある車両または歩行者として識別するための予め定められたパターンとの、低い閾値の類似性を使用し得る。そうすることにより、処理ユニット１１０が、車両または歩行者を表す候補オブジェクトを喪失する（例えば、識別しない）確率を低減することを可能にし得る。
【０１２９】
段階５４２において、処理ユニット１１０は、分類基準に基づいて、特定の候補（例えば、無関係または関連性の低いオブジェクト）を除くように、候補オブジェクトのセットをフィルタリングし得る。そのような基準は、データベース（例えば、メモリ１４０に格納されたデータベース）に格納されたオブジェクトの種類に関連づけられた様々なプロパティから導出され得る。プロパティは、オブジェクト形状、寸法、テクスチャ、位置（例えば、車両２００に対しての）などを含み得る。したがって、処理ユニット１１０は、候補オブジェクトのセットから誤った候補を拒否する基準の、１または複数のセットを使用し得る。
【０１３０】
段階５４４において、処理ユニット１１０は、候補オブジェクトのセットにおけるオブジェクトが、車両および／または歩行者を表すかどうかを判定するように、イメージの複数のフレームを分析し得る。例えば、処理ユニット１１０は、検出された候補オブジェクトを順次のフレームにわたってトラッキングし得、検出されたオブジェクトに関連づけられたフレームごとのデータ（例えば、サイズ、車両２００に対しての位置など）を蓄積し得る。加えて、処理ユニット１１０は、検出されたオブジェクトに関するパラメータを推定し得、オブジェクトのフレームごとの位置データを予測位置と比較し得る。
【０１３１】
段階５４６において、処理ユニット１１０は、検出されたオブジェクトに関する測定値のセットを構築し得る。そのような測定は、例えば、検出されたオブジェクトに関連づけられた位置、速度、および加速度値（車両２００に対しての）を含み得る。いくつかの実施形態において、処理ユニット１１０は、カルマンフィルタまたは線形二次推定（ＬＱＥ）などの、一連の時間ベースの観測を用いた推定技法に基づいて、および／または、異なるオブジェクトの種類（例えば、車、トラック、歩行者、自転車、道路標識など）に関する利用可能なモデリングデータに基づいて測定値を構築し得る。カルマンフィルタは、オブジェクトのスケールの測定値に基づき得、ここで、スケール測定値は、衝突までの時間（例えば、車両２００がオブジェクトに達するまでの時間量）に比例する。したがって、段階５４０−５４６を実行することにより、処理ユニット１１０は、取り込まれたイメージのセット内に現れる車両および歩行者を識別し得、車両および歩行者に関連づけられた情報（例えば、位置、速度、サイズ）を導出し得る。識別子および導出された情報に基づいて、処理ユニット１１０は、上の図５Ａに関連して説明されるように、車両２００において１または複数の走行応答を生じさせ得る。
【０１３２】
段階５４８において、処理ユニット１１０は、「誤ったヒット（ｆａｌｓｅ  ｈｉｔ）」の検出の確率と、車両または歩行者を表す候補オブジェクトの喪失の確率とを低減するように、１または複数のイメージのオプティカルフロー分析を実行し得る。オプティカルフロー分析は、例えば、他の車両および歩行者に関連づけられた１または複数のイメージにおいて、路面の動きとは別個の、車両２００に対する動きパターンを分析することを指し得る。処理ユニット１１０は、異なる時間に取り込まれた、複数のイメージフレームにわたってオブジェクトの異なる位置を観測することによって、候補オブジェクトの動きを計算し得る。処理ユニット１１０は、候補オブジェクトの動きを算出するための数学的モデルへの入力として、位置および時間値を使用し得る。したがって、オプティカルフロー分析は、近くの車両２００である車両および歩行者を検出する別の方法を提供し得る。処理ユニット１１０は、段階５４０−５４６と組み合わせてオプティカルフロー分析を実行し得、車両および歩行者の検出に関する冗長性を提供し得、システム１００の信頼性を増大させ得る。
【０１３３】
図５Ｃは、開示される実施形態と合致する、イメージのセットにおいて路面標示および／または車線形状情報を検出するための、例示的なプロセス５００Ｃを示すフローチャートである。処理ユニット１１０は、プロセス５００Ｃを実装するように、単眼イメージ分析モジュール４０２を実行し得る。段階５５０において、処理ユニット１１０は、１または複数のイメージをスキャンすることによって、オブジェクトのセットを検出し得る。車線標示、車線形状情報、および他の関係する路面標示のセグメントを検出するように、処理ユニット１１０は、オブジェクトのセットをフィルタリングし、無関係である旨を判定されたもの（例えば、わずかなくぼみ、小さな岩など）を除き得る。段階５５２において、処理ユニット１１０は、同じ路面標示または車線標示に属する段階５５０において検出されたセグメントを、共にグループ化し得る。グループ化に基づいて、処理ユニット１１０は、数学的モデルなどの、検出されたセグメントを表すモデルを展開し得る。
【０１３４】
段階５５４において、処理ユニット１１０は、検出されたセグメントに関連づけられた測定値のセットを構築し得る。いくつかの実施形態において、処理ユニット１１０は、イメージ平面から現実世界の平面上に、検出されたセグメントの射影を生成し得る。射影は、検出された道路の位置、傾き、湾曲、および湾曲の導関数などの物理的特性に対応する係数を有する３次多項式を用いて特徴づけられ得る。射影の生成において、処理ユニット１１０は、車両２００に関連づけられたピッチおよびロールの変化量と同様に、路面における変化を考慮に入れ得る。さらに、処理ユニット１１０は、路面上に示された位置および動きのきっかけを分析することによって、道路高度をモデリングし得る。さらに、処理ユニット１１０は、１または複数のイメージにおける特徴点のセットをトラッキングすることによって、車両２００に関連づけられたピッチおよびロールの変化量を推定し得る。
【０１３５】
段階５５６において、処理ユニット１１０は、例えば、検出されたセグメントを連続するイメージフレームにわたってトラッキングし、検出されたセグメントに関連づけられたフレームごとのデータを蓄積することによって、マルチフレーム分析を実行し得る。処理ユニット１１０がマルチフレーム分析を実行するにつれて、段階５５４において構築される測定値のセットは、より信頼できるものになり、次第により高い信頼水準と関連づけられるものになり得る。したがって、段階５５０、５５２、５５４および５５６を実行することによって、処理ユニット１１０は、取り込まれたイメージのセット内に現れる路面標示を識別し得、車線形状情報を導出し得る。識別子および導出された情報に基づいて、処理ユニット１１０は、上の図５Ａに関連して説明されるように、車両２００に１または複数の走行応答を生じさせ得る。
【０１３６】
段階５５８において、処理ユニット１１０は、その周囲のコンテキストにおいて、車両２００の安全モデルをさらに展開するように、追加の情報源を考慮し得る。処理ユニット１１０は、システム１００が安全に車両２００の自律的な制御を実行し得るコンテキストを画定するように、安全モデルを使用し得る。安全モデルを展開するように、いくつかの実施形態において、処理ユニット１１０は、他の車両の位置および動き、検出された道路の縁部および障害物、および／または、地図データから抽出された一般的な道路形状説明（地図データベース１６０からのデータなど）を考慮し得る。追加の情報源を考慮することによって、処理ユニット１１０は、路面標示および車線形状を検出するための冗長性を提供し得、システム１００の信頼性を増大し得る。
【０１３７】
図５Ｄは、開示される実施形態と合致する、イメージのセットにおいて交通信号灯を検出するための例示的なプロセス５００Ｄを示すフローチャートである。処理ユニット１１０は、プロセス５００Ｄを実装するように、単眼イメージ分析モジュール４０２を実行し得る。段階５６０において、処理ユニット１１０は、イメージのセットをスキャンし、交通信号灯を含む可能性があるイメージ内の位置に現れるオブジェクトを識別し得る。例えば、処理ユニット１１０は、候補オブジェクトのセットを構築するように、識別されたオブジェクトをフィルタリングし得、交通信号灯に対応する可能性が低いそれらのオブジェクトを排除する。フィルタリングは、形状、寸法、テクスチャ、位置（例えば，車両２００に対しての）などの、交通信号灯に関連づけられた様々な特性に基づいて行われ得る。そのような特性は、複数の例の交通信号灯および交通制御信号に基づき得、データベースに格納され得る。いくつかの実施形態において、処理ユニット１１０は、可能性のある交通信号灯を反映する候補オブジェクトのセットにマルチフレーム分析を実行し得る。例えば、処理ユニット１１０は、連続するイメージフレームにわたって候補オブジェクトをトラッキングし得、候補オブジェクトの現実世界での位置を推定し得、動いているそれらのオブジェクト（交通信号灯の可能性が低い）をフィルタリングして取り除き得る。いくつかの実施形態において、処理ユニット１１０は、候補オブジェクトに色分析を実行し得、可能性のある交通信号灯の内側に現れる、検出された色の相対位置を識別し得る。
【０１３８】
段階５６２において、処理ユニット１１０は、ジャンクションの形状を分析し得る。分析は、以下の任意の組み合わせに基づき得る。（ｉ）車両２００のいずれかの側部で検出された車線の数、（ｉｉ）道路に検出されたマーク（矢印など）、および、（ｉｉｉ）地図データから抽出されたジャンクションの説明（地図データベース１６０からのデータなど）。処理ユニット１１０は、単眼分析モジュール４０２の実行から導出された情報を用いた分析を行い得る。さらに、処理ユニット１１０は、段階５６０において検出された交通信号灯と、近くの車両２００が現れる車線との一致を判定し得る。
【０１３９】
車両２００がジャンクションに接近するにつれ、段階５６４において、処理ユニット１１０は分析されたジャンクションの形状、および検出された交通信号灯に関連づけられた信頼水準を更新し得る。例えば、ジャンクションに実際に現れた交通信号灯の数と比較された、ジャンクションに現れると推定された交通信号灯の数は、信頼水準に影響し得る。したがって、信頼水準に基づいて、安全状態を向上するために、処理ユニット１１０は、車両２００の運転者に制御を委任し得る。段階５６０、５６２および５６４を実行することによって、処理ユニット１１０は、取り込まれたイメージのセット内に現れる交通信号灯を識別し得、ジャンクションの形状情報を分析し得る。識別および分析に基づいて、処理ユニット１１０は、上の図５Ａに関連して説明されるように、車両２００の１または複数の走行応答を生じさせ得る。
【０１４０】
図５Ｅは、開示される実施形態と合致する、車両経路に基づいて車両２００に１または複数の走行応答を生じさせるための例示的なプロセス５００Ｅを示すフローチャートである。段階５７０において、処理ユニット１１０は、車両２００と関連づけられた初期車両経路を構築し得る。車両経路は、座標（ｘ，ｚ）で表される点のセットを用いて表され得、点のセットの中の２つの点の間の距離ｄｉは、１から５メートルの範囲にあり得る。１つの実施形態において、処理ユニット１１０は、左道路多項式および右道路多項式などの、２つの多項式を用いて初期車両経路を構築し得る。処理ユニット１１０は、２つの多項式の幾何的な中間点、および、もし位置ずれがあれば（位置ずれゼロは、車線の中央を移動することに対応し得る）、得られた車両経路に含まれる各点からの、予め定められた位置ずれ分の位置ずれ（例えば、スマート車線の位置ずれ）を、計算し得る。位置ずれは、車両経路の任意の２つの点の間のセグメントと垂直な方向となり得る。別の実施形態において、処理ユニット１１０は、１つの多項式および推定車線幅を用いて、推定車線幅の半分に予め定められた位置ずれ（例えば、スマート車線の位置ずれ）を加えた値で車両経路の各点を位置ずれさせる。
【０１４１】
段階５７２において、処理ユニット１１０は、段階５７０で構築された車両経路を更新し得る。処理ユニット１１０は、車両経路を表す点のセットの中の２つの点の間の距離ｄｋが、上で説明された距離ｄｉより小さくなるように、より高い解像度を用いて、段階５７０で構築された車両経路を再構成し得る。例えば、距離ｄｋは、０．１から０．３メートルの範囲にあり得る。処理ユニット１１０は、放物線スプラインアルゴリズムを用いて車両経路を再構成し得、それは車両経路の長さの合計に対応する（すなわち、車両経路を表す点のセットに基づく）累積距離ベクトルＳを生成し得る。
【０１４２】
段階５７４において、処理ユニット１１０は、段階５７２で構築される更新された車両経路に基づいて、先読み点（（ｘｌ，ｚｌ）として座標で表される）を判定し得る。処理ユニット１１０は、累積距離ベクトルＳから先読み点を抽出し得、先読み点は、先読み距離および先読み時間に関連づけられ得る。先読み距離は、１０から２０メートルの範囲に下限を有し得、車両２００の速度と先読み時間との積として算出され得る。例えば、車両２００の速度が減少するにつれて、先読み距離もまた減少し得る（例えば、下限に達するまで）。先読み時間は、０．５から１．５秒の範囲にあり得、ヘッディングエラートラッキング制御ループなどの、車両２００に走行応答を生じさせることに関連づけられた１または複数の制御ループのゲインに反比例し得る。例えば、ヘッディングエラートラッキング制御ループのゲインは、ヨー角速度ループ、ステアリングアクチュエータループ、車横方向ダイナミクスなどの帯域幅に依存し得る。したがって、ヘッディングエラートラッキング制御ループのゲインがより高くなると、先読み時間はより低くなる。
【０１４３】
段階５７６において、処理ユニット１１０は、段階５７４で判定された先読み点に基づいてヘッディングエラーおよびヨー角速度コマンドを判定し得る。処理ユニット１１０は、先読み点の逆正接、例えば、ａｒｃｔａｎ（ｘｌ／ｚｌ）を算出することによってヘッディングエラーを判定し得る。処理ユニット１１０は、ヘッディングエラーとハイレベル制御ゲインの積として、ヨー角速度コマンドを判定し得る。先読み距離が下限ではない場合は、ハイレベル制御ゲインは、（２／先読み時間）に等しくなり得る。そうでなければ、ハイレベル制御ゲインは、（２＊車両２００の速度／先読み距離）に等しくなり得る。
【０１４４】
図５Ｆは、開示される実施形態と合致する、先行車両が車線を変更中かどうかを判定するための例示的なプロセス５００Ｆを示す、フローチャートである。段階５８０において、処理ユニット１１０は、先行車両（例えば、車両２００の前方を移動する車両）に関連づけられた走行情報を判定し得る。例えば、処理ユニット１１０は、上の図５Ａおよび５Ｂに関連して説明される技法を用いて、先行車両の位置、速度（例えば、方向および速さ）、および／または、加速度を判定し得る。処理ユニット１１０は、また、上の図５Ｅに関連して説明される技法を用いて、１または複数の道路多項式、先読み点（車両２００に関連づけられた）、および／または、スネイルトレイル（例えば、先行車両によって占められた経路を記述する点のセット）を判定し得る。
【０１４５】
段階５８２において、処理ユニット１１０は、段階５８０で判定された走行情報を分析し得る。１つの実施形態において、処理ユニット１１０は、スネイルトレイルと道路多項式との間の距離を計算し得る（例えば、軌跡に沿って）。軌跡に沿ったこの距離の差異が、予め定められた閾値（例えば、直線道路では０．１から０．２メートル、適度にカーブした道路では０．３から０．４メートル、および、急カーブの道路では０．５から０．６メートル）を超える場合、処理ユニット１１０は、先行車両が車線を変更しそうである旨を判定し得る。複数の車両が車両２００の前方で移動していることが検出された場合には、処理ユニット１１０は、各車両に関連づけられたスネイルトレイルを比較し得る。比較に基づいて、処理ユニット１１０は、そのスネイルトレイルが他の車両のスネイルトレイルと合致しない車両が、車線を変更しそうである旨を判定し得る。加えて、処理ユニット１１０は、（先行車両に関連づけられた）スネイルトレイルの曲率を、先行車両が移動している道路セグメントの予想される曲率と比較し得る。予想される曲率は、地図データ（例えば、地図データベース１６０からのデータ）、道路多項式から、他の車両のスネイルトレイル、道路についての予備知識、などから抽出され得る。道路セグメントのスネイルトレイルの曲率と予想される曲率との差異が予め定められた閾値を超える場合、処理ユニット１１０は、先行車両が車線を変更しそうである旨を判定し得る。
【０１４６】
別の実施形態において、処理ユニット１１０は、特定の期間（例えば、０．５から１．５秒）、先行車両の瞬間の位置を先読み点（車両２００に関連づけられた）と比較し得る。先行車両の瞬間の位置と先読み点との間の距離が特定の期間の最中に変化し、かつ、変化の累積的合計が予め定められた閾値（例えば、直線道路では０．３から０．４メートル、適度にカーブした道路では０．７から０．８メートル、急カーブの道路では１．３から１．７メートル）を超えた場合、処理ユニット１１０は、先行車両が車線を変更しそうである旨を判定し得る。別の実施形態において、処理ユニット１１０は、軌跡に沿って移動する横方向距離と、予想されるスネイルトレイルの曲率とを比較することによって、スネイルトレイルの形状を分析し得る。予想される曲率半径は、計算（δｚ２＋δｘ２）／２／（δｘ）に従って判定され得、ここで、δｘは移動した横方向距離を表し、δｚは移動した縦方向距離を表す。移動する横方向距離と予想される曲率との差異が予め定められた閾値（例えば、５００から７００メートル）を超える場合、処理ユニット１１０は、先行車両が車線を変更しそうである旨を判定し得る。別の実施形態において、処理ユニット１１０は、先行車両の位置を分析し得る。先行車両の位置が道路多項式をあいまいにする（例えば、先行車両が道路多項式の上部にオーバーレイする）場合、次に、処理ユニット１１０は、先行車両が車線を変更しそうである旨を判定し得る。別の車両が先行車両の前方に検出され、２つの車両のスネイルトレイルが平行でないような、位置に先行車両がある場合において、処理ユニット１１０は、（より近い）先行車両が車線を変更しそうである旨を判定し得る。
【０１４７】
段階５８４において、処理ユニット１１０は、段階５８２で実行された分析に基づいて、先行車両２００が車線を変更しているか否かを判定し得る。例えば、処理ユニット１１０は、段階５８２で実行された個別の分析の重み付けされた平均に基づいて、判定を行い得る。そのようなスキームのもとで、例えば、先行車両が特定の種類の分析に基づいて車線を変更しそうである旨の、処理ユニット１１０による決定は、「１」の値を割り当てられ得る（「０」は、先行車両が車線を変更しそうでない旨の判定を表す）。段階５８２で実行された異なる分析は異なる重みを割り当てられ得、開示される実施形態は、分析と重みとのいかなる特定の組み合わせにも限定されない。 
【０１４８】
図６は、開示される実施形態と合致して、ステレオイメージ分析に基づいて１または複数の走行応答を生じさせるための、例示的なプロセス６００を示すフローチャートである。段階６１０において、処理ユニット１１０は、データインタフェース１２８を介して第１および第２の複数のイメージを受信し得る。例えば、（視野２０２および２０４を有する撮像デバイス１２２および１２４などの）イメージ取得ユニット１２０に含まれるカメラは、車両２００の前方の領域の第１および第２の複数のイメージを取り込み得、それらを、デジタル接続（例えば、ＵＳＢ、無線、Ｂｌｕｅｔｏｏｔｈなど）を介して、処理ユニット１１０に送信し得る。いくつかの実施形態において、処理ユニット１１０は、２以上のデータインタフェースを介して第１および第２の複数のイメージを受信し得る。開示される実施形態は、任意の特定のデータインタフェース構成またはプロトコルに限定されない。
【０１４９】
段階６２０において、処理ユニット１１０はステレオイメージ分析モジュール４０４を実行して、第１および第２の複数のイメージのステレオイメージ分析を実行し、車両の前部の道路の３Ｄ地図を生成し、車線標示、車両、歩行者、道路標識、高速道路出口ランプ、交通信号灯、道路障害物などのイメージ内の特徴を検出し得る。ステレオイメージ分析は、上に図５Ａから図５Ｄに関連して説明される段階と同様の態様で実行され得る。例えば、処理ユニット１１０は、ステレオイメージ分析モジュール４０４を実行して、第１および第２の複数のイメージ内の候補オブジェクト（例えば、車両、歩行者、路面標示、交通信号灯、道路障害物など）を検出し、様々な基準に基づいて、候補オブジェクトのサブセットをフィルタリングして取り除き、マルチフレーム分析を実行し、測定値を構築し、残りの候補オブジェクトの信頼水準を判定し得る。上記の段階の実行において、処理ユニット１１０は、イメージの１セットからの情報のみよりむしろ、第１および第２の複数のイメージの両者からの情報を考慮し得る。例えば、処理ユニット１１０は、第１および第２の複数のイメージの両者において現れる候補オブジェクトに関して、ピクセルレベルのデータ（または、取り込まれたイメージの２つのストリームのうちの他のデータサブセット）における差異を分析し得る。別の例として、処理ユニット１１０は、２つのイメージストリームがある場合、オブジェクトが複数のイメージのうち１つにおいて現れるが、他のイメージには現れないか、または、現れているオブジェクトに対して存在し得る他の差異に対して現れる旨を観測することによって、候補オブジェクトの位置および／または速度（例えば、車両２００に対しての）を推定し得る。例えば、車両２００に対しての位置、速度、および／または加速度が、イメージストリームの１つまたは両方に現れるオブジェクトに関連づけられた特徴の、軌跡、位置、移動特性などに基づいて判定され得る。
【０１５０】
段階６３０において、処理ユニット１１０は、段階６２０で実行された分析、および、図４に関連して上で説明されたような技法に基づいて車両２００に１または複数の走行応答を生じさせる、走行応答モジュール４０８を実行し得る。走行応答は、例えば、ターン、車線変更、加速度の変更、速度の変更、ブレーキなどを含み得る。いくつかの実施形態において、処理ユニット１１０は、速度および加速度モジュール４０６の実行から導出されたデータを使用して、１または複数の走行応答を生じさせ得る。加えて、複数の走行応答は、同時に、連続して、または、それらの任意の組み合わせで生じ得る。
【０１５１】
図７は、開示される実施形態と合致した、イメージの３つのセットの分析に基づいて１または複数の走行応答を生じさせるための、例示的なプロセス７００を示すフローチャートである。段階７１０において、処理ユニット１１０は、データインタフェース１２８を介して第１、第２、および第３の複数のイメージを受信し得る。例えば、イメージ取得ユニット１２０（視野２０２、２０４および２０６を有する撮像デバイス１２２、１２４および１２６など）に含まれるカメラは、車両２００の前方および／または側部の領域の第１、第２、および第３の複数のイメージを取り込んで、デジタル接続（例えば、ＵＳＢ、無線、Ｂｌｕｅｔｏｏｔｈなど）を介してそれらを処理ユニット１１０に送信し得る。いくつかの実施形態において、処理ユニット１１０は、３またはそれ以上のデータインタフェースを介して、第１、第２、および第３の複数のイメージを受信し得る。例えば、撮像デバイス１２２、１２４、１２６のそれぞれは、処理ユニット１１０にデータを通信するための関連するデータインタフェースを有し得る。開示される実施形態は、任意の特定のデータインタフェース構成またはプロトコルに限定されない。
【０１５２】
段階７２０において、処理ユニット１１０は、第１、第２、および第３の複数のイメージを分析して、車線標示、車両、歩行者、道路標識、高速道路出口ランプ、交通信号灯、道路障害物などの、イメージ内の特徴を検出し得る。上の図５Ａから図５Ｄおよび図６に関連して説明される段階と同様の態様で、分析が実行され得る。例えば、処理ユニット１１０は、第１、第２、および第３の複数のイメージのそれぞれに、単眼イメージ分析（例えば、単眼イメージ分析モジュール４０２の実行による、および、上の図５Ａから図５Ｄに関連して説明される段階に基づく）を実行し得る。代替的に、処理ユニット１１０は、第１および第２の複数のイメージ、第２および第３の複数のイメージ、および／または、第１および第３の複数のイメージに、ステレオイメージ分析（例えば、ステレオイメージ分析モジュール４０４の実行によって、および、上の図６に関連して説明される段階に基づいて）を実行し得る。第１、第２、および／または第３の複数のイメージの分析に対応する、処理された情報は、組み合わせられ得る。いくつかの実施形態において、処理ユニット１１０は、単眼およびステレオイメージ分析の組み合わせを実行し得る。例えば、処理ユニット１１０は、第１の複数のイメージに単眼イメージ分析（例えば、単眼イメージ分析モジュール４０２の実行による）を、および、第２および第３の複数のイメージにステレオイメージ分析（例えば、ステレオイメージ分析モジュール４０４の実行による）を、実行し得る。それぞれ位置および視野２０２、２０４および２０６を含む、撮像デバイス１２２、１２４および１２６の構成は、第１、第２、および第３の複数のイメージに行われる分析の種類に影響を与えることがある。開示される実施形態は、撮像デバイス１２２、１２４および１２６の特定の構成に、または、第１、第２および第３の複数のイメージに行われる分析の種類に限定されない。
【０１５３】
いくつかの実施形態において、処理ユニット１１０は、段階７１０および７２０において取得および分析されたイメージに基づいて、システム１００上でテストを実行し得る。そのようなテストは、撮像デバイス１２２、１２４および１２６の特定の構成に関するシステム１００の全体的な性能の指標を提供し得る。例えば、処理ユニット１１０は、「誤ったヒット（ｆａｌｓｅ  ｈｉｔｓ）」（例えば、システム１００が車両または歩行者の存在を間違って判定した場合）および「喪失（ｍｉｓｓｅｓ）」の割合を判定し得る。
【０１５４】
段階７３０において、処理ユニット１１０は、第１、第２、および第３の複数のイメージのうち２つから導出された情報に基づいて、車両２００に１または複数の走行応答を生じさせ得る。第１、第２、および第３の複数のイメージのうち２つの選択は、例えば、複数のイメージのそれぞれで検出されたオブジェクトの数、種類、サイズなど、様々な要因に依存し得る。処理ユニット１１０は、また、イメージの質および分解能、イメージ内で反射される効果的な視野、取り込まれたフレームの数、１または複数の関心のあるオブジェクトが、実際にフレームに現れる程度（例えば、オブジェクトが現れるフレームのパーセンテージ、そのようなフレームのそれぞれにおいて現れるオブジェクトの割合など）、などに基づく選択を行い得る。
【０１５５】
いくつかの実施形態において、処理ユニット１１０は、１つのイメージ源から導出された情報が他のイメージ源から導出された情報と合致する程度を判定することによって、第１、第２、および第３の複数のイメージのうち２つから導出された情報を選択し得る。例えば、処理ユニット１１０は、各撮像デバイス１２２、１２４および１２６から導出された、処理された情報（単眼分析か、ステレオ分析か、または双方の任意の組み合わせによってかどうかを問わず）を結合し得、各撮像デバイス１２２、１２４および１２６から取り込まれたイメージにわたって一貫性のある視覚指標（例えば、車線標示、検出された車両およびその位置、および／または経路、検出された交通信号灯、など）を判定し得る。また、処理ユニット１１０は、取り込まれたイメージにわたって一貫性のない情報（例えば、車線を変更中の車両、車両２００に過度に近い車両を示す車線モデル、など）を除き得る。したがって、処理ユニット１１０は、一貫性のある情報と一貫性のない情報との判定に基づいて、第１、第２、および第３の複数のイメージのうち２つから導出された情報を選択し得る。
【０１５６】
走行応答には、例えば、ターン、車線変更、加速の変化、などを含み得る。処理ユニット１１０は、段階７２０において実行された分析と、図４に関連して上で説明されたような技法とに基づいて１または複数の走行応答を生じさせ得る。処理ユニット１１０は、また、速度および加速度モジュール４０６の実行から導出されたデータを使用して、１または複数の走行応答を生じさせ得る。いくつかの実施形態において、処理ユニット１１０は、車両２００と、第１、第２、および第３の複数のイメージのいずれかに検出されたオブジェクトとの相対位置、相対速度、および／または相対加速度に基づいて１または複数の走行応答を生じさせ得る。複数の走行応答は、同時に、連続して、またはそれらの任意の組み合わせで生じ得る。
【０１５７】
取り込まれたイメージの分析は、自律走行車両の走行に関するスパースマップモデルの生成および使用を可能にし得る。さらに、取り込まれたイメージの分析は、識別された車線標示を用いて自律走行車両の位置推定を可能にし得る。取り込まれたイメージに関する１または複数の特定の分析に基づく特定の特性の検出のための実施形態、およびスパースマップモデルを用いた自律走行車両の走行に関する実施形態は、図８Ａから２８を参照して以下に説明されるであろう。
【０１５８】
自律走行車両の走行のためのスパースロードモデル
【０１５９】
いくつかの実施形態において、開示されるシステムおよび方法は、自律走行車両の走行のためのスパースマップを使用し得る。特に、スパースマップは、道路セグメントに沿った自律走行車両の走行のためであり得る。例えば、スパースマップは、大きな件数のデータを格納および／または更新することなしで、自律走行車両を走行させる十分な情報を提供し得る。以下でさらに詳細に説明されるように、自律走行車両は、１または複数の格納された軌跡に基づいて１または複数の道路を走行するように、スパースマップを使用し得る。
【０１６０】
自律走行車両の走行のためのスパースマップ
【０１６１】
いくつかの実施形態において、開示されるシステムおよび方法は、自律走行車両の走行のためのスパースマップを生成し得る。例えば、スパースマップは、過剰なデータ格納またはデータ転送レートを必要とすることなしで、走行に関する十分な情報を提供し得る。以下でさらに詳細に説明されるように、車両（自律走行車両であり得る）は、スパースマップを使用して１または複数の道路を走行し得る。例えば、いくつかの実施形態において、スパースマップは、車両の走行に十分であり得る、道路および道路に沿った潜在的なランドマークに関連するデータを含み得るが、それはまた、示すデータ消費量が少ない。例えば、以下で詳細に説明されるスパースデータマップは、道路に沿って収集されたイメージデータなどの詳細な地図情報を含むデジタル地図と比較して、必要とする格納空間およびデータ転送帯域幅を大幅に少ないものとし得る。
【０１６２】
例えば、道路セグメントの詳細な表現を格納するよりむしろ、スパースデータマップは、道路に沿った好ましい車両経路の３次元多項式表現を格納し得る。この経路は、データ格納空間を非常にほとんど必要としないものであり得る。さらに、説明されるスパースデータマップにおいて、ランドマークが識別され得、走行の助けとなるスパースマップ道路モデルに含まれ得る。これらのランドマークは、車両の走行を可能にするのに適切な任意の間隔で配置され得るが、いくつかの場合において、そのようなランドマークは、識別される必要がなく、高密度かつ短間隔でモデルに含まれる必要がない。むしろ、いくつかの場合において、走行は、少なくとも５０メートル、少なくとも１００メートル、少なくとも５００メートル、少なくとも１キロメートル、または少なくとも２キロメートル離れて間隔を置いたランドマークに基づいて可能になり得る。他の部分においてさらに詳細に説明されるように、スパースマップは、車両が車道に沿って移動するにつれて、撮像デバイス、グローバルポジショニングシステムセンサ、動きセンサなどの、様々なセンサおよびデバイスを備え付けられた車両によって収集または測定されたデータに基づいて生成され得る。いくつかの場合において、スパースマップは、特定の道路に沿った１または複数の車両の複数の運転の最中に収集されたデータに基づいて生成され得る。１または複数の車両の複数の運転を用いたスパースマップの生成は、スパースマップの「クラウドソーシング」と呼ばれ得る。
【０１６３】
開示される実施形態と合致して、自律走行車両システムは、走行に関するスパースマップを使用し得る。例えば、開示されるシステムおよび方法は、自律走行車両のための道路走行モデルを生成するようにスパースマップを配布し得、スパースマップおよび／または生成された道路走行モデルを用いて、道路セグメントに沿って自律走行車両を走行させ得る。本開示と合致するスパースマップは、自律走行車両が、関連づけられた道路セグメントに沿って移動するにつれて往来し得る予め定められた軌跡を表し得る、１または複数の３次元輪郭線を含み得る。
【０１６４】
本開示と合致するスパースマップは、また、１または複数の道路特徴を表すデータを含み得る。そのような道路特徴は、認識されたランドマーク、道路シグナチャプロファイル、および、車両の走行時に有用な任意の他の道路関連の特徴を含み得る。本開示と合致するスパースマップは、スパースマップに含まれる比較的少量のデータに基づいて、車両の自律走行を可能にし得る。例えば、道路縁部、道路曲率、道路セグメントに関連づけられたイメージ、または道路セグメントに関連づけられた他の物理的特徴を詳細に示すデータなどの、道路の詳細な表現を含むよりむしろ、スパースマップの開示される実施形態は、格納空間を比較的ほとんど必要とせず（および、スパースマップの部分が車両に転送されるときの帯域幅が比較的ほとんどない）、なおも十分な自律走行車両の走行を提供し得る。開示されたスパースマップのデータ消費量が少ないことは、以下でさらに詳細に説明されるように、必要とするデータが少量であるがなおも自律走行を可能とする道路関連要素の表現を格納することにより、いくつかの実施形態において実現され得る。
【０１６５】
例えば、様々な態様の道路の詳細な表現を格納するよりむしろ、開示されたスパースマップは、車両が道路に沿って従い得る１または複数の軌跡の多項式表現を格納し得る。したがって、道路に沿った走行を可能にする道路の物理的性質に関する詳細を格納するよりむしろ（または転送する必要よりむしろ）、開示されたスパースマップを用いて、車両は、いくつかの場合において、道路の物理態様を解釈する必要なしで、むしろ、特定の道路セグメントに沿う軌跡（例えば、多項式スプライン）によってそれが移動する経路を調整することによって、特定の道路セグメントに沿って走行し得る。このようにして、車両は、車道イメージ、道路パラメータ、道路レイアウトなどの格納を含む手法よりも、必要とする格納空間がかなり少なくてよい、格納された軌跡（例えば、多項式スプライン）に主に基づいて走行し得る。
【０１６６】
道路セグメントに沿った、格納された軌跡の多項式表現に加えて、開示されたスパースマップはまた、道路特徴を表し得るスモールデータオブジェクトを含み得る。いくつかの実施形態において、スモールデータオブジェクトはデジタルシグナチャを含み得、それは、道路セグメントに沿って移動する車両に搭載されたセンサ（例えば、カメラ、またはサスペンションセンサなどの他のセンサ）によって取得されたデジタルイメージ（またはデジタル信号）から導出される。デジタルシグナチャは、センサによって取得された信号に対して低減したサイズを有し得る。いくつかの実施形態において、デジタルシグナチャは、例えば、それに続く運転の最中に、センサによって取得される信号からの道路特徴を検出および識別するように構成される、分類関数と互換性があるように生成され得る。いくつかの実施形態において、デジタルシグナチャは、デジタルシグナチャが可能な限り小さい消費量を有しながら、その道路特徴と、それに続く時間に同じ道路セグメントに沿って移動する車両に搭載されたカメラによって取り込まれた道路特徴のイメージに基づいて格納されたシグナチャ（または、格納されたシグナチャがイメージに基づかない、および／または、他のデータを含む場合、センサによって生成されたデジタル信号）との相関または合致の能力を維持するように生成され得る。
【０１６７】
いくつかの実施形態において、データオブジェクトのサイズは、さらに、道路特徴の一意性と関連づけられ得る。例えば、車両に搭載されたカメラによって検出可能な道路特徴に関して、および、車両に搭載されたカメラシステムが、特定の種類の道路特徴に関連づけられたものとして、その道路特徴、例えば、道路標識に対応するイメージデータの区別を可能にする分類子と結合される場合には、および、そのような道路標識がその領域でローカルに一意的である場合（例えば、すぐ近くに一致する道路標識または同じ種類の道路標識がない場合）には、道路特徴の種類およびその位置を示すデータを格納することは十分であり得る。
【０１６８】
以下にさらに詳細に説明されるように、道路特徴（例えば、道路セグメントに沿ったランドマーク）は、比較的少ないバイト数で道路特徴を表し得るスモールデータオブジェクトとして格納され得、同時に、走行に関するそのような特徴を認識して、および用いて、十分な情報を提供する。一例において、道路標識は、それに基づいて車両の走行を行い得る、認識されたランドマークとして識別され得る。道路標識の表現は、例えば、ランドマークの種類（例えば、停止標識）を示す数バイトのデータと、ランドマークの位置（例えば、座標）を示す数バイトのデータを含む、スパースマップに格納され得る。ランドマークのそのような軽いデータによる表現（例えば、ランドマークに基づいた位置づけ、認識、および走行するために十分な表現を用いる）に基づく走行は、スパースマップに関連づけられたデータオーバーヘッドを大幅に増大させることなく、スパースマップに関連づけられた所望のレベルの走行機能性を提供し得る。この無駄がないランドマーク（および、他の道路特徴）の表現は、特定の道路特徴を検出、識別、および／または分類するように構成される、そのような車両に搭載されて含まれるセンサおよびプロセッサを利用し得る。
【０１６９】
例えば、標識、または特定の種類の標識さえも、与えられた領域においてローカルに一意的であるとき（例えば、他の標識または同じ種類の他の標識がないとき）、スパースマップは、ランドマークの種類を示すデータ（標識、または特定の種類の標識）を用い得、走行（例えば、自律走行）の最中に、自律走行車両に搭載されたカメラが、標識（または特定の種類の標識）を含む領域のイメージを取り込むとき、プロセッサは、イメージを処理して標識を検出し（実際にイメージ内に標識が示される場合）、イメージを標識（または特定の種類の標識）として分類し、イメージの位置を、スパースマップに格納された標識の位置と相関させ得る。
【０１７０】
道路特徴の表現
【０１７１】
いくつかの実施形態において、スパースマップは、道路セグメントに沿って延在する路面特徴と、道路セグメントに関連づけられた複数のランドマークとの、少なくとも１つの線による表現を含み得る。特定の態様において、スパースマップは「クラウドソーシング」を介して、例えば、１または複数の車両が道路セグメントを往来するにつれて取得される複数のイメージのイメージ分析によって生成され得る。
【０１７２】
目標軌跡および識別されたランドマークに加えて、スパースは、様々な他の道路特徴に関連する情報を含み得る。例えば、図９Ａは、スパースマップに格納され得る特定の道路セグメントに沿う曲線の表現を示す。いくつかの実施形態において、道路の単独の車線は、道路の左側および右側の３次元多項式の説明によってモデリングされ得る。単独の車線の左側および右側を表すそのような多項式は、図８Ａに示される。道路がいくつの車線を有し得るかに関わらず、道路は、図８Ａに示されたものと類似したやり方で、多項式を用いて表され得る。例えば、複数車線道路の左側および右側は、図８Ａに示されるものと類似する多項式によって表され得、複数車線道路上に含まれる中間車線標示（例えば、車線境界に表される破線マーク、異なる方向に移動する車線間の境界を表す黄色の実線など）もまた、図８Ａに示されるものなどの多項式を用いて表され得る。
【０１７３】
図８Ａに示されるように、車線８００は、多項式（例えば、１次、２次、３次、または任意の適切な次数の多項式）を用いて表され得る。例示のために、車線８００は２次元の車線として示され、多項式は２次元の多項式として示される。図８Ａに図示されるように、車線８００は、左側８１０および右側８２０を含む。いくつかの実施形態において、１より多い多項式が、道路または車線の境界の各側部の位置を表すように用いられ得る。例えば、左側８１０および右側８２０のそれぞれが、任意の適切な長さの複数の多項式によって表され得る。いくつかの場合において、多項式は約１００ｍの長さを有し得るが、１００ｍより大きいか、より小さい他の長さもまた用いられ得る。加えて、多項式は、車道に沿ってホスト車両が移動するにつれて、後に遭遇する多項式に基づいて走行する際のシームレスな遷移を容易にするために、互いに重なることがある。例えば、左側８１０および右側８２０のそれぞれは、約１００メートルの長さのセグメント（第１の予め定められた範囲の例）に分けられた複数の３次多項式によって表わされ得、約５０メートルにわたって互いに重なる。左側８１０を表す多項式と右側８２０を表す多項式は、同じ次数であってもそうでなくてもよい。例えば、いくつかの実施形態において、いくつかの多項式は２次多項式であり得、いくつかは３次多項式であり得、いくつかは４次多項式であり得る。
【０１７４】
図８Ａに示される例において、車線８００の左側８１０は、２つのグループの３次多項式によって表される。第１のグループは、多項式セグメント８１１、８１２および８１３を含む。第２のグループは、多項式セグメント８１４、８１５および８１６を含む。２つのグループは、互いに実質的に平行であるが、道路のそれぞれの側部の位置に従う。多項式セグメント８１１、８１２、８１３、８１４、８１５および８１６は、約１００メートルの長さを有し、約５０メートルが、並びで隣接したセグメントと重なる。あらかじめ留意されるように、しかしながら、異なる長さ、異なる重なり量の多項式もまた用いられ得る。例えば、多項式は、５００ｍ、１ｋｍ、またはそれ以上の長さを有し得、重なり量は、０から５０ｍ、５０ｍから１００ｍ、または１００ｍより大きい、と変化し得る。加えて、２Ｄ空間（例えば、紙の表面）に延びる多項式を表すものとして図８Ａに示されるように、この多項式は、Ｘ−Ｙ湾曲に追加して、道路セグメントにおける高度変化を表すように、３次元（例えば、高さ成分を含む）で延在する曲線を表し得ることが、理解されるべきである。図８Ａに示された例において、車線８００の右側８２０はさらに、多項式セグメント８２１、８２２および８２３を有する第１のグループと、多項式セグメント８２４、８２５および８２６を有する第２のグループとによって表され得る。
【０１７５】
スパースマップの目標軌跡に戻ると、図８Ｂは、特定の道路セグメントに沿って移動する車両に関する目標軌跡を表す、３次元多項式を示す。目標軌跡は、ホスト車両が特定の道路セグメントに沿って移動するべきＸ−Ｙ経路のみでなく、ホスト車両が道路セグメントに沿って移動するときに経験するであろう高度変化もまた表す。したがって、スパースマップにおける各目標軌跡は、図８Ｂで示された３次元多項式８５０のような１または複数の３次元多項式によって表され得る。スパースマップは、複数の軌跡（世界中の車道に沿った様々な道路セグメントに沿った車両の軌跡を表す、例えば、数１００万または数１０億またはそれ以上の数の軌跡）を含み得る。いくつかの実施形態において、各目標軌跡は、３次元多項式セグメントを接続するスプラインに対応し得る。
【０１７６】
スパースマップにおいて格納される多項式曲線のデータ消費量に関して、いくつかの実施形態において、各３次多項式は４つのパラメータによって表され得、それぞれ４バイトのデータを必要とする。１００ｍごとに約１９２バイトのデータを必要とする３次多項式によって、適切な表現が取得され得る。これは、約１００ｋｍ／ｈｒで移動するホスト車両に対するデータ使用／転送要件において、毎時約２００ｋＢに翻訳し得る。
【０１７７】
スパースマップは、形状記述子およびメタデータの組み合わせを用いた車線ネットワークを記述し得る。形状は、上で説明されたような多項式またはスプラインによって記述され得る。メタデータは、車線の数、特別な特性（相乗り車線など）、および、おそらく他のスパースラベルを記述し得る。そのような指標の合計の消費量はごくわずかであり得る。
【０１７８】
したがって、本開示の実施形態に記載のスパースマップは、道路セグメントに沿って延在する路面特徴の少なくとも１つの線による表現を含み得、各線による表現は、路面特徴に実質的に対応する道路セグメントに沿った経路を表す。いくつかの実施形態において、上で説明されたように、路面特徴の少なくとも１つの線による表現は、スプライン、多項式表現、または曲線を含み得る。さらに、いくつかの実施形態において、路面特徴は、道路縁部または車線標示のうち少なくとも一方を含み得る。加えて、「クラウドソーシング」に関して以下に説明されるように、路面特徴は、１または複数の車両が道路セグメントを往来するにつれて取得される複数のイメージのイメージ分析を介して識別され得る。
【０１７９】
図９Ａは、スパースマップを構築または維持するプロセスの最中に取り込まれた軌跡の多項式表現を示す。スパースマップに含まれる目標軌跡の多項式表現は、同じ道路セグメントに沿った車両の以前の往来の軌跡を再構成した、２またはそれ以上の軌跡に基づいて判定され得る。いくつかの実施形態において、スパースマップに含まれる目標軌跡の多項式表現は、同じ道路セグメントに沿った車両の以前の往来の軌跡を再構成した、２またはそれ以上の軌跡のアグリゲーションであり得る。いくつかの実施形態において、スパースマップに含まれる目標軌跡の多項式表現は、同じ道路セグメントに沿った車両の以前の往来の軌跡を再構成した、２またはそれ以上の軌跡の平均であり得る。他の数学的操作もまた、道路セグメントに沿って往来する車両から収集された再構成された軌跡に基づいて、道路経路に沿った目標軌跡を構築するように用いられ得る。
【０１８０】
図９Ａにおいて示されるように、道路セグメント９００は、異なる時間に多数の車両２００によって移動され得る。各車両２００は、車両が道路セグメントを通った経路に関連するデータを収集し得る。特定の車両によって移動される経路は、いくつかの潜在的源の中でも特に、カメラデータ、加速度計情報、速度センサ情報、および／またはＧＰＳ情報に基づいて判定され得る。そのようなデータは、道路セグメントに沿って移動する車両の軌跡を再構成するように用いられ得、これらの再構成された軌跡に基づいて、目標軌跡（または複数の目標軌跡）は、特定の道路セグメントに関して判定され得る。そのような目標軌跡は、道路セグメントに沿って車両が移動するときの、（例えば、自律走行システムによってガイドされる）ホスト車両の好ましい経路を表し得る。
【０１８１】
図９Ａにおいて示される例において、第１の再構成された軌跡９０１は、第１の期間（例えば、１日目）に道路セグメント９００を往来する第１の車両から受信されたデータに基づいて判定され得、第２の再構成された軌跡９０２は、第２の期間（例えば、２日目）に道路セグメント９００を往来する第２の車両から取得され得、第３の再構成された軌跡９０３は、第３の期間（例えば、３日目）に道路セグメント９００を往来する第３の車両から取得され得る。各軌跡９０１、９０２および９０３は、３次元多項式などの多項式によって表され得る。いくつかの実施形態において、いかなる再構成された軌跡も、道路セグメント９００を往来する車両に搭載されて組み合わせられ得ることに、留意されたい。
【０１８２】
加えて、または代替的に、そのような再構成された軌跡は、道路セグメント９００を往来する車両から受信された情報に基づいて、サーバ側で判定され得る。例えば、いくつかの実施形態において、車両２００は、道路セグメント９００に沿ったそれらの動き（例えば、ステアリング角度、ヘッディング、時刻、位置、速度、感知された道路の形状、および／または、感知されたランドマーク、他にもあるが）に関連する１つまたは複数のサーバにデータを送信し得る。サーバは、受信されたデータに基づいて車両２００に関する軌跡を再構成し得る。サーバは、また、第１、第２、および第３の軌跡９０１、９０２および９０３に基づいて、後の時刻に同じ道路セグメント９００に沿って移動するであろう自律走行車両の走行をガイドするための目標軌跡を生成し得る。目標軌跡は、道路セグメントの単一の以前の往来に関連づけられ得るが、いくつかの実施形態において、スパースマップに含まれる各目標軌跡は、同じ道路セグメントを往来する車両の２またはそれ以上の再構成された軌跡に基づいて判定され得る。図９Ａにおいて、目標軌跡は９１０によって表される。いくつかの実施形態において、目標軌跡９１０は、第１、第２、および第３の軌跡９０１、９０２および９０３の平均に基づいて生成され得る。いくつかの実施形態において、スパースマップに含まれる目標軌跡９１０は、２またはそれ以上の再構成された軌跡のアグリゲーション（例えば、重み付けされた組み合わせ）であり得る。軌跡を構築するように運転データを調整することは、図面２９に関して以下にさらに説明される。
【０１８３】
図９Ｂおよび９Ｃは、地理的地域９１１内に存在する道路セグメントに関連づけられた目標軌跡の概念をさらに示す。図９Ｂに示されるように、地理的地域９１１内の最初の道路セグメント９２０は、複数車線の道路を含み得、それは第１方向の車両移動のために指定される２つの車線９２２と、第１方向とは反対の第２の方向への車両移動のために指定される２つの追加の車線９２４とを含む。車線９２２および車線９２４は、黄色の二重線９２３によって隔てられ得る。地理的地域９１１は、また、道路セグメント９２０と交差する分岐道路セグメント９３０を含み得る。道路セグメント９３０は、二車線道路を含み得、各車線は、異なる方向に移動するために指定される。地理的地域９１１は、また、停止線９３２、停止サイン９３４、速度制限サイン９３６、およびハザードサイン９３８などの他の道路特徴を含み得る。
【０１８４】
図９Ｃに示されるように、スパースマップは、地理的地域９１１内の車両の自律走行を支援するための道路モデルを含むローカルマップ９４０を含み得る。例えば、ローカルマップ９４０は、地理的地域９１１内の道路セグメント９２０および／または９３０に関連づけられた１または複数の車線に関する目標軌跡を含み得る。例えば、ローカルマップ９４０は、自律走行車両が車線９２２を往来するときにアクセスまたは依存し得る目標軌跡９４１および／または９４２を含み得る。同様に、ローカルマップ９４０は、自律走行車両が車線９２４を往来するときにアクセスまたは依存し得る目標軌跡９４３および／または９４４を含み得る。さらに、ローカルマップ９４０は、自律走行車両が道路セグメント９３０を往来するときにアクセスまたは依存し得る目標軌跡９４５および／または９４６を含み得る。目標軌跡９４７は、自律走行車両が車線９２０から（特に、車線９２０の最も右の車線に関連づけられた目標軌跡９４１に対して）道路セグメント９３０に（特に、道路セグメント９３０の第１の側に関連づけられた目標軌跡９４５に対して）移行するときに従うべき好ましい経路を表す。同様に、目標軌跡９４８は、自律走行車両が道路セグメント９３０から（特に、目標軌跡９４６に対して）道路セグメント９２４の部分に（特に、示されるように、車線９２４の左車線に関連づけられた目標軌跡９４３に対して）移行するときに従うべき好ましい経路を表す。
【０１８５】
スパースマップは、また、地理的地域９１１に関連づけられた他の道路関連の特徴の表現を含み得る。例えば、スパースマップは、また、地理的地域９１１で識別される１または複数のランドマークの表現を含み得る。そのようなランドマークは、停止線９３２に関連づけられた第１のランドマーク９５０、停止サイン９３４に関連づけられた第２のランドマーク９５２、速度制限サイン９５４に関連づけられた第３のランドマーク、およびハザードサイン９３８に関連づけられた第４のランドマーク９５６を含み得る。そのようなランドマークは、例えば、示された目標軌跡のいずれかに対するその現在の位置を判定するときに自律走行車両を助けるように用いられ得、車両はそのヘッディングを、判定された位置への目標軌跡の方向に合致するように調節し得る。
【０１８６】
いくつかの実施形態において、スパースマップは、また、道路シグナチャプロファイルを含み得る。そのような道路シグナチャプロファイルは、道路に関連づけられた少なくとも１つのパラメータにおける、任意の識別可能／測定可能な変動に関連づけられ得る。例えば、いくつかの場合において、そのようなプロファイルは、特定の道路セグメントの表面の粗さの変動、特定の道路セグメントに対する道路幅の変動、特定の道路セグメントに沿って塗装された破線の間の距離の変動、特定の道路セグメントに沿った道路曲率の変動、などの、路面情報の変動に関連づけられ得る。図９Ｄは、道路シグナチャプロファイル９６０の例を示す。プロファイル９６０は、上で挙げられた、または他の、いかなるパラメータをも表し得、一例で、プロファイル９６０は、例えば、特定の道路セグメントの車両移動としてサスペンション変位の量を示す出力を提供する１または複数のセンサをモニタリングすることによって取得された、路面の粗さの測定値を表し得る。
【０１８７】
代替的に、または同時に、プロファイル９６０は、特定の道路セグメントを移動する車両に搭載されたカメラを介して取得されたイメージデータに基づいて判定された、道路幅の変動を表し得る。そのようなプロファイルは、例えば、特定の目標軌跡に対する自律走行車両の特定の位置を判定する際に有用であり得る。すなわち、道路セグメントを往来するにつれて、自律走行車両は、道路セグメントに関連づけられた１または複数のパラメータに関連するプロファイルを測定し得る。測定されたプロファイルが、道路セグメントに沿った位置に対するパラメータ変動をプロットする予め定められたプロファイルと、相関／マッチングされ得る場合、次に、測定されて予め定められたプロファイルは（例えば、測定されて予め定められたプロファイルの対応する部分をオーバーレイすることによって）、道路セグメントに沿った現在のポジション、したがって、道路セグメントに関する目標軌跡に対する現在のポジションを判定するために用いられ得る。
【０１８８】
いくつかの実施形態において、スパースマップは、自律走行車両のユーザ、環境状況、および／または、運転に関連する他のパラメータに関連づけられた、異なる特性に基づいた異なる軌道を含み得る。例えば、いくつかの実施形態において、異なる軌跡は異なるユーザの好み、および／またはプロファイルに基づいて生成され得る。そのような異なる軌跡を含むスパースマップが、異なるユーザの異なる自律走行車両に提供され得る。例えば、何人かのユーザは有料道路を回避することを優先させることがあるが、他のユーザは、ルーティング上に有料道路があるかどうかに関わらず、最も短い、または最も速いルーティングを取得することを優先させることがある。開示されるシステムは、そのような異なるユーザの好みまたはプロファイルに基づいた異なる軌道を有する、異なるスパースマップを生成し得る。別の例として、何人かのユーザは高速車線を移動することを優先させることがあるが、他のユーザは、いつでも中央車線に位置を保持することを優先させることがある。
【０１８９】
異なる軌跡は、昼および夜、雪、雨、霧などの、異なる環境条件に基づいて生成され得、スパースマップに含まれ得る。異なる環境条件のもとで運転される自律走行車両は、そのような異なる環境条件に基づいて生成されるスパースマップを提供され得る。いくつかの実施形態において、自律走行車両上に提供されるカメラは、環境状況を検出し得、そのような情報を、スパースマップを生成および提供するサーバへ戻して提供し得る。例えば、サーバは、検出された環境状況のもとでの自律運転のためにより適切で、またはより安全であり得る軌跡を含むように、スパースマップを生成するか、またはすでに生成されたスパースマップを更新し得る。環境状況に基づいてスパースマップを更新することは、自律走行車両が道路に沿って移動するにつれて動的に実行され得る。
【０１９０】
また、運転に関連する他の異なるパラメータが、異なる自律走行車両に異なるスパースマップを生成および提供するための基準として用いられ得る。例えば、自律走行車両が高速度で移動するとき、ターンはよりきつくなり得る。自律走行車両が特定の軌跡に従うにつれてその車両が特定の車線内に保持され得るように、道路よりむしろ、特定の車線に関連づけられた軌跡が、スパースマップに含まれ得る。自律走行車両に搭載されたカメラによって取り込まれたイメージが、車両が車線の外にドリフトした（例えば、車線標示を越えた）旨を示すとき、特定の軌跡に従う指定された車線に車両を戻すための動作が、車両内に引き起こされ得る。
【０１９１】
図１０は、複数の３次元スプライン１００１、１００２および１００３によって表される例としての自律走行車両の道路走行モデルを示す。図１０に示される曲線１００１、１００２および１００３は、例示の目的のみである。各スプラインは、複数のデータ点１０１０を接続する１または複数の３次元多項式を含み得る。各多項式は、１次多項式、２次多項式、３次多項式、または異なる次数を有する任意の適切な多項式の組み合わせであり得る。各データ点１０１０は、複数の車両から受信された走行情報に関連づけられ得る。いくつかの実施形態において、各データ点１０１０は、ランドマークに関連するデータ（例えば、ランドマークのサイズ、位置、および識別情報）、および／または、道路シグナチャプロファイル（例えば、道路の形状、道路粗さプロファイル、道路曲率プロファイル、道路幅プロファイル）に関連づけられ得る。いくつかの実施形態において、いくつかのデータ点１０１０は、ランドマークに関連するデータに関連づけられ得、他のデータ点は、道路シグナチャプロファイルに関連するデータに関連づけられ得る。
【０１９２】
図１１は、５つの別々の運転から受信される未加工の位置データ１１１０（例えば、ＧＰＳデータ）を示す。１つの運転は、同時に別々の車両によって往来された場合、別々の時間に同じ車両によって往来された場合、または、別々の時間に別々の車両によって往来された場合の、別の運転から分離され得る。位置データ１１１０の誤差、および同じ車線内の車両の異なる位置（例えば、１つの車両が、別の車両よりも車線の左により近いところを走り得る）を説明するように、リモートサーバは、１または複数の統計的技法を用いて地図の概要１１２０を生成して、未加工の位置データ１１１０の変動が実際の発散を表すか、統計的誤差を表すかを判定し得る。概要１１２０の各経路は、経路を形成する未加工のデータ１１１０に戻されてリンクされ得る。例えば、概要１１２０内のＡとＢとの間の経路は、運転２、３、４および５からの未加工のデータ１１１０にリンクされるが、運転１からはリンクされない。概要１１２０は、車両を走行させるために用いられるのに十分に詳細ではないことがある（なぜなら、例えば、それは上で説明されたスプラインとは異なり、同じ道路上で複数の車線からの運転を結合するからである）が、有用なトポロジカル情報を提供し得、交点を画定するように用いられ得る。
【０１９３】
走行に関する安全性および快適面からの制約
【０１９４】
走行モデルに加えて、自律走行車両は（完全に自律的、例えば、自動運転車両であろうと、部分的に自律的、例えば、１または複数の運転者支援システムまたは機能であろうと）、一般に、内側の搭乗者の快適性と同様に、他の運転者および歩行者の安全性を確実にする運転ポリシーを使用する。
【０１９５】
したがって、自律走行車両は、ホスト車両の環境での走行状態を感知し得る。例えば、車両は、ホスト車両に関連づけられた様々なセンサおよび感知システムからの入力に依存し得る。これらの入力は、１または複数の車載カメラ、ＧＰＳ位置情報、加速度計出力、ユーザフィードバックからのイメージまたはイメージストリーム、または、１または複数のユーザインタフェースデバイス、レーダ、ライダなどへのユーザ入力を含み得る。カメラおよび／または任意の他の利用可能なセンサからのデータを含み得る感知は、地図情報と共に、「感知された状態」へと収集、分析、および考案され得、ホスト車両の環境においてシーンから抽出された情報を記述する。感知された状態は、任意の潜在的に感知された情報の中でも特に、目標車両、車線標示、歩行者、交通信号灯、道路の形状、車線形状、障害物、他のオブジェクト／車両との距離、相対速度、相対加速度に関連する、感知された情報を含み得る。教師あり機械学習が、提供された、感知されたデータに基づいて、感知状態出力をもたらすように、実装され得る。感知モジュールの出力は、ホスト車両の感知された走行「状態」を表し得、それは、以下に説明されるように、運転ポリシーにおいて用いられ得る。
【０１９６】
感知された状態は、ホスト車両に関連づけられた１または複数のカメラまたはイメージセンサから受信されたイメージデータに基づいて展開され得るが、走行の際の使用のための感知された状態は、任意の適切な、センサまたはセンサの組み合わせを用いて展開され得る。いくつかの実施形態において、感知された状態は、取り込まれたイメージデータに依存することなしで展開され得る。実際、本明細書で説明されるいかなる走行原則も、取り込まれたイメージデータに基づいて展開された、感知された状態に、ならびに、イメージをベースとしない他のセンサを用いて展開された、感知された状態に、適用可能であり得る。感知された状態は、また、ホスト車両の外部の源によって判定され得る。例えば、感知された状態は、ホスト車両から離れた源から受信された情報に基づいて（例えば、他の車両と共有された、中央サーバと共有された、または、ホスト車両の走行状態に関連づけられた情報の任意の他の源からの、センサ情報、処理された状態情報などに基づいて）、完全に、または部分的に展開され得る。
【０１９７】
自律走行車両は、感知された走行状態に応答してホスト車両が取得する１または複数の走行動作を決定するように、所望の運転ポリシーを実装し得る。ホスト車両の環境に存在する他のエージェント（例えば、目標車両または歩行者）がいない場合は、感知された状態の入力は、比較的直接的な形で処理され得る。感知された状態が、１または複数の他のエージェントとのネゴシエーションを必要とするときは、タスクはより複雑になる。（以下にさらに詳細に説明されるように）運転ポリシーからの出力を生成するように用いられる技術は、強化学習を含み得る。運転ポリシーの出力は、ホスト車両に関する少なくとも１つの走行動作を含み得、可能性のある所望の走行動作の中でも特に、所望の加速度（ホスト車両に関する更新された速度の変換につながり得る）、ホスト車両に関する所望のヨー角速度、所望の軌跡を含み得る。
【０１９８】
運転ポリシーからの出力に基づいて、自律走行車両は、ホスト車両に関連づけられた、１または複数のアクチュエータまたは制御されたデバイスのための制御命令を展開し得る。そのようなアクチュエータおよびデバイスは、アクセラレータ、１または複数のステアリング制御、ブレーキ、信号トランスミッタ、ディスプレイ、または、ホスト車両に関連づけられた走行操作の一部として制御され得る任意の他のアクチュエータまたはデバイスを含み得る。制御理論の態様が、制御命令を生成するように用いられ得る。ホスト車両の制御可能な構成要素への命令は、運転ポリシーの所望の走行目標または要件を実装し得る。
【０１９９】
上で説明された運転ポリシーに戻ると、いくつかの実施形態において、強化学習によって訓練されたシステムが、運転ポリシーを実装するように用いられ得る。他の実施形態において、運転ポリシーは、自律走行の最中に起こり得る様々なシナリオに「手動で」対処するように規定されたアルゴリズムを用いることにより、機械学習手法なしで実装され得る。そのような手法は、しかしながら、実行可能ではあるが、過度に単純な運転ポリシーをもたらすことがあり、機械学習に基づいて訓練されたシステムの柔軟性を失うことがある。訓練されたシステムは、例えば、複雑な走行状態を処理するように備え付けられるとより良く、以下のことを行うとより良い。タクシーが駐車しているか、搭乗者を乗せるか降ろすかのために止まっているかを判定する。歩行者がホスト車両の前方の街路を横切る意図があるかどうかを判定する。防御的に他のドライバの想定外の挙動から平静を保つ。目標車両および／または歩行者を含む高密度なトラフィックをうまく通り抜ける。特定の走行ルールがいつ中断するか、または他のルールがいつ拡張するかを決定する。感知されないが予測される条件（例えば、車または障害物の後ろから歩行者が現れるかどうか）を予測する。などである。強化学習に基づいて訓練されたシステムは、また、連続である動作空間と共に、連続かつ高次元である状態空間に対処するように備えられるとより良い。
【０２００】
強化学習を用いたシステムの訓練は、感知された状態から走行動作へマッピングするように運転ポリシーを学習することを含み得る。運転ポリシーは関数
【数１】
2020523660.tif 000003
であり得、ここでＳは状態のセットであり、
【数２】
2020523660.tif 000004
は動作空間（例えば、所望の速度、加速、ヨーコマンドなど）である。状態空間はＳ＝Ｓｓ×Ｓｐであり、ここで、Ｓｓは感知状態であり、Ｓｐはポリシーによってセーブされた状態における追加の情報である。ディスクリートな時間間隔で行うと、時点ｔにおいて、現在の状態
【数３】
2020523660.tif 000005
が観測され得、所望の動作
【数４】
2020523660.tif 000006
を取得するようにポリシーが加えられ得る。
【０２０１】
システムは、様々な走行状態にさらすこと、システムにポリシーを加えさせること、報酬を提供すること（望ましい走行挙動に報酬を与えるように設計された報酬関数に基づく）、によって訓練され得る。報酬フィードバックに基づいて、システムは、ポリシーを「学習」し、望ましい走行動作をもたらすように訓練された状態になる。例えば、学習システムは、現在の状態
【数５】
2020523660.tif 000007
を観測し得、ポリシー
【数６】
2020523660.tif 000008
に基づいて動作
【数７】
2020523660.tif 000009
を決定し得る。決定された動作（および動作の実装）に基づいて、環境は、学習システムによる観測のために次の状態
【数８】
2020523660.tif 000010
に移動する。観測状態に応答して展開された各動作に関して、学習システムへのフィードバックは報酬信号
【数９】
2020523660.tif 000011
である。
【０２０２】
強化学習（ＲＬ）の目標は、一般に、ポリシーπを見つけることである。通常、時点ｔにおいて状態ｓｔであって動作ａｔを取っている瞬間の質を測定する報酬関数ｒｔがあると、仮定される。しかしながら、時点ｔにおいて動作ａｔを取ることは、環境に影響を与え、したがって、将来の状態の値に影響を与える。結果として、どの動作を取得するかを決定するとき、現在の報酬が考慮に入れられるべきのみでなく、将来の報酬もまた考慮されるべきである。いくつかの事例において、より低い報酬の選択肢が現在取られている場合に将来においてより大きい報酬が実現し得るとシステムが判定するとき、システムは、たとえ特定の動作が別の有効な選択肢より低い報酬に関連づけられている場合でさえも、その特定の動作をとるべきである。これを形式化し、ポリシーπおよび初期状態ｓが
【数１０】
2020523660.tif 000012
にわたる分散を誘導する旨を観測する。ここで、エージェントが状態ｓ０＝ｓで開始してそこからポリシーπに従う場合、確率ベクトル（ｒ１，...，ｒＴ）は報酬ｒ１，...，ｒＴを観測する確率である。初期状態ｓの値は
【数１１】
2020523660.tif 000013
と定義され得る。
【０２０３】
計画対象時間をＴに制限する代わりに、ある一定の
【数１２】
2020523660.tif 000014
をかけて、将来の報酬を割り引いて定義してもよい。
【数１３】
2020523660.tif 000015
【０２０４】
いかなる場合にも、最適なポリシーは
【数１４】
2020523660.tif 000016
の解であり、ここで、期待値は初期状態ｓにわたる。
【０２０５】
運転ポリシーシステムを訓練するためのいくつかの可能な手法がある。例えば、模倣手法（例えば、挙動クローニング）が用いられ得、そこではシステムが状態／動作の対から学習し、ここで、動作は特定の観測状態に応答する良好なエージェント（例えば、人間）によって選択されるであろうものである。人間の運転者が観測されると仮定する。この観測によって、多くの形（ｓｔ、ａｔ）の例が取得され得、観測され得、運転ポリシーシステムを訓練するための基準として用いられ得、ここで、ｓｔは人間の運転者の状態であり、ａｔは人間の運転者の動作である。例えば、
【数１５】
2020523660.tif 000017
となるようにポリシーπを学習するために、教師あり学習が用いられ得る。この手法には多くの利点の可能性がある。第１に、報酬関数を定義するという要件がない。第２に、学習は教師ありであり、オフラインで生じる（学習プロセスにおいてエージェントを加える必要がない）。この方法の欠点は、異なる人間の運転者は、および同じ人間の運転者でさえも、かれらのポリシーの選択が確定的ではないことである。したがって、
【数１６】
2020523660.tif 000018
が非常に小さい関数の学習は、しばしば実行できないことがある。そして、小さい誤差でさえも、時間とともに蓄積し、大きな誤差を生じさせることがある。
【０２０６】
別の技法が、ポリシーをベースとする学習に使用され得る。ここで、ポリシーは、適切な最適化技法（例えば、確率的勾配降下法）を用いてパラメータ形式で表され得、直接最適化され得る。この手法は、
【数１７】
2020523660.tif 000019
に与えられた問題を直接解決するためのものである。もちろん、問題を解決するには多くのやり方がある。この手法の１つの利点は、問題に直接取り組み、したがって、しばしば良好な現実的結果につながることである。１つの可能性のある欠点は、「オンポリシー（ｏｎ−ｐｏｌｉｃｙ）」訓練をしばしば必要とすること、すなわち、πの学習が繰り返しプロセスであり、ここで、繰り返しｊにおいては不完全ポリシーπｊを有し、それは次のポリシーπｊを構築するためのものであり、πｊに基づく動作をしながら環境とインタラクションしなければならない。
【０２０７】
システムは、また、数値ベースの学習（ＱまたはＶ関数の学習）によって訓練され得る。最適値関数Ｖ＊の良好な概算が学習できると仮定する。最適なポリシーが構築され得る（例えば、ベルマン方程式に依存することによって）。数値ベースの学習のいくつかのバージョンは、オフライン（「オフポリシー（ｏｆｆ−ｐｏｌｉｃｙ）」訓練と呼ばれる）で実装されることができる。値をベースとする手法のいくつかの欠点は、それのマルコフ前提への強い依存性と、必要となる複雑な関数の概算から表れ得る（値関数を概算することは、ポリシーを直接概算することよりも困難であり得る）。
【０２０８】
別の技法は、モデルをベースとする学習および計画（状態遷移の確率を学習すること、および最適なＶを求める最適化問題を解決すること）を含み得る。これらの技法の組み合わせもまた、学習システムを訓練するように用いられ得る。この手法において、プロセスの動態は学習され得る。すなわち、（ｓｔ、ａｔ）をとり、次の状態ｓｔ＋１にわたる分散を生じる関数である。この関数がひとたび学習されると、最適化問題が解決されて、値が最適であるポリシーπを見つけ得る。これを「計画（ｐｌａｎｎｉｎｇ）」と呼ぶ。この手法の１つの利点は、学習部分が教師ありであることであり得、トリプレット（ｓｔ、ａｔ、ｓｔ＋１）を観測することによってオフラインが加えられることができることである。この手法の１つの欠点は、「模倣（ｉｍｉｔａｔｉｏｎ）」手法に類似しており、学習プロセスにおける小さな誤差が蓄積して、ポリシーの不適切な実行が生じ得ることであり得る。
【０２０９】
運転ポリシーモジュール８０３を訓練する別の手法は、運転ポリシー関数を、意味論的に意味がある構成要素に分解することを含み得る。これは、ポリシーの部分の手動での実装を可能にし、それは、ポリシーの安全性を確実にし得、強化学習技法を用いてポリシーの他の部分の実装を可能にし、それは、多くのシナリオへの適応性、防御的挙動／攻撃的挙動の間で人間に近い平静を保つこと、および他のドライバへの人間に近いネゴシエーションを可能にし得る。技術的視点からは、強化学習手法は、いくつかの手法を結合して、扱いやすい訓練過程を提示し得、ここで、訓練の大部分は、記録されたデータか、自己構築されたシミュレータのいずれかを用いて実行され得る。
【０２１０】
いくつかの実施形態において、運転ポリシーモジュール８０３の訓練は、「選択肢（ｏｐｔｉｏｎ）」機構に依存し得る。示すように、二車線高速道路に関する運転ポリシーの単純なシナリオを考慮する。直接ＲＬ手法において、ポリシーπは状態を
【数１８】
2020523660.tif 000020
にマッピングし、ここで、π（ｓ）の第１の成分は所望の加速度コマンドであり、π（ｓ）の第２の成分は、ヨー角速度である。修正された手法において、以下のポリシーが構築されることができる。
【０２１１】
自動巡航制御（ＡＣＣ）ポリシー
【数１９】
2020523660.tif 000021
：このポリシーは、スムーズで事故のない運転を実装するように、常に０のヨー角速度を出力し、速度を変化させるのみである。
【０２１２】
ＡＣＣ＋左ポリシー
【数２０】
2020523660.tif 000022
：このポリシーの縦方向コマンドはＡＣＣコマンドと同じである。ヨー角速度は、安全な横方向移動（例えば左側に車がいる場合に左に移動しない）を保証するように、左車線の中央に向けて車両をセンタリングする直接的な実装である。
【０２１３】
ＡＣＣ＋右ポリシー
【数２１】
2020523660.tif 000023
：ｏＬと同じであるが、車両は右車線の中央に向けてセンタリングされ得る。
【０２１４】
これらのポリシーは、「選択肢」と呼ばれ得る。これらの「選択肢」に依存して、選択肢
【数２２】
2020523660.tif 000024
を選択するポリシーが学習されることができ、ここで、Ｏは有効な選択肢のセットである。１つの場合において、
【数２３】
2020523660.tif 000025
である。選択肢セレクタポリシー、πｏは、ｓごとに、
【数２４】
2020523660.tif 000026
とすることにより、実際のポリシー、
【数２５】
2020523660.tif 000027
を画定する。
【０２１５】
実務において、ポリシー関数は選択肢のグラフに分解され得る。選択肢のグラフは、有向非巡回グラフ（ＤＡＧ）として編成される決定の階層的なセットを表すことができる。グラフの根ノード（ｒｏｏｔ  ｎｏｄｅ）と呼ばれる特別なノードがある。このノードは、入ってくるノードを有しない。決定プロセスは、根ノードから始まり、「葉（ｌｅａｆ）」ノード（出ていく決定線がないノードを指す）に達するまでグラフを往来する。葉ノードに遭遇するとき、運転ポリシーは、葉ノードに関連づけられた所望の走行動作に関連づけられた加速およびステアリングコマンドを出力し得る。
【０２１６】
内部ノードは、その有効な選択肢のうちから子を選択するポリシーの実装をもたらす。内部ノードの有効な子のセットは、決定線を介して特定の内部ノードに関連づけられたすべてのノードを含む。
【０２１７】
システムを製造する決定の柔軟性は、選択肢のグラフの階層におけるそれらの位置を調節することをノードに可能にすることによって獲得され得る。例えば、いかなるノードも、自分自身が「重大（ｃｒｉｔｉｃａｌ）」であると宣言することを可能にし得る。各ノードは、ノードがそのポリシー実装の重大な部分にある場合に「真（Ｔｒｕｅ）」を出力する、関数「重大である（ｉｓ  ｃｒｉｔｉｃａｌ）」を実装し得る。例えば、車線変更（ｔａｋｅ−ｏｖｅｒ）を担うノードは、操縦の中心にある間、自分自身が重大であると宣言し得る。これは、ノードｕの子であるすべてのノードｖを含み得、重大であると指定されたすべてのノードを通るノードｖから葉ノードへの経路が存在する、ノードｕの有効な子のセットに制約を課し得る。そのような手法は、一方では、各時間段階におけるグラフ上に所望の経路を通知することを可能にし得るが、他方では、特に、ポリシーの重大な部分が実装されている間、ポリシーの安定性を維持し得る。
【０２１８】
選択肢のグラフを画定することによって、運転ポリシーπ：Ｓ→Ａの学習の問題は、グラフの各ノードに関するポリシーを画定する問題へと分解され得、ここで、内部ノードにおけるポリシーは、利用可能な子ノードのうちから選択すべきである。ノードのいくつかによっては、各々のポリシーが手動で実装され得（例えば、ｉｆ−ｔｈｅｎ型のアルゴリズムによって、観測状態に応答して動作のセットを規定する）、他のノードによっては、ポリシーは強化学習によって形成された、訓練されたシステムを用いて実装され得る。手動か、訓練され／学習された手法かの選択は、タスクに関連づけられた安全性の態様、および、その相対的な簡易性に依存し得る。選択肢グラフは、ノードのいくつかが直接的に実装されるような形で構築され得るが、他のノードは、訓練されたモデルに依存し得る。そのような手法は、システムの安全な動作を確実にすることができる。
【０２１９】
上で説明されたように、運転ポリシーへの入力は「感知された状態」であり、それは、例えば利用可能センサから取得した、環境地図をまとめる。運転ポリシーの出力は、最適化問題の解としての、軌跡を画定する願望のセット（オプションとして、厳格な制約のセットと一緒に）である。
【０２２０】
上で説明されたように、選択肢のグラフは、ＤＡＧとして編成された決定の階層的なセットを表す。グラフの「根」と呼ばれる特別なノードがある。根ノードは、入ってくる縁部（例えば、決定線）を有さない唯一のノードである。決定プロセスは、根ノードから始まり、「葉」ノード、すなわち、出ていく縁部がないノードに達するまでグラフを往来する。各内部ノードは、その利用可能な子のうちから子を拾うポリシーを実装すべきである。あらゆる葉ノードは、根から葉までの全体の経路に基づいて、願望のセット（例えば、ホスト車両に関する走行目標のセット）を画定するポリシーを実装すべきである。願望のセットは、感知された状態に直接基づいて定義された厳格な制約のセットと一緒に、その解が車両のための軌跡である最適化問題を確立する。厳格な制約は、システムの安全性をさらに増大するために使用され得、願望は、運転の快適性とシステムの人間に近い運転挙動を提供するように用いられることができる。最適化問題の解として提供される軌跡は、次に、軌跡を完成するように、ステアリング、ブレーキ、および／または、エンジンアクチュエータに提供されるべきコマンドを画定する。 
【０２２１】
様々な意味論的な意味が、ホスト車両の環境にある目標車両に割り当てられ得る。例えば、いくつかの実施形態において、意味論的な意味は、以下の指定のいずれかを含み得る。１）非関連（ｎｏｔ  ｒｅｌｅｖａｎｔ）：シーンにおいて感知された車両が現在関連していない旨を示す。２）隣の車線（ｎｅｘｔ  ｌａｎｅ）：感知された車両が、この車両に対して隣接した車線にあり、この車両に対して適切な位置ずれを維持すべきである旨を示す（正確な位置ずれは、願望および厳格な制約を与えられた軌跡を構築する最適化問題において算出され得、潜在的に、車両に依存し得る。選択肢のグラフのｓｔａｙ葉（ｓｔａｙ  ｌｅａｆ）は、目標車両の意味論的な種類を設定し、それは目標車両に対する願望を画定する）。３）道を与える（ｇｉｖｅ  ｗａｙ）。ホスト車両は、例えば、速度を下げることによって、感知された目標車両に道を与えるよう試みる（特に、ホスト車両が、目標車両がホスト車両の車線を切り分ける可能性がある旨を判定する場合）。４）道を取る（ｔａｋｅ  ｗａｙ）。ホスト車両は、例えば、速度を増大させることによって、道の右に取って入るよう試みる。５）従う（ｆｏｌｌｏｗ）。ホスト車両はこの目標車両の後に従って、スムーズな運転を保持することを願望する。６）左／右の車線変更（ｔａｋｅｏｖｅｒ  ｌｅｆｔ／ｒｉｇｈｔ）。これは、ホスト車両が、左または右車線に車線の変更を開始したいことを意味する。
【０２２２】
ノードの別の例は選択間隙ノードである。このノードは、ホスト車両が入ることを願望する、特定の目標車線における２つの目標車両の間の間隙を選択することを担い得る。形式ＩＤｊのノードを選択することによって、ｊの値によっては、ホスト車両が、軌跡最適化問題に関する願望を指定する葉に到着する。例えば、ホスト車両は、選択された間隙に到着するように操縦を行いたい。そのような操縦は、第１に、現在の車線における加速／ブレーキを含み得、次に、選択された間隙に入るための適切な時において目標車線へヘッディングを変更することを含み得る。選択間隙ノードが、適切な間隙を見つけることができない場合、それはアボートノードに遷移し得、それは、現在の車線の中央に戻るように移動して車線変更をキャンセルする旨の願望を画定する。
【０２２３】
上で説明されたように、選択肢のグラフのノードは、自分自身を「重大」であると宣言し得、それは、選択された選択肢が重大なノードを通ることを確実にし得る。形式的には、各ノードは、関数ＩｓＣｒｉｔｉｃａｌを実装する。根から葉まで、選択肢のグラフの前向き通過を実行して、軌跡プランナーの最適化問題を解決した後、後ろ向き通過が、葉から根に戻るように実行され得る。この後ろ向き通過に従って、通過におけるすべてのノードのＩｓＣｒｉｔｉｃａｌ関数が呼ばれ得、すべての重大なノードのリストが保存され得る。次の時間のフレームに対応する前向き経路において、運転ポリシーは、根ノードから葉まですべての重大なノードを通って進む経路を選択することを要求し得る。
【０２２４】
例えば、追い越し動作が開始して、運転ポリシーがＩＤｋに対応する葉に到着する状況において、例えば、ホスト車両が追い越し操縦の中央にいるときのｓｔａｙノードは、選択を所望されないであろう。そのようなスムーズでない状況を回避するように、ＩＤｊノードは、それ自身が重大であると指定することができる。操縦の最中、軌跡プランナーの成功が観察され得、関数ＩｓＣｒｉｔｉｃａｌは、意図されたように追い越し操縦が経過した場合に「真」値を戻すであろう。この手法は、次の時間のフレームにおいて、追い越し操縦（別の場所に飛ぶよりもむしろ、はじめに選択された操縦の完了前の、潜在的に一貫性のない操縦）が続くことを確実にし得る。他方で、操縦の観察が、選択された操縦が意図されたように進行しない旨を示す場合、または操縦が不要または不可能になった場合、関数ＩｓＣｒｉｔｉｃａｌは「誤（Ｆａｌｓｅ）」値を戻し得る。これは、選択間隙ノードが、次の時間のフレームに異なる間隙を選択すること、または、追い越し操縦を完全に中止することを可能にする。この手法は、一方では、各時間段階において選択肢のグラフ上の所望の経路の通知を可能にし得るが、他方では、実行の重大な部分の間にポリシーの安定性を促進する助けとなり得る。
【０２２５】
以下にさらに詳細に説明されるであろう、厳格な制約は、走行の願望とは区別され得る。例えば、厳格な制約は、計画された走行動作のフィルタリングの追加層を適用することによって安全な運転を確実にし得る。暗示された厳格な制約は、強化学習において形成された、訓練されたシステムの使用によってよりは、むしろ、手動によってプログラムおよび定義され得るものであり、感知された状態から判定されることができる。しかしながら、いくつかの実施形態において、訓練されたシステムは、適用して従うべき適用可能な厳格な制約を学習し得る。そのような手法は、運転ポリシーモジュール８０３が、適用可能な厳格な制約をすでに遵守している選択された動作に到達することを促進し得、それは、適用可能な厳格な制約に従わせるために、選択された動作に後で修正が必要となり得ることを、低減または解消させ得る。それでも、運転ポリシーが、予め定められた厳格な制約を考慮するように訓練されている場合でさえも、冗長な安全性測度として、厳格な制約が運転ポリシーの出力に適用されてもよい。
【０２２６】
可能性のある厳格な制約には多くの例がある。例えば、厳格な制約は、道路の縁部のガードレールと共に定義され得る。いかなる状況においても、ホスト車両がガードレールを通ることは可能にされ得ない。そのようなルールは、ホスト車両の軌跡上での厳格な横方向の制約を誘起する。厳格な制約の別の例は、道路バンプ（例えば、速度制御バンプ）を含み得、それは、バンプの前およびバンプを往来する間の、運転の速度に厳格な制約を誘起し得る。厳格な制約は、重大な安全性を考慮し得、したがって、訓練の最中に制約を学習する訓練されたシステムにのみ依存して定義されるよりむしろ、手動で定義され得る。 
【０２２７】
厳格な制約とは対照的に、願望の目標は、快適な運転を可能にする、または実現するためのものであってもよい。上で説明されたように、例である願望は、ホスト車両を、ホスト車両の車線の中央に対応する車線内の横方向の位置に配置する目標を含み得る。別の願望は、はめ込むべき間隙のＩＤを含み得る。ホスト車両が車線の正確に中央にある、という要件はないが、代わりに、中央に可能な限り近くに置きたいという願望が、車線の中央からのずれがあった場合でさえも、確実にホスト車両を車線の中央に移行しやすくし得ることに注意されたい。願望は、重大な安全性でなくてもよい。いくつかの実施形態において、願望は、他の運転者および歩行者とのネゴシエーションが必要であることがある。願望を構築する１つの手法は、選択肢のグラフに依存し得、グラフの少なくともいくつかのノードにおいて実装されるポリシーは、強化学習に基づき得る。
【０２２８】
学習に基づいて訓練されたノードとして実装される選択肢のグラフのノードに関して、訓練のプロセスは、問題を、教師あり学習段階および強化学習段階に分けることを含み得る。教師あり学習段階において、（ｓｔ，ａｔ）から
【数２６】
2020523660.tif 000028
への区別可能なマッピングが、
【数２７】
2020523660.tif 000029
となるように学習され得る。これは、「モデルに基づく」強化学習に類似し得る。しかしながら、ネットワークの前方ループにおいて、
【数２８】
2020523660.tif 000030
は、ｓｔ＋１の実際の値によって置き換えられ得、したがって、誤差累積の問題は解消する。
【数２９】
2020523660.tif 000031
の予測の役割は、将来からのメッセージを過去の動作に返すように伝搬することである。この意味において、アルゴリズムは、「モデルに基づく」強化学習と「ポリシーをベースとする学習」との組み合わせとなり得る。 
【０２２９】
いくつかのシナリオにおいて提供され得る主要な要素は、動作の決定へと戻される、将来の損失／報酬とは区別可能な経路である。選択肢のグラフ構造によって、安全性の制約を含む選択肢の実装は、通常は区別可能ではない。この問題を解決するように、学習されたポリシーノードにおける子の選択は、確率的であり得る。すなわち、ノードは、確率ベクトルｐを出力し得、それは、特定のノードのそれぞれの子が選択に用いられる確率を割り当てる。ノードがｋ個の子を有すると仮定し、各子から葉への経路の動作を
【数３０】
2020523660.tif 000032
とする。結果としての予測される動作は、したがって
【数３１】
2020523660.tif 000033
であり、それは、動作からｐへの区別可能な経路をもたらし得る。実際には、動作ａは、ｉ〜ｐに関してａ（ｉ）になるよう選択され得、ａと
【数３２】
2020523660.tif 000034
の間の差異は、加算的ノイズと呼ばれ得る。
【０２３０】
所与のｓｔ、ａｔにおける
【数３３】
2020523660.tif 000035
の訓練のために、教師あり学習は、現実のデータを一緒に用い得る。訓練のために、ノードシミュレータのポリシーが用いられることができる。後に、ポリシーの正確なチューニングが、現実のデータを用いてなされることができる。２つの概念が、シミュレーションをより現実的にし得る。第１に、模倣を用いて、大きな現実の世界のデータセットを用いて、最初のポリシーが「挙動クローニング」パラダイムを用いて構築され得る。いくつかの場合において、得られたエージェントは適切であり得る。他の場合には、得られたエージェントは、道路上の他のエージェントに関する非常に良好な最初のポリシーを、少なくとも形成する。第２に、セルフプレイを用いて、自分自身のポリシーが、訓練を増大するように用いられ得る。例えば、経験され得る他のエージェント（車／歩行者）の最初の実装を与えると、ポリシーは、シミュレータに基づいて訓練され得る。他のエージェントのいくつかは、新しいポリシーに置き換えられ得、プロセスは反復され得る。結果として、異なるレベルの精巧さを有する、一層様々な他のエージェントに対応すべきものとして、ポリシーは向上し続け得る。
【０２３１】
さらに、いくつかの実施形態において、システムは、マルチエージェント手法を実装し得る。例えば、システムは、複数の角度から取り込んだ様々な源および／またはイメージからのデータを考慮に入れ得る。さらに、いくつかの開示される実施形態は、ホスト車両を直接含まないがホスト車両に影響を与え得るイベントの先行を考慮し得、または、他の車両を含む予測不可能な状況につながり得るイベントの先行さえも考慮し得る（例えば、レーダは、先行車両を「見通し（ｓｅｅ  ｔｈｒｏｕｇｈ）」得、ホスト車両に影響を与えるであろう避けられないイベント、または可能性が一層高いイベントの先行を「見通し」得る）ので、エネルギーの節約を提供し得る。
【０２３２】
グローバルな精度およびローカルな精度
【０２３３】
自律運転の文脈において、カメラ、センサなどからの測定の精度を十分に画定する（および、したがって、それへの条件を課す）ために、損失関数が定義され得る。したがって、シーンは、（車両、歩行者、車線標示などの）オブジェクトの有限セットＳとして定義され得る。Ｓはホスト車両を含み、それはｈとして示され得る。この文脈において、配置は、地図ｐ：Ｓ
【数３４】
2020523660.tif 000036
を含み得、ここでｐ（ｈ）＝０＝（０，０，０）である。したがって、ｐ（ａ）の第１の座標は、オブジェクトａの横方向の位置を含み得、第２の座標は、オブジェクトａの縦方向の位置を含み得、最後の座標は、オブジェクトａの高さを含み得る。
【０２３４】
損失関数は、したがって、セットＳにおいて、２つのオブジェクトａおよびｂに対して、２つの配置ｐと
【数３５】
2020523660.tif 000037
との間で定義され得る。損失関数は、以下のように定義され得る。
【数３６】
2020523660.tif 000038
【０２３５】
損失関数への制約を課すことは、一般に現実的ではない。例えば、オブジェクトａが配置ｐ（ａ）＝（α，ｚ，０）にある車両であり、オブジェクトｂが配置ｐ（ｂ）＝（−α，ｚ，０）にある車線標示である場合、次に、それぞれ
【数３７】
2020523660.tif 000039
＝ｐ（ａ）＋（βｐ（ａ）／｜｜ｐ（ａ）｜｜）および
【数３８】
2020523660.tif 000040
＝ｐ（ｂ）におけるａおよびｂの第２の配置は、βの損失をもたらすであろう。したがって、オブジェクトａおよびｂが１５０メートルの縦方向の位置にあって、損失βが０．２（すなわち、２０％）である場合、次に、これは大部分の損失を許容できないものとするであろうから、２０ｃｍの絶対的損失制約を課すのは不可能である。
【０２３６】
したがって、以下に従うように相対損失関数が定義され得る。
【数３９】
2020523660.tif 000041
ここで、ｖは（０，１］である。
【０２３７】
損失関数を正規化することによって、より遠いオブジェクトに関して、より大きい損失を占める現実的な損失制約が課され得る。しかしながら、正規化された損失関数を用いて精度を画定するためには、２つの方法がある。１つはエゴ精度（ｅｇｏ  ａｃｃｕｒａｃｙ）であり、ホスト車両ｈに対して以下のように測定される。
【数４０】
2020523660.tif 000042
ここで、εは損失制約である。
【０２３８】
この要件は、しかしながら、ｐ（ｈ）＝
【数４１】
2020523660.tif 000043
＝０である場合、ｐ（ａ）＝（α、ｚ、０）、および
【数４２】
2020523660.tif 000044
＝ｐ（ａ）＋（βｐ（ａ））／｜｜ｐ（ａ）｜｜
【数４３】
2020523660.tif 000045
であるので、車両の視野に検出されたオブジェクトの範囲ｚに依存する。
【０２３９】
範囲ｚへの依存性を回避するように、対になっている精度の別の定義が以下のように用いられ得る。
【数４４】
2020523660.tif 000046
ここで、εは損失制約である。
【０２４０】
ｐ（ａ）＝（α，ｚ，０）、ｐ（ｂ）＝（−α，ｚ，０）、
【数４５】
2020523660.tif 000047
＝ｐ（ａ）＋（βｐ（ａ））／｜｜ｐ（ａ）｜｜、および
【数４６】
2020523660.tif 000048
＝ｐ（ｂ）に関して、対になっている精度は以下のように簡素化される。
【数４７】
2020523660.tif 000049
【０２４１】
したがって、
【数４８】
2020523660.tif 000050
これは、ｚから独立している。
【０２４２】
さらに、対になっている精度なしで、エゴ精度を有する状況がある。特に、
【数４９】
2020523660.tif 000051
の場合、β＝εｚとなるように
【数５０】
2020523660.tif 000052
であり、したがって、
【数５１】
2020523660.tif 000053
このことは、ｚ＞２の場合、対になっている精度の損失をもたらすことを意味する。
【０２４３】
１つの特定の例において、ε＝０．２およびｚ＝１００メートルの場合、したがって、β＝２メートルであり、これは１００メートルにつき２メートルの合理的な損失制約である。しかしながら、このことは、
【数５２】
2020523660.tif 000054
という結果となり、これは、この状況が、０．０２の対になっている精度での５０の折り畳み（ｆｏｌｄ  ａｗａｙ）を意味する。対になっている精度を取得するように、ｚ＝１メートルおよびβ＝０．０２と設定することもでき、１００メートルの範囲で２ｃｍの誤差という結果となる。しかしながら、これは、非現実的な、所与の最も現存しているセンサである。他方では、対になっている精度は、エゴ精度に関することなく現実的に強化され得る。この精度を強化するように、シーンの関連するオブジェクト（車両、歩行者、車線など）が同時に存在する、基準座標フレームが用いられ得る。これは、しかしながら、ライダ、ＧＰＳ、または他のセンサよりもむしろ、カメラの使用に関与し得る。
【０２４４】
したがって、いくつかの実施形態において、ホスト車両の走行システムは、車両の３−Ｄ座標系よりむしろ、カメラの２−Ｄ座標系を使用し得る。システムは、次に、地図（例えば、スパースマップのランドマークおよびスプライン）を２−Ｄ座標系に変換し、２−Ｄ座標系における走行を実行し得る。加えて、システムは、２−Ｄ座標系で作成された判定を３−Ｄ座標系に変換することによって、３−Ｄ座標系における走行を実行し得る。このことは、エゴ精度よりむしろ、対になった精度を強化し、それは、より高い安全性および信頼性を提供する。加えて、地図を２−Ｄに変換することは、イメージを３−Ｄに変換することより速いので、また、２−Ｄにおいて予測および走行を実行することは、３−Ｄにおいてそうすることより速いので、この技法は、システムの効率を増大させる。
【０２４５】
一例の実施形態において、走行システムは、ホスト車両の位置を判定し得る。例えば、位置は地理的領域内であり得る。走行システムは、さらに、地理的領域を含む地図にアクセスし得る。例えば、走行システムは、格納された地図にアクセスするか、地理的領域を含む１または複数のリモートサーバから地図にアクセスし得る。いくつかの実施形態において、地図は、地理的領域に基づくスパースマップまたはロードブック（以下に説明する）、またはそれらの部分を含み得る。上で説明されたように、スパースマップは、予め定められた移動する経路、および／または、少なくとも１つのランドマークを表す少なくとも１つのスプラインを含み得る。したがって、少なくとも１つの特徴は、少なくとも１つのランドマークを含み得る。
【０２４６】
走行システムは、ホスト車両の位置に基づいて、地図から少なくとも１つの特徴を抽出し得る。例えば、走行システムは、ホスト車両の視野を判定し得、位置に基づいて視野内にあると予想される少なくとも１つの特徴を抽出し得る。いくつかの実施形態において、少なくとも１つの特徴は、地図に含まれる、車線標示、道路縁部、または他のランドマークを含み得る。例えば、道路縁部は、車線標示、縁石、ガードレール、またはジャージーウォールのうち少なくとも一方を含み得る。
【０２４７】
走行システムは、少なくとも１つのイメージセンサから、ホスト車両の環境を表す少なくとも１つのイメージを受信し得、少なくとも１つの特徴の座標を、地図の座標系から少なくとも１つのイメージセンサの座標系に変換し得る。例えば、地図の座標系は３次元座標系（例えば、ＧＰＳに基づいたグローバルな座標系、地理的領域に含まれる道路セグメントにローカルな座標系など）を含み得、少なくとも１つのイメージセンサの座標系は、少なくとも１つのイメージセンサの視野に基づいた２次元座標系を含み得る。いくつかの実施形態において、少なくとも１つの特徴は、地図の３次元座標系からホスト車両を中心とする３次元座標系へと変換され得（例えば、位置を用いて）、次に、少なくとも１つのイメージセンサの２次元平面に射影され得る（例えば、ホスト車両と視野との間の知られている関係を用いて）。
【０２４８】
走行システムは、少なくとも１つのイメージを分析して、ホスト車両の環境において少なくとも１つの特徴を識別し得、変換された座標と、少なくとも１つのイメージの識別された少なくとも１つの特徴の座標との比較に基づいて、ホスト車両の少なくとも１つの走行変化を生じさせ得る。例えば、走行システムは、変換された座標に基づいて、少なくとも１つのイメージセンサの２次元座標系において少なくとも１つの特徴の予想される位置を判定し得、予想される位置で、および／またはその近くで、少なくとも１つのイメージセンサからの１または複数のイメージを検索し得る。近さは絶対的に、例えば、予想される位置から１０ピクセル以内、２０ピクセル以内、などと、または相対的に、例えば、少なくとも１つの特徴などの長さまたは幅などの、予想される寸法の１０％以内と判定され得る。
【０２４９】
いくつかの実施形態において、走行変化のうち少なくとも１つは、ホスト車両を減速させること、ホスト車両を加速させること、またはホスト車両のステアリング機構を作動させることを含み得る。例えば、ホスト車両は、少なくとも１つのイメージにおける少なくとも１つの特徴の特定された位置と、変換された座標に基づいて予想される位置との間の差異に基づいて、減速、加速、および／または、ステアリングし得る。
【０２５０】
いくつかの実施形態において、少なくとも１つの走行変化は、少なくとも１つのイメージセンサの座標系内で判定され得る。例えば、ベクトルは、少なくとも１つのイメージにおける少なくとも１つの特徴の特定された位置と、変換された座標に基づいて予想される位置との間の差異に基づいて判定され得る。ベクトルは、少なくとも１つの特徴が、予想されたところに現れるように、少なくとも１つの走行変化を表し得る。そのような複数の実施形態において、走行システムは、少なくとも１つの走行変化を、地図の座標系へ変換し得る。例えば、走行システムは、少なくとも１つのイメージにおける少なくとも１つの特徴の深さ、および／または、地図からの少なくとも１つの特徴の予想された深さに基づいて、３次元座標系（例えば、グローバルな座標系またはホスト車両を中心とする座標系）に差異ベクトルを射影し得る。
【０２５１】
快適性の制約と安全性の制約との結合
【０２５２】
いくつかの実施形態において、ホスト車両は、カメラ、ライダ、レーダなどと結合された地図データなどの、複数の源からデータを受信し得る。ホスト車両の走行システムは、これらの様々な源からのデータを結合させる、異なるスキームを使用し得る。例えば、単一化スキームにおいて、検出の技法が速いが精度が低い、少なくとも１つの源によって検出される場合、走行システムは、目標オブジェクトを検証し得る（すなわち、可能性のあるオブジェクトが、実際に検出されたオブジェクトとみなされるべきである旨を検証し得る）。交点スキームにおいて、走行システムは、複数の源によって検出される場合、目標オブジェクトを承認し得、相乗スキームにおいて、走行システムは、複数の源からのデータの組み合わせを用いて検出される場合、目標オブジェクトを承認し得る。交点および相乗スキームは、単一化スキームよりも、低速であるが正確である。したがって、単一化スキームと同様、交点および相乗スキームを用いた選択によっても、システムのリアクションの精度は、安全性を犠牲にすることなく最適化され得る。このことは、安全性を犠牲にすることなく、どのように、正確に自律走行車両からのセンサデータを解釈すべきかという技術的問題を解決する。
【０２５３】
図１２は、開示される実施形態と合致する１または複数の操作を実行するための命令を格納され／プログラミングされ得る、メモリ１４０および／または１５０の例示的な機能ブロック図である。以下はメモリ１４０を参照するが、当業者は、命令はメモリ１４０および／または１５０に格納され得ることを認識するであろう。
【０２５４】
図１２に示されるように、メモリ１４０は、オブジェクト識別モジュール１２０２、制約モジュール１２０４、検証モジュール１２０６、および走行変化モジュール１２０８を格納し得る。開示される実施形態は、メモリ１４０のいかなる特定の構成にも限定されない。さらに、アプリケーションプロセッサ１８０および／またはイメージプロセッサ１９０は、メモリ１４０に含まれるいかなるモジュール１２０２、１２０４、１２０６および１２０８に格納された命令も実行し得る。処理ユニット１１０への以下の説明の参照が、個々に、または集合的に、アプリケーションプロセッサ１８０およびイメージプロセッサ１９０を参照し得ることを、当業者は理解するであろう。したがって、以下のいかなるプロセスの段階も、１または複数の処理デバイスによって実行され得る。
【０２５５】
１つの実施形態において、オブジェクト識別モジュール１２０２は、処理ユニット１１０によって実行されたときに、ホスト車両に関連づけられた第１のデータ源からの第１の出力、およびホスト車両に関連づけられた第２のデータ源からの第２の出力を受信する、（コンピュータビジョンソフトウェアなどの）命令を格納し得る。第１のデータ源および第２のデータ源のうち少なくとも一方は、ホスト車両に搭載されたセンサを含む。例えば、オブジェクト識別モジュール１２０２は、ホスト車両に搭載された第１のセンサからの第１の出力と、ホスト車両に搭載された第２のセンサからの第２の出力とを受信し得る。したがって、第１のデータ源は、ホスト車両に搭載されたカメラ、ライダ、またはレーダのうち少なくとも１つを含み得、第２のデータ源は、第１のデータ源とは別個のホスト車両に搭載されたカメラ、ライダ、またはレーダのうち少なくとも１つを含み得る。
【０２５６】
代替的に、オブジェクト識別モジュール１２０２は、ホスト車両に搭載された第１のセンサからの第１の出力、および処理ユニット１１０によってアクセスされた地図からの第２の出力を受信し得る。したがって、第１のデータ源は、ホスト車両に搭載されたカメラ、ライダ、またはレーダのうち少なくとも１つを含み得、第２のデータ源は、地図データを含み得る。
【０２５７】
１つの実施形態において、オブジェクト識別モジュール１２０２は、処理ユニット１１０によって実行されたとき、第１の出力における目標オブジェクトの表現を識別する（コンピュータビジョンソフトウェアなどの）命令を格納し得る。例えば、オブジェクト識別モジュール１２０２は、目標オブジェクトの表現を識別するために、上で説明されたプロセス５００Ｂのすべてまたは部分を実行し得る。
【０２５８】
一例において、オブジェクト識別モジュール１２０２は、第１の出力をスキャンすること、第１の出力を１または複数の予め定められたパターンと比較すること、および、第１の出力内で、関心のあるオブジェクト（例えば、車両、歩行者、動いていないオブジェクト、車線標示など）を含み得る可能な位置を識別することによって、目標オブジェクト（例えば、車両、歩行者、動いていないオブジェクト、車線標示など）を表す候補オブジェクトのセットを判定し得る。予め定められたパターンは、第１のセンサからの出力の種類と合致し得る。例えば、第１のセンサがカメラである場合、予め定められたパターンは視覚であり得、第１のセンサがマイクである場合、予め定められたパターンは音声であり得る。いくつかの実施形態において、予め定められたパターンは、「誤ったヒット」である高速および、「喪失」である低速を実現するように構成され得る。例えば、目標オブジェクトを表す候補オブジェクトを喪失する（例えば、識別しない）確率を低減するように、オブジェクト識別モジュール１２０２は、候補オブジェクトを可能性のある目標オブジェクトとして識別するための予め定められたパターンとして、低い閾値の類似性を使用し得る。
【０２５９】
オブジェクト識別モジュール１２０２は、分類基準に基づいて、特定の候補（例えば、無関係または関連性の低いオブジェクト）を除くように、候補オブジェクトのセットをさらにフィルタリングし得る。そのような基準は、データベース、例えば、メモリ１４０（図示せず）に格納されたデータベース、および／または、１または複数のリモートサーバからアクセスされるデータベースに格納されたオブジェクトの種類に関連づけられた様々なプロパティから導出され得る。プロパティは、オブジェクト形状、寸法、テクスチャ、位置（例えば、ホスト車両に対しての）、速度（例えば、ホスト車両に対しての）などを含み得る。したがって、オブジェクト識別モジュール１２０２は、候補オブジェクトのセットから誤った候補を拒否する基準の、１または複数のセットを使用し得る。
【０２６０】
第１の出力が経時的な複数のフレームを含む実施形態において、オブジェクト識別モジュール１２０２は、また、候補オブジェクトのセットにおけるオブジェクトが目標オブジェクトを表すかどうかを判定するように、第１の出力の複数のフレームを分析し得る。例えば、オブジェクト識別モジュール１２０２は、検出された候補オブジェクトを順次のフレームにわたってトラッキングし得、検出されたオブジェクトに関連づけられたフレームごとのデータ（例えば、サイズ、ホスト車両に対しての位置、ホスト車両に対しての速度など）を蓄積し得る。加えて、または代替的に、オブジェクト識別モジュール１２０２は、検出されたオブジェクトに関するパラメータを推定し得、オブジェクトのフレームごとの位置データを予測位置と比較し得る。「フレーム」の使用は、第１の出力がイメージでなければならないことを暗に含むものではないが、イメージであってもよい。本明細書に用いられるように、「フレーム」は、第１のセンサ、第２のセンサ、または任意の追加のセンサから受信された、時間にわたる測定値の任意の離散化されたシーケンスを指す。
【０２６１】
オブジェクト識別モジュール１２０２は、検出されたオブジェクトごとの測定値のセットをさらに構築し得る。そのような測定は、例えば、検出されたオブジェクトに関連づけられた位置、速度、および加速度値（例えば、ホスト車両に対しての）を含み得る。いくつかの実施形態において、目標オブジェクトモジュール２００４は、カルマンフィルタまたは線形二次推定（ＬＱＥ）などの、一連の時間ベースの観測を用いた推定技法に基づいて、および／または、異なるオブジェクトの種類（例えば、車、トラック、歩行者、自転車、道路標識など）に関する利用可能なモデリングデータに基づいて測定値を構築し得る。カルマンフィルタは、オブジェクトのスケールの測定値に基づき得、ここで、スケール測定値は、衝突までの時間（例えば、ホスト車両がオブジェクトに達するまでの時間量）に比例する。
【０２６２】
第１の出力が経時的な複数のフレームを含む実施形態において、オブジェクト識別モジュール１２０２は、「誤ったヒット」の検出の確率と、車両または歩行者を表す候補オブジェクトの喪失の確率とを低減するように、１または複数のイメージのオプティカルフロー分析を実行し得る。オプティカルフロー分析は、例えば、他の車両および歩行者に関連づけられた１または複数のイメージにおいて、路面の動きとは別個の、車両２００に対する動きパターンを分析することを指し得る。処理ユニット１１０は、異なる時間に取り込まれた、複数のイメージフレームにわたってオブジェクトの異なる位置を観測することによって、候補オブジェクトの動きを計算し得る。処理ユニット１１０は、候補オブジェクトの動きを算出するための数学的モデルへの入力として、位置および時間値を使用し得る。したがって、オプティカルフロー分析は、近くの車両２００である車両および歩行者を検出する別の方法を提供し得る。処理ユニット１１０は、段階５４０−５４６と組み合わせてオプティカルフロー分析を実行し、車両および歩行者の検出に関する冗長性を提供し、システム１００の信頼性を増大させ得る。
【０２６３】
加えて、または代替的に、オブジェクト識別モジュール１２０２は、目標オブジェクトの表現を識別するために、上で説明されたプロセス５００Ｃのすべてまたは部分を実行し得る。オブジェクト識別モジュール１２０２が、訓練されたシステムの選択された動作に関する処理の追加の層として実装される実施形態において、オブジェクト識別モジュール１２０２は、訓練されたシステムからの目標オブジェクトの識別子を受信し得る。したがって、オブジェクト識別モジュール１２０２は、第１の出力をスキャンし得、第１の出力を訓練されたシステムから受信された目標オブジェクトとマッチングするパターンと比較し得、第１の出力内で目標オブジェクトの位置を識別し得る。例えば、オブジェクト識別モジュール１２０２は、訓練されたネットワークから別の車両の識別を受信し得、データベース、例えば、メモリ１４０に格納されたデータベース（図示せず）、および／または、１または複数のリモートサーバからアクセスされるデータベースに格納され、第１の出力の種類（例えば、視覚、音声、熱など）との合致と同様に車両のパターンとしてインデックスされたパターンを抽出し得、第１の出力を抽出されたパターンと比較することによって、第１の出力内での他の車両の位置を識別し得る。
【０２６４】
代替的に、オブジェクト識別モジュール１２０２が、訓練されたシステムの選択された動作に関する処理の追加の層として実装される実施形態において、オブジェクト識別モジュール１２０２は、目標オブジェクトの位置と同様に、訓練されたシステムからの目標オブジェクトの識別子を受信し得る。受信された位置が第１の出力における場合、オブジェクト識別モジュール１２０２は、第１の出力において目標オブジェクトを識別するように受信された位置で、および／または、その近くで、（例えば、上で説明された比較を用いて）分類を実行され得る。受信された位置が別の出力（例えば、別のセンサからの）における場合、オブジェクト識別モジュール１２０２は、データベース、例えば、メモリ１４０に格納されたデータベース（図示せず）、および／または、１または複数のリモートサーバからアクセスされるデータベースに格納され、目標オブジェクト（例えば、車両、歩行者、動いていないオブジェクトなど）と合致する、ならびに、第１の出力の種類（例えば、視覚、音声、熱など）と合致するオブジェクトの種類のパターンとしてインデックスされるパターンを抽出し得、第１の出力を抽出されたパターンと比較することによって、第１の出力内での目標オブジェクトの位置を識別し得る。この比較に加えて、または代替的に、オブジェクト識別モジュール１２０２は、訓練されたシステムによって用いられた出力上の位置を、第１の出力上の位置にマッピングする情報を含むアトラスを構築し得る。それに基づいて、オブジェクト識別モジュール１２０２は、第１の出力における目標オブジェクトの表現の予想されるであろう位置を、訓練されたシステムによって用いられた出力におけるそれの位置に基づいて判定し得、第１の出力内で目標オブジェクトの位置を識別するための分類（例えば、上で説明された比較を用いる）を実行し得る。
【０２６５】
１つの実施形態において、走行制約モジュール１２０４は、目標オブジェクトの特性が少なくとも１つの走行制約を引き起こすかどうかを判定するように、処理ユニット１１０によって実行可能なソフトウェアを格納し得る。目標オブジェクトの特性は、厳格な（安全性の）制約または柔軟な（快適性の）制約を引き起こし得る。例えば、目標オブジェクトの距離は、最小距離または最大距離（例えば、他の車両との、歩行者との、道路縁部との、車線標示との、など）に基づく厳格な制約、および／または、好ましい距離に基づく柔軟な制約を引き起こし得る。別の例において、目標オブジェクトのサイズは、最小サイズまたは最大サイズ（例えば、障害物の高さ、クリアランスの高さなど）に基づく厳格な制約、および／または、好ましいサイズに基づく柔軟な制約を引き起こし得る。さらに別の例において、目標オブジェクトの位置は、制限された領域（例えば、ホスト車両が移動している現在の車線内、ホスト車両の計画された軌跡の特定の閾値距離内など）に基づく厳格な制約、および／または、好ましい領域（例えば、移動している現在の車線に近接する車線または歩道、計画された軌跡の範囲内など）に基づく柔軟な制約を引き起こし得る。
【０２６６】
１つの実施形態において、少なくとも１つの走行制約が、目標オブジェクトの特性によって引き起こされない場合、検証モジュール１２０６は、第１の出力および第２の出力の組み合わせに基づいて目標オブジェクトの表現の識別を検証し得る。例えば、組み合わせは、交点スキームまたは相乗スキームを含み得る。交点スキームは、目標オブジェクトが、検証のために第１の出力および第２の出力の両方において識別されるという要件を含み得る。例えば、目標オブジェクトは、検証されるために、第１のデータ源を備えるレーダ、ライダ、またはカメラ、および、第２のデータ源を備えるレーダ、ライダ、またはカメラにおいて識別される必要があってよい。すなわち、目標オブジェクトは、複数のデータ源によって検出される場合に承認されるように考慮されてよい。相乗スキームは、目標オブジェクトを検証するために、第１のデータ源および第２のデータ源の組み合わせを含み得る。例えば、相乗スキームは、複数のデータ源から取得された部分的なデータを結合することに基づく、目標オブジェクトの識別または承認を含み得る。相乗スキームの一例は、目標オブジェクトの範囲のカメラ概算を含み、範囲は、道路エレベーションモデル（例えば、別のカメラに基づく）から、またはライダから測定される。別の例は、ライダを有する目標オブジェクトを検出すること、および、１または複数のカメラからの光の流れに基づいて、道路エレベーションモデルを用いて目標オブジェクトを測定することを含み得る。さらに別の例は、カメラを用いた車線検出（例えば、目標オブジェクトは道路縁部または車線標示を備える）、および、次に、地図データを用いた検出の検証を含み得る。さらに別の例は、１または複数のカメラを用い、ホスト車両の環境でフリースペースを判定するようにライダを使用する、目標オブジェクトの検出を含み得る。
【０２６７】
他方では、少なくとも１つの走行制約が目標オブジェクトの特性によって引き起こされる場合、検証モジュール１２０６は、第１の出力に基づいて目標オブジェクトの表現の識別を検証し得る。例えば、単一化スキームが、第１の出力のみが目標オブジェクトを承認または検証するように用いられるように、用いられ得る。
【０２６８】
走行変化モジュール１２０８は、走行調整の決定木を実装するように、オブジェクト識別モジュール１２０２の出力、および／または、検証モジュール１２０６の出力を使用し得る。走行調整は、第１のセンサ、第２のセンサ、任意の他のセンサ、地図データ、ならびに、第１の出力、第２の出力、および任意の他の出力から検出された１または複数のオブジェクトから導出されたデータに基づき得る。また、走行変化モジュール１２０８は、車両２００のスロットリングシステム２２０、ブレーキシステム２３０、およびステアリングシステム２４０などの、車両２００の他のシステムからの入力に基づいて所望の走行応答を判定し得る。加えて、または代替的に、走行変化モジュール１２０８は、他のメモリモジュール（図示せず）から、および／または、上で説明されたような訓練されたシステムから、１または複数の走行調整を受信し得る。したがって、走行変化モジュール１２０８は、訓練されたシステムの選択された動作に関する処理の追加の層として実装され得る。
【０２６９】
したがって、走行変化モジュール１２０８は、検証に応答して、ホスト車両の少なくとも１つの走行変化を生じさせ得る。少なくとも１つの走行変化を生じさせるために、走行変化モジュール１２０８は、車両２００のスロットリングシステム２２０、ブレーキシステム２３０、およびステアリングシステム２４０に電子信号を送信して、例えば、車両２００のステアリングホイールを回転させて予め定められた角度の回転を実現させることによって、所望の走行応答を引き起こし得る。いくつかの実施形態において、少なくとも１つの走行変化は、検証に応答するホスト車両の１または複数の走行アクチュエータへの上記の任意の調整を含み得る。
【０２７０】
さらに、本明細書に開示されたいかなるモジュール（例えば、モジュール１２０４、１２０４、１２０６および１２０８）も、訓練されたシステム（ニューラルネットワークまたはディープニューラルネットワークなど）、または訓練されていないシステムに関連づけられた技法を実装し得る。加えて、または代替的に、本明細書に開示されたいかなるモジュール（例えば、モジュール１２０４、１２０４、１２０６および１２０８）も、訓練されたシステムの選択された動作に関する処理の追加の層としての技法を実装し得る。
【０２７１】
図１３Ａおよび図１３Ｂは、安全性および快適性の制約の例の概略的な描写を提供する。図１３Ａに図示されたように、ホスト車両１３００は、ホスト車両１３００の前方に他の車両（車両１３０１など）を、ホスト車両１３００の後ろに他の車両（車両１３０３など）を、ホスト車両１３００が移動している車線とは他の車線に他の車両（車両１３０７など）を、目標オブジェクトとして検出し得る。
【０２７２】
そのような検出されたオブジェクトの特性は、走行制約を引き起こし得る。例えば、ホスト車両１３００および他の車両１３０１の間の距離１３０９、ホスト車両１３００および他の車両１３０７の間の距離１３１１、および／または、ホスト車両１３００および他の車両１３０３の間の距離１３１３が、走行制約を引き起こし得る。図１３Ａおよび１３Ｂには図示されないが、１または複数の車両１３０１、１３０３および１３０５に関連づけられた他の特性は、ホスト車両１３００および１または複数の車両１３０１、１３０３および１３０５の間の相対速度、１または複数車両１３０１、１３０３および１３０５との衝突時間、などを含み得る。
【０２７３】
上で説明された例において、引き起こされた走行制約は、１または複数の車両１３０１、１３０３および１３０５との距離（最小距離など）、ホスト車両１３００および１または複数の車両１３０１、１３０３および１３０５の間の相対速度（最大相対速度など、例えば、０近く）、１または複数の車両１３０１、１３０３および１３０５との衝突時間（最小の衝突時間など、例えば、無限大近く）、などに関連づけられ得る。したがって、特性は厳格な（または安全性の）制約を引き起こし得る。代替的に、特性は走行制約を引き起こさなくともよい。例えば、１または複数の柔軟な制約（または「願望」）が、特性に関連づけられ得る。
【０２７４】
図１３Ｃおよび図１３Ｄは、開示される実施形態と合致する安全性および快適性の制約のさらなる例の概略的な描写を提供する。図１３Ｃおよび１３Ｄに図示されるように、ホスト車両１３００は、ホスト車両１３００が往来している車道上に、動いていないオブジェクト１３１５を目標オブジェクトとして検出し得る。加えて、または代替的に、ホスト車両１３００は、車線標示を目標オブジェクトとして検出し得る。
【０２７５】
図１３Ｃおよび１３Ｄの例において、ホスト車両１３００と動いていないオブジェクト１３１５との間の距離１３１７は、走行制約を引き起こす特性であり得る。加えて、または代替的に、ホスト車両１３００と車線標示との間の距離１３１９は、走行制約を引き起こす特性であり得る。図１３Ｃおよび１３Ｄにおいて図示されないが、動いていないオブジェクト１３１５または車線標示に関連づけられた他の特性は、ホスト車両１３００と動いていないオブジェクト１３１５または車線標示との間の相対速度、動いていないオブジェクト１３１５または車線標示との衝突時間、などを含み得る。
【０２７６】
上の例において、走行制約は、動いていないオブジェクト１３１５または車線標示との距離（最小距離など）、ホスト車両１３００と動いていないオブジェクト１３１５または車線標示との間の相対速度（最大相対速度など、例えば、０近く）、動いていないオブジェクト１３１５または車線標示との衝突時間（最小の衝突時間など、例えば、無限大近く）などに関連づけられ得る。したがって、特性は厳格な（または安全性の）制約を引き起こし得る。代替的に、特性は走行制約を引き起こさなくともよい。例えば、１または複数の柔軟な制約（または「願望」）が、特性に関連づけられ得る。
【０２７７】
図１４は、開示される実施形態と合致する、安全性および快適性の制約に基づいて、ホスト車両を走行させる例示的な処理１４００を表すフローチャートを提供する。プロセス１４００は、処理デバイス１１０などの、少なくとも１つの処理デバイスによって実行され得る。
【０２７８】
段階１４０２において、処理デバイス１１０は、ホスト車両に関連づけられた第１のデータ源から第１の出力を受信し得る。例えば、オブジェクト識別モジュール１２０２に関して上で説明されたように、第１のデータ源は、ホスト車両に搭載されたカメラ、ライダ、またはレーダのうち少なくとも１つを含み得る。
【０２７９】
段階１４０４において、処理デバイス１１０は、ホスト車両に関連づけられた第２のデータ源から第２の出力を受信し得る。例えば、オブジェクト識別モジュール１２０２に関して上で説明されたように、第２のデータ源は、少なくとも１つの処理デバイスによってアクセスされる地図データを含み得る。
【０２８０】
いくつかの実施形態において、次に、第１のデータ源および第２のデータ源のうち少なくとも一方は、ホスト車両に搭載されたセンサを含む。いくつかの実施形態において、第１のデータ源および第２のデータ源の両者が、センサを含み得る。例えば、第１のデータ源および第２のデータ源は異なるカメラを含み得る、第１のデータ源はカメラを含み得て第２のデータ源はレーダを含み得る、第１のデータ源はカメラを含み得て第２のデータ源はライダを含み得る、などである。他の実施形態において、第１のデータ源および第２のデータ源の他方は、地図データなどの、別のデータ源を含み得る。
【０２８１】
段階１４０６において、処理デバイス１１０は、第１の出力において目標オブジェクトの表現を識別し得る。例えば、処理デバイス１１０は、オブジェクト識別モジュール１２０２に対して上で説明されたように、目標オブジェクトを識別し得る。
【０２８２】
段階１４０８において、処理デバイス１１０は、目標オブジェクトの特性が、少なくとも１つの走行制約を引き起こすかどうか判定し得る。例えば、走行制約モジュール１２０４に関して上に説明されるように、特性は、目標オブジェクトのサイズ、ホスト車両から目標オブジェクトへの距離、または、ホスト車両の環境における目標オブジェクトの位置を含み得る。
【０２８３】
段階１４１０ａにおいて、検証モジュール１２０６に対して上で説明されたように、少なくとも１つの走行制約が目標オブジェクトの特性によって引き起こされない場合、処理デバイス１１０は、第１の出力および第２の出力の組み合わせに基づいて目標オブジェクトの表現の識別を検証し得る。
【０２８４】
いくつかの実施形態において、第１の出力および第２の出力の組み合わせに基づいて目標オブジェクトの表現の識別を検証することは、目標オブジェクトの表現が第１の出力および第２の出力の両者において識別されるかどうか判定することを含み得る。例えば、検証モジュール１２０６に対して上で説明されるように、組み合わせは交点スキームを含み得る。
【０２８５】
加えて、または代替的に、第１の出力および第２の出力の組み合わせに基づいて目標オブジェクトの表現の識別を検証することは、第１の出力に射影された第２の出力を用いて目標オブジェクトの特性を判定することを含み得る。例えば、検証モジュール１２０６に対して上で説明されるように、組み合わせは相乗スキームを含み得る。一例において、第２の出力が地図データを含み、かつ第１の出力がホスト車両の環境の少なくとも１つのイメージを含む場合、射影は、地図データを用いた少なくとも１つのイメージにおいて１または複数の道路縁部を検出することを含み得る。別の例において、第２の出力がライダからの出力を含み、かつ第１の出力がホスト車両の環境の少なくとも１つのイメージを含む場合、射影は、第２の出力を用いて少なくとも１つのイメージにおいてフリースペースを検出することを含み得る。
【０２８６】
段階１４１０ｂにおいて、検証モジュール１２０６に対して上で説明されたように、少なくとも１つの走行制約が目標オブジェクトの特性によって引き起こされる場合、処理デバイス１１０は、第１の出力に基づいて目標オブジェクトの表現の識別を検証し得る。
【０２８７】
段階１４１２において、検証に応答して、処理デバイス１１０は、ホスト車両の少なくとも１つの走行変化を生じさせ得る。例えば、走行変化モジュール１２０８に関して上で説明されたように、少なくとも１つの走行変化は、ホスト車両を減速させること、ホスト車両を加速させること、または、ホスト車両のステアリング機構を作動させることを含み得る。
【０２８８】
方法１４００は、付加的段階をさらに含み得る。例えば、方法１４００は、少なくとも１つの走行制約が引き起こされるかどうかに基づいて、少なくとも１つの走行変化を判定することを含み得る。例えば、走行変化モジュール１２０８に関して上で説明されるように、少なくとも１つの走行変化は、少なくとも１つの走行制約が引き起こされた場合に第１の変更を含み得るが、少なくとも１つの走行制約が引き起こされない場合には、第２の、異なる変更を含み得る。そのような複数の実施形態において、第２の変更は、第１の変更よりも狭い角度のステアリング機構の調節、ブレーキ機構のより軽い印加、より軽い加速などを含み得る。
【０２８９】
走行に関するバッチ調整
【０２９０】
上で説明されたように、リモートサーバは、複数の車両からスパースマップをクラウドソーシングし得る。しかしながら、複数の運転のグローバルな調整は、スパースマップに誤差累積をもたらす。例えば、運転中のエゴ動作ドリフトは、道路の形状を変形させ得、グローバルなアグリゲーションの最中に誇張され得る。加えて、グローバルな調整を実行するようにＧＰＳデータを用いることは、ＧＰＳ測定値における誤差に起因してしばしば不正確となる。
【０２９１】
したがって、スパースマップを展開するようにグローバルに運転を調整するよりむしろ、リモートサーバは、ロードブックを展開するように、ローカルに運転のバッチを調整し得る。本明細書に用いられるように、用語「ロードブック」は、グローバルな座標よりはむしろ道路セグメントにローカルな座標において格納された、スパースマップ（上で説明された）、または位置データ（例えば、１または複数のスプラインとして格納される）および／またはランドマークデータ（例えば、ランドマークの位置および／またはランドマークの外観、識別などに関連する説明的なデータとして格納される）の他の表現を指し得る。そのようなデータの調整は、より信頼できる調整と、より小さく、よりローカライズされた地図とをもたらし得る。加えて、先行するローカルな調整なしで運転がグローバルな座標内で調整されるより高い精度で、ローカルなロードブックはグローバルな座標に外挿され得る。例えば、エゴドリフトは、ローカルな調整の最中に考慮され得、したがって、ローカルなロードブックがグローバルな座標に外挿された場合、エゴドリフトは伝搬しないであろう。加えて、ローカルな調整は、車線標示などの視覚的手がかりを用いて実行され得、それは、固有の誤差およびドリフトを含むＧＰＳデータを使うよりも正確に配置され得る。
【０２９２】
加えて、グローバルな調整は、動く影、異なるライティング、雨に起因する輝き、および、その他の、運転が実行された時刻および日が異なることに起因する複数の運転からのイメージおよびデータの変化の、主な要因とならないことがある。したがって、同じ日、類似の時間の最中、および／または類似の気象条件の最中に行われる運転のバッチ調整は、ロードブックの精度をさらに向上させる。
【０２９３】
図１５は、開示される実施形態と合致する、１または複数の操作を実行するための命令を格納され／プログラミングされ得る、メモリ１４０および／または１５０の例示的な機能ブロック図である。以下はメモリ１４０を参照するが、当業者は、命令がメモリ１４０および／または１５０に格納され得ることを認識するであろう。
【０２９４】
図１５に示されるように、メモリ１４０は、走行情報受信モジュール１５０２、調整モジュール１５０４、格納モジュール１５０６、および分配モジュール１５０８を格納し得る。開示される実施形態は、メモリ１４０のいかなる特定の構成にも限定されない。さらに、アプリケーションプロセッサ１８０および／またはイメージプロセッサ１９０は、メモリ１４０に含まれるいかなるモジュール１５０２、１５０４、１５０６および１５０８に格納される命令も実行し得る。以下の説明における処理ユニット１１０への参照が、個々にまたは集合的に、アプリケーションプロセッサ１８０およびイメージプロセッサ１９０を参照し得る旨を、当業者は理解するであろう。代替的に、ホスト車両から離れたサーバの少なくとも１つの処理デバイスは、メモリ１４０に含まれるいかなるモジュール１５０２、１５０４、１５０６および１５０８に格納された命令も実行し得る。したがって、以下のいかなるプロセスの段階も、１または複数の処理デバイスによって実行され得る。
【０２９５】
１つの実施形態において、走行情報受信モジュール１５０２は、処理ユニット１１０によって実行されるとき、複数の車両からの走行情報を受信する命令（コンピュータビジョンソフトウェアなど）を格納し得る。例えば、複数の車両からの走行情報は、共通道路セグメントと関連し得る。走行情報は、１または複数のコンピュータネットワークを介して受信され得る。例えば、複数の車両は、運転の最中に情報をアップロードし得、または、複数の車両は、運転の完了後に、例えば、１時間ごと、１日ごと、週ごとなどのアップロードセッションの最中に、情報をアップロードし得る。
【０２９６】
いくつかの実施形態において、走行情報は、運転の最中に車両の１または複数のイメージセンサによって取り込まれた１または複数のイメージを含み得る。加えて、または代替的に、走行情報は、イメージにおいて識別される１または複数のランドマークの位置、および／またはそれについての説明的な情報などの、イメージから処理された情報を含み得る。走行情報は、加えて、または代替的に、ＧＰＳデータなどの、車両の位置情報を含み得る。
【０２９７】
１つの実施形態において、調整モジュール１５０４は、処理ユニット１１０によって実行されるとき、共通道路セグメントにローカルな座標系内での走行情報を調整する命令（コンピュータビジョンソフトウェアなどの）を格納し得る。例えば、走行情報は、車両のイメージセンサからのイメージにおいて識別されるランドマークを用いて調整され得る。単純なスキームにおいて、調整は、イメージに検出されたランドマークの位置を平均化することを含み得る。より複雑なスキームにおいて、調整は、イメージにおいて検出されたランドマークの位置を合流させるための、線形回帰または他の統計的技法を含み得る。イメージを用いることによって、調整モジュール１５０４は、グローバルな座標系、例えばＧＰＳデータに基づくよりむしろ、ローカルな座標系における走行情報を調整し得る。実際、調整モジュール１５０４は、ＧＰＳデータの調整に基づいてランドマークを調節するよりむしろ、ランドマークの調整に基づいて、走行情報に含まれるＧＰＳデータを調節し得る。
【０２９８】
１つの実施形態において、格納モジュール１５０６は、処理ユニット１１０によって実行されるとき、調整された走行情報を共通道路セグメントに関連づけて格納する命令（コンピュータビジョンソフトウェアなど）を格納し得る。例えば、共通道路セグメントの識別子が、調整された走行情報と共に格納され、調整された走行情報をインデックスするように用いられるように、走行情報は、データベースに格納され得る。共通道路セグメントの識別子は、共通道路セグメントを記述するために用いられる、１または複数の座標（例えば、共通道路セグメントの始点、および／または共通道路セグメントの終点のグローバルな座標）を含み得る。
【０２９９】
１つの実施形態において、分配モジュール１５０８は、処理ユニット１１０によって実行されるとき、共通道路セグメントに沿って１または複数の自律走行車両を自律的に走行させる際の使用のために、調整された走行情報を１または複数の自律走行車両に分配する命令（コンピュータビジョンソフトウェアなど）を格納し得る。例えば、１または複数の車両は、車両が共通道路セグメントに近づいているとき、またはそうでなければ、共通道路セグメントの往来を予測しているとき、走行情報を要求し得る。分配モジュール１５０８は、１または複数のコンピュータネットワークを介して、要求している車両に、調整された走行情報を送信し得る。
【０３００】
図１６は、開示される実施形態と合致する、多くの運転からの走行情報を結合することから生成されるロードブック１６２０および１６４０と、ロードブックを結合することから生成される例示的なグローバル地図１６５０との例を示す。図１６において図示されるように、運転１６１０の第１のグループは、共通道路セグメントに沿った５つの別々の運転から受信される位置データ（例えば、ＧＰＳデータ）を含み得る。１つの運転は、別々の車両によって同時に、同じ車両によって別々の時間に、または、別々の車両によって別々の時間に往来した場合、別の運転と分離され得る。リモートサーバは、道路セグメントに沿って位置データを調整するように、１または複数の統計的技法を用いてロードブック１６２０を生成し得る。例えば、リモートサーバは、位置データにおける変動が実際の発散または統計的誤差を表すかどうか判定し得、運転の最中に取り込まれたイメージによって判定された座標系を用いて位置データを調整し得る。したがって、調整は道路セグメントにおいてローカルであり、グローバルな座標系などの外部座標系と合致するよりはむしろ、自己一致するであろう。
【０３０１】
同様に、運転１６３０の第２のグループは、共通道路セグメントにに沿った５つの追加の運転から受信される位置データ（例えば、ＧＰＳデータ）を含み得る。リモートサーバは、道路セグメントに沿って位置データを調整するように、１または複数の統計的技法を用いてロードブック１６４０を生成し得る。例えば、リモートサーバは、位置データにおける変動が実際の発散または統計的誤差を表すかどうか判定し得、運転の最中に取り込まれたイメージによって判定された座標系を用いて位置データを調整し得る。したがって、調整は道路セグメントにおいてローカルであり、グローバルな座標系などの外部座標系と合致するよりはむしろ、自己一致するであろう。
【０３０２】
運転の第１のグループ１６１０および運転の第２のグループ１６３０は、例えば、運転が実行された日時、運転が実行された日、運転の最中の１または複数の気象条件、などに従って、リモートサーバによってクラスタ化され得る。したがって、ロードブック１６２０およびロードブック１６４０は、異なる日時、異なる日、および／または異なる気象条件での運転が互いに調整される従来の技法と比較して、向上した精度を有し得る。
【０３０３】
図１６にさらに図示されるように、ロードブック１６２０および１６４０は、グローバルな座標系に外挿され得、グローバル地図１６５０の一部として調整され得る。例えば、リモートサーバは、道路セグメントに沿った位置データを調整するように、１または複数の統計的技法を再び用い得る。ロードブック１６２０および１６４０の調整が、ローカルな座標系よりむしろグローバルな座標系において確実に実行されるように、リモートサーバは、運転の最中に取り込まれたイメージよりもむしろ、グローバルな座標系におけるＧＰＳデータまたは他のデータを使用し得る。ロードブック１６２０および１６４０は単独の運転より正確な入力を提供するので、グローバル地図１６５０は、運転の第１のグループ１６１０および運転の第２のグループ１６３０がグローバルな座標系で直接調整された場合より高い精度を有する。
【０３０４】
運転データと共に図示されるが、ロードブック１６２０および１６４０（グローバル地図１６５０も同様）は、道路セグメントに関連づけられ、イメージに示される、１または複数のランドマークをさらに含み得る。例えば、ランドマークは、ロードブック１６２０および１６４０が形成されるときに調整され得る（または、ロードブック１６２０および１６４０を形成する運転データを調整するように用いられさえもする）。同様に、ランドマークは、グローバル地図１６５０が形成されるときに調整され得る（または、ロードブック１６２０および１６４０をグローバルに調整するように用いられさえもする）。
【０３０５】
図１７は、開示される実施形態と合致する、複数の車両からの走行情報を調整するための例示的な処理１７００を表すフローチャートを提供する。プロセス１７００は、処理デバイス１１０などの、少なくとも１つの処理デバイスによって実行され得る。代替的に、プロセス１７００は、ホスト車両から離れたサーバの少なくとも１つの処理デバイスによって実行され得る。
【０３０６】
段階１７１０において、サーバは、複数の車両から走行情報を受信し得る。例えば、複数の車両からの走行情報が、共通道路セグメントに関連づけられ得る。いくつかの実施形態において、走行情報受信モジュール１５０２に関して上で説明されたように、走行情報は、グローバルポジショニングシステム（ＧＰＳ）情報、および／または、複数の車両に含まれるイメージセンサによって取り込まれたイメージに含まれる１または複数のランドマークを含み得る。例えば、１または複数のランドマークは、共通道路セグメントに沿った可視オブジェクトを含み得る。そのような複数の実施形態において、オブジェクトは、路面標示および道路標識のうち少なくとも１つを含み得る。
【０３０７】
いくつかの実施形態において、走行情報は、無線周波数、赤外線周波数、磁場、電場などの使用によって、コンピュータネットワーク（例えば、セルラー、インターネットなど）を介して受信され得る。走行情報は、データを送信および／または受信するための任意の知られた規格（例えば、Ｗｉ−Ｆｉ、ブルートゥース（登録商標）、Ｂｌｕｅｔｏｏｔｈ（登録商標）  スマート、８０２．１５．４、ＺｉｇＢｅｅ（登録商標）など）を用いて送信され得る。
【０３０８】
段階１７２０は、調整モジュール１５０４に対して上で説明されたように、サーバは、共通道路セグメントにローカルな座標系内で走行情報を調整し得る。例えば、ローカルな座標系は、複数の車両に含まれるイメージセンサによって取り込まれた複数のイメージに基づく座標系を含み得る。
【０３０９】
いくつかの実施形態において、走行情報を調整することは、１または複数のランドマークに基づき得る。例えば、上に説明されたように、サーバは、ＧＰＳデータの調整に基づいてランドマークを調節するよりむしろ、ランドマークの調整に基づいて、走行情報に含まれるＧＰＳデータを調節し得る。
【０３１０】
段階１７３０において、格納モジュール１５０６に対して上で説明されたように、サーバは、調整された走行情報を共通道路セグメントに関連づけて格納し得る。例えば、共通道路セグメントの識別子が、調整された走行情報と共に格納され、調整された走行情報をインデックスするように用いられるように、走行情報は、データベースに格納され得る。
【０３１１】
段階１７４０において、分配モジュール１５０８に対して上で説明されたように、サーバは、共通道路セグメントに沿って１または複数の自律走行車両を自律的に走行させる際の使用のために、調整された走行情報を１または複数の自律走行車両に分配し得る。例えば、１または複数の車両は走行情報を要求し得、サーバは要求に応答して、および、無線周波数、赤外線周波数、磁場、電場などの使用によって、コンピュータネットワーク（例えば、セルラー、インターネットなど）を介して、調整された走行情報を送信し得る。調整された走行情報は、データを送信および／または受信するための任意の知られた規格（例えば、Ｗｉ−Ｆｉ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｂｌｕｅｔｏｏｔｈ（登録商標）  スマート、８０２．１５．４、ＺｉｇＢｅｅ（登録商標）など）を用いて送信され得る。
【０３１２】
方法１７００は、付加的段階をさらに含み得る。例えば、いくつかの実施形態において、複数の車両が特定の期間の最中に走行情報を取り込んでいるとしてもよい。そのような複数の実施形態において、方法１７００はさらに、第２の複数の車両からの追加走行情報を受信する段階であって、第２の複数の車両からの追加走行情報は第２の期間の最中に取り込まれ、共通道路セグメントに関連づけられる、段階と、共通道路セグメントにローカルな座標系内で追加走行情報を調整する段階であって、ローカルな座標系は、第２の複数の車両に含まれるイメージセンサによって取り込まれる複数のイメージに基づく座標系である、段階と、調整された追加走行情報を共通道路セグメントと関連づけて格納する段階と、を含み得る。
【０３１３】
加えて、または代替的に、複数の車両は、ある回数の運転の間に走行情報を取り込んでいるとしてもよく、運転の回数は運転の回数の閾値を超えない。そのような複数の実施形態において、方法１７００はさらに、第２の複数の車両からの追加走行情報を受信する段階であって、第２の複数の車両からの追加走行情報は、追加の運転を介して取り込まれ、共通道路セグメントに関連づけられる、段階と、共通道路セグメントにローカルな座標系内で追加走行情報を調整する段階であって、ローカルな座標系は、第２の複数の車両に含まれるイメージセンサによって取り込まれる複数のイメージに基づく座標系である、段階と、調整された追加走行情報を共通道路セグメントに関連づけて格納する段階と、を含み得る。
【０３１４】
上で説明されたいかなる実施形態においても、方法１７００はさらに、調整された走行情報をグローバルな座標のセットに外挿する段階と、グローバルに調整された走行情報を共通道路セグメントに関連づけて格納する段階と、を含み得る。加えて、追加走行情報を含む実施形態において、方法１７００はさらに、調整された走行情報および調整された追加走行情報を、グローバルな座標のセットに外挿する段階と、グローバルに調整された走行情報および追加走行情報を共通道路セグメントに関連づけて格納する段階と、を含み得る。
【０３１５】
上記説明は、例示のために示された。それは、網羅的ではなく、正確な形状または開示された実施形態に限定されない。明細書および開示される実施形態の実務を考慮すれば、修正形態および適応形態が、当業者には明らかであろう。加えて、開示される実施形態の態様はメモリに格納されるものとして説明されるが、当業者は、この態様は、二次格納デバイス、例えば、ハードディスクまたはＣＤ−ＲＯＭ、または他の形のＲＡＭまたはＲＯＭ、ＵＳＢ媒体、ＤＶＤ、ブルーレイ、４ＫウルトラＨＤブルーレイ、または他の光学ドライブ媒体など、他の種類のコンピュータ可読媒体にもまた格納され得ることを理解するであろう。
【０３１６】
記載された説明に基づくコンピュータプログラム、および開示されている方法は、経験のある開発者の技能の範囲内である。様々なプログラムまたはプログラムモジュールが、当業者に知られる任意の技法を用いて生成され得、または、既存のソフトウェアと関連して設計され得る。例えば、プログラムセクションまたはプログラムモジュールは、．Ｎｅｔ  Ｆｒａｍｅｗｏｒｋ、．Ｎｅｔ  Ｃｏｍｐａｃｔ  Ｆｒａｍｅｗｏｒｋ（および、Ｖｉｓｕａｌ  Ｂａｓｉｃ、Ｃなど関連する言語）、Ｊａｖａ（登録商標）、Ｃ＋＋、Ｏｂｊｅｃｔｉｖｅ−Ｃ、ＨＴＭＬ、ＨＴＭＬ／ＡＪＡＸの組み合わせ、ＸＭＬ、または、Ｊａｖａ（登録商標）アプレットに含まれるＨＴＭＬにおいて、またはそれらによって、設計され得る。
【０３１７】
加えて、例示的な実施形態が本明細書に説明されてきたが、任意の、およびすべての実施形態の範囲は、本開示に基づいて当業者によって理解されるであろう等価要素、修正形態、省略、組み合わせ（例えば、様々な実施形態にわたる態様の）、適応、および／または改変を有し得る。特許請求の範囲の限定は、特許請求の範囲に使用された言語におおまかに基づいて解釈されるべきであり、本明細書に説明された例、または出願の審査中に説明された例に限定されない。例は、非排他的であるとして解釈されるべきである。さらに、開示されている方法の段階は、段階を並べ替える、および／または、段階を挿入または削除することを含む、任意の形態で修正され得る。したがって、明細書および例は、以下の特許請求の範囲に明示されている真の範囲および意図、およびそれらの等価物の完全な範囲によってのみ示されるものとみなされることが意図される。
【図１】
2020523660.tif 000055
【図２Ａ】
2020523660.tif 000056
【図２Ｂ】
2020523660.tif 000057
【図２Ｃ】
2020523660.tif 000058
【図２Ｄ】
2020523660.tif 000059
【図２Ｅ】
2020523660.tif 000060
【図２Ｆ】
2020523660.tif 000061
【図３Ａ】
2020523660.tif 000062
【図３Ｂ】
2020523660.tif 000063
【図３Ｃ】
2020523660.tif 000064
【図３Ｄ】
2020523660.tif 000065
【図４】
2020523660.tif 000066
【図５Ａ】
2020523660.tif 000067
【図５Ｂ】
2020523660.tif 000068
【図５Ｃ】
2020523660.tif 000069
【図５Ｄ】
2020523660.tif 000070
【図５Ｅ】
2020523660.tif 000071
【図５Ｆ】
2020523660.tif 000072
【図６】
2020523660.tif 000073
【図７】
2020523660.tif 000074
【図８Ａ】
2020523660.tif 000075
【図８Ｂ】
2020523660.tif 000076
【図９Ａ】
2020523660.tif 000077
【図９Ｂ】
2020523660.tif 000078
【図９Ｃ】
2020523660.tif 000079
【図９Ｄ】
2020523660.tif 000080
【図１０】
2020523660.tif 000081
【図１１】
2020523660.tif 000082
【図１２】
2020523660.tif 000083
【図１３Ａ】
2020523660.tif 000084
【図１３Ｂ】
2020523660.tif 000085
【図１３Ｃ】
2020523660.tif 000086
【図１３Ｄ】
2020523660.tif 000087
【図１４】
2020523660.tif 000088
【図１５】
2020523660.tif 000089
【図１６】
2020523660.tif 000090
【図１７】
2020523660.tif 000091
【国際調査報告】
2020523660.tif 000092
2020523660.tif 000093
2020523660.tif 000094
2020523660.tif 000095
2020523660.tif 000096