Eigen与几何四元数
文章平均质量分 88
有关数学计算的库和相关知识-备忘录
Brock-123
昨夜风雨今日晴...
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
四元数小总结
四元数记法:一个四元数包含一个标量分量和一个3D向量分量。记标量为w,记向量为v或分开的x,y,z。如下:[w,v][w,(x,y,z)]四元数与复数:四元数扩展了复数系统 ,它使用三个虚部i,j,k。它们的关系如下:i2=j2=k2=ijk=−1;ij=k,ji=−k;ij=k,ji=−k;jk=i,kj=−i;ki=j,ik=−j; i^2=j^2=k^2=ijk=-1;i...原创 2019-12-19 19:38:17 · 2031 阅读 · 0 评论 -
矩阵
矩阵1.一个普通的矩阵:2.单位矩阵单位矩阵就是右斜角全是1,其他位置是0的矩阵。一个3×3的单位矩阵:3.Transposition(转换)经常看到一个矩阵的右上角有个T的符号,就是Transposition的首字母。4.矩阵与数相乘就是把这个数跟矩阵中的每个数都相乘。5.两个矩阵相乘1.首先对于两个矩阵是否可以相乘是有要求的,假设要计算A矩阵乘以B矩阵,那么A矩阵的行...原创 2019-12-17 16:06:41 · 44996 阅读 · 0 评论 -
向量
参考的是《游戏和图形学的3D数学入门教程》,非常不错的书,推荐阅读,老外很喜欢把一个东西解释的很详细。1.向量概念具有方向和大小。没有位置观念。一般的2D向量可以写成如[1,3]2.3D中的向量像下图中的向量可以写成[1,-3,7]3.零向量零向量是特殊的向量,他的大小是0,没有具体方向,可以说有任何一个方向。如下图。它跟普通的点又是不一样的。4.一个向量取反一些向量取反后...原创 2019-12-17 11:05:14 · 2162 阅读 · 0 评论 -
Eigen(7)-Geometry(几何转换)
官方地址传送Space transformations常用1.旋转矩阵(3X3):Eigen::Matrix3d2.旋转向量(3X1):Eigen::AngleAxisd3.四元数(4X1):Eigen::Quaterniond4.平移向量(3X1):Eigen::Vector3d5.变换矩阵(4X4):Eigen::Isometry3dAngleAxis(angle, axis...原创 2019-12-16 09:02:43 · 747 阅读 · 0 评论 -
Eigen(6)-Linear algebra and decompositions(线性代数和分解)
线性代数、分解介绍如何求解线性系统,计算几种分解,比如LU,QR,SVD等。基本线性求解问题:假设有一个系统方程写成如下矩阵的形式Ax=b Ax=bAx=b其中A,b是矩阵,b也可以是向量,当想要求解x时,可以选择多种分解方式,取决于矩阵A的形式以及考虑的速度和精度,下面是一个简单的例子#include <iostream>#include <Eigen/Dense...原创 2019-12-13 13:41:40 · 276 阅读 · 0 评论 -
Eigen(5)-Reductions, visitors and broadcasting(规约、迭代和广播)
规约、迭代、广播规约Eigen中规约是指对一个矩阵或数组操作并返回一个标量的函数,常用的是sum()方法,返回矩阵或数组的所有元素的和。#include <iostream>#include <Eigen/Dense>using namespace std;int main(){ Eigen::Matrix2d mat; mat << 1,...原创 2019-12-13 10:45:25 · 231 阅读 · 0 评论 -
Eigen(4)-Block operation and Advanced initialzation(块操作与高级初始化)
块操作块操作(矩阵子块)块是矩阵或阵列的矩形部分。块表达式既可以用作右值,也可以用作左值。与Eigen表达式一样,只要让编译器进行优化,此抽象的运行时成本为零。Eigen最通用的块操作是.block(),有两种版本,如下Block operationVersion constructing a dynamic-size block expressionVersion const...原创 2019-12-08 16:31:08 · 593 阅读 · 0 评论 -
Eigen(3)-The Array class and coefficient-wise operations(行列式)
Eigen数组类数组类和系数运算什么是数组类/行列式与用于线性代数的Matrix类相反,Array类提供了通用数组。此外,Array类提供了一种执行逐系数运算的简便方法,该运算可能没有线性代数含义,例如,向数组中的每个系数添加一个常数或逐个系数地乘以两个数组。数组类型Array是具有与Matrix相同的模板参数的类模板。与Matrix一样,前三个模板参数是必需的:Array<ty...原创 2019-12-07 21:48:20 · 508 阅读 · 0 评论 -
Eigen(2)-Matrix and vector arithmetic(矩阵与向量数学计算)
矩阵和向量算法本文主要是Eigen中矩阵和向量的算术运算,在Eigen中的这些算术运算重载了C++的+,-,*,所以使用起来非常方便。1.矩阵的运算Eigen提供+、-、一元操作符“-”、+=、-=二元操作符+/-表示两矩阵相加(矩阵中对应元素相加/减,返回一个临时矩阵): B+C 或 B-C;一元操作符-表示对矩阵取负(矩阵中对应元素取负,返回一个临时矩阵): -C;组合操作法+=或...原创 2019-12-07 21:30:03 · 737 阅读 · 0 评论 -
Eigen(1)-The Matrix class(矩阵类)
点击这里开始进入Eigen官网参考Eigen官网叙述ps:老老实实的看文档,才能熟悉和了解一个库…Eigen Matrix 简述在Eigen中,所有的matrices 和vectors 都是模板类Matrix 的对象,Vectors 只是一种特殊的矩阵,行或者列的数目为1.Matrix的前三个模板参数,Matrix 类有6个模板参数,现在我们了解前三个足够。剩下的三个参数都有默认值。...原创 2019-11-28 16:11:52 · 498 阅读 · 0 评论
分享