元数据

除了核心元数据推荐(列在 可扩展性文档 中)之外,还有一些附加的实验性元数据,旨在为模型输入和输出提供信息。

此元数据适用于给定类别的所有输入和输出张量。我们定义的第一个此类类别是:Image

动机

这种机制的动机是允许模型作者向模型使用者传达足够的信息,以便他们能够使用该模型。

在图像的情况下,有许多提供有效图像数据的选项。但是,消费图像的模型是用一组特定的选项训练的,在推理期间必须使用这些选项。

此提案的目标是提供足够的元数据,以便模型使用者可以在运行模型之前执行自己的特征提取,并提供兼容的输入或检索输出并了解其格式。

图像类别定义

对于模型中所有使用 类型说明 将自己声明为 IMAGE 的张量,您应该提供元数据来协助模型使用者。请注意,使用此机制提供的任何元数据都对所有具有相应说明的类型全局有效。

键和值不区分大小写。

具体来说,我们在此定义以下图像元数据集

描述

Image.BitmapPixelFormat

字符串

指定像素数据的格式。每个枚举值定义一个通道顺序和位深度。可能的值

  • Gray8:1 通道图像,像素数据为 8bpp 灰度。
  • Rgb8:3 通道图像,通道顺序为 RGB,像素数据为 8bpp(无 Alpha)
  • Bgr8:3 通道图像,通道顺序为 BGR,像素数据为 8bpp(无 Alpha)
  • Rgba8:4 通道图像,通道顺序为 RGBA,像素数据为 8bpp(直 Alpha)
  • Bgra8:4 通道图像,通道顺序为 BGRA,像素数据为 8bpp(直 Alpha)

Image.ColorSpaceGamma

字符串

指定使用的伽马颜色空间。可能的值

  • Linear:线性颜色空间,伽马 == 1.0
  • SRGB:sRGB 颜色空间,伽马 == 2.2

Image.NominalPixelRange

字符串

指定存储像素值的范围。可能的值

  • NominalRange_0_255:8bpp 采样为 [0…255]
  • Normalized_0_1:像素数据存储为归一化 [0…1]
  • Normalized_1_1:像素数据存储为归一化 [-1…1]
  • NominalRange_16_235:8bpp 采样为 [16…235]