Tutorial: Clasificación de imágenes - Rekognition

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Tutorial: Clasificación de imágenes

En este tutorial, se explica cómo crear el proyecto y los conjuntos de datos para un modelo que clasifica los objetos, las escenas y los conceptos que se encuentran en una imagen. El modelo clasifica toda la imagen. Por ejemplo, según este tutorial, puede entrenar un modelo para que reconozca las ubicaciones de una casa, como la sala de estar o la cocina. El tutorial también le enseña a utilizar el modelo para analizar imágenes.

Antes de comenzar el tutorial, le recomendamos que lea Qué es Etiquetas personalizadas de Amazon Rekognition.

En este tutorial, creará los conjuntos de datos de entrenamiento y de prueba cargando imágenes en su ordenador local. Más adelante, asignará etiquetas de imagen a las imágenes de los conjuntos de datos de entrenamiento y prueba.

El modelo que cree clasificará las imágenes como pertenecientes al grupo de etiquetas de imagen que asigne a las imágenes del conjunto de datos de entrenamiento. Por ejemplo, si el conjunto de etiquetas de imagen del conjunto de datos de entrenamiento es kitchen, living_room, patio y backyard, el modelo podrá encontrar todas esas etiquetas de imagen en una sola imagen.

nota

Puede crear modelos para distintos fines, como encontrar la ubicación de objetos en una imagen. Para obtener más información, consulte Cómo decidir el tipo de modelo.

Paso 1: Reunir las imágenes

Necesitará dos grupos de imágenes. Un grupo para agregar a su conjunto de datos de entrenamiento. Y otro grupo para agregar a su conjunto de datos de prueba. Las imágenes deben representar los objetos, las escenas y los conceptos que desee que clasifique su modelo. Las imágenes deben tener formato PNG o JPEG. Para obtener más información, consulte Preparación de imágenes.

Debe tener al menos 10 imágenes para su conjunto de datos de entrenamiento y 10 imágenes para su conjunto de datos de prueba.

Si aún no tiene ninguna imagen, use las de ejemplo del proyecto de clasificación Habitaciones. Tras crear el proyecto, las imágenes de entrenamiento y de prueba estarán disponibles en las siguientes ubicaciones del bucket de Amazon S3:

  • Imágenes de entrenamiento: s3://custom-labels-console-region-numbers/assets/rooms_version number_test_dataset/

  • Imágenes de prueba: s3://custom-labels-console-region-numbers/assets/rooms_version number_test_dataset/

regiones la AWS región en la que utiliza la consola de etiquetas personalizadas de Amazon Rekognition. numberses un valor que la consola asigna al nombre del bucket. Version numberes el número de versión del proyecto de ejemplo, empezando por 1.

El siguiente procedimiento almacena las imágenes del proyecto Habitaciones en carpetas locales del equipo denominadas training y test.

Cómo descargar los archivos de imagen del proyecto Habitaciones
  1. Cree el proyecto Habitaciones. Para obtener más información, consulte Paso 1: Elegir un proyecto de ejemplo.

  2. Abra el símbolo del sistema y escriba el siguiente comando para descargar las imágenes de entrenamiento.

    aws s3 cp s3://custom-labels-console-region-numbers/assets/rooms_version number_training_dataset/ training --recursive
  3. En el símbolo del sistema, introduzca el siguiente comando para descargar las imágenes de prueba.

    aws s3 cp s3://custom-labels-console-region-numbers/assets/rooms_version number_test_dataset/ test --recursive
  4. Mueva dos de las imágenes de la carpeta de entrenamiento a una carpeta independiente que elija. Usará las imágenes para probar el modelo entrenado en Paso 9: Analizar una imagen con su modelo.

Paso 2: Decidir las clases

Haga una lista de las clases que desee que busque su modelo. Por ejemplo, si va a entrenar un modelo para que reconozca las habitaciones de una casa, puede clasificar la siguiente imagen como living_room.

