YoloV8(图片识别)

YoloV8(图片识别)

YoloV8是基于深度学习(ai大模型)的图片检测、识别算法,是目前为止效率最高、效果最好的算法。可以完全替代找图,比任何基于OpenCV的找图算法强很多。YoloV8initdetect
例子:使用yolo识别当前手机的界面
function main() {
    requestScreenShot();

    var yolo = new YoloV8();
    // model_name替换成自己的模型名(注意不要带后缀名),模型文件为:model_name.param和model_nam.bin。class1,class2为目标的类别名
    var b = yolo.init('/sdcard/model_name', ['class1', 'class2'])
    console.log('b:', b)

    // 会自动截屏,然后检测截图,识别目标
    var r = yolo.detect();
    console.log('r', r)
}

YoloV8

YoloV8构造函数。
参数:
参数名 类型 必填 说明

init

初始化,返回boolean。
参数:
参数名 类型 必填 说明
modelName string 必填 模型名字,可以带路径,注意不要加后缀名。支持全路径、相对路径和资源文件。文件全路径,比如:/sdcard/model_name。相对路径,是相对手机外部存储目录,比如:model_name,该文件存储在手机外部存储目录下。资源路径,打包时把文件添加到apk,使用asset:来访问,比如:asset:model_name。点击这里查看如何训练模型
categoryList 数组 必填 训练模式时,训练的目标类别名数组,比如['苹果','橘子'],注意顺序。

detect

检测目标。返回数组,比如:[{left:10, top:10, width:99, height: 100, prob:0.98, label: '苹果'}],prob表示识别出苹果的概率为98%。
参数:
参数名 类型 必填 说明
probThreshold float 选填 概率阈值,低于了这个阈值不返回。默认为0.45
nmsThreshold float 选填 nms阈值,低于了这个阈值不返回。默认为0.65
bitmap Bitmap 选填 位图,默认为null。如果为null,则使用截图识别