无脑——010 复现yolov8 使用yolov8和rt detr 训练自己的数据集

1.配置环境

1.

首先去官网下载yolov8的zip

https://github.com/ultralytics/ultralytics

存放在我的目录下G:\bsh\yolov8

然后使用conda创建新的环境

bash 复制代码
conda create -n yolov8 python=3.8
#然后激活环境
conda activate yolov8

然后安装pytorch,注意 ,pytorch1.10.1以后的版本才支持rtdetr.pt的两个权重文件。

bash 复制代码
 conda install pytorch==1.10.1 torchvision==0.11.2 torchaudio==0.10.1 cudatoolkit=10.2 -c pytorch

安装 ultralytics

bash 复制代码
pip install ultralytics

(然后我需要降低pillow的版本来适配我的pytorch,因为报错ImportError: DLL load failed while importing _imaging: 找不到指定的模块。:解决方法参考附录1,如果你们不需要请略过)

然后下载官网的权重文件:

https://github.com/ultralytics/assets/releases

这里我下载了一堆进行测试:

然后照一张图片进行测试,

可以参考官方文档

https://docs.ultralytics.com/modes/predict/#inference-arguments

自己照一张图片,放在G:\bsh\yolov8\datademo\bug.jpg里边

bash 复制代码
yolo detect predict model=weights/yolov8n.pt source=datademo\bus.jpg

运行结果如下图:

再拿一张自己随便拍的做测试,只能说种类越来越多了,之前yolov5那好像没有鼠标垫?

ps:

检测目录设置成文件夹就行。遍历文件夹里的所有文件进行检测。

bash 复制代码
yolo detect predict model=weights/yolov8n.pt source=datademo

顺便附上yolov8支持的检测参数

bash 复制代码
Usage - sources:
    $ yolo mode=predict model=yolov8n.pt source=0                               # webcam
                                                img.jpg                         # image
                                                vid.mp4                         # video
                                                screen                          # screenshot
                                                path/                           # directory
                                                list.txt                        # list of images
                                                list.streams                    # list of streams
                                                'path/*.jpg'                    # glob
                                                'https://youtu.be/Zgi9g1ksQHc'  # YouTube
                                                'rtsp://example.com/media.mp4'  # RTSP, RTMP, HTTP stream

Usage - formats:
    $ yolo mode=predict model=yolov8n.pt                 # PyTorch
                              yolov8n.torchscript        # TorchScript
                              yolov8n.onnx               # ONNX Runtime or OpenCV DNN with dnn=True
                              yolov8n_openvino_model     # OpenVINO
                              yolov8n.engine             # TensorRT
                              yolov8n.mlpackage          # CoreML (macOS-only)
                              yolov8n_saved_model        # TensorFlow SavedModel
                              yolov8n.pb                 # TensorFlow GraphDef
                              yolov8n.tflite             # TensorFlow Lite
                              yolov8n_edgetpu.tflite     # TensorFlow Edge TPU
                              yolov8n_paddle_model       # PaddlePaddle

测了刚才一圈,这些模型,除了yolov_nas的三个模型,都可以正常使用,据作者说暂时不打算加入yolo-NAS,那不知道为什么会有推理的模型,好奇怪

我还意外发现,yolov8s可以检测到键盘,其他的不行

2.训练自己的数据集

正在更新ing

2023年8月11日

还是使用yolov5准备的数据集,准备方法可以看我之前的文章

http://t.csdn.cn/MhxVF

然后运行代码:

bash 复制代码
yolo task=detect mode=train model=weights/yolov8s.pt data=./data/datazaoj1.yaml batch=4 epochs=50 imgsz=640 workers=4 device=0

这里要把batch和worker调小,因为我的GTX 1060的显卡只有6G的显存,不然 就会电脑死机,记得,训练的过程中,不要打开谷歌浏览器,这玩意占用内存太多了,很容易导致训练失败。

附录1

1.pillow库报错

bash 复制代码
ImportError: DLL load failed while importing _imaging: 找不到指定的模块。
(yolov8) PS G:\bsh\yolov8> pip show pillow
Name: Pillow
Version: 9.3.0

看出,报错是因为pillow版本过高,直接安装8.0版本即可

bash 复制代码
pip install pillow==8.0

2.yolo_nas测试问题

安装pip install super_gradients之后还是报错LooseVersion = distutils.version.LooseVersion

AttributeError: module 'distutils' has no attribute 'version'

然后又安装的pip install setuptools==59.5.0

相关推荐
禁默几秒前
Ops-Transformer:CANN生态赋能AIGC的Transformer专用加速库
深度学习·aigc·transformer·cann
悟纤4 分钟前
学习与专注音乐流派 (Study & Focus Music):AI 音乐创作终极指南 | Suno高级篇 | 第33篇
大数据·人工智能·深度学习·学习·suno·suno api
饭饭大王6665 分钟前
迈向智能体时代——构建基于 `ops-transformer` 的可持续 AI 系统
人工智能·深度学习·transformer
心疼你的一切12 分钟前
Unity异步编程神器:Unitask库深度解析(功能+实战案例+API全指南)
深度学习·unity·c#·游戏引擎·unitask
DeniuHe34 分钟前
Pytorch中的直方图
pytorch
哈__35 分钟前
CANN多模型并发部署方案
人工智能·pytorch
深鱼~36 分钟前
Attention机制加速实战:基于ops-transformer的性能优化
深度学习·性能优化·transformer·cann
慢半拍iii38 分钟前
对比分析:ops-nn与传统深度学习框架算子的差异
人工智能·深度学习·ai·cann
心疼你的一切40 分钟前
解构CANN仓库:AIGC API从底层逻辑到实战落地,解锁国产化AI生成算力
数据仓库·人工智能·深度学习·aigc·cann