Acogedora sala de estar con chimenea, lujoso sofá y sillón, con vista al exterior.

Cada clase se asigna a una etiqueta de imagen. Más adelante, asignará las etiquetas de imagen a las imágenes de los conjuntos de datos de entrenamiento y de prueba.

Si va a usar las imágenes del proyecto de ejemplo Habitaciones, las etiquetas de imagen son terraza, baño, dormitorio, armario, camino_entrada, plano_planta, patio_delantero, cocina, sale_estar y patio.

Paso 3: Crear un proyecto

Para administrar sus conjuntos de datos y modelos, debe crear un proyecto. Cada proyecto debe usarse para una aplicación concreta, como reconocer las habitaciones de una casa.

Cómo crear un proyecto (consola)
  1. Si aún no lo ha hecho, configure la consola de Etiquetas personalizadas de Amazon Rekognition. Para obtener más información, consulte Configuración de Etiquetas personalizadas de Amazon Rekognition.

  2. Inicie sesión en la consola Amazon Rekognition AWS Management Console y ábrala en https://console.aws.amazon.com/rekognition/.

  3. En el panel izquierdo, elija Usar etiquetas personalizadas. Se abrirá la página de inicio de Etiquetas personalizadas de Amazon Rekognition.

  4. En la página de inicio de Etiquetas personalizadas de Amazon Rekognition, seleccione Comenzar.

  5. En el panel de navegación izquierdo, elija Proyectos.

  6. En la página Proyectos, elija Crear proyecto.

  7. En Nombre del proyecto, introduzca un nombre para el proyecto.

  8. Seleccione Crear proyecto para crearlo.

    Formulario de interfaz de usuario para crear un nuevo proyecto denominado «Mi proyecto» con un campo para introducir el nombre del proyecto y botones para cancelar o crear un proyecto.

Paso 4: Crear conjuntos de datos de entrenamiento y de prueba

En este paso, creará un conjunto de datos de entrenamiento y de prueba cargando imágenes de su ordenador local. Puede cargar hasta 30 imágenes a la vez. Si tiene que cargar muchas imágenes, piense en crear los conjuntos de datos importándolos desde un bucket de Amazon S3. Para obtener más información, consulte Bucket de Amazon S3.

Para obtener más información sobre los conjuntos de datos, consulte Administración de conjuntos de datos.

Cómo crear un conjunto de datos con imágenes en un ordenador local (consola)
  1. En la página de detalles del proyecto, elija Crear conjunto de datos.

    Paso de creación de un conjunto de datos en el flujo de trabajo del modelo de entrenamiento: botón Crear conjunto de datos para cargar imágenes y etiquetas al modelo de tren.
  2. En la sección Configuración inicial, seleccione Comenzar con un conjunto de datos de entrenamiento y un conjunto de datos de prueba.

  3. En la sección Detalles del conjunto de datos de entrenamiento, seleccione Cargar imágenes del ordenador.

  4. En la sección Detalles del conjunto de datos de prueba, seleccione Cargar imágenes del ordenador.

  5. Elija Crear conjuntos de datos.

    Interfaz de usuario para crear conjuntos de datos de entrenamiento y prueba. Cree conjuntos de datos y pulse el botón Cancelar en la parte inferior.
  6. Se abrirá la página de conjuntos de datos del proyecto con las pestañas Entrenamiento y Prueba con los conjuntos de datos respectivos.

  7. En la página del conjunto de datos, seleccione la pestaña Entrenamiento.

  8. Seleccione Acciones y luego Agregar imágenes al conjunto de datos de entrenamiento.

    Vista del conjunto de datos que muestra las opciones para añadir imágenes a los conjuntos de datos de entrenamiento y prueba en el menú Acciones.
  9. En el cuadro de diálogo Agregar imágenes al conjunto de datos de entrenamiento, seleccione Elegir archivos.

    Botón para cargar archivos de imagen para entrenar un conjunto de datos.
  10. Escoja las imágenes que quiera cargar en el conjunto de datos. Puede cargar hasta 30 imágenes a la vez.

  11. Seleccione Cargar imágenes. Etiquetas personalizadas de Amazon Rekognition puede tardar unos segundos en agregar las imágenes al conjunto de datos.

    Cuadrícula que muestra 11 miniaturas de imágenes listas para cargarlas en un conjunto de datos de entrenamiento.
  12. Si tiene más imágenes que agregar al conjunto de datos de entrenamiento, repita los pasos del 9 al 12.

  13. Elija la pestaña Prueba.

  14. Repita los pasos del 8 al 12 para agregar imágenes al conjunto de datos de prueba. En el paso 8, seleccione Acciones y luego Agregar imágenes al conjunto de datos de prueba.

