1

衛星をイメージして、衛星の姿勢と位置を推定しようとしています。衛星の3Dモデルがあります。PnPソルバーまたはPOSITのいずれかを使用すると、ポイントの対応を自分で選択するときにうまく機能しますが、ポイントを自動的に一致させる方法を見つける必要があります。コーナー検出器を使用すると(これまでに見つけた最良のものは輪郭に基づいています)、いくつかのスプリアスポイントに加えて、画像内のすべての関連ポイントを見つけることができます。ただし、画像内の特定のポイントを3Dモデル内の正しいポイントに一致させる必要があります。私がこのテーマについて読んだ記事は、その方法の詳細に立ち入ることなく、ポイントペアを見つけたと常に想定しているようです。

いくつかの不変の特徴に基づいてこれらの対応を決定できる、通常採用されているアプローチはありますか?または、コーナーポイントに基づかない別の方法に頼るべきですか?

4

2 に答える 2

1

3D-2D 対応を決定し、POSIT アルゴリズムを実行する SoftPOSIT アルゴリズムを確認できます。私が知る限り、Matlab コードは SoftPOSIT で利用できます。

于 2012-12-05T14:05:00.757 に答える
0

RANSAC で PnP を行う必要があります。openCV コードの solvePnPRansac()を参照してください。この方法では、高い割合の不一致を許容できるため、すべての一致を正確にする必要はなく、特定の割合の一致 (30% 程度) だけを使用するだけです。もちろん、正しい対応の最小数は 4 です。

不変機能について言えば、隣接するフレーム間の回転量が小さい場合、不変機能を使用する必要はありません。灰色の強度を持つ小さなパッチでも、一致を見つけるのに十分です。唯一の問題は、記述子を更新するか、モデルのローテーションに応じてモデルの別の特徴点を選択する必要があることです。後者は、すべてのフィーチャの 3D 座標を知る必要があるため、難しい場合があります。

于 2014-03-04T19:48:23.190 に答える