python 画3维轨迹图并进行比较的实例


Posted in Python onDecember 06, 2019

一. 数据的格式

首先我们需要x,y,z三个数据进行画图。从本实验用到的数据集KITTI 00.txt中举例:

1.000000e+00 9.043680e-12 2.326809e-11 5.551115e-17 9.043683e-12 1.000000e+00 2.392370e-10 3.330669e-16 2.326810e-11 2.392370e-10 9.999999e-01 -4.440892e-16

一组有12个数据,相当于T={R,t},R是3×3的矩阵,t是3×1的矩阵。我们需要的是t的数据。

有些groundtruth是8个数据,第一个是时间戳,在三个是x,y,z,后面四个是是四元数的数据。

代码如下:

# import necessary module
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
import numpy as np

# load data from file
# you can replace this using with open
data1 = np.loadtxt("./dataset/poses/00.txt")

first_2000 = data1[:, 3]
second_2000 = data1[:, 7]
third_2000 = data1[:, 11]
data2 = np.loadtxt("../temp/kittiseq00_imu.txt")
first_1000 = data2[:, 1]
second_1000 = data2[:, 2]
third_1000 = data2[:, 3]
# print to check data
#print first_2000
#print second_2000
#print third_2000

# new a figure and set it into 3d
fig = plt.figure()
ax = fig.gca(projection='3d')

# set figure information
ax.set_title("3D_Curve")
ax.set_xlabel("x")
ax.set_ylabel("y")
ax.set_zlabel("z")

# draw the figure, the color is r = read
figure1 = ax.plot(first_2000, second_2000, third_2000, c='r')
figure2 = ax.plot(first_1000, second_1000, third_1000, c='b')
plt.show()

效果图(电脑比较垃圾,后面的轨迹跟踪的时候提取的特征点太少):

python 画3维轨迹图并进行比较的实例

以上这篇python 画3维轨迹图并进行比较的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中快速进行多个字符替换的方法小结
Dec 15 Python
python通过elixir包操作mysql数据库实例代码
Jan 31 Python
Python 判断 有向图 是否有环的实例讲解
Feb 01 Python
Python3爬虫学习入门教程
Dec 11 Python
pandas 强制类型转换 df.astype实例
Apr 09 Python
Python字符串格式化f-string多种功能实现
May 07 Python
Python OrderedDict字典排序方法详解
May 21 Python
pyMySQL SQL语句传参问题,单个参数或多个参数说明
Jun 06 Python
完美解决TensorFlow和Keras大数据量内存溢出的问题
Jul 03 Python
Python基础之元类详解
Apr 29 Python
Python批量将csv文件转化成xml文件的实例
May 10 Python
基于Python实现将列表数据生成折线图
Mar 23 Python
解决pyshp UnicodeDecodeError的问题
Dec 06 #Python
python创建ArcGIS shape文件的实现
Dec 06 #Python
使用pyshp包进行shapefile文件修改的例子
Dec 06 #Python
利用pyshp包给shapefile文件添加字段的实例
Dec 06 #Python
详解Python在使用JSON时需要注意的编码问题
Dec 06 #Python
用python求一重积分和二重积分的例子
Dec 06 #Python
解决Numpy中sum函数求和结果维度的问题
Dec 06 #Python
You might like
建立文件交换功能的脚本(三)
2006/10/09 PHP
深入理解PHP中的global
2014/08/19 PHP
php打印一个边长为N的实心和空心菱型的方法
2015/03/02 PHP
基于PHP实现数据分页显示功能
2016/05/26 PHP
Laravel 实现在Blade模版中使用全局变量代替路径的例子
2019/10/22 PHP
jquer之ajaxQueue简单实现代码
2011/09/15 Javascript
jQuery中extend()和fn.extend()方法详解
2015/06/03 Javascript
深入浅析JavaScript函数前面的加号和叹号
2016/07/09 Javascript
关于Jquery中的事件绑定总结
2016/10/26 Javascript
AngularJS使用ng-class动态增减class样式的方法示例
2017/05/18 Javascript
详解Angular 开发环境搭建
2017/06/22 Javascript
React教程之Props验证的具体用法(Props Validation)
2017/09/04 Javascript
Angular实现的日程表功能【可添加及隐藏显示内容】
2017/12/27 Javascript
Vue中div contenteditable 的光标定位方法
2018/08/25 Javascript
js实现轮播图效果 纯js实现图片自动切换
2020/08/09 Javascript
vue中后端做Excel导出功能返回数据流前端的处理操作
2020/09/08 Javascript
Angular处理未可知异常错误的方法详解
2021/01/17 Javascript
python中range()与xrange()用法分析
2016/09/21 Python
利用python获取Ping结果示例代码
2017/07/06 Python
Django中login_required装饰器的深入介绍
2017/11/24 Python
Python自定义线程池实现方法分析
2018/02/07 Python
python使用socket创建tcp服务器和客户端
2018/04/12 Python
python微元法计算函数曲线长度的方法
2018/11/08 Python
完美解决python3.7 pip升级 拒绝访问问题
2019/07/12 Python
Python closure闭包解释及其注意点详解
2019/08/28 Python
Python pandas自定义函数的使用方法示例
2019/11/20 Python
flask实现验证码并验证功能
2019/12/05 Python
使用Python来做一个屏幕录制工具的操作代码
2020/01/18 Python
Python 执行矩阵与线性代数运算
2020/08/01 Python
碧欧泉Biotherm加拿大官方网站:法国高端护肤品牌
2019/10/18 全球购物
护士毕业生自荐信
2014/02/07 职场文书
《窗前的气球》教学反思
2014/04/07 职场文书
2014年公务员工作总结
2014/11/18 职场文书
天坛导游词
2015/02/02 职场文书
巧用 -webkit-box-reflect 倒影实现各类动效(小结)
2021/04/22 HTML / CSS
win10频率超出范围怎么办?win10老显示超出工作频率范围的解决方法
2022/07/07 数码科技