错1.xml文件里的中文标签在json文件里显示乱码
解决方案:ensure_ascii默认为True,展示ascii字符,需要修改为False,就可以展示中文
json.dump这行加上 ensure_ascii=False
json.dump(json_str, f, indent=2,ensure_ascii=False)
错2:labelme打开含有json文件报错:’utf-8‘ codec cant decode byte 0xb0 in position 80:invalid start byte
错因:文件里含有中文,需要设置编码格式为utf-8才可以正确打开
解决方案:with open这行加入encoding='utf-8'
with open(os.path.join(args.save_dir, label_name + '.json'), 'w',encoding='utf-8')
总结:
json文件能保存中文标签及含中文的imgpath,labelme能正确打开如前所述的json文件的完整保存代码:
with open(os.path.join(args.save_dir, label_name + '.json'), 'w',encoding='utf-8') as f:
json.dump(json_str, f, indent=2,ensure_ascii=False)