ICCV 2023 | 3DPPE: サラウンドビュー 3D オブジェクト検出のための 3D ポイント エンコーディング

この記事は Zhihu@mywt から転載されており、著者の許可を得ています。

記事リンク: https://arxiv.org/abs/2211.14710

コードリンク:

  1. (petrv1/v2 上の 3DPPE)  https://github.com/drilistbox/3DPPE
  2. (streampetr の 3DPPE)  https://github.com/FiveLu/stream3dppe

図 1. カメラ レイ エンコーディングと 3D ポイント エンコーディングの概略図

ここで、ICCV23 を通過したばかりの 3D 検出の概観論文、3DPPE: マルチカメラ 3D オブジェクト検出トランスフォーマーのための 3D ポイント位置エンコーディングを共有したいと思います。方法は比較的単純で、3D ターゲット検出の周囲を見回す問題については、優れた PETR フレームワーク (正直に言うと、petr と streampetr は本当に優れています) に基づいて、既存の 3D ターゲット検出における位置コーディングの多くの違いを分析し、エンコーディング (図 1.b) は、以前のレイ エンコーディング (図 1.a) における詳細な位置事前分布の欠如の問題を解決し、画像特徴とクエリ位置表現を統合し、サラウンドで優れたパフォーマンスを実現します。 3D 検出を表示します。最も先進的な Petr v1/v2 および streampetr で改善されており、クラシック v2-99 バックボーン + 800x320 解像度の効果をリストします (この構成のバックボーン ネットワークは深いデータ セットで事前トレーニングされており、解像度が小さい)訓練の必要性が低く、人に優しい(性能を比較するアブレーション実験に適している)具体的な改善効果は以下の通りです。

図 2. petrv1 上

図 3. petrv2 上

図 4. streampetr 上

1. 手法の紹介

初めて PETR を見たとき、著者の認識の広さに嘆きましたが、NERF と同様のアイデアを 3D 検出に移すことができます。各単眼 2D 画像特徴に 3D 情報を含む独立した位置を与えることで、エンコーディング (図に示すように) 1.a) は、3D 空間内の 2D 画像特徴のインタラクティブなインデックス付けを可能にします。しかし、PETR における 3D 情報を含む位置エンコーディングのメカニズムは何であり、それに含まれる 3D 情報は何でしょうか? 最初はあまり明確ではなかったので、画像のさまざまな位置エンコーディングを探索する一連の実験を設計しました。 3D オブジェクト検出の機能。

1.1 位置コーディングの予備調査

このセクションでは、camera-ray PE、Lidar-ray PE、Oracle 3D Point PE の接続と違いを分析したいと思います。これらの簡単な図を次の図に示します。

図 5. サラウンドビュー 3D 検出で一般的に使用される位置エンコーディングの漫画イラスト

(1) カメラレイエンコーディング

PETRにおける画像コーディングの構築は内部パラメータと外部パラメータを使用するため、漠然とカメラの光学中心から撮像面上の各ピクセルまでの光線情報をレーダー座標系で表現しているように感じられます。そこで、PETR の位置エンコーディングがカメラ レイ エンコーディングであることを証明するために、次の実験を設計しました。まず、PETR における画像位置符号化の構成要素を 3 つの部分に分解します: 1. 深度ビンの数 �� ; 2. 深度離散化の方法 �� ; 3. 深度表現の範囲 �� 。具体的な実験結果を次の表に示します。表 1 の 2 ~ 4 行目がわかります。深度離散化方法を変更した後でも、検出効果はあまり変化せず、深度離散化方法がパフォーマンスにほとんど影響を与えないことを示しています。表 1 を再度参照します。 の 4 ~ 6 行目は、奥行き知覚範囲を変更し、検出効果はほとんど変化しません。これは、奥行き認識範囲がパフォーマンスにほとんど影響を与えないことを示しています。表 1 の最後の 2 行を見て、これは、深度ビンの数がパフォーマンスにほとんど影響を与えないことを示しています。まとめると、サンプリング方法、サンプリングポイント、奥行き知覚範囲が変わっても、これらの深度点がカメラ光線上を滑る(光学中心→撮像面上のピクセル)と、モデルの検出効果が変化することが感じられます。ほぼ同じです。変更します。したがって、画像位置をエンコードでき、カメラ光線情報を表現できる限り、モデルのパフォーマンスはオリジナルの PETR とほとんど変わりません。したがって、PETR の位置エンコーディングはカメラ レイ エンコーディング (カメラ レイ エンコーディング) であり、カメラ レイ上の 2 点が同等の 3D 位置エンコーディングを表現できる限り、最も簡潔な 3D カメラ レイ エンコーディングも見つかりました。

