yolov5实现机器视觉ai自瞄,本人跑代码训练时总结下来的坑(参数设置,服务器使用,自动打标签,训练速度,显存使用率...)

article/2025/8/19 4:20:49

想到啥些啥,都是些我遇到的,很坑,但偏偏又有点蠢的问题。

 

路过进来的朋友可以 ctrl+F 搜一下有没有自己苦恼的问题。

1,训练的模型使用越小(最小是yolov5n),帧数越高,自瞄间隔越短。

        我一开始是用yolov5l训练,因为官方说这个综合评价最棒,结果训练出来的pt模型大小80多MB,跑程序帧数还低的一匹(我1650的显卡,垃圾的很)。后来群里有个大佬发了个13MB的,我试了一下,简直像用了海飞丝,乐死我了。一问才知道,训练出来的模型大小,是跟训练时使用官方模型大小有关,越小的越快越爽,虽然精度低了,但足够跑个fps游戏自瞄了。

        (群友说10系显卡用n,20系用s)

2,打标签很辛苦,所以我一开始是找群里的大佬们打好的标签用,但总有大佬们不玩的游戏,这个时候我们可以先做小部分数据集,跑个pt出来,然后用自己的pt再去识别图片。detect.py里面有个参数“--save-txt”watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5rCq5aSa5aSa,size_20,color_FFFFFF,t_70,g_se,x_16

 随便右键,点出这个修改运行配置的东西,吧参数名添加到图片里的那个位置保存,然后跑detect代码,就能在结果run里不仅仅有识别的图片,还有写好的txt标签。

        然后再自己用labellmg,打开图片位置和标签位置,看看那些是多余的打错的,改改就能用了。

        再不济可以找一些大佬写好的一键打标签的代码或者软件,都能解放双手。

3,(这时候是用的自己的电脑跑模型)batch size是个很奇怪的东西,听别人说是按自己显存一半的大小设置,我自己的电脑显存是4g,一开始我设置成4,跑不了(报错)。3,行,我就跑3了,但gpu使用率一直是50%左右。后来狠心改回16,突然就能跑了,使用率也拉满,干脆就这样吧。(2022.4.26)

8f4f30cdf873490d939a542ba0bb6e2e.png

4,(开始买云服务器跑模型)在服务器(我用的极链ai云)跑训练集,先买个最便宜的卡(比如2.5一个小时),跟着你找的教程走一遍,即使报错了,花一个半个小时debug,也不会亏什么钱。

        开始我以为我能一遍过,买了2个gpu的3090,10块钱一个小时,结果debug就花了一个小时,麻了,10块钱打水漂了(2022.4.28)

5,如果是在极链ai云的话,推荐用Tesla 的卡(这个是专门用来做科研类的卡,比同价位普通卡快很多)。

6e6a20a678b34bb59a98a1a8c51507a4.png

6,训练的时候发现显卡的gpu使用率很低,显存无论怎么调都用不完,那大概是你的数据集不够,搞多点数据集图片就好。  

        例如:你的数据集是100张图片,batchsize最高也只有设置100,往上再设置,你一轮也还是一次性训练100张图片,这时候多余的显存你怎么都用不了的,就算把batchsize设置成100000,该用的显存还是batchsize=100的量。(2022.4.30)

        (我这里用的Tesla T4,单gpu,训练150多张图片吧(包括训练集和测试集),设置的batchsize=200还设置大了,没啥用,显存始终就用这么多,就算batchsize设置为10000也是一样的速度8秒左右一轮。)

835439d01acf4c45b3fba158a361faf8.png

        (顺便说一下验证集测试集 “ 比例问题 ”,我用的是coco128,官方推荐的是测试集和验证集是用的同一堆图片,我认为是对的,不用特意划分新的验证集。

        上面图片的数据集,我试过两种方法区分,1是另外选几张图片分到验证集val里,2是val跟train是同一个文件夹,训练结果是第二种好,很好!第一种基本识别失败。

        或许我的数据集太少,有不同意见的可以说一下)

7,服务器python环境配置问题。

        如果把python导入ssh中还是找不到python环境,那就把ssh中的python安装以前的版本,比如2020年12月份的,然后再重新加载一下就有python环境了。(2022,5,1)

