YOLO函数-手机内执行
说明
提示
- YOLO使用说明 请看安卓版本的,训练教程都是一样
- yolov8Agent模块是属于对yolo识别模块进行识别
- 该模块运行在手机中,利用手机的算力,减少电脑的消耗
yolov8Agent.releaseAll 释放所有实例
- 释放所有实例
- 适配EC 9.0.0+
// 请看代码例子
yolov8Agent.newYolov8 初始化yolov8实例
- 初始化yolov8实例
- 适配EC 9.0.0+
- @return
Yolov8AgentUtil
对象
function yoloagenttest2() {
yolov8Agent.releaseAll()
let yoloInstance = yolov8Agent.newYolov8()
logd("yoloInstance " + yoloInstance.yolov8AgentId)
let config = yoloInstance.getDefaultConfig("yolov8s-640", 640, 0.25,
0.35, "ALL", 0, ["aixin", "pinglun"])
config["num_thread"] = 1;
logd("Start upload model file...")
// 上传模型文件到 agent中,让yolo初始化
let paramPath = utils.uploadAgentFile("/Users/x/iosidea/tjyolo/src/res/model.ncnn.param", "model2.ncnn.param")
let binPath = utils.uploadAgentFile("/Users/x/iosidea/tjyolo/src/res/model.ncnn.bin", "model2.ncnn.bin")
let ok = yoloInstance.initYoloModel(config, paramPath, binPath)
if (!ok) {
console.log("err " + yoloInstance.getErrorMsg())
return;
}
//上传图片到agent中,用来识别 也可以使用 imageAgent模块的截图函数截屏识别
let img = utils.uploadToAutoImage("/Users/x/iosidea/yolo-onnx/src/res/1.png")
logd("img -> " + img)
for (let i = 0; i < 10; i++) {
console.time(1)
let result = yoloInstance.detectImage(img, [])
logd("result " + console.timeEnd(1) + " ms ---> " + result)
}
imageAgent.recycle(img)
yoloInstance.release();
}
yoloagenttest2();
yolov8Agent.newYolov8Onxx 初始化yolov8 onnx 实例,支持多实例
- 初始化yolov8 onnx 实例
- 适配EC 9.0.0+
- @return
Yolov8AgentUtil
实例对象
function yoloagenttest() {
yolov8Agent.releaseAll()
let yoloOnnxInstance = yolov8Agent.newYolov8Onnx()
logd("yoloOnnxInstance " + yoloOnnxInstance.yolov8AgentId)
let onnxConfig = yoloOnnxInstance.getOnnxConfig(["aixin", "pinglun"], 0, 0, 0.35, 0.55, -1)
logd("Start upload onnx file...")
// 上传模型文件 并且初始化
let onnxPath = utils.uploadAgentFile("/Users/x/iosidea/yolo-onnx/src/res/best.onnx", "onnx.onnx")
let onnxOk = yoloOnnxInstance.initYoloModel(onnxConfig, onnxPath, "")
if (!onnxOk) {
console.log("err " + yoloOnnxInstance.getErrorMsg())
return;
}
let img = utils.uploadToAutoImage("/Users/x/iosidea/yolo-onnx/src/res/1.png")
logd("img -> " + img)
for (let i = 0; i < 10; i++) {
console.time(1)
let result = yoloOnnxInstance.detectImage(img, ["aixin"])
logd("result " + console.timeEnd(1) + " ms ---> " + result)
}
imageAgent.recycle(img)
yoloOnnxInstance.release();
}
yoloagenttest();