表 1. 深度ビンの数、深度の離散化の方法、および深度表現の範囲がパフォーマンスに与える影響

上記の分析は、カメラレイ エンコーディングのエンコーディング ポイントの最小数が 2 であることを示していますが、エンコーディング ポイントの数が 1 に減った場合はどうなるでしょうか? これは非常に興味深いもので、ポイントの数が 1 に減った場合、エンコード情報を決定できる唯一の要素は、このポイントの深度値をどのように選択するかだけです。実際には、次の 2 つの方法があります。

  • 不正確な深度値 (これを LiDAR レイと呼びます)。
  • 正確な深度値 (Oracle 3D ポイントと呼びます)。

(2)LiDAR-ray

なぜLiDAR-rayと呼ばれるのかは、このセクションの分析が終了するとわかります。実験だけでなく数学的モデリングを使用してこれを実証します。ただし、理解を容易にするために、最初に 2 つの基礎知識を準備します。

1. まず LiDAR 線を定義します。各ピクセル点に対応する位置コードは 1 点で構成され、この点に対応する深度値はオブジェクトの実際の深さとは関係ありません。(実際には、ライダー座標系の原点である別の点があると推測されますが、それはデフォルト値であり、位置コードを構築するときに明示的に使用されないため、ネットワークはレーダー座標の原点を学習しているはずです)システム (0,0,0 ))

図 6. カメラ光線エンコーディングとレーダー光線エンコーディングの間の幾何学的関係

2. まず、単純な数学的幾何学情報をレイアウトします。図 6 に示すように、カメラ光線の符号化とレーダー光線の符号化の幾何学的関係を構築します。同様に、コサイン距離の差を使用して、カメラ光線と LIDAR 光線の違いを定義します。

式 1. カメラ光線とライダー光線の違い

d が大きい限り、つまりレーダー座標系の 3D 点がカメラまたはレーダーから遠い限り、カメラ レイ エンコーディングとレーダー レイ エンコーディングは同等であることがわかります。


さて、基礎知識の構築は終わりました。ここから実験を開始します。表 2 に示すように、深さの値 d を 0.2m/1m/15m/30m/60m と順番に取ります。d が 0.2m または 1m の場合、性能が実験結果よりも低いことがわかりました。点はさらに多くなりますが、d が 15m/30m/60m の場合、検出性能は表 1 の結果と同じになります。

表 2. LiDAR 線下でのパフォーマンスに対する d 値の変更の影響

上記の実験現象から、深度値 d が小さい場合には性能が悪く、深度値が大きい場合には LiDAR-ray と Camera-ray の性能は同等であると結論付けることができます。そして、この現象は上記の式 1 の結論とも一致します。この実験現象は、以前に数学的にモデル化したレーダーからの光線の結論と一致しているため、Lidar 線が追加される理由は誰もが知っています。また、「カメラレイの性能が深度値に影響されない」現象とは異なり、LiDAR-rayでは深度値dが小さい場合、LiDAR-rayの性能が低下し、LiDAR-rayとカメラの性能が低下します。 -ray は深度値が大きい場合も同様です

(3) Oracle 3D ポイント

LIDAR-RAY とは異なり、Oracle 3D Point の深度は点群を画像面に投影することによって取得されるため、画像特徴の各点は正確な位置エンコード情報を取得できます (点群の希釈により、多くのピクセルが存在します)。実際、投影後の深度情報は取得されず、これらのピクセル点の特徴はトレーニングや推論に関与しません)。表 3 からわかるように、以前のエンコード方法と比較して、NDS と mAP が大幅に向上します (NDS 6.7%、mAP 10.9%、mATE 18.7%)。カメラ光線やライダー光線の不正確な 3D 位置事前分布と比較して、正確な 3D 位置事前分布を使用した位置エンコードが 3D 検出パフォーマンスの向上の鍵であることがわかります

表 3. さまざまな位置エンコーディングが検出パフォーマンス能力に及ぼす影響

ただし、カメラベースの知覚方式では正確な奥行き情報が存在しないため、単眼での奥行き推定により奥行き情報を取得する簡単な方法を採用しました(詳細は次節を参照)。

1.2 モデル構造

提案手法のフレームワーク図を下図に示します。これは、バックボーンネットワーク、3D ポイントジェネレータ、3D ポイントエンコードモジュール、デコーダで構成されます。バックボーンネットワークとデコーダは以前のpetrと同じです。3D ポイント ジェネレーターと 3D ポイント エンコーディング モジュールの 2 つの部分に焦点を当てます。

