autoware_detection_by_tracker#
用途#
このパッケージはトラッキングされたオブジェクトを検出モジュールにフィードバックし、安定してオブジェクトを検出し続けることを目的としています。
Autowareの detection by tracker は、点群とトラッカーを含む未知のオブジェクトを入力として受け取ります。 未知のオブジェクトは、検出され続けることができるようにトラッカーのサイズに合うように最適化されます。
内部動作 / アルゴリズム#
Autowareの detection by tracker は、点群とトラッカーを含む未知のオブジェクトを受け取ります。ここで未知のオブジェクトは、主にユークリッドクラスタリングを使用して形状適合されています。 ユークリッドクラスタリングやその他の方法を使用した形状適合には、過分割と過分割という問題があります。
未知のオブジェクトとトラッカーのオーバーラップだけを見るのは不十分です。過分割と過分割の対策を講じる必要があります。
過分割に対処するためのポリシー#
- トラッカー内の未知のオブジェクトを単一のオブジェクトとしてマージします。
- トラッカー情報(角度やサイズなど)をリファレンス情報として使用して形状適合を行います。
過分割に対処するためのポリシー#
- トラッカーと未知のオブジェクトを比較し、リコールが大きく、適合率が小さいものを過分割オブジェクトと判断します。
- 過分割オブジェクトのクラスタを分割するために、小さなクラスタを作成するようにパラメータを反復処理します。
- パラメータを数回調整し、最も IoU が高いものを採用します。
入出力#
入力#
名称 | 型 | 説明 |
---|---|---|
~/input/initial_objects |
tier4_perception_msgs::msg::DetectedObjectsWithFeature |
未知のオブジェクト |
~/input/tracked_objects |
tier4_perception_msgs::msg::TrackedObjects |
トラッカー |
出力#
自己位置推定
以下の方法は自己位置推定およびマッピングを処理します。
Localization and Mapping (ローカライゼーションとマッピング):
- 現在の姿勢を推定および追跡します。
- 環境マップを作成および更新します。
Planning (プランニング)
- 安全で効率的な経路を計画します。
- 速度、加速度、ステアリングコマンドを生成します。
Behavior Planning (動作プランニング)
- 衝突回避のための障害物認識と回避を行います。
- 交通規則とエチケットに従います。
Behavior Prediction (動作予測)
- 歩行者、自転車、他の車両の動きを予測します。
- 交差点、人混み、その他の複雑な状況での安全な行動を可能にします。
Controller (コントローラ)
- 運転操作を実行します。
- ブレーキ、アクセル、ステアリングの制御を管理します。
Perception (パーセプション)
- カメラ、レーダー、LiDARセンサーからのデータを処理します。
- 物体、車線、信号などの周辺環境を認識および分類します。
センサー
- レーダー、LiDAR、カメラなどのセンサーを使用します。
- 検出距離、精度、視野などのセンサー特性を考慮します。
データアグリゲーション
- 複数のセンサーからのデータを統合します。
post resampling
を使用して時間同期された一貫したビューを作成します。
データアソシエーション
- 異なるセンサーからの測定結果を同一の対象物に関連付けます。
- KF(カルマンフィルタ)やHD(ハフ距離)などの手法を使用します。
ステート推定
- Kalmanフィルタを使用し、センサー測定値から状態を推定します。
- 速度逸脱量、加速度逸脱量などの状態変数を考慮します。
名前 | 種類 | 説明 |
---|---|---|
~/output |
autoware_perception_msgs::msg::DetectedObjects |
オブジェクト |
パラメータ#
名称 | タイプ | 説明 | デフォルト値 |
---|---|---|---|
tracker_ignore_label.UNKNOWN |
bool |
ラベルが不明の場合は、ノードがトラッカーを無視するかどうか | true |
tracker_ignore_label.CAR |
bool |
ラベルが CAR の場合は、ノードがトラッカーを無視するかどうか | false |
tracker_ignore_label.PEDESTRIAN |
bool |
ラベルが歩行者の場合は、ノードがトラッカーを無視するかどうか | false |
tracker_ignore_label.BICYCLE |
bool |
ラベルが自転車の場合は、ノードがトラッカーを無視するかどうか | false |
tracker_ignore_label.MOTORCYCLE |
bool |
ラベルがオートバイの場合は、ノードがトラッカーを無視するかどうか | false |
tracker_ignore_label.BUS |
bool |
ラベルがバスの場合は、ノードがトラッカーを無視するかどうか | false |
tracker_ignore_label.TRUCK |
bool |
ラベルがトラックの場合は、ノードがトラッカーを無視するかどうか | false |
tracker_ignore_label.TRAILER |
bool |
ラベルがトレーラーの場合は、ノードがトラッカーを無視するかどうか | false |
前提条件と既知の制限事項#
(省略可能) エラー検出と処理#
(省略可能) 性能特性#
(省略可能) 参照文献/外部リンク#
[1] M. ヒメルスバッハら. "ボトムアップ/トップダウン検出を用いた任意物体の追跡と分類." (2012).
[2] アリア・セナ・アブドゥル・ラクマン, アリア. "自動運転における 3D LIDAR マルチオブジェクトトラッキング: 都市道路の不確実性におけるマルチターゲットの検出および追跡." (2017).
[3] デイビッド・ヘルドら. "空間的、時間的、セマンティックな手がかりを用いたリアルタイム 3D セグメンテーションのための確率的フレームワーク." (2016).