当前位置: 首页 > news >正文

【零基础保姆级教程】制作自己的数据集(二)——Labelme的安装与使用及常见的报错解决方法

前段时间安装了Labelimg,网上有些博客写着Labelme能进行语义分割的标注,但UI窗口就那么大找不着选项,只能打矩形框,为了能够标注自己的分割数据集,遂写下该教程以供参考。

采用Labelimg进行目标检测标注的教程如下。

【零基础保姆级教程】制作自己的数据集——Labelimg的安装与使用及常见的报错解决方法-CSDN博客

本文示例环境
本文系统Windows10
labelme版本5.5.0
python版本3.10

并没有搭建conda虚拟环境也可使用,搭建了自然也可以。

1.是什么

Labelme 是一个用于图像标注的图形界面工具,广泛应用于机器学习和计算机视觉领域中的数据准备阶段。通过 Labelme,用户可以手动为图像添加标签,这些标签可以是矩形、多边形、线条或点等形状,用于界定图像中的目标对象。标注后的数据可用来训练各种深度学习模型,如物体检测、图像分割等任务。
支持多种标注类型:包括矩形框、多边形、线条、圆等,适应不同的计算机视觉任务需求。

同时,相比labelimg,博主所采用目前最新的的labelme5.5.0版本是中文界面,对英语薄弱的初学者比较友好,且它是自动连续标注的,前者必须选择advanced mode才能如此,故显得更为方便。
总之,Labelme 是一个非常实用的工具,特别适合需要大量手工标注工作的研究者和开发者。

2.安装方式
1.命令行输入如下代码
pip install labelme

不加版本号的pip命令通常自动安装版本号最大的版本,此处即为最新版。

安装完成后,命令行窗口显示:

2.github拉取项目

GitHub - wkentaro/labelme: Image Polygonal Annotation with Python (polygon, rectangle, circle, line, point and image-level flag annotation).

命令行输入labelme,会弹出一个UI界面:

说明安装成功。

3.前置准备

接下来先创建一个文件夹用以存放自己的数据集,放置自己所需标注的图像。

接着即可进行下一步。

4.如何使用

labelme和labelimg极为相似,有区别的地方是其能够进行多边形的标注,制作语义分割数据集。为此熟悉labelimg的小伙伴可以很快就上手labelme,以下介绍基本流程。

首先控制台命令窗口输入labelme以打开labelme界面。

a.左上角打开代表一次打开单张图片进行标注。

b.左上角打开目录按钮代表打开数据集的图片所在文件夹进行多张图片的连续标注。

c.点击创建多边形进行标注。

d.标注后,需要围绕目标画一个闭环的多边形,画好后会弹出一个对话框,要求输入类别数,输入好后点击OK。

除此之外,labelme还支持画矩形框以及圆形框等。

点击左上角菜单键的编辑,即可选择所需预选框。

e.绘制好一个标注框后,若要对其继续操作,点击该标注框。

点击复制多边形后,生成一个一模一样的标注框。

点击删除多边形后,删除该绘制的多边形。

点击该标注框边缘一点向外拉伸即可更加完善细节。

点击撤销后,返回上一步操作。

f.标注好一张图片后,需要进行保存,

点击上方保存。

会生成一个json文件。

其中保存的即该标注信息。

5.常见问题

1.相比labelimg同样的环境运行会闪退、标注会报错,将python版本修改为3.9即解决。而照如上流程操作,并未在labelme发现问题。

2.针对网上有所提及的“若目录为中文路径会报错”进行测试,发现并不会报错,或许是开发者在后续的维护更新中在当前版本已经修改该问题。

3.若有问题欢迎评论区提出。

相关文章:

【零基础保姆级教程】制作自己的数据集(二)——Labelme的安装与使用及常见的报错解决方法

前段时间安装了Labelimg,网上有些博客写着Labelme能进行语义分割的标注,但UI窗口就那么大找不着选项,只能打矩形框,为了能够标注自己的分割数据集,遂写下该教程以供参考。 采用Labelimg进行目标检测标注的教程如下。 …...

Move AI技术浅析(二):输入与预处理

一、视频输入模块 1.1 视频输入步骤详解 视频输入模块的主要任务是接收视频数据,并将其转换为后续处理所需的格式。具体步骤: 1.1.1 视频读取 步骤:从文件系统、网络流或摄像头读取视频数据。技术:使用 OpenCV 的 cv2.VideoCa…...

实践KDTS-WEB从mysql迁移到kingbasev9

数据库国产化替代数据迁移是一个复杂且关键的过程。这涉及到将原有数据库中的数据准确、完整地迁移到新的国产数据库中,同时确保数据的完整性和一致性。人大金仓提供了强大的数据库迁移工具(KDTS)对同构、异构数据库数据迁移; 数…...

WebGIS实战开源项目:智慧机场三维可视化(学习笔记)

From:新中地 1.简介 智慧机场解决方案,基于数字化大平台,融合AI、大数据、IoT、视频云、云计算等技术,围绕机场“运控、安防、服务”三大业务领域,构建“出行一张脸”及“运行一张图”两大场景化解决方案。 https://…...

