对于机器人项目,我需要一个预定义大小的3D矩阵。使用Eigen库,我看不出如何:
1.)创建一个大的预定义矩阵,似乎我必须使用matrixXd但这是一个动态矩阵。
2.)创建一个3D矩阵,i。即size =(int从200到1000)和matrix (size, size, size)
答案 0 :(得分:0)
好吧,我找到了一种在项目中构建3d矩阵的方法。 使用向量:
typedef vector<Matrix<double, Dynamic, Dynamic>> M3;
如果要初始化尺寸为(k,m,n)的预定义矩阵,只需使用:
M3 W(k, M2(m, n));
这种方式很容易存储特征矩阵。但是,如果要计算3d矩阵,则应将其切成许多2d矩阵,然后使用循环获取3d结果。
答案 1 :(得分:-1)
您可以创建2D矩阵向量,而不是3D矩阵。
例如:Eigen :: MatrixX