广告
返回顶部
首页 > 资讯 > 后端开发 > Python >labelme的安装及使用
  • 147
分享到

labelme的安装及使用

python深度学习linux 2023-09-09 22:09:27 147人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

一、Anaconda的安装 步骤1:访问Anaconda官网,点击Download,下载Anaconda软件安装包。 步骤2:双击刚下载好的anaconda软件安装包,按照提示进行下一步操作即可。

一、Anaconda的安装

步骤1:访问Anaconda官网,点击Download,下载Anaconda软件安装包。

请添加图片描述

步骤2:双击刚下载好的anaconda软件安装包,按照提示进行下一步操作即可。

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

二、安装labelme

步骤1:打开Anaconda Prompt,然后执行下面的命令,创建 labelme虚拟环境

请添加图片描述

conda create -n labelme python=3.8

请添加图片描述
请添加图片描述

步骤2:输入下面的命令,检查labelme是否下载成功,如果有如下图所示的打印,说明labelme已经安装成功。

conda env list

请添加图片描述

步骤3:执行下面的命令,激活labelme虚拟环境,当命令行的最前面出现(labelme),就说明labelme虚拟环境已经被激活了。

conda activate labelme

请添加图片描述

步骤4:分步指行下面的命令,下载并安装labelme已经依赖软件包。如果中间提示([y]/n) ?的时候,输入 y,然后回车即可。

conda install pyQtconda install pillowpip install labelme

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
步骤5:执行下面的命令,查看labelme是否安装成功

conda list

请添加图片描述

三、打开labelme

步骤1:执行下面的命令,激活labelme虚拟环境,以后每次打开anaconda prompt,或者命令行的最前面不是(labelme),都需要执行这条命令。

activate labelme

请添加图片描述

步骤2:执行下面的命令,然后敲回车,就可以打开labelme工具了。

labelme

请添加图片描述

四、使用labelme进行图片标注

步骤1:点击OpenDir按钮,然后选择我们需要标注的图片的路径,然后再点击右下角的选择文件夹按钮。

请添加图片描述

步骤2:将鼠标放在图片上面,然后鼠标右键,选择 Create Rectangle

请添加图片描述

步骤3:点击鼠标左键,开始画框,把目标图片框住之后,再点击鼠标左键,结束画框,此时会弹出一个对话框,可以在输入框中输入你标注的目标的名字,如果是猫的话,就输入cat,如果是狗的话,就输入dog,然后点击OK按钮即可。

请添加图片描述

步骤4:点击Save按钮,进行JSON标注文件的保存,首先在JPEGImage同级目录下创建一个json文件夹,然后把标注生成的json文件保存到该json文件中,点击保存按钮,即可进行保存。

请添加图片描述

步骤5:点击Next Image按钮,进行下一张图片的标注。

请添加图片描述

五、数据标注的归一化处理

  • json文件中包含的内容有很多,但是我们做模型训练的时候,只需要他的label以及point即可,因此我们需要将这些数据从json数据中取出来。

请添加图片描述

  • YOLOV2进行模型训练的时候,需要的标注信息是 (Class id , center_x , center_y, w, h) 这五个值,且需要归一化处理。
Class id    center_x    center_y    w    h对数据格式解释如下:Class id:表示标注框的类别,从0开始计算,当前只要手部1类检测物体,故Class id全为0;center_x:表示归一化后的手部框中心点坐标的X值。归一化坐标 = 实际坐标 / 整个图片宽center_y:表示归一化后的手部框中心点坐标的Y值。归一化坐标 = 实际坐标 / 整个图片高w:表示归一化后的手部框的宽。归一化长度 = 实际长度 / 整个图片宽h:表示归一化后的手部框的高。归一化长度 = 实际长度 /整个图片高

步骤1:创建一个 json_to_txt.py文件,然后将下面的代码复制到json_to_txt.py文件中。然后根据自己的数据集路径及数据集名称,修改代码。

