数据集

# 删除无关的XML文件和jpg文件
#所有的类型
# 需要识别的类型包括 bicycle,bus,car,person
import os
import re
import shutil
items=['aeroplane','bird','boat','bottle','cat','chair','cow','diningtable','dog','horse','motorbike','pottedplant','sheep','sofa','train','tvmonitor']
years=['VOC2007','VOC2012']

for item in items:
    pattern=r'[\s\S]*<name>'+item+'</name>[\s\S]*'
    for year in years:
    #     imagedir=os.listdir('./VOCdevkit/'+year+'/JPEGImages')
        xmldirs=os.listdir('./VOCdevkit/'+year+'/Annotations')
        for xmldir in xmldirs:
            f=open('./VOCdevkit/'+year+'/Annotations/'+xmldir)
            xmlhasperson=False
            lines=f.readlines()
            for line in lines:
                if re.match(pattern, line,flags=0):
                    xmlhasperson=True
            f.close()
            if xmlhasperson:
                os.remove('./VOCdevkit/'+year+'/Annotations/'+xmldir)
                os.remove('./VOCdevkit/'+year+'/JPEGImages/'+xmldir[:-4]+'.jpg')

    #             person_list.append(xmldir[:-4])
    #             shutil.copyfile('./VOCdevkit/'+year+'/Annotations/'+xmldir,'./result/VOCdevkit/'+year+'/Annotations/'+xmldir) 
    #             shutil.copyfile('./VOCdevkit/'+year+'/JPEGImages/'+xmldir[:-4]+'.jpg','./result/VOCdevkit/'+year+'/JPEGImages/'+xmldir[:-4]+'.jpg') 
            
        

 

posted @ 2017-04-27 19:06  zhoulixue  阅读(250)  评论(0编辑  收藏  举报