C API¶
接口函数¶
mmind_packInfer_create
int mmind_packInfer_create(Engine* engine, const char* packPath);
解析 dlkpack 文件并创建对应的推理引擎。
- 输入参数:
engine:推理引擎信息(指针)。
packPath:dlkpack 文件路径。
- 返回值:
int:1000 为正常,其他值为异常,详情见 接口函数调用返回值 。
mmind_packInfer_destroy
int mmind_packInfer_destroy(Engine engine);
注销推理引擎。
- 输入参数:
engine:推理引擎信息。
- 返回值:
int:1000 为正常,其他值为异常,详情见 接口函数调用返回值 。
mmind_packInfer_infer
int mmind_packInfer_infer(Engine engine, Image* img, Image* segMask, Image* insegMask, int& maskNumber, int* h, int* w, int& labelNumber, int* labels, int& bboxNumber, float* bboxes, int& confidenceNumber, float* confidences);
推理引擎执行推理。
- 输入参数:
engine:推理引擎信息。
img:输入图像。
segMask: 缺陷分割的掩膜结果。
insegMask:实例分割的掩膜结果。
maskNumber:实例分割掩膜数量。
h: 实例分割的掩膜图像的高。
w:实例分割的掩膜图像的宽。
labelNumber:标签数量。
labels:推理的标签结果。
bboxNumber:包围框的数量。
bboxes:包围框坐标序列,4个一组(左上X、左上Y、右下X、右下Y)。
confidenceNumber:置信度结果的数量。
confidences:置信度结果。
- 返回值:
int:1000 为正常,其他值为异常,详情见 接口函数调用返回值 。
接口函数调用返回值¶
返回状态码 |
枚举值 |
说明 |
STATUS_OK |
1000 |
接口调用未出现异常 |
FILE_NOT_FOUND |
1001 |
文件未找到 |
VALUE_OUTOF_LEFTRANGE |
1002 |
参数值超出左限位。如参数值范围为[0.0, 1.0],当参数值小于0.0时产生 |
VALUE_OUTOF_RIGHTRANGE |
1003 |
参数值超出右限位。如参数值范围为[0.0, 1.0],当参数值大于1.0时产生 |
MODELTYPE_ERROR |
1004 |
模型类型异常 |
MODEL_REGISTEXCEEDLIMIT_ERROR |
1005 |
注册模型的个数超过限制错误 |
MODEL_CREATE_ERROR |
1006 |
模型创建时产生异常 |
MODEL_DESTROY_ERROR |
1007 |
模型注销时产生异常 |
MODEL_LOAD_ERROR |
1008 |
模型加载时产生异常 |
MODEL_INIT_ERROR |
1009 |
模型初始化时产生异常 |
MODEL_INFER_ERROR |
1010 |
模型推理时产生异常 |
GET_RESULT_ERROR |
1011 |
获取模型结果时产生异常 |
IMGPATH_ERROR |
1012 |
错误的图像路径 |
IMGNULL_ERROR |
1013 |
图像为空 |
IMGCHANNEL_ERROR |
1014 |
图像的通道数错误 |
IMGDEPTH_ERROR |
1015 |
图像的位深度错误 |
IMGSIZE_ERROR |
1016 |
图像的尺寸错误 |
INCONSISTENT_IMAGEDEPTH_ERROR |
1017 |
两个图像的位深度不一致 |
INCONSISTENT_IMAGESIZE_ERROR |
1018 |
两个图像的尺寸不一致 |
INCONSISTENT_IMAGETYPE_ERROR |
1019 |
两个图像的类型不一致 |
IMGROI_ERROR |
1020 |
错误的图像ROI参数 |
IMGROI_NULL_ERROR |
1021 |
图像的ROI参数为空 |
IMG_CONVERTTYPE_ERROR |
1022 |
图像色彩空间变换的转换参数错误 |
CONFIG_PARAM_ERROR |
1023 |
配置参数错误 |
INVALID_ENGINE_ID |
2000 |
推理引擎对象异常 |
UNKNOWN_ERROR |
9000 |
未知错误 |