项目背景:

最近涉及智慧安防类似的项目,发现针对不同场景yolo通用模型识别效果参差不齐,数据微调时标注过程繁琐,故自己全AI写了个本地工具方便数据处理(主要是现在有收费平台了),感觉用着还行,我相信很多小伙伴处理数据可能是直接交给AI生成脚本然后替换文件路径运行(确实麻烦),所以想着分享出来,能帮助到就行。由于项目是AI全生成,所以写得不好的地方见谅,后续我也会持续改进优化,也欢迎各位自行扩展和交流分享。

项目介绍:

项目GitHub地址:https://github.com/546546lqx/auto_tools
项目功能预览介绍:

1:数据集统计。用于快速了解一个数据集的整体质量和组成情况,通常会对图片目录和标注目录进行扫描,输出以下信息:

  • 图片数量
  • 标注文件数量
  • 各类别出现次数
  • 是否存在空标注
  • 图片与标注是否一一对应

适用场景:

  • 数据集导入前的质量检查
  • 训练前确认类别分布是否均衡
  • 定位缺失标注或异常样本

2:数据集清理。用于查找并处理数据集中常见的不一致问题,例如:

  • 只有图片没有对应标注
  • 只有标注没有对应图片
  • 目录中存在无效或重复文件
  • 需要预览清理结果而不是直接执行删除

适用场景:

  • 整理历史数据集
  • 迁移数据到新目录后做一致性检查
  • 删除无效样本或冗余文件前的确认

注意:这个功能支持“仅预览”模式,方便你先查看即将处理的文件,再决定是否真正执行清理。

3:数据集划分。用于将一个完整数据集按照比例拆分成多个子集,常见为(目前还未设计测试集后续添加):

  • `train`
  • `val`
  • `test`

适用场景:

  • 新建训练集时快速拆分数据
  • 调整训练/验证比例
  • 生成适合 YOLO 训练目录结构的数据集

注意:你可以设置训练集和验证集比例。系统会根据输入目录中的数据组织方式完成划分,并输出划分结果。(目前只会对根目录中的images和labels生效)

4:重命名。用于统一图片和标注文件的文件名,确保图像与标签能够按照相同规则成对匹配。该功能通常支持:

  • 自定义前缀
  • 设置起始编号
  • 设置编号位数
  • 预览或直接执行重命名

适用场景:

  • 修复混乱的历史文件名
  • 统一不同来源数据集的命名规则
  • 为后续划分、转换、训练做准备

5:格式转化。用于将其他标注格式转换为 YOLO 所需格式。当前项目中该功能与转换服务配合使用,可以处理数据集格式和多边形点位等信息。常见用途包括:

  • 将 VOC 等格式转换为 YOLO
  • 根据类别映射生成目标类别编号
  • 输出适合训练的标准化标注文件

适用场景:

  • 从第三方标注平台导出后统一转换
  • 在不同训练框架之间迁移标注格式

6:视频抽帧。用于从本地视频文件或 RTSP 流中按指定间隔提取图片。页面支持任务式运行,启动后会在后台执行,并可查询进度或停止任务。主要能力包括:

  • 支持本地视频文件路径
  • 支持 RTSP 网络流地址
  • 可设置抽帧间隔
  • 可选择输出图片格式
  • 可查看任务状态、已保存帧数和总帧数
  • 支持主动停止正在运行的任务

适用场景:

  • 从监控视频中提取训练图片
  • 从录制视频中批量导出关键帧
  • 快速构建图片样本库

7:多边形画框。用于绘制多边形区域并保存对应坐标信息,适合做区域型标注或辅助生成几何信息。该功能支持从图像尺寸和点位文本中生成最终结果。此外,页面还提供首帧预览能力,可以对视频流或其他图像源进行快速检查,帮助你确认输入源是否可用。

适用场景:

  • 区域入侵、车道、边界等检测任务
  • 需要记录多边形顶点坐标的场景
  • 在视频流上预览首帧后再进行标注

8:自动化辅助标注。用于借助本地模型自动对图片进行目标检测并生成 YOLO 标注文件。该功能依赖本地模型目录,页面会列出可用模型,并支持上传模型到指定目录。主要流程通常是:

  1. 选择图片目录
  2. 选择标注输出目录
  3. 选择本地模型
  4. 填写类别映射关系
  5. 执行自动推理并输出标签文件

支持的模型管理能力包括:

  • 扫描本地模型目录
  • 列出当前可用模型
  • 上传外部模型到项目模型目录

适用场景:

  • 先自动生成初始标注,再人工修正
  • 大批量图片的半自动标注
  • 提高标注效率,降低重复劳动

项目本地部署(有余力的伙伴可以服务化部署)

这里就请各位参考项目咯!!!这个项目主要用于个人学习和本地数据处理实践,也欢迎大家在交流、学习和二次开发时参考。如果项目中的思路、结构或实现方式对你有所帮助,欢迎:

  1. 提出建议和改进意见
  2. 分享你的使用体验
  3. 在遵守开源协议和注明来源的前提下进行借鉴和二次开发
  4. 一起交流 YOLO 数据处理、标注工具和自动化流程相关经验

如果你在使用过程中发现问题,或者有更好的实现方式,也非常欢迎通过 Issue、讨论或其他方式交流。

感谢你的关注与支持。

 

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