eigen

    0熱度

    1回答

    我有這樣的代碼: #include "opencv2/core.hpp" #include "opencv2/core/eigen.hpp" #include <Eigen/Dense> void CloudCache::DoPcaEigen(int dim){ cv::Mat1f codes; ... Eigen::MatrixXf X = Eigen::

    1熱度

    2回答

    我正在使用opencv和Eigen。 這裏是如何將OpenCV的墊鏈接到的特徵矩陣樣本: OpenCV CV::Mat and Eigen::Matrix 的關鍵是使用本徵的地圖類型,它可以指向由OpenCV的分配的內存。 根據Eigen文檔,Map應該是透明的,實際上所有在矩陣上工作的操作都應該在Map上工作。 https://eigen.tuxfamily.org/dox/group__Tut

    0熱度

    1回答

    我試圖實現使用徵以下貝塞爾曲線度仰角方程庫: 下面的代碼段是工作來計算新的控制點。在這個代碼中,degree是來自等式的變量n。 const size_t dimension = 3; // 2d or 3d points const size_t degree = 3; const size_t order = degree + 1; // Create and fill Eigen::

    0熱度

    1回答

    對於我正在構建的應用程序,我需要在大型數據集上運行線性迴歸以獲得殘差。例如,一個數據集的維數超過100萬x 20k。對於較小的數據集,我使用的是RcppArmadillo軟件包中的fastLm,這對於那些目前來說非常適用。隨着時間的推移,這些數據集也將增長超過100萬行。 我的解決方案是使用稀疏矩陣和特徵。我無法找到在RcppEigen中使用SparseQR的好例子。基於很多小時的閱讀(例如:rc

    0熱度

    1回答

    我在C++中使用OpenACC進行稀疏矩陣計算。 我需要在OpenACC區域內使用矩陣運算。 是否有與OpenACC兼容的稀疏矩陣庫? 我已經習慣了徵,但它似乎是不兼容OpenACC的,除非我手動修改源代碼,這聽起來不是個好主意......

    2熱度

    1回答

    在特徵文檔中,我沒有找到一個確切的說明,當一個表達式被懶評估。對我而言,只有係數式表達纔是有趣的,也就是說沒有混疊的可能性。 以ArrayXXf a(10000, 10000);,然後 a = a.cube() * a.cube(); 評估我在250毫秒〜PC上一樣,同樣 auto aCube = a.cube(); a = aCube * aCube; 而 ArrayXXf aCube

    0熱度

    1回答

    我試圖實現以下稠密矩陣運算爲稀疏對稱矩陣: dm.col(j).swap(dm.col(i)); dm.row(j).swap(dm.row(i)); 爲了交換兩列(和行)在稀疏對稱矩陣,我試圖生成的置換矩陣,使得我可以把它傳遞給.twistedBy(): Eigen::PermutationMatrix<Eigen::Dynamic, Eigen::Dynamic> P;

    2熱度

    2回答

    TensorFlow的C++接口似乎沒有重構方法。有沒有人有一個想法如何轉換[A,B,C,D]分成[A*B,C,D]?它看起來像這樣做的唯一方法是使用Eigen?然而,那裏的文檔非常渺茫,代碼是模板地獄,不容易解析。

    0熱度

    1回答

    我試圖編譯Eigen3 PartialPivLU example MatrixXd A(2,2); A < < 2,-1,1,3; 部分封閉>> lu(A); 但我得到編譯器錯誤(見下文)。 如果我刪除「參考<>它編譯OK。有誰知道如何使用PartialPivLU與參考<>? 感謝 史蒂夫 In file included from /apps/eigen/3.2.8/include/eigen3

    1熱度

    1回答

    我有一個關於特徵陣列操作的問題(基本上是矩陣元素操作)。 這些操作(+, - ,*,/)是否在Eigen中並行化(使用OpenMP時)?文檔沒有指定它(c.f. here),但是這樣的操作預計會被並行化,因爲我猜它會非常簡單。 例子: MatrixXd A = MatrixXd::Zero(100,100); MatrixXd B = MatrixXd::Ones(100,100); Mat