ModelInfo 与 ModelConfig 说明
YOLO 模块将 模型元数据 与 推理调参 拆分为两个接口,均返回 PascalCase JSON,须 FreeStringPtr 释放。
| 接口 | 用途 |
|---|---|
| YoloGetModelInfo / YoloListModels | 模型路径、输入尺寸、类别表、EP、任务类型等 |
| YoloGetModelConfig / YoloSetModelConfig | 置信度、NMS、TopK、类别过滤等 |
ModelInfo 主要字段
| 字段 | 说明 |
|---|---|
Success | 查询是否成功 |
ModelHandle | 模型句柄 |
ModelPath | 模型文件路径 |
BinPath | NCNN 时 .bin 路径(有则输出) |
LabelsPath | 类别名文件路径 |
ModelType | Onnx / Ncnn / Trt |
ModelTypeCode | 0 Engine / 1 ONNX / 2 NCNN |
InferenceType | Detect / Classify / Segment / Pose / Obb |
InferenceTypeCode | 0–4,与加载 API 的 inferenceType 一致 |
InputWidth / InputHeight | 模型输入尺寸 |
DeviceIndex | 加载时请求的设备索引(-1=CPU) |
InferenceDevice | 展示用 CPU / GPU0… |
ClassNameCount / ClassNames | 类别数量与名称表 |
ExecutionProvider | 运行时 EP 名称 |
AvailableProviders | 可用 EP 列表 |
Active / Loaded | 运行时状态 |
推理结果 JSON 使用
TaskType;ModelInfo 使用InferenceType(语义相同,命名区分用途)。
ModelConfig 主要字段
JSON 结构统一;有效字段因 InferenceType 而异(未设置的键可能不出现)。
| 字段 | 适用 | 说明 |
|---|---|---|
Confidence | 多数任务 | 置信度阈值;与推理 API 的 confidence 对应,详见 推理输入参数说明 |
IouThreshold | Detect/Segment/Pose/Obb | NMS 的 IoU 阈值;与 API 的 iou 对应 |
MaxDetections | Detect 等 | NMS 后最大框数;与 API 的 maxDetections 对应 |
TopK | Classify | 返回前 K 个分类结果;与 API 的 topK 对应 |
Classes / ClassesFilter | Detect 等 | 类别过滤(与 API 的 classes 参数同类语义) |
未调用过 YoloSetModelConfig 时,YoloGetModelConfig 可能仅返回 {"Success":true}。
示例
YoloGetModelInfo
{
"Success": true,
"ModelHandle": 1000,
"ModelPath": "D:\\models\\yolo11n-cls.onnx",
"ModelType": "Onnx",
"ModelTypeCode": 1,
"InferenceType": "Classify",
"InferenceTypeCode": 1,
"InputWidth": 224,
"InputHeight": 224,
"DeviceIndex": -1,
"InferenceDevice": "CPU",
"ClassNameCount": 1000,
"ExecutionProvider": "CPUExecutionProvider"
}
YoloGetModelConfig
{
"Success": true,
"Confidence": 0.5,
"IouThreshold": 0.45,
"MaxDetections": 100
}
