使用ultralytics来把YOLO快速上手

399 阅读1分钟

screenshot-20240403-145426.png

环境准备

按照惯理,先准备conda环境,可以继续沿用上一期的环境

conda install -c pytorch -c nvidia -c conda-forge pytorch==2.0.1 torchvision==0.15.2 pytorch-cuda=11.7 ultralytics

直接上代码Show Me The Code

import ultralytics
from ultralytics import YOLOWorld
# 使用指定的显卡,也可以使用环境变量CUDA_VISIBLE_DEVICES来指定
ultralytics.utils.torch_utils.select_device(device='1,2,5')
# 会自动下载模型文件
model = YOLOWorld('yolov8s-world.pt')

# 传入需要识别的图片
results = model.predict('bus.jpg')

# 把识别结果保存到新图片里
results[0].save("res.jpg")

可能遇到的问题

  1. GET was unable to find an engine to execute
  • 根据CUDA安装位置,设置环境变量
export LD_LIBRARY_PATH=/usr/local/cuda-11.7/lib64/
export PATH=$PATH:/usr/local/cuda-11.7/bin/
  1. 显存不够用
  • 根据代码里注释指定显卡序号
  1. results[0].show()提示Error: no "view" rule for type "image/png" passed its test case
  • 在jupyter里,使用save来保存图片,并使用PIL等库来show