Comment connecter un GPS externe aux caméras ZED afin de fournir à la vidéo des étiquettes GPS ?

Last updated: August 13, 2026

Les caméras ZED ne possèdent aucun récepteur GPS intégré. Cependant, le ZED SDK prend nativement en charge la fusion des données de la caméra avec celles d’un récepteur GNSS externe via le module de localisation globale, disponible depuis le ZED SDK v4.0. Il s’agit de la solution recommandée : la synchronisation manuelle et le filtrage de Kalman personnalisé ne sont plus nécessaires.

Module de localisation globale

Le module de localisation globale du ZED SDK permet le suivi et la localisation en temps réel de la caméra dans un système de coordonnées global en combinant l’odométrie visuelle et le positionnement GNSS. La localisation est obtenue en fusionnant les données de trois sources : la vision stéréo, l’IMU et le GNSS. Le module fonctionne également dans les environnements privés de signal GNSS : lorsque les données satellites sont indisponibles ou peu fiables, l’odométrie visuo-inertielle prend le relais, et le GNSS corrige la dérive que l’odométrie visuelle accumule au fil du temps.

Le flux de travail est simple :

  1. Activez le Suivi de position sur la caméra ZED et commencez à publier les données vers le module Fusion avec startPublishing().
  2. Initialisez un objet sl::Fusion, abonnez-vous à la caméra et activez le suivi de position Fusion avec enable_GNSS_fusion = true.
  3. Transmettez les données de votre récepteur GNSS (latitude, longitude, altitude, covariance, horodatage) au module Fusion à l’aide de fusion.ingestGNSSData().
  4. Récupérez la position globale fusionnée avec fusion.getGeoPose(), ou la pose locale fusionnée avec fusion.getPosition().

Comme chaque image ZED est associée à son horodatage d’époque, le SDK effectue une synchronisation précise basée sur les horodatages entre la caméra et les données GNSS, afin que vous puissiez associer à chaque image vidéo sa géoposition correspondante.

Documentation complète, avec des guides détaillés du code C++ et Python :

Exemples de code

Des exemples complets de localisation globale sont disponibles sur GitHub : un exemple en direct combinant la caméra ZED avec un capteur GNSS externe et affichant la géoposition sur une carte du monde réel, un exemple d'enregistrement sauvegardant les données synchronisées dans un fichier SVO et un fichier JSON, ainsi qu'un exemple de lecture rejouant les données enregistrées hors ligne :
https://github.com/stereolabs/zed-sdk/tree/master/global%20localization GitHub

ROS et ROS 2

Si vous utilisez ROS 2, le zed-ros2-wrapper prend nativement en charge la fusion GNSS ; il vous suffit de fournir un topic NavSatFix provenant de votre récepteur GNSS :
https://www.stereolabs.com/docs/ros2/geo-tracking/