使用 TensorFlow 进行计算机视觉

TensorFlow 提供了许多计算机视觉 (CV) 和图像分类工具。本文档介绍了其中一些工具,并概述了帮助您开始使用常见 CV 任务的资源。

视觉库和工具

TensorFlow 通过更高层的 Keras 库和更低层的 tf.image 模块提供 CV 工具。对于大多数用例,Keras 库比内置的 TensorFlow 替代方案更方便。但是,如果 Keras 选项不适合您的用例,或者您希望对图像预处理进行更低级的控制,您可能需要更低级的 TensorFlow 工具。

KerasCV

如果您刚开始使用 CV 项目,并且不确定需要哪些库和工具,KerasCV 是一个不错的起点。KerasCV 是一个基于 Keras Core 构建的模块化 CV 组件库。KerasCV 包括模型、层、指标、回调和其他工具,这些工具扩展了用于 CV 任务的高级 Keras API。KerasCV API 可以帮助您进行数据增强、分类、目标检测、分割、图像生成和其他常见的 CV 工作流程。您可以使用 KerasCV 快速组装生产级、最先进的训练和推理管道。

Keras 实用程序

tf.keras.utils 提供了几个高级图像预处理实用程序。例如,tf.keras.utils.image_dataset_from_directory 从磁盘上的图像目录生成一个 tf.data.Dataset

tf.image

如果 KerasCV 不适合您的用例,您可以使用 tf.imagetf.data 来编写您自己的数据增强管道或层。

tf.image 模块包含各种用于图像处理的函数,例如 tf.image.flip_left_righttf.image.rgb_to_grayscaletf.image.adjust_brightnesstf.image.central_croptf.image.stateless_random*

tf.data API 使您能够从简单、可重用的部分构建复杂的输入管道。

TensorFlow 数据集

TensorFlow 数据集 是一个可与 TensorFlow 一起使用的数据集集合。许多数据集(例如,MNISTFashion-MNISTTF Flowers)可用于开发和测试计算机视觉算法。

从哪里开始

以下资源将帮助您开始使用 TensorFlow 和 Keras CV 工具。