简单将xml数据转换为txt数据
简单将xml数据转换为txt数据(仅当记录)
import xml.etree.ElementTree as ET
import pickle
import os
from os import listdir, getcwd
from os.path import joinsets=['train','trainval']classes = ["mono"]def convert(size, box):dw = 1./size[0]dh = 1./size[1]x = (box[0] + box[1])/2.0y = (box[2] + box[3])/2.0w = box[1] - box[0]h = box[3] - box[2]x = x*dww = w*dwy = y*dhh = h*dhreturn (x,y,w,h)def convert_annotation(image_id): # 转换这一张图片的坐标表示方式(格式),即读取xml文件的内容,计算后存放在txt文件中。in_file = open('annotation/%s'% image_id)image_id=image_id.split('.')[0]out_file = open('labels/%s.txt'%image_id, 'w')tree=ET.parse(in_file)root = tree.getroot()size = root.find('size')w = int(size.find('width').text)h = int(size.find('height').text)for obj in root.iter('object'):difficult = obj.find('difficult').textcls = obj.find('name').textif cls not in classes or int(difficult) == 1:continuecls_id = classes.index(cls)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 = convert((w,h), b)out_file.write(str(cls_id) + " " + " ".join([str(a) for a in bb]) + '\n')for image_set in sets:if not os.path.exists('labels/'):os.makedirs('labels/') # 新建一个 label 文件夹,用于存放yolo格式的标签文件:000001.txtimage_ids = open('%s.txt' % image_set).read().strip().split()# 读取txt文件中 存放的图片的 id:000001for image_id in image_ids:image_id=image_id.split('/')[-1]image_id=image_id.split('.')[0]image_id=image_id+".xml"convert_annotation(image_id) # 转换这一张图片的坐标表示方式(格式)
简单将xml数据转换为txt数据相关推荐
- 数据标签处理:python将xml文件转换为txt,csv格式
数据标签处理:python将xml文件转换为txt,csv格式 这里的标注文件为点标注文件 每次要用数据处理脚本的时候都忘记放哪里了,然后重写了一遍又一遍,虽然代码不长,但是每次都有重新写还是很麻烦, ...
- 把Sql数据转换为业务数据的几种方法
ORM系统必须把数据库中的数据转换为业务数据,转换的方法大致有3种,本文就试图对它们做一些简单分析. 1.属性反射.就是通过反射,获取业务实体类的各个属性,然后再设置这些属性的值.这个方法最简单.最稳 ...
- xml格式转换为txt格式
xml格式转换为txt格式 本文借用yolo中的程序进行修改,链接如下: https://pjreddie.com/media/files/voc_label.py 修改后程序如下: import x ...
- Python 将关系对数据转换为图数据 / 邻接矩阵
1. 前言 在深度学习任务,例如推荐系统中,将关系转换为图表示,即邻接矩阵是常用的操作. 通常的做法是先将关系对数据转换为图数据,然后生成该图的邻接矩阵,再存储为稀疏矩阵.但这种方法不适用于大型矩阵的 ...
- R语言Box-Cox变换实战(Box-Cox Transformation):将非正态分布数据转换为正态分布数据、计算最佳λ、变换后构建模型
R语言Box-Cox变换实战(Box-Cox Transformation):将非正态分布数据转换为正态分布数据.计算最佳λ.变换后构建模型 目录
- arcmap shp导出cad无反应_如何使用ArcMap将Excel数据转换为shp数据
1. 概述 对ArcMap而言,除了shapefile等数据源,还可以将包含地理位置的表格数据以 XY 坐标的形式添加到地图中,比如Excel格式的数据,如果包含有坐标数据在里面,就可以通过导入XY数 ...
- 数字数据转换为字符数据_为什么替代数据对数字转换至关重要
数字数据转换为字符数据 边缘是数据的未来(Fringe is the future of data) Alternative data has been a buzzword among invest ...
- 字节数据转换为浮点数据
/*====================================字节数据转换为浮点数据输入数据:要转换的四字节数据在arr[]中顺序是从低(charData[0])到高(charData[ ...
- 用python将xml文件转换为txt文件_python代码xml转txt实例
为了训练深度学习模型,经常要整理大量的标注数据,需统一不同格式的标注数据,一般情况下习惯读取TXT格式的数据.但实际中经常遇到XML格式的标注数据,在此举例:1.读取XML标注数据:2.写入TXT文件 ...
- 24bit有符号数据转换为整形数据
24bit数据转换为int型 即3个字节, HH MM LL 当数据是正数时,直接转换为int: 当数据是负数时,需要先把当前数取反,再+1,得到的新数据再转换为int,最后加"-" ...
最新文章
- 麦克纳姆轮运动原理_【带字幕视频】麦克纳姆轮你了解多少?ESP32的WIFI信号,居然能覆盖10公里?...
- 我是如何把 Java 项目移植到 .NET 5.0 的
- 爬虫,关于 video 标签 src 带有blob:http的 一些想法
- 织梦文章批量更新软件
- Quartz.NET作业调度框架详解
- C++ 多态与虚函数面试题
- 创维E900V21E机顶盒刷机固件 解决:不用设置有线自动连网
- k3刷机 重置_斐讯K3刷LEDE固件成功刷机教程
- 教你将视频作为背景添加到另一段视频中
- Grads:绘制风流畅
- 双随机软件java_随机抽检|双随机一公开 1.0 正式版下载_太平洋下载中心
- 阿里 vs. 腾讯,谁的收购更有眼光?
- Ubuntu20.04安装gamit10.7
- smartbi和mysql_学不好报表分析?看看Smartbi报表工具的学习笔记吧!
- 香农公式说明了什么_香农定理到底有什么含义?能通俗地解释一下么?
- 苹果推送通知办事教程 Apple Pushnb
- 蜗牛—cocos2dx之初识
- chrome谷歌小恐龙作弊代码【无敌,快跑,高跳,一键满分】有需要的小伙伴快快看过来!
- 荣耀v40和荣耀v40pro的区别
- 人工智能细分领域受关注|人工智能|领域|智能