Camera TimeStamp

Please provide the following info (check/uncheck the boxes after creating this topic):
Software Version
DRIVE OS Linux 5.2.6
DRIVE OS Linux 5.2.6 and DriveWorks 4.0
DRIVE OS Linux 5.2.0
DRIVE OS Linux 5.2.0 and DriveWorks 3.5
NVIDIA DRIVE™ Software 10.0 (Linux)
NVIDIA DRIVE™ Software 9.0 (Linux)
other DRIVE OS version
other

Target Operating System
Linux
QNX
other

Hardware Platform
NVIDIA DRIVE™ AGX Xavier DevKit (E3550)
NVIDIA DRIVE™ AGX Pegasus DevKit (E3550)
other

SDK Manager Version
1.7.0.8846
other

Hello Nvidia Team!

I have a ROS Package that publishes images and saves an h264 video. My understanding is that all cameras in the same port should have the same time stamp, and between ports should be very similar. I each camera has a separate handle that runs in separate thread, then I get the time stamp like this:

status = dwSensorCamera_getImage(&image_handle_original, DW_CAMERA_OUTPUT_NATIVE_PROCESSED, camera_frame_handle);
  if (status != DW_SUCCESS) {
    std::cout << "dwSensorCamera_getImage() Failed" << std::endl;
    is_running = false;
  }

  dwTime_t timestamp;
  status = dwImage_getTimestamp(&timestamp, image_handle_original);
  if (status != DW_SUCCESS) {
    std::cout << "dwImage_getTimestamp() Failed" << std::endl;
    is_running = false;
  }

  ros::Time time_stamp = ros::Time((double) timestamp * 10e-7);

but when I check the images time stamps I see slightly different times:
for port a, camera 0

stamp
secs: 1636072154
nsecs: 204617977

for port a camera 3

stamp
secs: 1636072154
nsecs: 237941980

sometimes their timestamp is exactly the same, how is this possible? what am I possible doing wrong?
Otherwise the code runs properly, images from 8 cameras are published and the h264 video is saved successfully.

Hi, @jber4282

We will check internally and get back to you. Thanks.

Please refer to below document. The current timestamp for a frame is host timestamp which is the timestamp when the last byte of image data is written in memory, and it can be affected by CPU load.

https://docs.nvidia.com/drive/driveworks-4.0/sensors_usecase4.html

Thanks @VickNV
Is there any way I could get the time of when the cameras were triggered instead?

Is the difference about 33 ms? Were they captured by the same trigger?

Probably not, the cameras were not running at 30hz

You may need to observe the issue and check if the difference is always 33ms. Thanks.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.