Détection d'objets de nuage de points 3D - Amazon SageMaker

Détection d'objets de nuage de points 3D

Utilisez ce type de tâche lorsque vous souhaitez que les collaborateurs classent des objets dans un nuage de points 3D en dessinant des cuboïdes 3D autour des objets. Par exemple, vous pouvez utiliser ce type de tâche pour demander aux collaborateurs d'identifier différents types d'objets dans un nuage de points, tels que les voitures, les vélos et les piétons.

Pour ce type de tâche, l'objet de données étiqueté par les employés est une séquence de trames de nuage de points. Ground Truth effectue un rendu de nuage de points 3D à l'aide des données de nuage de points que vous fournissez. Vous pouvez également fournir des données de caméra pour fournir aux collaborateurs des informations visuelles supplémentaires sur les scènes de la trame et pour les aider à dessiner des cuboïdes 3D autour des objets.

Ground Truth fournit aux employés des outils pour annoter les objets avec 9 degrés de liberté (x, y, z, rx, ry, rz, l, w, h) en trois dimensions, tant dans les vues de scène 3D que dans les vues latérales projetées (dessus, côté et arrière). Si vous fournissez des informations de fusion de capteur (comme des données de caméra), lorsqu'un collaborateur ajoute un cuboïde pour identifier un objet dans le nuage de points 3D, le cuboïde apparaît et peut être modifié dans les images 2D. Une fois qu'un cuboïde a été ajouté, toutes les modifications apportées à ce dernier dans la scène 2D ou 3D sont projetées dans l'autre vue.

Vous pouvez créer une tâche pour adapter les annotations créées dans une tâche d'étiquetage de détection d'objets de nuage de points 3D à l'aide du type de tâche d'ajustement de détection d'objets de nuage de points 3D.

Si vous êtes un nouvel utilisateur de la modalité d'étiquetage de nuage de points 3D Ground Truth, nous vous recommandons de consulter Présentation des tâches d'étiquetage de nuage de points 3D. Cette modalité d'étiquetage est différente des autres types de tâches Ground Truth. Cette page fournit une présentation des détails importants que vous devez connaître lors de la création d'une tâche d'étiquetage de nuage de points 3D.

Affichage de l'interface des tâches de travail

Ground Truth fournit aux employés un portail Web et des outils pour effectuer vos tâches d'annotation de détection d'objets de nuage de points 3D. Lorsque vous créez la tâche d'étiquetage, vous fournissez l'Amazon Resource Name (ARN) d'une interface utilisateur employé Ground Truth prédéfinie dans le paramètre HumanTaskUiArn. Lorsque vous créez une tâche d'étiquetage à l'aide de ce type de tâche dans la console, cette interface utilisateur de travail est automatiquement utilisée. Vous pouvez prévisualiser l'interface utilisateur de travail et interagir avec cette dernière lorsque vous créez une tâche d'étiquetage dans la console. Si vous êtes un nouvel utilisateur, nous vous recommandons de créer une tâche d'étiquetage à l'aide de la console pour être sûr que vos attributs d'étiquette, les trames de nuage de points et, le cas échéant, les images apparaissent comme prévu.

Ce qui suit est un GIF de l'interface de travail de détection d'objets de nuage de points 3D. Si vous fournissez des données de caméra pour la fusion des capteurs dans le système de coordonnées, les images sont mises en correspondance avec des scènes de la trame du nuage de points. Ces images apparaissent dans le portail de travail comme illustré dans le GIF suivant.

Le collaborateur peut naviguer dans la scène 3D à l'aide du clavier et de la souris. Il peut :

  • double-cliquer sur des objets spécifiques dans le nuage de points pour zoomer ;

  • utiliser une molette de souris ou un pavé tactile pour effectuer un zoom avant et arrière sur le nuage de points ;

  • utiliser les touches fléchées du clavier et les touches Q, E, A et D pour se déplacer vers le haut, le bas, la gauche et la droite ; utiliser les touches W et S du clavier pour effectuer un zoom avant et arrière.

Une fois qu'un collaborateur a placé un cuboïde dans la scène 3D, une vue latérale apparaît avec les trois vues latérales projetées : le haut, le côté et l'arrière. Ces vues latérales montrent des points à l'intérieur et autour du cuboïde placé et aident les collaborateurs à affiner les limites du cuboïde dans cette zone. Les collaborateurs peuvent faire un zoom avant et arrière de chacune de ces vues latérales à l'aide de leur souris.

La vidéo suivante illustre les mouvements autour du nuage de points 3D et dans la vue latérale.

D'autres options et fonctionnalités d'affichage sont disponibles dans le menu d'Affichage de l'interface utilisateur de travail. Veuillez consulter la page d'instructions de travail pour obtenir une présentation complète de l'interface utilisateur de travail.

