12345678910111213141516171819202122232425262728293031323334353637383940 |
- import os
- import glob
- import pandas as pd
- import xml.etree.ElementTree as ET
- def xml_to_csv(path):
- xml_list = []
- print(xml_list)
- for xml_file in glob.glob(path + '/*.xml'):
- tree = ET.parse(xml_file)
- root = tree.getroot()
- for member in root.findall('object'):
- value = (root.find('filename').text,
- int(root.find('size')[0].text),
- int(root.find('size')[1].text),
- member[0].text,
- int(member[4][0].text),
- int(member[4][1].text),
- int(member[4][2].text),
- int(member[4][3].text)
- )
- xml_list.append(value)
- column_name = ['filename', 'width', 'height', 'class', 'xmin', 'ymin', 'xmax', 'ymax']
- xml_df = pd.DataFrame(xml_list, columns=column_name)
- return xml_df
- def main():
- for directory in ['allpic']:
- print(directory)
- image_path = os.path.join(os.getcwd(), 'tfcoffebean/{}'.format(directory))
- xml_df = xml_to_csv(image_path)
- print(image_path)
- xml_df.to_csv('C:/Users/User/Desktop/tfcoffebean/xml_to_csv/{}_labels.csv'.format(directory), index=None)
- print('Successfully converted xml to csv.')
- main()
|