問題タブ [aruco]

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 に答える
100 参照

c++ - Aruco コードで発見された C++ の奇妙な構文

一部の Aruco ファイルで奇妙な構文を見つけました。

は関数のようthres_imagesですが、もしそうなら、そのvector< cv::Mat >前に何がありますか? 宣言でも定義でもありません。後で配列として使用されます。

PS: 完全なコードはここにあります

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

linux - ArUco の出力を解釈する方法

私は ArUco を初めて使用し、次のように出力の単位を理解しようとしていくつかの問題を抱えています。

817=(527.126,235.966) (525.665,210.056) (552.459,208.619) (553.243,234.68) Txyz=0.155419 -0.0140956 0.56691 Rxyz=-1.53​​672 0.11303 秒検出 0.11303=490.04

最初の数字 (817) がマーク コード、最初の 4 つの角かっこが角の位置、残りの値が Translation と Rotation であることを理解しています。しかし、それらの単位は何ですか?

前もって感謝します!

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

qt - QT C++ - マーカーベースの拡張現実

aruco を使用してマーカーを検出しています。

drawDetectedMarkers メソッドを使用するために、マーカーに 3d オブジェクトを追加したいと思います。C#言語で実装されている同様のプロジェクトを見ました。私は彼らの統一オブジェクトを取りました.しかし、3Dオブジェクトをマーカーに配置する最良の方法はわかりません. openscenegraph または opengl を使用する必要がありますか? この工程にもマーカーボードが使えます。rvec(ボードの回転ベクトル)とtvec(ボードの並進ベクトル)の値をリアルタイムで取得しました。初めての 3D オブジェクト - QT です。私はすべての提案を受け入れます。

0 投票する
0 に答える
383 参照

three.js - three.jsでWebARシーンのバンプ/ちらつきを止める方法

例としてthree.jsでARシーンを設定してみました。

そのために「aruco.js」を使っています。obj またはその他のモデルをロードすると、すべてがうまく機能しますが、マーカーがカメラの前に配置されると、マーカーが検出され、シーンがちらついたり激しくぶつかったりします。これが起こっている深刻な理由はありますか?

ライブ デモはセットアップが難しいため、YouTube にビデオをアップロードして要点を説明しました: https://youtu.be/9jMso7vmw1M

だから私の正確な質問は、ちらつきなしでARシーンをマーカーに貼り付ける最良の方法は何ですか?

jsfiddle のコード: https://jsfiddle.net/6cw3ta57/

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

opencv - OpenCV 回転基準マーカーまでの距離を取得 (Aruco)

(iOS の場合) 回転可能な基準マーカーまでの距離を決定する必要があります。

私は Aruco ライブラリを使用しており、これまで iOS でマーカー検出とポーズ推定を実装しましたが、本当に必要なのは、カメラからそのマーカーまでの距離です。

マーカーの実際のサイズ、カメラの焦点距離、およびマーカーの画面上のサイズを使用して距離を計算する例を見てきましたが、これはマーカーに適用される回転を考慮していません。

ポーズの推定が機能しているので、マーカーのコーナーポイントの回転を解除し、それらのポイントのバウンディングボックスを実際のサイズとカメラの焦点距離とともに使用できるはずだと「推測」しています。それが正しいか、またはそれを実装する方法は完全にはわかりませんが。

OpenCV を使用するのはこれが初めてなので、現時点では推測にすぎません。

すべてのヘルプは非常に高く評価されています。

どうもありがとう

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

opencv - aruco::detectMarkers がマーカーの真のエッジを見つけられない

ArUco マーカーを使用して遠近法を修正し、画像のサイズを計算しています。この画像では、マーカーの外縁間の正確な距離を知っており、それを使用して黒い四角形のサイズを計算しています。

私の問題はaruco::detectMarkers、マーカーの真のエッジを常に識別するとは限らないことです(詳細画像に示されているように)。マーカーの角に基づいて遠近法を修正すると、画像内のオブジェクトのサイズ計算に影響を与える歪みが発生します。

のエッジ検出精度を向上させる方法はありaruco::detectMarkersますか?

ボード全体の縮小写真は次のとおりです。

マーカーボード

エッジ検出の不正確さを示す左下のマーカーの詳細を次に示します。

左下のマーカー

同じマーカー ID の正確なエッジ検出を示す右上のマーカーの詳細を次に示します。

ここに画像の説明を入力

この縮小された画像ではわかりにくいですが、左上のマーカーは正確で、右下のマーカーは不正確です。

呼び出す私の関数detectMarkers

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

c++ - 固有行列が正しいことをどのように確認できますか?

aruco マーカーを使用してカメラのキャリブレーションを行いました。固有の行列は K = [fx 0 cx; 0 fy cy; 0 0 1]であり、 where fx = image_width/2 and fy = image_height/2です。キャリブレーションを 2 回実行した結果は次のとおりです。

ケース1

ケース 2

画像の解像度は 1920*1200 なのでcx、 andcyは 960 と 600 である必要があります。2 番目のケースでは、cxandcyは予想どおりです。再投影誤差が大きい。それ以外の場合cx、 とcyは一致しませんが、再投影エラーは非常に低い (1 未満) です。

では、どの結果を検討して最良の結果にすることができ、一般的にどのようfxfy定義することができるのでしょうか?