直接贴代码了,封装为了函数,直接调用即可。其中有几个点需要注意。
1、bndbox下面有4个子对象,因此不能直接使用firstChild来找到内容,需要从该对象里面继续寻找标签为xmin等这样的对象,注意要加[0]才正确,有问题的可以直接调试,然后看变量的结构,根据变量的结构来调用某一对象。
2、将空格' '替换为'_',方便命名。但是使用str.replace(' ', '_')不会直接改变str的内容,返回的字符串是改变后的,因此需要变量保存。
import xml.dom.minidom as xmldom
def get_bndboxfromxml(imageNum, xmlfilebasepath):# 读取xml文件bndbox = [0, 0, 0, 0]xmlfilepath = xmlfilebasepath + "\%06d" % imageNum+'.xml'# print(xmlfilepath)domobj = xmldom.parse(xmlfilepath)elementobj = domobj.documentElementsub_element_obj = elementobj.getElementsByTagName('bndbox')if sub_element_obj is not None:bndbox[0] = int(sub_element_obj[0].getElementsByTagName('xmin')[0].firstChild.data)bndbox[1] = int(sub_element_obj[0].getElementsByTagName('ymin')[0].firstChild.data)bndbox[2] = int(sub_element_obj[0].getElementsByTagName('xmax')[0].firstChild.data)bndbox[3] = int(sub_element_obj[0].getElementsByTagName('ymax')[0].firstChild.data)return bndboxdef get_bndboxnamefromxml(imageNum, xmlfilebasepath):bndbox = [0, 0, 0, 0]xmlfilepath = xmlfilebasepath + "\%06d" % imageNum + '.xml'domobj = xmldom.parse(xmlfilepath)elementobj = domobj.documentElementsub_element_obj = elementobj.getElementsByTagName('name')name = sub_element_obj[0].firstChild.data.replace(' ', '_')return name

python读取XML中bndbox和object name的方法相关推荐

  1. python裁剪图片box并保存_python 截取XML中bndbox的坐标中的图像,另存为jpg的实例

    文件目录 Annotations中是XML文件. JPEGImages中是对应的JPG文件 XML文件 要截取bndbox坐标中的内容. python代码 # -*- coding: utf-8 -* ...

  2. python读取xml文件内容_python读取xml文件

    关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python来读取xml文件. 什么是xm ...

  3. python读取xml文件

    关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml 文件. 什么是 ...

  4. Python读取excel中的图片

    Python读取excel中的图片 一.读取excel文件 我们先来看看如何读取excel文件,读取excel文件的方式很多.这里选择openpyxl模块,安装语句如下: pip install op ...

  5. 已解决(Python读取xml文件报错)xmL.etree.ELementTree.ParseError:not well-formed (invalid token): Line

    已解决(Python读取xml文件报错)xmL.etree.ELementTree.ParseError:not well-formed (invalid token): Line 文章目录 报错信息 ...

  6. python读取xml文件信息_python读取xml文件方法解析

    关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python来读取xml文件. 什么是xm ...

  7. python读取xml文件内容_selenium-python读取XML文件

    首先这是我们要读取的XML文件 <?xml version="1.0" encoding="utf-8" ?> windows Chorm http ...

  8. 如何用python读取文本中指定行的内容

    如何用python读取文本中指定行的内容 搜索资料 我来答 分享 新浪微博 QQ空间 浏览 5284 次 查看全文 http://www.taodudu.cc/news/show-64036.ht ...

  9. python处理表格数据-python读取word 中指定位置的表格及表格数据

    1.Word文档如下: 2.代码 # -*- coding: UTF-8 -*- from docx import Document def readSpecTable(filename, specT ...

最新文章

  1. ipython notebook主题背景颜色更改
  2. VC2019 使用GDI+ 显示PNG图片
  3. Vue 面试题 (全)
  4. linux双系统重装win7系统下载,Windows与Ubuntu双系统重装WIN7后修复Grub2
  5. PYTHON之路DAY3
  6. 修改ant design vue中的Icon图标颜色
  7. Single-page application
  8. LeetCode 101 对称二叉树的几种思路(Python实现)
  9. 5G 背面:物联网的变局!
  10. oracle聚合字符串,Oracle 聚合字符串
  11. winhex使用教程_[攻略] 无限视距——上帝视角教程
  12. VS201x+Qt5开发,中文乱码解决
  13. 数据分析——常见数据指标汇总
  14. 记解决win10报错“任务管理器已被管理员禁用”
  15. Kubernetes学习-K8S安装篇-Kubeadm安装高可用K8S集群
  16. 机器学习基础(四)——决策树与随机森林
  17. DHTMLXGantt in Flutter DHTMLXGantt
  18. 苏宁成立智能终端公司 并发布BiuOS及10款智能硬件
  19. 应对供应链紧张,Digi发布 XBee RR模块
  20. Linux十大顶级发行版本

热门文章

  1. docker中容器与宿主机之间的网络关系
  2. 过滤器模式(Filter Pattern)
  3. html编辑器 开发原理,在线所见即所得HTML编辑器的实现原理浅析
  4. mysql数据库在工控自动化应用_robotframework自动化系列:操作mysql数据库
  5. java attributes用法_C#中的Attributes的用法
  6. voms下的反射大师_晓星说数学:让数学家折服的艺术大师埃舍尔
  7. java spark 环境_在 IntelliJ IDEA 中配置 Spark(Java API) 运行环境
  8. linux基本命令示例_Linux mv命令用法和示例
  9. python日志记录_Python日志记录
  10. SQL Where子句