Skip to main content

检测

yolov5最新版本插件,请点击这里.

  • yolov5 该部分已集成至插件当中
from ascript.android import plug
plug.load("yolov5:1.3")
import yolov5

一种目标检测深度学习算法 ,通过对 图片中目标的标注,训练.得到模型,下载运行模型从而检测目标

应用场景

对于不同手机,不同分辨率情况下的目标检测. 能达到很好的效果.

例如 “微信跳一跳”

初始化模型

  • 函数
yolov5.load(model:str)
  • 参数
参数类型是否必填说明
modelbool线上模型库中的模型名称,格式: ("模型名称:模型版本号") 填写后,将自动下载线上模型,如缓存中存在,则从本地加载. 也可以写入模型文件夹路径
  • 返回值 bool

True = 初始化成功, False = 初始化失败

  • 示例
from ascript.android import plug
plug.load("yolov5:1.3")
import yolov5
res = yolov5.load("微信跳一跳:1.5")
print(res)

检测所有目标

  • 函数
yolov5.find_all(bitmap=None,use_gpu:bool=False,size:int=640)
  • 参数
参数类型是否必填说明
bitmapBitmap要识别的图片,如果要范围识别可以使用screen.capture(0,0,100,100) 来圈定范围
use_gpubool是否使用gpu加速,默认False
sizeint图片的识别最大边长,默认640px,建议不要更改
  • 返回值

识别目标的结果对象列表,包含的属性有:

[
{
'label': "方块" # 目标名称
'x': 10, # 目标坐标x
'y': 10, # 目标坐标y
'w': 100, # 目标宽度
'h': 100, # 目标高度
'prob': 0.98 # 目标识别置信度
},
{
.....
}
]
  • 示例
# 全屏识别案例
# 加载插件
from ascript.android import plug
plug.load("yolov5")
import yolov5
# 加载模型
yolov5.load("微信跳一跳:1.3")

while True:
# 全屏识别
res = res = yolov5.find_all()
for r in res:
print(r['label']) # 目标名称
print(r['prob']) # 可信度
print(r['x']) # 坐标x
print(r['y']) # 坐标y
print(r['w']) # 目标宽度
print(r['h']) # 目标高度

  • 示例
# 区域识别案例
# 加载插件
from ascript.android import plug
plug.load("yolov5")
import yolov5
from ascript.android import screen
# 加载模型
yolov5.load("微信跳一跳:1.3")

while True:
# 全屏识别
res = res = yolov5.find_all(screen.capture(15,7,1065,1721))
for r in res:
print(r['label']) # 目标名称
print(r['prob']) # 可信度
print(r['x']) # 坐标x
print(r['y']) # 坐标y
print(r['w']) # 目标宽度
print(r['h']) # 目标高度