Skip to content

YOLO相关方法

函数列表

1. 创建一个YoloV5对象 (YoloV5.init)

说明: 创建一个YoloV5对象

函数: YoloV5.init(lablepath,param_path,bin_path)

参数:

参数名类型说明
lablepath字符串标签文件路径
param_path字符串参数文件路径
bin_path字符串二进制文件路径

返回值:

返回值类型说明
userdata成功时返回YoloV5对象
nil失败时返回nil

示例:

lua
local work = getWorkPath() .. "/yolo"
mkdir(work)
extractAssets("yolo.rc" , work , "*.*")
local result = work .. "/result.txt"
local param = work .. "/yolov5s.param"
local bin = work .. "/yolov5s.bin"

local yolov5 = YoloV5.init(result , param , bin)

if yolov5 ~= nil then
	print("加载并创建YoloV5成功")
else
	print("加载并创建YoloV5失败,检查参数对应文件路径是否存在")
end

2. Yolov5目标检测 (YoloV5.detect)

说明: Yolov5目标检测

函数: YoloV5.detect(image)

参数:

参数名类型说明
imageQImage对象QImage对象类型,如果第一个参数填写了就表示从QImage取图,否则表示从系统截图

返回值:

返回值类型说明
字符串返回一个json字符串

示例:

lua
local work = getWorkPath() .. "/yolo"
mkdir(work)
extractAssets("yolo.rc" , work , "*.*")
local result = work .. "/result.txt"
local param = work .. "/yolov5s.param"
local bin = work .. "/yolov5s.bin"

local yolov5 = YoloV5.init(result , param , bin)

local image = QImage.new()

if yolov5 ~= nil then
	print("加载并创建YoloV5成功")
	if image:snapShot(100,100,200,300) then
		local ret = yolov5:detect(image)
		if ret ~= nil then
			print(ret)
		end
	end
else
	print("加载并创建YoloV5失败,检查参数对应文件路径是否存在")
end