我的标注类别就两类,一个大车和小车,而且一张图上就一个大车和7个小车. json格式如下:
{"objects":[{"label":"smallCar","rect":[110.0,356.0,86,15]},{"label":"smallCar","rect":[112.0,310.5,86,19]},{"label":"smallCar","rect":[110.5,267.5,47,20]},{"label":"smallCar","rect":[111.0,227.5,153,15]},{"label":"smallCar","rect":[111.0,183.5,94,18]},{"label":"smallCar","rect":[111.0,141.0,63,19]},{"label":"smallCar","rect":[109.0,98.0,79,19]},{"label":"bigCar","rect":[12.5,54.0,78,361]}],"rotate":0}
我仔细一看,其实就是字典、列表的组合,最外层是字典,两个objects和rotate,obiects对应一个列表,其中列表里面的元素都是字典.
检查的代码如下:
import json
import os
rootdir = '/media/d_2/2018biaozhushuju/20180823shenzhendianzibaodan/new_new/selete/json'
list = os.listdir(rootdir)
for val in list:
path = os.path.join(rootdir,val)
filer = open(path)
MyJson = json.load(filer)
L = MyJson['objects']
num_small = 0
num_big = 0
b_remove = False
for val in L:
if 'smallCar' == val['label']:
num_small += 1
elif 'bigCar' == val['label']:
num_big += 1
else :
b_remove = True
if(7 != num_small or 1 !=num_big or True == b_remove):
print path