基于yolov5滑块识别破解(一)

news2024/9/23 13:36:14

        由于内容较长,将分为两个部分来说明,本文讲解yolov5的部署与训练。

1.YOLOv5部署

        云端部署(训练)

        服务器创建

        如果自己的显卡算力不是很好的,或者是核显电脑,可以租用算力,价格还行一块钱左右就可以租一小时了。

        网站地址:AutoDL算力云 | 弹性、好用、省钱。租GPU就上AutoDL

        登录网站,在算法社区搜索yolov5,选择一个项目进行创建。(算法社区里面有很多的算法模型,例如AI语言、图片清晰度增强等等,感兴趣的可以自己研究)

        我用的版本:ultralytics/yolov5/v5: 官方YOLOv5项目 最新稳定版本 - CG (codewithgpu.com)

直接点击创建即可。 由于我们是基于别人项目创建的,所以创建好的服务器已经自带了python环境和yolov5项目,直接上传数据进行训练就好了。

选择显卡,注意cuda版本要求(11.3以上)

        训练集上传 

       训练集就是各种滑块的图片,使用labelimg进行数据标准,把阴影地方标准为target。

        在创建完成后,在后台管理中有两个快捷工具,我们点第二个。

        绑定阿里云,然后就可以下载数据到服务器了,过程就是从我们自己的电脑上传文件到阿里云中,然后在AotoPanel工具中通过阿里云将我们上传的文件下载到我们租好的服务器上。

        模型训练

        打开JupyterLab工具,进入到服务器的命令窗口。在datasets目录下新建一个我们自己的数据集文件夹,把下载好的images和label放入到这个文件夹中。

        因为训练文件的yaml文件指定的是coco128.yaml,我们要训练的自己的模型需要修改这个yaml文件,或者也可以自己按照他的格式重新写一个yaml文件,然后在tran.py中指定这个yaml文件。

        我选择的是修改yaml文件,修改数据集的路径,并注释掉之前的类别,我们只训练识别一个类target。

        文件修改完成后,就可以直接训练模型了。打开终端输入cd yolov5-7.0,然后输入python train.py,就可以训练了。训练100个epoch

        预测推理

        训练好模型后,我们再上传几张新的滑块图片去进行预测。将测试图片上传到yolov5-7.0/data/images/里面

        更改权重模型,修改为我们自己训练好的模型。训练结果在runs/tran中,每一个exp就是每一次训练的结果,我们选择最新的一次,选择里面的weights/best.pt。best就是本次训练中最好的一次模型,last就是最后一次epoch得出的模型。

        打开detect.py修改权重模型。

        在命令窗口中输入python detect.py,然后到runs/detect中查看结果。 可以看到我们的模型已经成功识别出阴影块。

        模型下载

         到此我们的云端训练就已经完成了,我们需要把训练好的权重模型传回本地电脑。直接右键下载就行,它会通过浏览器自动下载。

本地部署

        之前说的是云端训练模型,主要是考虑了电脑性能不好的小伙伴。也可以直接在本地进行训练,流程和上面差不多的。这里就不再说了。

        在拿到云端训练好的权重模型后,我们需要部署本地的yolov5环境,使用这个权重模型去进行预测。

        yolov5下载

        参考其他大佬的教程即可

Yolov5 安装详细教程及目标检测和识别_yolo5安装教程-CSDN博客

         

        pytorch安装

        我现在使用的是AMD核显的电脑,和我情况差不多的小伙伴可以看看这个使用集成显卡/集显(AMD)或者GPU安装运行pytorch?步骤解析~_amd显卡怎么用pytorch-CSDN博客

        本地运行测试

        导入我们训练好的模型,进行测试看看是否有效

        至此yolov5的部署已经模型的训练都已经完成,在下篇文章中我们将结合yolov5来实现滑块的破解。 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

nodejs基于vue+express度假村旅游管理系统设计与实现7t82p

目录 功能介绍数据库设计具体实现截图技术栈技术论证解决的思路论文目录核心代码风格详细视频演示源码获取 功能介绍 实现了一个完整的农家乐系统,其中主要有用户表模块、关于我们模块、收藏表模块、公告信息模块、酒店预订模块、酒店信息模块、景区信息模块、景区…

96. UE5 GAS RPG 实现闪电链技能(一)

闪电链有一个施法的过程,就是在按键按下的过程,会在按下的过程一直持续造成伤害,一直等到条件不满足(技能键位抬起,蓝量不足,被眩晕)时,将结束技能,并退出技能状态。 所以…

以太坊客户端Geth的介绍与搭建

一、以太坊客户端 1.介绍 以太坊客户端是指用于连接、交互和参与以太坊区块链网络的软件。以太坊客户端允许用户执行各种操作,如发送交易、挖矿、部署智能合约、同步区块链数据等。 2.功能 区块链同步:客户端会下载并验证以太坊区块链的所有区块&…

7. 无线网络安全

7. 无线网络安全 (1) 无线网络面临的安全威胁 无线网络由于其开放性和无线传输的特性,面临着多种安全威胁,主要包括: 窃听:攻击者可以截获无线电信号并解析出数据,甚至在加密通信中收集加密信息用于以后的分析。 通信阻断:通过DoS攻击或其他干扰手段阻断通信,使设备间无…

TFT-LCD显示屏(1.8寸 STM32)

