python 根据两个向量,求的之间的旋转矩阵:

这篇具有很好参考价值的文章主要介绍了python 根据两个向量,求的之间的旋转矩阵:。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

原理介绍:

项目遇到一个问题,就是需要根据原始向量目标向量求他们两个之间的旋转矩阵,网上结果很少,也有很多错误,因此写了一个,项目中使用过程没出现问题。

        原理参考的是知乎大佬的对   Rodrigues' rotation formula  和 知乎 的总结,主要如下:

python 求解两个向量的转移矩阵,python学习,python,旋转矩阵,向量文章来源地址https://www.toymoban.com/news/detail-542120.html

Python 实现方式如下:

import math
import numpy as np
origin_vector = np.array([1, 0 ,0])
location_vector = np.array([0, 0 ,1])

# 注意,如果向量没有归一化,可以先考虑归一化下。

c = np.dot(origin_vector, location_vector)
n_vector = np.cross(origin_vector, location_vector)
s = np.linalg.norm(n_vector)
print(c, s)

n_vector_invert = np.array((
    [0,-n_vector[2],n_vector[1]],
    [n_vector[2],0,-n_vector[0]],
    [-n_vector[1],n_vector[0],0]
    ))
I = np.eye(3)
# 核心公式:见上图
R_w2c = I + n_vector_invert + np.dot(n_vector_invert, n_vector_invert)/(1+c)
print(R_w2c)

到了这里,关于python 根据两个向量,求的之间的旋转矩阵:的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 《动手学机器人学》7.2.4姿态之间的互相转换,Python&&C++支持四元数,欧拉角旋转矩阵、轴角

    本系列教程作者:小鱼 公众号:鱼香ROS QQ交流群:139707339 教学视频地址:小鱼的B站 完整文档地址:鱼香ROS官网 版权声明:如非允许禁止转载与商业用途。 上一节小鱼带你一起学习了四种姿态表示方式,这节课我们就利用相关的开源库,来完成姿态的不同表示方式之间的转

    2024年02月02日
    浏览(48)
  • 计算两个或多个向量之间的相关性(Matlab 实现)

    本文首次在公众号【零妖阁】上发表,为了方便阅读和分享,我们将在其他平台进行自动同步。由于不同平台的排版格式可能存在差异,为了避免影响阅读体验,建议如有排版问题,可前往公众号查看原文。感谢您的阅读和支持! 两个随机变量 x x x 、 y y y 的 Pearson 线性相关

    2024年02月04日
    浏览(42)
  • ChatGPT 拓展资料:AI大模型之美 -计算两个向量之间的余弦相似度

    ChatGPT 拓展资料:AI大模型之美 -计算两个向量之间的余弦相似度 本文讲解使用openai.embeddings_utils中的cosine_similarity和get_embedding函数。 首先,让我们了解一下这两个函数的作用: cosine_similarity: 计算两个向量之间的余弦相似度。 get_embedding: 获取一个单词或短语的嵌入向量表示。

    2023年04月23日
    浏览(53)
  • MATLAB中对方阵行列式的求解、矩阵的累加和与累乘积进行求解、矩阵的排序、矩阵的秩和迹、以及矩阵的特征值和特征向量的求解

    目录 1、方阵的行列式计算 2、累加和与累乘积 (1)累加和 (2)累乘积 3、对于数据进行排序 4、求矩阵的秩 5、矩阵的迹 6、计算矩阵的特征值和特征向量 在线性代数中,对于一个方阵进行求值运算需要先将其转换为行列式,MATLAB中提供过了det函数用于对于方阵的行列式进

    2023年04月22日
    浏览(66)
  • 欧拉角和旋转矩阵之间的转换

    在3D 空间中,表示物体的旋转可以由三个欧拉角来表示:  pitch围绕X轴旋转,叫俯仰角。  yaw围绕Y轴旋转,叫偏航角。  roll围绕Z轴旋转,叫翻滚角。  这三个角的顺序对旋转结果有影响。     此处得到结论: 自旋转的“先转的放前面”  将旋转矩阵表示如下:    则可以

    2024年02月13日
    浏览(38)
  • 矩阵运算_矩阵的协方差矩阵/两个矩阵的协方差矩阵_求解详细步骤示例

            在统计学中, 方差 是用来度量 单个随机变量 的 离散程度 ,而协方差则一般用来刻画 两个随机变量 的 相似程度。 参考: 带你了解什么是Covariance Matrix协方差矩阵 - 知乎 将输入数据A进行中心化处理得到A\\\'。即通过 减去每个维度的平均值 来实现中心化。 注意:

    2024年02月03日
    浏览(46)
  • 旋转矩阵的作用:世界坐标变换;求解局部坐标系下的局部坐标

    以下数据以平面直角坐标系为例,三维空间同理 上图中,B点为旋转前的点,C点为B点旋转后的对应点(逆时针旋转90°),对应的旋转矩阵为: 对坐标轴做相同旋转: 我们再对比下旋转矩阵,可以发现旋转后的坐标轴可以在旋转矩阵中找到,其实这个旋转矩阵也表示了一个坐标

    2024年01月22日
    浏览(41)
  • 标量、向量、矩阵、张量之间的区别和联系

    标量 标量(scalar):一个标量就是一个单独的数(整数或实数),不同于线性代数中研究的其他大部分对象(通常是多个数的数组)。标量通常用斜体的小写字母来表示,例如:x mathit xx,标量就相当于Python中定义的 x = 1 向量 向量(vector):一个向量表示一组有序排列的数,通过次序

    2024年02月08日
    浏览(37)
  • 史上最简SLAM零基础解读(8.1) - 旋转矩阵、旋转向量、欧拉角推导与相互转换

    本人讲解关于slam一系列文章汇总链接:史上最全slam从零开始   文末正下方中心提供了本人 联系方式, 点击本人照片即可显示 W X → 官方认证 {color{blue}{文末正下方中心}提供了本人 color{red} 联系方式,color{blue}点击本人照片即可显示WX→官方认证} 文末正下方中心 提供了本人

    2024年02月13日
    浏览(38)
  • 旋转矩阵R、平移向量t以及变换矩阵T的定义及其下标的含义

    首先,只考虑旋转。 假设坐标系1: { X 1 , Y 1 , Z 1 } {X_1, Y_1, Z_1} { X 1 ​ , Y 1 ​ , Z 1 ​ } 经过 纯旋转 之后得到坐标系2: { X 2 , Y 2 , Z 2 } {X_2, Y_2, Z_2} { X 2 ​ , Y 2 ​ , Z 2 ​ } (如上图),其中坐标系1对应的单位正交基为 ( e 1 , e 2 , e 3 ) left(e_{1}, e_{2}, e_{3}right) ( e 1 ​ , e

    2023年04月23日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包