labelme的安装及使用

这篇具有很好参考价值的文章主要介绍了labelme的安装及使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、Anaconda的安装

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

labelme的安装及使用

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

labelme的安装及使用
labelme的安装及使用
labelme的安装及使用
labelme的安装及使用
labelme的安装及使用
labelme的安装及使用
labelme的安装及使用
labelme的安装及使用

二、安装labelme

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

labelme的安装及使用

conda create -n labelme python=3.8

labelme的安装及使用
labelme的安装及使用

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

conda env list

labelme的安装及使用

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

conda activate labelme

labelme的安装及使用

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

conda install pyqt

conda install pillow

pip install labelme

labelme的安装及使用
labelme的安装及使用
labelme的安装及使用
labelme的安装及使用
步骤5:执行下面的命令,查看labelme是否安装成功

conda list

labelme的安装及使用

三、打开labelme

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

activate labelme

labelme的安装及使用

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

labelme

labelme的安装及使用

四、使用labelme进行图片标注

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

labelme的安装及使用

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

labelme的安装及使用

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

labelme的安装及使用

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

labelme的安装及使用

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

labelme的安装及使用

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

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

labelme的安装及使用

  • 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转化txt
import json
import os

name2id = {'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:
                pass


if __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('转化全部完毕')

labelme的安装及使用

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

labelme的安装及使用

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

labelme的安装及使用
labelme的安装及使用文章来源地址https://www.toymoban.com/news/detail-495942.html

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

到了这里,关于labelme的安装及使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • labelImg和labelme的区别、安装和基本使用

    labelimg是一种矩形标注工具,常用于目标识别和目标检测,其标记数据输出为.xml和.txt labelme是一种多边形标注工具,可以准确的将轮廓标注出来,常用于分割,其标记输出格式为json labelImg和labelme都是训练数据集时,用于给数据集打标签的软件,但一个是矩形框,一个是可以

    2024年02月06日
    浏览(30)
  • Ubuntu安装Anaconda详细步骤(Ubuntu22.04.1,Anaconda3-2023.03)

    本文主要讲述了在Ubuntu中安装anaconda的具体步骤 准备环境:Ubuntu22.04.1,Anaconda3 1.下载Anaconda3 在清华镜像下载Linux版本的anaconda 清华镜像官网Anaconda下载 我选择的是Anaconda3-2023.03-Linux-x86_64.sh 下载好的Anaconda3-2023.03-Linux-x86_64.sh如图所示: 2.在用户文件夹下新建一个名为anaconda的文

    2024年02月11日
    浏览(34)
  • ubuntu20.04系统安装使用labelme标注数据集

    请参考:Mediapipe+VSCode+Anaconda 实时检测手部关键点并保存视频_苦瓜汤补钙的博客-CSDN博客 1.打开终端创建虚拟环境   输入“y”,然后回车。  2.激活虚拟环境,开始安装  1、启动 2、点击【open】,选择图片;【Edit Polygons】---- 【Create Polygons】  3、可以选择自动保存  

    2024年02月16日
    浏览(35)
  • 关于安装基于Anaconda的Pytorch报错问题(文章为所有安装步骤)

    由于一开始Pycharm无法下载资源包,所以打算重新安装一下Anaconda,没想到想在官网下载Anaconda时文件丢失,缺少Sprits文件,在网上尝试了很多方法也没有成功,最后猜测应该是之前卸载Anaconda时没有卸载干净,导致Sprits文件还是有残留,所以没有读取到,最后通过重装系统解决

    2024年02月05日
    浏览(30)
  • Anaconda下各种版本TensorFlow安装步骤详解(基于python3.6)

    TensorFlow 是一个端到端开源机器学习平台。它拥有一个全面而灵活的生态系统,其中包含各种工具、库和社区资源,可助力研究人员推动先进机器学习技术的发展,并使开发者能够轻松地构建和部署由机器学习提供支持的应用。 1.1 首先打开Anaconda Prompt输入 conda info -e 来查看所

    2024年02月12日
    浏览(33)
  • Anaconda历史版本地址官网 + Miniconda清华源 + Anaconda每个版本对应的默认Python版本

    Ananconda 官网历史版本 Ananconda 清华源地址

    2024年02月21日
    浏览(35)
  • postman下载安装和基础使用教程(官网)

    一、下载 1.百度搜索postman,找到官网,点击进去 2.点击Windows的图标,进入下载页面 3.点击Windows64位下载   4.下载完如图所示,双击或右击进行安装 二、安装、使用  5.点击第一个即可  6.此时浏览器会打开一个网址,注册postman账号即可  7.注册账号登录后,打开postman 8.点击

    2024年02月15日
    浏览(73)
  • Linux中搭建FTP服务器,匿名用户访问、本地用户访问、虚拟用户访问(详细解答安装配置步骤)

    对于Linux搭建服务器步骤详解:可以基于匿名访问、本地用户访问、虚拟用户访问 FTP服务访问可分为三种 匿名用户:用户名为ftp或者anonymous,提供任意密码或无密码访问即可. 本地用户:要求有用户名和相对应密码,适用于使用者都是使用此服务器的人。 虚拟用户(出于安全

    2024年02月10日
    浏览(50)
  • labelme的安装

    Labelme用来对图像数据进行标注(打标签),由python编写,图形界面使用的是Pyqt,所以后面需要安装Pyqt5。标注形式多种:多边形,矩形,圆形,多段线,线段,点形式,根据自己需要可以选择。 (1) win+R打开终端输入cmd (2) 依次安装labelme、pyqt5、pillow,输入命令如下:

    2023年04月09日
    浏览(20)
  • 【python】快速使用Anaconda&Anaconda安装及使用教程

    1.介绍     Anaconda(官方网站)就是可以便捷获取包且对包能够进行管理,同时对环境可以统一管理的发行版本。Anaconda包含了conda、Python在内的超过180个科学包及其依赖项。 2.特点 Anaconda具有如下特点: 如果日常工作或学习并不必要使用1,000多个库,那么可以考虑安装Mini

    2024年02月08日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包