# 处理labelme多边形矩阵的标注  json转化txtimport jsonimport osname2id = {'cat': 0, 'dog': 1} #此处需要根据你自己的数据集类型进行修改def convert(img_size, box):    dw = 1. / (img_size[0])    dh = 1. / (img_size[1])    x = (box[0] + box[2]) / 2.0    y = (box[1] + box[3]) / 2.0    w = abs(box[2] - box[0])    h = abs(box[3] - box[1])    x = x * dw    w = w * dw    y = y * dh    h = h * dh    return (x, y, w, h)def decode_json(json_floder_path, txt_outer_path, json_name):    txt_name = txt_outer_path + json_name[:-5] + '.txt'    with open(txt_name, 'w') as f:        json_path = os.path.join(json_floder_path, json_name)  # os路径融合        data = json.load(open(json_path, 'r', encoding='gb2312', errors='ignore'))        img_w = data['imageWidth']  # 图片的高        img_h = data['imageHeight']  # 图片的宽        isshape_type = data['shapes'][0]['shape_type']        print(isshape_type)        for i in data['shapes']:            label_name = i['label']  # 得到json中你标记的类名            if (i['shape_type'] == 'polyGon'):  # 数据类型为多边形 需要转化为矩形                x_max = 0                y_max = 0                x_min = 100000                y_min = 100000                for lk in range(len(i['points'])):                    x1 = float(i['points'][lk][0])                    y1 = float(i['points'][lk][1])                    # print(x1)                    if x_max < x1:                        x_max = x1                    if y_max < y1:                        y_max = y1                    if y_min > y1:                        y_min = y1                    if x_min > x1:                        x_min = x1                bb = (x_min, y_max, x_max, y_min)            if (i['shape_type'] == 'rectangle'):  # 为矩形不需要转换                x1 = float(i['points'][0][0])                y1 = float(i['points'][0][1])                x2 = float(i['points'][1][0])                y2 = float(i['points'][1][1])                bb = (x1, y1, x2, y2)            bbox = convert((img_w, img_h), bb)            try:                f.write(str(name2id[label_name]) + " " + " ".join([str(a) for a in bbox]) + '\n')            except:                passif __name__ == "__main__":    json_floder_path = '.\\json\\'  # 存放json的文件夹的绝对路径    txt_outer_path = '.\\labels\\'  # 存放txt的文件夹绝对路径    json_names = os.listdir(json_floder_path)    print("共有:{}个文件待转化".fORMat(len(json_names)))    flaGCount = 0    for json_name in json_names:        decode_json(json_floder_path, txt_outer_path, json_name)        flagcount += 1        print("还剩下{}个文件未转化".format(len(json_names) - flagcount))    # break    print('转化全部完毕')

请添加图片描述

步骤2:在 json_to_txt.py文件所在的位置,打开dos界面,执行下面的命令,进行json数据的归一化处理。

请添加图片描述

执行完上一步骤,就会在labels目录下,生成与图片相对于的txt文件。

请添加图片描述
请添加图片描述

  • 到此,labelme的安装和使用方法就讲解完毕了。

来源地址:https://blog.csdn.net/Wu_GuiMing/article/details/130625940

--结束END--

本文标题: labelme的安装及使用

