自制数据集之labelme软件的使用,深度学习入门(1)

  • 说明
    • 一.安装labelme
    • 二.使用labelme标注
    • 三 解析json文件
    • 四、批处理json文件夹

说明

因为之前做语义分割项目需要自己制作数据集,故了解到labelme标注软件,语义分割需要标注出同类别的信息,使用labelme过程中的一些坑和心得记录下来。笔者的环境,win10+python3.7+tensorflow2.1.0+labelme 4.5.9

一.安装labelme

安装labelme比较简单,我是在win10+anaconda环境下,打开anaconda prompt(或者win+r+cmd 然后键入:activate base(你的python环境),推荐这种)终端,直接pip install labelme即可,若是网络波动下载缓慢,可以使用国内源进行下载。

1.可以直接pip

pip install labelme

2.网络问题的话可以指定国内源并且可以指定版本,以豆瓣源为例

pip install -i https://pypi.douban.com/simple --trusted-host pypi.douban.com labelme=4.5.9

安装之后直接在终端键入labelme即可打开labelme界面

可能出现的问题1:
在win+r+cmd activate base(你的python环境)时出现activate既不是外部命令,也不是可运行程序等等那就是没有把activate bat脚本配置到Path环境变量里,这一步需要找到安装anaconda时的activate脚本所在的位置,事实上activate和conda,deactivate这些脚本存放的位置都是在一起的,我的存放位置是:D:\ProgramData\Anaconda3\condabin,相对位置都是一样的,比较好找。

二.使用labelme标注

终端键入labelme即可使用labelme标注,点击open dir可以对文件夹中的文件进行标注,edit菜单栏下也有不同的标注方式,多点标注,长方形标注,正方形并标注等等。点击save即可保存为同名的json配置文件。

标注注意事项:
如果是面对项目工程量大的标注,需要多人标注,那么标注的顺序是很重要的,所有人必须有同样的先后顺序的标注。在labelme中,第一个标注的物体类别是红色框框起来的,第二个是绿色框,如下图所示,我先标了火腿肠所以是用红色框起来的,后标的积木是用绿色框起来的,如果我和我的队友没有协商好,他先标了积木后标了火腿肠,那么在解析json文件后是需要编写脚本重新将两个数据集合并的,增加了许多不必要的麻烦。

三 解析json文件

对于上一步生成的json文件,labelme中为我们提供了脚本来解析json文件,键入如下即可将json文件生成对应的同名目录

labelme_json_to_dataset   C:\Users\Administrator\Desktop\test\1_img.json

labelme_json_to_dataset解析json的脚本,后面的是待解析json文件的绝对路径

解析后的文件夹如图所示:

其中的img.png即为喂给神经网络待学习的数据,而label.png是所谓的标准答案,也就是标签,与目标检测不同的是,语义分割的label是一张图像而不是具体的数值或字段。

直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。

四、批处理json文件夹

可以想象的是,一个个接送文件的处理是及其麻烦的,对此,我们可以方便的编写python脚本来进行json文件的批处理,我们需要单独建一个文件夹里面存放所有的json文件,具体脚本代码如下:

def batch_handle_json(path):  # 批处理json文件:  path为json文件夹存放的绝对路径json_file = os.listdir(path)os.system("activate base")  # 在当前进程打开子进程执行command命令,相当于在命令行下敲命令for file in json_file:os.system("labelme_json_to_dataset.exe %s"%(path + '/' + file))  # 格式化输出

