問題タブ [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.
c++ - Aruco コードで発見された C++ の奇妙な構文
一部の Aruco ファイルで奇妙な構文を見つけました。
は関数のようthres_images
ですが、もしそうなら、そのvector< cv::Mat >
前に何がありますか? 宣言でも定義でもありません。後で配列として使用されます。
PS: 完全なコードはここにあります
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.53672 0.11303 秒検出 0.11303=490.04
最初の数字 (817) がマーク コード、最初の 4 つの角かっこが角の位置、残りの値が Translation と Rotation であることを理解しています。しかし、それらの単位は何ですか?
前もって感謝します!
qt - QT C++ - マーカーベースの拡張現実
aruco を使用してマーカーを検出しています。
drawDetectedMarkers メソッドを使用するために、マーカーに 3d オブジェクトを追加したいと思います。C#言語で実装されている同様のプロジェクトを見ました。私は彼らの統一オブジェクトを取りました.しかし、3Dオブジェクトをマーカーに配置する最良の方法はわかりません. openscenegraph または opengl を使用する必要がありますか? この工程にもマーカーボードが使えます。rvec(ボードの回転ベクトル)とtvec(ボードの並進ベクトル)の値をリアルタイムで取得しました。初めての 3D オブジェクト - QT です。私はすべての提案を受け入れます。
three.js - three.jsでWebARシーンのバンプ/ちらつきを止める方法
例としてthree.jsでARシーンを設定してみました。
そのために「aruco.js」を使っています。obj またはその他のモデルをロードすると、すべてがうまく機能しますが、マーカーがカメラの前に配置されると、マーカーが検出され、シーンがちらついたり激しくぶつかったりします。これが起こっている深刻な理由はありますか?
ライブ デモはセットアップが難しいため、YouTube にビデオをアップロードして要点を説明しました: https://youtu.be/9jMso7vmw1M
だから私の正確な質問は、ちらつきなしでARシーンをマーカーに貼り付ける最良の方法は何ですか?
jsfiddle のコード: https://jsfiddle.net/6cw3ta57/
opencv - OpenCV 回転基準マーカーまでの距離を取得 (Aruco)
(iOS の場合) 回転可能な基準マーカーまでの距離を決定する必要があります。
私は Aruco ライブラリを使用しており、これまで iOS でマーカー検出とポーズ推定を実装しましたが、本当に必要なのは、カメラからそのマーカーまでの距離です。
マーカーの実際のサイズ、カメラの焦点距離、およびマーカーの画面上のサイズを使用して距離を計算する例を見てきましたが、これはマーカーに適用される回転を考慮していません。
ポーズの推定が機能しているので、マーカーのコーナーポイントの回転を解除し、それらのポイントのバウンディングボックスを実際のサイズとカメラの焦点距離とともに使用できるはずだと「推測」しています。それが正しいか、またはそれを実装する方法は完全にはわかりませんが。
OpenCV を使用するのはこれが初めてなので、現時点では推測にすぎません。
すべてのヘルプは非常に高く評価されています。
どうもありがとう
opencv - aruco::detectMarkers がマーカーの真のエッジを見つけられない
ArUco マーカーを使用して遠近法を修正し、画像のサイズを計算しています。この画像では、マーカーの外縁間の正確な距離を知っており、それを使用して黒い四角形のサイズを計算しています。
私の問題はaruco::detectMarkers
、マーカーの真のエッジを常に識別するとは限らないことです(詳細画像に示されているように)。マーカーの角に基づいて遠近法を修正すると、画像内のオブジェクトのサイズ計算に影響を与える歪みが発生します。
のエッジ検出精度を向上させる方法はありaruco::detectMarkers
ますか?
ボード全体の縮小写真は次のとおりです。
エッジ検出の不正確さを示す左下のマーカーの詳細を次に示します。
同じマーカー ID の正確なエッジ検出を示す右上のマーカーの詳細を次に示します。
この縮小された画像ではわかりにくいですが、左上のマーカーは正確で、右下のマーカーは不正確です。
呼び出す私の関数detectMarkers
:
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 番目のケースでは、cx
andcy
は予想どおりです。再投影誤差が大きい。それ以外の場合cx
、 とcy
は一致しませんが、再投影エラーは非常に低い (1 未満) です。
では、どの結果を検討して最良の結果にすることができ、一般的にどのようfx
にfy
定義することができるのでしょうか?