Paso 5: Agregar etiquetas al proyecto

En este paso, agregue una etiqueta al proyecto para cada una de las clases que identificó en el paso Paso 2: Decidir las clases.

Cómo agregar una nueva etiqueta (consola)
  1. En la página de la galería de conjuntos de datos, seleccione Empezar a etiquetar para activar el modo de etiquetado.

    Interfaz de galería de conjuntos de datos que muestra los pasos para etiquetar imágenes: revisar, añadir etiquetas, etiquetar las ubicaciones de los objetos con casillas delimitadoras y preparar el modelo. El botón de empezar a etiquetar está resaltado.
  2. En la sección Etiquetas de la galería de conjuntos de datos, elija Editar etiquetas para abrir el cuadro de diálogo Administrar etiquetas.

  3. En el cuadro de edición, introduzca un nombre de etiqueta nuevo.

  4. Elija Agregar etiqueta.

  5. Repita los pasos 3 y 4 hasta terminar de crear todas las etiquetas que necesite.

  6. Elija Guardar para guardar las etiquetas que haya añadido.

Paso 6: Asignar etiquetas de imagen a los conjuntos de datos de entrenamiento y de prueba

En este paso, asignará una sola clase de imagen a cada imagen en los conjuntos de datos de entrenamiento y de prueba. La etiqueta de imagen es la clase que representa cada imagen.

Cómo asignar etiquetas de imagen a una imagen (consola)
  1. En la página Conjuntos de datos, elija la pestaña Entrenamiento.

  2. Elija Comenzar a etiquetar para activar el modo de etiquetado.

  3. Seleccione una o varias imágenes a las que desee agregar etiquetas. Solo puede seleccionar imágenes en una sola página a la vez. Cómo seleccionar una serie contigua de imágenes en una página:

    1. Seleccione la primera imagen.

    2. Deje pulsada la tecla Mayús.

    3. Seleccione la segunda imagen. Se seleccionarán también las imágenes entre la primera y la segunda imagen.

    4. Suelte la tecla Mayús.

  4. Elija Asignar etiquetas de imagen.

    Interfaz que muestra tres imágenes de patios residenciales, con el botón «Asignar etiquetas a nivel de imagen».
  5. En el cuadro de diálogo Asignar etiquetas de imagen a las imágenes seleccionadas, seleccione la etiqueta que desee asignar a la imagen o imágenes.

  6. Elija Asignar para asignar una etiqueta a la imagen.

    Cuadro de diálogo que muestra cómo asignar la etiqueta «patio trasero» a nivel de imagen a las imágenes seleccionadas con el botón Asignar.
  7. Repita el proceso de etiquetado hasta que todas las imágenes estén anotadas con las etiquetas necesarias.

  8. Elija la pestaña Prueba.

  9. Repita los pasos para asignar etiquetas de imagen a las imágenes del conjunto de datos de prueba.

Paso 7: Entrenar un modelo

Siga los pasos que se indican a continuación para entrenar el modelo. Para obtener más información, consulte Entrenamiento de un modelo de Etiquetas personalizadas de Amazon Rekognition.