2025年PMP项目管理考试时间一览表

PMP认证是全球项目管理领域公认的权威认证,它不仅能证明你在项目管理方面的专业水平,还能大大提升你的职场竞争力! 随着企业对项目管理人才的需求不断增长,获得PMP认证将为你带来更多的职业机会和高薪职位。 为了帮助大家合理安排…...

20241224在ubuntu20.04.6下的终端分屏软件terminator的安装以及使用

20241224在ubuntu20.04.6下的终端分屏软件terminator的安装以及使用 2024/12/24 18:35 百度:终端分屏软件 https://blog.csdn.net/weixin_49693003/article/details/143683326 可以实现终端分屏的工具:terminator 安装: sudo apt-get insta…...

打造高效租赁小程序让交易更便捷

内容概要 在如今节奏飞快的商业世界里,租赁小程序如同一只聪明的小狐狸,迅速突围而出,成为商家与消费者之间的桥梁。它不仅简化了交易流程,还在某种程度上将传统租赁模式带入了互联网时代。越来越多的企业意识到,这种…...

光谱相机在农业中的具体应用案例

作物生长监测与产量预测 美国爱荷华州玉米种植园:农场主使用无人机搭载高光谱相机,定期对玉米田进行拍摄。通过分析光谱数据,获取玉米的叶面积指数、叶绿素含量等生长参数。在玉米生长关键期,依据这些参数及时调整施肥和灌溉方案…...

Linux RTC 驱动框架

目录 一、实时时钟(RTC)介绍1.1 概述1.2 功能1.3 应用场景1.4 工作原理1.5 对外接口1.6 常见 RTC 芯片1.7 在 Linux 系统中的应用1.8 注意事项 二、Linux 内核 RTC 驱动框架2.1 相关源码文件介绍2.2 核心数据结构2.2.1 struct rtc_device2.2.2 rtc_class…...

msyql数据库读写分离搭建

一.mysql读写分离:缓解主服务器的压力1.概念:主服务器写数据,从服务器读数据2.实现方法:客户端分离: 开发手动分离地址服务端分离: 数据库与应用之间加一个中间件,分离读写请求mysql-proxy,mysql-route,maxscaleamoeba,cobar,mycat2atlas,kingshard,vitees3.mycat配置方法:冷配…...

WWW23-多行为级联|级联图卷积网络的多行为推荐

论文:https://arxiv.org/abs/2303.15720 代码:https://github.com/SS-00-SS/MBCGCN 这篇论文MB-CGCN和上一篇CRGCN是同一个团队的,都是级联的方式。一个用了残差,一个用了特征转换,文章最后有discussion讨论了两者的不…...

【EthIf-14】EthIfGeneral容器配置-02

1.实际EthIfGeneral的配置实例 关闭DET接口开启发送确认中断开启接收中断主周期接收timeout主周期 2. 代码实例参考 阅读此部分代码,搞清楚代码分为几个section,大概瞄一眼就好,不用深究其含义,只需有一个宏观的层次结构的映像即可。 //Appl/GenData/EthIf_Cfg.h #...

近实时”(NRT)搜索、倒排索引

近实时(Near Real-Time, NRT)搜索 近实时(NRT)搜索是 Elasticsearch 的核心特性之一,指的是数据在被写入到系统后,可以几乎立即被搜索和查询到。虽然它不像传统数据库那样完全实时,但它的延迟通…...

Ubuntu20.04安装openMVS<成功>.colmap<成功>和openMVG<失败(已成功)>

一、安装openMVS 参考官方文档 sudo apt-get -y install git mercurial cmake libpng-dev libjpeg-dev libtiff-dev libglu1-mesa-dev eigen git clone https://gitlab.com/libeigen/eigen --branch 3.4 mkdir eigen_build cd eigen_build &&\cmake . ../eigen -…...

从测试服务器手动热部署到生产环境的实现

为了实现从测试服务器(192.168.0.255)手动热部署到生产环境(172.168.20.100),可以采用多种方法。以下是详细的步骤和最佳实践,帮助你实现这一目标。 1. 准备生产环境 确保生产环境上的 Docker 和 Docker …...

【c++高阶DS】图

🔥个人主页:Quitecoder 🔥专栏:c笔记仓 目录 01.并查集02.图的介绍03.图的存储结构03.1.邻接矩阵03.2.邻接表03.3.矩阵版本代码实现03.4.邻接表版本代码实现 完整代码: 01.并查集 在一些应用问题中,需要将…...

React第十八节 useEffect 用法使用技巧注意事项详解

1、概述 useEffect 是React中一个用于 将组件与外部系统同步的 Hook;在函数式组件中处理副作用函数的 Hook,用于替代类式组件中的生命周期函数; 可以在副作用函数中 实现以下操作: a、请求接口,获取后台提供数据 b、操…...

C++ 指针基础:开启内存操控之门

1. 指针为何如此重要 在 C 编程领域,指针堪称一项极为关键的特性。它赋予了程序员直接访问和操控内存的能力,这使得程序在处理复杂数据结构与优化性能时具有更高的灵活性。想象一下,在编写大型程序时,高效地管理内存资源是多么重要…...