8,打标签classes越多,训练的时间也越多,反而反之。

        但如果只有一个分类,亲测经历,训练出来的exp里pred值很高且都对了,但在实时截图运行中是识别不出任何东西的。

        但是!!!对于视频和图片却又能识别成功,就很奇怪,所以还是得看用于检测什么东西?(2022.5.3)

9,依旧是参数设置,“workers”,default先设置为你数据集的大小量,能跑就行(指高性能的显卡上跑,家用普通的8清楚,我自己电脑是设的16)。

        这个好像是dataloader的最大值,搜过别的博主说,最好设置成32,多了少了都会变慢速度。

        但我测试过,700个数据集的情况下,workers低于700会慢,大于700即到达最极限速度,不过设置成1000的话跟700比没有变化。

10,gpu买多买少,变化不大,甚至会反而掉速。

        这个原因我不清楚,反正我试过多gpu,设置到极限的batchsize和workers,跟单gpu也没什么不同,甚至还变慢了,也有可能是我的设置问题吧。

        我测试的网站是极链ai,700数据集、1:9训练测试比情况下,3块钱一个小时单gpu的Tesla T4速度最快,多加gpu甚至更慢,8.5块钱一个小时单gpu的Tesla V100速度居然也一样,百思不得其解,我朋友说是边际效用的原因。(2022.5.4)


http://chatgpt.dhexx.cn/article/pSdCrW7H.shtml

相关文章

[原创]FPS网络游戏自动瞄准自瞄外挂漏洞分析以及实现

0x0. 前言 来到论坛已经有一段时间了,目前大三学生,乐于分享知识,看到论坛招聘讲师的帖子,于是想发点文字,分享知识,不知道能不能申请精华。 新年刚刚过去,不知道大家亲戚走没走完,新的一年里,祝大家财源广进,身体健康,万事如意,一切都会好起来的! 0x1. 了解FPS…

基于yolov7的FPS游戏(csgo,cf,cfhd)自瞄开发

1.训练yolo识别人物导出pt文件 链接: yolov7训练自己的数据集-gpu版 2.使用win32进行屏幕截图和鼠标移动 3.使用导出的pt文件进行推理(pt文件将在完善后发出) 屏幕截图获取屏幕->检测目标的坐标->取中心点->计算距离获取最近的敌人坐标->移动鼠标到中心点 数据集…

穿越火线(CF) AI 自瞄 代码 权重 数据集 亲测可用(结尾有资源)

初衷 本人热衷玩CF,同时为一名程序员,近期听说AI霸占FPS游戏,本着学习的态度,特来测试 不喜欢看过程的小伙伴直接看最下面 模型 采用yolov5模型架构 对过程感兴趣的小伙伴下文自行学习 https://zhuanlan.zhihu.com/p/17212138…

通过YOLOV5实现:王者荣耀百里守约自瞄

前期提要: 本文章仅供技术讨论使用。 关于如何通过YOLOV5去检测到王者中的敌方人物,在网上有很多相关的文章和教学视频我在这里就不过多的阐述,本篇文章主要讲的是在实现中比较难处理的一些技术点:如何获取高刷新率的手机屏幕、…

Ai实现FPS游戏自动瞄准 yolov5fps自瞄

大家好 我是毕加锁 (锁!) 今天来分享一个Yolov5 FPS跟枪的源码解析和原理讲解。代码比较粗糙 各位有什么优化的方式可以留言指出,可以一起交流学习。 需要了解的东西和可能会遇到的问题1.xy坐标点与当前鼠标的xy坐标点距离计算 2.获取窗口句柄,本文使…

[CPU+目标检测] openvino实现Robomaster自瞄

这篇文章为大连理工大学Robomaster凌Bug战队的李乐恒同学成果! 他在CPU上利用openvino这样的深度学习算法实现了Robomaster的自瞄,大大提高了robomaster自瞄的上界,且达到了良好的检测效果。所有代码全部开源, github主页如下&am…

基于C++的车辆装甲板检测自瞄系统

