問題タブ [armadillo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2807 参照

c++ - 四元数から回転行列へ-私は盲目ですか、それとも単に間違っていますか?

Wolfram Alphaは、それq=(7.0711e-01,1.5272e-16,-7.0711e-01,0e+00)が1回転であり、その結果は、クォータニオンの生成に使用されるデータのコンテキストで意味をなします(いくつかの単純なテストデータの分析最小二乗点ベースの登録...)。

私のコードは私に別の答えを与えます、しかし私は理由について困惑しています。私は自分のコードを数回調べましたが、何も見つかりませんでした。それは私が睡眠を必要としているだけかもしれません、そしてそれは明日非常に明白かもしれません、しかし私はよくわかりません。

コード:

私の結果:

WolframAlphaの結果

0 投票する
2 に答える
6938 参照

c++ - Armadillo C++:- キューブ構造の列への効率的なアクセス

Armadillo マトリックス ライブラリを使用して、2 次元マトリックスの列にアクセスする効率的な方法は、単に .col(i) を呼び出すことだと認識しています。

最初にスライスコマンドを呼び出さずに、「キューブ」に格納された列を抽出する効率的な方法があるのだろうか?

たとえば、(matlab 表記を使用して) A(:,i,j) に格納されているデータにアクセスする最も効率的な方法が必要です。非常に大きなデータセットでこれを何百万回も行うため、速度と効率が最優先事項です。

0 投票する
1 に答える
1004 参照

c++ - c++ アルマジロ:「norm_dot」は何をしますか?

この機能は何をしているのですか?それは、ドット積の正規化されたバージョンであると述べています。

しかし

ドット 1 != ドット 2

0 投票する
1 に答える
1401 参照

c++ - C++ Armadillo:- Matlab の bsxfun と同等

Aramadillo には、bsxfun(@minus,A,B) などの要素ごとの操作を実行する、matlab の bsxfun と同等の汎用機能がありますか? Armadillo には要素ごとの乗算と除算があることがわかりましたが、一般化された関数が利用可能であるという兆候はありません。

0 投票する
2 に答える
3615 参照

c++ - NeatBeans で Armadillo ライブラリを使用して c++ をコンパイルする

Armadillo ライブラリを含む C++ プログラムをコンパイルします。この問題は、次のコマンドを使用してコマンド ラインから実行できます。

しかし、NetBeans プロジェクトのコンパイル オプションに -O1 -larmadillo を追加すると、かなりの量のエラーが発生します。

これらのエラーが発生しました:

0 投票する
1 に答える
1360 参照

r - RcppArmadillo での QR 分解

RcppArmadillo を使用した QR 出力が R からの QR 出力と異なる理由は本当に混乱しています。Armadillo のドキュメントにも明確な答えはありません。基本的に、R に n * q (たとえば 1000 X 20 ) である行列 Y を指定すると、1000 X 20 および R 20 X 1000 である Q が返されます。これが必要です。しかし、Armadillo で QR ソルバーを使用すると、Q 1000 X 1000 と R 1000 X 20 がスローされます。代わりに R の qr 関数を呼び出すことはできますか? qx q ではなく、次元 nxq を持つ Q が必要です。以下のコードは私が使用しているものです(より大きな関数の一部です)。

誰かが RcppEigen でそれを行う方法を提案できれば、それも役に立ちます。

0 投票する
3 に答える
1162 参照

matlab - スパース行列の線形代数ライブラリ

速度を向上させるために、Matlab の実装を C++ に移植することに関心があります。アルマジロをやってみました。Armadillo のライブラリ関数名/構文は Matlab プログラミングのそれに非常に近いため、Matlab からコードを移植するのに最適です。しかし、いくつかの場所で、私のデータは主にまばらであり、アルマジロは特別な処理を行わず、単純に密な行列として処理するため、Matlab がアルマジロよりも優れていることに気付きました。Armadillo チームはスパース行列のサポートに取り組んでいますが、現在は利用できません。そこで、Armadillo のように Matlab に非常に近い構文を持ち (または使いやすい)、速度とスペースの最適化のためにスパース行列をサポートするライブラリを探しています。

0 投票する
1 に答える
1973 参照

c++ - アルマジロを使用した補間

そのため、アルマジロには補間機能がないように見えます (少なくとも、ドキュメントには参照がありません)。rowvec を入力および出力として使用してスプラインおよび線形補間を実装するための最良の方法について誰か提案があるかどうか疑問に思っていましたか?

0 投票する
5 に答える
12889 参照

c++ - C ++:整数のテキストファイルをBMP形式のビットマップ画像ファイルに変換します

2Dマトリックスを含むマトリックスライブラリによって保存されているテキストファイルがあります。

各番号は色付きのピクセルで表されます。この問題をどのように解決するかについての洞察を探しています。さらに情報が必要な場合は、遠慮なくお問い合わせください。

編集:私が試したもう1つのアプローチはfwrite(&intmatrix, size,1, bmp_ptr);、読み取り可能なBMPファイルを出力していないように見えるマトリックスポインターを渡すことです。の値はsizeもちろんrows*colsです。行列のタイプはarma::Mat<int>、Armadillo線形代数ライブラリの行列です。

編集II:これを読んだことは、私が間違っていなければ、私のサイズはおそらく行のサイズを考えると行*列* 4であるべきであることを示しました、この点に関するガイダンスも素晴らしいでしょう。