Cómo entrenar su modelo (consola)
  1. En la página Conjunto de datos, seleccione Entrenar modelo.

    Botón de entrenamiento del modelo para entrenar un modelo de aprendizaje automático en el conjunto de datos del proyecto actual.
  2. En la página Entrenar modelo, elija Entrenar modelo. El nombre de recurso de Amazon (ARN) del proyecto se encuentra en el cuadro de edición Elegir proyecto.

    Página de configuración del modelo de tren que muestra el campo de entrada ARN del proyecto, la sección de etiquetas vacía y el botón Modelo de tren.
  3. En el cuadro de diálogo ¿Quiere entrenar su modelo?, escoja Entrenar modelo.

    Cuadro de diálogo que pregunta «¿Desea entrenar su modelo?» con los botones Cancelar y Entrenar el modelo.
  4. En la sección Modelos de la página del proyecto, podrá ver que el entrenamiento en curso. Para comprobar el estado actual, consulte la columna Model Status correspondiente a la versión del modelo. El entrenamiento de un modelo tarda un tiempo en completarse.

    El estado del modelo muestra «TRAINING_IN_PROGRESS», lo que indica que el modelo se está entrenando actualmente.
  5. Una vez finalizado, elija el nombre del modelo. El entrenamiento termina cuando el estado del modelo es TRAINING_COMPLETED.

    La información del modelo Rooms 19 muestra el estado TRAINING_COMPLETED, lo que indica que el modelo está listo.
  6. Pulse el botón Evaluar para ver los resultados de la evaluación. Para obtener información sobre la evaluación de un modelo, consulte Mejora de un modelo de Etiquetas personalizadas de Amazon Rekognition.

  7. Seleccione Ver resultados de pruebas para ver los resultados de cada una de las imágenes de prueba. Para obtener más información, consulte Métricas para evaluar su modelo.

    Los resultados de la evaluación del modelo muestran la puntuación F1, la precisión media y la recuperación general de 10 etiquetas de imagen con métricas de rendimiento por etiqueta.
  8. Tras ver los resultados de las pruebas, elija el nombre del modelo para volver a la página del modelo.

    Interfaz que muestra los resultados de las pruebas de un modelo entrenado en un conjunto de datos de imágenes del patio trasero y del patio delantero, y muestra las etiquetas pronosticadas y las puntuaciones de confianza.

Paso 8: Ejecutar el modelo

En este paso iniciará el modelo. Después de iniciar el modelo, puede usarlo para analizar nuevas imágenes.

Se le cobrará por la cantidad de tiempo de ejecución del modelo. Detenga el modelo si no necesita analizar imágenes. Puede reiniciar el modelo más adelante. Para obtener más información, consulte Ejecución de un modelo de Etiquetas personalizadas de Amazon Rekognition.

Cómo iniciar el modelo
  1. Seleccione la pestaña Usar modelo en la página del modelo.

  2. En la sección Iniciar o detener modelo, haga lo siguiente:

    1. Elija Iniciar.

      Interfaz de usuario que muestra el botón de inicio del modelo y opciones para iniciar o detener un modelo de aprendizaje automático para detectar etiquetas personalizadas. Seleccione el número de unidades de inferencia para aumentar el rendimiento.
    2. En el cuadro de diálogo Iniciar modelo, seleccione Iniciar.

  3. Espere a que se ejecute el modelo. El modelo está funcionando cuando el estado de la sección Iniciar o detener modelo tiene la opción En ejecución activada.

    Indicador de estado de funcionamiento con un círculo verde que indica que el modelo se está ejecutando actualmente y opciones para detener el modelo o cambiar el número de unidades de inferencia.

Paso 9: Analizar una imagen con su modelo

