屏幕区域目标检测 - YoloDetect
函数简介
截取屏幕矩形区域做目标检测。
接口名称
YoloDetect
DLL 调用
long YoloDetect(long ola, int x1, int y1, int x2, int y2, long modelHandle, string classes, double confidence, double iou, int maxDetections);
参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| ola | 长整数型 | OLAPlug 对象指针,由 CreateCOLAPlugInterFace 生成。 |
| x1 | 整数型 | 屏幕区域左上角 x(绝对坐标),须 x2>x1 |
| y1 | 整数型 | 屏幕区域左上角 y |
| x2 | 整数型 | 屏幕区域右下角 x |
| y2 | 整数型 | 屏幕区域右下角 y |
| modelHandle | 长整数型 | 模型句柄,任务类型须与接口一致(Detect/Classify/…) |
| classes | 字符串 | 类别过滤:竖线分隔如 dog |
| confidence | 双精度 | 置信度阈值 0~1:Score 低于此值的候选在 NMS 前丢弃;越大误检越少、漏检越多,常用 0.25~0.5 |
| iou | 双精度 | NMS 的 IoU 阈值 0~1:两框重叠度(IoU)超过此值则抑制低分框以去重;越小框越少,常用 0.45~0.7 |
| maxDetections | 整数型 | NMS 后最多保留的检测框数;密集场景防结果过多,UI 单目标可设 1~10 |
示例
long json = YoloDetect(ola, 0, 0, 800, 600, h, "monster|boss", 0.5, 0.45, 100);
返回值
长整数型:PascalCase JSON 推理结果字符串指针;失败时 Success 为 false。
注意事项
- 需要插件已开通 Yolos 模块权限。
- 须为 Detect(inferenceType=0)模型;Region 含 Vertices、Center。
- 推理入参(confidence、iou、topK、classes 等)详解见 推理输入参数说明。
- 推理结果 JSON 字段说明见 推理结果JSON说明。
- 返回的 JSON 字符串须调用 FreeStringPtr 释放。
本接口关键参数
| 参数 | 作用摘要 |
|---|---|
confidence | 过滤低分候选框,再进入 NMS |
iou | NMS 去重重叠框的 IoU 阈值 |
maxDetections | 限制最终框数量上限 |
classes | 只检测指定类别;空=全部 |
详见 推理输入参数说明。
- 已加载 names 时 classes 用类别名;未加载时用 class_id。
- 类别过滤无匹配时可能返回 ClassFilterSkipped=true 且 Regions 为空。
