問題タブ [pose-estimation]

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 投票する
2 に答える
7068 参照

opencv - OpenCV projectPoints の逆

私はチェス盤に相当するカメラを持っています。ポイントの世界の3D位置と、カメラ画像上の対応する投影ポイントの2D位置を知っています。すべてのワールド ポイントは同じ平面に属します。私はsolvePnPを使用しています:

次に、projectPoints を使用して 3D ワールド ポイントから 2D イメージ ポイントに移動できます。

projPoints は imgPoints に非常に近いです。

同じ平面に属する 3D ワールド ポイントに対応するスクリーン ポイントで逆を行うにはどうすればよいですか。単一のビューから 3 次元の位置を再構築することはできないことはわかっていますが、ここでは同じ平面にいるので、実際には 2 次元の問題です。逆回転行列と逆平行移動ベクトルを計算できますが、どうすればよいですか?

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

c++ - 外部カメラキャリブレーション OpenCV

セットアップに取り付けた 4 台のカメラの外部機能を調整しようとしています。それらは 90 度離れた方向を向いています。私はすでに内因性パラメータを較正しており、外因性を見つけるために較正パターンの画像を使用することを考えています。これまでに行ったことは次のとおりです。キャリブレーション パターンをテーブル上に平らに置き、ロールとヨーの角度が 0 になり、ピッチが 90 になるようにします (カメラと平行になるため)。カメラの偏角は 0、90、180、270 度 (90 度離れているため) で、カメラのロール角は 0 (傾斜していないため) です。したがって、計算する必要があるのは、カメラのピッチ角です。

座標系間のマッピングに慣れていないため、計算方法について頭を悩ませることはできません。どんな助けも大歓迎です。cv::solvePnPRansac()関数を使用して (画像のキャリブレーション パターンの) 回転ベクトルを計算するプログラムの一部を既に作成しているので、回転ベクトルがあります (これを使用して行列にすることができると思います)。cv::ロドリゲス()

計算の次のステップは何ですか?

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

c++ - solvePnpRansac GPU アサーションが失敗しました

GPU バージョンの solvePnPRansac を使用してカメラの姿勢を推定しようとしていますが、次のエラーが発生します。

OpenCV エラー: cv::gpu::solvePnPRansac、ファイル C:\opencv\sources\modules\gpu\src でアサーションが失敗しました (object.rows == 1 && object.cols > 0 && object.type() == CV_32FC3) \calib3d.cpp、218行目

solvePnP または CPU ベースの solvePnPRansac を使用してコードを実行すると、すべて正常に動作します。

218行目のcalib3d.cppのコードを調べたところ、問題は関数の最初のパラメーター(参照ポイントのリストである必要があります)に関連しているようです。

関数に参照点を送るために使用する形式が間違っているようですが、どれが正しいかわかりませんでした。

これが私のコードです:

何か提案はありますか?

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

opencv - 2 つの画像間の回転推定

同じカメラ (既知の固有) から撮影した 2 つの画像間の回転を取得したい。私はほぼ完璧な純粋なローテーションを持っています!

私はfindhomographyを使用していますが、翻訳の動きが少しあれば、4つの結果が得られます。純粋な回転であると仮定してホモグラフィを強制する方法はありますか?

編集:写真のサンプル: カメラが回転しています ここに画像の説明を入力

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

image-processing - 間接 (エラー状態) カルマン フィルター: エラー状態の伝播

私は、エラー状態のカルマン フィルターに取り組んでおり、状態の伝播に IMU データを使用し、更新にビジョン ベースの測定値を使用して、飛行車両の位置と方向を推定しています。

したがって、 「エラー状態KFの四元数運動学」から私が知っている/理解していることについては、公称状態xとエラー状態デルタ xがあります。xは、私の IMU 測定値を使用して伝搬されます。F行列とH行列は、フル状態ではなくエラー状態に基づいて定義されます。エラー状態は伝播されません。

デルタ xは、次を使用して、更新されたステップで初めて計算されます。

delta x = K(y - h(hat( x ))) --> エラー状態は、エラー状態の以前の推定値とは無関係です

私が理解したところでは、デルタ xが計算されるのはこれが初めてであり、通常の状態でエラー状態を挿入するために使用された後、ゼロにリセットされます。

したがって、エラーに関する情報がなく、ゼロで開始されるため、エラー状態を予測/伝播する必要はないと私が理解しているため、エラー状態は常にゼロを返します。共分散行列は、誤差が大きくなるにつれて明らかに更新する必要があります。

エラー状態は予測ステップで予測されず、更新ステップでのみ使用されるというのは正しいですか?