表示多维数组,用于馈送或从模型推理中获取数据。

interface TypedTensor<T> {
    data: DataTypeMap[T];
    dims: readonly number[];
    gpuBuffer: GpuBufferTypeFallback;
    location: DataLocation;
    mlTensor: MLTensorTypeFallback;
    size: number;
    texture: WebGLTexture;
    type: T;
    dispose(): void;
    getData(releaseData?): Promise<DataTypeMap[T]>;
    reshape(dims): TypedTensor<T>;
    toDataURL(options?): string;
    toImageData(options?): ImageData;
}

类型参数

继承层次

  • TypedTensorBase<T>
  • TypedTensorUtils<T>
    • TypedTensor

属性

data: DataTypeMap[T]

获取张量的缓冲区数据。

如果数据不在CPU上(例如,它是WebGL纹理或WebGPU缓冲区的形式),则抛出错误。

dims: readonly number[]

获取张量的维度。

获取保存张量数据的WebGPU缓冲区。

如果数据不在GPU上以WebGPU缓冲区的形式存在,则抛出错误。

location: DataLocation

获取数据的位置。

获取保存张量数据的WebNN MLTensor。

如果数据不是WebNN MLTensor,则抛出错误。

size: number

获取张量中的元素数量。

texture: WebGLTexture

获取保存张量数据的WebGL纹理。

如果数据不在GPU上以WebGL纹理的形式存在,则抛出错误。

type: T

获取张量的数据类型。

方法

  • 释放张量数据。

    如果数据在CPU上,则移除其对底层数据的内部引用。如果数据在GPU上,则释放GPU上的数据。

    调用此函数后,张量被视为不再有效。其位置将被设置为“无”。

    返回 void

  • 获取张量的缓冲区数据。

    如果数据在CPU上,则立即返回数据。如果数据在GPU上,则下载数据并返回Promise。

    参数

    • 可选 releaseData: boolean

      是否释放GPU上的数据。如果数据已在CPU上,则忽略此参数。

    返回 Promise<DataTypeMap[T]>

  • 使用相同的数据缓冲区和指定的维度创建一个新张量。

    参数

    • dims: readonly number[]

      新维度。大小应与旧维度匹配。

    返回 TypedTensor<T>

  • 从张量创建DataURL实例

    参数

    • 可选 options: TensorToDataUrlOptions

      一个可选对象,表示从张量创建DataURL实例的选项。

      将应用以下默认设置:

      • format: 'RGB'
      • tensorLayout: 'NCHW'

    返回 string

    一个表示从张量数据转换而来的图像的DataURL字符串

  • 从张量创建ImageData实例

    参数

    • 可选 options: TensorToImageDataOptions

      一个可选对象,表示从张量创建ImageData实例的选项。

      将应用以下默认设置:

      • format: 'RGB'
      • tensorLayout: 'NCHW'

    返回 ImageData

    一个表示从张量数据转换而来的图像的ImageData实例

使用 TypeDoc 生成