Outils d'étiquetage assisté

Ground Truth aide les employés à annoter les nuages de points 3D plus rapidement et plus précisément à l'aide d'outils d'étiquetage assisté basés sur le machine learning et la reconnaissance d'image pour les tâches de suivi d'objets de nuages de points 3D. Les outils d'étiquetage assisté suivants sont disponibles pour ce type de tâche :

  • Ajustement – Les employés peuvent ajouter un cuboïde autour d'un objet et utiliser un raccourci clavier ou une option de menu pour que l'outil d'ajustement automatique Ground Truth ajuste étroitement le cuboïde autour de l'objet.

  • Accrochage au sol – Une fois qu'un employé a ajouté un cuboïde à la scène 3D, il peut automatiquement accrocher le cuboïde au sol. Par exemple, le collaborateur peut utiliser cette fonction pour accrocher un cuboïde à la route ou au trottoir de la scène.

  • Étiquetage multivues – Une fois qu'un employé a ajouté un cuboïde 3D à la scène 3D, un panneau latéral affiche les perspectives frontale, latérale et supérieure pour aider l'employé à ajuster étroitement le cuboïde autour de l'objet. Dans toutes ces vues, le cuboïde inclut une flèche qui indique l'orientation ou le cap de l'objet. Lorsque le collaborateur ajuste le cuboïde, l'ajustement apparaît en temps réel sur toutes les vues (c'est-à-dire 3D, supérieure, latérales et avant).

  • Fusion des capteurs – Si vous fournissez des données pour la fusion des capteurs, les employés peuvent ajuster les annotations dans les scènes 3D et les images 2D. Les annotations sont alors projetées dans l'autre vue en temps réel. De plus, les collaborateurs ont la possibilité de voir la direction à laquelle la caméra fait face et le tronc de la caméra.

  • Options d'affichage – Permet aux employés de masquer ou d'afficher facilement les cuboïdes, le texte des étiquettes, un maillage au sol et des attributs ponctuels supplémentaires tels que la couleur ou l'intensité. Les collaborateurs peuvent également choisir entre la perspective et les projections orthogonales.

Création d'une tâche d'étiquetage de détection d'objets de nuage de points 3D

Vous pouvez créer une tâche d'étiquetage de nuage de points 3D à l'aide de la console SageMaker ou de l'opération d'API, CreateLabelingJob. Pour créer une tâche d'étiquetage pour ce type de tâche, vous devez disposer des éléments suivants :

En outre, veillez à prendre connaissance de la section et à satisfaire les conditions qui y sont exposées Attribuer des autorisations IAM pour utiliser Ground Truth.

Utilisez l'une des sections suivantes pour apprendre à créer une tâche d'étiquetage à l'aide de la console ou d'une API.

Création d'une tâche d'étiquetage (Console)

Vous pouvez suivre les instructions décrites dans Création d'une tâche d'étiquetage (Console) pour apprendre à créer une tâche d'étiquetage de détection d'objets de nuage de points 3D dans la console SageMaker. Pendant la création de votre tâche d'étiquetage, tenez compte des points suivants :

  • Votre fichier manifeste d'entrée doit être un fichier manifeste à trame unique. Pour de plus amples informations, veuillez consulter . Création d'un fichier manifeste d'entrée de trame de nuage de points.

  • Vous pouvez également fournir des attributs de catégorie d'étiquette et de trame. Les collaborateurs peuvent affecter un ou plusieurs de ces attributs aux annotations pour fournir plus d'informations sur cet objet. Par exemple, vous pouvez utiliser l'attribut occluded pour que les collaborateurs identifient les objets partiellement bloqués.

  • L'étiquetage automatisé des données et la consolidation des annotations ne sont pas pris en charge pour les tâches d'étiquetage de nuage de points 3D.

  • Les tâches d'étiquetage de détection d'objets de nuage de points 3D peuvent prendre plusieurs heures. Vous pouvez spécifier une durée plus longue pour ces tâches d'étiquetage lorsque vous sélectionnez votre équipe de travail (jusqu'à 7 jours ou 604 800 secondes).

Création d'une tâche d'étiquetage (API)

Cette section présente les détails que vous devez connaître lorsque vous créez une tâche d'étiquetage à l'aide de l'opération de l'API SageMaker CreateLabelingJob. Cette API définit cette opération pour tous les kits SDK AWS. Pour afficher la liste des kits SDK spécifiques à la langue pris en charge pour cette opération, veuillez consulter la section Voir aussi de CreateLabelingJob.

