eigen

    2熱度

    1回答

    我是C++程序設計的新手。我必須執行一個程序來計算矩陣的僞逆。作爲本徵教程提出,我寫了這樣的代碼: #include <stdio.h> #include <stdlib.h> #include <Core> #include <iostream> #include <Eigen/Dense> #include <Eigen/SVD> #

    8熱度

    4回答

    Iam使用特徵庫用於我的項目。我正在尋找如何從特徵矩陣中刪除特定的行或列。 Iam不成功。 MatrixXd A = X1 X2 X3 X4 Y1 Y2 Y3 Y4 Z1 Z2 Z3 Z4 A1 A2 A3 A4 MatrixXd Atransform = X1 X2 X4 Y1 Y2 Y4 Z1 Z2 Z4

    1熱度

    2回答

    我需要一系列具有可變數量值的初始化函數。我正在使用它們來執行Eigen庫的收集操作。下面是我對每個向量長度的一個模板,做它現在的方式: template<typename T1, typename T2> inline void gather (Array<T1,4,1> &to, const Array<T2,Dynamic,1> &from, const Array<int,4,1> &in

    1熱度

    1回答

    我執行加權最小二乘迴歸作爲wiki: WLS 描述我需要解決這個等式:$ B =(T(X)W¯¯ X)^ { -1} * T(X)W¯¯ Y $ 我用SVD找到:$(T(X)W¯¯ X)^ { - 1} $並將其存儲在一個矩陣。此外,我存儲矩陣$ H =(T(X)W¯¯ X)^ { - 1} * T(X)W¯¯$和簡單地做用於Y的任何新的值如下:B = H年。通過這種方式,我可以節省重複SVD和矩

    7熱度

    2回答

    假設mat的類型爲Eigen::MatrixXd並且已經包含一些數據。在試圖避免重複記憶,我試圖實例從指針flann::Matrix<double>對象由Eigen3分配的原始內存塊: flann::Matrix<double> input(const_cast<double *>(mat.data(), mat.rows(), mat.cols()) 然而,我的算法輸出的垃圾,但僅僅是用醜惡

    0熱度

    1回答

    我得到一個錯誤,如CXX0059:錯誤:左操作數是類不是函數名稱在VS2010,當我嘗試觀看我的雅可比矩陣的列和行中的值。 例如;我有像 MatrixXf j = MatrixXf::Zero(2,mList.size()); ... ... for(...) { j(0, col) += (-mList[i]->mLength*sin(angle));

    0熱度

    1回答

    乘矩陣的列我想通過操作員N.徵允許在預乘的術語來表達這種變換矩陣M的每一列: M.colwise() *= N; 但乘法M_j * N在數學上未定義。 有沒有辦法避免編寫循環?

    1熱度

    1回答

    我想在樹莓派與本徵使用ChibiOS,但是當我包括本徵庫我得到了一個錯誤: Linking build/ch.elf /opt/arm_gcc/bin/../lib/gcc/arm-none-eabi/4.7.2/../../../../arm-none-eabi/lib/libc.a(lib_a-sbrkr.o): In function `_sbrk_r': sbrkr.c:(.text+

    5熱度

    1回答

    考慮下面的指數平滑模板類。該類用於按指數順序平滑/過濾順序數據(請參閱更新方法)。 Elemtype可能是一個矢量,Floattype通常是一個標量。例如。 ExponentialSmoother<Eigen::Vector2f, float> x(0.1, Vector2f(0.5, 0.5)); 在這個例子中,第二個模板參數可避免Floattype因爲本徵的Matrix類包含嵌套的type

    7熱度

    1回答

    我最近開始使用Eigen庫。我有一個將特徵矩陣映射到C/C++數組的問題。 Eigen矩陣默認爲列專業。所以,如果我使用下面的代碼到一個矩陣映射到C/C++陣列, double a[10]; double *p = &a[0]; MatrixXd(2,5) m; for (int i=0; i<2;i++) for (int j=0; j<5;j++) m(i,j) =