概述
和平精英人物檢測,可以識別游戲中所有人物角色,并通過繪制框將人物選中,訓練的模型僅僅具有識別功能,可以識別游戲中的視頻、圖片等文件,搭配Autox.js可以推理,實現實時繪制,但是對手機性能有要求,低配手機會有卡頓現象;本文僅提供一個在手機實時檢測推理的思路具體如何去實現需要自己動手
演示效果
基于YoloV8使用飛槳AI studio訓練和平精英人物檢測模型:autox.js實時游戲檢測(2
核心邏輯
通過yolov8訓練得到識別模型,進行識別圖片或視頻應用,如果需要手機進行推理,則需要將模型轉換為ncnn,搭配Autox.js推理源代碼完成實時繪制
訓練方式
下載附件,刪除里面多余的 "部署工具及模型文件"即可(項目內已包含Yolov8n.pt)
安裝
pip install ultralytics
推理
yolo task=detect mode=predict model=yolov8n.pt conf=0.25 source='ultralytics/assets/bus.jpg'
訓練代碼
yolo task=detect mode=train model=yolov8n.pt data=hpjys.yaml epochs=100 imgsz=640 device=cpu
恢復訓練
yolo train resume model=runs/detect/train/weights/last.pt
部署方式
1、用于識別圖片:下載已完成訓練的pt模型,讀取模型(或者直接運行demo文件即可)
import cv2# 加載模型
model = YOLO("best.pt")# 讀取圖片
img_path = "C:\\Users\\Administrator\\Desktop\\test\\2.jpg"
img = cv2.imread(img_path)# 檢測
results = model(img) # 也可以用 model.predict(img)# 可視化結果
annotated_img = results[0].plot() # 繪制檢測框
cv2.imshow("Detection", annotated_img)
cv2.waitKey(0) # 按任意鍵關閉窗口
cv2.destroyAllWindows()
運行結果
2、用于手機端游戲實時繪制:
解壓ultralytics-main\部署工具及模型文件\autoxjs游戲實時推理模型
下的ncnn轉化后的模型best.param和best.bin,下載autox.jsv7,將兩個數據替換到源代碼中即可
附件包含
- 和平精英數據集(存放位置:ultralytics-main\部署工具及模型文件\adatasets)
- autoxjs手機實時推理ncnn模型(存放位置:ultralytics-main\部署工具及模型文件\autoxjs手機實時推理模型)
- 電腦端圖片視頻檢測pt模型(存放位置:ultralytics-main\部署工具及模型文件\電腦端圖片視頻檢測模型)
- autox.jsV7安裝包(存放位置:ultralytics-main\部署工具及模型文件\autox.js安裝包和推理源代碼)
- autox.js配套推理代碼(存放位置:ultralytics-main\部署工具及模型文件\autox.js安裝包和推理源代碼)
評估
視頻部分
基于YoloV8使用飛槳AI studio訓練和平精英人物檢測模型:搭配autox.js實時游戲檢測(1
該視頻演示了如何在飛槳studio完成訓練過程,也可以自己在本地環境訓練
基于YoloV8使用飛槳AI studio訓練和平精英人物檢測模型:搭配autox.js實時游戲檢測(2
該視頻演示了有意過程,后部分主要介紹如何使用autos.js進行推理