アポロの車線変更戦略とその実際の応用に関する詳細な分析
1. はじめに
1.1. 車線変更の機能
車線変更の機能は、簡単に言えば、基準線から基準線の 1 つを選択することです。選択する行。Planning の後続のモジュールで使用する行。
#Apollo が提供するオープンソースの車線変更コードは大幅に削除されていることに注意してください。シンプルなフレームのみ。アクティブな車線変更、(障害物による) パッシブな車線変更、比較的完全なステート マシン、車線変更ウィンドウ、ギャップ選択などの多くの機能が欠落しています。この技術記事では、既存のフレームワークに関する内容のみを示します。その他の車線変更機能の内容については、続報を楽しみにしていてください。
1.2. 車線変更ステートマシン
Apollo の現在の車線変更ステート マシンは次のとおりです。以下:
ステート マシンについては、注目に値する点がいくつかあります:
- ここでの IN_CHANGE_LANE には、車線変更の実行と車線変更の両方が含まれます通常の状況では区別する必要があります。Apollo は、最初に基準線を切り替えてから車線変更アクションを実行する方法を採用していますが、一部の友人は、最初に車線変更動作を行ってから基準線を切り替える方法を採用します (利点は、基準線が切り替わるフレーム内で、自車の横方向の距離が0に近いことです。
- 現状のコードでは、車線変更に失敗するタイミングが反映されていません。また、関連するコードの削除が原因であると考える理由もあります。
- 完全な車線変更ステータスには、少なくとも、車線変更の準備、車線変更の実行、車線変更の維持、車線変更のキャンセル、車線変更の完了、および車線変更の完了が含まれている必要があります。その他のステータス
#2. コード分析
2.1. 全体的なプロセス
関連するコードが保存されているパス場所は次のとおりです: modules/planning/tasks/deciders/lane_change_decider/http://lane_change_decider.cc
-
reference_line_info
が空の場合に例外を処理します。 - 強制車線変更が設定されている場合
reckless_change_lane
がtrue
の場合は、直接Update Reference Line. - 前のフレームの車線変更ステータスを取得します
prev_status
。最初にプログラムに入ったとき、prev_status
(!prev_status-> has_status()
) の場合、この時点でそのまま車線変更が完了したとみなされます。 , has_change_lane - は
false
) であり、車両がパトロール状態にあることを示します。車両が現在位置する車線には独自の車線があり、その周囲に可変車線はありません。スイッチ レーン チェンジ ステート マシン
- 前のフレームはレーン チェンジ ステートでした ChangeLaneStatus::IN_CHANGE_LANE
- 前のフレームは車線にありました失敗した状態の変更
ChangeLaneStatus::CHANGE_LANE_FAILED
: 車線変更が失敗した場合、状態は一定期間フリーズされ、その後、次の車線変更に備えるために車線変更状態に切り替わります。 - 前のフレームは車線変更完了状態でした
ChangeLaneStatus::CHANGE_LANE_FINISHED
: 車線変更が成功した後も一定時間フリーズし、その後車線変更状態に切り替わります。次の車線変更の準備をします。ここで時間を固定する目的は、頻繁な車線変更を避けることです。 -
2.2. 安全チェック
IsClearToChangeLane 車線変更が安全かどうかを判定します。
この安全判定方法では、仮想障害物(Virtual Obstacles)と静的障害物(Static Obstacles)は考慮しません。
-
- 車両が車線変更中の場合は、
IsChangeLanePath
で上で計算した投影関係を使用して、ターゲット基準線 #の車線の外側にある 障害物を無視します。 ## . -
障害物が車両と同じ方向に移動しているかどうかを判断します
same_direction. 障害物との関係に基づいて 前方方向を計算します安全距離と後方安全距離 . -
車両と障害物との距離が上記で計算した安全距離よりも大きい場合は、車両の進行方向と速度の関係が考慮されます。車線変更は安全です。
HysteresisFilter
は Open Close ロジックの一種で、安全判定結果の安定性を高めることを目的としています (前フレームの判定結果が考慮されます)。安全な場合、このフレームはより安全な判断を下す傾向になります。その逆も同様です)。
2.3. 参照行の更新
内容書き換える必要があるのは、LaneChangeDecider::PrioritizeChangeLane
-
Input:<span></span>
is_prioritize_change_laneです。
is_prioritize_change_laneが ## の場合#true
の場合、切り替え先のターゲットのリファレンス ラインを見つけます。一方、is_prioritize_change_lane
がfalse
の場合は、現在のレーンのリファレンス ラインを見つけます。車両の位置が分かります。 -
reference_line_info->splice(reference_line_info->begin(),*reference_line_info, iter)
;iter## で指す基準線を入れます。 # リンク リストの先頭のステップ 1 で見つかりました。Planning 以降のモジュールでは
reference_line_info( ).front()が使用されるため、リンク リストの先頭は、フレームが使用される参照線であることを示します。
spliceの使用方法の詳細については、「C の基本」を参照してください。
Output: - ReferenceLineInfo
Linked list.
##元のリンク: https://mp.weixin.qq.com /s/IQkBV8iadaU4Qy70F3Xs3Q
- 車両が車線変更中の場合は、
以上がアポロの車線変更戦略とその実際の応用に関する詳細な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









