DvppImageInfo
ModelDataset
功能
模型数据集定义。
结构定义
struct ModelDataset {
void* mdlDataPtr;
size_t dynamicBatchSize;
};
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| mdlDataPtr | 输入 | 模型数据集数据的内存地址。 |
| dynamicBatchSize | 输入 | 模型推理时的批量大小。 |
父主题: 通用数据结构
DvppDataInfo
功能
DVPP实体数据定义。
结构定义
struct DvppDataInfo {
uint32_t width = 0;
uint32_t height = 0;
uint32_t widthStride = 0;
uint32_t heightStride = 0;
MxbasePixelFormat format = MXBASE_PIXEL_FORMAT_YUV_SEMIPLANAR_420;
uint32_t frameId = 0;
uint32_t channelId = 0;
uint32_t dataSize = 0;
uint32_t outDataSize = 0;
uint32_t dataType = 0;
uint8_t* data = nullptr;
uint8_t* outData = nullptr;
uint32_t resizeWidth = 0;
uint32_t resizeHeight = 0;
std::string device = "host:0";
void (*destory)(void *) = nullptr;
};
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| width | 输入 | 原始图像宽。 |
| height | 输入 | 原始图像高。 |
| widthStride | 输入/输出 | 原始像片对齐后的宽。 |
| heightStride | 输入/输出 | 原始像片对齐后的高。 |
| format | 输入/输出 | 图像格式,默认值为“MXBASE_PIXEL_FORMAT_YUV_SEMIPLANAR_420”。 DVPP图像格式定义具体请参见MxbasePixelFormat。 |
| frameId | 输入 | 图像帧编号。 |
| channelId | 输入 | 图像通道数编号。 |
| dataSize | 输入/输出 | 图像数据大小,单位为Byte。 dataSize大小需要和图像实际大小一致,否则可能会导致程序出现coredump情况。 |
| outDataSize | 输入/输出 | 输出图像数据大小,单位为Byte。 outDataSize大小需要和输出图像大小一致,否则可能会导致程序出现coredump情况。 |
| dataType | 输入 | 图像的数据类型。 |
| data | 输入/输出 | 图像数据。 |
| outData | 输入/输出 | 预申请内存地址,主要用于存放视频解码后的图像数据。 |
| device | 输入 | 设备号。 |
| destory | 输入/输出 | 回调函数,用于释放该DVPP数据。 |
父主题: 通用数据结构
DvppImageInfo
功能
DVPP图像信息描述。
结构定义
struct DvppImageInfo {
enum PictureType {
PIXEL_FORMAT_ANY = 0,
PIXEL_FORMAT_JPEG = 1,
PIXEL_FORMAT_PNG = 2
};
const void* data;
uint32_t size;
PictureType pictureType;
};
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| data | 输入 | 图片数据的内存地址。 |
| size | 输入 | 图片大小,单位为Byte。 size大小需要和实际图片大小一致,否则可能会导致程序出现coredump情况。 |
| pictureType | 输入 | 图片类型,为下列三者之一: - PIXEL_FORMAT_ANY = 0 - PIXEL_FORMAT_JPEG = 1 - PIXEL_FORMAT_PNG = 2 |
父主题: 通用数据结构
DvppImageOutput
功能
DVPP图像输出定义。
结构定义
struct DvppImageOutput {
uint32_t width;
uint32_t height;
int32_t components;
uint32_t widthStride;
uint32_t heightStride;
uint32_t outImgDatasize;
}
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| width | 输出 | 输出图像的宽度。 |
| height | 输出 | 输出图像的高度。 |
| components | 输出 | 输出图像的通道个数。 |
| widthStride | 输出 | 输出对齐后的图像宽。 |
| heightStride | 输出 | 输出对齐后的图像高。 |
| outImgDatasize | 输出 | 输出图像的内存大小。 |
父主题: 通用数据结构
MemoryData
功能
内存管理结构体。
结构定义
struct MemoryData {
enum MemoryType {
MEMORY_HOST = 0,
MEMORY_DEVICE,
MEMORY_DVPP,
MEMORY_HOST_MALLOC,
MEMORY_HOST_NEW,
};
MemoryData() = default;
MemoryData(size_t size, MemoryType type = MEMORY_HOST, int32_t deviceId = 0)
: size(size), deviceId(deviceId), type(type) {}
MemoryData(void* ptrData, size_t size, MemoryType type = MEMORY_HOST, int32_t deviceId = 0)
: ptrData(ptrData), size(size), deviceId(deviceId), type(type) {}
void* ptrData;
size_t size;
int32_t deviceId;
MemoryType type;
APP_ERROR (*free)(void*) = nullptr;
};
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| ptrData | 输出 | 存放数据的内存地址。 |
| size | 输入 | 内存大小,单位为Byte。 size值应与实际内存大小一致,否则可能导致出现coredump情况。 |
| deviceId | 输入 | 设备编号。 |
| type | 输入 | 申请的内存类型: - “MEMORY_HOST”对应Host侧。 - “MEMORY_DEVICE”对应Device侧。 - “MEMORY_DVPP”对应DVPP侧。 - “MEMORY_HOST_MALLOC”对应malloc申请内存。 - “MEMORY_HOST_NEW”对应new申请内存。 |
| free | 输出 | ptrData指针释放函数。 |
| MemoryData(size_t size, MemoryType type = MEMORY_HOST, size_t deviceId = 0) | - | 定义结构体的形式一。 |
| MemoryData(void* ptrData, size_t size, MemoryType type = MEMORY_HOST, size_t deviceId = 0) | - | 定义结构体的形式二。 |
父主题: 通用数据结构
DetectBox
功能
定义获取推理结果使用的结构体。
结构定义
struct DetectBox {
float prob;
int classID;
float x;
float y;
float width;
float height;
std::string className;
void *maskPtr;
};
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| prob | 输出 | 类别的置信度。 |
| classID | 输出 | 类别的编号。 |
| x | 输出 | 目标的横坐标。 |
| y | 输出 | 目标的纵坐标。 |
| width | 输出 | 目标的宽度,从横坐标x处开始计算。 |
| height | 输出 | 目标的高度,从纵坐标y处开始计算。 |
| className | 输出 | 类别名。 |
| maskPtr | 输出 | 实例分割需要使用的掩码。 |
父主题: 通用数据结构
在线提单