図 7. フレームワーク図

1. 3D ポイントジェネレーター

3D ポイント ジェネレーターには、深度予測ヘッドと 2D から 3D への座標変換モジュールが含まれています。

深度予測頭部モデルの構造は下図に示すとおりであり、画像特徴量とカメラパラメータを入力すると、出力される深度値������は、直接回帰深度��+期待深度��の加重和となります。 。

図 8. 深さ検出ヘッド

対応する深度値 ���� は次のとおりです。

ここで、� は学習可能な混合係数です。トレーニング用の深さ GT を構築するとき、点群を画像面に直接投影し、どのピクセルが深さ GT を持ち、どのピクセルが持たないかを示す対応するマスクを取得します。損失が監視されている場合は、点群のみが投影されます。 。深い監視損失は、スムーズ l1 と分布焦点損失で構成されます (検出時の bbox の損失を修正するために使用され、深い監視への移行の効果も非常に優れています)。

2D から 3D 座標変換モジュール: 奥行き推定を取得した後、カメラの内部パラメータと外部パラメータを使用して 2.5D 情報を 3D 情報に変換できます。次に、知覚範囲の調整を使用して正規化されます。

2. 3D ポイントエンコーディングモジュール

以下は、PETR で使用されるものと同じサインコサイン エンコードです。

違いは、以前は PETR がカメラ レイ法に沿って 64 ポイントだったのに対し、現在は 1 ポイントであることです。

図 9. カメラ レイ エンコーディングと 3D ポイント エンコーディングの比較

そして、3D ポイント エンコーディングのパラダイムの下では、画像特徴の位置エンコーディングとアンカー ポイントの位置エンコーディングが統合され、誰もが同じエンコーダを共有できます。

2 実験結果

2.1 sota法との比較

私たちの方法は、nus の検証セットとテスト セットの両方で良好な結果を達成しました。

表 4. nus の検証セットについて

表 5. nus のテスト セットについて

2.2 深度推定の品質がパフォーマンスに及ぼす影響

実験によると、smooth-l1 は dfl で最適に動作することがわかりました。

表 6. 検出パフォーマンスに対する深度推定損失関数の影響

2.2 他の 3D 位置認識機能とのパフォーマンスの比較

実際、3D 位置認識フィーチャは 3D 位置情報を含む可能性のあるフィーチャを指し、位置コードはレイ認識とポイント認識に分けることができます。このうち、Ray-aware は、camera-ray (PETR での位置エンコーディング) と Feel-guided (PETRv2 での位置エンコーディング) に分けることができ、Point-aware は、topk-aware (奥行き推定確率に応じて、最高信頼度 k ビン)、深度特徴ガイド付き(深い監視は PETRv2 の位置コーディングに導入されています)、深度ガイド付き 3D ポイント(私たちが提案する 3D ポイント コーディング)。上記 5 つのエンコーディングの効果の比較を以下の表に示します。

表 7. さまざまな 3D 位置認識機能のパフォーマンスの比較

2.3 画像特徴とアンカーポイントの位置エンコーディング表現を統合する利点

アンカー ポイントも 3D ポイント エンコーディングであるため、実装形式は画像特徴に対して提案した 3D ポイント エンコーディングと一致します。どちらも 3D 座標空間から取得され、相互作用のために高次元エンコーディング空間に暗黙的にマッピングする必要があります。 。したがって、直感的には、マッピング プロセスが一貫していれば、エンコード表現空間も一貫しており、クエリと画像の特徴間の相互作用がより促進されるということになります。そこで、3D ポイントエンコーダの共有の有無による性能差を比較したところ、3D ポイントエンコーダの共有が最も優れていることがわかりました。

表 8. 3D ポイント エンコーディング ジェネレーターが共有されているかどうかによるパフォーマンスの違い

2.4 位置コード類似性解析

優れた位置コードには、より重点が置かれている必要があります。つまり、距離が近いほど類似性が高くなります。セマンティクスが近く、類似性が高いほど良いでしょう。異なるピクセル間の位置エンコーディングの類似性を視覚化しました。前景、画像のエッジ、および背景上の点をサンプリングすることにより、3D ポイント エンコーディングの類似性が向上し、より焦点が合っていることがわかります。

図 10. 前景領域の点収集の概略図

図 11. 画像ターゲットにわたるポイント収集の概略図

図 12. 背景領域の点収集の概念図

3. 他にどのような穴を埋めることができるか

