广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python中的txt文件怎么转换为XML
  • 698
分享到

python中的txt文件怎么转换为XML

2023-07-04 19:07:45 698人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍了python中的txt文件怎么转换为XML的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python中的txt文件怎么转换为XML文章都会有所收获,下面我们一起来看看吧。txt文件转换为XML

这篇文章主要介绍了python中的txt文件怎么转换为XML的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python中的txt文件怎么转换为XML文章都会有所收获,下面我们一起来看看吧。

txt文件转换为XML

很多目标检测的模型都是默认需要VOC的文件输入格式

手上数据label是txt文件。

为了避免不必要的bug,还是选择转换下格式

将数据按VOC形式放置

python中的txt文件怎么转换为XML

文件夹内容
Annotations存放生成的XML文件
JPEGImagesJPG图片
ImageSets标明训练集测试集的txt文件
Labelsstxt格式的Label文件
# -*- coding: utf-8 -*-from xml.dom.minidom import Documentimport osimport os.pathfrom PIL import Imageimport importlibimport sysimportlib.reload(sys)xml_path = "Annotations\\"img_path = "JPEGImages\\"ann_path = "Labelss\\"if not os.path.exists(xml_path):    os.mkdir(xml_path)def writeXml(tmp, imgname, w, h, objbud, wxml):    doc = Document()    # owner    annotation = doc.createElement('annotation')    doc.appendChild(annotation)    # owner    folder = doc.createElement('folder')    annotation.appendChild(folder)    folder_txt = doc.createTextnode("VOC2007")    folder.appendChild(folder_txt)    filename = doc.createElement('filename')    annotation.appendChild(filename)    filename_txt = doc.createTextNode(imgname)    filename.appendChild(filename_txt)    # ones#    source = doc.createElement('source')    annotation.appendChild(source)    database = doc.createElement('database')    source.appendChild(database)    database_txt = doc.createTextNode("The VOC2007 Database")    database.appendChild(database_txt)    annotation_new = doc.createElement('annotation')    source.appendChild(annotation_new)    annotation_new_txt = doc.createTextNode("PASCAL VOC2007 ")    annotation_new.appendChild(annotation_new_txt)    image = doc.createElement('image')    source.appendChild(image)    image_txt = doc.createTextNode("flickr")    image.appendChild(image_txt)    # onee#    # twos#    size = doc.createElement('size')    annotation.appendChild(size)    width = doc.createElement('width')    size.appendChild(width)    width_txt = doc.createTextNode(str(w))    width.appendChild(width_txt)    height = doc.createElement('height')    size.appendChild(height)    height_txt = doc.createTextNode(str(h))    height.appendChild(height_txt)    depth = doc.createElement('depth')    size.appendChild(depth)    depth_txt = doc.createTextNode("3")    depth.appendChild(depth_txt)    # twoe#    segmented = doc.createElement('segmented')    annotation.appendChild(segmented)    segmented_txt = doc.createTextNode("0")    segmented.appendChild(segmented_txt)    # threes#    object_new = doc.createElement("object")    annotation.appendChild(object_new)    name = doc.createElement('name')    object_new.appendChild(name)    name_txt = doc.createTextNode('cancer')    name.appendChild(name_txt)    pose = doc.createElement('pose')    object_new.appendChild(pose)    pose_txt = doc.createTextNode("Unspecified")    pose.appendChild(pose_txt)    truncated = doc.createElement('truncated')    object_new.appendChild(truncated)    truncated_txt = doc.createTextNode("0")    truncated.appendChild(truncated_txt)    difficult = doc.createElement('difficult')    object_new.appendChild(difficult)    difficult_txt = doc.createTextNode("0")    difficult.appendChild(difficult_txt)    # threes-1#    bndbox = doc.createElement('bndbox')    object_new.appendChild(bndbox)    xmin = doc.createElement('xmin')    bndbox.appendChild(xmin)        #objbud存放[类别,xmin,ymin,xmax,ymax]    xmin_txt = doc.createTextNode(objbud[1])    xmin.appendChild(xmin_txt)    ymin = doc.createElement('ymin')    bndbox.appendChild(ymin)    ymin_txt = doc.createTextNode(objbud[2])    ymin.appendChild(ymin_txt)    xmax = doc.createElement('xmax')    bndbox.appendChild(xmax)    xmax_txt = doc.createTextNode(objbud[3])    xmax.appendChild(xmax_txt)    ymax = doc.createElement('ymax')    bndbox.appendChild(ymax)    ymax_txt = doc.createTextNode(objbud[4])    ymax.appendChild(ymax_txt)    # threee-1#    # threee#    tempfile = tmp + "test.xml"    with open(tempfile, "wb") as f:        f.write(doc.toprettyxml(indent="\t", newl="\n", encoding="utf-8"))    rewrite = open(tempfile, "r")    lines = rewrite.read().split('\n')    newlines = lines[1:len(lines) - 1]    fw = open(wxml, "w")    for i in range(0, len(newlines)):        fw.write(newlines[i] + '\n')    fw.close()    rewrite.close()    os.remove(tempfile)    returnfor files in os.walk('E:\ssd_PyTorch_cancer\data\cancer_or_not\Labels'):    print(files)    temp = "/temp/"    if not os.path.exists(temp):        os.mkdir(temp)    for file in files[2]:        print(file + "-->start!")        img_name = os.path.splitext(file)[0] + '.jpg'        fileimgpath = img_path + img_name        im = Image.open(fileimgpath)        width = int(im.size[0])        height = int(im.size[1])        filelabel = open(ann_path + file, "r")        lines = filelabel.read().split(' ')        obj = lines[:len(lines)]        filename = xml_path + os.path.splitext(file)[0] + '.xml'        writeXml(temp, img_name, width, height, obj, filename)    os.rmdir(temp)

