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

 更新时间:2019年12月06日 16:59:46   作者:pj_find  
今天小编就为大家分享一篇python 画3维轨迹图并进行比较的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

一. 数据的格式

首先我们需要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安装CLIP包出现错误:安装.git报错问题及解决

    python安装CLIP包出现错误:安装.git报错问题及解决

    这篇文章主要介绍了python安装CLIP包出现错误:安装.git报错问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • python在一个范围内取随机数的简单实例

    python在一个范围内取随机数的简单实例

    在本篇内容里小编给大家分享了关于python在一个范围内取随机数的简单实例内容,有需要的朋友们可以学习下。
    2020-08-08
  • python爬虫请求头设置代码

    python爬虫请求头设置代码

    在本篇文章里小编给大家整理的是一篇关于python爬虫请求头如何设置内容,需要的朋友们可以学习下。
    2020-07-07
  • Python新手必读bytearray对象使用技巧掌握

    Python新手必读bytearray对象使用技巧掌握

    Python中的bytearray是一个可变序列,通常用于存储二进制数据,它允许在不创建新的对象的情况下就地修改数据,非常适用于处理字节数据,本文将深入学习bytearray对象的使用,包括创建、修改、切片和常见应用场景
    2023-12-12
  • Python OpenCV绘制各类几何图形详解

    Python OpenCV绘制各类几何图形详解

    这篇文章将详细讲解如何使用OpenCV绘制各类几何图形,包括cv2.line()、v2.circle()、cv2.rectangle()、cv2.ellipse()、cv2.polylines()、cv2.putText()函数。需要的可以参考一下
    2022-01-01
  • Python 中设置请求的最大重试次数示例代码

    Python 中设置请求的最大重试次数示例代码

    本篇文章介绍了为什么我们会收到错误消息,指出超出了最大重试次数,以及我们如何在 Python 中为请求设置 max_retries,本文通过示例代码给大家介绍的非常详细,需要的朋友参考下吧
    2023-06-06
  • 解决Pandas的DataFrame输出截断和省略的问题

    解决Pandas的DataFrame输出截断和省略的问题

    今天小编就为大家分享一篇解决Pandas的DataFrame输出截断和省略的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-02-02
  • Python中动态创建类实例的方法

    Python中动态创建类实例的方法

    在Java中我们可以通过反射来根据类名创建类实例,那么在Python我们怎么实现类似功能呢?其实在Python有一个builtin函数import,我们可以使用这个函数来在运行时动态加载一些模块
    2017-03-03
  • python文件处理--文件读写详解

    python文件处理--文件读写详解

    这篇文章主要介绍了Python 处理文件的几种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-08-08
  • python PyAutoGUI实现自动化鼠标键盘等常用操作

    python PyAutoGUI实现自动化鼠标键盘等常用操作

    这篇文章主要介绍了python PyAutoGUI实现自动化鼠标键盘等常用操作使用实例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12

最新评论