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

相关推荐
啵啵菜go10 分钟前
解决使用PPIO欧派云服务器时无法使用sftp的问题
运维·服务器·深度学习·云计算
尔呦1 小时前
Prompt-Free Diffusion: Taking “Text” out of Text-to-Image Diffusion Models
深度学习
好悬给我拽开线1 小时前
【】AI八股-神经网络相关
人工智能·深度学习·神经网络
江畔柳前堤6 小时前
CV01_相机成像原理与坐标系之间的转换
人工智能·深度学习·数码相机·机器学习·计算机视觉·lstm
码上飞扬6 小时前
深度解析:机器学习与深度学习的关系与区别
人工智能·深度学习·机器学习
逆境清醒8 小时前
开源数据科学平台Anaconda简介
人工智能·python·深度学习·机器学习·anaconda
mm_exploration8 小时前
torch常用函数
pytorch·python·深度学习
剑圣土豆9 小时前
大模型LLM面试常见算法题-包括Attention和Transformer常见面试题
人工智能·深度学习·算法·自然语言处理·面试·nlp·transformer
AndrewPerfect10 小时前
深度学习之交叉验证
人工智能·深度学习·机器学习
正在走向自律10 小时前
AI是在帮助开发者还是取代他们?
人工智能·深度学习·机器学习