无脑——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

相关推荐
羊小猪~~10 分钟前
神经网络基础--什么是正向传播??什么是方向传播??
人工智能·pytorch·python·深度学习·神经网络·算法·机器学习
软工菜鸡36 分钟前
预训练语言模型BERT——PaddleNLP中的预训练模型
大数据·人工智能·深度学习·算法·语言模型·自然语言处理·bert
deephub2 小时前
Tokenformer:基于参数标记化的高效可扩展Transformer架构
人工智能·python·深度学习·架构·transformer
___Dream2 小时前
【CTFN】基于耦合翻译融合网络的多模态情感分析的层次学习
人工智能·深度学习·机器学习·transformer·人机交互
极客代码2 小时前
【Python TensorFlow】入门到精通
开发语言·人工智能·python·深度学习·tensorflow
王哈哈^_^3 小时前
【数据集】【YOLO】【VOC】目标检测数据集,查找数据集,yolo目标检测算法详细实战训练步骤!
人工智能·深度学习·算法·yolo·目标检测·计算机视觉·pyqt
写代码的小阿帆3 小时前
pytorch实现深度神经网络DNN与卷积神经网络CNN
pytorch·cnn·dnn
是瑶瑶子啦4 小时前
【深度学习】论文笔记:空间变换网络(Spatial Transformer Networks)
论文阅读·人工智能·深度学习·视觉检测·空间变换
wangyue45 小时前
c# 深度模型入门
深度学习
川石课堂软件测试5 小时前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana