How do I reconstruct a TF tree from a rosbag?
조회 수: 17 (최근 30일)
이전 댓글 표시
If I play a rosbag in a terminal and then run
tree = rostf;
I can view the TF tree and access the transforms between frames. What I would like to do is extract the TF tree from the rosbag directly. This should be possible as I have direct access to the '/tf' topic.
A possible acceptable hack would be a way to execute 'rosbag play filename.bag' from the MATLAB script directly.
Ideally, there would be functionality that could work something like the following:
bag = rosbag(filepath);
selectOptions = {'Topic', '/tf'};
bagselect = select(bag, selectOptions{:});
tf = getTransform(bagselect, 'map', 'odom', timestep);
댓글 수: 1
Kyle Stanhouse
2016년 8월 16일
It sounds like you might have been trying to do the same thing I was - use the Matlab ROS functions to access rosbag files and apply tf's to certain entities, possibly using 'waitforTransform()'? Did you ever find a resolution?
답변 (1개)
Josh Chen
2023년 8월 18일
Hello David,
Yes! You may consider to use the getTransform function in BagSelection Object or rosbagreader Object to get the transformation between two frames in a specific rosbag.
This example shows how to access the transformation from a bag file.
Hope that helps,
Thanks,
Josh
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 ROS Log Files and Transformations에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!