本文链接: https://www.lsjlt.com/news/401930.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • labelme的安装及使用
    一、Anaconda的安装 步骤1:访问Anaconda官网,点击Download,下载Anaconda软件安装包。 步骤2:双击刚下载好的anaconda软件安装包,按照提示进行下一步操作即可。 ...
    99+
    2023-09-09
    python 深度学习 linux
  • Labelme 安装以及使用
    好久没有使用标注工具了,应工作需要,补一篇,自己实践后,总结如下 1.labelme 简介 labelme 是一款图像标注工具,主要用于神经网络构建前的数据集准备工作,因为是用 Python 写的,所...
    99+
    2023-09-26
    python 开发语言 深度学习
  • labelme的安装
    目录 一、Labelme概述二、安装1.问题2.解决 三、打开Labelme四、参考博文 一、Labelme概述 Labelme用来对图像数据进行标注(打标签),由python编写,图...
    99+
    2023-09-02
    python 开发语言
  • Flume的安装及使用
    Flume的安装及使用 目录Flume的安装及使用Flume的安装1、上传至虚拟机,并解压2、重命名目录,并配置环境变量3、查看flume版本4、测试flume5、flume的使用 Flume的安装 1、上传至虚拟机,并解压 tar -z...
    99+
    2015-07-16
    Flume的安装及使用
  • SeleniumIDE安装及使用
    目录1.Selenium IDE简介2.Selenium IDE下载3.使用1.Selenium IDE简介 是Chrome和FireFox的扩展工具,用于在浏览器中进行便捷的录制与...
    99+
    2023-03-22
    Selenium IDE安装 Selenium IDE使用
  • resin3安装及使用
    1.)安装JAVA2.)设置环境变量3.)安装resin4.)resin多进程设置一、下载JAVA的rpm包,直接安装即可二、设置环境变量  1.为了统一路径,将JAVA建一个软连接在/opt目录      ln -s /opt/zimbr...
    99+
    2023-01-31
  • javaFX安装及使用
    一、javaFX下载 Jdk 从 1.8 开始 jdk 自带 JavaFX,到 Jdk 11 开始 jdk 不再内置 JavaFX,所以如果你使用的是高版本的 jdk 在使用 javaFX 的时候就需...
    99+
    2023-09-01
    intellij-idea java javaFX安装及使用 javaFX javaFX安装
  • DDDDOCR安装以及使用
    DDDDOCR图片验证码识别技术 在我们日常浏览网页的时候,常常会弹出一张图片让你来验证,有的是滑动验证,有的是输入相应字符来进行验证,今天我就来给大家介绍这么一个技术,可以专门用来识别图片验证码的功...
    99+
    2023-09-18
    python numpy pycharm
  • MySQL Workbench安装及使用
    目录 一、MySQL Workbench简介 二、MySQL数据库安装 三、远程连接MySQL服务器 四、创建数据库 五、创建数据表 六、数据内容维护 七、查看数据表 八、修改数据表 九、删除数据表 一、MySQL Workben...
    99+
    2023-08-31
    数据库 mysql sql
  • MySQL Workbench 安装及使用
    MySQL Workbench 安装及使用 文章目录 MySQL Workbench 安装及使用1. MySQL Workbench 简介2. MySQL Workbench 的下载与安装3. MySQL Workbench 使用...
    99+
    2023-08-18
    mysql 数据库 dba
  • 【iOS】Cocoapods的安装以及使用
    文章目录 前言一、Cocoapods的作用二、安装Cocoapods三、使用Cocoapods总结 前言 最近笔者在仿写天气预报App时用到了api调用数据,一般的基本数据类型我们用Xc...
    99+
    2023-09-17
    ios cocoapods cocoa xcode objective-c
  • httplib库的安装以及使用
    目录 安装httplib库 认识httplib库 httplib请求类  httplib响应类  httplib中的Server类        httplib的client类 httplib库搭建简单的服务器 httplib库搭建简单的客...
    99+
    2023-09-17
    服务器 http 前端
  • PHP中的FFmpeg安装及使用
    本文和大家分享PHP中的FFmeg安装及使用,希望能帮助到大家 FFmpeg简介 FFmpeg是视频处理最常用的开源软件。 它功能强大,用途广泛,大量用于视频网站和商业软件(比如 Youtube 和 iTunes),也是许多音频和视频格式的...
    99+
    2023-09-02
    ffmpeg
  • Kettle的安装及简单使用
    Kettle的安装及简单使用 目录Kettle的安装及简单使用一、kettle概述二、kettle安装部署和使用Windows下安装案例1:MySQL to MySQL案例2:使用作业执行上述转换,并且额外在表stu2中添加一条数据案例3...
    99+
    2017-11-05
    Kettle的安装及简单使用
  • iotop的安装及使用方法
    这篇文章主要讲解了“iotop的安装及使用方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“iotop的安装及使用方法”吧! ...
    99+
    2022-10-18
  • yarn的安装及使用详解
    目录一、引言二、同为包管理工具 npm和yarn的区别三、yarn的安装四、总结一、引言 之前出过一篇关于 用 npm 创建 react 项目的介绍与使用教程,本文在此介绍并对比一下...
    99+
    2022-11-13
  • gradle的安装配置及使用
    一、gradle的安装 1.官网下载链接:https://gradle.org/releases/ 1、下载后解压 2、配置环境变量,新建 GRADLE_HOME 环境变量指向你的 Gradle 解压路径 3、将 %GRADLE_H...
    99+
    2023-08-19
    gradle java 开发语言
  • PowerDesigner如何安装及使用
    PowerDesigner是一款强大的建模工具,用于设计和管理数据库、业务过程、数据仓库和应用程序等。下面是PowerDesigne...
    99+
    2023-09-14
    PowerDesigner
  • jconsole如何安装及使用
    jconsole是Java自带的一种监视和管理工具,用于监控和管理Java虚拟机(JVM)的性能和资源使用情况。要安装和使用jcon...
    99+
    2023-09-25
    jconsole
  • opencv如何安装及使用
    要安装和使用OpenCV,您可以按照以下步骤进行操作:1. 首先,您需要下载并安装OpenCV的库文件。您可以在OpenCV的官方网...
    99+
    2023-09-20
    opencv
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作