ZED X settings for max position tracking performance

Hi,
My Zed X is going to arrive today. I am willing to understand what are the most optimum parameters to set for the best positional tracking accuracy if compute is not a problem.

Thanks!

config/zedx.yaml

Parameters for Stereolabs ZED X camera


/**:
ros__parameters:
general:
camera_model: ‘zedx’
camera_name: ‘zedx’ # overwritten by launch file
grab_resolution: ‘HD1200’ # The native camera grab resolution. ‘HD1200’, ‘HD1080’, ‘SVGA’, ‘AUTO’
grab_frame_rate: 30 # ZED SDK internal grabbing rate (HD1200/HD1080: 60, 30, 15 - SVGA: 120, 60, 30, 15)

    video:
      exposure_time: 16000 # Defines the real exposure time in microseconds. Recommended to control manual exposure (instead of `video.exposure` setting)
      auto_exposure_time_range_min: 28 # Defines the minimum range of exposure auto control in micro seconds
      auto_exposure_time_range_max: 30000 # Defines the maximum range of exposure auto control in micro seconds
      exposure_compensation: 50 # Defines the Exposure-target compensation made after auto exposure. Reduces the overall illumination target by factor of F-stops. Values range is [0 - 100]. Default value is 50, i.e. no compensation applied
      analog_gain: 1255 # Defines the real analog gain (sensor) in mDB. Range [1000-16000]. Recommended to control manual sensor gain (instead of `video.gain` setting)
      auto_analog_gain_range_min: 1000 # Defines the minimum range of sensor gain in automatic control
      auto_analog_gain_range_max: 16000 # Defines the maximum range of sensor gain in automatic control
      digital_gain: 1 # Defines the real digital gain (ISP) as a factor. Range [1-256]. Recommended to control manual ISP gain (instead of `video.gain` setting)
      auto_digital_gain_range_min: 1 # Defines the minimum range of digital ISP gain in automatic control
      auto_digital_gain_range_max: 256 # Defines the maximum range of digital ISP gain in automatic control
      denoising: 50 # Defines the level of denoising applied on both left and right images. Range [0-100]

    depth:
      min_depth: 0.01 # Min: 0.01, Max: 3.0
      max_depth: 15.0 # Min: 0.5, Max: 40.

It’s not possible to set parameters that work in every possible condition.
The default parameters are set to work in the most common environments with good light conditions.

In any case, the best parameters are those that work in your environment, so only tests in the field can validate them.

I am thinking more in terms of what impacts the most? like grab rate, resolution, etc. Does maxing them out help?

dumb question: after collecting the SVO, there’s no way to change and test the exposure settings, right?

Since it is a global shutter camera, as long as the features are decently visible, we don’t need to worry about the motion blur, right? Unlike the Zed2i problem?

Again, this depends on your environment. Test & Fail is the best way to understand the effect of each parameter on the final results.

Yes, you cannot modify camera parameters from an SVO. The ZED SDK records the raw images as they are received from the CMOS sensors, with the control values set at the recording time.

The motion blur is visibly reduced. The “rolling shutter” effect disappears.
In any case, if the exposure time is too high and the robot moves very fast, the motion blur cannot be completely eliminated.

cool, thank you for all your inputs, I will test things and keep you posted.

Thanks!

I tried to change the exposure settings with my existing SVO and I cannot notice any changes in the images
Thanks!