DETR3D : Détection d'objets 3D à partir d'images multi-vues via des requêtes 3D à 2D

DETR3D : Détection d'objets 3D à partir d'images multi-vues via des requêtes 3D à 2D

But

Dans cet article, nous proposons un réseau de détection d'objets 3D qui utilise uniquement des informations 2D et s'appuie sur des procédures de prédiction de profondeur dense ou de reconstruction 3D. Le réseau utilise un décodeur de transformateur similaire à DETR, il n'y a donc pas besoin d'opérations de post-traitement telles que NMS.

La détection d'objets 3D a longtemps été un défi, et utiliser uniquement des informations d'image 2D (images RVB) est plus difficile que des informations 3D (LiDAR).

Quelques méthodes classiques :

  1. Utilisez un pipeline de détection d'objets 2D (CenterNet, FCOS, etc.) pour prédire les informations 3D (position de l'objet, vitesse), quelle que soit la structure de la scène 3D ou la configuration du capteur. Ces méthodes nécessitent un post-traitement pour fusionner les informations de plusieurs caméras et supprimer les boîtiers redondants.
  2. Comme alternatives à ces méthodes basées sur la 2D, certaines méthodes intègrent des calculs 3D dans le pipeline : en générant un pseudo lidar à partir d'images ou de distances aux scènes. Ensuite, utilisez une méthode de détection d'objets 3D, traitez ces données, comme si nous obtenions directement les données 3D. Le problème avec cette approche est qu'une estimation de profondeur inexacte peut avoir un impact négatif sur la détection d'objets 3D.

Cet article propose une transition plus élégante des observations 2D aux prédictions 3D pour les tâches de conduite autonome qui ne repose pas sur des modules de prédiction de profondeur denses.

méthode

organisation du réseau

![[pièces jointes/9d61c4fc84ee4502b9076578e658b578_2_Figure_1.png]]

Vue d'ensemble de la structure du réseau :

  1. Extraire des fonctionnalités à l'aide d'un backbone ResNet partagé et d'un FPN
  2. Une tête de détection qui connecte les caractéristiques 2D et les prédictions bbox 3D d'une manière sensible à la géométrie. Chaque couche de la tête de détection entre un ensemble clairsemé de requêtes cibles apprises à partir des données. Chaque requête d'objet encode des informations de position 3D, et ces requêtes d'objet sont projetées sur le plan de la caméra et utilisées pour collecter les caractéristiques de l'image.
  3. Identique à DETR, en utilisant des requêtes d'objets d'affinement d'attention multi-têtes, cette couche sera répétée plusieurs fois
  4. A la fin du décodeur, un FFN sera utilisé pour donner le résultat final
  5. Enfin, utilisez la perte set-set pour former le réseau

Les étapes de traitement de chaque couche de décodeur :

  1. Prédire un ensemble de centres de boîte englobante associés à une requête d'objet ;
  2. Projetez ces centres dans toutes les cartes d'entités à l'aide de la matrice de transformation de caméra ;
  3. échantillonne des fonctionnalités via une interpolation bilinéaire et les intègre dans des requêtes d'objets ;
  4. Les interactions d'objets sont décrites en utilisant l'attention multi-tête.

perte

Semblable à la perte d'ensemble à ensemble de DETR, il y a un calcul de perte derrière chaque couche du décodeur.

Les informations pertinentes

Détection de cible visuelle pure sous BEV - DETR3D - Article du Tsinghua MARS Lab - Zhihu https://zhuanlan.zhihu.com/p/499795161

おすすめ

転載: blog.csdn.net/SugerOO/article/details/131737609