3559操作自记录0502ubuntu操作日志sudoapt-getinstallcmake-qt-guiwhereisaarch64-himix100-linux-gccaarch64-himix100-linux-gcc:/opt/hisi-linux/x86-arm/aarch64-himix100-linux/bin/aarch64-himix100-linux-gcc然后把同级的gnu放进来了,然后confige,然后generate然后make(没有输出安全通过),然后makeinstallhaitu@ubuntu:~/eigen-3.4.0/aarch_eigen$cdbuild
我按照CMakeLists中引用的方向安装了一个Eigen库包:C:\Users\HP\Desktop\gop_1.3\external\eigen。我的代码中有这一行:#includeusingnamespaceEigen;但是当我尝试编译它时,我得到了这个:'Erreur3errorC1083:Impossibled'ouvrirlefichierinclude :'Eigen/Core' :NosuchfileordirectoryC:\Users\HP\Desktop\gop_1.3\lib\util\eigen.h除此之外,我在header的程序中还有很多错误。
我想编译一个openproject,它需要Eigen3,我遵循了它的指导方针,但卡在了这一步:“将环境变量Eigen3_DIR设置为{YOUR_EIGEN3_DIRECTORY}/eigen3/cmake。”我已经安装了CMakegui并在配置后打印了以下错误MakeErroratsrc/CMakeLists.txt:15(find_package):Bynotproviding"FindEigen3.cmake"inCMAKE_MODULE_PATHthisprojecthasaskedCMaketofindapackageconfigurationfileprovidedby"Ei
零、前言在slam中经常用到的四种描述机器人orientation的变量,他们之间可以相互转化,使用Eigen库可以很容易的做到这一点,需要特别关注的是:欧拉角与其余量之间的转换关系:1)首先要明确的是,必须要明确欧拉角的旋转次序,你可以选择RPY、YPR等方式,在相同的orientation下,旋转次序会影响欧拉角三分量的数值,也会影响欧拉角与其他旋转表示的转换关系,但是不会影响转换结果;也就是说,旋转次序是你自己根据习惯选择的,在把欧拉角转换为其他形式时,也要根据选择的次序使用对应的转换关系;2)欧拉角转换为其他表示,一般使用旋转向量(角轴)作为过渡,即,首先将欧拉角三个分量变成角轴,再将
文章目录0前言1旋转向量间变换求解1.1欧拉角1.1.1欧拉角->旋转矩阵1.2旋转矩阵1.2.1旋转矩阵->欧拉角2变换矩阵求解2.1欧拉角+平移向量->变换矩阵2.2旋转矩阵+平移向量->变换矩阵0前言下面内容包含头文件如下:#include#include//核心矩阵运算库(Vector3d,Matrix3d)#include//稠密矩阵的代数运算(逆和特征值)#include//引入旋转平移(旋转矩阵、旋转向量、欧拉角、四元数、平移向量)#includeusingnamespacecv;usingnamespacestd;#defineDEG2RAD(x)((x)*0.01745329
之前的文章中,简单的介绍了一些基本的操作,回归之前的内容可以参考一下链接:zEigen库的基本使用说明_每日亿学的博客-CSDN博客_eigen库 本章内容主要就是继续延伸Eigen库的使用内容也会实时进行更新,Eigen库在SLAM中使用广泛,需要对这个库有一定的熟悉。一、赋值操作首先最简单的如何给申请好的矩阵对象进行赋值?1、定义对象时//这里以动态的矩阵模板为例子MatrixXia{//创建2x2matrix{1,2},//firstrow{3,4}//secondrow};Matrixc={1,2,3,4,5};2、类似输入流的方式Matrix3fm;m3、(,)赋值注意这里和数组不
1四元数转旋转矩阵 使用了normalized()函数和toRotationMatrix()函数//下面的变量名称自拟Eigen::Quaterniondq_odom_curr_tmp;//声明一个Eigen类的四元数//此处进行赋值,使用其他语句以及合理的常数也可q_odom_curr_tmp.x()=imuVec[imuVec.size()-1].orientation.x;q_odom_curr_tmp.y()=imuVec[imuVec.size()-1].orientation.y;q_odom_curr_tmp.z()=imuVec[imuVec.size()-1].o
Eigen::Matrix初始化定义一个4*4的矩阵定义一个4*4的矩阵Eigen::MatrixrotMatrix;下面是几种我目前知道的初始化方法基本初始化 rotMatrix上面的代码,就是逐个对4*4float型矩阵rotMatrix赋值。块初始假设已经定义好Eigen::Matrixa;Eigen::Vector3fb;那么rotMatrix可以做如下初始化trans上面部分代码的意思是,rotMatrix的前3行的前3列,由矩阵a初始化。前3行的最后一列由向量b初始化最后一行由0,0,0,1初始化初始化为单位矩阵通过Identity()可初始化单位矩阵Eigen::Matrix
前言 本文主要内容是games101在本机下的环境搭建,主要有VS的下载与安装,Eigen库的下载与配置,OpenCV的下载与配置,主要解决的bug是LNK2019无法解析的外部符号“public:__thiscallcv::Mat::Mat(void)”,希望能给各位想做games101作业的带来帮助,减少环境配置上的困难,后续也会陆续相关的作业题。games101本机环境搭建前言VisualStudio篇VisualStudio安装包下载VisualStudio安装Eigen篇Eigen库下载VisualStudio环境配置框架源码的改动OpenCV篇Opencv下载与环境变量设置Vis
高级矩阵初始化一、逗号初始化式二、特殊矩阵和数组三、作为临时对象使用一、逗号初始化式Eigen提供了一个逗号初始化语法,允许用户轻松设置矩阵、向量或数组的所有系数。简单地列出系数,从左上角开始,从左到右,从上到下。对象的大小需要事先指定。如果你列出的系数太少或太多,Eigen就会报错。Matrix3fm;m1,2,3,4,5,6,7,8,9;std::coutm;//输出123456789此外,初始化列表的元素本身可以是向量或矩阵。一个常见的用法是将向量或矩阵连接在一起。例如,这里是如何将两个行向量连接在一起。记住,必须先设置大小,然后才能使用逗号初始化器。RowVectorXdvec1(3)