上記と著者の個人的な理解 3 次元ガウシアンプラッティング (3DGS) は、近年、明示的な放射線フィールドとコンピューター グラフィックスの分野で出現した革新的なテクノロジーです。この革新的な方法は、数百万の 3D ガウスを使用することを特徴とし、主に暗黙的な座標ベースのモデルを使用して空間座標をピクセル値にマッピングする神経放射線場 (NeRF) 方法とは大きく異なります。明示的なシーン表現と微分可能なレンダリング アルゴリズムにより、3DGS はリアルタイム レンダリング機能を保証するだけでなく、前例のないレベルの制御とシーン編集も導入します。これにより、3DGS は、次世代の 3D 再構築と表現にとって大きな変革をもたらす可能性のあるものとして位置付けられます。この目的を達成するために、私たちは 3DGS 分野における最新の開発と懸念について初めて体系的な概要を提供します。

昨日の面接で、ロングテール関連の質問をしたかと聞かれたので、簡単にまとめてみようと思いました。自動運転のロングテール問題とは、自動運転車におけるエッジケース、つまり発生確率が低い考えられるシナリオを指します。認識されているロングテール問題は、現在、単一車両のインテリジェント自動運転車の運用設計領域を制限している主な理由の 1 つです。自動運転の基礎となるアーキテクチャとほとんどの技術的問題は解決されており、残りの 5% のロングテール問題が徐々に自動運転の開発を制限する鍵となってきています。これらの問題には、さまざまな断片的なシナリオ、極端な状況、予測不可能な人間の行動が含まれます。自動運転におけるエッジ シナリオの「ロング テール」とは、自動運転車 (AV) におけるエッジ ケースを指します。エッジ ケースは、発生確率が低い可能性のあるシナリオです。これらの珍しい出来事

0.前面に書かれています&& 自動運転システムは、さまざまなセンサー (カメラ、ライダー、レーダーなど) を使用して周囲の環境を認識し、アルゴリズムとモデルを使用することにより、高度な知覚、意思決定、および制御テクノロジーに依存しているという個人的な理解リアルタイムの分析と意思決定に。これにより、車両は道路標識の認識、他の車両の検出と追跡、歩行者の行動の予測などを行うことで、安全な運行と複雑な交通環境への適応が可能となり、現在広く注目を集めており、将来の交通分野における重要な開発分野と考えられています。 。 1つ。しかし、自動運転を難しくしているのは、周囲で何が起こっているかを車に理解させる方法を見つけることです。これには、自動運転システムの 3 次元物体検出アルゴリズムが、周囲環境にある物体 (位置を含む) を正確に認識し、記述することができる必要があります。