3.1 より良い 3D 位置情報を取得する方法

  1. 単眼奥行き推定 -> 時系列マルチフレーム + 見回す多目的ステレオ奥行き
  2. 明示的な深さの推定または監視が必要ですか? 私たちの方法は、PETR シリーズに深度推定を導入する最初の研究となるはずです。ただし、事前に 3D 位置を取得するために、明示的な深さの推定や監視は必要ありません。表示された深度推定または表示された深度監視とは別に、occ 事前トレーニングまたは nerf 再構成を使用して、ルート サインの深度情報または幾何学的構造情報を暗黙的に学習します。
  3. 知識の蒸留を使用して深さの推定を改善します。これについては、本稿の今後の改善点で言及します。

表6. 知識の蒸留のためにグラウンドトゥルースの深度を再利用します。

3.2 Occ 予測への拡張

レイコーディング自体はナーフと非常に似ており、3Dポイントコーディングの前の深度位置によってオブジェクトの可能な位置を一度に見つけることができます。これはナーフ再構成のアイデアと非常に似ています。

3.3 新しい位置コードの探索

実際、これまでのところ、トランスフォーマー パラダイムに基づく 3D ターゲット検出のコーディング パラダイムはほとんど検討されていません。私たちが言及した 3D ポイント コーディングでさえ、実際には detr ベースの 2D 検出器の最も原始的な位置コーディングと同等です。ピクセルレベルから3D座標レベルまで。detr ベースの 2D 検出器における位置エンコーディング設計の多くの概念を 3D タスクの特性と組み合わせて、改善や革新を起こすことができます。

3.4 内部パラメータと外部パラメータの一般化

既存のサラウンドビュー 3D 検出モデルのほとんどは、内部パラメータと外部パラメータがコード化されている場合、再トレーニングが必要です。Tesla aiday が提案した仮想カメラ関連技術と、Baidu apollo ai day が導入した内部パラメータと外部パラメータの分離に加えて、上記の内部パラメータ変更モデルと外部パラメータ変更モデルをある程度再トレーニングする必要があるという問題を解決できます。私たちの論文で言及したライダー光線は上記の問題を解決できるように見えますが、これは単なるひらめきにすぎず、実験的に検証する必要があります。

3.5 ヌーがリストに掲載

今後のフレームはともかく、vit-largeを本体としたstreampetrの性能が最高のはずですが、こちらのvit-largeのモデル構造を微調整する必要があるため、ここで再現するにはある程度の時間がかかります、よろしくお願いします興味のある友達は試してみてください。

4. 最後に書いてあります: インターンはまだ募集中です

会社概要: Houmo Intelligent は、最大物理コンピューティング能力 256TOPS、通常消費電力 35W を備えた、中国初の量産型ストレージコンピューティング統合インテリジェント駆動チップを発売しました。

仕事内容:

  1. それぞれの「データ」を含む、自動運転認識タスク (単眼、サラウンドビュー、bev での 3D 障害物認識、3D 車線認識、ローカル マッピング、軌道予測などに限定されない) のためのチップの適応に参加します。 「タスクチェーン」は、無人車両上で関連する認識モジュールの機能をスムーズに実現することを目的としています。
  2. chatgpt の大規模モデルおよび垂直ビジネス シナリオ (産業異常検出、自動データ ラベル付けなど) におけるマルチモーダル認識タスクの開発に参加します (南京が望ましい)。
  3. 他の AI ビジネス シナリオにおけるビジネス ランディング開発に参加します。
  4. ビジネスの完了に基づいて、タイムリーに最先端のテクノロジーを探索し、論文を発表します。

職務要件:

  1. 自動運転シナリオの要件を理解し、関連する 2D/3D 認識タスクの基本を理解します。
  2. 一般的なマルチモーダルオープンシーン検出方法について学びます。
  3. python/pytorch/C++ などの一般的なコンピューター言語に精通しており、mmlab に精通している。
  4. (ボーナスポイント) 関連するプロジェクトの経験、cuda オペレーターの開発とアクセラレーションの最適化の経験、完全なエンドツーエンドのモデル展開の経験が望ましい。
  5. (追加点) コンピュータビジョンに関連する主要なカンファレンス論文での経験があることが望ましい。
  6. 勤務地:上海、南京、北京、211大学院卒以上、週4日以上練習可能。

給与: 250元/日+食事手当30元/日、9時以降はタクシーで払い戻し可能

配信方法: 電子メール: [email protected]、またはWeChatに追加してください: drilistbox

興味のある学生はぜひ一緒に参加して、アルゴリズムとエンジニアリングの二次元から個人のスキルスタックを拡張し、輝かせてください。

おすすめ

転載: blog.csdn.net/Mikasa33/article/details/132039632