Reconnaissance des produits sur une étagère (préversion) : analyser les images des rayons à l’aide d’un modèle préentraîné
Important
Cette fonctionnalité est désormais déconseillée. Le 31 mars 2025, les API en préversion d’Azure AI Image Analysis 4.0 pour la classification d’images personnalisée, la détection d’objets personnalisée et la reconnaissance de produits seront mises hors service. Après cette date, les appels d’API à ces services échoueront.
Pour assurer le bon fonctionnement de vos modèles, passez à Azure AI Custom Vision, qui est désormais en disponibilité générale. Custom Vision offre des fonctionnalités similaires à celles qui seront mises hors service.
Le moyen le plus rapide de commencer à utiliser la reconnaissance de produit consiste à utiliser les modèles IA préentraînés intégrés. Avec l’API Reconnaissance de produit, vous pouvez charger une image d’étagère et obtenir les emplacements des produits et des lacunes.
Notes
Les marques affichées dans les images ne sont pas affiliées à Microsoft et n’indiquent aucune forme d’approbation de Microsoft ou de produits Microsoft par les propriétaires de la marque, ni d’approbation des propriétaires de la marque ou de leurs produits par Microsoft.
Prérequis
- Un abonnement Azure - En créer un gratuitement
- Une fois que vous avez votre abonnement Azure, créez une ressource Vision dans le portail Azure. Elle doit être déployée dans une région Azure prise en charge (voir disponibilité des régions). À la fin du déploiement, sélectionnez Accéder à la ressource.
- Vous aurez besoin de la clé et du point de terminaison de la ressource que vous créez pour connecter votre application au service Azure AI Vision. Vous collerez votre clé et votre point de terminaison dans le code ci-dessous plus loin dans le guide.
- Une ressource stockage Azure avec un conteneur de stockage d’objets blob. Créez-en un
- cURL installé. Vous pouvez également utiliser une plateforme REST différente, telle que Swagger ou l’extension client REST pour VS Code.
- Image d’étagère. Vous pouvez télécharger notre exemple d’image ou apporter vos propres images. La taille de fichier maximale par image est de 20 Mo.
Analyser les images d’étagère
Pour analyser une image d’étagère, procédez comme suit :
Chargez les images que vous souhaitez analyser dans votre conteneur de stockage d’objets blob et obtenez l’URL absolue.
Copiez la commande
curl
ci-après dans un éditeur de texte.curl -X PUT -H "Ocp-Apim-Subscription-Key: <subscriptionKey>" -H "Content-Type: application/json" "<endpoint>/computervision/productrecognition/ms-pretrained-product-detection/runs/<your_run_name>?api-version=2023-04-01-preview" -d "{ 'url':'<your_url_string>' }"
Effectuez les modifications nécessaires dans la commande :
- Remplacez la valeur
<subscriptionKey>
par la clé de votre ressource Vision. - Remplacez la valeur
<endpoint>
par le point de terminaison de votre ressource Vision. Par exemple :https://YourResourceName.cognitiveservices.azure.com
. - Remplacez la valeur
<your_run_name>
par le nom de votre série de tests unique pour la file d’attente des tâches. Il s’agit d’un nom de file d’attente des tâches d’API asynchrone qui vous permet de récupérer ultérieurement la réponse de l’API. Par exemple,.../runs/test1?api-version...
- Remplacer le
<your_url_string>
contenu par l’URL de l’objet blob de l’image
- Remplacez la valeur
Ouvrir une fenêtre d’invite de commandes.
Collez votre commande
curl
modifiée à partir de l’éditeur de texte dans la fenêtre d’invite de commandes, puis exécutez la commande.
Examiner la réponse
Une réponse correcte est retournée au format JSON. Les résultats de l’API de reconnaissance de produit sont retournés dans un champ JSON ProductRecognitionResultApiModel
:
"ProductRecognitionResultApiModel": {
"description": "Results from the product understanding operation.",
"required": [
"gaps",
"imageMetadata",
"products"
],
"type": "object",
"properties": {
"imageMetadata": {
"$ref": "#/definitions/ImageMetadataApiModel"
},
"products": {
"description": "Products detected in the image.",
"type": "array",
"items": {
"$ref": "#/definitions/DetectedObject"
}
},
"gaps": {
"description": "Gaps detected in the image.",
"type": "array",
"items": {
"$ref": "#/definitions/DetectedObject"
}
}
}
}
Consultez les sections suivantes pour connaître les définitions de chaque champ JSON.
Modèle d’API Résultat de la reconnaissance de produit
Résultats de l’opération de reconnaissance du produit.
Nom | Type | Description | Obligatoire |
---|---|---|---|
imageMetadata |
ImageMetadataApiModel | Les informations de métadonnées d’image se composent de la hauteur, de la largeur et du format. | Oui |
products |
DetectedObject | Produits détectés dans l’image. | Oui |
gaps |
DetectedObject | Lacunes détectées dans l’image. | Oui |
Modèle d’API de métadonnées d’image
Les informations de métadonnées d’image se composent de la hauteur, de la largeur et du format.
Nom | Type | Description | Obligatoire |
---|---|---|---|
width |
entier | La largeur de l’image est en pixels. | Oui |
height |
entier | La hauteur de l’image est en pixels. | Oui |
Modèle d’API objet détecté
Décrit un objet détecté dans une image.
Nom | Type | Description | Obligatoire |
---|---|---|---|
id |
string | ID de l’objet détecté. | Non |
boundingBox |
BoundingBox | Cadre englobant pour une zone à l’intérieur d’une image. | Oui |
tags |
TagsApiModel | Confiances de classification de l’objet détecté. | Oui |
Modèle d’API cadre englobant
Cadre englobant pour une zone à l’intérieur d’une image.
Nom | Type | Description | Obligatoire |
---|---|---|---|
x |
entier | Coordonnée gauche du point supérieur gauche de la zone, en pixels. | Oui |
y |
entier | Coordonnée supérieure du point supérieur gauche de la zone, en pixels. | Oui |
w |
entier | Largeur mesurée à partir du point supérieur gauche de la zone, en pixels. | Oui |
h |
entier | Hauteur mesurée à partir du point supérieur gauche de la zone, en pixels. | Oui |
Modèle d’API Balises d’image
Décrit la confiance en classification d’image d’une étiquette.
Nom | Type | Description | Obligatoire |
---|---|---|---|
confidence |
float | Confiance de la prédiction de classification. | Oui |
name |
string | Étiquette de la prédiction de classification. | Oui |
Étapes suivantes
Dans ce guide, vous avez appris à effectuer un appel d’analyse de base à l’aide de l’API REST Reconnaissance de produit préentraînée. Ensuite, découvrez comment utiliser un modèle de reconnaissance de produit personnalisé pour mieux répondre aux besoins de votre entreprise.