Nginx的stream模块代理四层协议TCP的流量转发

Nginx的stream模块是一个功能强大的工具,专门用于处理四层协议(即网络层和传输层,如TCP和UDP)的流量。以下是对Nginx stream模块的详细解析: 一、基本功能 Nginx的stream模块主要用于实现TCP和UDP数据流的代理、转发…...

UE5 渲染管线 学习笔记

兰伯特 SSS为散射的意思 带Bias的可以根据距离自动切换mip的卷积值 而带Level的值mipmaps的定值 #define A8_SAMPLE_MASK .a 这样应该就很好理解了 这个只采样a通道 带Level的参考上面的 朝左上和右下进行模糊 带Bias参考上面 随机数 4D 3D 2D 1D...

深入理解Snaffler规则引擎:如何自定义分类器提升检测效率

深入理解Snaffler规则引擎:如何自定义分类器提升检测效率 【免费下载链接】Snaffler a tool for pentesters to help find delicious candy, by l0ss and Sh3r4 ( Twitter: /mikeloss and /sh3r4_hax ) 项目地址: https://gitcode.com/gh_mirrors/sn/Snaffler …...

使用小龙虾来操作猿编程的遥控车怕

一、什么是 Q 饱和运算? 1. 核心痛点:普通运算的 “数值回绕” 普通算术运算(如 ADD/SUB)溢出时,数值会按补码规则 “回绕”,导致结果完全错误: 示例:int8_t 类型最大值 127 1 → 结…...

算法工程师的随身匕首:PyTorch 极简入门与实战

PyTorch 快速入门指南 一、PyTorch 是什么? PyTorch 是一个基于 Python 的深度学习框架,由 Facebook AI Research 开发。它以动态计算图和直观的接口著称,是研究和生产中最受欢迎的框架之一。 二、环境安装 # 基础安装(CPU版本&am…...

PHP农业监控系统可视化升级全记录,从MySQL原始数据到实时热力图的7大关键跃迁

第一章:PHP农业监控系统可视化升级全记录,从MySQL原始数据到实时热力图的7大关键跃迁传统农业监控系统长期依赖静态表格与离散折线图展示温湿度、土壤pH、光照强度等指标,数据更新延迟达5–15分钟,且空间分布关系完全缺失。本次升…...

PHP网关偶发502/504?揭秘OpenResty+PHP-FPM在严苛工控环境下的8大超时耦合陷阱(附压测对比图表)

第一章:工业PHP网关的典型故障现象与诊断起点工业PHP网关作为边缘计算与传统OT系统间的关键协议转换节点,其运行稳定性直接影响产线数据采集的连续性。常见故障并非源于语法错误,而是由资源约束、时序敏感性及协议适配偏差引发的隐性异常。典…...

在 ADT 里把 Released API 和 Deprecated Object 找明白,才算真正摸到 ABAP Cloud 开发的门道

很多人刚从经典的 On-Premise 开发切到 ABAP Cloud,最不适应的地方,不是 RAP,也不是 CDS view entity,而是眼前明明有一个类、一个接口、一个 CDS 实体,你却不能因为它存在就直接用。你得先确认它是不是 released,属于哪个 release contract,有没有被放进可用的 API Cat…...

Altium Designer布线时,线宽规则明明设了为啥不听话?手把手教你检查这两个关键开关

Altium Designer布线时线宽规则失效?两个隐藏开关决定成败 刚接触Altium Designer的工程师们经常遇到这样的场景:明明在规则编辑器里精心设置了线宽参数,实际布线时软件却像没看见这些规则一样我行我素。这种"规则失灵"现象往往让新…...

告别C盘空间焦虑:手把手教你将MySQL和PATSTAT专利库完整部署到移动硬盘

告别C盘空间焦虑:手把手教你将MySQL和PATSTAT专利库完整部署到移动硬盘 当你的研究项目需要处理数百GB的专利数据,而笔记本电脑的C盘只剩下可怜的几GB空间时,那种焦虑感堪比论文截止日期前夜的打印机卡纸。PATSTAT这样的专利数据库就像知识宝…...

从LaTeX论文中提取关键思想:nlp_structbert辅助学术文献综述

从LaTeX论文中提取关键思想:nlp_structbert辅助学术文献综述 写文献综述,大概是每个研究生和科研人员都绕不开的“必修课”。面对几十甚至上百篇PDF论文,光是下载、整理、阅读摘要,就足以耗掉一周的时间。更头疼的是,…...

把 Predefined Field Enabling 接进 RAP 业务对象里,给你的 SaaS 应用留出真正可控的客户扩展位

很多做 ABAP Cloud 的同学,做到 RAP 业务对象这一层时,会把可扩展性理解成两条路,一条是开发者自己预留字段,一条是交给 Key User 在运行期做字段配置。真正有意思的地方,其实在两条路的交汇点上,开发者先把边界、元数据、校验规则和发布契约搭好,客户再在自己的租户里把…...