您的位置:首页 > 其它

将自己的数据制作成voc格式

2017-09-15 10:31 344 查看

VOCdevkit2007文件下只保存VOC2007,VOC2007下只保存Annotations ImageSets JPEGImages。

JPEGImages存放所有的图片数据(即训练测试验证的图片都在里面),注意图片名字不再是原本图片名字,而是000001这种6位编号,制作过程中需要将所有图片名字进行转换

Annotations存放所有图片的xml数据,名字同JPEGImages一样

ImageSets里存放train.txt val.txt trainval.txt test.txt,文件里面是图片的编号,trainval.txt是train和val的编号之和。这个时候需要打乱图片顺序,就可以从这一步实现

代码如下:

import random

image_index = []

for i in range(1,9213):
i = "%06d"%(i)
image_index.append(i)

random.shuffle(image_index)
for x in image_index:
print x

f1 = open('/home/bnrc/py-faster-rcnn/data/VOCdevkit2007/VOC2007/ImageSets/Main/train.txt','w')
f2 = open('/home/bnrc/py-faster-rcnn/data/VOCdevkit2007/VOC2007/ImageSets/Main/val.txt','w')
f3 = open('/home/bnrc/py-faster-rcnn/data/VOCdevkit2007/VOC2007/ImageSets/Main/trainval.txt','w')
f4 = open('/home/bnrc/py-faster-rcnn/data/VOCdevkit2007/VOC2007/ImageSets/Main/test.txt','w')

for i in range(6000):
f1.write(str(image_index[i])+'\n')
for i in range(6000,7000):
f2.write(str(image_index[i])+'\n')
for i in range(7000):
f3.write(str(image_index[i])+'\n')
for i in range(7000,9212):
f4.write(str(image_index[i])+'\n')

这个是python格式化输入,和c c++一样的格式化输入

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: