L'estimation de pose est une technique de vision par ordinateur qui détecte un ensemble de points sur des objets (tels que des personnes ou des véhicules) dans des images ou des vidéos. L'estimation de pose a des applications réelles dans les domaines du sport, de la robotique, de la sécurité, de la réalité augmentée, des médias et du divertissement, des applications médicales, etc. Les modèles d'estimation de pose sont formés sur des images ou des vidéos annotées avec un ensemble cohérent de points (coordonnées) définis par une plate-forme. Pour former des modèles d'estimation de pose précis, vous devez d'abord acquérir un vaste ensemble de données d'images annotées ; de nombreux ensembles de données contiennent des dizaines ou des centaines de milliers d’images annotées et leur création nécessite des ressources importantes. Il est important d'identifier et de prévenir les erreurs d'étiquetage, car les performances des modèles d'estimation de pose sont fortement influencées par la qualité et le volume des données étiquetées.
Dans cet article, nous montrons comment utiliser un flux de travail d'étiquetage personnalisé dans Vérité au sol Amazon SageMaker spécialement conçu pour l'étiquetage des points clés. Ce flux de travail personnalisé permet de rationaliser le processus d'étiquetage et de minimiser les erreurs d'étiquetage, réduisant ainsi le coût d'obtention d'étiquettes de pose de haute qualité.
Importance de données de haute qualité et réduction des erreurs d’étiquetage
Des données de haute qualité sont fondamentales pour former des modèles d’estimation de pose robustes et fiables. L'exactitude de ces modèles est directement liée à l'exactitude et à la précision des étiquettes attribuées à chaque point clé de pose, qui, à son tour, dépend de l'efficacité du processus d'annotation. De plus, le fait de disposer d'un volume substantiel de données diverses et bien annotées garantit que le modèle peut apprendre un large éventail de poses, de variations et de scénarios, conduisant à une généralisation et des performances améliorées dans différentes applications du monde réel. L'acquisition de ces grands ensembles de données annotés implique des annotateurs humains qui étiquetent soigneusement les images avec des informations sur la pose. Lors de l'étiquetage des points d'intérêt dans l'image, il est utile de voir la structure squelettique de l'objet lors de l'étiquetage afin de fournir un guidage visuel à l'annotateur. Ceci est utile pour identifier les erreurs d'étiquetage avant qu'elles ne soient incorporées dans l'ensemble de données, comme les échanges gauche-droite ou les erreurs d'étiquetage (comme marquer un pied comme une épaule). Par exemple, une erreur d'étiquetage comme l'échange gauche-droite effectué dans l'exemple suivant peut facilement être identifiée par le croisement des lignes du squelette et la non-concordance des couleurs. Ces repères visuels aident les étiqueteurs à reconnaître les erreurs et donneront lieu à un ensemble d'étiquettes plus propre.
En raison de la nature manuelle de l’étiquetage, l’obtention d’ensembles de données étiquetés volumineux et précis peut s’avérer coûteuse, et encore plus avec un système d’étiquetage inefficace. Par conséquent, l’efficacité et la précision de l’étiquetage sont essentielles lors de la conception de votre flux de travail d’étiquetage. Dans cet article, nous montrons comment utiliser un flux de travail d'étiquetage SageMaker Ground Truth personnalisé pour annoter rapidement et précisément les images, réduisant ainsi la charge de développement de grands ensembles de données pour les flux de travail d'estimation de pose.
Présentation de la solution
Cette solution fournit un portail Web en ligne sur lequel le personnel d'étiquetage peut utiliser un navigateur Web pour se connecter, accéder aux tâches d'étiquetage et annoter des images à l'aide de l'interface utilisateur (UI) crowd-2d-skeleton, une interface utilisateur personnalisée conçue pour l'étiquetage de points clés et de poses à l'aide de Vérité terrain de SageMaker. Les annotations ou étiquettes créées par le personnel d'étiquetage sont ensuite exportées vers un Service de stockage simple Amazon (Amazon S3), où ils peuvent être utilisés pour des processus en aval tels que la formation de modèles de vision par ordinateur d'apprentissage profond. Cette solution vous explique comment configurer et déployer les composants nécessaires pour créer un portail Web ainsi que comment créer des tâches d'étiquetage pour ce flux de travail d'étiquetage.
Ce qui suit est un schéma de l’architecture globale.
Cette architecture est composée de plusieurs composants clés, que nous expliquons chacun plus en détail dans les sections suivantes. Cette architecture fournit au personnel d'étiquetage un portail Web en ligne hébergé par SageMaker Ground Truth. Ce portail permet à chaque étiqueteur de se connecter et de voir ses travaux d'étiquetage. Une fois connecté, l'étiqueteur peut sélectionner une tâche d'étiquetage et commencer à annoter les images à l'aide de l'interface utilisateur personnalisée hébergée par Amazon CloudFront. Nous utilisons AWS Lambda fonctions de traitement des données pré-annotation et post-annotation.
La capture d'écran suivante est un exemple de l'interface utilisateur.
L'étiqueteur peut marquer des points clés spécifiques sur l'image à l'aide de l'interface utilisateur. Les lignes entre les points clés seront automatiquement tracées pour l'utilisateur en fonction d'une définition de squelette utilisée par l'interface utilisateur. L'interface utilisateur permet de nombreuses personnalisations, telles que les suivantes :
- Noms de points clés personnalisés
- Couleurs des points clés configurables
- Couleurs de ligne de plate-forme configurables
- Structures de squelette et de plate-forme configurables
Chacune de ces fonctionnalités est ciblée pour améliorer la facilité et la flexibilité de l’étiquetage. Des détails spécifiques sur la personnalisation de l'interface utilisateur peuvent être trouvés dans le GitHub repo et sont résumés plus loin dans cet article. Notez que dans cet article, nous utilisons l'estimation de la pose humaine comme tâche de base, mais vous pouvez également l'étendre à l'étiquetage de la pose d'un objet avec une plate-forme prédéfinie pour d'autres objets, tels que des animaux ou des véhicules. Dans l'exemple suivant, nous montrons comment cela peut être appliqué pour étiqueter les points d'un camion fourgon.
La vérité fondamentale de SageMaker
Dans cette solution, nous utilisons SageMaker Ground Truth pour fournir au personnel d'étiquetage un portail en ligne et un moyen de gérer les tâches d'étiquetage. Cet article suppose que vous connaissez SageMaker Ground Truth. Pour plus d'informations, reportez-vous à Vérité au sol Amazon SageMaker.
Distribution CloudFront
Pour cette solution, l’interface utilisateur d’étiquetage nécessite un composant JavaScript personnalisé appelé composant crowd-2d-skeleton. Ce composant peut être trouvé sur GitHub dans le cadre des initiatives open source d'Amazon. La distribution CloudFront sera utilisée pour héberger le foule-2d-squelette.js, qui est nécessaire à l'interface utilisateur de SageMaker Ground Truth. La distribution CloudFront se verra attribuer une identité d'accès à l'origine, qui permettra à la distribution CloudFront d'accéder au crowd-2d-skeleton.js résidant dans le compartiment S3. Le compartiment S3 restera privé et aucun autre objet de ce compartiment ne sera disponible via la distribution CloudFront en raison des restrictions que nous imposons sur l'identité d'accès à l'origine via une politique de compartiment. Il s’agit d’une pratique recommandée pour suivre le principe du moindre privilège.
Bucket Amazon S3
Nous utilisons le compartiment S3 pour stocker les fichiers manifestes d'entrée et de sortie de SageMaker Ground Truth, le modèle d'interface utilisateur personnalisé, les images pour les tâches d'étiquetage et le code JavaScript nécessaire à l'interface utilisateur personnalisée. Ce bucket sera privé et non accessible au public. Le compartiment aura également une politique de compartiment qui restreint la distribution CloudFront à l'accès uniquement au code JavaScript nécessaire à l'interface utilisateur. Cela empêche la distribution CloudFront d'héberger tout autre objet dans le compartiment S3.
Fonction Lambda de pré-annotation
Les tâches d'étiquetage SageMaker Ground Truth utilisent généralement un fichier manifeste d'entrée, au format JSON Lines. Ce fichier manifeste d'entrée contient des métadonnées pour une tâche d'étiquetage, fait office de référence aux données qui doivent être étiquetées et permet de configurer la manière dont les données doivent être présentées aux annotateurs. La fonction Lambda de pré-annotation traite les éléments du fichier manifeste d'entrée avant que les données du manifeste ne soient entrées dans le modèle d'interface utilisateur personnalisé. C'est ici que tout formatage ou modification spéciale des éléments peut être effectué avant de présenter les données aux annotateurs dans l'interface utilisateur. Pour plus d'informations sur les fonctions Lambda de pré-annotation, consultez Pré-annotation Lambda.
Fonction Lambda post-annotation
Semblable à la fonction Lambda de pré-annotation, la fonction de post-annotation gère le traitement des données supplémentaire que vous souhaiterez peut-être effectuer une fois que tous les étiqueteurs ont terminé l'étiquetage, mais avant d'écrire les résultats finaux de sortie de l'annotation. Ce traitement est effectué par une fonction Lambda, qui est responsable du formatage des données pour les résultats de la tâche d'étiquetage. Dans cette solution, nous l'utilisons simplement pour renvoyer les données dans le format de sortie souhaité. Pour plus d'informations sur les fonctions Lambda post-annotation, consultez Post-annotation Lambda.
Rôle de la fonction Lambda post-annotation
Nous utilisons un Gestion des identités et des accès AWS (IAM) pour donner à la fonction Lambda post-annotation l'accès au compartiment S3. Ceci est nécessaire pour lire les résultats de l'annotation et apporter des modifications avant d'écrire les résultats finaux dans le fichier manifeste de sortie.
Rôle de SageMaker Ground Truth
Nous utilisons ce rôle IAM pour donner à la tâche d'étiquetage SageMaker Ground Truth la possibilité d'appeler les fonctions Lambda et de lire les images, les fichiers manifestes et le modèle d'interface utilisateur personnalisé dans le compartiment S3.
Pré-requis
Pour cette procédure pas à pas, vous devez disposer des prérequis suivants:
Pour cette solution, nous utilisons le AWS CDK pour déployer l'architecture. Ensuite, nous créons un exemple de tâche d'étiquetage, utilisons le portail d'annotation pour étiqueter les images dans la tâche d'étiquetage et examinons les résultats de l'étiquetage.
Créer la pile AWS CDK
Une fois toutes les conditions préalables remplies, vous êtes prêt à déployer la solution.
Configurez vos ressources
Effectuez les étapes suivantes pour configurer vos ressources :
- Téléchargez l'exemple de pile à partir du GitHub repo.
- Utilisez la commande cd pour accéder au référentiel.
- Créez votre environnement Python et installez les packages requis (voir le référentiel README.md pour plus de détails).
- Avec votre environnement Python activé, exécutez la commande suivante :
- Exécutez la commande suivante pour déployer le AWS CDK :
- Exécutez la commande suivante pour exécuter le script de post-déploiement :
Créer une tâche d'étiquetage
Après avoir configuré vos ressources, vous êtes prêt à créer une tâche d'étiquetage. Pour les besoins de cet article, nous créons un travail d'étiquetage en utilisant les exemples de scripts et d'images fournis dans le référentiel.
- CD dans le
scripts
répertoire dans le référentiel. - Téléchargez les exemples d'images sur Internet en exécutant le code suivant :
Ce script télécharge un ensemble de 10 images, que nous utilisons dans notre exemple de travail d'étiquetage. Nous examinons comment utiliser vos propres données d'entrée personnalisées plus loin dans cet article.
- Créez une tâche d'étiquetage en exécutant le code suivant :
Ce script prend comme argument un ARN de main-d'œuvre privée SageMaker Ground Truth, qui devrait être l'ARN d'une main-d'œuvre que vous avez dans le même compte dans lequel vous avez déployé cette architecture. Le script créera le fichier manifeste d'entrée pour notre tâche d'étiquetage, le téléchargera sur Amazon S3 et créera une tâche d'étiquetage personnalisée SageMaker Ground Truth. Nous approfondirons les détails de ce script plus loin dans cet article.
Étiqueter le jeu de données
Après avoir lancé l'exemple de tâche d'étiquetage, il apparaîtra sur la console SageMaker ainsi que sur le portail du personnel.
Dans le portail du personnel, sélectionnez la tâche d'étiquetage et choisissez Commencer à travailler.
Une image de l’exemple d’ensemble de données vous sera présentée. À ce stade, vous pouvez utiliser l’interface utilisateur personnalisée crowd-2d-skeleton pour annoter les images. Vous pouvez vous familiariser avec l'interface utilisateur de crowd-2d-skeleton en vous référant à Présentation de l'interface utilisateur. Nous utilisons la définition du rig du Défi de l'ensemble de données de détection de points clés COCO comme la plate-forme de pose humaine. Pour réitérer, vous pouvez personnaliser cela sans notre composant d'interface utilisateur personnalisé pour supprimer ou ajouter des points en fonction de vos besoins.
Lorsque vous avez fini d'annoter une image, choisissez Envoyer. Cela vous amènera à l'image suivante de l'ensemble de données jusqu'à ce que toutes les images soient étiquetées.
Accéder aux résultats de labellisation
Lorsque vous avez fini d'étiqueter toutes les images de la tâche d'étiquetage, SageMaker Ground Truth invoquera la fonction Lambda post-annotation et produira un fichier output.manifest contenant toutes les annotations. Ce output.manifest
sera stocké dans le compartiment S3. Dans notre cas, l'emplacement du manifeste de sortie doit suivre le chemin de l'URI S3 s3://<bucket name> /labeling_jobs/output/<labeling job name>/manifests/output/output.manifest
. Le fichier output.manifest est un fichier JSON Lines, où chaque ligne correspond à une seule image et à ses annotations provenant de la main-d'œuvre d'étiquetage. Chaque élément JSON Lines est un objet JSON avec de nombreux champs. Le domaine qui nous intéresse s'appelle label-results
. La valeur de ce champ est un objet contenant les champs suivants :
- dataset_object_id – L’ID ou l’index de l’élément du manifeste d’entrée
- data_object_s3_uri – L'URI Amazon S3 de l'image
- nom_fichier_image – Le nom du fichier de l'image
- image_s3_location – L'URL Amazon S3 de l'image
- annotations_originales – Les annotations originales (définies et utilisées uniquement si vous utilisez un workflow de pré-annotation)
- mises à jour_annotations – Les annotations pour l’image
- id_travailleur – L’ouvrier qui a fait les annotations
- no_changes_needed – Si la case à cocher Aucune modification nécessaire a été cochée
- was_modified – Si les données d'annotation diffèrent des données d'entrée d'origine
- total_time_in_seconds – Le temps qu’il a fallu à l’ouvrier pour annoter l’image
Avec ces champs, vous pouvez accéder aux résultats de vos annotations pour chaque image et effectuer des calculs comme le temps moyen pour étiqueter une image.
Créez vos propres tâches d'étiquetage
Maintenant que nous avons créé un exemple de tâche d'étiquetage et que vous comprenez le processus global, nous vous expliquons le code responsable de la création du fichier manifeste et du lancement de la tâche d'étiquetage. Nous nous concentrons sur les parties clés du script que vous souhaiterez peut-être modifier pour lancer vos propres tâches d'étiquetage.
Nous couvrons des extraits de code du create_example_labeling_job.py
script situé dans le GitHub référentiel. Le script commence par configurer les variables qui seront utilisées ultérieurement dans le script. Certaines variables sont codées en dur pour plus de simplicité, tandis que d'autres, qui dépendent de la pile, seront importées dynamiquement au moment de l'exécution en récupérant les valeurs créées à partir de notre pile AWS CDK.
La première section clé de ce script est la création du fichier manifeste. Rappelez-vous que le fichier manifeste est un fichier de lignes JSON qui contient les détails d'une tâche d'étiquetage SageMaker Ground Truth. Chaque objet JSON Lines représente un élément (par exemple, une image) qui doit être étiqueté. Pour ce workflow, l'objet doit contenir les champs suivants :
- source-réf – L'URI Amazon S3 de l'image que vous souhaitez étiqueter.
- annotations – Une liste d'objets d'annotation, utilisée pour les flux de travail de pré-annotation. Voir le documentation du squelette crowd-2d pour plus de détails sur les valeurs attendues.
Le script crée une ligne manifeste pour chaque image du répertoire d'images à l'aide de la section de code suivante :
Si vous souhaitez utiliser des images différentes ou pointer vers un répertoire d'images différent, vous pouvez modifier cette section du code. De plus, si vous utilisez un workflow de pré-annotation, vous pouvez mettre à jour le tableau d'annotations avec une chaîne JSON composée du tableau et de tous ses objets d'annotation. Les détails du format de ce tableau sont documentés dans le documentation du squelette crowd-2d.
Une fois les éléments de campagne du manifeste créés, vous pouvez créer et télécharger le fichier manifeste dans le compartiment S3 que vous avez créé précédemment :
Maintenant que vous avez créé un fichier manifeste contenant les images que vous souhaitez étiqueter, vous pouvez créer une tâche d'étiquetage. Vous pouvez créer la tâche d'étiquetage par programmation à l'aide de l'outil AWS SDK pour Python (Boto3). Le code pour créer une tâche d'étiquetage est le suivant :
Les aspects de ce code que vous souhaiterez peut-être modifier sont LabelingJobName
, TaskTitle
et une TaskDescription
L’ LabelingJobName
est le nom unique de la tâche d'étiquetage que SageMaker utilisera pour référencer votre tâche. C'est également le nom qui apparaîtra sur la console SageMaker. TaskTitle
a un objectif similaire, mais n'a pas besoin d'être unique et sera le nom du poste qui apparaîtra sur le portail de la main-d'œuvre. Vous souhaiterez peut-être les rendre plus spécifiques à ce que vous étiquetez ou à l'objectif du travail d'étiquetage. Enfin, nous avons le TaskDescription
champ. Ce champ apparaît dans le portail de la main-d'œuvre pour fournir un contexte supplémentaire aux étiqueteurs quant à la nature de la tâche, comme des instructions et des conseils pour la tâche. Pour plus d'informations sur ces champs ainsi que sur les autres, reportez-vous au documentation create_labling_job.
Apporter des ajustements à l'interface utilisateur
Dans cette section, nous passons en revue certaines des façons dont vous pouvez personnaliser l'interface utilisateur. Voici une liste des personnalisations potentielles les plus courantes de l'interface utilisateur afin de l'ajuster à votre tâche de modélisation :
- Vous pouvez définir quels points clés peuvent être étiquetés. Cela inclut le nom du point clé et sa couleur.
- Vous pouvez modifier la structure du squelette (quels points clés sont connectés).
- Vous pouvez modifier les couleurs des lignes pour des lignes spécifiques entre des points clés spécifiques.
Toutes ces personnalisations de l'interface utilisateur sont configurables via des arguments transmis au composant crowd-2d-skeleton, qui est le composant JavaScript utilisé dans ce document. modèle de flux de travail personnalisé. Dans ce modèle, vous trouverez l'utilisation du composant crowd-2d-skeleton. Une version simplifiée est présentée dans le code suivant :
Dans l'exemple de code précédent, vous pouvez voir les attributs suivants sur le composant : imgSrc
, keypointClasses
, skeletonRig
, skeletonBoundingBox
et une intialValues
. Nous décrivons l'objectif de chaque attribut dans les sections suivantes, mais la personnalisation de l'interface utilisateur est aussi simple que de modifier les valeurs de ces attributs, d'enregistrer le modèle et de réexécuter le modèle. post_deployment_script.py
nous avons utilisé précédemment.
Attribut imgSrc
La imgSrc
L'attribut contrôle quelle image afficher dans l'interface utilisateur lors de l'étiquetage. Habituellement, une image différente est utilisée pour chaque élément de campagne du manifeste. Cet attribut est donc souvent renseigné dynamiquement à l'aide de l'attribut intégré. Liquide langage de modèles. Vous pouvez voir dans l'exemple de code précédent que la valeur de l'attribut est définie sur {{ task.input.image_s3_uri | grant_read_access }}
, qui est une variable de modèle Liquid qui sera remplacée par la variable réelle image_s3_uri
valeur lorsque le modèle est rendu. Le processus de rendu démarre lorsque l'utilisateur ouvre une image pour annotation. Ce processus récupère un élément de ligne du fichier manifeste d'entrée et l'envoie à la fonction Lambda de pré-annotation en tant que event.dataObject
. La fonction de pré-annotation prend les informations dont elle a besoin à partir de l'élément de campagne et renvoie un taskInput
dictionnaire, qui est ensuite transmis au moteur de rendu Liquid, qui remplacera toutes les variables Liquid de votre modèle. Par exemple, disons que vous disposez d'un fichier manifeste contenant la ligne suivante :
Ces données seraient transmises à la fonction de pré-annotation. Le code suivant montre comment la fonction extrait les valeurs de l'objet événement :
L'objet renvoyé par la fonction dans ce cas ressemblerait au code suivant :
Les données renvoyées par la fonction sont ensuite disponibles pour le moteur de modèle Liquid, qui remplace les valeurs du modèle dans le modèle par les valeurs de données renvoyées par la fonction. Le résultat serait quelque chose comme le code suivant :
Attribut keypointClasses
La keypointClasses
L'attribut définit quels points clés apparaîtront dans l'interface utilisateur et seront utilisés par les annotateurs. Cet attribut prend une chaîne JSON contenant une liste d'objets. Chaque objet représente un point clé. Chaque objet point clé doit contenir les champs suivants :
- id – Une valeur unique pour identifier ce point clé.
- Couleur – La couleur du point clé représenté sous forme de couleur hexadécimale HTML.
- étiquette – Le nom ou la classe de point clé.
- x – Cet attribut facultatif n’est nécessaire que si vous souhaitez utiliser la fonctionnalité de dessin de squelette dans l’interface utilisateur. La valeur de cet attribut est la position x du point clé par rapport au cadre de délimitation du squelette. Cette valeur est généralement obtenue par le Outil Créateur de plate-forme squelette. Si vous effectuez des annotations de points clés et que vous n'avez pas besoin de dessiner un squelette entier à la fois, vous pouvez définir cette valeur sur 0.
- y – Cet attribut facultatif est similaire à x, mais pour la dimension verticale.
Pour plus d'informations sur le keypointClasses
attribut, voir l'attribut Documentation keypointClasses.
Attribut skeletonRig
La skeletonRig
L'attribut contrôle quels points clés doivent avoir des lignes tracées entre eux. Cet attribut prend une chaîne JSON contenant une liste de paires d'étiquettes de points clés. Chaque paire indique à l’interface utilisateur les points clés entre lesquels tracer des lignes. Par exemple, '[["left_ankle","left_knee"],["left_knee","left_hip"]]'
informe l'interface utilisateur de tracer des lignes entre "left_ankle"
ainsi que "left_knee"
et tracer des lignes entre "left_knee"
ainsi que "left_hip"
. Ceci peut être généré par le Outil Créateur de plate-forme squelette.
Attribut skeletonBoundingBox
La skeletonBoundingBox
L'attribut est facultatif et nécessaire uniquement si vous souhaitez utiliser la fonctionnalité de dessin de squelette dans l'interface utilisateur. La fonctionnalité de dessin de squelettes permet d'annoter des squelettes entiers avec une seule action d'annotation. Nous ne couvrons pas cette fonctionnalité dans cet article. La valeur de cet attribut correspond aux dimensions du cadre de délimitation du squelette. Cette valeur est généralement obtenue par le Outil Créateur de plate-forme squelette. Si vous effectuez des annotations de points clés et que vous n'avez pas besoin de dessiner un squelette entier à la fois, vous pouvez définir cette valeur sur null. Il est recommandé d'utiliser l'outil Skeleton Rig Creator pour obtenir cette valeur.
Attribut initialValues
La initialValues
L'attribut est utilisé pour pré-remplir l'interface utilisateur avec des annotations obtenues à partir d'un autre processus (comme une autre tâche d'étiquetage ou un modèle d'apprentissage automatique). Ceci est utile lors de travaux d’ajustement ou de révision. Les données de ce champ sont généralement renseignées dynamiquement dans la même description pour le imgSrc
attribut. Plus de détails peuvent être trouvés dans le documentation du squelette crowd-2d.
Nettoyer
Pour éviter d'encourir des frais futurs, vous devez supprimer les objets de votre compartiment S3 et supprimer votre pile AWS CDK. Vous pouvez supprimer vos objets S3 via la console Amazon SageMaker ou le Interface de ligne de commande AWS (AWS CLI). Après avoir supprimé tous les objets S3 du compartiment, vous pouvez détruire le AWS CDK en exécutant le code suivant :
Cela supprimera les ressources que vous avez créées précédemment.
Considérations
Des étapes supplémentaires peuvent être nécessaires pour produire votre flux de travail. Voici quelques considérations en fonction du profil de risque de votre organisation :
- Ajout de la journalisation des accès et des applications
- Ajout d'un pare-feu d'application Web (WAF)
- Ajuster les autorisations IAM pour suivre le moindre privilège
Conclusion
Dans cet article, nous avons partagé l'importance de l'efficacité et de la précision de l'étiquetage dans la création d'ensembles de données d'estimation de pose. Pour vous aider avec ces deux éléments, nous avons montré comment vous pouvez utiliser SageMaker Ground Truth pour créer des flux de travail d'étiquetage personnalisés afin de prendre en charge les tâches d'étiquetage de pose basées sur un squelette, dans le but d'améliorer l'efficacité et la précision pendant le processus d'étiquetage. Nous avons montré comment vous pouvez étendre davantage le code et les exemples à diverses exigences d'étiquetage d'estimation de pose personnalisée.
Nous vous encourageons à utiliser cette solution pour vos tâches d'étiquetage et à contacter AWS pour obtenir de l'aide ou des demandes de renseignements liées aux flux de travail d'étiquetage personnalisés.
À propos des auteurs
Arthur Putnam est un Data Scientist Full-Stack dans les services professionnels AWS. L'expertise d'Arthur est centrée sur le développement et l'intégration de technologies front-end et back-end dans les systèmes d'IA. En dehors du travail, Arthur aime explorer les dernières avancées technologiques, passer du temps avec sa famille et profiter du plein air.
Ben Fenker est un scientifique principal des données dans les services professionnels AWS et a aidé des clients à créer et à déployer des solutions ML dans des secteurs allant du sport aux soins de santé en passant par la fabrication. Il a un doctorat. en physique de la Texas A&M University et 6 ans d'expérience dans l'industrie. Ben aime le baseball, lire et élever ses enfants.
Jarvis Lee est un scientifique des données senior chez AWS Professional Services. Il travaille chez AWS depuis plus de six ans, travaillant avec des clients sur des problèmes d'apprentissage automatique et de vision par ordinateur. En dehors du travail, il aime faire du vélo.
- Contenu propulsé par le référencement et distribution de relations publiques. Soyez amplifié aujourd'hui.
- PlatoData.Network Ai générative verticale. Autonomisez-vous. Accéder ici.
- PlatoAiStream. Intelligence Web3. Connaissance Amplifiée. Accéder ici.
- PlatonESG. Carbone, Technologie propre, Énergie, Environnement, Solaire, La gestion des déchets. Accéder ici.
- PlatoHealth. Veille biotechnologique et essais cliniques. Accéder ici.
- La source: https://aws.amazon.com/blogs/machine-learning/skeleton-based-pose-annotation-labeling-using-amazon-sagemaker-ground-truth/
- :possède
- :est
- :ne pas
- :où
- $UP
- 1
- 10
- 100
- 13
- 15%
- 17
- 2D
- 31
- 320
- 7
- 8
- 9
- a
- capacité
- Capable
- accès
- accessible
- Compte
- précision
- Avec cette connaissance vient le pouvoir de prendre
- avec précision
- acquérir
- acquisition
- à travers
- Action
- actes
- présenter
- ajouter
- Supplémentaire
- En outre
- Le réglage
- ajustements
- progrès
- Après
- AI
- Systèmes d'IA
- Visée
- Tous
- permettre
- permet
- aussi
- Amazon
- Amazon Sage Maker
- Vérité au sol Amazon SageMaker
- Amazon Web Services
- an
- ainsi que
- animaux
- Une autre
- tous
- apparaître
- apparaît
- Application
- applications
- appliqué
- architecture
- SONT
- argument
- arguments
- autour
- tableau
- Arthur
- AS
- aspects
- attribué
- Assistance
- suppose
- At
- attributs
- augmentée
- Réalité Augmentée
- automatiquement
- disponibles
- moyen
- éviter
- AWS
- Services professionnels AWS
- Back-end
- Baseball
- basé
- Baseline
- BE
- car
- était
- before
- commencer
- va
- bien
- jusqu'à XNUMX fois
- tous les deux
- Box
- vaste
- navigateur
- construire
- Développement
- intégré
- fardeau
- mais
- by
- calculs
- appelé
- CAN
- prudemment
- maisons
- CD
- centré
- Change
- Modifications
- en changeant
- des charges
- vérifier
- Selectionnez
- classe
- plus propre
- cli
- client
- code
- Couleur
- vient
- Commun
- complet
- composant
- composants électriques
- Composé
- ordinateur
- Vision par ordinateur
- connecté
- considérations
- cohérent
- Qui consiste
- Console
- contiennent
- contient
- contexte
- contrôles
- correspond
- Prix
- couverture
- engendrent
- créée
- crée des
- La création
- création
- créateur
- critique
- passage
- foule
- Customiser
- Construit sur mesure
- Clients
- personnalisation
- personnaliser
- données
- informatique
- Data Scientist
- ensembles de données
- datetime
- profond
- l'apprentissage en profondeur
- profond
- Vous permet de définir
- défini
- Définit
- définition
- démontrer
- dépendant
- Selon
- dépend
- déployer
- déployé
- décrire
- la description
- un
- conception
- voulu
- détruire
- détail
- détails
- Détection
- développement
- diagramme
- différent
- Dimension
- dimensions
- directement
- annuaire
- distribution
- plongeon
- plusieurs
- do
- Ne fait pas
- faire
- fait
- Ne pas
- téléchargements
- dessiner
- tiré
- deux
- pendant
- dynamiquement
- chacun
- Plus tôt
- facilité
- même
- efficacité
- efficace
- encourager
- s'engager
- Moteur
- de renforcer
- jouissant
- Assure
- Divertissement
- Tout
- Environment
- erreur
- Erreurs
- Pourtant, la
- événement
- examiner
- exemple
- exemples
- Développer vous
- attendu
- d'experience
- nous a permis de concevoir
- Expliquer
- Explorer
- étendre
- supplémentaire
- Extraits
- familier
- se familiariser
- famille
- Fonctionnalité
- Fonctionnalités:
- champ
- Des champs
- Déposez votre dernière attestation
- Fichiers
- finale
- Trouvez
- pare-feu
- Prénom
- Flexibilité
- Focus
- suivre
- Abonnement
- suit
- Pied
- Pour
- le format
- trouvé
- De
- fonction
- fonctions
- fondamental
- plus
- avenir
- généré
- obtenez
- gif
- GitHub
- Donner
- Go
- Sol
- l'orientation
- Poignées
- Vous avez
- ayant
- he
- la médecine
- fortement
- vous aider
- a aidé
- utile
- aide
- ici
- HEX
- de haute qualité
- sa
- hôte
- organisé
- hébergement
- Comment
- How To
- HTML
- http
- HTTPS
- humain
- Des centaines
- ID
- identifié
- identifier
- identifier
- Identite
- if
- image
- satellite
- importance
- important
- améliorer
- amélioré
- in
- inclut
- Incorporée
- indice
- secteurs
- industrie
- inefficace
- influencé
- d'information
- informe
- les initiatives
- contribution
- Messages
- installer
- Des instructions
- Intégration
- intérêt
- intéressé
- Interfaces
- Internet
- développement
- implique
- IT
- articles
- SES
- JavaScript
- Emploi
- Emplois
- jpg
- json
- ACTIVITES
- Détection des points clés
- enfants
- Libellé
- l'étiquetage
- Etiquettes
- langue
- gros
- enfin
- plus tard
- Nouveautés
- lancer
- lancé
- lancement
- conduisant
- APPRENTISSAGE
- apprentissage
- au
- Allons-y
- comme
- Gamme
- lignes
- Liquide
- Liste
- situé
- emplacement
- enregistrer
- Connecté
- Style
- ressembler
- click
- machine learning
- LES PLANTES
- a prendre une
- gérer
- Manuel
- fabrication
- de nombreuses
- marque
- des
- Mai..
- peut être
- Médias
- médical
- Applications médicales
- Métadonnées
- minimiser
- erreurs
- ML
- modèle
- modélisation statistique
- numériques jumeaux (digital twin models)
- Modifications
- modifier
- PLUS
- (en fait, presque toutes)
- prénom
- Nature
- nécessaire
- Besoin
- nécessaire
- Besoins
- next
- aucune
- noter
- maintenant
- objet
- objets
- obtenu
- obtention
- of
- souvent
- on
- une fois
- ONE
- en ligne
- uniquement
- ouvert
- open source
- ouvre
- or
- de commander
- organisations
- origine
- original
- OS
- Autre
- Autres
- nos
- ande
- l'extérieur
- sortie
- au contrôle
- plus de
- global
- propre
- Forfaits
- paire
- paires
- partie
- les pièces
- passé
- chemin
- Personnes
- performant
- autorisations
- Physique
- Place
- Platon
- Intelligence des données Platon
- PlatonDonnées
- Point
- des notes bonus
- politique
- peuplé
- Portail
- poser
- Estimation de la pose
- pose
- position
- Post
- défaillances
- pratique
- précédant
- La précision
- conditions préalables
- présenté
- en présentant
- empêcher
- empêche
- précédent
- précédemment
- principe
- Privé
- d'ouvrabilité
- processus
- les process
- traitement
- produire
- professionels
- Profil
- fournir
- à condition de
- fournit
- public
- but
- des fins
- Python
- qualité
- vite.
- élevage
- gamme
- allant
- Lire
- en cours
- solutions
- monde réel
- Réalité
- reconnaître
- recommandé
- réduire
- reportez-vous
- référence
- en relation
- relatif
- fiable
- rester
- supprimez
- rendu
- rendu
- remplacer
- remplacé
- dépôt
- représenté
- représente
- conditions
- Exigences
- a besoin
- Resources
- réponse
- responsables
- restrictions
- résultat
- Résultats
- retourner
- Retours
- Avis
- équitation
- plate-forme
- Analyse
- robotique
- robuste
- Rôle
- Courir
- pour le running
- d'exécution
- sagemaker
- même
- échantillon
- économie
- dire
- scénarios
- Scientifique
- scénario
- scripts
- Sdk
- Section
- les sections
- sécurité
- sur le lien
- Sélectionner
- envoie
- supérieur
- sert
- Services
- set
- mise
- plusieurs
- commun
- devrait
- montrer
- montré
- montré
- Spectacles
- significative
- similaires
- étapes
- simplicité
- simplifié
- simplement
- unique
- SIX
- So
- sur mesure
- Solutions
- quelques
- quelque chose
- Identifier
- spécial
- groupe de neurones
- spécifiquement
- Dépenses
- Sports
- empiler
- départs
- Étapes
- storage
- Boutique
- stockée
- simple
- rationaliser
- Chaîne
- structure
- Ces
- tel
- Support
- échange
- Swaps
- combustion propre
- Système
- Prenez
- prend
- des campagnes marketing ciblées,
- Tâche
- tâches
- technique
- Les technologies
- Technologie
- modèle
- dizaines
- Texas
- qui
- La
- les informations
- La ligne
- leur
- Les
- puis
- ainsi
- donc
- Ces
- l'ont
- this
- milliers
- Avec
- Attaché
- fiable
- à
- a
- outil
- Train
- qualifié
- Formation
- déclenché
- camion
- oui
- Vérité
- TOUR
- typiquement
- ui
- comprendre
- expérience unique et authentique
- université
- jusqu'à
- Mises à jour
- Utilisation
- utilisé
- d'utiliser
- incontournable
- Utilisateur
- Interface utilisateur
- Usages
- en utilisant
- d'habitude
- Plus-value
- Valeurs
- variable
- variations
- divers
- Véhicules
- version
- vertical
- via
- Vidéos
- vision
- visuel
- le volume
- W
- marcher
- marche
- walkthrough
- souhaitez
- était
- Façon..
- façons
- we
- web
- application Web
- navigateur web
- services Web
- WELL
- Quoi
- quand
- Les
- que
- qui
- tout en
- WHO
- sera
- souhaiter
- comprenant
- dans les
- sans
- activités principales
- travailleur
- workflow
- workflows
- Nos inspecteurs
- de travail
- pourra
- écriture
- X
- années
- Vous n'avez
- Votre
- vous-même
- zéphyrnet