1

すでに robots.stackexchange に投稿しましたが、関連する回答はありませんでした。

私は現在、ロボットで SLAM ソフトウェアを開発しており、オドメトリの問題を解決するためにスキャン マッチング アルゴリズムを試しました。

この記事を読みました: センサー変位推定のためのメトリックベースの反復最近点スキャンマッチング

非常によく説明されていることがわかり、記事に記載されている式に厳密に従ってアルゴリズムを実装しました。

そこにPythonでの私の実装を見ることができます: ScanMatching.py

私が抱えている問題は、テスト中に正しい回転が見つかったが、翻訳が完全に間違っていたことです。翻訳の価値は非常に高いです。

私のコードで何が問題になる可能性があるか考えていますか?

それ以外の場合は、Mathematics Stack Exchange に質問を投稿する必要がありますか?

何度もテストしたので、ICP の部分は正しいはずですが、最小二乗最小化では良い結果が得られないようです。

お気づきのように、私は多くの bigfloat.BigFloat 値を使用しました。これは、最大フロートがいくつかの値を含めるのに十分な大きさでない場合があるためです。

4

1 に答える 1

0

この問題をすでに解決しているかどうかはわかりません。

記事全体を読んだわけではありませんが、かなり古いことに気付きました。

私見(私はここでは専門家ではありません)、ポイントクラウドを取得するための機能検出と説明、ポイントを関連付けるための記述子マッチャー、回転変換行列を取得するためのバンドル調整など、特定のアルゴリズムをまとめてみます。

私自身、sba ( http://users.ics.forth.gr/~lourakis/sba/ )、またはより具体的には cvsba ( http://www.uco.es/investiga/grupos/ava/node/ ) を試すつもりです。 39/ ) 私は opencv を使っているからです。

十分な CPU/GPU パワーがある場合は、機能検出器と記述子を AKAZE する機会を与えてください。

于 2015-05-29T12:40:46.707 に答える