6

簡単な紹介:
私たちは、次のように機能する測位システムを開発しています。私たちのカメラはロボットの上にあり、上向き (天井を向いています) です。天井には、ロボットの位置を計算できるランドマークのようなものがあります。次のようになります。

ここに画像の説明を入力

私たちの問題:
ロボットの表面が完全に平らではないため、カメラが少し傾いています (0 ~ 4 度だと思います)。つまり、ロボットが向きを変えても同じ座標にとどまっている場合、カメラは天井の別の位置を見ているため、位置決めプログラムは、向きを変えただけで移動していない場合でも、ロボットの異なる位置を生成します。少し。

現在の (ハードコードされた) 解決策:
カメラからいくつかのテスト写真を撮り、レンズ軸を中心に回転させました。写真から、それがおよそ傾いていると推測しました。写真の「上方向」に4度。いくつかの単純な幾何学的変換を使用して、傾きの影響を減らし、実際のカメラ位置を見つけることができました。次の写真では、灰色の点が写真の中心を示し、黒い点はカメラが置かれている天井の実際の場所です。黒い点は、灰色の点から変換されました (その位置は、灰色の点の位置を修正して計算されました)。簡単にわかるように、灰色の点は天井に円を形成し、黒い点はこの円の中心です。

ここに画像の説明を入力

ここに画像の説明を入力

ここに画像の説明を入力

ここに画像の説明を入力

私たちのソリューションの問題:
私たちのアプローチは完全に移植できません。カメラを新しいロボットに移した場合、傾きの角度と方向を完全に再調整する必要があります。そのため、キャリブレーション フェーズをユーザーに任せたいと考えました。これには、写真を撮り、ユーザーが傾斜パラメーターを評価し、プログラムで設定する必要がありました。あなたへの私の質問は次のとおりです。傾斜パラメータを計算するか、写真の傾斜を修正するためのより良い (より自動化された) 解決策を考えてもらえますか?

4

1 に答える 1

5

よくやった。自動キャリブレーションを行うことは素晴らしい課題です。

アイデアは、屋根瓦からの平行線を使用することです。カメラが完全に水平である場合、すべての線は画像でも平行になります。カメラを傾けると、すべての線が割線になります(消失点で交差します)。

さて、これはおそらく実装するのが非常に難しいです。使用しているカメラでは、最初に歪みを修正して、線が実際にまっすぐになるようにする必要があります。

あなたの実際的なアプローチはおそらくもっと単純でより頑強です。あなたがそれを説明するように、それはユーザーフレンドリーになるために自動化できるようです。ロボットの電源を入れて、写真の同じ場所に残っているポイントを実際に特定します。

于 2012-12-30T16:46:12.330 に答える