Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Utilisez la vision par ordinateur pour mesurer le rendement agricole avec Amazon Rekognition Custom Labels

Dans le secteur agricole, le problème de l'identification et du comptage de la quantité de fruits sur les arbres joue un rôle important dans l'estimation des récoltes. Le concept de location et de crédit-bail d'un arbre devient populaire, où un propriétaire d'arbre loue l'arbre chaque année avant la récolte en fonction du rendement en fruits estimé. La pratique courante du comptage manuel des fruits est un processus long et laborieux. C'est l'une des tâches les plus difficiles mais les plus importantes pour obtenir de meilleurs résultats dans votre système de gestion des cultures. Cette estimation de la quantité de fruits et de fleurs aide les agriculteurs à prendre de meilleures décisions, non seulement sur les prix de location, mais aussi sur les pratiques de culture et la prévention des maladies des plantes.

C'est là qu'une solution automatisée d'apprentissage automatique (ML) pour la vision par ordinateur (CV) peut aider les agriculteurs. Étiquettes personnalisées Amazon Rekognition est un service de vision par ordinateur entièrement géré qui permet aux développeurs de créer des modèles personnalisés pour classer et identifier des objets dans des images spécifiques et uniques à votre entreprise.

Rekognition Custom Labels ne nécessite aucune expertise préalable en vision par ordinateur. Vous pouvez commencer en téléchargeant simplement des dizaines d'images au lieu de milliers. Si les images sont déjà étiquetées, vous pouvez commencer à former un modèle en quelques clics. Sinon, vous pouvez les étiqueter directement dans la console Rekognition Custom Labels ou utiliser Vérité au sol Amazon SageMaker pour les étiqueter. Rekognition Custom Labels utilise l'apprentissage par transfert pour inspecter automatiquement les données de formation, sélectionner le bon cadre de modèle et l'algorithme, optimiser les hyperparamètres et former le modèle. Lorsque vous êtes satisfait de la précision du modèle, vous pouvez commencer à héberger le modèle formé en un seul clic.

Dans cet article, nous montrons comment vous pouvez créer une solution de bout en bout en utilisant les étiquettes personnalisées Rekognition pour détecter et compter les fruits afin de mesurer le rendement agricole.

Vue d'ensemble de la solution

Nous créons un modèle personnalisé pour détecter les fruits en suivant les étapes suivantes :

  1. Étiquetez un ensemble de données avec des images contenant des fruits en utilisant Vérité au sol Amazon SageMaker.
  2. Créez un projet dans Rekognition Custom Labels.
  3. Importez votre jeu de données étiqueté.
  4. Former le modèle.
  5. Testez le nouveau modèle personnalisé à l'aide du point de terminaison d'API généré automatiquement.

Rekognition Custom Labels vous permet de gérer le processus de formation du modèle ML sur la console Amazon Rekognition, ce qui simplifie le développement de modèle de bout en bout et le processus d'inférence.

Pré-requis

Pour créer un modèle de mesure du rendement agricole, vous devez d'abord préparer un ensemble de données avec lequel entraîner le modèle. Pour cet article, notre jeu de données est composé d'images de fruits. Les images suivantes montrent quelques exemples.

Nous avons puisé nos images dans notre propre jardin. Vous pouvez télécharger les fichiers image à partir du GitHub repo.

Pour cet article, nous n'utilisons qu'une poignée d'images pour présenter le cas d'utilisation du rendement en fruits. Vous pouvez expérimenter davantage avec plus d'images.

Pour préparer votre ensemble de données, procédez comme suit:

  1. Créer un Service de stockage simple Amazon (Amazon S3) seau.
  2. Créez deux dossiers dans ce bucket, appelés raw_data ainsi que le test_data, pour stocker des images à des fins d'étiquetage et de test de modèles.
  3. Selectionnez Téléchargement pour télécharger les images dans leurs dossiers respectifs à partir du référentiel GitHub.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Les images téléchargées ne sont pas étiquetées. Vous étiquetez les images à l'étape suivante.

Étiquetez votre ensemble de données à l'aide de Ground Truth

Pour former le modèle ML, vous avez besoin d'images étiquetées. Ground Truth fournit un processus simple pour étiqueter les images. La tâche d'étiquetage est effectuée par une main-d'œuvre humaine ; dans ce poste, vous créez une main-d'œuvre privée. Vous pouvez utiliser Turc mécanique d'Amazon pour un étiquetage à grande échelle.

Créer une équipe d'étiquetage

