目标检测数据集标注工具Labelimg安装与使用

news2024/10/6 20:39:52

一、labelimg是什么

        labelimg是一款开源的图像标注工具,标签可用于分类和目标检测,其注释以 PASCAL VOC格式保存为XML文件,这是ImageNet使用的格式。此外,它还支持 COCO数据集格式。 

二、安装labelimg

打开cmd并输入以下命令 

pip install labelimg -i https://pypi.tuna.tsinghua.edu.cn/simple

然后等待其自动帮你安装labelimg以及lxml和pyqt5(注:我这里下载过了,就不需要再次下载) 

结束后,在cmd中输入labelimg

labelimg

 等一会会就会出现labelimg页面

三、初识labelimg 

按键功能介绍

Open打开单个图像文件
Open Dir打开文件夹多幅图像
Change Save Dir标注后图像数据存储的路径
Next Image切换到下一张图像
Prev Image切换到上一张图像
Verify Image校验图像
Save保存图像
Create RectBox画一个标注框
Duplicate RectBox重复标注框
Delete RectBox删除标注框
Zoom In放大图像
Zoom Out缩小图像
Fit Window图像适应窗口
Fit Width图像适应宽度

        在View中勾选Auto Save mode (自动保存

 接下来我们打开需要标注的图片文件夹 

并设置标注文件保存的目录(上图中的Change Save Dir) 

        接下来就开始标注,画框,标记目标的label,然后d切换到下一张继续标注,不断重复重复

labelimg的快捷键

这里有一个技巧,如果整批图片中检测的类型比较单一。我们可以观察右侧的红框,那里面会随着点击OK的那一刻出现已经打好的标签类型。直接点击选择即可。就不用每一张都输入一遍名字,也降低了容错。

四、labelimg的快捷键

image-20210609171855504

         我一般使用W和D ,这里大家可以去试试,用上快捷键后,标注速度肯定会得到提升。

五、标注结果展示

VOC

这里,我将文件保存的目录设置到了图片目录,大家可以自己去设置   

由于笔者是用PASCAL VOC格式,其最终保存为XML文件

以记事本打开,内容如下,有许多信息(图片大小、通道数、标签名称、选框位置的参数

标注完后,生成的xml文件就可以方便后续的xml_to_csv以及转换为tfrecord文件了。 

YOLO 

 主要改成YOLO即可,后续操作与上述一样。 

生成文件如下

 一个名为“classes.txt”的文件也保存到该文件夹​​中。

①“classes.txt”定义了你的 YOLO 标签所引用的类名列表。 

②具体的标注文件中每一行表示一个目标,以空格进行区分,分别表示目标的类别id,归一化处理之后的中心点x坐标、y坐标、目标框的w和h

        完成后可进行后续的yolo训练方面的操作。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/772385.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

微信小程序导入微信地址

获取用户收货地址。调起用户编辑收货地址原生界面,并在编辑完成后返回用户选择的地址。 1:原生微信小程序接口使用API:wx.chooseAddress(OBJECT) wx.chooseAddress({success (res) {console.log(res.userName)console.log(res.postalCode)c…

【计算机视觉】DINOv2(视觉大模型)代码使用和测试(完整的源代码)

文章目录 一、环境部署二、导入原图2.1 使用vit_s14的模型 三、使用其他模型3.1 使用vit_b14的模型3.2 使用vit_l14的模型3.3 使用vit_g14的模型 一、环境部署 !git clone https://ghproxy.com/https://github.com/facebookresearch/dinov2.git输出为: Cloning in…

OpenCv之图像轮廓(二)

目录 一、多边形逼近 二、凸包 三、最小外接矩形与最大外接矩形 一、多边形逼近 参照函数: approxPolyDP就是以多边形去逼近轮廓,采用的是Douglas-Peucker算法(DP) DP算法原理比较简单,核心就是不断找多边形最远的点加入形成新的多边形,直…

go环境下载github文件显示timeout解决方法

1、问题背景 go环境正常,需要去github拉取一个资源进行编译 go build -v -o naabu cmd/naabu/main.go 编译过程中报错如下: pkg/runner/runner.go:19:2: github.com/miekg/dnsv1.1.53: Get "https://proxy.golang.org/github.com/miekg/dns/v/v1.1.53.zip&q…

Git 使用笔记

Git使用笔记 1 版本控制 1.1 什么是版本控制 ​ 版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。简单说就是用…

C#使用Linq和Loop计算集合的平均值、方差【标准差】

方差【标准差】 标准差公式是一种数学公式。标准差也被称为标准偏差,或者实验标准差,公式如下所示: 样本标准差方差的算术平方根ssqrt(((x1-x)^2 (x2-x)^2 ......(xn-x)^2)/n) 总体标准差σsqrt(((x1-x)^2 (x2-x)^2 ......(xn-x)^2)/n ) …

准备WebUI自动化测试面试?这30个问题你必须掌握(二)

本文共有11000字,包含了后十五个问题,如需要前十五个问题,可查看文末链接~ 16. 在WebUI自动化测试中,你如何处理验证码或图像识别的问题? 1. 人工识别:一种简单但费时费力的方法是使用人工手动识别验证码。…

什么是渲染?一文看懂,萌新赶紧收藏码住!

十四五规划提出“加快数字化发展,建设数字中国”,数字技术的快速发展,从起初的内容创建到最终的效果呈现,都离不开渲染技术。目前,渲染技术被广泛应用于教育、医疗、影视动画、建筑设计等多个领域。它能有效满足用户对…

小程序微信登陆实现流程

1. 微信登录流程 微信登录官方介绍:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html 小程序登录:小程序可以通过微信官方提供的登录能力方便地获取微信提供的用户身份标识,快速建立小程序内的用户体系…

Stable Diffusion - 图像反推 (Interrogate) 提示词算法 (BLIP DeepBooru)

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/131817599 图像反推 (Interrogate) 功能,是指根据给定的图像生成一个或多个文本提示,这些提示可以描述图像的内容、风格、…

Linux--crontab命令详解--循环执行的计划任务

Linux–crontab命令详解–循环执行的计划任务 文章目录 Linux--crontab命令详解--循环执行的计划任务一、用户设置二、crontab三、/etc/crontab,/et/cron.d/*总结 一、用户设置 循环执行任务是由cron(crond)这个系统服务来控制的。用户想要建立循环的计划任务时,使用的是cront…

TypeScript 1 - 小记

文章目录 关于 TypeScript 关于 TypeScript TypeScript is a superset of JavaScript that compiles to clean JavaScript output. 官网:https://www.typescriptlang.orggithub : https://github.com/microsoft/TypeScriptplayground : https://www.typescriptlan…

Alibaba Cloud Toolkit部署操作

一、后端部署: 第一步 第二步: 第三步: 二、前端部署 第一步: 第二步: 第三步:

学会项目成本管理计算,PMP计算题就是送分题

学会项目成本管理计算&#xff0c;PMP计算题就是送分题 PMP中的计算主要在 <项目成本管理> 的控制成本部分&#xff0c;服务于挣值管理&#xff08;EVM&#xff0c;Earned Value Management&#xff09;、挣值分析&#xff08;EVA&#xff0c;Earned Value Analysis&…

【0】冒泡排序

前言 通过函数模板技术设计一个冒泡排序算法&#xff0c;领悟泛型编程的思想和冒泡排序的思想&#xff0c;然后使用QTest测试各种输入值&#xff0c;养成先写测试代码&#xff0c;后写程序代码的习惯 0x0 编写一个int版本的冒泡函数 1.不管要排序的数组长度多长&#xff0c;外…

Postman如何设置成中文?(汉化)

1. 点击下方这个链接&#xff0c;进入gitee&#xff0c;在里面下载一个插件 Releases hlmd/Postman-cn GitHub 进入之后是这个样子的&#xff1a; 2.看一下自己的postman是什么版本的&#xff0c;然后在gitee下载对应的APP包&#xff08;注意&#xff1a;是App.zit包。不要下…

中金:龙湖基本面稳健,股价超跌具备配置价值

恒大2.4万亿元的天量债务爆出后&#xff0c;让本就信心不足的房地产行业&#xff0c;越发雪上加霜&#xff0c;房企股价遭遇集体下挫&#xff0c;业内公认的万科、龙湖、保利、中海等“优等生”也不免被波及。多家证券机构提醒&#xff0c;行业预期降至冰点的情况下&#xff0c…

【精华】maven 生命周期 + 依赖传递+ scope【依赖范围】 + 排除依赖 可选依赖

目录 一 . lifecycle 生命周期 二. 依赖 与 依赖传递 三. scope 依赖范围 scope指定依赖范围 依赖传递依赖与原依赖冲突 四 maven的可选依赖与排除依赖 可选依赖 全部 排除依赖 显式的指定 maven官网技术文档&#xff1a; 一 . lifecycle 生命周期 * clean&…

java密码强度校验

一、代码 Testpublic void test(){//包含数字、大小写字母&#xff0c;长度10-20位 String regular "^(?.*\\d)(?.*[a-z])(?.*[A-Z]).{10,20}$";String example1 "1234567891";System.out.println(example1.matches(regular)); //falseString exa…

Python numpy求均值、保留几位小数

import numpy as nplist_test [0.21, 0.32]print(f{np.mean(list_test):.2f}) #保留两位小数 print(f{np.mean(list_test):.3f}) #保留三位小数