码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • YOLOV8从零搭建一套目标检测系统(修改model结构必看)附一份工业缺陷检测数据集


    目录

    1.YOLOV8介绍

    2.YOLOV8安装

    2.1环境配置

    3.数据集准备


    1.YOLOV8介绍

    Yolov8结构图: 

    YoloV8相对于YoloV5的改进点:
    Replace the C3 module with the C2f module.
    Replace the first 6x6 Conv with 3x3 Conv in the Backbone.
    Delete two Convs (No.10 and No.14 in the YOLOv5 config).
    Replace the first 1x1 Conv with 3x3 Conv in the Bottleneck.
    Use decoupled head and delete the objectness branch.
    anchor free.
     

    YoloV8精度对比: 

     

    2.YOLOV8安装

    如果只是为了单纯使用,看下面这篇文章就好。

    YOLOv8 保姆级教程(训练自己的数据集)_陈子迩的博客-CSDN博客

    如果想为了改变模型的结构,接着往下看。

    2.1环境配置

    首先推荐使用anaconda配置python环境,不会的看下面这篇博客

    最新Anaconda安装-保姆级教程_陈子迩的博客-CSDN博客

    1. conda create -n YOLOv8 python=3.8 #创建YOLOv8的环境
    2. conda activate YOLOv8 #激活环境

    安装pytorch

    1. CUDA 11.6
    2. pip install torch==1.12.0+cu116 torchvision==0.13.0+cu116 --extra-index-url https://download.pytorch.org/whl/cu116 -i https://pypi.tuna.tsinghua.edu.cn/simple
    3. CUDA 11.3
    4. pip install torch==1.12.0+cu113 torchvision==0.13.0+cu113 --extra-index-url https://download.pytorch.org/whl/cu113 -i https://pypi.tuna.tsinghua.edu.cn/simple

         任选其一   

    安装依赖包

    pip install -r requirements.txt -i https://pypi.mirrors.ustc.edu.cn/simple/

    打开pycharm,载入你的环境。

     

     选择你的python版本,正常新建的conda解释器会自动弹出

    接下来 打开pycharm的终端,就是最底下的一行

    选择这一个 

    如果你安装了 ultralytics 包 ,那请卸载掉,如果没有装,跳过这一步。

    运行python setup.py install.

     不用管中间出现啥

    怎么判断自己是否安装成功,主要是看最后输出是否有Finished processing dependencies for ultralytics即可.

    3.数据集准备

    链接:https://pan.baidu.com/s/1FaBTUQvceUJJu3s1dg4xMg 
    提取码:ypwa

    给大家准备了一个钢铁的数据集

    data.yaml放到下面路径

     数据集放在下面路径即可

     修改yaml中的地址

     创建一个my train的文件

     放入下面代码

    1. from ultralytics import YOLO
    2. # model = YOLO('yolov8n-CF2_ATT.yaml')
    3. # model.train(data='data.yaml', epochs=5)
    4. model = YOLO('yolov8n.yaml')
    5. model.train(data='data.yaml', epochs=10)

     model.train函数的参数在下面选择

     配置好后就可以训练了,你也可以根据自己的需求修改模型配置文件

    查看结果

    配置my val

    1. from ultralytics import YOLO
    2. model = YOLO(r'D:\YOLOv8\ultralytics\models\yolo\detect\runs\detect\train11\weights\best.pt')
    3. # It'll use the data yaml file in model.pt if you don't set data.
    4. model.val()
    5. # or you can set the data you want to val
    6. model.val(data='data.yaml')

     以上就是完整的流程

    yolov8可能遇到的报错下篇文章给大家罗列

  • 相关阅读:
    计算机毕业设计之java+springboot基于vue的广场舞团社团网站-社团管理系统
    基于Res-DNN的端到端MIMO系统信号检测算法
    字符串讲解
    一篇文章带你用动态规划解决打家劫舍问题
    vue 样式加scoped不起作用 局部更改element-ui的默认样式
    【MySQL】字节面试:分析死锁是怎么产生的?
    (Java)设计模式:创建型
    在 Django Model ViewSet 中实现多对多字段的搜索
    用Docker部署SSM项目
    Roguelike 游戏中的计算哲学
  • 原文地址:https://blog.csdn.net/weixin_45303602/article/details/132767807
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号