Stereo Camera syncronization
Hi all, I'm using the uvc_camera package and its stereo_node to grab frames from my 2 webcams. Now I'm trying to have a measure of the sync error of the 2 frames doing the following: 1) write informations about left and right camera in 2 files
rostopic echo -p /left/camera_info > left.csv
rostopic echo -p /right/camera_info > right.csv
2) compare timestamps field inside left.csv and right.csv
With my big surprise, timestamps are always the same for all frames couples (30000+ couples, 15fps), saying that there's no sync error. I think that this result is quite impossible because timestamps are taken with a precision of 1 nanosecond.
Now the question is: does uvc_camera has some magical power that I don't know or something else happened?
Is there another way to have a precise mesure of the sync error?
Thanks, Fabio.
Interesting question. Although timestamps are represented using nanosecond precision, actual clocks are not that accurate. I would not expect USB cameras to be synchronized.
On a 1394 bus, some camera models support "bus synchronization" with accuracy of about 125 microseconds. Does USB have any comparable feature?
I think that "bus synchronization" is a special feature of IEEE1394 and probably it's not available with USB. The uvc_camera "includes a two-camera node that provides rough synchronization for stereo vision" so the frame synchronization is done through software.
Looking at the frames I can't say that they aren't synchronized... by the way I'm expecting a sync error about some microseconds.
@joq USB Video Class doesn't have that feature, nor does it have triggering.