目录 一、介绍 二、传感器原理 1.原理图 2.引脚描述 3.工作原理:TFT-LCD色彩空间 三、程序设计 main.c文件 lcd.h文件 lcd.c文件 四、实验效果 五、资料获取 项目分享 一、介绍 TFT-LCD,全称Thin Film Transistor Liquid Crystal Display&a…

gitlab修改访问端口

目录 1.找到gitlab.rb文件,一般在/etc/gitlab/路径下 2.打开配置文件,加上代码 3.重新配置 4.重启gitlab 1.找到gitlab.rb文件,一般在/etc/gitlab/路径下 2.打开配置文件,加上代码 打开文件 sudo vi gitlab.rb 加上默认端口配…

苹果AI手机遇阻,国产手机找到超车机遇

行至九月,2024年,这个所谓AI手机的元年,已经走过近三个季度了。 市场最为期待的AI手机机型也基本都发布了。9月20日,首款搭载Apple Intelligence功能的苹果新品iPhone16正式发售。或许是为了进一步扩大销售,今年天猫A…

【JAVA开源】基于Vue和SpringBoot的甘肃非物质文化网站

本文项目编号 T 042 ,文末自助获取源码 \color{red}{T042,文末自助获取源码} T042,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…

计算机网络-小型综合网络的搭建涉及到无线路由交换安全

目录 1 拓扑架构 2 做项目的思路 3 做配置 3.1先做核心交换 3.2 防火墙的配置 4 ac 和ap 的配置 4.1 ac上配置安全的东西 5.1 测试​编辑 1 拓扑架构 要求看上面的图 2 做项目的思路 这张网很明显是一个小综合,设计到我们的无线交换,路由…

统信服务器操作系统【SSH登录常见问题】解决方案

方案适用于统信服务器操作系统D/E/A版。 文章目录 前言问题及解决方案问题一问题现象问题原因问题方案问题二问题现象问题原因问题方案问题三问题原因问题方案问题四问题现象问题原因问题方案问题五问题现象问题原因问题方案问题六问题现象问题原因问题方案前言 介绍日常使用s…

语音识别控制(软件、硬件)

1. 环境 python版本:3.11.9 2. 完整代码 import sqlite3 import time import wave # 使用wave库可读、写wav类型的音频文件 from funasr import AutoModel import sounddevice as sd import numpy as np from modelscope import pipeline, Tasks from pypinyin …

软件著作权登记所需要的材料

软件著作权登记所需材料全面解析 在当今数字化时代,软件著作权作为保护软件开发者智力劳动成果的重要法律手段,其登记过程显得尤为重要。 一、软件著作权登记申请表 首先,软件著作权登记需要提交的最基本材料是《软件著作权登记申请表》。这份…

深度优先搜索算法及其matlab程序详解

#################本文为学习《图论算法及其MATLAB实现》的学习笔记################# 深度优先搜索算法(DepthFirst Search),简记DFS算法,是图论中的首要算法,其思想方法渗透到图论中的许多算法之中,尤其是DFS算法在求生成树、割点、块和平面图嵌入算法中起着极为关键的作用。…

写文档-画UML图-编程的秘密武器:Kimi智能助手

在快速发展的软件开发领域,如何高效地编写需求分析文档、软件设计文档以及代码,成为每位程序员和架构师面临的重要挑战。今天,我要向大家介绍一款强大的工具——Kimi智能助手,它将帮助你提升工作效率,优化开发流程。 …

【图灵完备 Turing Complete】游戏经验攻略分享 Part.5 编程

编程部分的话,第一关会让你输入机器码,这一章节还是比较简单的,因为操作码是固定给出的,只需要根据题意去编写,完成这章目的是为了解锁下面的关卡。 输入,移动COPY之后进行运算,然后输出。 激光…

18937 阿克曼(Ackmann)函数

### 思路 1. **递归定义**:根据阿克曼函数的定义,使用递归来计算函数值。 2. **递归终止条件**: - 当 m 0 时,返回 n 1�� - 当 m > 0 且 n 0 时,返回 ackermann(m - 1, 1)。 - 当…

基于单片机的粮仓环境检测系统设计

本设计主要由处理模块、温湿度检测模块、数据显示模块、声光报警模块和按钮的输入模块组成。采用了AT89C52作为主要的控制单元,利用DHT11温湿度传感器,对粮食仓库中的温度和湿度等展开检测,并在LCD1602液晶显示器中进行实时显示。同时&#x…

C++之GradeBook类

主文件 #include <iostream> #include "GradeBook.h"using namespace std;int main() {GradeBook myGradeBook; // 创建一个对象cout << "请输入课程名称:" ;string courseName;cin >> courseName;cout << "请输入学生人数&…

iOS常见锁及应用(笔记版)

什么是锁&#xff1f; 在程序中&#xff0c;当多个任务&#xff08;或线程&#xff09;同时访问同一个资源时&#xff0c;比如多个操作同时修改一份数据&#xff0c;可能会导致数据不一致。这时候&#xff0c;我们需要“锁”来确保同一时间只有一个任务能够操作这个数据&#…

vue打包exe之electron-quick-start的npm install 报错

vue打包exe之electron-quick-start的npm install 报错 1、github地址2、问题3、解决4、其他(打包exe)参考 1、github地址 https://github.com/electron/electron-quick-start2、问题 我使用的pnpm install正常安装&#xff0c;执行npm start提示错误 3、解决 在package.js…