利用shell脚本遍历文件、执行字符串指令(labelme标注工具批量解析json)

在进行深度学习时,使用labelme标注工具标注了一系列图像,结果是json格式,每个Json文件需要在标注环境下执行一句shell命令来解析。

于是乎想到用shell脚本方法写个循环。首先先用文本建立一个.sh的文件,然后如下:

这个脚本的作用就是遍历文件夹里所有.json文件,首先要判断后缀是不是.json,然后读取文件名,命名新的字符串,然后执行一句shell命令$cmd。这句命令行里面拼接了自定义的字符串,使得xxx.json文件解析为一个xxx_json的文件夹。这大大缩减了工作量!

#!/bin/bash

echo "Now begin to search json file..."
for file in ./*
do
    if [ "${file##*.}"x = "json"x ]
    then
    filename=`basename $file`
    temp_filename=`basename $file  .json`
    suf=_json
    new_filename=${temp_filename}${suf}
#    echo $new_filename
    cmd="labelme_json_to_dataset ${filename} -o ${new_filename}"
    eval $cmd
    fi
#    printf "no!\n "
done

亲测可行。

本脚本也可以用于其他情况如判断后缀、遍历文件、做其他操作等等,提供参考框架。注意sh文件我是放在和json的同一文件夹下。

关于labelme:https://github.com/wkentaro/labelme

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值