Compartir vía


Reconocimiento de productos de estante (versión preliminar): Análisis de imágenes de estante mediante el modelo entrenado previamente

Importante

Esta característica ya está en desuso. El 10 de enero de 2025, se retirará la vista previa de la API Azure AI Image Analysis 4.0 de clasificación de imágenes personalizada, detección de objetos personalizada y reconocimiento de productos. Después de esta fecha, se producirá un error en las llamadas API a estos servicios.

Para mantener un funcionamiento sin problemas de los modelos, realice la transición a Custom Vision de Azure AI, que ahora está disponible con carácter general. Custom Vision ofrece una funcionalidad similar a estas características que se van a retirar.

La forma más rápida de empezar a usar el reconocimiento de productos consiste en utilizar los modelos de IA previamente entrenados integrados. Con la API de reconocimiento de productos, puede cargar una imagen de estante y obtener las ubicaciones de los productos y los huecos.

Fotografía de un estante comercial con productos y huecos resaltados con rectángulos.

Nota:

Las marcas que se muestran en las imágenes no están afiliadas a Microsoft y no indican ninguna forma de aprobación de Microsoft ni de productos de Microsoft por parte de los propietarios de la marca, o bien una aprobación de los propietarios de la marca o sus productos por parte de Microsoft.

Requisitos previos

  • Una suscripción a Azure: cree una cuenta gratuita.
  • Una vez que tenga la suscripción de Azure, cree un recurso de Vision en Azure Portal. Debe implementarse en una región de Azure compatible (consulte Disponibilidad de regiones). Tras su implementación, seleccione Ir al recurso.
    • Necesita la clave y el punto de conexión del recurso que cree para conectar la aplicación al servicio Visión de Azure AI. Más adelante en la guía pegará la clave y el punto de conexión en el código siguiente.
  • Un recurso de Azure Storage con un contenedor de Blob Storage. Cree uno
  • cURL instalado. o bien, puede usar otra plataforma REST, como Swagger o la extensión de cliente REST para VS Code.
  • Imagen de un estante. Puede descargar nuestra imagen de ejemplo o incorporar imágenes propias. El tamaño máximo de archivo por imagen es de 20 MB.

Análisis de imágenes de estantes

Para analizar una imagen de un estante, siga estos pasos:

  1. Cargue las imágenes que quiera analizar en el contenedor de Blob Storage y obtenga la dirección URL absoluta.

  2. Copie el comando curl siguiente en un editor de texto.

    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>'
    }"
    
  3. Realice los siguientes cambios en el comando donde sea necesario:

    1. Reemplace el <subscriptionKey> con su clave de recursos de Vision.
    2. Reemplace el <endpoint> por el punto de conexión del recurso de Vision. Por ejemplo: https://YourResourceName.cognitiveservices.azure.com.
    3. Reemplace el <your_run_name> nombre de ejecución de prueba único de la cola de tareas. Es un nombre de cola de tareas de API asincrónica para que pueda recuperar la respuesta de la API más adelante. Por ejemplo: .../runs/test1?api-version...
    4. Reemplace el contenido de <your_url_string> por la URL del blob de la imagen
  4. Abra una ventana de símbolo del sistema.

  5. Pegue el comando curl editado del editor de texto en la ventana del símbolo del sistema y después ejecute el comando.

Examen de la respuesta

Se devuelve una respuesta correcta en JSON. Los resultados de la API de reconocimiento de productos se devuelven en un campo ProductRecognitionResultApiModel de JSON:

"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"
      }
    }
  }
}

Vea las secciones siguientes para obtener las definiciones de cada campo JSON.

Modelo de la API de resultados de reconocimiento de productos

Resultados de la operación de reconocimiento del producto.

Nombre Escribir Descripción Obligatorio
imageMetadata ImageMetadataApiModel La información de metadatos de la imagen, como el alto, el ancho y el formato.
products DetectedObject Productos detectados en la imagen.
gaps DetectedObject Huecos detectados en la imagen.

Modelo de Image Metadata API

La información de metadatos de la imagen, como el alto, el ancho y el formato.

Nombre Escribir Descripción Requerido
width integer Ancho de la imagen en píxeles.
height integer Alto de la imagen en píxeles.

Modelo de Detected Object API

Describe un objeto detectado en una imagen.

Nombre Escribir Descripción Obligatorio
id string Identificador del objeto detectado. No
boundingBox BoundingBox Un rectángulo delimitador para un área dentro de una imagen.
tags TagsApiModel Confianzas de clasificación del objeto detectado.

Modelo de Bounding Box API

Un rectángulo delimitador para un área dentro de una imagen.

Nombre Escribir Descripción Requerido
x integer Coordenada izquierda del punto superior izquierdo del área, en píxeles.
y integer Coordenada superior del punto superior izquierdo del área, en píxeles.
w integer Ancho medido desde el punto superior izquierdo del área, en píxeles.
h integer Alto medido desde el punto superior izquierdo del área, en píxeles.

Modelo de API de etiquetas de imagen

Describe la confianza de clasificación de imágenes de una etiqueta.

Nombre Escribir Descripción Obligatorio
confidence FLOAT Confianza de la predicción de clasificación.
name string Etiqueta de la predicción de clasificación.

Pasos siguientes

En esta guía ha aprendido a realizar una llamada de análisis básica utilizando la API de REST de reconocimiento de productos preformados. A continuación, aprenderá a usar un modelo de reconocimiento de productos personalizado para satisfacer mejor las necesidades empresariales.