一、包
采用OpenCv读取图片信息。
import json
import numpy as np
import matplotlib.pyplot as plt
import cv2
二、对于读取到的JSON数据信息的处理
将输入的JSON信息用np读出top,height,left,width,label这几个信息。返回一个拥有所有信息的arr。
def parse_json(d):
arr = np.array([
d['top'], d['height'], d['left'], d['width'], d['label']
])
arr = arr.astype(int)
return arr
三、执行过程
读取JSON数据,用OpenCv读取图片,将获得图片的JSON信息保存在arr里。
train_json = json.load(open('mchar_train.json'))
img = cv2.imread('mchar_train/mchar_train/000001.png')
arr = parse_json(train_json['000001.png'])
接下来进行可视化处理
plt.figure(figsize=(10, 10))
plt.subplot(1, arr.shape[1]+1, 1)
plt.imshow(img)
plt.xticks([]); plt.yticks([])
for idx in range(arr.shape[1]):
plt.subplot(1, arr.shape[1]+1, idx+2)
plt.imshow(img[arr[0, idx]:arr[0, idx]+arr[1, idx],arr[2, idx]:arr[2, idx]+arr[3, idx]])
plt.title(arr[4, idx])
plt.xticks([]); plt.yticks([])
plt.show()