Visión por computadora con TensorFlow

TensorFlow proporciona una serie de herramientas de clasificación de imágenes y visión por computadora (CV). Este documento presenta algunas de estas herramientas y proporciona una descripción general de los recursos para ayudarlo a comenzar con las tareas comunes de CV.

Bibliotecas y herramientas de visión

TensorFlow proporciona herramientas CV a través de las bibliotecas Keras de nivel superior y el módulo tf.image de nivel inferior. Para la mayoría de los casos de uso, las bibliotecas de Keras serán más convenientes que las alternativas integradas de TensorFlow. Pero si las opciones de Keras no se ajustan a su caso de uso, o si desea un control de nivel inferior sobre el preprocesamiento de imágenes, es posible que necesite las herramientas TensorFlow de nivel inferior.

KerasCV

Si recién está comenzando con un proyecto de CV y ​​no está seguro de qué bibliotecas y herramientas necesitará, KerasCV es un buen lugar para comenzar. KerasCV es una biblioteca de componentes CV modulares construida sobre Keras Core. KerasCV incluye modelos, capas, métricas, devoluciones de llamadas y otras herramientas que amplían la API de Keras de alto nivel para tareas CV. Las API de KerasCV pueden ayudar con el aumento de datos, la clasificación, la detección de objetos, la segmentación, la generación de imágenes y otros flujos de trabajo de CV comunes. Puede utilizar KerasCV para ensamblar rápidamente canales de inferencia y capacitación de última generación y de nivel de producción.

Utilidades de Keras

tf.keras.utils proporciona varias utilidades de preprocesamiento de imágenes de alto nivel. Por ejemplo, tf.keras.utils.image_dataset_from_directory genera un tf.data.Dataset a partir de un directorio de imágenes en el disco.

tf.image

Si KerasCV no se ajusta a su caso de uso, puede usar tf.image y tf.data para escribir sus propios canales o capas de aumento de datos.

El módulo tf.image contiene varias funciones para el procesamiento de imágenes, como tf.image.flip_left_right , tf.image.rgb_to_grayscale , tf.image.adjust_brightness , tf.image.central_crop y tf.image.stateless_random* .

La API tf.data le permite crear canales de entrada complejos a partir de piezas simples y reutilizables.

Conjuntos de datos de TensorFlow

TensorFlow Datasets es una colección de conjuntos de datos listos para usar con TensorFlow. Muchos de los conjuntos de datos (por ejemplo, MNIST , Fashion-MNIST y TF Flowers ) se pueden utilizar para desarrollar y probar algoritmos de visión por computadora.

Donde empezar

Los siguientes recursos lo ayudarán a comenzar a utilizar las herramientas CV de TensorFlow y Keras.