Commençons par créer notre effectif d'étiquetage. Effectuez les étapes suivantes :

  1. Sur la console SageMaker, sous Vérité fondamentale dans le volet de navigation, choisissez Étiquetage des effectifs.
  2. Sur le Chef onglet, choisissez Créer une équipe privée.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  3. Pour Nom de l'équipe, entrez un nom pour votre effectif (pour ce poste, labeling-team).
  4. Selectionnez Créer une équipe privée.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  5. Selectionnez Invitez de nouveaux travailleurs.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  6. Dans le Ajouter des travailleurs par adresse e-mail section, entrez les adresses e-mail de vos travailleurs. Pour ce message, entrez votre propre adresse e-mail.
  7. Selectionnez Invitez de nouveaux collaborateurs.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Vous avez créé une main-d'œuvre d'étiquetage, que vous utiliserez à l'étape suivante lors de la création d'une tâche d'étiquetage.

Créer un travail d'étiquetage Ground Truth

Pour optimiser votre travail d'étiquetage, procédez comme suit :

  1. Sur la console SageMaker, sous Vérité fondamentale, choisissez Étiquetage des travaux.
  2. Selectionnez Créer un travail d'étiquetage.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  3. Pour Nom du travail, Entrer fruits-detection.
  4. Sélectionnez Je souhaite spécifier un nom d'attribut d'étiquette différent du nom du travail d'étiquetage.
  5. Pour Nom de l'attribut de l'étiquetteentrer Labels.
  6. Pour Configuration des données d'entrée, sélectionnez Configuration automatisée des données.
  7. Pour Emplacement S3 pour les ensembles de données d'entrée, entrez l'emplacement S3 des images, en utilisant le compartiment que vous avez créé précédemment (s3://{your-bucket-name}/raw-data/images/).
  8. Pour Emplacement S3 pour les jeux de données de sortie, sélectionnez Spécifiez un nouvel emplacement et entrez l'emplacement de sortie des données annotées (s3://{your-bucket-name}/annotated-data/).
  9. Pour Type de données, choisissez Image(s).
  10. Selectionnez Configuration complète des données.
    Cela crée le fichier manifeste d'image et met à jour le chemin d'accès à l'emplacement d'entrée S3. Attendez le message "Connexion de données d'entrée réussie".
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  11. Développer vous Configuration supplémentaire.
  12. Confirmer que Jeu de données complet est sélectionné.
    Ceci est utilisé pour spécifier si vous souhaitez fournir toutes les images au travail d'étiquetage ou un sous-ensemble d'images basé sur des filtres ou un échantillonnage aléatoire.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  13. Pour Catégorie de tâche, choisissez Image(s) car il s'agit d'une tâche d'annotation d'image.
  14. Comme il s'agit d'un cas d'utilisation de détection d'objet, par Sélection de tâche, sélectionnez Boîte englobante.
  15. Laissez les autres options par défaut et choisissez Suivant.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  16. Selectionnez Suivant.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
    Vous spécifiez maintenant vos travailleurs et configurez l'outil d'étiquetage.
  17. Pour Types de travailleurs, sélectionnez Chef.Pour ce post, vous faites appel à une main d'oeuvre interne pour annoter les images. Vous avez également la possibilité de sélectionner une main-d'œuvre contractuelle publique (Amazon Mécanique Turc) ou une main-d'œuvre partenaire (Géré par le fournisseur) en fonction de votre cas d'utilisation.
  18. Pour les équipes privées¸, choisissez l'équipe que vous avez créée précédemment.Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  19. Laissez les autres options par défaut et faites défiler jusqu'à Outil d'étiquetage de boîte englobante.Il est essentiel de fournir des instructions claires ici dans l'outil d'étiquetage pour l'équipe d'étiquetage privé. Ces instructions servent de guide aux annotateurs lors de l'étiquetage. Les bonnes instructions sont concises, nous vous recommandons donc de limiter les instructions verbales ou textuelles à deux phrases et de vous concentrer sur les instructions visuelles. Dans le cas de la classification d'images, nous recommandons de fournir une image étiquetée dans chacune des classes dans le cadre des instructions.
  20. Ajoutez deux libellés : fruit ainsi que le no_fruit.
  21. Entrez des instructions détaillées dans le Champ de description à fournir consignes aux ouvriers. Par exemple: You need to label fruits in the provided image. Please ensure that you select label 'fruit' and draw the box around the fruit just to fit the fruit for better quality of label data. You also need to label other areas which look similar to fruit but are not fruit with label 'no_fruit'.Vous pouvez également éventuellement fournir des exemples d'images d'étiquetage bonnes et mauvaises. Vous devez vous assurer que ces images sont accessibles au public.
  22. Selectionnez Création pour créer la tâche d'étiquetage.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Une fois le travail créé avec succès, l'étape suivante consiste à étiqueter les images d'entrée.

Démarrer le travail d'étiquetage

Une fois que vous avez créé le travail avec succès, le statut du travail est InProgress. Cela signifie que l'emploi est créé et que la main-d'œuvre privée est informée par e-mail de la tâche qui lui est assignée. Étant donné que vous vous êtes assigné la tâche, vous devriez recevoir un e-mail contenant des instructions pour vous connecter au projet Ground Truth Labeling.

Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

  1. Ouvrez l'e-mail et choisissez le lien fourni.
  2. Entrez le nom d'utilisateur et le mot de passe fournis dans l'e-mail.
    Vous devrez peut-être changer le mot de passe temporaire fourni dans l'e-mail par un nouveau mot de passe après la connexion.
  3. Une fois connecté, sélectionnez votre travail et choisissez Commencer à travailler.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
    Vous pouvez utiliser les outils fournis pour effectuer un zoom avant, un zoom arrière, déplacer et dessiner des cadres de délimitation dans les images.
  4. Choisissez votre étiquette (fruit or no_fruit), puis dessinez un cadre de délimitation dans l'image pour l'annoter.
  5. Lorsque vous avez terminé, choisissez Envoyer.

Vous avez maintenant des images correctement étiquetées qui seront utilisées par le modèle ML pour la formation.

Créez votre projet Amazon Rekognition

Pour créer votre projet de mesure du rendement agricole, procédez comme suit :

  1. Sur la console Amazon Rekognition, choisissez Étiquettes personnalisées.
  2. Selectionnez Débuter.
  3. Pour Nom du projet, Entrer fruits_yield.
  4. Selectionnez Créer un projet.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Vous pouvez également créer un projet sur le Projets page. Vous pouvez accéder au Projets page via le volet de navigation. L'étape suivante consiste à fournir des images en entrée.

Importez votre jeu de données

Pour créer votre modèle de mesure du rendement agricole, vous devez d'abord importer un ensemble de données avec lequel entraîner le modèle. Pour cet article, notre ensemble de données est déjà étiqueté en utilisant Ground Truth.

  1. Pour Importer des images, sélectionnez Importer des images étiquetées par SageMaker Ground Truth.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  2. Pour Emplacement du fichier manifeste, entrez l'emplacement du compartiment S3 de votre fichier manifeste (s3://{your-bucket-name}/fruits_image/annotated_data/fruits-labels/manifests/output/output.manifest).
  3. Selectionnez Créer un jeu de données.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Vous pouvez voir votre jeu de données étiqueté.

Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Vous disposez maintenant de votre jeu de données d'entrée pour que le modèle ML puisse commencer à s'entraîner dessus.

Entraînez votre modèle

Après avoir étiqueté vos images, vous êtes prêt à entraîner votre modèle.

  1. Selectionnez Modèle de train.
  2. Pour Choisissez un projet, choisissez votre projet fruits_yield.
  3. Selectionnez Modèle de train.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Attendez que la formation soit terminée. Vous pouvez maintenant commencer à tester les performances de ce modèle formé.

Testez votre modèle

Votre modèle de mesure du rendement agricole est maintenant prêt à l'emploi et devrait être dans le Running Etat. Pour tester le modèle, procédez comme suit :

Etape 1 : Démarrer le modèle

Sur la page des détails de votre modèle, sur le Utiliser le modèle onglet, choisissez Accueil.
Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
Rekognition Custom Labels fournit également les appels d'API pour démarrer, utiliser et arrêter votre modèle.

Etape 2 : Tester le modèle

Lorsque le modèle est dans le Running état, vous pouvez utiliser l'exemple de script de test analyzeImage.py pour compter la quantité de fruits dans une image.

  1. Téléchargez ce script à partir du GitHub repo.
  2. Modifiez ce fichier pour remplacer le paramètre bucket avec le nom de votre compartiment et model avec l'ARN de votre modèle Amazon Rekognition.

Nous utilisons les paramètres photo ainsi que le min_confidence comme entrée pour ce script Python.

Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Vous pouvez exécuter ce script localement en utilisant le Interface de ligne de commande AWS (AWS CLI) ou en utilisant AWS Cloud Shell. Dans notre exemple, nous avons exécuté le script via la console CloudShell. Notez que CloudShell est gratuits.

Assurez-vous d'installer les dépendances requises à l'aide de la commande pip3 install boto3 PILLOW s'il n'est pas déjà installé.
Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

  1. Télécharger le fichier analyzeImage.py à CloudShell à l'aide de Actions menu.
    Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

La capture d'écran suivante montre la sortie, qui a détecté deux fruits dans l'image d'entrée. Nous avons fourni 15.jpeg comme argument photo et 85 comme argument min_confidence valeur.

Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

L'exemple suivant montre l'image 15.jpeg avec deux cadres de délimitation.

Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Vous pouvez exécuter le même script avec d'autres images et expérimenter en modifiant davantage le score de confiance.

Étape 3 : Arrêtez le modèle

Lorsque vous avez terminé, n'oubliez pas d'arrêter le modèle pour éviter d'encourir des frais inutiles. Sur la page des détails de votre modèle, dans l'onglet Utiliser le modèle, choisissez Arrêter.

Nettoyer

Pour éviter des frais inutiles, supprimez les ressources utilisées dans cette procédure pas à pas lorsqu'elles ne sont pas utilisées. Nous devons supprimer le projet Amazon Rekognition et le compartiment S3.

Supprimer le projet Amazon Rekognition

Pour supprimer le projet Amazon Rekognition, procédez comme suit :

  1. Sur la console Amazon Rekognition, choisissez Utiliser des étiquettes personnalisées.
  2. Selectionnez Commencez.
  3. Dans le volet de navigation, choisissez Projets.
  4. Sur le Projets page, sélectionnez le projet que vous souhaitez supprimer.
    1. Selectionnez Supprimer.
      Les Supprimer le projet La boîte de dialogue apparaît.
  5. Si le projet n'a pas de modèles associés :
    1. Entrer effacer pour supprimer le projet.
    2. Selectionnez Supprimer pour supprimer le projet.
  6. Si le projet a des modèles ou des ensembles de données associés :
    1. Entrer effacer pour confirmer que vous souhaitez supprimer le modèle et les jeux de données.
    2. Choisissez soit Supprimer les modèles associés, Supprimer les ensembles de données associésou Supprimer les jeux de données et les modèles associés, selon que le modèle comporte des jeux de données, des modèles ou les deux.

    La suppression du modèle peut prendre un certain temps. Notez que la console Amazon Rekognition ne peut pas supprimer les modèles qui sont en formation ou en cours d'exécution. Réessayez après avoir arrêté tous les modèles en cours d'exécution répertoriés et attendez que les modèles répertoriés en tant que formation soient terminés. Si vous fermez la boîte de dialogue pendant la suppression du modèle, les modèles sont toujours supprimés. Plus tard, vous pourrez supprimer le projet en répétant cette procédure.

  7. Entrer effacer pour confirmer que vous voulez supprimer le projet.
  8. Selectionnez Supprimer pour supprimer le projet.

Supprimer votre compartiment S3

Vous devez d'abord vider le seau, puis le supprimer.

  1. Sur le Amazon S3 console, choisissez Chapeaux cloche.
  2. Sélectionnez le seau que vous souhaitez vider, puis choisissez Vide.
  3. Confirmez que vous souhaitez vider le compartiment en saisissant le nom du compartiment dans le champ de texte, puis choisissez Vide.
  4. Selectionnez Supprimer.
  5. Confirmez que vous souhaitez supprimer le compartiment en saisissant le nom du compartiment dans le champ de texte, puis choisissez Supprimer le bucket.

Conclusion

Dans cet article, nous vous avons montré comment créer un modèle de détection d'objets avec Rekognition Custom Labels. Cette fonctionnalité facilite la formation d'un modèle personnalisé capable de détecter une classe d'objets sans avoir à spécifier d'autres objets ni à perdre en précision dans ses résultats.

Pour plus d'informations sur l'utilisation d'étiquettes personnalisées, voir Qu'est-ce que les étiquettes personnalisées Amazon Rekognition?


À propos des auteurs

Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Dhiraj Thakur est un architecte de solutions avec Amazon Web Services. Il travaille avec les clients et partenaires AWS pour fournir des conseils sur l'adoption, la migration et la stratégie du cloud d'entreprise. Il est passionné de technologie et aime créer et expérimenter dans le domaine de l'analyse et de l'IA / ML.

Utilisez la vision par ordinateur pour mesurer le rendement agricole avec les étiquettes personnalisées Amazon Rekognition PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Samir Goël est un architecte de solutions senior aux Pays-Bas, qui stimule le succès des clients en construisant des prototypes sur des initiatives de pointe. Avant de rejoindre AWS, Sameer a obtenu une maîtrise à Boston, avec une concentration en science des données. Il aime construire et expérimenter des projets AI/ML sur Raspberry Pi. Vous pouvez le retrouver sur LinkedIn.

Horodatage:

Plus de Apprentissage automatique AWS