YOLOv7--复现并训练自己的数据集(简单)

目录

1、官网下载代码

2、上传代码至服务器

3、配置环境

4、上传数据集

5、新建yaml文件

6、修改Yolov7.yaml文件

7、修改train.py文件

8、开始训练

9、复现Yolov7遇到的错误:


1、官网下载代码

 Yolov7代码下载网址:

https://github.com/WongKinYiu/yolov7/tree/main

2、上传代码至服务器

将代码上传到autodl云服务器上,上传步骤见博客:

上传数据到--云服务器Autodl_autodl上传项目-CSDN博客

3、配置环境

 使用autodl云服务器可以直接创建环境

在该环境中,进入到yolov7-main文件夹下:

安装依赖环境 requirements.txt,建议使用清华源安装,速度比较快,命令如下:

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple 

 等安装成功之后,就ok了。接下来就可以测验。

4、上传数据集

与Yolov7-main同目录下,创建一个datasets文件夹,将ua-detrac数据集上传到该文件夹下。

5、新建yaml文件

新建 ua-detrac.yaml 文件,代码如下:

注意:这里路径建议使用绝对路径,不然有可能会报错哦!!

train: /root/autodl-tmp/datasets/ua-detrac/images/train
val: /root/autodl-tmp/datasets/ua-detrac/images/val

nc: 4   
names:
  0: car
  1: bus 
  2: van
  3: others

将ua-detrac.yaml 文件上传到yolov7-main/data文件夹下: 

 

6、修改Yolov7.yaml文件

将yolov7.yaml 中的 nc 改为4

7、修改train.py文件

将红框内的改为ua-detrac.yaml

8、开始训练

运行train.py文件:

则,复现成功。

9、复现Yolov7遇到的错误:

1、出现下面错误:

