YOLO-Worldv2两分钟快速部署

本次部署使用的框架基于ultralytics, 并且已经集成最新版本的YOLOv8框架:

一键环境配置

bash 复制代码
pip install ultralytics

基础使用

  • 训练
python 复制代码
from ultralytics import YOLOWorld
model = YOLOWorld('yolov8x-worldv2.pt')
results = model.train(data='coco8.yaml', epochs=100, imgsz=640)
results = model('path/to/bus.jpg')
  • 推理
python 复制代码
from ultralytics import YOLOWorld
model = YOLOWorld('yolov8s-worldv2.pt')
results = model.predict('path/to/image.jpg')
results[0].show()
  • 自定义标签
    • 我们定义了保温杯,马克杯,纸杯,抽纸,笔记本,屏幕等标签。均不被包含在COCO类别定义中。
python 复制代码
model = YOLOWorld('yolov8s-worldv2.pt')
model.set_classes(['Insulated_cup','mug','paper_cup','drawing_paper','laptop', 'screen', 'woman', 'wirless_earphone', 'Shoulder_bag'])
model.save("elephant_camel_world.pt")
  • 导出onnx
python 复制代码
model = YOLO('cup_mug_world.pt')
model.export(format="onnx", opset=11)

实时推理

简单修改代码,使得opencv调用网络摄像头并介入yolo-world。代码如下:

python 复制代码
from ultralytics import YOLOWorld
import cv2
import numpy as np

model = YOLOWorld('yolov8x-worldv2.pt') 
model.set_classes(['Insulated_cup','mug','paper_cup','drawing_paper','laptop', 'screen', 'woman', 'wirless_earphone', 'Shoulder_bag'])
model.save("elephant_camel_world.pt")


capture = cv2.VideoCapture(2)

# while True:
ret, frame = capture.read()
# cv2.imshow("result", frame)
# cv2.waitKey(0)

while True:
    ret, frame = capture.read()
    results = model.predict(np.array(frame))
    cv2.imshow("result", results[0].plot(False))
    cv2.waitKey(1)

具体效果如下。从图中我们可以看到,yolo-world确实可以扩展类别到一些细分、甚至是类似的其他类别。但是存在类别识别错误,以及同物体重识别的情况。

相关推荐
高洁0114 小时前
AI算法实战:逻辑回归在风控场景中的应用
人工智能·python·深度学习·transformer
sali-tec14 小时前
C# 基于OpenCv的视觉工作流-章50-霍夫找圆
图像处理·人工智能·opencv·算法·计算机视觉
lrh12280015 小时前
神经网络基础入门
深度学习
乔公子搬砖15 小时前
告别识别率焦虑:视频 AI 工程化实战 —— 检测→判定→聚合→治理全链路拆解
人工智能·yolo·决策树·计算机视觉·视觉检测
pzx_00115 小时前
【优化器】Adagrad 、RMSPorp、Adam详解
人工智能·深度学习·机器学习
预见AI16 小时前
C#索引器练习题
开发语言·计算机视觉·c#
TonyLee01716 小时前
对比实验Baselines记录
人工智能·深度学习·机器学习
这张生成的图像能检测吗16 小时前
(论文速读)HDNet:通过学习突出显示前景对象的低光显著目标检测
图像处理·人工智能·目标检测·计算机视觉·低照度
小布的学习手记16 小时前
深度学习里的“自动稳压器”:通俗解读批量规范化(Batch Normalization)
人工智能·深度学习·batch
jllllyuz16 小时前
具有输出LC滤波器的三相逆变器前馈神经网络模型预测控制(FFNN-MPC)
人工智能·深度学习·神经网络