labelme标记图像时JSON标签复制

我这次的项目收集到的数据集是固定摄像头在不同时候拍摄的照片,场景变化不大,主要检测物也变化不大,除了刮风和植被生长会影响标记轮廓。几百张图片手工标记会有很多重复工作,而且图片像素也没有发生改变,那我们标记的点坐标应该也是大差不差的,想能不能直接复制我们给第一批图片打的标签呢?

使用labelme标记图片后,点击保存,会生成一个同名的JSON格式文件,记录你刚才标记的信息。内容包含有"version",  "flags",  "shapes"(存储标签的label名和点坐标)。本来想能不能直接复制呢?后面发现还有"imagePath"和  "imageData"的信息,path直接改为图片名称就好,但是Data却是一大串人类无法理解的长字符,后面查询的这串data数据是根据原图编码的,那直接根据相应的要求修改就好了

from labelme import utils
import numpy as np
from PIL import Image
import json

with open('0401.json','r',encoding='utf8')as fp:#复制的原始图片的JSON文件
    json_data = json.load(fp)

#我的图片已经按顺序重新用数字编号命名了,所以能用数字循环找到图片,可根据自己情况修改
for i in range(402,601):
    name = '%04d' % i+".png"
    img=Image.open('F:/600张图/401-600/'+name)#给哪些图片自动打标签
    arr=np.asarray(img)
    data=utils.img_arr_to_b64(arr).decode('utf-8')
    json_data["imageData"]=data
    json_data["imagePath"]=name

    filename="new/"+'%04d' % i+".json"#标签存储的位置
    with open(filename,'w',encoding='utf-8') as f:
        json.dump(json_data, f,ensure_ascii=False)
    print(name+'  success')

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值