不过代码只使用于每个label文件只有一个标注框,可在生成bndbox节点处加入循环

关于“python中的txt文件怎么转换为XML”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“python中的txt文件怎么转换为XML”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网Python频道。

--结束END--

本文标题: python中的txt文件怎么转换为XML

本文链接: https://www.lsjlt.com/news/347038.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python中的txt文件怎么转换为XML
    这篇文章主要介绍了python中的txt文件怎么转换为XML的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python中的txt文件怎么转换为XML文章都会有所收获,下面我们一起来看看吧。txt文件转换为XML...
    99+
    2023-07-04
  • Word2016文件怎么转换为txt文件
    要将Word 2016文件转换为txt文件,可以按照以下步骤操作:1. 打开Word 2016文件。2. 在菜单栏上选择“文件”选项...
    99+
    2023-09-15
    Word
  • php怎么将xml文件转换为html
    本篇内容主要讲解“php怎么将xml文件转换为html”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php怎么将xml文件转换为html”吧!test.xml:...
    99+
    2022-10-19
  • 解决python将xml格式文件转换成txt文件的问题(xml.etree方法)
    概述 先来介绍一下xml格式的文件,从数据分析的角度去看xml格式的数据集,具有以下的优点开放性(能在任何平台上读取和处理数据,允许通过一些网络协议交换xml数据)、简单性(纯文本,...
    99+
    2022-11-12
  • Python中怎么对XML文件的编码进行转换
    1. 在 Python 中 XML 文件的编码问题1.Python 使用的xml.etree.ElementTree库只支持解析和生成标准的UTF-8格式的编码2.常见GBK或GB2312等中文编码的 XML 文件,用以在老旧系统中保证 X...
    99+
    2023-05-21
    Python xml
  • Python怎么读写txt文件和转换csv文件与pandas条件
    这篇文章主要介绍“Python怎么读写txt文件和转换csv文件与pandas条件”,在日常操作中,相信很多人在Python怎么读写txt文件和转换csv文件与pandas条件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希...
    99+
    2023-06-02
  • PHP怎么将XML文档转换为数组
    在PHP开发过程中,XML处理是非常常见的操作,而PHP提供了很多关于XML处理的函数和类库。其中,将XML文档转换为PHP数组的功能是一个非常重要的操作,因为它能够方便地将XML数据用于后续的操作和逻辑分析。本文将讨论PHP中用于将XML...
    99+
    2023-05-14
  • Python中对XML文件的编码转换问题
    目录1. 在 Python 中 XML 文件的编码问题2. 处理 Python XML 文件的思路3. 实际过程中遇到的问题4. 最后使用的代码1. 在 Python 中 XML 文...
    99+
    2023-03-21
    Python XML 文件编码转换 Python XML 转换
  • 怎么用python把json文件转换为csv文件
    本篇内容主要讲解“怎么用python把json文件转换为csv文件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用python把json文件转换为csv文件”吧!了解json整体格式这里有一...
    99+
    2023-06-14
  • python二进制文件怎么转换为文本
    要将二进制文件转换为文本文件,可以使用Python中的`open()`函数以二进制模式打开二进制文件,然后将其读取为字节字符串,最后...
    99+
    2023-09-25
    python
  • Python怎么将xml格式转换为json格式
    本篇内容介绍了“Python怎么将xml格式转换为json格式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在Python编程中,经常遇到x...
    99+
    2023-06-02
  • php中怎么怎么将数组转换为xml
    这篇文章给大家介绍php中怎么怎么将数组转换为xml,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。php将数组转为xml的方法:首先创建一个PHP示例文件;然后通过“function data_to_xml($data...
    99+
    2023-06-20
  • labelimg标注的VOC格式标签xml文件和yolo格式标签txt文件相互转换
    目录 1 labelimg标注VOC格式和yolo格式介绍 1.1 voc格式 1.2 yolo数据格式介绍 2 voc格式数据和yolo格式数据相互转换 2.1 voc转yolo代码 2.2 yolo转voc格式代码  1 label...
    99+
    2023-09-09
    深度学习 python list
  • php数组怎么转换为xml的形式
    这篇文章将为大家详细讲解有关php数组怎么转换为xml的形式,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。PHP开发环境搭建工具有哪些一、phpStudy,是一个新手入门最常用的开发环境。二、WampSe...
    99+
    2023-06-14
  • php怎么读取txt文件并将其转为数组
    PHP是非常灵活的编程语言,它可以读取和处理各种不同类型的文件。当我们需要读取一个文本文件并将其转换为数组时,使用PHP是非常方便的。在本文中,我们将讨论如何使用PHP读取文本文件并将其转换为数组。我们将从以下几个方面入手:打开文本文件读取...
    99+
    2023-05-14
    php php文件目录
  • 怎么将xdf文件转换为word文档
    这篇文章将为大家详细讲解有关怎么将xdf文件转换为word文档,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。把xdf文件转为word文档的方法找到一篇XDF文档,并使用稻壳阅读器打开打开xd...
    99+
    2023-06-14
  • ubuntu20.04中vdi格式怎么转换为mdk文件?
    最近在ubuntu下的vitualbox中创建了虚拟机,虚拟硬盘使用默认的vdi格式,但是现在安装了vmware又不想再重新创建虚拟机安装系统,所以就像把vdi格式文件直接转换为vmd给vmware中使用,下面我们就来看看详细...
    99+
    2022-05-27
    ubuntu20.04下 vdi转为vmdk
  • python中怎么重命名TXT文件
    使用python重命名TXT文件的方法:1.新建python项目;2.导入os模块;3.使用open()函数打开文件,并创建file对象;4.通过read()方法获取文件内容;5.使用rename()方法重命名;具体步骤如下:首先,打开py...
    99+
    2022-10-16
  • Python怎么批量将csv文件转化成xml文件
    这篇文章主要介绍了Python怎么批量将csv文件转化成xml文件,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。python主要应用领域有哪些1、云计算,典型应用OpenSt...
    99+
    2023-06-15
  • Python中怎么将Office文件转为PDF
    这篇文章将为大家详细讲解有关Python中怎么将Office文件转为PDF,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。安装 win32com在实战之前,需要安装 Python 的 win3...
    99+
    2023-06-16
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作