labelme使用笔记:目标检测数据集标注和语义分割数据集批量生成

本文主要是介绍labelme使用笔记:目标检测数据集标注和语义分割数据集批量生成,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

AI应用开发相关目录

本专栏包括AI应用开发相关内容分享,包括不限于AI算法部署实施细节、AI应用后端分析服务相关概念及开发技巧、AI应用后端应用服务相关概念及开发技巧、AI应用前端实现路径及开发技巧
适用于具备一定算法及Python使用基础的人群

  1. AI应用开发流程概述
  2. Visual Studio Code及Remote Development插件远程开发
  3. git开源项目的一些问题及镜像解决办法
  4. python实现UDP报文通信
  5. python实现日志生成及定期清理
  6. Linux终端命令Screen常见用法
  7. python实现redis数据存储
  8. python字符串转字典
  9. python实现文本向量化及文本相似度计算
  10. python对MySQL数据的常见使用
  11. 一文总结python的异常数据处理示例
  12. 基于selenium和bs4的通用数据采集技术(附代码)
  13. 基于python的知识图谱技术
  14. 一文理清python学习路径
  15. Linux、Git、Docker常用指令
  16. linux和windows系统下的python环境迁移
  17. linux下python服务定时(自)启动
  18. windows下基于python语言的TTS开发
  19. python opencv实现图像分割
  20. python使用API实现word文档翻译
  21. yolo-world:”目标检测届大模型“
  22. 爬虫进阶:多线程爬虫
  23. python使用modbustcp协议与PLC进行简单通信
  24. ChatTTS:开源语音合成项目
  25. sqlite性能考量及使用(附可视化操作软件)
  26. 拓扑数据的关键点识别算法
  27. python脚本将视频抽帧为图像数据集
  28. 图文RAG组件:360LayoutAnalysis中文论文及研报图像分析
  29. Ubuntu服务器的GitLab部署
  30. 无痛接入图像生成风格迁移能力:GAN生成对抗网络
  31. 一文理清OCR的前世今生
  32. labelme使用笔记

文章目录

  • AI应用开发相关目录
  • 简介
  • 部署
  • 使用


简介

Labelme 是一个开源的数据标注工具,它能够帮助用户为图像、视频等数据添加标签,以供机器学习模型训练使用。Labelme 支持多种类型的标注,包括目标检测、分割、分类等任务,用户可以通过绘制矩形框、多边形、圆形等图形来标注对象,也可以进行像素级的分割标注。

Labelme 的特点包括:

跨平台:Labelme 支持多个操作系统,包括 Windows、macOS 和 Linux。
易于使用:它有一个直观的用户界面,方便用户进行标注工作。
灵活性:支持多种格式的输出,包括常见的 PASCAL VOC、COCO 等格式,方便与其他机器学习框架集成。
可扩展性:Labelme 支持插件,用户可以根据自己的需求定制或扩展功能。
社区支持:作为一个开源项目,Labelme 拥有活跃的社区,用户可以获取支持或分享经验。
Labelme 在学术界和工业界都有广泛的应用,特别是在计算机视觉领域。

部署

conda create -n labelme python=3.6
conda activate labelme
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple labelme

使用

在这里插入图片描述
如上图所示,在labelme指定虚拟环境下运行labelme指令。
在这里插入图片描述
可以选择Open打开一张图片对图片进行标注;
Open Dir选择图片保存的路径,即可标注多张图片。其中,保存ison到指定文件夹:File->Change Output Dir ->选择指定文件夹路径;
create polygons可以进行描边界点,通用还有矩形框等标注方式。
在这里插入图片描述
框住或标注图形后输入对应label即可。

Ctrl+S:保存标注
D:下一张图片
S:上一张图片

一般的目标检测、分类等任务到此结束了,可以使用标注数据集进行算法模型训练。
但对于语义分割等任务还需根据标注生成语义图像。
cd 到指定存储生成的json文件的地址。
运行如下指令即可获得目标数据。

labelme_json_to_dataset  <文件名>.json

在这里插入图片描述
json中包含png原图、yaml文件、png语义图像。

当然这只是一张图像而已,一张一张生成太麻烦,可通过如下代码批量生成:

# labelme版本:3.16.2
import os
import subprocess# JSON文件所在目录,一定要确保json文件与原图像在同一文件夹
json_dir = r"img2\labelme_jsons"# 遍历JSON文件
for json_file in os.listdir(json_dir):if json_file.endswith('.json'):# 构建labelme转换命令json_path = os.path.join(json_dir, json_file)cmd = 'labelme_json_to_dataset ' + json_path# 执行命令subprocess.run(cmd.split())

这篇关于labelme使用笔记:目标检测数据集标注和语义分割数据集批量生成的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1078469

相关文章

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

MySQL中EXISTS与IN用法使用与对比分析

《MySQL中EXISTS与IN用法使用与对比分析》在MySQL中,EXISTS和IN都用于子查询中根据另一个查询的结果来过滤主查询的记录,本文将基于工作原理、效率和应用场景进行全面对比... 目录一、基本用法详解1. IN 运算符2. EXISTS 运算符二、EXISTS 与 IN 的选择策略三、性能对比

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

使用Python构建智能BAT文件生成器的完美解决方案

《使用Python构建智能BAT文件生成器的完美解决方案》这篇文章主要为大家详细介绍了如何使用wxPython构建一个智能的BAT文件生成器,它不仅能够为Python脚本生成启动脚本,还提供了完整的文... 目录引言运行效果图项目背景与需求分析核心需求技术选型核心功能实现1. 数据库设计2. 界面布局设计3

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

解决pandas无法读取csv文件数据的问题

《解决pandas无法读取csv文件数据的问题》本文讲述作者用Pandas读取CSV文件时因参数设置不当导致数据错位,通过调整delimiter和on_bad_lines参数最终解决问题,并强调正确参... 目录一、前言二、问题复现1. 问题2. 通过 on_bad_lines=‘warn’ 跳过异常数据3

Android Paging 分页加载库使用实践

《AndroidPaging分页加载库使用实践》AndroidPaging库是Jetpack组件的一部分,它提供了一套完整的解决方案来处理大型数据集的分页加载,本文将深入探讨Paging库... 目录前言一、Paging 库概述二、Paging 3 核心组件1. PagingSource2. Pager3.

python使用try函数详解

《python使用try函数详解》Pythontry语句用于异常处理,支持捕获特定/多种异常、else/final子句确保资源释放,结合with语句自动清理,可自定义异常及嵌套结构,灵活应对错误场景... 目录try 函数的基本语法捕获特定异常捕获多个异常使用 else 子句使用 finally 子句捕获所

C++11右值引用与Lambda表达式的使用

《C++11右值引用与Lambda表达式的使用》C++11引入右值引用,实现移动语义提升性能,支持资源转移与完美转发;同时引入Lambda表达式,简化匿名函数定义,通过捕获列表和参数列表灵活处理变量... 目录C++11新特性右值引用和移动语义左值 / 右值常见的左值和右值移动语义移动构造函数移动复制运算符

Python对接支付宝支付之使用AliPay实现的详细操作指南

《Python对接支付宝支付之使用AliPay实现的详细操作指南》支付宝没有提供PythonSDK,但是强大的github就有提供python-alipay-sdk,封装里很多复杂操作,使用这个我们就... 目录一、引言二、准备工作2.1 支付宝开放平台入驻与应用创建2.2 密钥生成与配置2.3 安装ali