Para analizar una imagen, llame a la API. DetectCustomLabels En este paso, utilizas el comando detect-custom-labels AWS Command Line Interface (AWS CLI) para analizar una imagen de ejemplo. El AWS CLI comando se obtiene de la consola Amazon Rekognition Custom Labels. La consola configura el AWS CLI comando para usar su modelo. Solo necesita facilitar una imagen que esté almacenada en un bucket de Amazon S3.

nota

La consola también ofrece un código de ejemplo de Python.

El resultado de detect-custom-labels incluye una lista de las etiquetas que se encuentran en la imagen, cuadros delimitadores (si el modelo encuentra ubicaciones de objetos) y la confianza que el modelo tiene en la precisión de las predicciones.

Para obtener más información, consulte Análisis de una imagen con un modelo entrenado.

Cómo analizar una imagen (consola)
  1. Si aún no lo ha hecho, configure. AWS CLI Para ver instrucciones, consulte Paso 4: Configure los SDK y AWS CLIAWS.

  2. Seleccione la pestaña Usar modelo y luego elija Código de API.

    Interfaz que muestra los detalles del modelo con la opción de mostrar el nombre del recurso de Amazon (ARN) y el código API para usar el modelo.
  3. Elija Comando AWS CLI.

  4. En la sección Analizar imagen, copia el AWS CLI comando que llamadetect-custom-labels.

    Comando de la AWS CLI para analizar una imagen con un modelo personalizado, que muestra el ARN del proyecto y los marcadores de posición del nombre del bucket que se deben reemplazar.
  5. Cargue una imagen en un bucket de Amazon S3. Para ver las instrucciones, consulte Carga de objetos en Amazon S3 en la Guía del usuario de Amazon Simple Storage Service. Si va a usar imágenes del proyecto Habitaciones, utilice una de las imágenes que haya movido a una carpeta independiente en Paso 1: Reunir las imágenes.

  6. En la línea de comandos, introduzca el AWS CLI comando que copió en el paso anterior. Debería ser similar al ejemplo siguiente.

    El valor de --project-version-arn debe ser el nombre de recurso de Amazon (ARN) del modelo. El valor de --region debe ser la región de AWS en la que se creó el modelo.

    Cambie MY_BUCKET y PATH_TO_MY_IMAGE por el bucket de Amazon S3 y la imagen que utilizó en el paso anterior.

    Si utiliza el custom-labels-accessperfil para obtener credenciales, añada el --profile custom-labels-access parámetro.

    aws rekognition detect-custom-labels \ --project-version-arn "model_arn" \ --image '{"S3Object": {"Bucket": "MY_BUCKET","Name": "PATH_TO_MY_IMAGE"}}' \ --region us-east-1 \ --profile custom-labels-access

    El resultado JSON del comando AWS CLI debería tener un aspecto similar al siguiente. Name es el nombre de la etiqueta de imagen que detectó el modelo. Confidence (0-100) es la confianza del modelo en la precisión de la predicción.

    { "CustomLabels": [ { "Name": "living_space", "Confidence": 83.41299819946289 } ] }
  7. Siga utilizando el modelo para analizar otras imágenes. Detenga el modelo si deja de usarlo.

Paso 10: Detener el modelo

En este paso, dejará de ejecutar el modelo. Se le cobrará por la cantidad de tiempo de ejecución del modelo. Si ha terminado de usar el modelo, debe detenerlo.

Cómo detener su modelo
  1. En la sección Iniciar o detener modelo, seleccione Detener.

    Botón de parada para detener el modelo que se está ejecutando actualmente y deshabilitar las unidades de inferencia.
  2. En el cuadro de diálogo Detener modelo, escriba detener para confirmar que desea detener el modelo.

    Introduzca el campo con la palabra «detener» y el botón Parar para confirmar la detención de un modelo.
  3. Seleccione Detener para detener el modelo. El modelo se habrá detenido cuando el estado de la sección Iniciar o detener modelo tenga la opción Detenido activada.

    Indicador de estado de parada con una explicación de que el modelo no está funcionando y debe iniciarse con el botón de inicio o con un ejemplo de código.