类 TensorInfo

  • 所有已实现的接口
    ValueInfo

    public class TensorInfo
    extends java.lang.Object
    implements ValueInfo
    描述一个 OnnxTensor,包括其大小、形状和元素类型。
    • 字段详情

      • MAX_DIMENSIONS

        public static final int MAX_DIMENSIONS
        Java 接口方法支持的最大维度数。
        另请参阅
        常量字段值
      • type

        public final OnnxJavaType type
        此张量的 Java 类型。
    • 方法详情

      • getShape

        public long[] getShape()
        获取张量形状的副本。
        返回
        张量形状的副本。
      • getDimensionNames

        public java.lang.String[] getDimensionNames()
        获取张量命名维度的副本。
        返回
        张量命名维度的副本。
      • toString

        public java.lang.String toString()
        覆盖
        toString 在类 java.lang.Object 中
      • isScalar

        public boolean isScalar()
        如果形状表示标量值(即它具有零维度),则返回 true。
        返回
        如果形状是标量,则为 True。
      • getNumElements

        public long getNumElements()
        返回此张量中的元素数量。

        如果返回值为负数,则此张量信息指的是输入或输出占位符,该占位符具有符号维度,并且在未指定符号维度的情况下无法计算元素数量。

        返回
        元素数量。
      • makeCarrier

        public java.lang.Object makeCarrier()
                                     throws OrtException
        构造一个具有正确形状和类型以容纳此张量的数组。

        注意:对于 String 张量,此 carrier 是一个一维数组,其空间足以容纳所有元素,因为这是原生代码期望的格式。可以使用 OrtUtil.reshape(String[],long[]) 将其重塑为正确形状。

        对于 fp16 和 bf16 张量,输出 carrier 类型为 float,因此此方法生成多维 float 数组。

        返回
        适当基本类型(或 String)的多维数组。
        抛出
        OrtException - 如果形状无法在 Java 中表示(即如果其中一个索引大于 int)。
      • constructFromJavaArray

        public static TensorInfo constructFromJavaArray​(java.lang.Object obj)
                                                 throws OrtException
        从提供的多维 Java 数组构造一个 TensorInfo,用于分配适当大小的原生内存。
        参数
        obj - 要检查的对象。
        返回
        可用于创建正确大小张量的 TensorInfo。
        抛出
        OrtException - 如果提供的 Object 不是数组或类型无效。
      • constructFromBuffer

        public static TensorInfo constructFromBuffer​(java.nio.Buffer buffer,
                                                     long[] shape,
                                                     OnnxJavaType type)
                                              throws OrtException
        从提供的字节缓冲区构造一个 TensorInfo。
        参数
        buffer - 要检查的缓冲区。
        shape - 张量的形状。
        type - Java 类型。
        返回
        张量的 TensorInfo。
        抛出
        OrtException - 如果提供的缓冲区与形状不匹配。