プラトーニング向け車線変更(Rear‑First Lane Change Protocol)
概要
本リポジトリは、車列走行(プラトーニング)中の安全な車線変更を目的とした「Rear‑First Lane Change Protocol」と協調的知覚を組み合わせた研究実装です。ハードウェアは Jetracer Pro AI キット(NVIDIA Jetson Nano と CSI カメラ IMX219)および低レベルコントローラに OpenCR を利用し、ソフトウェアは ROS2(Galactic)上で動作します。OpenCV(GPU/CUDA 有効)を用いた映像処理と ROS2 トピックによる情報共有で、車両間の視認性を補完しつつ、後方車両優先(rear‑first)の車線変更判断と制御を行うアプローチを示します。学術的な背景(IV 2026 での発表)を持ち、実機やスケールモデルでの検証を想定した設計です。
リポジトリの統計情報
- スター数: 9
- フォーク数: 0
- ウォッチャー数: 9
- コミット数: 11
- ファイル数: 9
- メインの言語: C++
主な特徴
- Rear‑First(後方優先)車線変更プロトコルの実装と検証用コードを提供
- 協調的知覚(Cooperative Perception)を用いた車両間情報共有による安全性向上
- ROS2(Galactic)/C++ ベースで、Jetson Nano + OpenCR を想定したハードウェア対応
- OpenCV(GPU/CUDA)を活用したビジョン処理と制御連携
技術的なポイント
本プロジェクトの核は「車列走行における安全な車線変更」を実現するための意思決定と知覚連携です。Rear‑First の考え方は、車列内における車線変更操作を後続車両から順に行うことで、先行車両の影響を減らし安全マージンを保つことを目的としています。これを支えるために、協調的知覚を導入して各車両が自車のセンサー範囲外で検出した対象(障害物、車両の位置・速度など)を ROS2 トピック経由で共有する設計が想定されています。映像処理は OpenCV(CUDA 有効)を利用しており、Jetson の GPU を活用したリアルタイム処理に対応。低レベル制御は OpenCR を通じてサーボやモータに指令を送り、上位の車線変更意思決定ノードからの経路・速度指示を受けて実行します。ソフト構成は C++ と ROS2 ノード群、設定ファイルでまとめられ、CMake(CMakeLists.txt)でビルド可能。Jetpack 5.1.1 / Ubuntu 20.04 / ROS2 Galactic / OpenCV 4.4 の組み合わせが動作想定環境として README に明記されており、実機検証を意識した依存関係管理がなされています。また、アルゴリズム面では車両間の安全間隔評価、死角(ブラインドスポット)補完のための信頼度付き情報融合、車線変更可否のヒューリスティックまたは閾値ベースのチェックが組み合わされている可能性が高く、シミュレーションと実機の両面で検証できる構成になっています。
プロジェクトの構成
主要なファイルとディレクトリ:
- CMakeLists.txt: file — ビルド設定(ROS2/C++ プロジェクト用)
- README.md: file — 環境要件、ハードウェア構成、開発履歴の説明
- config: dir — 動作パラメータやノード設定ファイル
- etc: dir — 補助スクリプトや資源(例: launch ファイル、資産)
- include: dir — ヘッダファイル群(アルゴリズム/メッセージ定義)
- src: dir — ノード実装や制御ロジック(想定)
- launch (想定): dir — ROS2 起動構成(存在する場合)
- package.xml (想定): file — ROS2 パッケージ依存情報 …他 4 ファイル
(注)実際の詳細はリポジトリ内の各ファイルを参照してください。README にハードウェア(Jetracer pro、OpenCR)、ソフトウェア(Jetpack 5.1.1、OpenCV 4.4、ROS2 Galactic)などの要件が記載されています。
まとめ
実機志向の協調知覚を組み込んだプラトーニング車線変更のプロトタイプ実装で、研究/実験プラットフォームとして有望です。
リポジトリ情報:
- 名前: lane-change-for-platooning
- 説明: Rear-First Lane Change Protocol with Cooperative Perception for Safe Platooning (IV 2026)
- スター数: 9
- 言語: C++
- URL: https://github.com/aveeslab/lane-change-for-platooning
- オーナー: aveeslab
- アバター: https://avatars.githubusercontent.com/u/265196550?v=4
READMEの抜粋:
scale_truck_control_ros2
ROS2 based scale_truck_control package for jetracer
I. Hardware
- Jetracer pro AI kit
High-level Controller - NVIDIA Jetson nano
Low-level Controller - OpenCR 1.0 (ARM Cortex-M7)
CSI camera - IMX219-160
II. Software
Jetpack : 5.1.1 version - Ubuntu 20.04 focal
OpenCV : 4.4.0 version - include options (GPU, CUDA, CUDNN)
ROS 2 : galactic version
Develop History
Surrounding Vehicles in Lane Change Scenario