I just ran into the following scenario that to my understanding is caused by a missing timestamp for the images and the telemetry. A timestamp would give me the possibility to sychronize telemetry data with pictures.
The consequence of this can already be seen when launching the provided demo.
If I start the demo with
- Code: Select all
/opt/euroc_c2s1/start_euroc_task_selector
and
- Code: Select all
rosrun euroc_c2_demos euroc_c2_demo[b].py[/b]
to launch the Python version of the demo, I can see the target points in the tcp camera at nearly the same position all the time. Telling me at least that the delay seems to be more or less constant over the simulation time.
If I run the C++ version of the same demo by
- Code: Select all
rosrun euroc_c2_demos euroc_c2_demo
the target points are spread over the whole picture, sometimes even are outside of the picture. This tells me that the delay from the time where the picture is taken to the time where the callback gets the picture is varying over the simulation time.
To my understanding this will make quite hard to solve the task with the conveyor belt as it will be quite hard to predict the point where the gripper has to grasp the object without knowing the actual time when the picture was taken.
Just adding a timestamp to the picture in the C++ callback will not solve this issue as we already could see in the provided C++ Demo.
Is there any way to get the camera and telemetry data in a more sychonized way?
Thanks
Johannes