上一篇记录了labelme的安装及简单使用,接下来记录将labelme标注后json文件转化为训练数据

1. 单个json文件转换为png数据

labelme自带的labelme_json_to_dataset功能,只是只能转换单个文件,使用下面命令

conda activate labelme #激活labelme环境
labelme_json_to_dataset.exe C:\testData\0.json

这样在testData文件下会生成一个0_json文件夹,里面有五个文件如图所示

其中文件夹0_json文件夹中有以下5个文件

  • img.png:原始图像
  • label.png:标签,unit8
  • label_viz.png:可视化的带标签的图像
  • label_names.txt:记录了标签的名称
  • info.yaml:配置文件

2.多张图片批量转换

写在前面,看了很多博客修改了的labelme中的labelme_to_dataset.py文件,这里记录两种方法

2.1 bat脚本循环法:
@echo off
for %%i in (*.json)  do labelme_json_to_dataset %%i
pause

新建一个txt文件,把这个复制进去,然后改名为test.bat,和要转换的文件放在一起。然后在激活相应环境下,进入所在文件目录,命令行输入test.bat就可以了,如下

conda activate labelme #激活相应环境
test.bat #输入命令行
2.2 程序法:
# labelme_batch_change.py
import os
path = 'Y:/data/SOD/dataset_test/SOD/json/'
json_file = os.listdir(path)
for file in json_file:os.system('D:/software/Anaconda3/envs/labelme/Scripts/labelme_json_to_dataset.exe %s'%(path+file))

3. 标注图片提取

生成的label图片均在文件中,且图片名均是label.png,所以需要批量提取label.png,其他4个文件没有用,代码如下

# 将标签图从json文件中批量取出
import os
import shutilpath = 'C:/test/'
dirpath = 'C:/labelImage/'for eachfile in os.listdir(path):if os.path.isdir(path + eachfile):if os.path.exists(path + eachfile + '/label.png'):shutil.copy(path + eachfile + '/label.png', dirpath + eachfile.split('_')[0] + '.png')print(eachfile + ' successfully moved')

4.标注图片转化为单通道

import os
import cv2
import numpy as np
bace_path = r"D:\research\data\train\mask"
save_path = r'D:\research\data\train'for im in os.listdir(bace_path):img = cv2.imread(os.path.join(bace_path, im))b, g, r = cv2.split(img)r[np.where(r != 0)] = 255cv2.imwrite(os.path.join(save_path, im), r)

参考:这里

labelme批量制作数据集相关推荐

  1. labelme批量制作数据集教程

    labelme数据标注及json标签文件批量处理 文章目录 labelme数据标注及json标签文件批量处理 前言 一.Labelme安装 1. windows 2. Ubuntu 二.Labelme ...

  2. excel批量制作条形码_如何在Microsoft Excel中制作条形图

    excel批量制作条形码 A bar chart (or a bar graph) is one of the easiest ways to present your data in Excel, ...

  3. 四、采集和制作数据集

    一.采集数据 安装labelme:pip install labelme 打开labelme:labelme 将收集好的照片(320×320,png格式)存放到一个文件夹中,例如我的是F:\test, ...

  4. Python批量制作索引图

    python 批量制作索引图 python批量制作索引图 最近看的语义分割GSCNN代码的数据集为cityscapes类型,代码中需要的标签图为索引图,而我的标签是3通道RGB图,所以参考了两篇博客. ...

  5. 【puthon】把大量csv文件写入h5文件制作数据集

    背景 每一个样本的数据被写入了一个csv中,在制作数据集时,需要先将大量的csv文件写入到一个h5文件中 样例代码 import os import sys import h5py import nu ...

  6. ai去除水印_ai全自动视频剪辑软件,每天批量制作800条原创视频!

    亲爱的读者朋友,今天咱们就长话短说,直接进入正题,为大家介绍一款真正能够实现全自动化的黑科技剪辑软件. 本软件功能十分强大,支持多个视频素材批量合成,支持选择配音员.配音语速.配音语速,还可以设置字幕 ...

  7. 函的红头文件格式制作_Excel实现批量制作年会邀请函,这个方法,你一定不能错过...

    庆嘉节.当三五.列华灯.千门万户.遍九陌罗绮,香风微度.十里然绛树.鳌山耸,喧天萧鼓. --宋.柳永<迎新春·嶰管变青律> 2019年已经结束,2020年已悄然来到我们身边.新年伊始阶段, ...

  8. vue 带全选和多选的表格怎么写_EXCEL五分钟,批量制作带照片的工地出入证

    作者:祝洪忠 转自:Excel之家ExcelHome 小伙伴们好啊,今天和大家分享一个邮件合并的技巧--批量制作带照片的工地出入证. 先看效果图: 要准备的材料包括: 一.Excel资料表 资料表中包 ...

  9. word activex部件不能创建对象_如何用Word批量制作员工工作证?1分钟搞定1000份!只需三步...

    工作证是我们工作中很常见的东西,不过由于每个人的名字.部门.照片都不同,很多小伙伴都不知道怎么批量制作,总是傻傻地一张一张制作,这样特别浪费时间,今天小编就来跟大家分享如何批量制作! 一.准备工作 1 ...

最新文章

  1. HaoheDI让ETL变得简单
  2. PythonOpenCV - 随机生成图像 与 图像的转维(reshape)
  3. 在页面加载完后执行jQuery代码
  4. C memset 踩坑
  5. python线程安全的计数器_+ =运算符在Python中是线程安全的吗?
  6. 如何用PPT来实现三维3D效果,附参数设置详解
  7. python中StringIO和BytesIO
  8. TABLE与DIV的取舍
  9. 树的最大独立集详解(C++)
  10. 靶场练习之hackinglab(鹰眼)-基础题
  11. vue+mintUI-------mintUI中indicator报错
  12. 深度学习入门:一句话告诉你什么是神经网络CN,RNN,DNN)
  13. Java实现龟兔赛跑
  14. 【Unity学习笔记】——基础篇:关于光照GI
  15. 模糊控制(二)模糊控制——模糊推理
  16. java使用flex生成swf_flex动态生成矢量swf字体--java动态生成swf文件
  17. 电子电路设计需要考虑哪些方面
  18. DES_3DES_AES_IDES_RSA密码算法比较
  19. html中对复选框验证,验证HTML中的复选框
  20. 考研:研究生考试(五天学完)之《线性代数与空间解析几何》研究生学霸重点知识点总结之第五课线性方程组

热门文章

  1. 企业等保测评的必要性
  2. matlab pdepe函数边界,[求助]用pdepe求解偏微分方程时遇到分段边界条件的问题
  3. AI产品推荐_Replika(聊天机器人App)
  4. OVS QoS流量控制
  5. 好看的美剧《生活大爆炸》
  6. 【骐程】【深信服测试开发面试】首次面试互联网
  7. 京东科技实习招聘 | 春天的第一份实习正在呼唤你!
  8. 为什么很多企业都在用文件加密系统?
  9. linux查看已安装软件版本号
  10. 提升工作效率之PCB设计软件“立创EDA”