Compartir a través de


Clasificación de imágenes con Custom Vision y Windows Machine Learning

Flujo de clasificación de imágenes

En esta guía se muestra cómo: entrenar un modelo de red neuronal para clasificar imágenes de alimentos mediante el servicio Azure Custom Vision; exporte el modelo al formato ONNX; e implemente el modelo en una aplicación de Windows Machine Learning (Windows ML) que se ejecuta localmente en un dispositivo Windows. No necesita experiencia previa en el aprendizaje automático. Le guiaremos paso a paso por el proceso.

Si quiere obtener información sobre cómo compilar y entrenar un modelo con Custom Vision, puede continuar con Entrenamiento de un modelo.

Si tienes un modelo y quieres aprender a crear una aplicación de Windows ML desde cero, consulta el tutorial completo de la aplicación de Windows ML.

Si quieres empezar con un proyecto de Visual Studio preexistente para una aplicación de Windows ML, puedes clonar la aplicación de ejemplo del tutorial de Custom Vision y Windows ML y usarla como punto de partida.

Escenario

En este tutorial, crearemos una aplicación de clasificación de alimentos de aprendizaje automático que se ejecuta en dispositivos Windows. El modelo se entrenará para reconocer determinados tipos de patrones para clasificar una imagen de alimentos y, cuando se le dé una imagen, devolverá una etiqueta de clasificación y el valor de confianza porcentual asociado de esa clasificación.

Requisitos previos para el entrenamiento del modelo

Para compilar y entrenar un modelo, necesitará una suscripción a Los servicios de Azure Custom Vision.

Si no está familiarizado con Azure, puede registrarse para obtener una cuenta gratuita de Azure. Esto le dará la oportunidad de crear, entrenar e implementar modelos de aprendizaje automático con Azure AI.

Sugerencia

¿Está interesado en obtener más información sobre las opciones de registro de Azure y las cuentas gratuitas de Azure? A continuación, consulte Creación de una cuenta de Azure.

Requisitos previos para la implementación de aplicaciones de Windows ML

Para crear e implementar una aplicación de Windows ML, necesitará lo siguiente:

  • Windows 10, versión 1809 (compilación 17763) o posterior. Para comprobar el número de versión de compilación, ejecute winver mediante el comando Ejecutar (tecla del logotipo de Windows + R).
  • Windows SDK para la compilación 17763 o posterior. Para descargarlo, consulte Windows SDK.
  • Visual Studio 2017, versión 15.7 o posterior; pero se recomienda usar Visual Studio 2022 o posterior. Algunas capturas de pantalla de este tutorial pueden diferir de la interfaz de usuario que verá. Para descargar Visual Studio, consulte Descargas y herramientas para el desarrollo de Windows.
  • La extensión de Visual Studio del generador de código de Windows ML (mlgen). Descárguelo para Visual Studio 2019 o posterior o para Visual Studio 2017.
  • Si decide crear una aplicación para la Plataforma universal de Windows (UWP), deberá habilitar la carga de trabajo desarrollo de la Plataforma universal de Windows en Visual Studio.
  • Habilitar el modo Desarrollador en el PC: consulta Habilitar el dispositivo para el desarrollo.

Nota:

Las API de Windows ML están integradas en las versiones más recientes de Windows 10 (1809 o posterior) y Windows Server 2019. Si la plataforma de destino es una versión anterior de Windows, puede migrar la aplicación de Windows ML al paquete NuGet redistribuible (Windows 8.1 o superior).

Preparación de los datos

Los modelos de Machine Learning deben entrenarse con datos existentes. En esta guía, utilizarás un conjunto de datos de imágenes de alimentos de Kaggle Open Datasets. Ese conjunto de datos se distribuye bajo la licencia de dominio público.

Importante

Para usar este conjunto de datos, debe cumplir el término de usar el sitio de Kaggle y los términos de licencia que acompañan al Food-11 propio conjunto de datos. Microsoft no garantiza ni representa el sitio ni este conjunto de datos.

El conjunto de datos tiene tres divisiones( evaluación, entrenamiento y validación) y contiene 16 643 imágenes de alimentos agrupadas en 11 categorías de alimentos principales. Las imágenes del conjunto de datos de cada categoría de alimentos se colocan en una carpeta independiente, lo que facilita el proceso de entrenamiento del modelo.

Descargue el conjunto de datos de la imagen food-11. El conjunto de datos tiene un tamaño de aproximadamente 1 GB y es posible que se le pida que cree una cuenta en el sitio web de Kaggle para descargar los datos.

Conjunto de datos de imágenes de alimentos

Si lo prefiere, le damos la bienvenida a usar cualquier otro conjunto de datos de imágenes relevantes. Como mínimo, se recomienda usar al menos 30 imágenes por etiqueta en el conjunto de entrenamiento inicial. También querrá recopilar algunas imágenes adicionales para probar el modelo una vez entrenado.

Además, asegúrese de que todas las imágenes de entrenamiento cumplen los siguientes criterios:

  • .jpg, .png, .bmpo .gif formato.
  • No mayor que 6 MB de tamaño (4 MB para imágenes de predicción).
  • Tienen más de 256 píxeles en el borde más corto. Custom Vision Service escalará verticalmente y de forma automática todas las imágenes que sean más cortas.

Pasos siguientes

Ahora que ha ordenado los requisitos previos y ha preparado el conjunto de datos, puede continuar con la creación del modelo de Windows ML. En la siguiente parte (Entrenamiento del modelo con Custom Vision), usará la interfaz de Custom Vision basada en web para crear y entrenar el modelo de clasificación.