型別 TensorFactory 定義了 'Tensor' 的工廠函式,用於從現有資料或資源建立張量例項。

interface TensorFactory {
    fromGpuBuffer<T>(buffer, options): TypedTensor<T>;
    fromImage(imageData, options?): Promise<TypedTensor<"float32"> | TypedTensor<"uint8">>;
    fromImage(imageElement, options?): Promise<TypedTensor<"float32"> | TypedTensor<"uint8">>;
    fromImage(urlSource, options?): Promise<TypedTensor<"float32"> | TypedTensor<"uint8">>;
    fromImage(bitmap, options): Promise<TypedTensor<"float32"> | TypedTensor<"uint8">>;
    fromMLTensor<T>(tensor, options): TypedTensor<T>;
    fromPinnedBuffer<T>(type, buffer, dims?): TypedTensor<T>;
    fromTexture<T>(texture, options): TypedTensor<"float32">;
}

層級 (檢視全部)

方法

  • 從 WebGPU 緩衝區建立張量

    型別引數

    引數

    • buffer: GpuBufferTypeFallback

      用於建立張量的 GPUBuffer 物件

    • options: TensorFromGpuBufferOptions<T>

      一個可選物件,表示從 WebGPU 緩衝區建立張量的選項。

      選項包括以下屬性

      • dataType: 張量的資料型別。如果省略,則假定為 'float32'。
      • dims: 張量的維度。必填。
      • download: 從 GPU 下載張量資料到 CPU 的可選函式。如果省略,則 GPU 資料將無法下載。通常,此函式由 GPU 後端為推理輸出提供。使用者無需提供此函式。
      • dispose: 釋放 GPU 上張量資料的可選函式。如果省略,則 GPU 資料將不會被釋放。通常,此函式由 GPU 後端為推理輸出提供。使用者無需提供此函式。

    返回 TypedTensor<T>

    一個張量物件

  • 從 ImageData 物件建立張量

    引數

    • imageData: ImageData

      用於建立張量的 ImageData 物件

    • 可選 options: TensorFromImageDataOptions

      一個可選物件,表示從 ImageData 建立張量的選項。

      將應用以下預設設定

      • tensorFormat: 'RGB'
      • tensorLayout: 'NCHW'
      • dataType: 'float32'

    返回 Promise<TypedTensor<"float32"> | TypedTensor<"uint8">>

    一個解析為張量物件的 Promise

  • 從 HTMLImageElement 物件建立張量

    引數

    • imageElement: HTMLImageElement

      用於建立張量的 HTMLImageElement 物件

    • 可選 options: TensorFromImageElementOptions

      一個可選物件,表示從 HTMLImageElement 建立張量的選項。

      將應用以下預設設定

      • tensorFormat: 'RGB'
      • tensorLayout: 'NCHW'
      • dataType: 'float32'

    返回 Promise<TypedTensor<"float32"> | TypedTensor<"uint8">>

    一個解析為張量物件的 Promise

  • 從 URL 建立張量

    引數

    • urlSource: string

      一個字串,作為影像的 URL 或包含影像資料的資料 URL。

    • 可選 options: TensorFromUrlOptions

      一個可選物件,表示從 URL 建立張量的選項。

      將應用以下預設設定

      • tensorFormat: 'RGB'
      • tensorLayout: 'NCHW'
      • dataType: 'float32'

    返回 Promise<TypedTensor<"float32"> | TypedTensor<"uint8">>

    一個解析為張量物件的 Promise

  • 從 ImageBitmap 物件建立張量

    引數

    • bitmap: ImageBitmap

      用於建立張量的 ImageBitmap 物件

    • options: TensorFromImageBitmapOptions

      一個可選物件,表示從 URL 建立張量的選項。

      將應用以下預設設定

      • tensorFormat: 'RGB'
      • tensorLayout: 'NCHW'
      • dataType: 'float32'

    返回 Promise<TypedTensor<"float32"> | TypedTensor<"uint8">>

    一個解析為張量物件的 Promise

  • 從 WebNN MLTensor 建立張量

    型別引數

    引數

    • tensor: MLTensorTypeFallback

      用於建立張量的 MLTensor 物件

    • options: TensorFromMLTensorOptions<T>

      一個可選物件,表示從 WebNN MLTensor 建立張量的選項。

      選項包括以下屬性

      • dataType: 張量的資料型別。如果省略,則假定為 'float32'。
      • dims: 張量的維度。必填。
      • download: 從 MLTensor 下載張量資料到 CPU 的可選函式。如果省略,則 MLTensor 資料將無法下載。通常,此函式由 WebNN 後端為推理輸出提供。使用者無需提供此函式。
      • dispose: 釋放 WebNN MLTensor 上張量資料的可選函式。如果省略,則 MLTensor 將不會被釋放。通常,此函式由 WebNN 後端為推理輸出提供。使用者無需提供此函式。

    返回 TypedTensor<T>

    一個張量物件

  • 從預分配的緩衝區建立張量。該緩衝區將用作固定緩衝區。

    型別引數

    • T extends "float32" | "uint8" | "int8" | "uint16" | "int16" | "int32" | "int64" | "bool" | "float16" | "float64" | "uint32" | "uint64" | "uint4" | "int4"

    引數

    • type: T

      張量元素型別。

    • buffer: DataTypeMap[T]

      與型別對應的 TypedArray。

    • 可選 dims: readonly number[]

      指定張量的維度。如果省略,則假定為 1-D 張量。

    返回 TypedTensor<T>

    一個張量物件

  • 從 WebGL 紋理建立張量

    型別引數

    • T extends "float32" = "float32"

    引數

    • texture: WebGLTexture

      用於建立張量的 WebGLTexture 物件

    • options: TensorFromTextureOptions<T>

      一個可選物件,表示從 WebGL 紋理建立張量的選項。

      選項包括以下屬性

      • width: 紋理的寬度。必填。
      • height: 紋理的高度。必填。
      • format: 紋理的格式。如果省略,則假定為 'RGBA'。
      • download: 從 GPU 下載張量資料到 CPU 的可選函式。如果省略,則 GPU 資料將無法下載。通常,此函式由 GPU 後端為推理輸出提供。使用者無需提供此函式。
      • dispose: 釋放 GPU 上張量資料的可選函式。如果省略,則 GPU 資料將不會被釋放。通常,此函式由 GPU 後端為推理輸出提供。使用者無需提供此函式。

    返回 TypedTensor<"float32">

    一個張量物件

使用 TypeDoc 生成