关于yolov5遇到空标签导致训练暂停的解决

embedded/2024/11/14 12:48:51/

小编在使用yolov5进行深度学习训练的时候,训练了好几个epochs,突然报了一个empty的错误导致训练程序终止,还好小编只是在训练刚开始遇到这种问题,如果训练了好多轮以后遇到此类问题,那前面训练花费的时间全部都浪费了,那就非常难受了,那我们可以从源头上改变这个问题。那我们如何改变呢,我们需要根据空标签txt来删除对应的图片,因为数据集有严格的一一对应原则,代码如下

import osdef remove_empty_label_and_image(image_dir, label_dir):# 遍历标签文件夹中的所有 .txt 文件for label_file in os.listdir(label_dir):label_path = os.path.join(label_dir, label_file)# 检查标签文件是否为空if os.path.isfile(label_path) and label_file.endswith('.txt') and os.path.getsize(label_path) == 0:# 获取对应的图片文件名(去掉 .txt 扩展名并加上图片的扩展名,例如 .jpg 或 .png)image_file = label_file.replace('.txt', '.jpg')  # 假设图片扩展名为 .jpg,如果是 .png 则修改为 .pngimage_path = os.path.join(image_dir, image_file)# 删除空标签文件print(f"Deleting empty label file: {label_path}")os.remove(label_path)# 检查对应的图片文件是否存在并删除if os.path.isfile(image_path):print(f"Deleting corresponding image file: {image_path}")os.remove(image_path)else:print(f"Corresponding image file not found for label: {label_path}")# 使用实际的图像和标签目录路径
image_directory = 'your path'  # 替换为你的图片文件夹路径 
label_directory = 'your path'  # 替换为你的标签文件夹路径remove_empty_label_and_image(image_directory, label_directory)

把路径改一下以后,训练可以继续了


http://www.ppmy.cn/embedded/113255.html

相关文章

加密与安全_优雅存储二要素(AES-256-GCM )

文章目录 什么是二要素如何保护二要素(姓名和身份证)加密算法分类场景选择算法选择AES - ECB 模式 (不推荐)AES - CBC 模式 (推荐)GCM(Galois/Counter Mode)AES-256-GCM简介AES-256-GCM工作原理安全优势 应用场景其他模式 和 敏感…

时序约束进阶三:Create_clock与Create_Generated_Clock详解

目录 一、前言 二、生成时钟 2.1 示例设计 2.2 主时钟约束 1)约束对象解析 2)约束到非时钟位置 2.3 生成时钟约束 1)无约束 2)倍频约束 3)生成时钟的主时钟约束不正确 4)使能时钟控制的约束 5&…

联邦大模型Federated Large Language Model

联邦大模型Federated Large Language Model 联邦大模型Federated Large Language Model隐私保护计算的三种主要方法大模型(LLM)训练包含三个阶段联邦大模型(Federated LLM)包括三个组件(1)联邦LLM预训练(Federated LLM Pre-training)(2)联邦LLM微调(Federated LLM F…

深度学习----------------------文本预处理

目录 文本预处理读取数据集词源化词表该部分总代码该部分总代码 整合所有功能该部分总代码 文本预处理 文本预处理:把文本当作一个时序序列 将解析文本的常见预处理步骤。 这些步骤通常包括: ①将文本作为字符串加载到内存中。 ②将字符串拆分为词元&…

OpenAI o1——人工智能推理能力的飞跃,助力高级问题解决

前言 开放人工智能 新模型, OpenAI o1 或草莓,代表了 人工智能。它以 OpenAI 的 GPT 系列等先前模型为基础,并引入了增强的推理能力,从而加深了科学、编码和数学等各个领域的问题解决能力。与主要擅长处理和生成文本的前辈不同&a…

基于鸿蒙API10的RTSP播放器(七:亮度调节功能测试)

目标: 当我的手指在设备左方进行上下移动的时候,可以进行屏幕亮度的调节,在调节的同时,有实时的调节进度条显示 步骤: 界面逻辑:使用Stack() 组件,完成音量图标和进度条的组合显示&#xff0c…

STM32巡回研讨会总结(2024)

前言 本次ST公司可以说是推出了7大方面,几乎可以说是覆盖到了目前生活中的方方面面,下面总结下我的感受。无线类 支持多种调制模式(LoRa、(G)FSK、(G)MSK 和 BPSK)满足工业和消费物联网 (IoT) 中各种低功耗广域网 (LPWAN) 无线应…

React js Router 路由 2, (把写过的几个 app 组合起来)

完整的项目,我已经上传了,资源链接. 起因, 目的: 每次都是新建一个 react 项目,有点繁琐。 刚刚学了路由,不如写一个 大一点的 app ,把前面写过的几个 app, 都包含进去。 这部分感觉就像是, …