从xml读取gps数据获取经纬高


#!/usr/bin/python
# -*- coding: UTF-8 -*- from xml.dom.minidom import parse
import xml.dom.minidom """ 数据输入 xmlname 文件名字
nodename 要获取的路径 输入格式
<?xml version="1.0"?>
<opencv_storage>
<KfrmGPS_ type_id="opencv-matrix">
<rows>2508</rows>
<cols>3</cols>
<dt>d</dt>
<data>
3.4236497333300001e+01 1.0889943616700000e+02 400.
3.4236502333300002e+01 1.0889943933300000e+02 400.
3.4236507166700001e+01 1.0889944250000001e+02 400.
3.4236511999999998e+01 1.0889944566699999e+02 400.
</data>
</KfrmGPS_> <KfrmGPS_m_ type_id="opencv-matrix">
<rows>2508</rows>
<cols>3</cols>
<dt>d</dt>
<data>
3.4236724219391739e+01 1.0889944810627938e+02 3.9653005784470588e+02
3.4236728962259967e+01 1.0889945157710224e+02 3.9650777322053909e+02
3.4236731965099686e+01 1.0889945368682891e+02 3.9653498737327754e+02
3.4236738454649888e+01 1.0889945827032633e+02 3.9652323448006064e+02
</data>
</KfrmGPS_m_>
</opencv_storage> 输出 转化成flaost的列表 纬 经 高 """ def read_xml_getgps(xmlname,nodename): # 使用minidom解析器打开 XML 文档
DOMTree = xml.dom.minidom.parse(xmlname)
collection = DOMTree.documentElement KfrmGPS_ = collection.getElementsByTagName(nodename)
#for KfrmGPS_i in KfrmGPS_: KfrmGPS_i=KfrmGPS_[0]#可能有多个 gps_rows = KfrmGPS_i.getElementsByTagName('rows')[0]
gps_rows = gps_rows.childNodes[0].data
gps_cols = KfrmGPS_i.getElementsByTagName('cols')[0]
gps_cols = gps_cols.childNodes[0].data gps_data = KfrmGPS_i.getElementsByTagName('data')[0] gps_data_str=str(gps_data.childNodes[0].data)
#print("KfrmGPS_/data/内容",gps_data_str) alllines=gps_data_str.strip().split("\n")# 行的分割符号 两个空格
i=1 gps_list=[]
for lines_i in alllines:
line_ii=lines_i.strip().split(" ") # 行内部的珊瑚橘分割符号 一个空格
real_gps_lat = line_ii[0:1] # list--str
real_gps_lat="".join(real_gps_lat).strip() real_gps_lon = line_ii[1:2] # list--str
real_gps_lon="".join(real_gps_lon).strip()
real_gps_high = line_ii[2:3] # list--str
real_gps_high="".join(real_gps_high).strip() #print("字符串类型",i,real_gps_lon,real_gps_lat,real_gps_high) real_gps_lat=float(real_gps_lat)
real_gps_lon=float(real_gps_lon)
real_gps_high=float(real_gps_high)
#print("float类型",i,real_gps_lon,real_gps_lat,real_gps_high)
i=i+1 gps_i=[real_gps_lat,real_gps_lon,real_gps_high]
gps_list.append(gps_i) print("节点",nodename,"行数",gps_rows,"列数",gps_cols)
return gps_list if ( __name__ == "__main__"):
xmlpath="20230107142004075.xml" real_gps_list=read_xml_getgps(xmlpath,"KfrmGPS_")
slam_gps_list=read_xml_getgps(xmlpath,"KfrmGPS_m_")
从xml读取gps数据获取经纬高的更多相关文章
- xml 读取递归算法
xml 读取递归算法:
- paip.获取proxool的配置 xml读取通过jdk xml 初始化c3c0在代码中总结
paip.获取proxool的配置 xml读取通过jdk xml 初始化c3c0在代码中 xml读取通过jdk xml 初始化c3c0在代码中.. ... 作者Attilax 艾龙, EMAI ...
- Linq to XML 读取XML 备忘笔记
本文转载:http://www.cnblogs.com/infozero/archive/2010/07/13/1776383.html Linq to XML 读取XML 备忘笔记 最近一个项目中有 ...
- Xml读取异常--Invalid byte 1 of 1-byte UTF-8 sequence
xml读取异常Invalid byte 1 of 1-byte UTF-8 sequence org.dom4j.DocumentException: Invalid byte 1 of 1-byte ...
- C#基础笔记---浅谈XML读取以及简单的ORM实现
背景: 在开发ASP.NETMVC4 项目中,虽然web.config配置满足了大部分需求,不过对于某些特定业务,我们有时候需要添加新的配置文件来记录配置信息,那么XML文件配置无疑是我们选择的一个方 ...
- C#基础---浅谈XML读取以及简单的ORM实现
背景: 在开发ASP.NETMVC4 项目中,虽然web.config配置满足了大部分需求,不过对于某些特定业务,我们有时候需要添加新的配置文件来记录配置信息,那么XML文件配置无疑是我们选择的一个方 ...
- 【BUG】xml读取异常Invalid byte 1 of 1-byte UTF-8 sequence
来自http://blog.csdn.net/chenyanbo/article/details/6866941 xml读取异常Invalid byte 1 of 1-byte UTF-8 seque ...
- C#使用Linq To XML读取XML,Linq生成XML,Linq创建带属性或带节点XML
using System; using System.Linq; using System.Xml.Linq; namespace Sample2 { class Program { static v ...
- HALC:用于长读取错误纠正的高吞吐量算法
背景: 第三代PacBio SMRT长读取可以有效地解决第二代测序技术的读长问题,但包含大约15%的测序错误.已经设计了几种纠错算法以有效地将错误率降低到1%,但是它们丢弃了大量未校正的碱基,因此导致 ...
- winform,xml读取与写入
创建两个xml文件,一个 xml做为模板配置项,另一个做为临时接收数据. private static string localPath = System.Environment.CurrentDir ...
随机推荐
- kube-proxy
1 kube-proxy报错 "--random-fully" 解决: # yum install gcc make libnftnl-devel libmnl-devel aut ...
- tcpdump: error while loading shared libraries: libpcap.so.1: cannot open shared object file: No such file or directory
[root@inner ~]# tcpdump -i any -s 0 -w trunkm.pcaptcpdump: error while loading shared libraries: lib ...
- Python - Numpy 学习笔记
#python - Numpy learning import numpy as np #---Numpy学习笔记---(第四章)--- #切片,浅拷贝 a = np.arange(10) print ...
- 暴雪、迪士尼大佬用什么画画?RayLink远控软件助力解锁远程创作
CG绘画从业者,如原画师.插画师.漫画家.设计师等,一定对数位板\数位屏不陌生,数位板\数位屏是完成CG绘画作品的重要绘图工具之一. 从画画小白到数字绘画大神,从0基础插画培训班学生到国际知名游戏.动 ...
- windows2020 更换sid
cmd whoami /user 查看sid的值 点击运行sysprep程序.记得在"通用"前面打上勾 点击运行sysprep程序.记得在"通用"前面打上勾
- 织梦dedecms网站迁移搬家图文教程
织梦dedecms网站迁移搬家图文教程 2014-07-31 dedecms教程 文章介绍 织梦作为国内使用最多的程序之一,难免很多新手在接触dede时不知道怎么转移也就是搬家dede的程序,而且 ...
- JS学习-给Canvas上下文设置样式
给Canvas上下文设置样式 <canvas class="myCanvas" width="700" height="500"> ...
- Python3之并发(七)---线程同步队列(queue)
queue模块实现了多生产者,多消费者队列 queue模块的常用类和异常 queue.Queue(maxsize=0) 先进先出(FIFO)的队列, maxsize: 队列的大小(即队列的元素个数), ...
- C++ 读取文本, 读取( 单字符/ 一行/ 全部 )
C++ 读取文本 介绍三种读取方式: 逐字符读取(注意不是字节) 读取一行 读取全部 示例代码: #include <iostream> #include <string> # ...
- GOF23种设计模式是哪些
设计模式实践里面提供了许多经久不衰的解决方案和最佳方案.这里,GOF 设计模式主要分为三大类:创建模式.结构模式和行为模式.创建模式对于创建对象实例非常有用.结构模式通过处理类或对象的组合来作用于企业 ...