# train 与 test 的比例 traintest_percent = 0.8 # train 与 val 的比例 trainval_percent = 0.4 ###----------------------------------------------------4、主体程序----------------------------------------------------### print('Start Program...')
def main(): print('Start Main')
# 获取数据 for xmlfile in os.listdir(xmlpath): tree = ET.parse(os.path.join(xmlpath, xmlfile)) root = tree.getroot()
filename = root.find('filename').text filename = os.path.splitext(filename)[0] for obj in root.iter('object'): classname = str(obj.find('name').text) if classes.get(classname) is None: classes[classname] = [] if filename not in classes[classname]: classes[classname].append(filename)
for key in classes: leng = len(classes[key]) for i in range(leng): tv = int(leng * traintest_percent) tr = int(tv * trainval_percent) name = classes[key][i] if i < tv: ftrainvaltxt.write(name + '\n') if i < tr: ftraintxt.write(name + '\n') else: fvaltxt.write(name + '\n') else: ftesttxt.write(name + '\n')
print(classes.keys())
if __name__ == '__main__': main() print('Success ...')