StableDiffusion3 の論文がついに登場しました!このモデルは2週間前にリリースされ、Soraと同じDiT(DiffusionTransformer)アーキテクチャを採用しており、リリースされると大きな話題を呼びました。前バージョンと比較して、StableDiffusion3で生成される画像の品質が大幅に向上し、マルチテーマプロンプトに対応したほか、テキスト書き込み効果も向上し、文字化けが発生しなくなりました。 StabilityAI は、StableDiffusion3 はパラメータ サイズが 800M から 8B までの一連のモデルであると指摘しました。このパラメーター範囲は、モデルを多くのポータブル デバイス上で直接実行できることを意味し、AI の使用を大幅に削減します。

自動運転では軌道予測が重要な役割を果たしており、自動運転軌道予測とは、車両の走行過程におけるさまざまなデータを分析し、将来の車両の走行軌跡を予測することを指します。自動運転のコアモジュールとして、軌道予測の品質は下流の計画制御にとって非常に重要です。軌道予測タスクには豊富な技術スタックがあり、自動運転の動的/静的知覚、高精度地図、車線境界線、ニューラル ネットワーク アーキテクチャ (CNN&GNN&Transformer) スキルなどに精通している必要があります。始めるのは非常に困難です。多くのファンは、できるだけ早く軌道予測を始めて、落とし穴を避けたいと考えています。今日は、軌道予測に関するよくある問題と入門的な学習方法を取り上げます。関連知識の紹介 1. プレビュー用紙は整っていますか? A: まずアンケートを見てください。

原題: SIMPL: ASimpleandEfficientMulti-agentMotionPredictionBaselineforAutonomousDriving 論文リンク: https://arxiv.org/pdf/2402.02519.pdf コードリンク: https://github.com/HKUST-Aerial-Robotics/SIMPL 著者単位: 香港科学大学DJI 論文のアイデア: この論文は、自動運転車向けのシンプルで効率的な動作予測ベースライン (SIMPL) を提案しています。従来のエージェントセントとの比較

先頭と開始点に書かれている エンドツーエンドのパラダイムでは、統一されたフレームワークを使用して自動運転システムのマルチタスクを実現します。このパラダイムの単純さと明確さにも関わらず、サブタスクにおけるエンドツーエンドの自動運転手法のパフォーマンスは、依然としてシングルタスク手法に比べてはるかに遅れています。同時に、以前のエンドツーエンド手法で広く使用されていた高密度鳥瞰図 (BEV) 機能により、より多くのモダリティやタスクに拡張することが困難になります。ここでは、スパース検索中心のエンドツーエンド自動運転パラダイム (SparseAD) が提案されています。このパラダイムでは、スパース検索は、高密度の BEV 表現を使用せずに、空間、時間、タスクを含む運転シナリオ全体を完全に表します。具体的には、統合されたスパース アーキテクチャが、検出、追跡、オンライン マッピングなどのタスク認識のために設計されています。さらに、重い

この 1 か月間、いくつかのよく知られた理由により、私は業界のさまざまな教師やクラスメートと非常に集中的な交流をしてきました。この交換で避けられない話題は当然、エンドツーエンドと人気の Tesla FSDV12 です。この機会に、現時点での私の考えや意見を整理し、皆様のご参考とご議論に役立てたいと思います。エンドツーエンドの自動運転システムをどのように定義するか、またエンドツーエンドで解決することが期待される問題は何でしょうか?最も伝統的な定義によれば、エンドツーエンド システムとは、センサーから生の情報を入力し、関心のある変数をタスクに直接出力するシステムを指します。たとえば、画像認識では、従来の特徴抽出 + 分類子方式と比較して、CNN はエンドツーエンドと言えます。自動運転タスクでは、各種センサー(カメラ/LiDAR)からのデータを入力