Création d'une tâche d'étiquetage (API) fournit une présentation de l'opération CreateLabelingJob. Suivez ces instructions et procédez comme suit pour configurer votre demande :

  • Vous devez entrer un ARN pour HumanTaskUiArn. Utilisez arn:aws:sagemaker:<region>:394669845002:human-task-ui/PointCloudObjectDetection. Remplacez <region> par la région AWS dans laquelle vous créez la tâche d'étiquetage.

    Il ne doit pas y avoir d'entrée pour le paramètre UiTemplateS3Uri.

  • Votre fichier manifeste d'entrée doit être un fichier manifeste à trame unique. Pour de plus amples informations, veuillez consulter . Création d'un fichier manifeste d'entrée de trame de nuage de points.

  • Vous spécifiez vos étiquettes, les attributs de la catégorie d'étiquette et du cadre, ainsi que les instructions de l'employé dans un fichier de configuration de la catégorie d'étiquette. Pour savoir comment créer ce fichier, veuillez consulter Créer un fichier de configuration de catégorie d'étiquetage avec les attributs de catégorie d'étiquette et de trame.

  • Vous devez fournir des ARN prédéfinis pour les fonctions Lambda de pré-annotation et de post-annotation (ACS). Ces ARN sont spécifiques à la région AWS que vous utilisez pour créer votre tâche d'étiquetage.

    • Pour trouver l'ARN Lambda de pré-annotation, veuillez consulter PreHumanTaskLambdaArn. Utilisez la région dans laquelle vous créez votre tâche d'étiquetage pour trouver l'ARN correct. Par exemple, si vous créez votre tâche d'étiquetage dans us-east-1, l'ARN sera arn:aws:lambda:us-east-1:432418664414:function:PRE-3DPointCloudObjectDetection.

    • Pour trouver l'ARN Lambda de post-annotation, veuillez consulter AnnotationConsolidationLambdaArn. Utilisez la région dans laquelle vous créez votre tâche d'étiquetage pour trouver l'ARN correct. Par exemple, si vous créez votre tâche d'étiquetage dans us-east-1, l'ARN sera arn:aws:lambda:us-east-1:432418664414:function:ACS-3DPointCloudObjectDetection.

  • Le nombre de collaborateurs spécifié dans NumberOfHumanWorkersPerDataObject doit être 1.

  • L'étiquetage automatisé des données n'est pas pris en charge pour les tâches d'étiquetage de nuage de points 3D. Vous ne devez pas spécifier de valeurs pour les paramètres dans LabelingJobAlgorithmsConfig.

  • Les tâches d'étiquetage de détection d'objets de nuage de points 3D peuvent prendre plusieurs heures. Vous pouvez spécifier une durée plus longue pour ces tâches d'étiquetage dans TaskTimeLimitInSeconds (jusqu'à 7 jours ou 604 800 secondes).

Créer une tâche d'étiquetage de détection d'objets dans un nuage de points 3D, d'ajustement ou de vérification

Vous pouvez créer une tâche d'étiquetage d'ajustement ou de vérification en utilisant la console Ground Truth ou l'API CreateLabelingJob. Pour en savoir plus sur les tâches d'étiquetage d'ajustement et de vérification, et pour apprendre à en créer une, veuillez consulter Vérifier et ajuster les étiquettes.

Lorsque vous créez une tâche d'étiquetage d'ajustement, vos données source pour la tâche d'étiquetage peuvent inclure des étiquettes et des mesures de lacet, de tangage et de roulis provenant d'une tâche d'étiquetage précédente ou d'une source externe. Dans la tâche d'ajustement, le tangage et le roulis sont visualisés dans l'interface utilisateur employé, mais ne peuvent pas être modifiés. Le lacet est réglable.

Ground Truth utilise les angles de Tait-Bryan avec les rotations intrinsèques suivantes pour visualiser le lacet, le tangage et le roulis dans l'interface utilisateur employé. Tout d'abord, la rotation est appliquée au véhicule en fonction de l'axe z (lacet). Ensuite, le véhicule tourné est tourné en fonction de l'axe des y' intrinsèque (tangage). Enfin, le véhicule tourne en fonction de l'axe des x'' intrinsèque (roulis).

Format des données en sortie

Lorsque vous créez une tâche d'étiquetage de détection d'objets de nuage de points 3D, les tâches sont envoyées aux collaborateurs. Lorsque ces employés terminent leurs tâches, les étiquettes sont écrites dans le compartiment Amazon S3 que vous avez spécifié lors de la création de la tâche d'étiquetage. C'est le format des données de sortie qui détermine ce que vous voyez dans votre compartiment Amazon S3 lorsque le statut de votre tâche d'étiquetage (LabelingJobStatus) est Completed.

Si vous êtes un nouvel utilisateur de Ground Truth, veuillez consulter Données de sortie pour en savoir plus sur le format des données de sortie de Ground Truth. Pour de plus amples informations sur le format des données de sortie de détection d'objets de nuage de points 3D, veuillez consulter Fichier de sortie de détection d'objets de nuage de points 3D.