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

相关文章

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

springboot中使用okhttp3的小结

《springboot中使用okhttp3的小结》OkHttp3是一个JavaHTTP客户端,可以处理各种请求类型,比如GET、POST、PUT等,并且支持高效的HTTP连接池、请求和响应缓存、以及异... 在 Spring Boot 项目中使用 OkHttp3 进行 HTTP 请求是一个高效且流行的方式。

Python实现Excel批量样式修改器(附完整代码)

《Python实现Excel批量样式修改器(附完整代码)》这篇文章主要为大家详细介绍了如何使用Python实现一个Excel批量样式修改器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录前言功能特性核心功能界面特性系统要求安装说明使用指南基本操作流程高级功能技术实现核心技术栈关键函

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Python实现批量CSV转Excel的高性能处理方案

《Python实现批量CSV转Excel的高性能处理方案》在日常办公中,我们经常需要将CSV格式的数据转换为Excel文件,本文将介绍一个基于Python的高性能解决方案,感兴趣的小伙伴可以跟随小编一... 目录一、场景需求二、技术方案三、核心代码四、批量处理方案五、性能优化六、使用示例完整代码七、小结一、

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

C#实现一键批量合并PDF文档

《C#实现一键批量合并PDF文档》这篇文章主要为大家详细介绍了如何使用C#实现一键批量合并PDF文档功能,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言效果展示功能实现1、添加文件2、文件分组(书签)3、定义页码范围4、自定义显示5、定义页面尺寸6、PDF批量合并7、其他方法

Java中的抽象类与abstract 关键字使用详解

《Java中的抽象类与abstract关键字使用详解》:本文主要介绍Java中的抽象类与abstract关键字使用详解,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、抽象类的概念二、使用 abstract2.1 修饰类 => 抽象类2.2 修饰方法 => 抽象方法,没有