基于yolov3训练自己的数据集

news/2024/4/19 0:48:36

训练数据集的教学视频链接

42. 第六章:基于YOLO-V3训练自己的数据集与任务_哔哩哔哩_bilibili

数据打标签

下载labelme标注工具

通过pip install labelme下载,打开anaconda prompt,切换到下载labelme的环境(我的是pytorch),输入labelme即可打开。

标注图片得到标注数据

写好模型所需的配置文件

进入config文件

运行文件create_custom_model.sh

sh文件运行方法:打开Git Bash Here,输入bash create_custom_model.sh 2(后面的数字代表任务类别的个数),就会自动生成 yolov3-custom.cfg 文件。

标签格式转换

labelme的格式为x1,y1,x2,y2。

YOLOV3的格式为Cx,Cy,W,H相对位置(取值范围0到1)。

格式转换的文件json2yolo.py。

写好数据和标签的路径

labelme生成标签的文件夹路径——json_floder_path

转换好的输出路径:data\custom\labels

完成其他的配置操作

 数据放在相应位置,注意数据名和标签名需要一致。

classes.names(左) 按顺序改成 json2yolo文件里面的类别名字(右),如下:

 然后在train.txt和val.txt中写好对应的图片路径。

最后在config中找到custom.data文件,更改里面的相应内容,文件内容如下,在config中起引导作用:

 

训练代码更改

1. train.py需要设置的参数
-model_def config/yolov3-custom.cfg
-data_config config/custom.data
-pretrained weights weights/darknet53.conv.74


 预测操作

-image folder data/samples  #把需要预测的数据放到这里

-checkpoint_model checkpoints/yolov3 ckpt 100.pth#训练好模型的路径

-class path data/custom/classes.names#画图时候要把框上显示出来

额外注意: create custom model.sh 不能重复执行,要先把 yolov3-custom.cfg 删除掉才可以

 


http://www.ppmy.cn/news/73350.html

相关文章

异步线程:CompletableFuture、@Async

区别: 1.CompletableFuture是java中提供的一个异步执行类,Async是Spring提供的异步执行方法,当调用方法单独开启一个线程进行调用。 2.Async通常指定一个方法使用的异步方法调用,而CompletableFuture可以一个方法体内对请求体进行排序组合成…

yolov5剪枝与知识蒸馏【附代码】

剪枝和知识蒸馏均属于模型轻量化设计,剪枝是将已有网络通过剪枝的手段得到轻量化网络,可分为非结构化剪枝和结构化剪,该技术可以免去人为设计轻量网络,而是通过计算各个权重或者通道的贡献度大小,剪去贡献度小的权重或…

面了个 Java 实习生,小伙很优秀!

大家好,我是鱼皮,前几天给自己的公司面试了一位 Java 暑期实习生,候选人目前是大三。 整个过程我都录屏了,并且在征得候选人的同意后,把面试过程分享出来。一方面是希望对其他在学编程找工作的小伙伴有一些启发和参考…

思迈特软件Smartbi荣登“2023未来银行科技服务商100强”

近日,中国科学院《互联网周刊》、eNet研究院联合发布了“2023未来银行科技服务商100强”企业榜单。思迈特软件以“商业智能BI产品”凭借在金融科技创新的独特优势及在银行数字化转型实践中的卓越成就荣耀上榜。 据了解,“未来银行科技服务商100强”榜单&…

Spring IOC 的理解

IoC容器是什么? IoC文英全称Inversion of Control,即控制反转,我么可以这么理解IoC容器: “把某些业务对象的的控制权交给一个平台或者框架来同一管理,这个同一管理的平台可以称为IoC 容器。” 我们刚开始学习…

Java读取txt文件:TSP问题测试算例att48.txt

目录 1读取文件1.1 JDK1.5的Scanner类读取1.2 JDK8的Files.linesStream流按行读取(推荐)1.3 JDK11提供的Files.readString()1.4 FileInputStreamInputStreamReaderBufferedReader按行读取1.5 经典管道流方式(推荐) 2 JAVA快速统计…

GEE遥感云大数据林业应用典型案例及GPT模型

详情点击链接:GEE遥感云大数据林业应用典型案例及GPT模型 一:平台及基础开发平台 GEE平台及典型应用案例;GEE开发环境及常用数据资源;ChatGPT、文心一言等GPT模型、帐号申请及林业遥感JavaScript基础;GEE遥感云重要概…

FLEXPART--空气块轨迹-扩散模式