资源下载地址:https://download.csdn.net/download/sheziqiong/85773209 资源下载地址:https://download.csdn.net/download/sheziqiong/85773209 装甲板检测 由于在比赛过程中操作手是第一视角,很难用手动瞄准。通过装甲板检测就是自瞄系统…

CFAIyolo5自瞄源码分享

比市面上强的多 阿里云盘分享

FPS 游戏自瞄原理

了解FPS游戏自瞄漏洞 经常玩游戏的朋友,应该知道FPS游戏,例如:穿越火线,逆战等等,他们的特点就是以第一人称视角进行操作人物,屏幕中间会有一个准星,通过准星瞄准敌人进行攻击以达到击杀效果和…

FPS游戏通用自瞄与透视算法详解!!

自瞄算法与实现: 1:首先我们要找到一个敌人的三维坐标。 2:我们还要找到自己的三维坐标。 3:我们还要找到自己的鼠标坐标X与Y(这里的鼠标坐标X与Y是角度,X为360,Y正中间为0向上减少到负90度&…

Web前端技术HTML

HTML(Hyper Text Markup Language) 目录 一、什么是HTML? 二、为什么需要HTML? 三、HTML标签 四、HTML文档结构 五、HTML标签属性 1、标签的语法 2、注意事项 3、常用标签 一、什么是HTML? HTML指的是超文本…

前端技术概述

目录 一、开发框架 1、C/S架构(Client-Server) 2、B/S架构(Browser-Server) 二、前端术语 1、渲染 2、Front-end(前端开发) 3、Back-end(后端开发) 三、HTML的DOM结构 四、…

如何写前端技术方案文档?

大厂技术 高级前端 Node进阶 点击上方 程序员成长指北,关注公众号 回复1,加入高级Node交流群 前言 百度百科对计算机软件的的定义为:“计算机软件( Software,也称软件)是指计算机系统中的程序及其文档,程序是计算任务…

前端技术体系与发展计划

为什么会想起来整理这么一套东西 最近和很多已经工作了的同学聊天,发现大家都遇到了很多的问题或者说是烦恼。整理了一下,大体可以分为两个大的种类: 关于前端技术体系的问题关于技术能力发展的问题 从这些问题中,我抽出来几个…

前端技术发展历程

💂 个人网站:【海拥】【摸鱼游戏】【神级源码资源网】🤟 前端学习课程:👉【28个案例趣学前端】【400个JS面试题】💅 想寻找共同学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】 随着互联网的不断发展…

前端技术简介

声明:本文转载自http://www.lvyestudy.com/les_hj/hj_1.1.aspx,如需要了解更多关于前端的知识,请查看该链接 在HTML入门教程学习之前,我们有必要跟大家讲一下网站开发的一些知识。了解这些知识,对你以后网站开发之路如…

2020 年前端技术发展盘点

2020 年已经结束,这一年里面因为疫情,生活和工作中大家都有受到一定的影响。但是在 2020 年里面前端技术的发展依然没有停止脚步。 而我们作为前端开发者,必定需要对技术的更新换代有所了解。虽然我们不需要去学习所有新出来的技术。但是时刻…

前端技术(html)

目录 一、HTML 1. 概念 2. 快速入门 3. 开发工具 HBuilder 3.1 HBuilder介绍 3.2 HBuilder下载 3.3 HBuilder的安装与使用 3.4 使用HBuilder创建项目 4. HTML文档的基本结构 4.1 基本结构 4.2 HTML注释 5. HTML中常用标签 5.1.文本标签 5.2 图片标签 5.3列表标签 5.4…

【狂神说Java】Vue学习笔记01:前端知识体系

本文根据B站【狂神说Java】vue系列视频整理,如需观看视频,请点击链接跳转 【狂神说Java】Vue视频 2、前端知识体系 想要成为真正的“互联网Java全栈工程师”还有很长的一段路要走,其中前端是绕不开的一门必修课。本阶段课程的主要目的就是带…

SUMO安装及环境变量设置

sumo安装 1.打开sumo官网,进入下载界面 2.解压安装包 3.打开bin文件,创建sumo-gui和netedit快捷方式 SUMO环境变量配置 1.右击我的电脑,点击属性 2.点击高级系统设置,环境变量 3.在用户变量的path,加入以下变量 4.…