python生成voc xml文件

from lxml import etree

class GEN_Annotations:

def __init__(self, filename):

self.root = etree.Element("annotation")

child1 = etree.SubElement(self.root, "folder")

child1.text = "VOC2007"

child2 = etree.SubElement(self.root, "filename")

child2.text = filename

child3 = etree.SubElement(self.root, "source")

child4 = etree.SubElement(child3, "annotation")

child4.text = "PASCAL VOC2007"

child5 = etree.SubElement(child3, "database")

child5.text = "Unknown"

child6 = etree.SubElement(child3, "image")

child6.text = "flickr"

child7 = etree.SubElement(child3, "flickrid")

child7.text = "35435"

def set_size(self,witdh,height,channel):

size = etree.SubElement(self.root, "size")

widthn = etree.SubElement(size, "width")

widthn.text = str(witdh)

heightn = etree.SubElement(size, "height")

heightn.text = str(height)

channeln = etree.SubElement(size, "depth")

channeln.text = str(channel)

def savefile(self,filename):

tree = etree.ElementTree(self.root)

tree.write(filename, pretty_print=True, xml_declaration=False, encoding='utf-8')

def add_pic_attr(self,label,xmin,ymin,xmax,ymax):

object = etree.SubElement(self.root, "object")

namen = etree.SubElement(object, "name")

namen.text = label

bndbox = etree.SubElement(object, "bndbox")

xminn = etree.SubElement(bndbox, "xmin")

xminn.text = str(xmin)

yminn = etree.SubElement(bndbox, "ymin")

yminn.text = str(ymin)

xmaxn = etree.SubElement(bndbox, "xmax")

xmaxn.text = str(xmax)

ymaxn = etree.SubElement(bndbox, "ymax")

ymaxn.text = str(ymax)

if __name__ == '__main__':

filename="000001.jpg"

anno= GEN_Annotations(filename)

anno.set_size(1280,720,3)

for i in range(3):

xmin=i+1

ymin=i+10

xmax=i+100

ymax=i+100

anno.add_pic_attr("mouse",xmin,ymin,xmax,ymax)

anno.savefile("00001.xml")

python读取voc xml文件

try:

import xml.etree.cElementTree as ET

except ImportError:

import xml.etree.ElementTree as ET

def GetAnnotBoxLoc(AnotPath):

tree = ET.ElementTree(file=AnotPath)

root = tree.getroot()

ObjectSet=root.findall('object')

ObjBndBoxSet={}

for Object in ObjectSet:

ObjName=Object.find('name').text

BndBox=Object.find('bndbox')

x1 = int(BndBox.find('xmin').text)

y1 = int(BndBox.find('ymin').text)

x2 = int(BndBox.find('xmax').text)

y2 = int(BndBox.find('ymax').text)

python读xml文件生成头文件_python如何读取生成voc xml格式标注信息相关推荐

  1. gsoap 学习 1-自己定义接口生成头文件

    接口头文件的格式在向导中没有看到明确的说明性的内容,但通过看开发包中示例程序中头文件定义和通过wsdl生成的头文件的内容,可以发现,头文件中都会出现以下几行信息  //gsoap ns service ...

  2. IDEA下JNI开发快速生成头文件方法

    JNI生成头文件的命令是: javah -jni -classpath (搜寻类目录) -d (输出目录) (类名) 步骤: 打开File->Setting->Tools->Ente ...

  3. idea中 mybatis 的 mapper.xml 新建没有 头文件

    idea中 mybatis 的 mapper.xml 新建没有 头文件 解决步骤: 1.直接 settings 2.直接 选择 MybatisMapper 添加: <?xml version=& ...

  4. si446使用记录(二):使用WDS3生成头文件

    目录 一.概述 二.使用默认配置生成头文件 三.逐项修改配置 3.1 根据注释修改 3.1.1 速率.带宽.频偏 3.1.2 基频 -- 设置868M 3.1.3 使能中断 3.2 具体指令修改 3. ...

  5. C++库文件和头文件编写教程

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 「本文介绍了在Linux系统下生成库文件,以及编写头文件来使用该库 ...

  6. html 头文件含义,头文件和源文件的区别是什么?

    头文件和源文件的区别 头文件和源文件在本质上没有任何区别. 只不过一般:后缀为 .h 的文件是头文件,内含函数声明.宏定义.结构体定义等内容.后缀为 .c 的文件是源文件,内含函数实现,变量定义等内容 ...

  7. #include sys/xxx.h头文件 UNIX头文件

    原文地址:#include sys/xxx.h头文件 UNIX头文件 作者:embededgood #include sys/xxx.h是Linux系统中的系统头文件 应用程序的头文件在/usr/in ...

  8. 编写一个头文件,头文件中定义一个宏cube(x)用于求一个数的平方

    <程序设计基础实训指导教程-c语言> ISBN 978-7-03-032846-5 p145 7.1.2 上级实训内容 [实现内容17]编写一个头文件,头文件中定义一个宏cube(x)用于 ...

  9. VC 6.0中添加库文件和头文件

    VC 6.0中添加库文件和头文件 分类: VC/VS 加头文件包含 VC6.0中: VC6.0默认include包含路径:Tools>Options>Directories>Incl ...

  10. linux里c库和gnu c库,Linux下的C的库文件和头文件有什么区别-

    Linux下的C的库文件和头文件有什么区别- (2012-04-10 01:16:57) 标签: linux 杂谈 Linux下的C的库文件和头文件有什么区别?刚刚接触 这里有点没搞清楚 如果按我的理 ...

最新文章

  1. 2202年了,AI还是不如猫!图灵奖得主Yann LeCun:3大挑战依然无解
  2. Javaweb环境配置,使用2014MyEclipse全过程详解!搭建JDK环境,Tomcat环境!破解2014MyEclipse。
  3. 可穿戴的脑机接口设备将运动意念转化为行动
  4. 修改xampp的mysql默认密码
  5. 算法学习:后缀自动机
  6. EasyUI DataGrid 合并单元格
  7. MySQL存储过程+游标+触发器
  8. stm32编码器正反转计数程序_光电编码器接线图分析
  9. 论文浅尝 | SPARQL 语言的 ASK 查询表达性研究进展
  10. 智能优化算法:细菌觅食优化算法 - 附代码
  11. Java数据结构与算法——图
  12. YUV格式与RGB格式
  13. WebSphere安装配置文档
  14. U盘插入电脑有声音,无盘符,只显示安全删除硬件并弹出媒体
  15. 递归走楼梯or斐波那契数列
  16. Mathlab编程-微积分在Matlab中的解法
  17. Unity Camera Filed Of View
  18. 6号团队-团队任务5:项目总结会
  19. 55岁李连杰近照疯传:人生下半场,拼的是健康
  20. matlab 计算指北角,运筹学及MATlab编程.doc

热门文章

  1. 赤手空拳 下Flash
  2. python反编译-以2048小游戏为例
  3. 时间序列 R 10 其他进阶预测方法 Advanced forecasting methods
  4. Dockerfile精编细作(三)CMD与ENTRYPOINT区别
  5. uDig及GeoServer发布操作文档
  6. 社群运营和用户运营的岗位区别
  7. 软件测试过程五个步骤_选择新软件技术的5个步骤
  8. ElasticSearch详细教程-基础加实战
  9. educoder-警务大数据之精准布控
  10. 微信开发者工具下载与简单使用