解析json文件,从json文件中提取信息

使用labelme标注工具标注生成的文件为json文件,要使用标注结果,需要提取标注结果中的坐标信息,并将结果生成label。

代码如下:

import numpy as np
import os
import json
import io
import PIL.Image

def shapes_to_label(json_file_path,savaFileName):
    list_path = os.listdir(json_file_path)
    file_handle = open(savaFileName, mode='w')
    for i in range(0,len(list_path)):
        path = os.path.join(json_file_path,list_path[i])
        if os.path.isfile(path):
            data = json.load(open(path))
            for shape in data['shapes']:
                label_name = shape['label']
                file_handle.write(label_name)
                polygons = shape['points']    
                for m in range(len(polygons)):
                    for n in range(len(polygons[m])):
                          file_handle.write(str(polygons[m][n]))
                          file_handle.write(",")                   
                    file_handle.write("\n")               
    file_handle.close()

shapes_to_label("C:/D/OCR/OCRdata/","C:/D/OCR/OCRdata/result.txt")

改代码实现了从json中提取标签信息和标注坐标信息,读者可根据自己的实际情况进行改写。

你可能感兴趣的:(解析json文件,从json文件中提取信息)