Scaled weight_decay = 0.0005
Optimizer groups: 95 .bias, 95 conv.weight, 98 other
Traceback (most recent call last):
  File "train.py", line 616, in <module>
    train(hyp, opt, device, tb_writer)
  File "train.py", line 245, in train
    dataloader, dataset = create_dataloader(train_path, imgsz, batch_size, gs, opt,
  File "/root/autodl-tmp/yolov7-main/utils/datasets.py", line 69, in create_dataloader
    dataset = LoadImagesAndLabels(path, imgsz, batch_size,
  File "/root/autodl-tmp/yolov7-main/utils/datasets.py", line 392, in __init__
    cache, exists = torch.load(cache_path), True  # load
  File "/root/miniconda3/lib/python3.8/site-packages/torch/serialization.py", line 595, in load
    return _legacy_load(opened_file, map_location, pickle_module, **pickle_load_args)
  File "/root/miniconda3/lib/python3.8/site-packages/torch/serialization.py", line 764, in _legacy_load
    magic_number = pickle_module.load(f, **pickle_load_args)
_pickle.UnpicklingError: STACK_GLOBAL requires str

解决方法:

删除数据集labels文件中的.cache文件,需要先删除。

 感谢博客:在跑YOLOv7的官方代码时,出现了这个错误:_pickle.UnpicklingError: STACK_GLOBAL requires str-CSDN博客

2、出现UserWarning: torch.meshgrid 错误

解决方法:找到虚拟环境下的functional.py文件,在下图的位置上加上

,indexing = 'ij' 

推荐博客:UserWarning: torch.meshgrid_userwarning: torch.meshgrid: in an upcoming releas-CSDN博客 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/504499.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【vue2+antvx6】报错Cannot read properties of undefined (reading ‘toUpperCase‘)

我的代码是这样的 <el-collapseref"collapse"v-model"active"accordionclass"collapseStart"change"collapsechange"><el-collapse-item:name"String(index 1)"v-for"(i, index) in List":key"in…

Linux重点思考(下)--shell脚本使用以及内核开发

Linux重点思考(下&#xff09;--shell脚本使用和组合拳 shell脚本的基础算法shell脚本写123...n的值&#xff0c;说思路Shell 脚本用于执行服务器性能测试的死循环Shell 脚本备份和定时清理垃圾文件 shell脚本的内核开发正向映射反向映射 shell脚本的基础算法 shell脚本写123……

SpringBoot常见注解有哪些

Spring Boot的核心注解是SpringBootApplication , 他由几个注解组成 : ● SpringBootConfiguration&#xff1a; 组合了- Configuration注解&#xff0c;实现配置文件的功能&#xff1b; ● EnableAutoConfiguration&#xff1a;打开自动配置的功能&#xff0c;也可以关闭某个自…

答辩PPT最后一页除了写谢谢观看,谢谢聆听,感谢老师,还可以写什么呢?

以我的答辩PPT为例吧 我当时写的这两句话得到了导师的肯定&#xff0c;大家可以参考 感谢导师悉心指导&#xff0c;敬请老师批评指正

linux之忘记root密码

一&#xff0c;开机到如下地方按下e进入紧急模式 然后再如下位置输入init/bin/bash 然后Ctrlx 二&#xff0c; 修改密码 以上操作分别为 1&#xff09;&#xff0c;重新挂载根目录 mount -o remount,rw / 2&#xff09;&#xff0c;修改密码 passwd root 3&#xff09;&a…

redis-shake可视化监控

目录 一.redis-shake v4 1.镜像 2.shake.toml 3.启动redis-shake后 二.json-exporter配置 1.Dockerfile 2.config.yml 三.prometheus配置 1.prometheus.yml 2.redis-shake.json 四.grafana 一.redis-shake v4 1.镜像 ######################### Dockerfile #########…

平衡二叉树(AVL树)

文章目录 平衡二叉树&#xff08;AVL树&#xff09;1、平衡二叉树概念2、平衡二叉树的的实现2.1、平衡二叉树的结点定义2.2、平衡二叉树的插入2.3、平衡二叉树的旋转2.3.1、右单旋&#xff08;R旋转&#xff09;2.3.2、左单旋&#xff08;L旋转&#xff09;2.3.3、先右单旋再左…

详解JAVA程序调优

目录 1.概述 2.命令 2.1.查看JAVA进程 2.2.查看虚拟机状态 2.3.查看线程的情况 3.工具 3.1.jconsole 3.2.jvisualVM 4.实战场景 1.概述 在实际工作中我们难免会遇见程序执行慢、线程死锁等一系列的问题&#xff0c;这时候就需要我们定位具体问题然后来解决问题了。所…

正弦实时数据库(SinRTDB)的使用(7)-历史统计查询

前文已经将正弦实时数据库的使用进行了介绍&#xff0c;需要了解的可以先看下面的博客&#xff1a; 正弦实时数据库(SinRTDB)的安装 正弦实时数据库(SinRTDB)的使用(1)-使用数据发生器写入数据 正弦实时数据库(SinRTDB)的使用(2)-接入OPC DA的数据 正弦实时数据库(SinRTDB)…

【Frida】【Android】02_JAVA层HOOK

&#x1f6eb; 系列文章导航 【Frida】【Android】01_手把手教你环境搭建 https://blog.csdn.net/kinghzking/article/details/136986950【Frida】【Android】02_JAVA层HOOK https://blog.csdn.net/kinghzking/article/details/137008446【Frida】【Android】03_RPC https://bl…

从输入url到页面展示的过程

唠唠叨&#xff1a;我不想误人子弟&#xff0c;我这篇算是搬运工&#xff0c;加上自己的理解做点总结&#xff0c;所以还请大家科学上网去看这篇&#xff1a;https://aws.amazon.com/cn/blogs/mobile/what-happens-when-you-type-a-url-into-your-browser/ 是这六个步骤&#…

前端学习<二>CSS基础——13-CSS3属性:Flex布局图文详解

前言 CSS3中的 flex 属性&#xff0c;在布局方面做了非常大的改进&#xff0c;使得我们对多个元素之间的布局排列变得十分灵活&#xff0c;适应性非常强。其强大的伸缩性和自适应性&#xff0c;在网页开中可以发挥极大的作用。 flex 初体验 我们先来看看下面这个最简单的布局…

笔记: JavaSE day16笔记 - string字符串

第十六天课堂笔记 学习任务 Comparable接口★★★★ 接口 : 功能的封装 > 一组操作规范 一个抽象方法 -> 某一个功能的封装多个抽象方法 -> 一组操作规范 接口与抽象类的区别 1本质不同 接口是功能的封装 , 具有什么功能 > 对象能干什么抽象类是事物本质的抽象 &…

学习刷题-14

3.29 贪心算法 跳跃游戏 II 给定一个非负整数数组&#xff0c;你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 你的目标是使用最少的跳跃次数到达数组的最后一个位置。 贪心的思路&#xff0c;局部最优&#xff1a;当前可移动距离尽可能多…

Redis 常见数据结构及命令

目录 一.Redis常见的数据结构 二.Redis数据结构对应的命令 1.String类型 2.Hash类型 3.List类型 4.Set类型 5.Sorted Set类型 一.Redis常见的数据结构 Redis支持多种数据结构&#xff0c;包括字符串&#xff08;string&#xff09;、哈希&#xff08;hash&#xff09;、…

B端:甲方吐槽界面丑,少反驳,气势能得100分,体验永远0分

2023-10-24 10:20贝格前端工场 甲方吐槽B端系统界面丑陋时&#xff0c;作为设计师或开发者&#xff0c;我们不应该立即反驳或争辩。相反&#xff0c;我们应该以积极的态度倾听甲方的意见&#xff0c;并采取以下措施&#xff1a; 理解甲方需求&#xff1a; 首先要理解甲方对界…

二维码门楼牌管理应用平台建设:一扫即知,智慧生活新篇章

文章目录 前言一、二维码门楼牌管理的创新之处二、二维码门楼牌管理应用平台的实际应用三、二维码门楼牌管理应用平台的未来展望 前言 随着信息技术的飞速发展&#xff0c;二维码门楼牌管理应用平台应运而生&#xff0c;为城市管理和居民生活带来了极大的便利。只需轻轻一扫&a…

CentOS7 磁盘相关的命令及磁盘重新调整分配

umount 在CentOS 7中&#xff0c;umount是一个常用的命令&#xff0c;用于卸载文件系统。以下是一些常用的umount命令&#xff1a; 卸载指定的文件系统&#xff1a; umount /dev/sdXN 其中&#xff0c;/dev/sdXN是你想要卸载的分区。例如&#xff0c;/dev/sda1。 卸载并…

传参的指针,你的值到底变了没?!(有关函数形参修改的另类案例)

我们都知道&#xff0c;想要在函数中修改某个变量的值&#xff0c;传变量本身是没有用的。原因在于不同的函数在不同的空间上&#xff0c;函数的生命周期随着函数的调用而结束&#xff0c;因此在函数内部进行的值操作是不会对函数外的变量产生影响的。所以在函数里面想要修改变…

今日早报 每日精选15条新闻简报 每天一分钟 知晓天下事 3月31日,星期日

每天一分钟&#xff0c;知晓天下事&#xff01; 2024年3月31日 星期日 农历二月廿二 1、 医保局&#xff1a;北京、广西、内蒙古、甘肃已将辅助生殖纳入医保报销。 2、 百日咳卷土重来&#xff0c;今年已有13人死亡&#xff0c;医生提醒&#xff1a;久咳不愈要警惕。 3、 上海…