Perché c'è una differenza nei parametri della fotocamera tra l'API ZED SDK e lo strumento ZED Explorer?

Last updated: August 13, 2026

Lo strumento ZED Explorer visualizza il flusso di colori RAW della fotocamera senza rettificare i fotogrammi per correggere le distorsioni causate dall'ottica. I parametri della fotocamera nella scheda "Calibrazione" della finestra delle impostazioni fanno riferimento a questi fotogrammi grezzi non rettificati.

Quando si utilizzano le funzioni API di ZED SDK per recuperare le immagini a colori VIEW::LEFT e VIEW::RIGHT, normalmente si ottengono le immagini rettificate utilizzate dalla pipeline di elaborazione di ZED SDK per estrarre le informazioni sulla profondità.

C++:

sl::CalibrationParameters calibration_params = zed.getCameraInformation().camera_configuration.calibration_parameters;

Python:

calibration_params = zed.get_camera_information().camera_configuration.calibration_parameters

Questi parametri sono diversi da quelli visualizzati da ZED Explorer:

  1. i parametri intrinseci sinistro e destro sono uguali perché le linee epipolari sono allineate sulla stessa riga di entrambe le immagini (leggi qui per i dettagli sulla geometria epipolare)
  2. i parametri di distorsione sono nulli perché le immagini sono rettificate e le distorsioni non sono più presenti

Utilizzando il codice seguente, è possibile ottenere i parametri RAW delle immagini VIEW::LEFT_UNRECTIFIED e VIEW::RIGHT_UNRECTIFIED.

C++:

sl::CalibrationParameters calibration_params_raw = zed.getCameraInformation().camera_configuration.calibration_parameters_raw;

Python:

calibration_params_raw = zed.get_camera_information().camera_configuration.calibration_parameters_raw

Quando si confronta calibration_params_raw ottenuto in questo modo con i parametri forniti dallo strumento ZED Explorer, si possono ancora notare differenze nei loro valori.

Ciò è dovuto al comportamento di autocalibrazione dello ZED SDK: quando si chiama la funzione API sl::Camera::Open , lo ZED SDK esegue una rapida procedura di autocalibrazione per compensare le piccole variazioni nell'ottica causate da variazioni di temperatura, vibrazioni ed eventuali piccoli urti.

È possibile disabilitare questo comportamento impostando il parametro camera_disable_self_calib in sl::InitParameters su true.