处理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格式,实现可视化

  1. import pandas as pd
  2. import csv
  3. label=open(‘label.idl‘,‘r‘)
  4. label_list=label.readlines()
  5. #fo = open("foo.txt", "wb")
  6. output_file =‘./foo.txt‘
  7. output = open(output_file,‘wb‘)
  8. writer = csv.writer(output)
  9. temp=[]#pre define tuple or list is ok
  10. for content in label_list:
  11. obj=pd.read_json(content,orient=‘index‘)
  12. (row,col)=obj.shape
  13. for i in range(col):
  14. 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]]
  15. writer.writerow(temp)
  16. # writer.writerow(obj)
  17. # writer.writerow([obj.index,obj[i][0]])
  18. # writer.writerow(obj[i][0])
  19. # output.writelines(str(obj[i]))
  20. # output.write(str(obj[i]))
  21. # fo.write(str(obj[1][0][0]))
  22. # fo.write(str(obj[1][0][0]);
  23. #
  24. # obj[1][0][0]
  25. # obj[1][0][1]
  26. # obj[1][0][2]
  27. # obj[1][0][3]
  28. # obj[1][0][4]
  29. # i++
  30. #obj[]
  31. #print obj[0][]
  32. #(obj[0].to_str()).split(‘,‘)[4]
  33. output.close()
  34. label.close()



以上是关于处理idl文件的主要内容,如果未能解决你的问题,请参考以下文章

处理idl文件

怎么用IDL处理FITS文件

处理 IDL 序列返回类型的内存

python常用代码片段总结

IDL 到类型库

IDL简介