Nekshay commited on
Commit
06b3cfb
·
verified ·
1 Parent(s): accde48

Update convert_to_pascalVOC.py

Browse files
Files changed (1) hide show
  1. convert_to_pascalVOC.py +40 -0
convert_to_pascalVOC.py CHANGED
@@ -31,3 +31,43 @@ input_xml_file = 'path/to/your/input_annotation.xml'
31
  output_xml_file = 'path/to/your/output_annotation.xml'
32
 
33
  convert_bbox_to_int(input_xml_file, output_xml_file)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
  output_xml_file = 'path/to/your/output_annotation.xml'
32
 
33
  convert_bbox_to_int(input_xml_file, output_xml_file)
34
+
35
+ #######################################################################################################
36
+
37
+ ## for rename labels
38
+ import os
39
+ import xml.etree.ElementTree as ET
40
+
41
+ # Path to the folder containing XML annotation files
42
+ annotations_folder = '/path/to/annotations_folder'
43
+
44
+ # Dictionary for renaming labels: {old_label: new_label}
45
+ label_mapping = {
46
+ 'old_label_1': 'new_label_1',
47
+ 'old_label_2': 'new_label_2',
48
+ # Add more label mappings as needed
49
+ }
50
+
51
+ # Function to rename labels in the XML file
52
+ def rename_labels_in_xml(xml_file, label_mapping):
53
+ tree = ET.parse(xml_file)
54
+ root = tree.getroot()
55
+
56
+ # Iterate over each object in the XML file
57
+ for obj in root.findall('object'):
58
+ label = obj.find('name').text
59
+ # If label matches any in the label_mapping dictionary, rename it
60
+ if label in label_mapping:
61
+ print(f'Renaming label "{label}" to "{label_mapping[label]}" in {xml_file}')
62
+ obj.find('name').text = label_mapping[label]
63
+
64
+ # Write the updated XML back to file
65
+ tree.write(xml_file)
66
+
67
+ # Loop through all XML files in the annotations folder
68
+ for filename in os.listdir(annotations_folder):
69
+ if filename.endswith('.xml'):
70
+ xml_path = os.path.join(annotations_folder, filename)
71
+ rename_labels_in_xml(xml_path, label_mapping)
72
+
73
+ print('Label renaming completed.')