自制数据集之labelme软件的使用,深度学习入门(1)相关推荐

  1. 将MNIST手写数字数据集导入NumPy数组(《深度学习入门:基于Python的理论与实现》实践笔记)

    将MNIST手写数字数据集导入NumPy数组(<深度学习入门:基于Python的理论与实现>实践笔记) 一.下载MNIST数据集(使用urllib.request.urlretrieve( ...

  2. 深度学习入门(一)快速建立自己的图片数据集

    机器学习或深度学习的第一步是获取数据集,一般我们使用业务数据集或公共数据集.本文将介绍使用 Bing Image Search API 和 Python 脚本,快速的建立自己的图片数据集. 1. 快速 ...

  3. 【深度学习入门:基于Python的理论与实现】书本学习笔记 第三章 神经网络

    文章目录 1. 阶跃函数的实现 2. 函数图形 2.1 阶跃函数 2.2 sigmoid 函数 2.3 ReLU 函数 3. 多维数组的运算 3.1 矩阵乘法 3.2 神经网络的内积 4. 三层神经网 ...

  4. 深度学习入门指北——从硬件到软件

    作者:隔壁王大喵 近日,Rachel Thomas在fast.ai上发布了一篇博文<What you need to do deep learning>,他希望通过这篇文章回答一些深度学习 ...

  5. 深度学习入门-误差反向传播法(人工神经网络实现mnist数据集识别)

    文章目录 误差反向传播法 5.1 链式法则与计算图 5.2 计算图代码实践 5.3激活函数层的实现 5.4 简单矩阵求导 5.5 Affine 层的实现 5.6 softmax-with-loss层计 ...

  6. 深度学习入门-基于Python的理论入门与实现源代码加mnist数据集下载推荐

    深度学习入门-基于Python的理论入门与实现源代码加mnist数据集下载推荐 书籍封面 1-图灵网站下载 书里也说了,可以图灵网站下载https://www.ituring.com.cn/book/ ...

  7. 深度学习入门源代码下载使用mnist数据集出现错误EOFError Compressed file ended before the end-of-stream marker was reached

    深度学习入门:基于Python的理论与实现源代码下载使用mnist数据集出现错误[EOFError: Compressed file ended before the end-of-stream ma ...

  8. [TensorFlow深度学习入门]实战九·用CNN做科赛网TibetanMNIST藏文手写数字数据集准确率98%+

    [TensorFlow深度学习入门]实战九·用CNN做科赛网TibetanMNIST藏文手写数字数据集准确率98.8%+ 我们在博文,使用CNN做Kaggle比赛手写数字识别准确率99%+,在此基础之 ...

  9. 福利丨一门面向所有人的人工智能公开课:MIT 6.S191,深度学习入门

    对初学者来说,有没有易于上手,使用流行神经网络框架进行教学的深度学习课程?近日,麻省理工学院(MIT)正式开源了在线介绍性课程「MIT 6.S191:深度学习入门」.该课程包括一系列有关神经网络及其在 ...

最新文章

  1. 公司Windows Office升级项目总结
  2. 怎么用python读取csv文件、并且是读取行-使用python获取csv文本的某行或某列数据的实例...
  3. 阿里、小米、美团或将入恒指,但这还远远不够!
  4. centerpython_centeros下安装python3
  5. latex 表格 每列 分隔符
  6. 打印机服务器虚拟端口,Win7打印机服务器端口添加方法
  7. 开发者 发展 程序物语
  8. npm-shrinkwrap
  9. web前端入门知识大全:系统路线,各类要点解析
  10. 微信缓存dat怎么转图片_微信dat文件转换为图片
  11. Asp连接数据库时的问题Microsoft OLE DB Provider for ODBC Drivers error ‘80004005‘
  12. i.MX6ULL系统移植 | 移植NXP官方linux4.1.15内核
  13. win7系统IE11管理加载项里面没有Shockwave Flash Object的解决方法
  14. 论文分享 | 智能放牧无人机多旋翼无人机发展趋势
  15. 基于汇编实现的欢乐QQ堂小游戏 附完整代码
  16. 临床试验中edc录入_使用电子数据采集(EDC)系统进行医疗器械临床试验研究
  17. selenium+python登录新浪微博
  18. java与C++中文字符的问题
  19. Android视频播放器横竖屏切换时遇到的问题记录
  20. qt linguist使用注意

热门文章

  1. 用笔记本创建WiFi无线热点赚钱
  2. 淘集集双十一秒杀活动寄样的问题?
  3. 服务器补丁信息,服务器补丁管理|如何修补服务器?-ManageEngine补丁管理器升级版...
  4. python绘制动态心电图_Python-Evoked地形图可视化
  5. 阿里云国际站充值:阿里云PAI DSW实例安装R Kernel
  6. JavaScript的案例:模拟聊天界面发送信息
  7. 【Qt入门第36篇】 网络(六)UDP
  8. Leetcode 1096:花括号展开 II(超详细!!!)
  9. linux安装宝塔 VNC,Linux 安装宝塔面板(CentOS 8.2)
  10. 来香港科技大学的第二天