(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024045082
(43)【公開日】2024-04-02
(54)【発明の名称】高度スムージング
(51)【国際特許分類】
G08G 1/01 20060101AFI20240326BHJP
G01C 21/32 20060101ALI20240326BHJP
G09B 29/00 20060101ALI20240326BHJP
【FI】
G08G1/01 A
G01C21/32
G09B29/00 Z
【審査請求】未請求
【請求項の数】20
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023155492
(22)【出願日】2023-09-21
(31)【優先権主張番号】17/949673
(32)【優先日】2022-09-21
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】523360544
【氏名又は名称】エンバーク トラックス インコーポレーテッド
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】グレーディー ディー. ウィリアム
(72)【発明者】
【氏名】フィリップ ジェームス ホイスラー
【テーマコード(参考)】
2C032
2F129
5H181
【Fターム(参考)】
2C032HB22
2C032HC08
2F129AA03
2F129BB03
2F129BB33
2F129BB49
2F129EE02
2F129EE75
2F129EE78
2F129GG17
2F129GG18
2F129GG28
2F129HH18
2F129HH20
2F129HH25
5H181AA01
5H181BB13
5H181BB20
5H181CC03
5H181CC04
5H181CC12
5H181CC14
5H181FF04
5H181FF10
5H181FF22
5H181FF27
5H181LL09
5H181MC18
5H181MC19
(57)【要約】
【課題】自律車両の動作に使用される車線マップの高度マッピング誤差を正確かつ効率的に最小化する。
【解決手段】システム及び方法は、1つ以上の車線表現を含む道路のデジタル表現を受信することと、車線マップの車線境界制約を符号化する変数ノード及び制約ノードを含む因子グラフを定義することと、因子グラフを、車線マップの高度についての非線形の最適化問題に変換することと、最適化問題の解を生成することと、生成された解に基づいて、道路の最適化された高度を有する補正された車線マップを生成することと、を含む。
【選択図】
図12
【特許請求の範囲】
【請求項1】
車両コンピューティングシステムであって、
コンピュータ命令を記憶するメモリと、
前記メモリに通信可能に結合されて、前記命令を実行するプロセッサであって、
1つ以上の車線表現を含む道路のデジタル表現を受信することと、
車線マップの車線境界制約を符号化する変数ノード及び制約ノードを含む因子グラフを定義することと、
前記因子グラフを、前記車線マップの高度についての非線形の最適化問題に変換することと、
前記最適化問題の解を生成することと、
生成された前記解に基づいて、前記道路の最適化された高度を有する補正された車線マップを生成することと、を含む、システム。
【請求項2】
前記車線境界制約は、並進制約及び二項フェアネス制約を含む、請求項1に記載のシステム。
【請求項3】
車両から導出された、前記車線マップの高度コンポーネントを示す全地球測位システム(GPS)によって定義される追加の制約条件をさらに含む、請求項2に記載のシステム。
【請求項4】
前記二項平坦性制約は、隣接する2つの変数ノードに関連付けられ、前記2つの変数ノードの各々の相対的なロール、ピッチ、及びzコンポーネントをゼロに指定することによって、前記二項平坦性制約に関連付けられた前記2つの変数ノードが同じ平面を定義するように促す、請求項2に記載のシステム。
【請求項5】
変数ノードの並進コンポーネントが前記車線マップからのその初期値に等しいときに、前記並進制約が最小化される、請求項2に記載のシステム。
【請求項6】
前記因子グラフの前記変数ノードは、前記車線マップの前記車線境界に対するポーズ変数を表す、請求項1に記載のシステム。
【請求項7】
前記ポーズ変数は、6自由度を表すパラメータによって定義される、請求項6に記載のシステム。
【請求項8】
1つ以上の車線表現を含む道路のデジタル表現を受信することと、
車線マップの車線境界制約を符号化する変数ノード及び制約ノードを含む因子グラフを定義することと、
前記因子グラフを、前記車線マップの高度についての非線形の最適化問題に変換することと、
前記最適化問題の解を生成することと、
生成された前記解に基づいて、前記道路の最適化された高度を有する補正された車線マップを生成することと、を含む、方法。
【請求項9】
前記車線境界制約は、並進制約及び二項フェアネス制約を含む、請求項8に記載の方法。
【請求項10】
車両から導出された、前記車線マップの高度コンポーネントを示す全地球測位システム(GPS)によって定義される追加の制約条件をさらに含む、請求項9に記載の方法。
【請求項11】
前記二項平坦性制約は、隣接する2つの変数ノードに関連付けられ、前記2つの変数ノードの各々の相対的なロール、ピッチ、及びzコンポーネントをゼロに指定することによって、前記二項平坦性制約に関連付けられた前記2つの変数ノードが同じ平面を定義するように促す、請求項9に記載の方法。
【請求項12】
変数ノードの並進コンポーネントが前記車線マップからのその初期値に等しいときに、前記並進制約が最小化される、請求項9に記載の方法。
【請求項13】
前記因子グラフの前記変数ノードは、前記車線マップの前記車線境界に対するポーズ変数を表す、請求項8に記載の方法。
【請求項14】
前記ポーズ変数は、6自由度を表すパラメータによって定義される、請求項13に記載の方法。
【請求項15】
プロセッサ実行可能な命令が記憶された非一時的な媒体であって、
1つ以上の車線表現を含む道路のデジタル表現を受信する命令と、
前記車線マップの車線境界制約を符号化する変数ノード及び制約ノードを含む因子グラフを定義する命令と、
前記因子グラフを、前記車線マップの高度についての非線形の最適化問題に変換する命令と、
前記最適化問題の解を生成する命令と、
生成された前記解に基づいて、前記道路の最適化された高度を有する補正された車線マップを生成する命令と、を含む、媒体。
【請求項16】
前記車線境界制約は、並進制約及び二項フェアネス制約を含む、請求項15に記載の媒体。
【請求項17】
車両から導出された、前記車線マップの高度コンポーネントを示す全地球測位システム(GPS)によって定義される追加の制約条件をさらに含む、請求項16に記載の媒体。
【請求項18】
前記二項平坦性制約は、隣接する2つの変数ノードに関連付けられ、前記2つの変数ノードの各々の相対的なロール、ピッチ、及びzコンポーネントをゼロに指定することによって、前記二項平坦性制約に関連付けられた前記2つの変数ノードが同じ平面を定義するように促す、請求項16に記載の媒体。
【請求項19】
変数ノードの並進コンポーネントが前記車線マップからのその初期値に等しいときに、前記並進制約が最小化される、請求項16に記載の媒体。
【請求項20】
前記因子グラフの前記変数ノードは、前記車線マップの前記車線境界に対するポーズ変数を表すことを特徴とする請求項15に記載の媒体。
【発明の詳細な説明】
【技術分野】
【0001】
自律車両は、人間のドライバーの入力なしに1つ以上の必要な運転機能を実行することができる自動車であり、一般に、SAE InternationalのJ3016規格に一般に記載されているレベル2以上の能力を含み、特定の実施形態では、車両の位置、速度、運転特性、及び自律車両の動作中にそれが遭遇する様々な物体、状況、及び環境に応答して生成されるデータを含む、車両の状態に関連する様々なパラメータ値を示すセンサデータを生成するために共に機能し得るセンサ、デバイス、及びシステムを含む自動運転トラックを含む。
【背景技術】
【0002】
自律車両は、カメラ、ライダー、レーダ、慣性測定ユニット(IMU)などのセンサに依存して、ユーザの相互作用を必要とせずに、車両周辺の道路及び世界の他のものを理解し得る。例えば、車両がセンサの読み取り値(すなわち、センサデータ)を使用して道路を安全にナビゲートできるように、自律車両が動作する道路の正確なモデル化は重要である。道路の正確なモデル化又は推定は、知覚(コンピュータビジョン)、制御、マッピング、及びその他の機能にとって重要であり得る。適切なモデル化がなければ、自律車両は、その車線内にとどまることが困難になるとともに、ステアリング及びナビゲーション(すなわち、自律動作)などの追加的な問題を抱えることがある。
【0003】
いくつかの態様では、車線境界、中心線、及び他のトポロジー情報などの車線レベル情報を含む道路マップは、車両の様々な自律動作において依存され得る。場合によっては、道路マップは、マッピングされた道路の高度コンポーネントに関する急激な変化又は不連続を含むか、又は示すことがある。車線マップには含まれているが、そのような不連続(すなわち、誤差)は、不連続を示さない道路の実際の現実からの逸脱を表すことがある。これらのタイプの不整合は、高レベルの精度と最小限のマッピング誤差を必要とする自律車両の高精度で安全に重要な動作のコンテキストでは受け入れられない。
【0004】
したがって、自律車両の動作に使用される車線マップの高度マッピング誤差を正確かつ効率的に最小化するための、効率的でロバストなシステム及び方法に対する必要性が存在する。
【図面の簡単な説明】
【0005】
例示的な実施形態の特徴及び利点、並びにそれらが達成される方式は、添付の図面と併せて以下の詳細な説明を参照することによって、より容易に明らかになるであろう。
【0006】
【
図1】例示的な実施形態による、車両に配備され得る制御システムの例示的なブロック図である。
【0007】
【
図2A】例示的な実施形態による、セミトラックの外観図の説明図である。
【
図2B】例示的な実施形態による、セミトラックの外観図の説明図である。
【
図2C】例示的な実施形態による、セミトラックの外観図の説明図である。
【0008】
【
図3】例示的な実施形態による、自律車両が動作し得る道路の車線マップの説明図である。
【0009】
【
図4A】例示的な実施形態による、車線マップのためのマップされた高度における第1のタイプの不連続の説明図である。
【0010】
【
図4B】例示的な実施形態による、車線マップのためのマップされた高度における第2のタイプの不連続の説明図である。
【0011】
【
図5】例示的な実施形態による、高度不正確を含む例示的な車線マップの説明図である。
【0012】
【
図6】例示的な実施形態による、ポーズ変数のセットによって表される境界を有する
図5の例示的な車線マップの説明図である。
【0013】
【
図7】例示的な実施形態による、車線マップの車線境界の因子グラフによって表される
図5の例示的な車線マップの説明図である。
【0014】
【
図8】例示的な実施形態による、車線マップの車線境界の因子グラフにおける平坦性制約のいくつかの態様の例示的な表現である。
【0015】
【
図9】例示的な実施形態による、車線マップの車線境界の因子グラフにおける並進制約のいくつかの態様の説明図である。
【0016】
【
図10】車線マップの車線境界の因子グラフに対するGPSポーズ制約のいくつかの態様の説明図である。
【0017】
【
図11】例示的な実施形態による、プロセスの例示的なフロー図である。
【0018】
【
図12】例示的な実施形態による、高度スムージングプロセスの例示的なフロー図である。
【0019】
【
図13】例示的な実施形態による、コンピューティングシステムの例示的なブロック図である。
【0020】
図面及び詳細な説明を通して、特に説明しない限り、同じ図面参照番号は、同じ要素、特徴、及び構造を指すものと理解される。これらの要素の相対的な大きさ及び描写は、明瞭さ、図示、及び/又は便宜のために誇張されるか、又は調整され得る。
【発明を実施するための形態】
【0021】
以下の説明では、様々な例示的な実施形態の完全な理解を提供するために、特定の詳細が記載される。実施形態に対する様々な修正は、当業者には容易に明らかであり、本明細書で定義される一般的な原理は、本開示の精神及び範囲から逸脱することなく、他の実施形態及び用途に適用され得ると理解されたい。さらに、以下の説明では、説明を目的として多くの詳細が記載される。しかし、当業者は、これらの特定の詳細を使用せずに実施形態が実施され得ると理解すべきである。他の例では、不要な詳細で説明を不明瞭にしないように、周知の構造及びプロセスは示されないか、又は説明されない。したがって、本開示は、示された実施形態に限定されることを意図しないが、本明細書に開示された原理及び特徴と一致する最も広い範囲が与えられるべきである。
【0022】
便宜上かつ提示の分かりやすさのために、多くの用語が本明細書で使用される。例えば、「セミトラック」という用語は、例示的な実施形態のシステムが使用され得る車両を指すために使用される。「セミトラック」、「トラック」、「トラクター」、「車両」、及び「セミ」という用語は、本明細書では交換可能に使用され得る。さらに、本開示を読んだ後に当業者に明らかになるように、本発明の実施形態は、他のタイプの車両と併せて使用され得る。一般に、実施形態は、トレーラーを牽引するか、又は長距離にわたって貨物を運搬する任意の車両と併せて、望ましい結果を伴って使用され得る。
【0023】
図1は、実施形態の一例による、例えば、
図2A~
図2Cに示すセミトラック200などの自律車両(AV)に配備され、かつそれを含み得る制御システム100を示す。
図1を参照すると、制御システム100は、例えば、ゲートウェイ180を介して車両のコンポーネントを制御する制御動作を含む動作を実行するために、コンピュータシステム140に提供されるデータ及び情報を収集するセンサ110を含み得る。いくつかの実施形態によれば、ゲートウェイ180は、コンピュータシステム140が異なる製造業者からの異なるコンポーネントを制御することを可能にするように構成されている。
【0024】
コンピュータシステム140は、本明細書において他の箇所で説明されるような本発明の実施形態の特徴を実装する処理を含む処理を実行すると共に、制御システム100が配備される車両のシステムに関連付けられた1つ以上のアクチュエータ又は他のコントローラ(例えば、スロットル184、ステアリングシステム186、ブレーキ188及び/又は他のデバイス及びシステムの制御を可能にするアクチュエータ又はコントローラ)を制御するための制御信号を生成する際に使用するためにセンサ110からセンサデータを受信するために、1つ以上の中央処理ユニット(CPU)142を備えて構成され得る。一般に、制御システム100は、自律(又は半自律)動作モードで車両(例えば、セミトラック200)を動作させるように構成され得る。
【0025】
例えば、制御システム100は、セミトラック200の様々な位置に装着された1つ以上のカメラ112から画像を捕捉し、これらの捕捉された画像に処理(例えば、画像処理)を実行して、セミトラック200の経路に近接する又はその経路内の物体を識別するように動作され得る。いくつかの態様では、1つ以上のライダー114及びレーダ116センサが車両上に配置されて、セミトラック200の経路に近接する又はその経路内の物体の存在及び体積を感知又は検出し得る。他のセンサも、位置データなどの他の情報を捕捉するために、セミトラック200の様々な位置に配置又は装着され得る。例えば、センサは、1つ以上の衛星測位センサ、及び/又はGNSS/IMU 118のような慣性航法システムを含むことがある。全地球航法衛星システム(GNSS)は、GNSS受信機と呼ばれるデバイスに、地球上又は地球近傍のあらゆる気象条件における位置情報(経度、緯度、高度)及び時間情報を提供する衛星の宇宙ベースのシステムである。GPSは、世界で最も使用されているGNSSシステムであり、本明細書においてGNSSと交換可能に使用され得る。慣性計測ユニット(「IMU」)は、慣性航法システムである。一般に、慣性航法システム(「INS」)は、移動物体の方位、位置、速度、及び加速度を測定し、統合する。INSは測定データを統合し、GNSSは、INS方位計算の統合誤差に対する補正として使用される。本発明の特徴と併せて、任意の数の異なるタイプのGNSS/IMU118センサが使用され得る。
【0026】
センサ110の各々によって収集されたデータは、コンピュータシステム140によって処理されて、セミトラック200の動作を制御するために使用されることがある制御信号を生成してもよい。例えば、画像及び位置情報が処理されて、セミトラック200の経路の周囲又はその経路内の物体を識別又は検出してもよく、自律又は半自律方式でセミトラック200を安全に運転するために、制御信号が必要に応じて、コントローラ182を介してスロットル184、ステアリング186、及び/又はブレーキ188を調整するために送信されてもよい。
図1には、例示的なセンサ、アクチュエータ、及び他の車両システム及びデバイスが示されているが、当業者は、本開示を読んだ後、他のセンサ、アクチュエータ、及びシステムも本開示に合致するシステム100に含まれてもよいことを理解するであろう。例えば、いくつかの実施形態では、車両(例えば、セミトラック200)のトランスミッションの制御を可能にする機構を提供するアクチュエータも提供されてもよい。
【0027】
制御システム100は、1つ以上のソフトウェア、ファームウェア、及び制御アプリケーション(例えば、アイテム160~182)が実行されて、本明細書に記載される処理の少なくともいくつかを実行し得るコンピューティング環境を提供するように構成されるコンピュータシステム140(例えば、コンピュータサーバ)を含んでもよい。いくつかの実施形態では、コンピュータシステム140は、車両に配備される(例えば、
図2Cに示すように、セミトラックのスリーパ室212内に配置されたシステムラック240に配備される)コンポーネントを含む。コンピュータシステム140は、セミトラック200に対してローカルである、及び/又はセミトラックからリモートであることがある他のコンピュータシステム(図示せず)と通信してもよい(例えば、コンピュータシステム140は、無線通信ネットワーク接続を介して、1つ以上のリモート地上又はクラウドベースのコンピュータシステムと通信することがある)。
【0028】
本明細書に記載される様々な実施形態によれば、コンピュータシステム140は、サーバとして実装されてもよい。いくつかの実施形態では、コンピュータシステム140は、パーソナルコンピュータシステム、クラウドプラットフォーム、サーバコンピュータシステム、シンクライアント、シッククライアント、ハンドヘルド又はラップトップデバイス、タブレット、スマートフォン、データベース、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラマブル消費者電子機器、ネットワークPC、ミニコンピュータシステム、メインフレームコンピュータシステム、分散クラウドコンピューティング環境などであるが、これらに限定されない多数のコンピューティングシステム、環境、及び/又は構成のいずれかを使用して構成されてもよく、これらは、上記のシステム又はデバイスなどのいずれかを含んでもよい。
【0029】
コンピュータシステム140及び制御システム100によって、異なるソフトウェアアプリケーション又はコンポーネントが実行されることがある。例えば、能動学習コンポーネント160に示すように、1つ以上のカメラ112によって捕捉された画像及びライダー114によって取得された情報を処理するために能動学習機械処理を実行するアプリケーションが提供され得る。例えば、画像データは、捕捉された画像内の関心のある物体(例えば、他の車両、建設標識など)を識別する深層学習セグメンテーションモデル162を使用して処理され得る。本明細書のいくつかの態様において、深層学習セグメンテーションが、ライダースキャン内の車線ポイントを識別するために使用されてもよい。一例として、システムは、強度ベースのボクセルフィルタを使用して、ライダースキャン内の車線ポイントを識別してもよい。ライダーデータは、ライダーセンサによって位置が特定された関心のある物体を識別するために、画像データ上にバウンディングボックスを描画又は識別する機械学習アプリケーション164によって処理されてもよい。
【0030】
機械学習アプリケーションから出力された情報は、オブジェクト融合168及びビジョンマップ融合170ソフトウェアコンポーネントへの入力として提供されてもよく、これは、他の道路利用者の行動を予測し、リアルタイムでローカルな車両のポーズをグローバルマップジオメトリと融合させ、オンザフライのマップ補正を可能にする処理を実行してもよい。機械学習アプリケーションからの出力は、レーダ116からの情報及び地図位置特定166アプリケーションデータ(並びに位置決めデータ)で捕捉されてもよい。いくつかの態様では、これらのアプリケーションは、制御システム100が地図への依存度を減らし、絶えず変化する道路環境をより処理することができることを可能にする。さらに、任意のマップ誤差をオンザフライで補正することによって、制御システム100は、代替的なマップ中心アプローチと比較して、より安全で、よりスケーラブルで、より効率的な動作を促進してもよい。
【0031】
情報は、軌道計画174のコンポーネントに入力を提供する予測計画アプリケーション172に提供され、セミトラック200とトラック動作環境内の他の関連する車両との間の相互作用及び予測された相互作用に基づいて、軌道生成システム176によって軌道をリアルタイムで生成することを可能にする。いくつかの実施形態では、例えば、制御システム100は、60秒の計画期間を生成し、関連するアクター及び利用可能な軌道を分析する。複数の基準(安全性、快適性、及び経路の好みを含む)に最も適合する計画が選択されてもよく、計画を実装するために必要な任意の関連する制御入力が、セミトラック200の移動を制御するためにコントローラ182に提供される。
【0032】
いくつかの実施形態では、これらの開示されたアプリケーション又はコンポーネント(並びに本明細書に記載された他のコンポーネント又はフロー)は、特に明記されない限り、ハードウェア、プロセッサによって実行されるコンピュータプログラム、ファームウェア、又は上記の組み合わせで実装されてもよい。場合によっては、コンピュータプログラムは、記憶媒体又は記憶デバイスなどのコンピュータ可読媒体上で具現化されてもよい。例えば、コンピュータプログラム、コード、又は命令は、ランダムアクセスメモリ(RAM)、フラッシュメモリ、リードオンリーメモリ(ROM)、消去可能なプログラマブルリードオンリーメモリ(EPROM)、電気的消去可能なプログラマブルリードオンリーメモリ(EEPROM)、レジスタ、ハードディスク、リムーバブルディスク、コンパクトディスクリードオンリーメモリ(CD-ROM)、又は当技術分野で知られている他の任意の形態の非一時的な記憶媒体に存在してもよい。
【0033】
非一時的な記憶媒体は、プロセッサが記憶媒体から情報を読み出し、記憶媒体に情報を書き込んでもよいように、プロセッサに結合されてもよい。代替的に、記憶媒体は、プロセッサに統合されてもよい。プロセッサ及び記憶媒体は、特定用途向け集積回路(ASIC)に存在してもよい。代替的な実施形態では、プロセッサ及び記憶媒体は、別個のコンポーネントとして存在してもよい。例えば、
図1は、以下に開示されるコンポーネントのいずれかを表すか、又はそれに一体化され得る例示的なコンピュータシステム140を示す。したがって、
図1は、本明細書に開示されたシステム及び方法の実施形態の使用範囲又は機能性に関するいかなる制限も示唆することを意図しない。コンピュータシステム140は、本明細書に開示された機能性のいずれかを実装されること及び/又は実行することができる。
【0034】
コンピュータシステム140は、コンピュータシステムによって実行されるプログラムモジュールなどのコンピュータシステム実行可能な命令の一般的なコンテキストに説明されてもよい。一般的に、プログラムモジュールは、特定のタスクを実行するか、又は特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、ロジック、データ構造などを含んでもよい。コンピュータシステム140は、タスクが通信ネットワークを介してリンクされたリモート処理デバイスによって実行される分散クラウドコンピューティング環境で実装されてもよい。分散クラウドコンピューティング環境では、プログラムモジュールは、非一時的メモリ記憶デバイスを含むローカル及びリモートの両方のコンピュータシステム記憶媒体に位置してもよい。
【0035】
図1を参照すると、コンピュータシステム140は、汎用コンピューティングデバイスの形態で示されている。コンピュータシステム140のコンポーネントは、1つ以上のプロセッサ(例えば、CPU142及びGPU144)、通信インターフェース146、1つ以上の入出力インターフェース148、及び1つ以上の記憶デバイス150を含んでもよいが、これらに限定されない。図示されていないが、コンピュータシステム140は、システムメモリを含む様々なシステムコンポーネントをCPU142に結合するシステムバスも含んでもよい。いくつかの実施形態では、入出力(I/O)インターフェース148は、ネットワークインターフェースも含んでもよい。例えば、いくつかの実施形態では、制御システム100のコンポーネントの一部又は全部は、制御システム100が配備され、関連付けられている車両内部の様々なコンポーネントを相互接続するコントローラエリアネットワーク(CAN)バスなどを介して通信してもよい。
【0036】
いくつかの実施形態では、記憶デバイス150は、様々な種類及び形態の非一時的なコンピュータ可読媒体を含んでもよい。このような媒体は、コンピュータシステム/サーバによってアクセス可能な任意の利用可能な媒体であってもよく、揮発性媒体と不揮発性媒体の両方、リムーバブル媒体と非リムーバブル媒体を含んでもよい。システムメモリは、一実施形態では、本明細書における他の図のフロー図によって表されるプロセスを実装する。システムメモリは、ランダムアクセスメモリ(RAM)及び/又はキャッシュメモリなどの揮発性メモリの形態のコンピュータシステム可読媒体を含むことができる。別の例として、記憶デバイス150は、取り外し不可能な不揮発性磁気媒体(図示せず、典型的には「ハードドライブ」と呼ばれる)に対して読み書きすることができる。示されていないが、記憶デバイス150は、磁気、テープ、又は光ディスクドライブなどの1つ以上の取り外し可能な不揮発性ディスクドライブを含んでもよい。このような場合、各々は、1つ以上のデータ媒体インターフェースによってバスに接続され得る。記憶デバイス150は、アプリケーションの様々な実施形態の機能を実行するように構成されているプログラムモジュール、コード、及び/又は命令のセット(例えば、少なくとも1つ)を有する少なくとも1つのプログラム製品を含んでもよい。
【0037】
いくつかの実施形態では、コンピュータシステム140の1つ以上の態様、特徴、デバイス、コンポーネント、及びシステムは、インターネットを介して利用可能にされたクラウドサービスによってアクセスされ、提供され、又はサポートされてもよい。場合によっては、クラウドサービスは、サードパーティプロバイダ(例えば、Amazon Web Services、Microsoft Azure、Google Cloud Platformなど)によってホストされるインフラストラクチャ、プラットフォーム、又はソフトウェアを含むことがある。例えば、いくつかの実施形態では、コンピュータシステム140の記憶、処理、及び制御機能又はコンポーネントのうちの1つ以上の少なくとも一部が、インターネットを介してアクセスされるクラウドサービスによって提供されてもよい。いくつかの態様では、クラウドサービスは、IaaS(Infrastructure-as-a-Service)、PaaS(Platforms-as-a-Service)、SaaS(Software-as-a-Service)、FaaS(Function-as-a-Service)、及び他のクラウドコンピューティングサービスソリューションとして実装されることがある。
【0038】
図2A~
図2Cは、例示的な実施形態に関連付けられて、又はそれに従って使用され得るセミトラック200の外観図の例示的な描写である。セミトラック200は、例示の目的のためにのみ示されている。したがって、当業者は、本開示を読んだ後、実施形態が、多くの異なるタイプの車両と併せて使用されてもよく、
図2A~
図2Cに示されるタイプの車両に限定されないことを理解する。
図2A~
図2Cに示す例示的なセミトラック200は、キャブ202の前方にあるエンジン206、ステアリング車軸214、及び2つの駆動車軸216を含む、北米で通常のトラック構成の1つのスタイルである。トレーラー(図示せず)は、典型的には、フレーム218に設けられ、駆動車軸216に配置された第5の車輪トレーラー結合を介してセミトラック200に取り付けられてもよい。
図2A及び
図2Cに示すように、スリーパ室212がキャブ202の後方に配置されてもよい。
図2A~
図2Cは、セミトラック200の異なる位置に配置された複数のセンサをさらに示す。例えば、1つ以上のセンサを、センサラック220上のキャブ202の屋根に装着されてもよい。センサは、サイドミラー210、及びセミトラックの他の位置にも装着されてもよい。センサは、バンパー204上、並びにキャブ202の側面及び他の位置に装着されてもよい。例えば、
図2Aでは、後向きレーダ236がキャブ202の側面に取り付けられているように示されている。実施形態は、トラック及び他の車両の他の構成(例えば、キャブオーバー又はキャブフォワード構成などを有するセミトラックなど)と共に使用されてもよい。一般的に、本開示の実施形態を限定することなく、本発明の特徴は、長期的なセミトラック経路のような長距離にわたって貨物を運搬する車両における所望の結果を伴って使用されてもよい。
【0039】
図2Bは、セミトラック200の正面図であり、多数のセンサ及びセンサ位置を示す。センサラック220は、長距離ライダー222、長距離カメラ224、GPSアンテナ234、及び中距離前面カメラ226を含むいくつかのセンサをフロントガラス208の上に固定及び配置してもよい。サイドミラー210は、後向きカメラ228及び中距離ライダー230のための装着位置を提供してもよい。フロントレーダ232は、バンパー204上に装着されてもよい。他のセンサ(示されたもの及び示されていないものを含む)は、セミトラック200の他の位置に装着され、又は設置されてもよい。したがって、
図2A~
図2Cに示された位置及び装着は、例示的な目的のためだけである。
【0040】
ここで、
図2Cを参照すると、キャブ202の内部及びスリーパ室212のいくつかの態様を示すセミトラック200の部分図が示されている。いくつかの実施形態では、
図1の制御システム100の一部分は、スリーパ室212内のシステムラック240内に配備されることがあり、メンテナンス及び動作のために制御システム100のコンポーネントに容易なアクセスを可能にする。
【0041】
本開示の特定の態様は、AV(例えば、
図1及び
図2A~
図2Cに開示されたものと同様のトラック)が横断するマッピングされた道路の高度における不整合を除去するか、又はそうでなければスムージングするためのフレームワークを提供する方法及びシステムに関する。本開示の態様は、一般的に、マッピングされた高度の不連続をスムージングし、高度不連続のない補正されたマップを正確かつ効率的に生成するためのフレームワークを提供する。
【0042】
いくつかの態様では、AVのためのマッピング及び位置特定システムは、車線マップを使用して車両の位置を特定し、高速道路がどのように見えるかについての事前マップを作成する。次いで、事前マップは、マップをAVのカメラ及びライダーによる車線ラインの観測と相関させるマップ融合システムによって修正されてもよい。少なくともほぼ正確な高度データを有することは、可能な限り最も正確な推定値を作成するマッピング及び位置特定システムをサポートする。
【0043】
一般的に、車線マップは、車線の左右の境界がどこに位置するかを示す車線境界、車線境界の平均の位置を示す車線中心線などの幾何学的コンポーネントと、車線が互いにどのように関連しているか(例えば、車線が合流するとき、車線が分かれるときなど)を説明することがあるトポロジーコンポーネントとからなる。いくつかの実施形態では、本開示は、主に、車線境界及び中心線のジオメトリに関係する。
【0044】
図3は、例示的な実施形態による、自律車両が動作し得る道路の車線マップの説明図である。道路300は、交通のための複数の車線を含み、各々車線境界とそれらの間の中心線によって定義される。例えば、中心線315(左から右に走行している車両345に対して320で分かれるように示されている)を伴う車線境界305及び310は、1つの交通車線を定義し、中心線340を伴う車線境界330及び335は、車両325が走行する別の車線を定義し、中心線360(右から左に移動する車両に対して365で合流するように示されている)を伴う車線境界350及び355は、さらに別の交通車線を定義する。
【0045】
場合によっては、車線マップ(自己生成、編集、又はマッピングサービス、プラットフォーム、ベンダー、若しくはその他のソースによって提供されたもの)は、通常、緯度、経度、及び高度の観点から車線の特徴を指定し、数メートル以内の精度であることがある。自律運転システムは、典型的なマップ誤差(例えば、±50センチメートル)を克服するために、車線マップを調整することができてもよい。いくつかの態様では、AVシステムは、車線マップの高度情報を使用して、道路及びそれに伴うAVの相対位置に関する正確な推定値を作成するとともに、道路が互いに交差又は下にあるオーバーパス、インターチェンジなどの道路の特徴を適切に処理してもよい。
【0046】
最初に自己生成され、編集され、又はマッピングサービス、プラットフォーム、ベンダー、若しくは他のソースによって提供される車線マップは、一般的に、車線マップによって表されるほとんどの場所に対して高品質の高度データを含むことがあるが、通常又は予想よりも著しく高い高度誤差を有する車線マップの領域が存在することがある。著しく高い高度誤差のこれらの領域は、通常、「キンク」不連続又は「ステップ」不連続として現れることがある。これらの(及び他のタイプの)高度不連続は、例えば、地図編集誤差、品質保証の見落とし、貧弱なデータ収集などを含む多くの理由で現れることがある。
【0047】
図4Aは、例示的な実施形態による、道路の車線マップにおけるキンクタイプの不連続の説明図である。示されるように、
図4Aは、高度レベルが第1のレベルからより高い第2のレベルへと急激に増加し、次いで、第1のレベルに実質的に戻る410で比較的鋭い隆起又はスパイク(すなわち、キンク)不連続を有する道路405の例示的な表現を含む。
図4Bは、例示的な実施形態による、道路のためのマップされた高度におけるステップタイプの不連続の説明図である。分かるように、
図4Bは、高度レベルが急に高いレベルに上昇する420で階段状の不連続を有する道路415の例示的な表現を含む。場合によっては、ステップ不連続は、高度レベルが第1のレベルからより低いレベルへと急激に減少する車線マップ(図示せず)によって呈されてもよい。
【0048】
図4A及び
図4Bに示された不連続は、初期マップが修正なしにAV動作で使用されること(例えば、マップ融合システム並びに他のシステム及びプロセスによって使用されること)を禁止してもよい。この例示的な不連続は、車線マップに存在することがある誤差のタイプに関する基本的な仮定に違反するため、典型的なマップ誤差よりも著しく悪い。例えば、例示的な車線マップでは、横方向の位置で約20センチメートル、高度で約1メートルの変動が予想されることがある。しかし、道路の中央における高度のキンク不連続(すなわち、鋭い隆起)又はステップ(すなわち、崖)不連続は、高度が道路に対して予想されるよりも大きな速度で変化するため、いくつかのAVシステムでは予想されないか、又は許容されない。
【0049】
いくつかの実施形態では、本明細書に開示されたシステム及び方法は、初期車線マップに含まれる高度不連続を最小化、低減、又は他の方法で「スムージング」し、高度不連続を最小化、低減、又は他の方法でスムージングした補正されたか、又は修正された車線マップを生成するメカニズムを提供する。
【0050】
いくつかの実施形態では、車線マップにおける高度不連続の問題は、車線マップの現実的な高度の特性に関連付けられた制約を符号化し、因子グラフを使用して最適化問題(場合によっては非常に大きい)を解いて、補正された車線マップを生成する、因子グラフベースのアプローチを使用して対処されてもよく、高度不連続が、最小化、低減、又は他の方法でスムージングされる。本明細書で使用される場合、因子グラフは、2つのタイプのノードからなるタイプのグラフである。2つのタイプのノードは、推定される量を表す変数ノードと、1つ以上の変数ノードに対する制約を表す因子ノードと、を含む。いくつかの態様では、高度不整合の問題は、非線形の最適化問題に変換され得る因子グラフとしてここでは定式化される。
【0051】
図5は、例示的な実施形態による、高度不正確又は不連続505を含む例示的な車線マップの説明図である。
図5の例では、車線マップ500は、車線境界510、515、520の表現と、高度キンクと呼ばれることがある高度不正確505と、を含む。
【0052】
車線マップ500の不連続をスムージングする目的で、いくつかの実施形態では、
図6に示すように、例示的な車線マップについての因子グラフが生成される。
図5の例示的な車線マップは、
図6に示され、車線境界は、車線マップの車線境界(例えば、510、515、及び520)に沿ったポーズ変数ノード(例えば、605、610、615、620、及び625)のセットによって表される。いくつかの態様では、ポーズ変数ノードは、車線境界の離散化を表し、ポーズ変数ノード(すなわち、因子グラフ表現の変数ノード)は、境界に沿って置かれる。いくつかの実施形態では、各ポーズ変数ノードは、位置コンポーネント(すなわち、x、y、及びzコンポーネント)並びにロール、ピッチ、及びヨーコンポーネントを含む、地心座標における6自由度(6DOF)によって定義される。例示的なポーズ変数ノード610を参照して分かるように、次のポーズ変数ノード(すなわち、ポーズ変数ノード615)は、ポーズ変数ノード610のx軸上にある。すなわち、ポーズ変数ノード(例えば、ポーズ変数ノード610)は、境界(例えば、車線境界515)上に置かれ、境界に沿って次のポーズ変数ノード(例えば、ノード615)に向けられる。
【0053】
車線マップにおける高度不連続の問題に関連して、境界ポーズ変数ノードは最適化される変数である。例えば、
図6を参照すると、複数のポーズ変数ノードが各車線境界に沿って示されており、複数の車線境界(例えば、車線境界510、515、及び520)が存在する。このように、本開示のいくつかの実施形態では、ポーズ変数ノードの全てを含むセットが最適化されてもよい。
【0054】
車線マップにおける高度不連続の問題のコンテキストをさらに参照すると、いくつかの実施形態では、ポーズ変数の位置を制約又は制限する3つの異なるタイプの制約が存在してもよい。因子グラフのアプローチを続けると、3つのタイプの制約は、因子ノードの形態で表されてもよい。また、制約は、車線マップの以前の高度を保持しながら、車線マップを平坦化する制約によって導入される誤差を最小化するように定式化されてもよい。
【0055】
例示的な実施形態によれば、3つの因子ノードは、(1)マップ内の「ローカル平坦性」特性を強制する隣接するノード間の二項平坦性制約(binary flatness constraints)、(2)ポーズの並進コンポーネントに事前(prior)を置く単項(すなわち、単一コンポーネント)並進事前制約、及び(3)補正された高度の精度を改善するために任意に追加され得るGPS因子を含むことができる。
【0056】
本明細書において、二項平坦性制約は、隣接するポーズ変数ノードのペア間に置かれる。場合によっては、各ポーズ変数ノードは、通常、
図7に示すように、二項平坦性制約のグリッド状レイアウトをもたらす4つの隣接するノード(すなわち、対象ポーズ変数ノードの前方、後方、左、及び右の位置にある1つの隣接するポーズ変数ノード)を有してもよい。いくつかの態様では、
図7は、境界に沿った円として表されるポーズ変数ノードを含む車線境界の因子グラフとして表される
図5の例示的な車線マップの説明図を含む。
図7では、ポーズ変数ノードのペア間の各正方形は、二項平坦性制約を表し、制約(すなわち、正方形)をポーズ変数ノード(すなわち、円)に接続する線は、どのポーズ変数が各制約に関連付けられているかを示す。平坦性制約(例えば、制約705)は、相対的なロール、ピッチ、及びzコンポーネントを全てゼロにすることを強制することによって、平坦性制約に関連付けられた2つのノード(例えば、ポーズ変数ノード610及び615)が同じ平面を定義することを促す。本明細書で使用される場合、相対ロール、ピッチ、及びzは、隣接するノード間のロール、ピッチ、及びzの差を指す。したがって、ノード間の相対的なロール、ピッチ、及びzがゼロであるときに、これら2つのノードのロール、ピッチ、及びzの値に差はない。したがって、これら2つのノードは同じ平面上に存在し、表示される境界は平坦である。
【0057】
図8は、例示的な実施形態による、
図7の因子グラフにおける二項平坦性制約のいくつかの態様の例示的な表現である。
図8は、
図7のボックス710に示された2つのポーズ変数ノードに対して平坦性制約がどのように機能するかの態様を示している。この例示的な場合、制約は、第1のポーズ変数ノード805によって定義されるxy平面の周りにある第2のポーズ変数ノード810によるペナルティ815を誘発し、2つのノード間の相対ピッチ820がゼロでないため、追加のペナルティ820が導入される。
【0058】
いくつかの実施形態では、
図8に示されている誤差は、2つのノード805、810を移動させて、それらが同じ平面内にあるようにすることによって除去されてもよい。ノードは同じ平面上にあることがあるが、それらは集合的に傾斜している(すなわち、傾斜とともに傾斜している)ことがあることに留意する。いくつかの実施形態では、この特徴は、2つのポーズの間の差をコンピューティングする関数d(P1, P2)=(dx, dy, dz, d_roll, d_pitch, d_yaw)を定義し、d(P1, P2)=(mx, my, 0, 0, 0, m_yaw)のときに最小化される目的関数を定義することによって数学的に表現されてもよく、mx、my、及びm_yawは、初期マップから決定され、他のコンポーネントは、ローカル平坦性特性を実施するために0である。
【0059】
いくつかの実施形態では、車線マップに他の制約が存在しない場合、二項平坦性制約は、車線マップ全体を単一の平面上に置くことを強制する。しかし、ほとんどの道路は、道路に沿った様々な点で高度にいくらかのばらつきを有し、単一の平面上に車線地図全体を有することは、典型的には、非常に不正確なグローバル高度値をもたらすため、同じ平面上に車線地図全体を有することは、一般に望ましくない。マップ全体を同じ平面上に存在させる平坦性制約の傾向を緩和又は軽減するために、本明細書におけるいくつかの実施形態は、元の(すなわち、初期の)マップの並進コンポーネントと高度最適化マップとの間の差にペナルティを与えるように機能する、上述の並進制約(translational constraint)を導入する。いくつかの態様では、並進制約は、境界節点の位置が最初の位置にできるだけ近づくように動作することがある。いくつかの実施形態では、この態様は、ポーズ変数の並進コンポーネントが初期車線マップからのその初期値に等しいときに最小化される目的関数を定義することによって数学的に表されてもよく、すなわち、(x,y,z)=(mx,my,mz)である。これらは、各ポーズ変数に置かれる単項制約であることに留意する。
【0060】
図9は、
図7の因子グラフの例示的な表現であり、例示的な実施形態による、並進事前制約の態様を含むようにさらに更新されている。各々がポーズ変数ノードに関連付けられている並進事前制約の例が、例えば、例示的な並進制約905、910、915、及び920によって
図9に示されている。
【0061】
いくつかの点で、単項並進制約と二項適合性制約の組み合わせは、車線マップに何らかの誤差を導入することがある。並進制約と二項適合性制約の組み合わせは、一般的に、高度の不連続を除去又は低減するために非常にうまく動作することがあるが、この組み合わせは、車線マップの領域をあまりにもスムーズにすることによって、いくらかの誤差を導入することがある。並進制約と二項適合性制約の適用によって補正された車線マップは、一般的に、高度不連続を有する初期マップよりも優れているが、誤差(もしあれば)は望ましくない。
【0062】
いくつかの実施形態では、GPSデータに関連付けられた第3のタイプの制約(本明細書ではGPSデータ制約とも呼ばれる)が、車線マップの因子グラフ表現に追加されてもよい。いくつかの態様では、GPSデータ制約は、GPSデータから取得される因子を追加することによって、本明細書におけるシステム又はプロセスの精度を改善することがある。GPSデータ制約は、並進制約と二項適合性制約の組み合わせに起因する誤差(もしあれば)を補償するように動作してもよい。いくつかの実施形態では、GPSデータ制約の使用は任意選択であることがある。GPSデータが取得されるか、又は他の方法でアクセス可能な場合(例えば、GPS装備車両が、本明細書では車線マップによって表される道路の区間を走行し、道路のその区間について収集されたGPSデータの記録がアクセス可能である場合)、GPSデータ制約が車線マップの因子グラフ表現に追加されて、道路表面が、収集されたGPS情報の記録に示されたポーズに一致することを指定してもよい。
【0063】
図10は、本明細書のいくつかの実施形態による、車線マップの境界の因子グラフにおけるGPSポーズ制約のいくつかの態様の例示的な表現である。いくつかの態様では、記録されたGPSデータは、6自由度データの一部として、位置データ(例えば、経度及び経度座標)を含んでもよい。
図10の例では、GPSデータから取得されたか、GPSデータから導出されたか、又は他の方法によってGPSデータによって示されたポーズ1005は、境界ノード1015及び1020を定義したGPSデータを含むローカルxy平面1010を定義する。したがって、GPSデータによって示されるように、平面1010は道路が実際に存在する平面であるため、道路は平面1010上にあるべきである。
図10は、さらに、それらの境界ノードを含むxy平面1035に基づいて決定される境界ノード1025及び1030を示す。ここで重要な点は、ポーズ1005がx-y平面1010を定義し、道路表面1040がその平面上にあるべきであるということである(これは、GPSデータによって示されるように、道路が実際に存在する実際の平面であるためである)。GPSデータ制約は、並進制約と二項適合性制約の組み合わせに基づいて生成された(xy平面1035内の)ポーズに対して、GPSポーズデータ1005がどの程度平面から外れているかについてペナルティを与える。GPSデータ制約では、GPS x-y平面1010と計算されたx-y平面1035がどの程度平面から外れているかについてペナルティが生じ、GPSデータ制約は、例えば破線1045によって
図10に示されるように、これら2つの平面を整列させるように機能する。
【0064】
図11は、例示的な実施形態による、プロセスの例示的なフロー図である。動作1105では、道路又は少なくとも道路のセグメントの車線マップが、車線マップソース(例えば、車線マップベンダ、サービス、データ・ストア、PaaS(platform as a service)プロバイダ、データ・リポジトリ、データ記憶デバイスなど)によって提供されるか、又は車線マップソースからアクセスされて、車線マップが高度不連続を含むかどうかを決定するために処理される。高度不連続は、キンク不連続、ステップ不連続、又は制限のない任意の他のタイプの高度の不連続のうちの1つ以上を含むことがある。
【0065】
いくつかの実施形態では、プロセス、システム、サービス、アプリケーション、又はデバイスは、高度不連続を識別するために、動作1105のいくつかの態様を実装することがある。場合によっては、高度不連続を識別するプロセスは、自動的に実行されてもよい。例えば、高度不連続を識別するプロセス(すなわち、動作1105)は、高度スムージングプロセス(動作1120)の後に実行されて、高度の不連続の全てが車線マップから除去されたことを確保することがある。
【0066】
いくつかの実施形態では、本明細書における高度不連続を識別するプロセスは、車線マップの異なるセグメントのピッチを調べて、車線マップの分析されたセグメントが高度不連続を含むかどうかを決定することがある。場合によっては、車線マップの車線境界が複数のセグメントに離散化され得、連続するセグメント間のピッチが分析される。ピッチがある特定の公差又はしきい値の外側にある場合、ある種の高度不連続がセグメントの接合部に対して示されてもよい。一例では、車線マップセグメント間の相対ピッチは、ほぼ同じ(例えば、±10度)であるべきであり、より大きな値は、高度不連続を示し得る。
【0067】
動作1110で、動作1105で初期車線マップ処理において高度不連続が検出されなかったと決定された場合、プロセス1100は、動作1115に進み、車線マップは、1つ以上のAV動作で使用するのに十分に正確であってもよい。
【0068】
この場合、動作1105で初期車線マップ処理において高度不連続が検出された決定され、次いで、プロセス1100は、動作1110から動作1120に進み、本明細書に開示されているような高度スムージングプロセス(例えば、因子グラフベースのアプローチ)が実行されてもよい。動作1120での高度スムージング処理の完了時に、プロセスは、動作1105に戻って、車線マップに任意の不連続が残っているかどうかを決定してもよい。プロセス1100の動作は、車線マップに高度不連続が残らなくなるまで、指定されるか、又は動的に決定された最大回数にわたって、補正された車線マップが1つ以上のAV動作(1つ以上の基準などに基づく)で使用するのに十分に正確であるとみなされるまで、及び他の方法で指定されて、反復してもよい。
【0069】
図12は、例示的な実施形態による、高度スムージングプロセスの例示的なフロー図である。場合によっては、プロセス1200の特定の態様は、本開示の別の箇所で詳細に議論され、
図12の以下の議論では本明細書では繰り返されないことがある。
【0070】
道路の車線マップ表現は、動作1205で受信される。車線マップの特定のソースは異なることがあり、任意の特定のサービス、プロバイダ、又はベンダーに制限されない。いくつかの態様では、動作1205で受信される車線マップは、本明細書に開示された車線マップと類似し、他の方法で本明細書に開示されたプロセス動作と互換性があることがある。
【0071】
動作1210では、受信した車線マップの車線境界に対して因子グラフが定義されてもよい。動作1210の因子グラフは、例えば、車線の本明細書に開示された平坦性制約、並進制約、及びGPSデータ制約を含む車線境界制約を符号化してもよい。いくつかの実施形態では、車線境界制約は、本明細書で明示的に開示された車線境界制約と比較して、追加の、代替の、より少ない、及び代わりの車線境界制約を含むことがある。
【0072】
動作1215に進み、動作1210の因子グラフは、車線マップの高度に関する非線形の最適化問題に変換されてもよい。非線形の最適化問題は、因子グラフによって表される車線境界制約を組み込むように定式化されてもよい。
【0073】
動作1220では、動作1215の最適化問題の解が生成されてもよい。いくつかの態様では、非線形最適化問題の解決は、従来の技術及びプロセスを使用して達成されることがある。プロセス1200は、さらに、動作1225に進み、最適化問題の生成された解に基づいて、道路の最適化された高度を含む補正された車線マップが生成される。
【0074】
図13は、例示的な実施形態による、本明細書に開示されたアーキテクチャ又はフレームワーク(例えば、
図1)及びプロセス(例えば、
図9)のいずれかで使用され得るコンピューティングシステム1300を示す。
図13は、いくつかの実施形態による、高度スムージングプロセッサを具現化するコンピューティングデバイス1300のブロック図である。コンピューティングシステム1300は、汎用コンピューティング装置を含んでもよく、プログラムコードを実行して、本明細書に記載された機能及びプロセス(例えば、
図11の動作1120、
図12のプロセス1200など)のいずれかを実行してもよい。コンピューティングシステム1300は、いくつかの実施形態による、他の示さない要素を含んでもよい。
【0075】
コンピューティングシステム1300は、通信デバイス1320、データ記憶デバイス1330、1つ以上の入力デバイス1340、1つ以上の出力デバイス1350、及びメモリ1360に動作可能に結合された処理ユニット1310を含む。通信デバイス1320は、外部ネットワーク、データ記憶デバイス、又は他のデータソースなどの外部デバイスとの通信を容易にしてもよい。入力デバイス1340は、例えば、キーボード、キーパッド、マウス又は他のポインティングデバイス、マイクロホン、ノブ又はスイッチ、赤外線(IR)ポート、ドッキングステーション、及び/又はタッチスクリーンを含んでもよい。入力デバイス1340は、例えば、情報(例えば、AV動作関連データの特定のセットに対する手動要求)をコンピューティングシステム1300に入力するために使用されてもよい。出力デバイス1350は、例えば、ディスプレイ(例えば、ディスプレイスクリーン)、スピーカ、及び/又はプリンタを含んでもよい。
【0076】
データ記憶デバイス1330は、磁気記憶デバイス(例えば、磁気テープ、ハードディスクドライブ、及びフラッシュメモリ)、光学記憶デバイス、リードオンリーメモリ(ROM)デバイスなどの組み合わせを含む任意の適切な永続的記憶デバイスを含んでもよく、一方、メモリ1360は、ランダムアクセスメモリ(RAM)を含んでもよい。
【0077】
アプリケーションサーバ1332は、各々、プロセッサ1310によって実行されて、コンピューティングシステム1300に、本明細書に記載されたプロセスのうちの任意の1つ以上を実行させるプログラムコードを含み得る。実施形態は、単一のコンピューティングデバイスによるこれらのプロセスの実行に限定されない。データ記憶デバイス1330はまた、追加の機能を提供するための、及び/又は、デバイスドライバ、オペレーティングシステムファイルなどのコンピューティングシステム1300の動作に必要なデータ及び他のプログラムコードを記憶してもよい。高度スムージングエンジン1334は、入力(初期)車線マップデータに応答して、その中に高度不連続がない補正された車線マップを決定する、プロセッサ1310によって実行されるプログラムコードを含んでもよい。高度スムージングエンジン1334によって生成された結果は、データベース管理システムノード1336に記憶されてもよい。
【0078】
前述の明細書に基づいて理解されるように、本開示の上述の例は、コンピュータソフトウェア、ファームウェア、ハードウェア、又はそれらの任意の組み合わせ若しくはサブセットを含む、コンピュータプログラミング又はエンジニアリング技術を使用して実装されてもよい。コンピュータ可読コードを有する、そのような結果として生じるプログラムは、1つ以上の非一時的なコンピュータ可読媒体内で具現化又は提供されてもよく、それにより、本開示の議論された例に従って、コンピュータプログラム製品、すなわち、製造物品を作製する。例えば、非一時的なコンピュータ可読媒体は、固定ドライブ、ディスケット、光ディスク、磁気テープ、フラッシュメモリ、外部ドライブ、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)などの半導体メモリ、及び/又はインターネット、クラウドストレージ、モノのインターネット(IoT)、又は他の通信ネットワーク又はリンクなどの任意の他の非一時的な送信及び/又は受信媒体であってもよいが、これらに限定されない。コンピュータコードを含む製造物品は、1つの媒体から直接コードを実行することによって、1つの媒体から別の媒体にコードをコピーすることによって、又はネットワークを介してコードを送信することによって、作製及び/又は使用されてもよい。
【0079】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、「app」、又はコードとも呼ばれる)は、プログラマブルプロセッサのための機械命令を含んでもよく、高水準手続き型及び/又はオブジェクト指向型プログラミング言語、及び/又はアセンブリ/機械語で実装されてもよい。本明細書で使用される場合、「機械可読媒体」及び「コンピュータ可読媒体」という用語は、機械命令及び/又はデータをプログラマブルプロセッサに提供するために使用される、任意のコンピュータプログラム製品、装置、クラウドストレージ、モノのインターネット、及び/又はデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指し、機械命令を機械可読信号として受信する機械可読媒体を含む。しかし、「機械可読媒体」及び「コンピュータ可読媒体」は、一時的な信号を含まない。「機械可読信号」という用語は、機械命令及び/又は任意の他の種類のデータをプログラマブルプロセッサに提供するために使用され得る任意の信号を指す。
【0080】
本明細書におけるプロセスの上記の説明及び説明は、プロセスステップを実行するための固定された順序を意味すると考えるべきではない。むしろ、プロセスステップは、少なくともいくつかのステップの同時実行を含め、実施可能な任意の順序で実行されてもよい。本開示は、特定の例に関連して説明されているが、当業者には明らかな様々な変更、置換、及び改変が、添付の特許請求の範囲に記載されている本開示の精神及び範囲から逸脱することなく、開示された実施形態に対してなされ得ることが理解されるべきである。
【外国語明細書】