1、把json都放在同一目录下
这里写个py即可
#!/usr/bin/env python
# coding : utf-8
import os
import shutil
absolute_path = os.path.dirname(__file__) #获取本文件的绝对路径
absolute_path = absolute_path[:-len('/scripts')]
all_file_name = os.listdir(os.path.join(absolute_path,'image_dataset'))
json_file = [] #存储json文件名字
for i in all_file_name:
if i[-4:] == 'json':
json_file.append(i)
print(json_file)
for i in json_file:
shutil.copy(os.path.join(absolute_path+'/image_dataset',i),os.path.join(absolute_path,'image_dataset_label'))
自己根据自己的路径做一些修改。
2、编写一个shell脚本
shell脚本的作用是利用labelme_json_to_dataset这个程序(它是anaconda创建labelme环境时自带的,所以后面需要在anaconda的labelme环境下执行shell)
#!/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
这里参考了here。
自己根据自己的路径做一些修改。
3、打开anaconda环境
在win下搜索anaconda Prompt,进入之后是这样
4、在labelme环境下执行shell
即输入 json2png.sh即可。
写在最后:以上基于安装好anaconda,并且创建了一个叫做labelme的环境,在这个环境下安装了labelme,如果环境名称不叫labelme,自行在命令中替换即可。