精华内容
下载资源
问答
  • labelme使用教程

    千次阅读 2020-12-04 15:41:07
    (1)打开 labelme 界面 在刚才创建的虚拟环境下,打开labelme。如下图所示:直接输入label,然后回车。 注:如果你之前不小心退出了labelme虚拟环境,需要重新进入该环境下。 打开之后,labelme的界面就像下面...

    (1)打开 labelme 界面

    在刚才创建的虚拟环境下,打开labelme。如下图所示:直接输入label,然后回车。
    在这里插入图片描述
    注:如果你之前不小心退出了labelme虚拟环境,需要重新进入该环境下。

    打开之后,labelme的界面就像下面这样:

    在这里插入图片描述

    (2)标注数据集

    第一步,点击open。打开你准备好的数据集,选中第一张图片打开。比如下面我打开的图片是302.jpg

    在这里插入图片描述
    第二步,点击 create polygons 开始描点。描点一定要细致,要将目标(这里是物堆)刚好框住。就像下面这样:

    在这里插入图片描述
    锚点完成后,会自动跳出下图页面让你标注类别。这里因为我只需要判断出物堆的区域,所以类别直接命名为1即可。
    然后点击保存,就得到了对应的json文件。如下图所示:
    在这里插入图片描述

    (3)生成 png 图片标签

    在开始菜单,再次找到 Anaconda Prompt 打开。注意第一次打开的 Anaconda Prompt 不要关。
    第一步,先进入已经创建好的labelme环境:

    conda activate labelme
    

    第二步,cd 到刚才生成的json文件地址。比如我生成的302.json文件在:C:\Users\yibo_liu\Desktop\沙堆数据集\数据集test。那就cd 到该目录下:

    在这里插入图片描述

    第三步,运行如下代码:

    labelme_json_to_dataset  <文件名>.json
    

    比如我要生成 302.json 的 png 标签文件,就像下面这样:

    在这里插入图片描述
    这一步完成后,就生成了302_json文件,我们最终需要的png标签就在这个文件夹里。

    在这里插入图片描述
    最后,打开302_json文件,需要将里面的 label.png 重命名为 302.png,这就是我们最终要的标签。
    注意:标签图片名一定要和原图对应。

    展开全文
  • labelme 使用教程

    万次阅读 2018-09-06 10:18:53
    labelme使用python写的基于QT的跨平台图像标注工具,可用来标注分类、检测、分割等常见的视觉任务,支持VOC格式和COCO等的导出,代码简单易读,是非常利用上手的良心工具.

    labelme是使用python写的基于QT的跨平台图像标注工具,可用来标注分类、检测、分割、关键点等常见的视觉任务,支持VOC格式和COCO等的导出,代码简单易读,是非常利用上手的良心工具.

    安装

    最简单的方式莫过于通过pip安装 pip install labelme

    但是由于我们要在其基础上二次开发,所以只能 pip install -e .

    cd examples/tutorial
    labelme apc2016_obj3.jpg  # specify image file
    labelme apc2016_obj3.jpg -O apc2016_obj3.json  # close window after the save
    labelme apc2016_obj3.jpg --nodata  # not include image data but relative image path in JSON file
    labelme apc2016_obj3.jpg \
      --labels highland_6539_self_stick_notes,mead_index_cards,kong_air_dog_squeakair_tennis_ball  # specify label list
    
    # semantic segmentation example
    cd examples/semantic_segmentation
    labelme data_annotated/  # Open directory to annotate all images in it
    labelme data_annotated/ --labels labels.txt  # specify label list with a file
    可视化真值: labelme_draw_label_png apc2016_obj3_json/label.png
    可视化真值并导出数据: labelme_json_to_dataset apc2016_obj3.json -o apc2016_obj3_json
    

    代码解析

    程序的入口在__main__.py中的main函数, 其处理了外部传进的命令行后传递给MainWindow,还实现了不同语言的适配.MainWindows的实现在app.py中, 初始化时构建了菜单、docker栏、快捷键等, 所有的标注都会绘制在一个canvas上, shape.py用于绘制已经标注的图形,主要看mousePressEvent、mouseMoveEvent和mouseReleaseEvent三个鼠标回调函数

    mousePressEvent是鼠标按下时消息的回调,有一个ev参数作为输入,保存了鼠标按下时的上下文,首先将鼠标的坐标由窗口坐上角转换为以点击点为中心的坐标, 然后判断按下的是鼠标左键还是右键,如果是左键,还需进一步判断当前所属的模式是创建制模式还是修改模式,如果是创建模式,则需要创建选中元素的点,将其添加到形状列表中,而修改模式则需要判断是否选中了某个元素,然后将其坐标进行修改.如果按下的是右键则默认修改模式,直接拖动点.

    mouseMoveEvent用于绘制元素添加的中间过程,以便有更清晰的提示,判断逻辑与之前类似,还判断了已有元素是否处于选中状态,如果是则将其高亮显示.

    mouseReleaseEvent用于处理鼠标抬起的回调,主要就是恢复鼠标按下时修改的光标形状,如果有修改则setDirty用于标识需要保存.

    目前labelme的标签并不会显示在标注点而是docker栏上,这很不方面我们直接看,因此需要增加这项能力.

    在def drawVertex(self, path, i):最后加上就可以了

            if i == 0:
                myFont = QtGui.QFont("Times", 20)
                mypoint = point - QtCore.QPointF(0,d)
                path.addText(mypoint,myFont,self.label)

    cvat

    cvat是OpenCV开发的在线交互式图像和视频标注工具,被用来标注数以亿计的目标和属性,可以在cvat.org体验效果. 其支持众多主流标注格式的导入和导出,为制作标准数据集提供了很大的便利;支持帧间插值和预训练模型自动标注、大多数常用操作均配置快捷键.

    安装首先克隆仓库并安装必须的库

    sudo apt-get install -y curl redis-server python3-dev python3-pip python3-venv libldap2-dev libsasl2-dev
    git clone https://github.com/opencv/cvat
    cd cvat && mkdir logs keys
    sudo pip3 install -r cvat/requirements/development.txt
    python3 manage.py migrate
    python3 manage.py collectstatic

    新建超级管理员账户,根据提示输入将要新建的管理员账户名、邮箱和密码,注意密码至少8位且不能太简单

    python3 manage.py createsuperuser
    python3 manage.py runserver --noreload --nothreading --insecure 127.0.0.1:7000

    使用谷歌浏览器打开网址127.0.0.1:7000, 使用刚才新建的账户名和密码登录,选择新建任务

    使用教程 注册:先注册超级管理员,再赋予普通标注员以权限.

    新建标注任务:使用Create new task按钮新建标注任务,设置任务的参数

     

    展开全文
  • labelme使用教程(实用版)

    千次阅读 2021-04-29 17:32:08
    labelme使用教程 1 Labelme安装 1.1 打开Anaconda3自带的Anaconda Prompt 1.2 创建一个虚拟的py环境: conda create –name=labelme python=3.7 1.3 安装pyqt: conda install pyqt 1.4 安装labelme: pip install ...

    labelme使用教程

    1 Labelme安装

    1.1 打开Anaconda3自带的Anaconda Prompt

    在这里插入图片描述

    1.2 创建一个虚拟的py环境:

    conda create –name=labelme python=3.7

    1.3 安装pyqt:

    conda install pyqt

    1.4 安装labelme:

    pip install labelme==3.16.2 -I https://pypi.tuna.tsinghua.edu.cn/simple
    pip install labelme -I https://pypi.tuna.tsinghua.edu.cn/simple
    (安装特定版本是为了将背景转换为二值图做铺垫,不然会报错的)

    1.5 启动

    打开Anaconda Prompt,然后输入activate labelme
    然后输入Labelme
    在这里插入图片描述
    在这里插入图片描述

    2 实现labelme批量json_to_dataset方法

    2.1 修改json_to_dataset.py代码

    在lableme安装目录下有D:\Anaconda\Lib\site-packages\labelme\cli目录,可以看到json_to_dataset.py文件
    在这里插入图片描述
    复制json_to_dataset.py文件,代码更改:

    import argparse
    import json
    import os
    import os.path as osp
    import warnings
     
    import PIL.Image
    import yaml
     
    from labelme import utils
    import base64
     
    def main():
        warnings.warn("This script is aimed to demonstrate how to convert the\n"
                      "JSON file to a single image dataset, and not to handle\n"
                      "multiple JSON files to generate a real-use dataset.")
        parser = argparse.ArgumentParser()
        parser.add_argument('json_file')
        parser.add_argument('-o', '--out', default=None)
        args = parser.parse_args()
    
        json_file = args.json_file
        if args.out is None:
            out_dir = osp.basename(json_file).replace('.', '_')
            out_dir = osp.join(osp.dirname(json_file), out_dir)
        else:
            out_dir = args.out
        if not osp.exists(out_dir):
            os.mkdir(out_dir)
     
        count = os.listdir(json_file) 
        for i in range(0, len(count)):
            path = os.path.join(json_file, count[i])
            if os.path.isfile(path):
                data = json.load(open(path))
                
                if data['imageData']:
                    imageData = data['imageData']
                else:
                    imagePath = os.path.join(os.path.dirname(path), data['imagePath'])
                    with open(imagePath, 'rb') as f:
                        imageData = f.read()
                        imageData = base64.b64encode(imageData).decode('utf-8')
                img = utils.img_b64_to_arr(imageData)
                label_name_to_value = {'_background_': 0}
                for shape in data['shapes']:
                    label_name = shape['label']
                    if label_name in label_name_to_value:
                        label_value = label_name_to_value[label_name]
                    else:
                        label_value = len(label_name_to_value)
                        label_name_to_value[label_name] = label_value
                
                # label_values must be dense
                label_values, label_names = [], []
                for ln, lv in sorted(label_name_to_value.items(), key=lambda x: x[1]):
                    label_values.append(lv)
                    label_names.append(ln)
                assert label_values == list(range(len(label_values)))
                
                lbl = utils.shapes_to_label(img.shape, data['shapes'], label_name_to_value)
                
                captions = ['{}: {}'.format(lv, ln)
                    for ln, lv in label_name_to_value.items()]
                lbl_viz = utils.draw_label(lbl, img, captions)
                
                out_dir = osp.basename(count[i]).replace('.', '_')
                out_dir = osp.join(osp.dirname(count[i]), out_dir)
                if not osp.exists(out_dir):
                    os.mkdir(out_dir)
     
                PIL.Image.fromarray(img).save(osp.join(out_dir, 'img.png'))
                #PIL.Image.fromarray(lbl).save(osp.join(out_dir, 'label.png'))
                utils.lblsave(osp.join(out_dir, 'label.png'), lbl)
                PIL.Image.fromarray(lbl_viz).save(osp.join(out_dir, 'label_viz.png'))
     
                with open(osp.join(out_dir, 'label_names.txt'), 'w') as f:
                    for lbl_name in label_names:
                        f.write(lbl_name + '\n')
     
                warnings.warn('info.yaml is being replaced by label_names.txt')
                info = dict(label_names=label_names)
                with open(osp.join(out_dir, 'info.yaml'), 'w') as f:
                    yaml.safe_dump(info, f, default_flow_style=False)
     
                print('Saved to: %s' % out_dir)
    if __name__ == '__main__':
    main()
    

    然后替换之前json_to_dataset.py文件

    3 生成标记分割图

    在这里插入图片描述
    找到labelme json_to_dataset.exe文件路径
    在这里插入图片描述
    打开anaconda之后,
    (1)先输入D:
    (2)然后cd D:\Anaconda3\Scripts
    (3)然后labelme_json_to_dataset.exe D:\UAVpic\uav_train\New\labelme\json
    之后的文件保存在scripts下面,用的相对路径保存了!
    在这里插入图片描述

    3.1 得到背景为0,目标为1的二值图

    3.1.1 Labelme版本(3.16.2)

    Labelme的低版本,才有draw.py,改里面的代码,实现目标为1。修改draw.py里面的代码
    在这里插入图片描述
    在这里插入图片描述

    3.1.2 Labelme高版本的绘图设置

    高版本的没有draw.py文件了,是在imgviz里面的label.py修改。
    在这里插入图片描述
    后面的位置可以搜索文件夹!!!
    添加的一段代码如下:
    在这里插入图片描述

    4 Shortcuts

    为了加快标注进程,加入快捷键
    找到.labelmerc 文件 直接以记事本编辑
    在这里插入图片描述

    5 生成mask

    5.1 添加标签和图片

    在这里插入图片描述
    在这里插入图片描述
    把标签放在图片目录下

    5.2 导入图片和标签到labelme

    在这里插入图片描述
    (1)Activate labelme
    (2)然后d:
    (3)cd D:\UAVpic\uav_train\New\labelme
    (4)直接labelme 图片文件夹名(你自己的) --labels labels.txt --nodata --validatelabel exact
    导入成功
    标注时最好把图片和标注的json放在一起,方便修改标注!

    5.3 批量生成最后的文件

    python labelme2voc.py image target --labels labels.txt
    image里面是标签和图片放在一起!

    展开全文
  • labelme安装与使用教程

    2018-05-25 15:03:50
    用于分割图像的标注工具labelme安装与使用说明 用于分割图像的标注工具labelme安装与使用说明
  • miniconda安装教程见如下文章 http://doge.ac.cn/?p=2840 安装完毕后用conda安装labelme # python3 conda create --name=labelme python=3.6 conda activate labelme pip install l..

    项目源码

    github源码地址

    gitee拷贝的源码地址 (上面的加载慢用这个)

    安装(windows为例)

    先安装conda,这里推荐miniconda

    miniconda安装教程见如下文章

    http://doge.ac.cn/?p=2840

    安装完毕后用conda安装labelme

    # python3
    conda create --name=labelme python=3.6
    conda activate labelme
    pip install labelme

    直接win键+r键,输入cmd,进入命令行

    输入labelme即可运行

    标注过程

    1.打开图片所在文件夹:File-opendir 找到你要标注的文件夹。

    2.选择标注类型:直接右键选择标注类型为polygons。

    3.绘制标注:然后鼠标左键点击绘制。

    4.结束当前目标的绘制:绘制过程中双击鼠标,或者把绘制的线首尾相连,都可以结束当前框的绘制。

    5.标注下一张图片:点击next或者按D键进入下一张图片的标注

    6.保存标注:绘制完毕后ctrl + s键即可保存标注信息。

    快捷键修改(ubuntu为例,windows只要找到同名文件即可)

    批量标注提高效率就要用到快捷键了,在home下面有一个隐藏文件.labelmerc,crtl+h可以查看Ubuntu的隐藏文件。

    打开.labelmerc,里面是默认的快捷键。
    根据自己的习惯可以自定义一些操作的快捷键

    我这里改了自动保存,编辑和创建轮廓线

    auto_save: true
    edit_polygon: J
    create_polygon: F

    打开终端,键入:labelme --config ./.labelmerc
    编辑的快捷键会立即生效,下次打开只需要键labelme即可。

    展开全文
  • 图像数据标注工具labelme使用教程

    万次阅读 多人点赞 2019-01-25 11:19:14
    参考教程: https://github.com/wkentaro/labelme https://blog.csdn.net/ZYhhhh233/article/details/80278293 https://blog.csdn.net/shwan_ma/article/details/77823281 ...
  • anaconda安装labelme

    2021-01-06 22:17:37
    问题:如何使用anaconda安装labelme? 第一步:以管理员身份打开 anaconda prompt 第二步:激活环境(有两种情况,要注意自己的需求) 1、激活已有的环境(例如已有环境名为environment1) 则输入:activate ...
  • labelme简单使用教程

    千次阅读 2020-03-13 19:37:01
    2.labelme使用教程 2.1语义分割(单张图片) Labelme 能够进行多种形式的图像数据标注。Labelme 以 JSON 文件存储标注信息。下面介绍一些 labelme 软件的基本操作。 (labelme) hsh@hsh-G7-7588:~$ ...
  • 环境:Ubuntu16.04 + Python + Qt1、安装Ubuntu 14.04 / Ubuntu 16.04Python2:sudo apt-get install python-qt4 # PyQt4sudo apt-get install python-pyqt5 # PyQt5sudo pip install labelme2、打开终端键入:...
  • 深度学习标注工具 LabelMe使用教程(Windows 版本) 2018-11-21 20:12:53   精灵标注助手:http://www.jinglingbiaozhu.com/  LabelMe:https://github.com/CSAILVision/LabelMeAnnotationTool    1. ...
  • 它是用 Python 语言编写的,图形界面使用的是 Qt(PyQt)。 Labelme 可实现的功能: (1)对图像进行多边形,矩形,圆形,多段线,线段,点形式的标注(可用于目标检测,图像分割,等任务)。 (2)对图像进行进行 ...
  • labelme安装和使用教程

    千次阅读 2020-06-05 13:51:14
    labelme安装和使用教程 design by ht 一、安装教程 基于视频教程:https://www.bilibili.com/video/BV16b411G7kB?p=1修改 Step 1:安装Anaconda 教学视频:...
  • Labelme安装及使用教程

    千次阅读 多人点赞 2020-07-04 13:13:55
    Labelme安装教程(基于anaconda) 1. 创建anaconda虚拟环境labelme conda create -n labelme python=3.6 完成之后如图所示(由于我已经创建了labelme故这里用labelme1代替) 激活环境: conda activate labelme ...
  • 图片标注工具Labelme-简明使用教程

    千次阅读 2021-01-06 14:25:07
    记录Labelme使用方法,方便快速上手使用labelme简介 LabelMe 可用于实例分割,语义分割,目标检测,分类任务的数据集标注工作。 在线标注版本 python版本 labelme官方文档 分类标注:Classification 目标检测...
  • labelme的安装及使用教程

    千次阅读 2019-04-19 10:37:03
    pip install labelme 安装完毕后,在终端执行以下命令: labelme 之后就打开如下界面: 2、标注 点击Open Dir,选择需要标注的文件所在的文件夹,将图片路径全部加载。当标注一幅图时存在多个同类目标时,...
  • Labelme标注的数据转为VOC格式,用于制作物体检测数据集。将Labelme标注的数据转为VOC格式,用于制作物体检测数据集。
  • 本博客介绍了 labelme 的安装与使用。 我们在做语义分割和目标检测的时候,图像的标注一直是一项重点工作,在这里,本博客将向大家介绍一下图像标注工具 labelme 的安装与使用方法。 Labelme 是 python 下的一个工具...
  • labelme安装教程

    2021-10-28 17:48:36
    3.添加虚拟环境(这步非必须,如果新建虚拟环境,则每次进入labelme前需先进入虚拟环境) conda create --name=【你的名字】 或者conda create -n 【你的名字】 进入虚拟环境:conda activate 【你的名字】 4....
  • 我们的工作,就是要使用labelme工具,利用原图1.jpg生成它的标签图片1.png,得到的最终结果像下面这样: 文章目录 1. 安装 Anaconda3 2. 安装 labelme 3. 使用 labelme (1)打开 labelme 界面 (2)标注数据集 (3...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 676
精华内容 270
关键字:

labelme使用教程