import xml.etree.ElementTree as ET
import os
box_path = r"C:\Users\Lenovo\Desktop\mbdata\VOCdevkit\VOC2012\Annotations"
box_pal_path = os.path.join(box_path, "Cell-Multi.533.xml")
tree = ET.parse(box_pal_path)
root = tree.getroot()
for obj in root.iter('object'):
clsname = obj.find('name').text
print(clsname)
xmlbox = obj.find('bndbox')
b = (float(xmlbox.find('xmin').text), float(xmlbox.find('xmax').text), float(xmlbox.find('ymin').text),
float(xmlbox.find('ymax').text))
bb = [b[0], b[2], b[1], b[3]]
print(bb)
该代码片段使用Python的xml.etree.ElementTree库解析位于特定路径的XML文件,特别是VOC2012数据集的Annotations文件。它遍历XML中的每个对象,提取类别名称(clsname)以及与对象相关的边界框坐标(bndbox),并将这些坐标转换为另一种格式(bb)。
2143

被折叠的 条评论
为什么被折叠?



