【深度学习之路记录02】python代码批量修改Labelme标注的json文件(删除标签、修改标签名)
代码参考:https://blog.csdn.net/qq_44442727/article/details/112785978
创建自己的数据集时,经常需要一些调整,比如说修改某一批文件中已经标好的一个对象的标签名,或者是不打算分割某一类对象,需要删除对其的标注。自己参考学习写了以下两个小工具同大家分享。
case1:批量修改某一类对象的标签名
比如说,我之前把标注的一类对象写成了“dog”,现在我想全部修改为“puppy”。
文件结构默认使用了在labelme标注时,JPG图片和JSON文件都放在同一个文件夹里的习惯。
# !/usr/bin/env python
# -*- encoding: utf-8 -*-import os
import json#写入自己放了照片和json文件的文件夹路径
json_dir = 'C:\\Users\\Sharon\\Desktop\\label_images\\.....'
json_files = os.listdir(json_dir)#写自己的旧标签名和新标签名
old_name = "dog"
new_name = "puppy"for json_file in json_files:json_file_ext = os.path.splitext(json_file)if json_file_ext[1] == '.json':jsonfile = json_dir +'\\'+ json_filewith open(jsonfile,'r',encoding = 'utf-8') as jf:info = json.load(jf)for i,label in enumerate(info['shapes']):if info['shapes'][i]['label'] == old_name:info['shapes'][i]['label'] = new_name# 找到位置进行修改# 使用新字典替换修改后的字典json_dict = info# 将替换后的内容写入原文件 with open(jsonfile,'w') as new_jf:json.dump(json_dict,new_jf)print('change name over!')
case2:批量删除某一类对象标注
比如说,我之前标注了“cat",“dog”,现在我不想要"dog"这个类型了,批量删除。
# !/usr/bin/env python
# -*- encoding: utf-8 -*-import os
import json#这里写你自己的存放照片和json文件的路径
json_dir = 'C:\\Users\\Sharon\\Desktop\\label_images\\....'
json_files = os.listdir(json_dir)#这里写你要删除的标签名
delete_name = "nozzle"for json_file in json_files:json_file_ext = os.path.splitext(json_file)if json_file_ext[1] == '.json':#判断是否为json文件jsonfile = json_dir +'\\'+ json_filewith open(jsonfile,'r',encoding = 'utf-8') as jf:info = json.load(jf)for i,label in enumerate(info['shapes']):if info['shapes'][i]['label'] == delete_name:del info['shapes'][i]# 找到位置进行删除# 使用新字典替换修改后的字典json_dict = info# 将替换后的内容写入原文件 with open(jsonfile,'w') as new_jf:json.dump(json_dict,new_jf)print('delete label over!')
处理完以后大家可以打开labelme再检查一下自己的新图片标注是否达到想要的效果。
觉得ok,点赞再走呀~
【深度学习之路记录02】python代码批量修改Labelme标注的json文件(删除标签、修改标签名)相关推荐
- 视频教程-深度学习原理详解及Python代码实现-深度学习
深度学习原理详解及Python代码实现 大学教授,美国归国博士.博士生导师:人工智能公司专家顾问:长期从事人工智能.物联网.大数据研究:已发表学术论文100多篇,授权发明专利10多项 白勇 ¥88.0 ...
- Python修改图片格式以及相对应labelme标注的Json文件
Python修改图片格式以及相对应labelme标注的Json文件 前言 前提条件 相关介绍 实验环境 Python修改图片格式以及相对应labelme标注的Json文件 代码实现 输出结果 前言 本 ...
- 基于深度学习的手势识别系统(Python代码,UI界面版)
摘要:本文详细介绍基于深度学习的手势识别系统,在介绍手势识别算法原理的同时,给出了_P__y__t__h__o__n_的实现代码以及_P__y__Q__t_的UI界面.手势识别采用了基于MediaPi ...
- LabelMe标注的.json文件批量转Dataset,通过查询到多种代码无法在我电脑上正常工作,发现他们有共同的报错,于是修改后能正常工作。
1.写在前面 最近用到标注好的数据训练神经网络,用labelme标注好之后生成.json文件,我要实现的功能是目标分割,需要把.json文件转为VOC格式的数据.但是.json文件太多,于是在网上找一 ...
- 【视频】TFLearn深度学习库,20行Python代码实现情感分类
向AI转型的程序员都关注了这个号
- 利用深度学习(Keras)进行癫痫分类-Python案例
目录 癫痫介绍 数据集 Keras深度学习案例 本分享为脑机学习者Rose整理发表于公众号:脑机接口社区 QQ交流群:903290195 癫痫介绍 癫痫,即俗称"羊癫风",是由多种 ...
- 我的三年自学深度学习之路
大家好,我是羽峰.今天要和大家分享的是研究生三年的生活,也是自己自学深度学习的三年,凭借三年自学,最终进入了大厂做了一名算法工程师. 目录 2018 2019 2020 2021 2018 考研因为失 ...
- 【深度学习】基于Torch的Python开源机器学习库PyTorch回归
[深度学习]基于Torch的Python开源机器学习库PyTorch回归 文章目录1 torch.autograd 2 torch.nn.functional 3 详细的回归DEMO3.1 DATAS ...
- 深度学习保姆级入门教程 -- 论文+代码+常用工具
导读 该篇文章可以看作是我研一如何入门深度学习的一个大总结,本人本科专业为软件工程,硕士期间研究方向为基于深度学习的图像分割,跨度相对而言不算太大.如果你对如何入门深度学习还很迷茫的话,那么请看下去吧 ...
最新文章
- java B2B2C Springcloud多租户电子商城系统-消息驱动的微服务(消费分区)
- Deno 1.0?我还没好好研究 Node,你就这样推倒重做?
- android到顶部,Android recyclerview滚动到顶部
- vue @click 赋值_vue 手写一个时间选择器
- Can not issue data manipulation statements with executeQuery()错误解决
- robotFramework-ride使用1-关键字驱动与数据类型
- 控件:DataGridView列类型
- Leetcode 279 完美平方数
- vista下,怎么为一个程序设置UAC的例外?
- 实现web版用户注册(可以上传头像)
- SMT工艺培训一日谈
- 橙瓜发布2018网络小说风云榜年度榜,顶级大神作家的无声角逐
- linux测试硬盘速度命令,如何测试Linux磁盘的读写速度
- xlsx表格怎么筛选重复数据_excel表格中如何筛选重复数据
- 【工商银行科技菁英计划笔试】压缩字符串
- Windows 10 正式版原版ISO镜像
- 计算机界的传奇人物:高纳德
- bert获得词向量_Bert输入输出是什么
- 俞敏洪老师的回复真的太糟糕了!
- 认识vue.js(一)