模式简介: FLEXPART(Flexible Particle Dispersion Model)模式是由挪威大气研究所(Norwegian Institute for Air Research)和德国慕尼黑工业大学(Technical University of Munich)联合开发的空气块轨迹-扩散模式, 其通过计算区域内所有气块的运动轨迹进…

[CTF/网络安全] 攻防世界 backup 解题详析

[CTF/网络安全] 攻防世界 backup 解题详析 PHP备份文件名备份文件漏洞成因备份文件名常用后缀姿势总结 题目描述:X老师忘记删除备份文件,他派小宁同学去把备份文件找出来,一起来帮小宁同学吧! PHP备份文件名 PHP 脚本文件的备份文件名&#…

(C语言版)力扣(LeetCode)+牛客网(nowcoder)二叉树基础oj练习

二叉树基础oj练习 965. 单值二叉树题目解法 100. 相同的树题目解法 101. 对称二叉树题目解法 144. 二叉树的前序遍历题目解法 94. 二叉树的中序遍历题目解法 145. 二叉树的后序遍历题目解法 572. 另一棵树的子树题目解法 KY11 二叉树遍历题目解法 结语 965. 单值二叉树 题目 …

springboot+java超市收银管理系统idea

考虑到实际生活中在超市 POS 收银管理方面的需要以及对该系统认真的分析,将系统权限按管理员和员工这两类涉及用户划分。 Spring Boot 是 Spring 家族中的一个全新的框架,它用来简化Spring应用程序的创建和开发过程。也可以说 Spring Boot 能简化我们之…

UML类图画法及其关系

UML类图画法及其关系 本文主要是介绍 UML类图画法及其关系,方便今后温习!!! 一、类之间的关系汇总 泛化(Generalization)实现(Realization)关联(Association&#xff…

Linux 学习笔记(七):时间片

一、时间片概念 时间片(timeslice)又称为 “量子”(quantum)或 “处理器片”(processor slice),是分时操作系统分配给每个正在运行的进程微观上的一段 CPU 时间(在抢占内核中是&…

将有序数组转换为二叉树

md这个破CSDN模板怎么没了,编辑器也死难用,气死 1、题目 给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 高度平衡 二叉搜索树。 高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不…

异地研发团队都使用哪些研发协同工具?盘点7类最主流的研发管理协同软件

产品研发场景下好用的协同办公软件有哪些?分享7类研发过程中主流的协同办公软件,比如项目管理协作与问题跟踪工具PingCode、代码托管与版本控制平台github、持续集成与持续部署(CI/CD)工具jinkens、文档协作与知识管理工具conflue…

Node开发Web后台服务

简介 Node.js 是一个基于Google Chrome V8 引擎的 JavaScript 运行环境。Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。Node.js 的包管理器 npm,是全球最大的开源库生态系统。 能方便地搭建响应速度快、易于扩展的网络应用&#…

支付宝沙箱支付(java电脑版)

目录 下载支付demo配置环境AlipayConfig 下载支付demo 网址&#xff1a;https://open.alipay.com/ 下载并打开项目发现无法运行&#xff1a; 手动转化项目&#xff1a; 等待下载整理一下maven pom 通过tomat部署运行测试。 导入阿里支付的pom依赖 <dependency> &l…

《计算机网络—自顶向下方法》 Wireshark实验(十):NAT 协议分析

NAT&#xff08;Network Address Translation&#xff09;网络地址转换&#xff0c;即在私有地址和全局地址之间转换的协议。私有地址是不能用在 Internet 上(路由器将丢弃寻址这种地址的包)的内部地址。这些地址是不能够在公网上面用的&#xff0c;只能用在局域网的内部。私有…

可以白嫖的语音识别开源项目whisper的搭建详细过程 | 如何在Linux中搭建OpenAI开源的语音识别项目Whisper

原文来自我个人的博客。 1、前提条件 服务器为GPU服务器。点击这里跳转到我使用的GPU服务器。我搭建 whisper 选用的是 NVIDIA A 100显卡&#xff0c;4GB显存。 Python版本要在3.8~3.11之间。 输入下面命令查看使用的Python版本。 python3 -V2、安装Anaconda 为啥要安装A…

教材管理系统

目 录 第一章 引言 3 1.1 背景 3 1.1.1教材管理系统 3 1.1.2信息管理系统 3 1.2开发教材管理系统的目的和原则 5 1.3开发环境介绍 6 1.3.1 开发平台 6 1.3.2 数据库查询语言——SQL 8 1.3.3 数据库设计工具——ACCESS数据库管理系统 9 第二章 系统设计 11 2.1 系统分析 11 2.2 …