0

(新しくリリースされた) ArUco 2.0.7 を使用して、いくつかのマーカーを追跡しています。私が使用しているカメラは天井に下向きに取り付けられているため、必要なのは x 座標と y 座標だけです。2.6m×1.5mのエリアを表示できます。ドキュメントを正しく理解していれば、使用しているマーカーの横の長さを任意の単位で指定すると、ポーズの出力は同じ単位になります。したがって、マーカーの横の長さは 19.5cm です。結果をメートルで表示したいので、その値を 0.195 に設定します。

しかし、私が得た結果は正しくありません。カメラの視野の隅にマーカーを配置すると、対応する予想される x 座標と y 座標にはなりません。

視野の隅の 1 つにグローバル原点を配置しています。たとえば、(0,0) は左下隅です。これは、getRTMatrix() によって取得されたマトリックス変換を使用して、すべての着信位置をそのマーカー座標系に変換することによって行われます。x 座標と y 座標が間違った単位またはスケーリングされていることを除いて、すべてが機能しているようです。回転は完璧に機能します。

何か不足していますか?それとも精度が期待できないのでしょうか?エラーは重大です。たとえば、(2.6,1.5) のはずが (1.8, 1) と表示されますが、これはおよそ 33% のエラーです。

4

1 に答える 1

1

もう少し考えた結果、カメラは、キャリブレーション ボードからレンズまでの距離が、ユース ケースに必要な距離よりも短い距離を使用してキャリブレーションされているだけであることがわかりました。これにより、歪み係数が間違っていたため、偽のスケールが得られました。aruco_calibration ツールを使用して再調整したところ、約 3 ~ 4 cm の精度になりました。これで十分です。

于 2016-07-11T14:22:40.990 に答える