web-dev-qa-db-ja.com

ROS RVIZ:固定フレーム変換を持たない点群を視覚化する方法

点群を公開する の方法に関するROSの公式ドキュメントに従っていたため、コードを正常に実行できました。 ROS RVIZを使用して点群を視覚化しようとしていますが、エラーが発生します。

変換[sender = unknown_publisher]フレーム[single_frame]の場合:固定フレーム[マップ]は存在しません

enter image description here

このエラーを解決するにはどうすればよいですか?フレームが存在しないと表示されます。エラーを回避するための回避策または構成設定はRVIZにありますか?または、c ++コードを更新してフレームオブジェクトを更新するにはどうすればよいですか?いくつかのサンプルコードを提供していただけませんか?

4
Amal Gunatilake

rvizには、指定された_Fixed Frame_(つまりmap)から点群データのフレーム(つまり_base_link_)への変換がありません。測定データ、キネマティクス、ダイナミクスを使用してROSを使用している場合は、 tf-tutorials を強くお勧めします。

ただし、問題を修正する2つのオプションがあります。

1。次のように入力して、rv(base_link_フレームをmapフレームに変換する方法をrvizに伝えるパブリッシャーを作成できます。コマンドラインに次のコマンドを入力します。

_rosrun tf static_transform_publisher 0 0 0 0 0 0 map base_link 50
_

このコマンド explanation here は、両方のフレームが50 Hzで一致するという情報を公開します。

2。別のオプションは、rvizにその固定フレームが_base_link_であることを通知することです。下の画像で提案されているようにmapを_base_link_に変更してください。

enter image description here

7
Tik0

知識ベースにさらに追加するため。 @ Tik0で説明されているようにstatic_transform_publisherを実行すると、変換エラーが消えました。しかし、ビジュアライザーではまだ点群が見えませんでした。その後、さらにいくつかの試行を行った後、ポイントのサイズがデフォルトで0.01に設定されていることに気付きました。したがって、ポイントが小さすぎて視覚化できませんでした。 rvizの点群設定でポイントサイズを増やした後、それを視覚化することができました。

1
Amal Gunatilake