处理idl文件
Posted 活在当下
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了处理idl文件相关的知识,希望对你有一定的参考价值。
将如下格式的数据:
{“60091.jpg”: [[214.1664, 192.99996, 261.00032, 224.83332000000001, 1], [74.83328, 160.49988, 224.0, 267.4998, 1]]}
{“60092.jpg”: [[15.166656, 197.49996, 80.16640000000001, 233.49996000000002, 1], [52.250048, 215.49996, 85.49951999999999, 254.5002, 3]]}
{“60093.jpg”: []}
{“60094.jpg”: [[171.33312, 188.49996000000002, 243.8336, 240.66647999999998, 1]]}
{“60095.jpg”: []}
{“60096.jpg”: []}
{“60097.jpg”: []}
转换为
000002.jpg dog 44 28 132 121
000002.jpg cat 46 18 112 123
000003.jpg ggg 54 19 243 178
进而实用工具转换为xml格式,实现可视化
import pandas as pd
import csv
label=open(‘label.idl‘,‘r‘)
label_list=label.readlines()
#fo = open("foo.txt", "wb")
output_file =‘./foo.txt‘
output = open(output_file,‘wb‘)
writer = csv.writer(output)
temp=[]#pre define tuple or list is ok
for content in label_list:
obj=pd.read_json(content,orient=‘index‘)
(row,col)=obj.shape
for i in range(col):
temp=[obj.ix[0].name,obj.ix[0][i][4],obj.ix[0][i][0],obj.ix[0][i][1],obj.ix[0][i][2],obj.ix[0][i][3]]
writer.writerow(temp)
# writer.writerow(obj)
# writer.writerow([obj.index,obj[i][0]])
# writer.writerow(obj[i][0])
# output.writelines(str(obj[i]))
# output.write(str(obj[i]))
# fo.write(str(obj[1][0][0]))
# fo.write(str(obj[1][0][0]);
#
# obj[1][0][0]
# obj[1][0][1]
# obj[1][0][2]
# obj[1][0][3]
# obj[1][0][4]
# i++
#obj[]
#print obj[0][]
#(obj[0].to_str()).split(‘,‘)[4]
output.close()
label.close()
以上是关于处理idl文件的主要内容,如果未能解决你的问题,请参考以下文章