diff options
Diffstat (limited to 'ethosu/vela/tflite/Tensor.py')
-rw-r--r-- | ethosu/vela/tflite/Tensor.py | 82 |
1 files changed, 69 insertions, 13 deletions
diff --git a/ethosu/vela/tflite/Tensor.py b/ethosu/vela/tflite/Tensor.py index 4c39b7cb..2d7f9b6c 100644 --- a/ethosu/vela/tflite/Tensor.py +++ b/ethosu/vela/tflite/Tensor.py @@ -3,17 +3,27 @@ # namespace: tflite import flatbuffers +from flatbuffers.compat import import_numpy +np = import_numpy() class Tensor(object): __slots__ = ['_tab'] @classmethod - def GetRootAsTensor(cls, buf, offset): + def GetRootAs(cls, buf, offset=0): n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, offset) x = Tensor() x.Init(buf, n + offset) return x + @classmethod + def GetRootAsTensor(cls, buf, offset=0): + """This method is deprecated. Please switch to GetRootAs.""" + return cls.GetRootAs(buf, offset) + @classmethod + def TensorBufferHasIdentifier(cls, buf, offset, size_prefixed=False): + return flatbuffers.util.BufferHasIdentifier(buf, offset, b"\x54\x46\x4C\x33", size_prefixed=size_prefixed) + # Tensor def Init(self, buf, pos): self._tab = flatbuffers.table.Table(buf, pos) @@ -41,6 +51,11 @@ class Tensor(object): return 0 # Tensor + def ShapeIsNone(self): + o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4)) + return o == 0 + + # Tensor def Type(self): o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6)) if o != 0: @@ -112,15 +127,56 @@ class Tensor(object): return self._tab.VectorLen(o) return 0 -def TensorStart(builder): builder.StartObject(8) -def TensorAddShape(builder, shape): builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(shape), 0) -def TensorStartShapeVector(builder, numElems): return builder.StartVector(4, numElems, 4) -def TensorAddType(builder, type): builder.PrependInt8Slot(1, type, 0) -def TensorAddBuffer(builder, buffer): builder.PrependUint32Slot(2, buffer, 0) -def TensorAddName(builder, name): builder.PrependUOffsetTRelativeSlot(3, flatbuffers.number_types.UOffsetTFlags.py_type(name), 0) -def TensorAddQuantization(builder, quantization): builder.PrependUOffsetTRelativeSlot(4, flatbuffers.number_types.UOffsetTFlags.py_type(quantization), 0) -def TensorAddIsVariable(builder, isVariable): builder.PrependBoolSlot(5, isVariable, 0) -def TensorAddSparsity(builder, sparsity): builder.PrependUOffsetTRelativeSlot(6, flatbuffers.number_types.UOffsetTFlags.py_type(sparsity), 0) -def TensorAddShapeSignature(builder, shapeSignature): builder.PrependUOffsetTRelativeSlot(7, flatbuffers.number_types.UOffsetTFlags.py_type(shapeSignature), 0) -def TensorStartShapeSignatureVector(builder, numElems): return builder.StartVector(4, numElems, 4) -def TensorEnd(builder): return builder.EndObject() + # Tensor + def ShapeSignatureIsNone(self): + o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(18)) + return o == 0 + +def Start(builder): builder.StartObject(8) +def TensorStart(builder): + """This method is deprecated. Please switch to Start.""" + return Start(builder) +def AddShape(builder, shape): builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(shape), 0) +def TensorAddShape(builder, shape): + """This method is deprecated. Please switch to AddShape.""" + return AddShape(builder, shape) +def StartShapeVector(builder, numElems): return builder.StartVector(4, numElems, 4) +def TensorStartShapeVector(builder, numElems): + """This method is deprecated. Please switch to Start.""" + return StartShapeVector(builder, numElems) +def AddType(builder, type): builder.PrependInt8Slot(1, type, 0) +def TensorAddType(builder, type): + """This method is deprecated. Please switch to AddType.""" + return AddType(builder, type) +def AddBuffer(builder, buffer): builder.PrependUint32Slot(2, buffer, 0) +def TensorAddBuffer(builder, buffer): + """This method is deprecated. Please switch to AddBuffer.""" + return AddBuffer(builder, buffer) +def AddName(builder, name): builder.PrependUOffsetTRelativeSlot(3, flatbuffers.number_types.UOffsetTFlags.py_type(name), 0) +def TensorAddName(builder, name): + """This method is deprecated. Please switch to AddName.""" + return AddName(builder, name) +def AddQuantization(builder, quantization): builder.PrependUOffsetTRelativeSlot(4, flatbuffers.number_types.UOffsetTFlags.py_type(quantization), 0) +def TensorAddQuantization(builder, quantization): + """This method is deprecated. Please switch to AddQuantization.""" + return AddQuantization(builder, quantization) +def AddIsVariable(builder, isVariable): builder.PrependBoolSlot(5, isVariable, 0) +def TensorAddIsVariable(builder, isVariable): + """This method is deprecated. Please switch to AddIsVariable.""" + return AddIsVariable(builder, isVariable) +def AddSparsity(builder, sparsity): builder.PrependUOffsetTRelativeSlot(6, flatbuffers.number_types.UOffsetTFlags.py_type(sparsity), 0) +def TensorAddSparsity(builder, sparsity): + """This method is deprecated. Please switch to AddSparsity.""" + return AddSparsity(builder, sparsity) +def AddShapeSignature(builder, shapeSignature): builder.PrependUOffsetTRelativeSlot(7, flatbuffers.number_types.UOffsetTFlags.py_type(shapeSignature), 0) +def TensorAddShapeSignature(builder, shapeSignature): + """This method is deprecated. Please switch to AddShapeSignature.""" + return AddShapeSignature(builder, shapeSignature) +def StartShapeSignatureVector(builder, numElems): return builder.StartVector(4, numElems, 4) +def TensorStartShapeSignatureVector(builder, numElems): + """This method is deprecated. Please switch to Start.""" + return StartShapeSignatureVector(builder, numElems) +def End(builder): return builder.EndObject() +def TensorEnd(builder): + """This method is deprecated. Please switch to End.""" + return End(builder)
\ No newline at end of file |