跳到主要内容

MetadataOutputVector

MetadataOutputVector

功能

用于存放MxMetadataOutput的向量类型,实现了Vector的通用操作。

结构定义

由swig生成,仅展示部分业务相关接口,具体请参考“StreamManagerApi.py”。

class MetadataOutputVector:
def pop(self):
pass
def append(self, x):
pass
def size(self):
pass
...

父主题: 流程编排数据类

MxBufferInput

功能

Stream接收的数据定义。

结构定义

class MxBufferInput:
def __init__(self):
self.data = None
self.mxpiFrameInfo = None
self.mxpiVisionInfo = None

参数说明

参数名类型说明
databytes输入的数据。
mxpiFrameInfobytes输入Frame数据。
mxpiVisionInfobytes输入图片数据。

父主题: 流程编排数据类

MxBufferOutput

功能

Stream输出的数据定义。

结构定义

class MxBufferOutput:
def __init__(self):
self.errorCode = None
self.errorMsg= None
self.data = None

参数说明

参数名类型说明
errorCodeint输出的错误码。
errorMsgbytes输出的错误信息。
databytes输出的数据。

父主题: 流程编排数据类

mx_init()

函数功能

全局初始化,申请设备资源与日志资源。

父主题: 初始化

Tensor

备注

须知

多个Tensor对象按batch维进行concat操作时请使用base.batch_concat()函数,具体使用方式请参见batch_concat(inputs)

函数功能

numpy数组转换为Tensor。

Tensor数据结构接收了作为参数(buffer)传进来的一段缓冲区内存地址,因此在使用numpy数组进行数据预处理并转为Tensor时,要注意预处理的过程中是否对内存进行修改。

例如:transpose()函数作用是调换数组的索引值,但是该函数实际未对数据内存地址进行重新排列,仅在获取numpy数组时返回转换后的值。如将该numpy数组转为Tensor,实际获得的是未经重新排列的Tensor。(即numpy数组为transpose()转置后数组,Tensor为transpose()转置前数组。)

如需使用例如transpose()等不改变内存排列的函数,可以在transpose()处理后使用如numpy.ascontiguousarray()等接口来重新排列内存数据,使得转换后的Tensor对象数据和期望得到的转置后数组一致

函数原型

Tensor(buffer)

输入参数说明

参数名类型说明
buffernumpy数组待转换为Tensor的numpy数组。

输出参数说明

Tensor对象。

父主题: Tensor类

to_device

函数功能

移动Tensor到Device内存中。

函数原型

to_device(deviceId)

输入参数说明

参数名类型说明
deviceIdintDevice设备的ID号。

抛异常接口

分配Tensor内存失败及拷贝到Device侧失败,抛出runtime异常。

父主题: Tensor类

to_host

函数功能

移动Tensor到Host内存中。

函数原型

to_host()

抛异常接口

分配Tensor内存失败及拷贝到Host侧失败,抛出runtime异常。

父主题: Tensor类

在线提单