Glossaire aéronautique

Qu'est-ce que les données GPS EXIF ?

Format de données · GPS · Photographie · Drone · Inspection · Cartographie 7 langues
Définition
EXIF GPS (Exchangeable Image File Format GPS) est une structure de métadonnées standardisée intégrée dans les fichiers image qui enregistre les informations de localisation géographique au moment de la capture. Elle stocke la latitude, la longitude, l’altitude, l’horodatage UTC, le cap directionnel et les paramètres du datum géodésique en utilisant un sous-répertoire dédié appelé GPS Information Frame (GPS IFD) dans la spécification EXIF. Ces données permettent le mappage automatisé des photographies d’inspection sur les cartes d’aérodrome.

Les données GPS EXIF sont le mécanisme standardisé par lequel les informations de localisation géographique sont intégrées dans les fichiers image et vidéo numériques. Définie par la Japan Electronics and Information Technology Industries Association (JEITA) et maintenue par la Camera & Imaging Products Association (CIPA) sous la norme CIPA DC-008 (Traduction de la JEITA CP-3451), la spécification EXIF réserve un sous-répertoire dédié appelé GPS Information Frame (GPS IFD) pour stocker les données de positionnement par satellite. Ce sous-répertoire est référencé par le répertoire principal EXIF Image File Directory (IFD) via la balise 0x8825 (Exif.Image.GPSTag), qui contient un pointeur vers le début du GPS IFD dans le fichier. Chaque lecteur EXIF conforme, des boîtes de dialogue de propriétés de fichier des systèmes d’exploitation aux logiciels de photogrammétrie professionnels, localise les données géographiques en suivant ce pointeur.

Le GPS IFD contient jusqu’à 31 balises standardisées (entrées 0x0000 à 0x001f), chacune portant un composant spécifique de l’enregistrement de géolocalisation. Ces balises couvrent l’identification de version, les références d’hémisphère, les triplets de coordonnées, les valeurs d’altitude, les horodatages UTC, les identifiants satellite, les indicateurs d’état du récepteur, la dimensionnalité de mesure, les métriques de dilution de précision, les données de vitesse et de trajectoire, la direction de l’image, la spécification du datum géodésique, les données de point de destination, les métadonnées de méthode de positionnement, le statut de correction différentielle et les estimations d’erreur horizontale. En pratique, les fabricants d’appareils photo et de smartphones décident quel sous-ensemble de ces balises remplir. Les smartphones grand public écrivent généralement la latitude, la longitude, l’altitude, l’horodatage et le datum cartographique. Les fabricants de drones tels que DJI, Autel et Skydio écrivent souvent des balises supplémentaires incluant le statut GPS, le mode de mesure, la dilution de précision (DOP), la vitesse, la trajectoire et la direction de l’image. La présence ou l’absence de balises GPS spécifiques peut servir d’indicateur diagnostique du type d’appareil de capture et de la qualité du verrouillage satellite au moment de l’exposition. Par exemple, la présence simultanée de GPSStatus = A (Actif), GPSMeasureMode = 3 (Tridimensionnel), GPSDOP inférieur à 4 et GPSHPositioningError inférieur à 5 mètres indique collectivement un verrouillage GPS de haute qualité adapté aux applications de niveau cartographique.

Caméra de drone inspectant une piste d'aéroport avec superposition de données de géolocalisation GPS

Balises GPS EXIF et leur structure

Le GPS IFD est organisé comme une collection séquentielle de champs de données de 2 octets, 4 octets et de longueur variable suivant la structure IFD TIFF standard. Chaque entrée de balise dans le GPS IFD se compose de quatre composants : l’identifiant de balise (2 octets, valeur hexadécimale), le type de données (2 octets, indiquant si la valeur est un octet non signé, une chaîne ASCII, une fraction rationnelle non signée, un entier court signé ou un autre type défini par EXIF), le compte (4 octets, représentant le nombre de valeurs de données) et le décalage de valeur (4 octets, soit la valeur elle-même si elle tient dans 4 octets, soit un pointeur vers les données ailleurs dans le fichier si elle dépasse 4 octets). Les valeurs d’identifiant de balise pour les données GPS vont de 0x0000 (GPSVersionID) à 0x001f (GPSHPositioningError). Chaque entrée de balise occupe exactement 12 octets dans l’IFD, suivie de l’entrée de balise suivante, jusqu’à ce qu’un terminateur de 4 octets (valeur zéro) signale la fin de l’IFD. Le tableau suivant détaille les balises GPS les plus couramment rencontrées et leurs spécifications telles que définies par les normes EXIF 2.3 et ultérieures :

HexDécNom de la baliseTypeDescription
0x00000GPSVersionIDBYTE non signé[4]Identifiant de version pour le GPS IFD, typiquement 2 3 0 0 pour EXIF 2.3
0x00011GPSLatitudeRefASCII[2]Hémisphère de latitude : N (Nord) ou S (Sud)
0x00022GPSLatitudeRATIONNEL[3]Latitude sous forme de trois nombres rationnels non signés : degrés, minutes, secondes
0x00033GPSLongitudeRefASCII[2]Hémisphère de longitude : E (Est) ou O (Ouest)
0x00044GPSLongitudeRATIONNEL[3]Longitude sous forme de trois nombres rationnels non signés : degrés, minutes, secondes
0x00055GPSAltitudeRefBYTERéférence d’altitude : 0 = Au-dessus du niveau de la mer, 1 = En dessous du niveau de la mer
0x00066GPSAltitudeRATIONNELValeur d’altitude en mètres comme un seul rationnel non signé
0x00077GPSTimeStampRATIONNEL[3]Heure UTC du verrouillage GPS : heures, minutes, secondes (chacune comme rationnel)
0x00088GPSSatellitesASCIIIdentifiants satellite utilisés pour le verrouillage (par ex. "08", "05,12,23")
0x00099GPSStatusASCII[2]État du récepteur : A = Actif (mesure en cours), V = Vide
0x000a10GPSMeasureModeASCII[2]Dimension du verrouillage : 2 = Bidimensionnel, 3 = Tridimensionnel
0x000b11GPSDOPRATIONNELDilution de précision, métrique quantitative de qualité GPS
0x000c12GPSSpeedRefASCII[2]Unité de vitesse : K = km/h, M = mph, N = nœuds
0x000d13GPSSpeedRATIONNELVitesse de déplacement du récepteur GPS
0x000e14GPSTrackRefASCII[2]Référence de trajectoire : M = Nord magnétique, T = Nord vrai
0x000f15GPSTrackRATIONNELDirection du mouvement en degrés depuis le nord
0x001016GPSImgDirectionRefASCII[2]Référence de direction d’image : M = Magnétique, T = Vrai
0x001117GPSImgDirectionRATIONNELDirection vers laquelle la caméra pointait (degrés depuis le nord)
0x001218GPSMapDatumASCIINom du datum de relevé géodésique, typiquement "WGS-84"
0x0013–0x001a19–26GPSDest*DiversBalises de point de destination (latitude, longitude, relèvement, distance)
0x001b27GPSProcessingMethodINDÉFINIMéthode de positionnement : "GPS", "CELLID", "WLAN", "MANUEL"
0x001d29GPSDateStampASCII[11]Date UTC du verrouillage GPS au format AAAA:MM:JJ
0x001e30GPSDifferentialCOURTStatut de correction différentielle : 0 = aucune, 1 = différentielle appliquée
0x001f31GPSHPositioningErrorRATIONNELErreur de positionnement horizontal en mètres

La balise GPSVersionID (0x0000) apparaît toujours comme première entrée dans le GPS IFD et sert de contrôle de cohérence pour les analyseurs. Elle contient quatre valeurs d’octets non signés : les deux premiers indiquent la version majeure et mineure de la norme, le troisième indique la révision et le quatrième est réservé. Pour EXIF 2.3 (la version la plus largement implémentée en 2025), la valeur est 2, 3, 0, 0. EXIF 3.0, publié par la CIPA en 2023, met cela à jour en 3, 0, 0, 0 et ajoute le support du GNSS multi-constellation (GPS, GLONASS, Galileo, BeiDou, QZSS, NAVIC) dans la balise GPSProcessingMethod. La balise GPSProcessingMethod (0x001b) utilise un format de données indéfini structuré : un préfixe de compte d’octets suivi d’une chaîne ASCII énumérant la technologie de positionnement. EXIF 3.0 définit explicitement les valeurs "QZSS", "GALILEO", "GLONASS", "BEIDOU" et "NAVIC" aux côtés des options héritées "GPS", "CELLID", "WLAN" et "MANUEL", reflétant la prolifération des récepteurs multi-constellation dans les appareils modernes. Un smartphone utilisant Galileo pour le positionnement stockerait "GALILEO" dans cette balise, tandis qu’un drone utilisant GPS+GLONASS combiné pourrait stocker "GPS,GLONASS" ou une concaténation équivalente.

La balise GPSHPositioningError (0x001f) est l’une des ajouts les plus pratiquement utiles à la norme GPS EXIF. Ajoutée dans EXIF 2.31 (2016), cette balise stocke l’erreur de positionnement horizontal estimée en mètres comme un nombre rationnel non signé. Lorsqu’elle est remplie par l’appareil de capture, elle fournit une métrique de confiance quantitative : une valeur de 5,0 indique que la position réelle devrait se situer dans un rayon de 5 mètres autour des coordonnées enregistrées environ 95 % du temps (en supposant des erreurs normalement distribuées). Les smartphones fonctionnant sous Android 8.0+ et iOS 12+ écrivent cette balise lorsque les services de localisation sont actifs. Les drones DJI la remplissent à partir de la précision de position estimée du récepteur GNSS diffusée dans la phrase NMEA GST (Erreurs de pseudo-distance GNSS). Les logiciels d’analyse peuvent lire cette balise pour évaluer la fiabilité de la géolocalisation par photo et signaler les images dont les valeurs d’erreur dépassent un seuil choisi, qui est resserré pour les missions basées sur RTK.

La balise GPSDOP (0x000b) stocke la dilution de précision, une métrique sans unité qui quantifie la qualité géométrique de la constellation satellite. Les valeurs DOP inférieures à 2 indiquent une excellente géométrie, 2–4 est bon, 4–6 est modéré, 6–8 est médiocre, les valeurs supérieures à 8 sont peu fiables. La valeur DOP est multipliée par l’erreur de portée équivalente utilisateur (UERE, typiquement 2–4 mètres pour le GPS grand public) pour estimer l’erreur de position totale. Un PDOP de 3 avec une UERE de 3 mètres donne une erreur 3D attendue d’environ 9 mètres. La balise GPSSatellites (0x0008) enregistre les identifiants PRN (Pseudo-Random Noise) des satellites utilisés dans la solution de position, stockés comme une chaîne ASCII telle que "05,12,23,29" pour les satellites 5, 12, 23 et 29. L’exigence minimale pour un verrouillage 3D est de quatre satellites, mais 7–12 satellites sont typiques dans des conditions de ciel ouvert. Moins de 4 satellites force un verrouillage 2D (GPSMeasureMode = 2), qui suppose une altitude fixe et introduit une erreur horizontale supplémentaire.

Latitude et longitude : format degrés, minutes, secondes

Les coordonnées géographiques centrales dans le GPS EXIF sont stockées en utilisant un système de nombres rationnels en trois parties qui préserve la notation traditionnelle degrés-minutes-secondes (DMS). Chaque composant de coordonnées, GPSLatitude (balise 0x0002) et GPSLongitude (balise 0x0004), est un tableau de trois valeurs RATIONNELLES non signées. Un RATIONNEL dans EXIF est une paire d’entiers non signés de 32 bits représentant un numérateur et un dénominateur, permettant une précision fractionnaire. Les trois éléments du tableau correspondent aux degrés (premier élément), aux minutes (deuxième élément) et aux secondes (troisième élément). Parce que les valeurs sont non signées, le signe (hémisphère) est enregistré dans des balises compagnes séparées : GPSLatitudeRef (0x0001) contenant N ou S, et GPSLongitudeRef (0x0003) contenant E ou O. Les balises GPSLatitudeRef et GPSLongitudeRef sont des chaînes ASCII d’exactement 2 caractères, typiquement "N" ou "S" pour la latitude et "E" ou "O" pour la longitude, bien que la norme EXIF permette un remplissage à 2 caractères (par ex., "N " avec un espace de fin).

Un exemple concret illustre le format de stockage. Une photo prise à la latitude 40° 45’ 30,00" Nord et à la longitude 73° 59’ 15,00" Ouest stockerait les valeurs suivantes dans le GPS IFD :

BaliseValeur brute (numérateur/dénominateur)Valeur calculée
GPSLatitudeRef"N"Nord
GPSLatitude[0] (degrés)40/140 degrés
GPSLatitude[1] (minutes)45/145 minutes
GPSLatitude[2] (secondes)3000/10030,00 secondes
GPSLongitudeRef"O"Ouest
GPSLongitude[0] (degrés)73/173 degrés
GPSLongitude[1] (minutes)59/159 minutes
GPSLongitude[2] (secondes)1500/10015,00 secondes

La conversion de la représentation DMS EXIF en degrés décimaux utilise la formule : Degrés décimaux = Degrés + (Minutes / 60) + (Secondes / 3600). Pour l’exemple ci-dessus : 40 + (45/60) + (30,00/3600) = 40,75833°N. La référence d’hémisphère détermine le signe algébrique : Nord et Est sont positifs (40,75833), tandis que Sud et Ouest sont négatifs (−73,98750). La plupart des bases de données géospatiales, des API de cartographie (Google Maps, OpenStreetMap, Mapbox) et des logiciels SIG (QGIS, ArcGIS) attendent des degrés décimaux avec des valeurs signées où les latitudes négatives sont au Sud et les longitudes négatives à l’Ouest, la norme du système de référence de coordonnées EPSG:4326. La conversion complète pour l’exemple est : décimal = 40 + 0,75 + 0,00833 = 40,75833°N pour la latitude, et 73 + 0,98333 + 0,00417 = 73,98750°O pour la longitude. Avec la convention de signe appliquée, ceux-ci deviennent +40,75833, −73,98750.

La norme EXIF n’impose pas de résolution spécifique pour les fractions rationnelles, ce qui peut conduire à une précision variable selon les appareils. Un smartphone peut stocker les secondes comme 3000/100 (30,00 secondes, impliquant une précision d’environ 0,3 mètre à l’équateur), tandis qu’une caméra de drone de niveau topographique pourrait stocker 300000/10000 (30,0000 secondes, impliquant une précision d’environ 0,03 mètre). Cependant, la précision GPS réelle de l’appareil limite généralement la résolution significative quelle que soit la précision stockée. Certains appareils photo grand public stockent les minutes et les secondes avec un dénominateur de 1 (valeurs entières uniquement), tronquant effectivement la précision sub-seconde et introduisant des erreurs de position de plusieurs mètres. Les analyseurs doivent gérer les valeurs rationnelles qui ne se résolvent pas en entiers exacts en calculant l’équivalent en virgule flottante à partir de la paire numérateur/dénominateur. Lors de la conversion, l’analyseur doit également gérer le cas limite où le dénominateur est zéro (une balise malformée) en traitant la valeur comme zéro et en signalant le problème de qualité des données.

Altitude GPS : référence, précision et considérations pratiques

L’altitude est stockée dans le GPS IFD en utilisant deux balises appariées : GPSAltitudeRef (0x0005) et GPSAltitude (0x0006). La balise de référence est un seul octet non signé avec deux valeurs définies : 0 indique que l’altitude est référencée au niveau moyen de la mer (MSL), et 1 indique que l’altitude est référencée au fond de la mer (en dessous du niveau de la mer). En pratique, pratiquement tous les appareils grand public et drones écrivent 0, signifiant la référence MSL. La valeur d’altitude elle-même est stockée comme un seul RATIONNEL (rationnel non signé) en mètres. Une valeur de 12345/100 représente 123,45 mètres au-dessus du niveau de la mer. Certains drones et appareils photo peuvent écrire l’altitude en pieds plutôt qu’en mètres, bien que la norme EXIF exige des mètres, cette incohérence d’unité doit être détectée par l’analyseur par analyse heuristique (si les altitudes dépassent 1 000 mètres dans des zones de basse élévation, la valeur est probablement en pieds et doit être convertie en divisant par 3,28084).

La relation entre l’altitude rapportée par GPS et la hauteur réelle de la caméra au-dessus du niveau du sol (AGL) est complexe et nécessite une interprétation attentive. Les récepteurs GPS calculent l’altitude en utilisant le modèle d’ellipsoïde WGS84, qui approxime la Terre comme un sphéroïde aplati avec un demi-grand axe a = 6 378 137,0 mètres et un aplatissement f = 1/298,257223563. La hauteur ellipsoïdale rapportée par GPS est la distance de la surface de l’ellipsoïde WGS84 au récepteur, pas la distance du niveau moyen de la mer. Le niveau moyen de la mer réel (le géoïde) s’écarte de l’ellipsoïde WGS84 jusqu’à ±100 mètres dans différentes parties du monde en raison des variations du champ gravitationnel terrestre. L’ondulation du géoïde à un emplacement spécifique peut être obtenue à partir des modèles géopotentiels EGM96 (Earth Gravitational Model 1996), EGM2008 ou EGM2020. Pour convertir la hauteur ellipsoïdale GPS en hauteur orthométrique (hauteur au-dessus du niveau moyen de la mer), il faut appliquer une correction de géoïde en utilisant la formule : Hauteur orthométrique (MSL) ≈ Hauteur ellipsoïdale − Ondulation du géoïde. Par exemple, à un emplacement dans l’Atlantique Nord où l’ondulation du géoïde est de −25 mètres, une hauteur ellipsoïdale rapportée par GPS de 100 mètres correspond à une hauteur orthométrique d’environ 125 mètres au-dessus du MSL.

La plupart des fabricants d’appareils photo et de smartphones n’appliquent pas cette correction de géoïde avant d’écrire la balise GPSAltitude. Au lieu de cela, ils écrivent la hauteur ellipsoïdale brute du récepteur GNSS. Cela signifie que l’altitude stockée dans EXIF peut différer de la véritable altitude MSL de plusieurs dizaines de mètres selon l’emplacement géographique. Les drones DJI sont une exception notable : ils écrivent l’altitude relative (hauteur au-dessus du point de décollage) dans des champs de métadonnées XMP propriétaires (drone-dji:RelativeAltitude) tandis que le champ standard GPSAltitude EXIF contient la hauteur ellipsoïdale du récepteur GNSS du contrôleur de vol. L’altitude relative, dérivée du capteur barométrique fusionné avec des capteurs ultrasoniques ou infrarouges orientés vers le bas, est beaucoup plus précise pour la détermination AGL (typiquement ±0,1–0,5 mètre) par rapport à l’altitude ellipsoïdale GPS (typiquement ±5–15 mètres). Les logiciels de photogrammétrie tels que Agisoft Metashape et Pix4Dmapper tiennent compte de ces différences en appliquant leur propre modèle de géoïde pendant le traitement, utilisant typiquement EGM96 par défaut à moins que l’utilisateur ne spécifie un géoïde alternatif.

La précision de l’altitude GPS est significativement moins bonne que la précision horizontale dans la plupart des conditions. Les récepteurs GPS grand public typiques atteignent une précision horizontale de 3–5 mètres mais une précision verticale de 5–15 mètres (confiance de 95 %) en raison de l’effet de dilution géométrique de précision (GDOP), les satellites sont regroupés dans l’hémisphère du ciel et fournissent une géométrie de triangulation verticale plus pauvre que l’horizontale. La composante verticale du DOP (VDOP) est typiquement 1,5–2,5 fois plus grande que la composante horizontale (HDOP) pour la même constellation satellite. Les drones équipés RTK réduisent cela à 3–5 centimètres verticalement, toujours moins bien que la précision horizontale RTK de 1–2 centimètres. Les altimètres barométriques, présents dans la plupart des drones DJI et de nombreux smartphones, peuvent partiellement compenser en fusionnant les lectures de pression barométrique avec les données d’altitude GPS via un filtre de Kalman, améliorant la précision verticale à court terme à environ 1–2 mètres. Cependant, l’altitude barométrique dérive avec les changements de pression météorologique (environ 1 mètre par 0,12 hPa de changement de pression) et nécessite un recalibrage périodique contre le GPS. Pour les applications d’inspection d’aérodrome, l’altitude AGL est typiquement plus pertinente que l’altitude MSL, car la distance entre la caméra et la surface de la chaussée affecte directement la résolution des pixels et la précision du dimensionnement des défauts. Les logiciels peuvent convertir GPSAltitude en AGL en soustrayant l’élévation du terrain local obtenue à partir d’un modèle numérique d’élévation (DEM) ou des données d’élévation de piste relevées de l’aérodrome publiées dans l’AIP OACI.

Horodatage GPS : normalisation UTC

La composante temporelle du verrouillage GPS est enregistrée sur deux balises : GPSTimeStamp (0x0007) et GPSDateStamp (0x001d). La balise de temps stocke le temps universel coordonné (UTC) sous forme de trois valeurs RATIONNELLES : heures, minutes et secondes. La balise de date stocke la date calendaire comme une chaîne ASCII de 11 caractères au format AAAA:MM:JJ (par ex., "2025:11:18"). Parce que le caractère deux-points est un séparateur de date EXIF standard, l’horodatage UTC combiné se lit naturellement comme 2025:11:18 14:30:15 pour 14 h 30 min 15 s UTC le 18 novembre 2025. La spécification EXIF exige explicitement que les deux balises soient enregistrées en UTC, directement dérivées des horloges atomiques des satellites GPS qui sont référencées au temps universel coordonné (UTC) avec des corrections de seconde intercalaire appliquées par le segment de contrôle au sol GPS. Le temps GPS lui-même n’est pas exactement l’UTC, le temps GPS n’inclut pas les secondes intercalaires et est actuellement (en 2025) 18 secondes en avance sur l’UTC. Le récepteur GPS gère cette conversion en interne, écrivant l’UTC dans les balises EXIF.

La séparation de la date et de l’heure en deux balises distinctes avec des types de données différents (chaîne ASCII vs. tableau RATIONNEL) est un artefact historique de la conception EXIF. La plupart des bibliothèques logicielles et des outils synthétisent une balise combinée GPSDateTime pour plus de commodité, ExifTool crée cette balise composite automatiquement, tandis que les bibliothèques Python comme Pillow et exifread nécessitent une concaténation manuelle. Lors de la lecture des données GPS par programmation, le développeur doit assembler la chaîne de date et les rationnels de temps en un seul objet datetime. Les valeurs rationnelles pour les heures, les minutes et les secondes peuvent être fractionnaires : une photo prise à 14 heures, 30 minutes et 15,5 secondes UTC stockerait 14/1, 30/1, 155/10. Les secondes fractionnaires peuvent représenter une précision sub-milliseconde lorsque le récepteur GPS fonctionne à un taux de mise à jour de 10 Hz (100 ms entre les échantillons), bien que la plupart des récepteurs grand public limitent la sortie à une résolution de 0,1 seconde dans les phrases NMEA RMC.

Une limitation critique de l’horodatage GPS EXIF est qu’il enregistre le temps du verrouillage GPS, qui peut ne pas correspondre exactement au moment où l’obturateur a été déclenché. Les pipelines de firmware des caméras impliquent une séquence : acquérir le verrouillage GPS, calculer la position, attendre le déclenchement de l’obturateur, capturer l’image, écrire l’EXIF. L’horodatage GPS écrit est le temps du dernier verrouillage de position valide, qui pourrait avoir plusieurs centaines de millisecondes à plusieurs secondes selon le taux de mise à jour GPS (typiquement 1 Hz pour les appareils grand public, 5–10 Hz pour les contrôleurs de vol de drone). Ce décalage temporel est généralement négligeable pour les applications de cartographie mais peut devenir significatif pour les scénarios d’inspection à grande vitesse où la plateforme de caméra se déplace à 10–15 m/s (36–54 km/h). À 15 m/s, un délai de mise à jour GPS de 1 seconde introduit une erreur de position le long de la trajectoire de 15 mètres. Pour les systèmes RTK avec des taux de mise à jour de 5–10 Hz et une latence de 100–200 ms, l’erreur le long de la trajectoire se réduit à 1,5–3 mètres à la même vitesse. Les logiciels de traitement peuvent compenser cette latence en recoupant l’horodatage de capture d’image (EXIF DateTimeOriginal, balise 0x9003) avec le flux de télémétrie et en interpolant la position GPS au moment exact du déclenchement de l’obturateur en utilisant une interpolation avant/arrière entre les points de cheminement de télémétrie adjacents.

L’horodatage GPS sert également une fonction médico-légale critique : il permet le recoupement entre les données EXIF d’image et les sources de télémétrie externes. Lorsque le GPS EXIF manque dans une image (par ex., lorsque les fichiers RAW manquent de GPS intégré parce que le fabricant stocke la localisation dans un fichier XMP sidecar), l’horodatage peut être utilisé pour interpoler la position de la caméra à partir d’un journal de trace GPS enregistré par un appareil séparé. C’est le principe derrière le géotaggage post-hoc : un enregistreur GPS enregistre des positions horodatées, et le logiciel fait correspondre le temps de capture de chaque photo aux horodatages de l’enregistreur les plus proches pour attribuer des coordonnées. L’algorithme de correspondance utilise typiquement une recherche du plus proche voisin avec un seuil de delta de temps maximal (par ex., 2 secondes). Si plusieurs points de cheminement de télémétrie tombent dans le seuil, l’interpolation bilinéaire entre les deux horodatages les plus proches donne une précision de position sub-seconde. Ce repli s’applique lorsque le GPS EXIF est absent, à condition qu’une source de temps synchronisée puisse être établie entre la caméra et l’enregistreur GPS, vérifiée en comparant le décalage EXIF DateTimeOriginal par rapport à la référence de temps GPS.

Galerie de photos de smartphone montrant les métadonnées EXIF et les coordonnées GPS avec des épingles de carte

Datum GPS : WGS84 comme référence universelle

La balise GPSMapDatum (0x0012) enregistre le datum géodésique, le système de référence de coordonnées, utilisé pour le calcul de position GPS. La spécification EXIF impose que cette balise contienne la chaîne ASCII "WGS-84" (World Geodetic System 1984) lorsque le récepteur GPS utilise le datum GPS standard. Dans pratiquement tous les appareils photo grand public, smartphones et drones, la valeur est exactement "WGS-84" parce que le système de positionnement global est intrinsèquement référencé à ce datum. Les satellites GPS diffusent des données d’éphémérides en coordonnées WGS84, et tous les récepteurs GNSS de qualité grand public calculent les positions en WGS84 par défaut. Cependant, le format de balise permet n’importe quelle chaîne ASCII, et certains appareils écrivent des variations : "WGS84" (sans trait d’union), "WGS 84" (espace) ou "WGS-1984". Chacune de ces variantes doit être traitée comme équivalente à WGS84 par l’analyseur, bien qu’une validation stricte contre la chaîne de spécification puisse les signaler comme non standard.

WGS84 est un système de coordonnées géocentrique, fixe par rapport à la Terre (ECEF) maintenu par la National Geospatial-Intelligence Agency (NGA) des États-Unis. Il définit trois composants : un ellipsoïde de référence (demi-grand axe a = 6 378 137,0 mètres, aplatissement f = 1/298,257223563), un modèle gravitationnel (EGM96) et un ensemble de paramètres de transformation le reliant au cadre de référence terrestre international (ITRF). La réalisation actuelle est WGS84(G2296), mise à jour en 2024, qui s’aligne sur ITRF2020 à moins de 1 centimètre. Ce niveau de raffinement est sans importance pour le GPS grand public (qui a une précision au niveau du mètre) mais compte pour les systèmes RTK et cinématiques post-traités (PPK) fonctionnant à une précision centimétrique. Les réalisations de WGS84 ont évolué à travers G730 (1994), G873 (1997), G1150 (2001), G1674 (2012), G1762 (2013), G2139 (2021) et G2296 (2024), chaque réalisation successive améliorant l’alignement avec l’ITRF. Pour les applications de cartographie de précision, la date de réalisation doit être prise en compte : les données collectées avec un système RTK en 2025 utilisant la réalisation G2296 sont plus cohérentes avec les réseaux de contrôle topographique modernes que les données collectées avec un récepteur de l’ère G1150.

La différence entre WGS84 et d’autres datums peut être substantielle. Les datums locaux tels que le European Terrestrial Reference System 1989 (ETRS89), le North American Datum 1983 (NAD83) et le Geocentric Datum of Australia 2020 (GDA2020) diffèrent de WGS84 jusqu’à plusieurs mètres dans certaines régions. Les datums locaux plus anciens comme l’Ordnance Survey Great Britain 1936 (OSGB36) ou le Tokyo Datum diffèrent de centaines de mètres. Lorsque les coordonnées GPS EXIF sont utilisées dans un système SIG configuré pour un datum différent, les positions cartographiées seront systématiquement décalées à moins qu’une transformation de datum ne soit appliquée. Les paramètres de transformation courants incluent les transformations de Helmert à trois paramètres (delta X, delta Y, delta Z) ou à sept paramètres (delta X, delta Y, delta Z, plus trois angles de rotation et un facteur d’échelle). La bibliothèque PROJ (proj4) fournit ces transformations pour des milliers de paires de datums. La balise GPSMapDatum fournit les informations nécessaires pour appliquer la transformation correcte, bien qu’en pratique la plupart des pipelines de traitement d’image supposent WGS84 et procèdent sans vérifier la valeur de la balise. Les logiciels d’inspection doivent valider la chaîne de datum et alerter l’utilisateur si un datum non-WGS84 est détecté, offrant une reprojection vers le système de référence de coordonnées cible.

Pour les applications d’inspection d’aérodrome, la cohérence du datum est essentielle. L’Annexe 14 de l’OACI, Volume I (Conception et exploitation des aérodromes) spécifie que les points de référence d’aérodrome (ARP) et les seuils de piste doivent être référencés au datum World Geodetic System 1984 (WGS84). Le Doc 9674 de l’OACI, le manuel World Geodetic System, 1984 (WGS-84), fournit les normes de mise en œuvre pour WGS84 dans l’aviation, y compris la précision requise pour les données de relevé d’aérodrome. Le manuel spécifie que les coordonnées de relevé d’aérodrome doivent être précises à moins de 1 mètre horizontalement et 0,5 mètre verticalement pour les pistes d’approche de précision (Catégorie II/III), et à moins de 5 mètres horizontalement pour les pistes non précision. Ces exigences de précision informent directement la qualité GPS acceptable pour les photos d’inspection : le positionnement RTK ou PPK est requis pour les inspections d’aérodrome de Catégorie II/III, tandis que le GPS de drone grand public peut suffire pour les aérodromes non précision où les exigences de précision de position absolue sont assouplies. Les logiciels d’inspection doivent interpréter toutes les coordonnées GPS EXIF extraites des photos d’inspection dans le datum WGS84 et peuvent éventuellement reprojeter vers des systèmes de référence de coordonnées locaux (par ex., zones UTM) pour les mesures basées sur la surface telles que la cartographie des polygones de dégradation de chaussée.

Extraction des données GPS des images

L’extraction des métadonnées GPS des fichiers image est un processus bien établi soutenu par de nombreux outils logiciels et bibliothèques de programmation. L’outil le plus complet est ExifTool de Phil Harvey, une application en ligne de commande basée sur Perl qui lit et écrit les métadonnées EXIF, GPS, IPTC, XMP et spécifiques au fabricant depuis pratiquement tous les formats d’image existants. ExifTool peut extraire les données GPS d’un seul fichier ou traiter par lots des milliers d’images, produisant des résultats dans divers formats y compris texte brut, CSV, JSON, XML et XMP. Une commande d’extraction typique pour les photos d’inspection par drone est exiftool -filename -gpslatitude -gpslongitude -gpsaltitude -gpsdatetime -gpsimgdirection -gpshpansionerror -csv /path/to/images/. Le drapeau -csv produit une sortie séparée par des virgules qui peut être importée dans un logiciel SIG, des tableaux de bord de cartographie ou des logiciels d’inspection pour le positionnement automatisé des photos. ExifTool gère la conversion DMS en décimal automatiquement lorsque le drapeau -n est utilisé (par ex., -gpslatitude# -n sort la latitude comme une valeur décimale signée prête pour l’insertion dans une base de données géospatiale).

Pour les développeurs Python, plusieurs bibliothèques fournissent des capacités d’extraction GPS EXIF. La bibliothèque Pillow (fork PIL) offre la méthode _getexif() sur les objets image, retournant un dictionnaire d’identifiants de balises mappés aux valeurs. Cependant, Pillow ne convertit pas automatiquement le format rationnel DMS en degrés décimaux, les développeurs doivent implémenter la formule de conversion manuellement en utilisant le dictionnaire de mappage GPSTAGS fourni par la bibliothèque. La bibliothèque exifread fournit un analyseur plus robuste qui gère les cas limites (balises manquantes, valeurs malformées, problèmes d’endianness) mieux que Pillow. La bibliothèque pyexif enveloppe la fonctionnalité ExifTool pour les environnements Python. Pour les flux de travail géospatiaux, la bibliothèque rasterio peut lire les métadonnées GPS des fichiers raster géoréférencés, bien qu’elle attende typiquement que les données soient déjà dans un format SIG standard plutôt que de l’EXIF brut.

Outil / BibliothèqueLangagePoints fortsLimitations
ExifToolPerl (autonome)Le plus complet, traitement par lots, tous les formatsLigne de commande uniquement, nécessite une installation
Pillow (fork PIL)PythonIntégré, aucune dépendancePas de conversion DMS automatique, gestion limitée des cas limites
exifreadPythonMeilleure gestion des erreurs, accès aux balises brutesPlus lent que Pillow pour les grands lots
GEXIFC++Performance native rapideAxé Linux, documentation limitée
Exiv2C++Multiplateforme, API de bibliothèqueNécessite une compilation, API plus complexe
mdextractorSDK mobileExtraction sur appareil pour iOS/AndroidSpécifique à la plateforme, limité aux applications mobiles

Le processus d’extraction varie selon le format d’image. Les fichiers JPEG stockent l’EXIF dans le marqueur APP1 (Application Segment 1) immédiatement après le marqueur SOI (Start of Image) au décalage 0xFFE1. Les fichiers TIFF intègrent l’EXIF dans la première structure IFD. Les formats RAW (CR2, NEF, ARW, DNG) stockent l’EXIF dans un conteneur de type TIFF à un décalage connu de l’en-tête de fichier. Les fichiers HEIC/HEIF (format par défaut d’Apple depuis iOS 11) intègrent l’EXIF dans une boîte mime dans le conteneur ISO Base Media File Format, spécifiquement dans la hiérarchie de boîtes moov > meta > ilst. Les images WebP stockent l’EXIF dans le bloc EXIF suivant les données VP8/VP8L. Dans tous les cas, le GPS IFD est localisé en suivant les pointeurs de l’IFD EXIF principal via la balise 0x8825, puis en lisant le sous-IFD GPS séquentiellement. Chaque format nécessite des calculs de décalage d’octets spécifiques : les marqueurs APP1 JPEG doivent être localisés en scannant l’octet de marqueur 0xFFE1, HEIC nécessite l’analyse de la hiérarchie de boîtes ISOBMFF, les formats RAW nécessitent des décalages spécifiques au fabricant qui varient entre Canon CR2, Nikon NEF, Sony ARW et Adobe DNG.

Précision GPS : appareils photo grand public, smartphones et drones RTK

La précision positionnelle des données GPS EXIF varie de trois ordres de grandeur selon l’appareil de capture et ses capacités de récepteur GNSS. Comprendre ces niveaux de précision est essentiel pour déterminer le cas d’utilisation d’inspection approprié et pour définir des attentes réalistes concernant la précision de localisation des défauts dans les rapports d’inspection cartographiques.

Les smartphones grand public (iPhone, Samsung Galaxy, Google Pixel) utilisent des récepteurs GNSS multi-constellation prenant en charge GPS, GLONASS, Galileo et BeiDou. Les modèles phares depuis 2020 utilisent des récepteurs double fréquence (L1 + L5 pour GPS, E1 + E5a pour Galileo), qui annulent les erreurs de délai ionosphérique en comparant les temps d’arrivée du signal à deux fréquences différentes. Le délai ionosphérique est proportionnel à 1/f², donc comparer L1 (1575,42 MHz) et L5 (1176,45 MHz) permet au récepteur de calculer et supprimer le délai. La précision typique dans des conditions de ciel ouvert est de 3–5 mètres horizontalement (confiance de 95 %). Les canyons urbains réduisent cela à 5–15 mètres en raison des réflexions multitrajets sur les bâtiments. La précision GPS des smartphones se dégrade significativement près des structures métalliques, des lignes électriques et du feuillage dense. Le GPS intégré est adéquat pour l’organisation générale des photos et la cartographie approximative mais insuffisant pour la localisation précise des défauts sur une surface de chaussée d’aérodrome où une erreur de 3 mètres pourrait placer une fissure du mauvais côté de l’axe de piste. Les smartphones souffrent également de problèmes de démarrage à chaud A-GPS où le premier verrouillage de position utilise des données en cache de la dernière position connue, parfois à plusieurs kilomètres.

Les drones grand public (série DJI Mini, Mavic Air, Phantom, Autel Nano) portent typiquement des récepteurs GNSS u-blox M8 ou M9 avec fonctionnement mono-fréquence L1 et support de plusieurs constellations (GPS + GLONASS + Galileo + BeiDou sur les puces M9). La précision horizontale varie de 1,5 à 5 mètres (CEP, Circular Error Probable), avec une précision verticale de 3 à 10 mètres. L’avantage clé du GPS de drone par rapport au GPS de smartphone est l’environnement de fonctionnement en ciel ouvert, les drones volent au-dessus des structures et du terrain qui causent des erreurs multitrajets sur les appareils au niveau du sol. De plus, les récepteurs GNSS de drone sont souvent couplés avec des données IMU (Inertial Measurement Unit) et barométriques via les algorithmes de fusion de capteurs du contrôleur de vol (typiquement un filtre de Kalman étendu), fournissant des estimations de position plus lisses et plus cohérentes que les puces GPS de smartphone autonomes. La précision GPS des drones bénéficie également de la qualité d’antenne supérieure et de son placement (typiquement une grande antenne patch en céramique sur le dessus du drone, loin des sources d’interférence).

Les drones d’entreprise avec RTK (DJI Matrice 4E, Mavic 3 Enterprise RTK, Autel EVO II RTK) atteignent une précision substantiellement meilleure grâce aux données de correction en temps réel. Le positionnement RTK (Real-Time Kinematic) utilise une station de base à un emplacement relevé connu pour calculer des corrections différentielles pour les erreurs de signal satellite causées par le délai atmosphérique, les erreurs d’orbite satellite et la dérive d’horloge. Ces corrections sont transmises au drone (le rover) via liaison radio (900 MHz, 2,4 GHz) ou connexion cellulaire (protocole NTRIP sur 4G/5G). Le rover applique les corrections à ses mesures de phase porteuse GNSS brutes et résout l’ambiguïté entière de phase porteuse pour atteindre une précision horizontale de 1–2 centimètres et une précision verticale de 3–5 centimètres. La clé de la précision RTK est la résolution de l’ambiguïté entière, déterminer exactement combien de cycles de phase porteuse existent entre le satellite et le récepteur. Une fois l’ambiguïté résolue (un processus appelé “fixation”), la précision centimétrique est maintenue tant que la liaison de données base-rover reste intacte et que le rover ne perd pas le verrouillage satellite. Le cinématique post-traité (PPK) atteint une précision similaire sans nécessiter de liaison de données en temps réel en enregistrant les observations de phase porteuse GNSS brutes sur la station de base et le rover pour un traitement après vol. Pour les applications d’inspection d’aérodrome, le RTK/PPK est la technologie recommandée pour tout défaut nécessitant un suivi de localisation précis (par ex., cartographier les fissures de chaussée à moins de 10 centimètres de leur position réelle pour la planification de maintenance et le suivi récurrent des défauts).

Type d’appareilPrécision horizontalePrécision verticaleCas d’utilisation typique
Smartphone (GPS standard)3–5 m5–15 mOrganisation de photos, journalisation de voyage
Smartphone (double fréquence, L1+L5)1–3 m3–8 mNavigation, suivi de fitness
Drone grand public (u-blox M8/M9)1,5–5 m3–10 mPhotographie récréative, cartographie générale
Drone avec RTK (Matrice 4E RTK)1–2 cm3–5 cmCartographie de niveau topographique, inspection de précision
PPK post-traitement1–2 cm3–5 cmIdentique au RTK, aucune liaison en temps réel nécessaire
GPS au sol de niveau topographique (Leica GS18)0,5–1 cm1–2 cmContrôle géodésique, établissement de points de contrôle au sol

La dilution de précision (DOP) est une métrique critique stockée dans la balise GPSDOP (0x000b) qui quantifie la qualité géométrique de la constellation satellite au moment du verrouillage. Quatre sous-types de DOP existent : GDOP (Géométrique, tous les composants), PDOP (Position, position 3D), HDOP (Horizontal, latitude/longitude) et VDOP (Vertical, altitude). La relation entre ceux-ci est PDOP² = HDOP² + VDOP². Les valeurs PDOP inférieures à 2 indiquent une excellente géométrie, 2–4 est bon, 4–6 est modéré, 6–8 est médiocre, et les valeurs supérieures à 8 sont considérées comme peu fiables. Un PDOP de 3 signifie que l’erreur de position est environ 3 fois l’erreur de portée équivalente utilisateur (UERE), qui est l’effet combiné des erreurs d’horloge satellite, d’éphémérides, ionosphériques et troposphériques, typiquement 2–4 mètres pour le GPS grand public. Lorsqu’elle est combinée avec la balise GPSHPositioningError, la DOP fournit une image complète de la qualité GPS qui peut être utilisée pour attribuer des niveaux de confiance à la géolocalisation de chaque photo d’inspection. Les photos avec GPSHPositioningError < 3 mètres et PDOP < 3 sont classées comme haute confiance, les photos avec erreur > 10 mètres ou PDOP > 6 sont signalées pour examen manuel.

Drone avec constellation de satellites GPS volant au-dessus d'une piste d'aéroport pour une cartographie de précision

Données GPS manquantes ou inexactes

Les données GPS EXIF sont fréquemment manquantes ou inexactes dans les flux de travail d’inspection réels, nécessitant des stratégies de repli robustes. Les causes les plus courantes de données GPS manquantes incluent : l’appareil photo ou le drone a été allumé à l’intérieur où les signaux satellite ne peuvent pas pénétrer (le GPS nécessite une ligne de vue vers au moins 4 satellites pour un verrouillage 3D, et les matériaux de construction tels que le béton, les toits métalliques et le verre Low-E atténuent les signaux GPS de 10–30 dB), les services de localisation ont été désactivés sur l’appareil pour des raisons de confidentialité ou d’économie de batterie, la photo a été prise en mode Avion qui désactive le récepteur GNSS sur la plupart des smartphones, l’image a été modifiée ou ré-enregistrée par un logiciel qui supprime les métadonnées (les paramètres d’exportation par défaut d’Adobe Lightroom suppriment le GPS par défaut, certaines plateformes de médias sociaux suppriment tout l’EXIF, les fonctions de capture d’écran n’incluent jamais le GPS), le format d’image ne prend pas en charge l’EXIF (certains formats RAW propriétaires d’appareils photo plus anciens, BMP, GIF), ou l’appareil photo manque complètement de récepteur GPS (la plupart des appareils photo reflex et hybrides, même les modèles modernes comme le Canon R5 ou le Nikon Z8, nécessitent un accessoire GPS externe ou une connexion smartphone pour le géotaggage). L’analyse statistique des collections de photos grand public suggère que 30–40 % des photos de smartphone manquent de données GPS, tandis que les photos de drone des appareils DJI manquent de GPS moins de 5 % du temps lorsqu’ils volent à l’extérieur.

Les données GPS inexactes présentent des défis distincts. La dérive GPS se produit lorsque le récepteur utilise des coordonnées en cache d’un emplacement précédent pendant la phase d’acquisition satellite, causant les premières photos d’une session à porter des positions incorrectes. Cela est exacerbé par le GPS assisté (A-GPS) dans les smartphones, qui utilise le positionnement par tour de téléphonie cellulaire et Wi-Fi pour fournir une position initiale approximative pendant que les signaux satellite sont acquis, la position initiale peut être décalée de plusieurs centaines de mètres si l’appareil a bougé depuis le dernier téléchargement de données d’assistance A-GPS. Les erreurs multitrajets surviennent lorsque les signaux GPS se réfléchissent sur les bâtiments, les hangars ou le terrain avant d’atteindre le récepteur, causant la position calculée à être décalée de l’emplacement réel de 10–50 mètres. Le multitrajets est particulièrement problématique dans les environnements d’aérodrome où les grands hangars métalliques et les réservoirs de stockage de carburant créent de fortes réflexions de signal. Les délais ionosphériques et troposphériques causent des erreurs systématiques qui varient avec les conditions atmosphériques locales et l’activité solaire, avec des erreurs de pire cas se produisant pendant le maximum solaire (cycle de 11 ans) et près de l’équateur géomagnétique. La disponibilité sélective (la dégradation intentionnelle de la précision GPS civile, active de 1991 à 2000) n’est plus en vigueur, mais ses effets d’erreurs horizontales de 50–100 mètres peuvent être reproduits par le multitrajets ou un faible nombre de satellites.

Les stratégies de détection et d’atténuation incluent : la validation croisée contre les journaux de vol (fichiers DJI DAT ou TXT) qui enregistrent les positions GPS horodatées du contrôleur de vol à une fréquence plus élevée (5–10 Hz) et avec une meilleure précision que le GPS de la caméra (1 Hz), l’interpolation d’horodatage entre les verrouillages GPS connus bons d’un appareil enregistreur séparé, la correction manuelle des coordonnées via une interface cartographique interactive où l’inspecteur fait glisser les photos vers leur position correcte sur la carte d’aérodrome, les points de contrôle au sol (GCP) placés à des emplacements relevés dans la zone d’inspection pour fournir une référence de position absolue, un minimum de 3 GCP par zone d’inspection permet la correction par transformation affine de toutes les coordonnées de photo, la priorisation de la précision relative où les relations spatiales entre les photos d’inspection sont maintenues même si les coordonnées absolues ont un décalage systématique, permettant des mesures de distance et de surface précises dans l’ensemble de données même lorsque le positionnement global est décalé.

Les inadéquations de datum GPS représentent un problème de précision subtil mais impactant. Bien que la balise GPSMapDatum lise presque toujours "WGS-84", certains appareils écrivent des valeurs non standard ou omettent complètement la balise. Les drones fabriqués en Chine peuvent écrire "WGS84" (sans trait d’union), "CGCS2000" (le Chinese Geodetic Coordinate System 2000, qui diffère de WGS84 jusqu’à 0,5 mètre en Chine) ou "BDCS" (BeiDou Coordinate System). Les récepteurs GLONASS russes peuvent être par défaut sur "PZ-90.11" (Parametry Zemli 1990, différant de WGS84 jusqu’à 2 mètres). Lorsque le datum dans EXIF diffère de WGS84, appliquer les coordonnées directement sans transformation peut introduire des décalages systématiques de plusieurs mètres à des centaines de mètres selon la paire de datums. Les analyseurs doivent vérifier la chaîne de datum et appliquer la transformation appropriée (par ex., en utilisant la bibliothèque PROJ ou la chaîne proj4) avant d’utiliser les coordonnées pour la cartographie. La transformation de CGCS2000 à WGS84 nécessite typiquement une transformation nulle pour la plupart des applications (les deux datums sont fonctionnellement équivalents à une précision au niveau du mètre), tandis que PZ-90.11 à WGS84 nécessite un décalage à trois paramètres d’environ (0,07 m, −0,00 m, −0,01 m). Les logiciels d’inspection doivent valider la balise GPSMapDatum et appliquer les transformations de datum lorsque nécessaire, alertant l’inspecteur de toute divergence.

GPS dans les trames vidéo

Les fichiers vidéo présentent un défi fondamentalement différent pour les métadonnées GPS par rapport aux images fixes. Bien qu’un fichier vidéo puisse contenir un seul bloc EXIF au niveau de l’en-tête de fichier (typiquement écrit au début de l’enregistrement), cela enregistre seulement la localisation et l’heure de début de l’enregistrement, pas la position de chaque trame individuelle. Pour les applications d’inspection où la vidéo est le principal moyen de capture (courant pour les relevés de condition de piste effectués à 30–60 km/h où s’arrêter pour photographier chaque défaut individuel est impraticable), les données GPS par trame sont essentielles pour cartographier les défauts de chaussée à leurs emplacements corrects. Une vidéo de 30 secondes à 30 images par seconde capture 900 trames, chacune nécessitant une coordonnée GPS précise pour permettre la localisation des défauts sur la carte d’inspection.

Les caméras GoPro abordent cela à travers le GoPro Metadata Format (GPMF) , une norme de télémétrie open source intégrée dans le conteneur MP4. GPMF stocke des coordonnées GPS synchronisées dans le temps, des données d’accéléromètre, des lectures de gyroscope, la température et d’autres données de capteur à haute fréquence (typiquement 18 Hz pour le GPS sur GoPro HERO5 et modèles ultérieurs, 50 Hz pour l’accéléromètre/gyroscope). La piste GPMF est stockée dans une boîte MP4 privée avec encodage KLV (Key-Length-Value) et peut être extraite en utilisant la bibliothèque open source gpmf-parser de GoPro ou via FFmpeg avec le drapeau -extract_gpmf. Chaque échantillon GPS dans le flux GPMF inclut la latitude, la longitude, l’altitude, la vitesse, la vitesse 3D et l’horodatage relatif à l’horloge vidéo. La spécification GPMF prend en charge plusieurs types de capteurs : GPS5 (latitude, longitude, altitude, vitesse, vitesse 3D), GPSU (temps UTC), ACCL (accéléromètre), GYRO (gyroscope) et TMPC (température). Les logiciels de traitement peuvent attribuer des coordonnées GPS de type EXIF à chaque trame vidéo extraite pendant l’échantillonnage de trames en interpolant entre les échantillons GPS GPMF (à 18 Hz) pour correspondre au taux de trames vidéo (29,97 ou 60 images par seconde).

Les drones DJI utilisent une approche différente : les fichiers sidecar SRT (SubRip subtitle) enregistrés aux côtés des fichiers vidéo. Le fichier SRT contient des entrées de télémétrie horodatées incluant les coordonnées GPS, l’altitude, la vitesse, la distance et l’orientation de la nacelle, formatées comme des sous-titres qui peuvent être superposés sur la vidéo. Chaque entrée SRT a le format : index de sous-titre, horodatage (HH:MM:SS,mmm) et une charge utile multi-lignes de valeurs de télémétrie. Par exemple, une entrée pourrait lire : 1\n00:00:05,000 --> 00:00:05,500\nGPS (52.1234, -0.5678)\nALT 123.4m\nSPD 15.2m/s\nGMB 45.0°. La fréquence de sortie SRT correspond au taux de trames vidéo (typiquement 29,97 ou 60 images par seconde) lorsque le taux de mise à jour GPS du drone (5–10 Hz du contrôleur de vol) est sous-échantillonné sur la chronologie vidéo. Le format SRT est lisible par l’homme mais moins efficace que les formats de télémétrie binaires, produisant des fichiers d’environ 50–100 Ko par minute de vidéo. Des outils comme DJI Flight Record Viewer et dji-drone-metadata-embedder peuvent fusionner les données GPS SRT dans l’en-tête EXIF du fichier vidéo pour la compatibilité avec les lecteurs EXIF standard, générant une piste GPX à partir des données SRT et utilisant ExifTool pour l’intégrer.

Pour les flux de travail d’inspection professionnels, les fichiers JSON de piste fournissent le format de télémétrie GPS le plus flexible. Un fichier JSON de piste est une structure de données géospatiales qui contient un tableau de points de cheminement GPS horodatés avec une précision milliseconde. Chaque point de cheminement inclut la latitude, la longitude, l’altitude (MSL et AGL), la vitesse, le cap, l’estimation de précision horizontale, l’estimation de précision verticale, le nombre de satellites et l’indicateur de qualité de verrouillage. La structure JSON prend en charge des intervalles d’échantillonnage arbitraires (typiquement 100–200 millisecondes pour une télémétrie de 5–10 Hz) et peut être générée à partir de n’importe quelle source : journaux de vol DJI (DAT/TXT), extraction GPMF GoPro, enregistrements de station de base RTK (RTCM3), capture de flux NMEA ou saisie manuelle de coordonnées. Le JSON de piste permet une géolocalisation précise trame par trame de la vidéo en interpolant entre les points de cheminement en utilisant l’horodatage de présentation (PTS) de la trame vidéo. L’interpolation linéaire entre les deux points de cheminement les plus proches est suffisante pour la plupart des applications, bien que l’interpolation par spline cubique fournisse des trajectoires plus lisses pour les chemins de vol courbes.

Utilisation dans la cartographie d’inspection

Les logiciels d’inspection utilisent typiquement les données GPS EXIF comme source de géolocalisation principale pour cartographier les photographies d’inspection sur les cartes d’aérodrome. Un flux de travail d’extraction typique traite les fichiers image entrants par étapes : d’abord, la détection de format détermine si le fichier est JPEG, TIFF, DNG, HEIC ou un autre type pris en charge en fonction des octets magiques du fichier (4–8 premiers octets de l’en-tête de fichier). Deuxièmement, l’analyseur EXIF lit le GPS IFD et extrait toutes les balises disponibles, gérant l’endianness (ordre d’octets big-endian Motorola ou little-endian Intel) et les décalages d’en-tête TIFF. Troisièmement, le module de conversion de coordonnées transforme les valeurs rationnelles DMS en degrés décimaux signés dans le datum WGS84. Quatrièmement, un module d’évaluation de qualité évalue les données extraites en utilisant GPSHPositioningError, DOP, le nombre de satellites (GPSSatellites), le statut de verrouillage (GPSStatus) et les contrôles de cohérence temporelle contre les photos adjacentes dans le même ensemble d’inspection, les photos prises dans le même vol avec des coordonnées GPS sautant de plus de 100 mètres entre les trames successives (à des intervalles de 1 seconde) sont signalées comme aberrantes. Les photos passant le seuil de qualité sont placées sur la carte d’inspection à leurs coordonnées GPS. Les photos échouant aux contrôles de qualité sont signalées pour examen manuel ou correction basée sur la télémétrie.

Un rapport d’inspection cartographique peut afficher chaque photo d’inspection comme une épingle cliquable à sa position géolocalisée sur une carte d’aérodrome ou un fond d’imagerie satellite. L’inspecteur peut naviguer sur la carte pour examiner les photos dans leur contexte spatial, identifiant les grappes de dégradation de chaussée, les dommages aux dispositifs d’éclairage ou les emplacements de FOD (Foreign Object Debris). La précision du placement des épingles dépend directement de la qualité GPS EXIF : les photos précises RTK (erreur de 1–2 cm) apparaissent à leur position réelle de chaussée avec un rayon d’épingle de 2 pixels, tandis que les photos de drone grand public (erreur de 1–5 m) apparaissent à leur position approximative avec un cercle d’incertitude dessiné autour de chaque épingle proportionnel à la valeur GPSHPositioningError. Cet indicateur visuel de confiance aide l’inspecteur à comprendre quelles photos peuvent être fiables pour la localisation précise des défauts (à moins de 10 cm de la position réelle) et lesquelles nécessitent une vérification sur site (erreur > 1 mètre). Il peut également inclure un tableau récapitulatif de qualité GPS listant le minimum, le maximum, la moyenne et l’écart type de GPSHPositioningError sur toutes les photos d’inspection, fournissant une évaluation en un coup d’œil de la qualité globale de géolocalisation de l’inspection.

Pour les missions d’inspection menées sur de grands aérodromes (pistes de 3 000–4 000 mètres, réseaux de voies de circulation s’étendant sur plus de 10 kilomètres, zones d’aire de trafic de plus de 50 hectares), les données GPS EXIF permettent l’organisation automatisée des photos par zone géographique. Les photos peuvent être regroupées par piste, voie de circulation ou section d’aire de trafic en fonction de leurs coordonnées GPS par rapport au système de référence d’aérodrome défini dans l’Annexe 14 de l’OACI. Le regroupement spatial utilise un algorithme point-dans-polygone : la coordonnée GPS de chaque photo est testée contre les polygones de zone d’aérodrome (définis en coordonnées WGS84 à partir des données SIG officielles de l’aérodrome ou des coordonnées publiées de l’AIP OACI). L’inspecteur peut ensuite filtrer les photos par zone et examiner toutes les images pour un seuil de piste spécifique, ce qui supprime le tri manuel.

Les inspections basées sur la vidéo font voler un drone sur un chemin de vol programmé au-dessus de l’aérodrome tout en enregistrant une vidéo 4K ou 5K. Les trames vidéo sont extraites à des intervalles configurables, et chaque trame extraite hérite des coordonnées GPS du point de cheminement de télémétrie le plus proche dans le fichier JSON de piste ou le flux GPMF GoPro, avec interpolation. L’intervalle d’extraction de trames est choisi pour donner le chevauchement d’image avant nécessaire à l’assemblage d’orthomosaïque. Le résultat est une séquence dense de trames géolocalisées qui peuvent être assemblées en une orthomosaïque continue ou examinées trame par trame dans le contexte de la carte.

Pour les rapports de conformité d’aérodrome, toutes les photos d’inspection doivent être référencées aux coordonnées déclarées de l’aérodrome telles que définies dans la publication d’information aéronautique (AIP) de l’OACI. Les rapports portent typiquement les coordonnées GPS par photo en degrés décimaux WGS84 (latitude et longitude à 6 décimales, fournissant une précision d’environ 0,1 mètre), l’altitude au-dessus du MSL en mètres et la direction de l’image (GPSImgDirection par rapport au nord vrai, corrigée pour la déclinaison magnétique en utilisant le World Magnetic Model). Les indicateurs de qualité des métadonnées, tels qu’un succès/échec pour la validité du verrouillage GPS, le DOP, l’erreur et le datum, aident à tracer le GPS EXIF brut à travers les étapes de traitement jusqu’au rapport final.

Considérations pratiques pour les opérations sur le terrain

Les équipes d’inspection sur le terrain bénéficient de la compréhension de plusieurs aspects pratiques du comportement du GPS EXIF pour garantir la qualité des données. L’initialisation GPS avant vol est critique : les drones doivent être allumés en ciel ouvert et autorisés à atteindre un verrouillage GPS 3D (indiqué par GPSStatus = A et GPSMeasureMode = 3) avant de commencer le vol d’inspection. Cela nécessite typiquement 30–90 secondes pour les drones grand public, plus rapide pour les systèmes équipés RTK (15–30 secondes). L’application DJI Go/Pilot affiche l’indicateur de statut GPS : icône verte avec un nombre de satellites ≥ 10 et une force de signal GPS ≥ 4/5 barres indique une qualité GPS suffisante pour la photographie d’inspection. Prendre des photos pendant la phase d’acquisition GPS (30 premières secondes après l’allumage) résulte en des coordonnées de la dernière position connue du drone, qui pourrait être le point de décollage d’un vol précédent ou une position en cache de la dernière localisation du drone avant l’extinction, potentiellement à des kilomètres du site d’inspection réel.

La synchronisation temporelle entre la caméra et tout enregistreur GPS externe est essentielle pour les flux de travail de géotaggage post-hoc. Les caméras avec réglages manuels de l’heure peuvent dériver de plusieurs secondes par jour en raison des inexactitudes de l’oscillateur à cristal de quartz (dérive typique : 1–5 secondes par jour). Pour un drone se déplaçant à 15 m/s, une erreur d’horloge de 5 secondes produit un décalage de position de 75 mètres dans la direction du mouvement. La synchronisation NTP (Network Time Protocol) avant le vol, le réglage automatisé de l’heure de la caméra via l’application compagnon (DJI Pilot, DJI Fly) ou l’horodatage basé sur GPS via le récepteur GPS intégré de la caméra éliminent cette source d’erreur. La procédure recommandée est de synchroniser l’horloge de la caméra au temps GPS immédiatement avant le vol d’inspection, vérifiant le décalage contre le temps GPS en comparant DateTimeOriginal dans une photo de test avec l’horodatage GPS. Un décalage de plus de 1 seconde doit être corrigé avant de procéder à l’inspection.

Le stockage et le transfert des métadonnées EXIF nécessitent des précautions. Copier les photos de la carte SD d’un drone via câble USB préserve complètement les métadonnées (copie au niveau du fichier, pas de ré-encodage), tout comme la lecture directe de la carte via un lecteur de carte SD. Les services de téléchargement cloud (Google Photos, Apple iCloud, Dropbox) peuvent supprimer les métadonnées GPS pendant la compression ou la transcodification, particulièrement lorsque le service convertit entre les formats (HEIC en JPEG) ou re-compresse à une qualité inférieure (le ré-encodage JPEG supprime les données APP1/EXIF à moins d’être explicitement préservé). Le transfert de fichiers via des applications de messagerie (WhatsApp, iMessage, Telegram) supprime presque toujours les métadonnées EXIF, y compris le GPS, comme mesure de confidentialité, WhatsApp met spécifiquement à zéro le segment APP1 pendant la compression d’image. Pour les flux de travail d’inspection, le transfert physique direct du support de stockage SD/microSD ou le téléchargement SFTP/FTPS des fichiers originaux (non modifiés) est recommandé pour préserver l’intégrité EXIF.

Les réglementations sur la confidentialité dans certaines juridictions restreignent la collecte et le stockage des données de géolocalisation des photographies. Le RGPD en Europe, la LGPD au Brésil et le CCPA en Californie imposent des obligations aux contrôleurs de données d’informer les sujets sur la collecte de données de localisation et de fournir des mécanismes de suppression des données. Pour les inspections d’aérodrome menées sur des aérodromes opérationnels, ces réglementations ne s’appliquent typiquement pas car les données concernent l’infrastructure plutôt que des individus. Cependant, les équipes d’inspection doivent être conscientes que les photos contenant des métadonnées GPS de leur emplacement tout au long de la journée de travail pourraient être soumises à des demandes de protection des données si les photos incluent des individus (par ex., membres de l’équipe au sol, personnel de maintenance), auquel cas les photos doivent être traitées selon les mêmes règles que toute autre donnée personnelle.

Foire aux questions

Quelle est la différence entre le GPS EXIF et les coordonnées GPS classiques ?
Les coordonnées GPS EXIF sont stockées dans les métadonnées du fichier image en utilisant un format spécifique défini par la norme EXIF JEITA/CIPA. Bien que le système de coordonnées sous-jacent soit le même datum WGS84 utilisé par le GPS grand public, le GPS EXIF stocke la latitude et la longitude sous forme de trois nombres rationnels séparés (degrés, minutes, secondes) plutôt qu'une seule valeur décimale. La spécification EXIF exige également une balise de référence d'hémisphère (N/S pour la latitude, E/O pour la longitude) pour déterminer le signe. De plus, le GPS EXIF inclut des champs supplémentaires tels que la référence d'altitude, l'horodatage UTC, le nom du datum géodésique et la méthode de positionnement qui ne font généralement pas partie des phrases NMEA GPS brutes.
Pourquoi ma photo de drone ne contient-elle pas de données GPS ?
Les données GPS peuvent manquer dans les photos de drone pour plusieurs raisons. Le drone peut avoir été allumé à l'intérieur ou dans une zone avec une mauvaise réception satellite, empêchant un verrouillage GPS avant le décollage. Certains modèles de drones grand public dans certaines versions de firmware n'écrivent pas les coordonnées GPS dans l'EXIF par défaut. Les logiciels de traitement d'image (Adobe Lightroom, Capture One) peuvent supprimer les métadonnées GPS lors de l'exportation s'ils sont configurés pour retirer les données de localisation. Le format d'image peut ne pas prendre en charge l'EXIF (certains formats RAW utilisent des sections de métadonnées propriétaires). Enfin, si l'image a été extraite d'une trame vidéo plutôt que capturée comme photo fixe, elle ne contiendra pas de GPS EXIF à moins que la télémétrie n'ait été intégrée séparément.
Quelle est la précision des données GPS EXIF des drones grand public par rapport aux systèmes RTK ?
La précision GPS des drones grand public varie généralement de 1 à 5 mètres horizontalement dans des conditions optimales (ciel ouvert, satellites suffisants). Cela est adéquat pour l'organisation générale des photos et la cartographie approximative. Les systèmes RTK (Real-Time Kinematic), disponibles sur les drones d'entreprise comme le DJI Matrice 4E ou le Mavic 3 Enterprise avec le module RTK, atteignent une précision horizontale de 1 à 3 centimètres en appliquant des corrections en temps réel depuis une station de base. La précision verticale est moins bonne pour les deux : le GPS grand public peut être décalé de 5 à 15 mètres, tandis que le RTK atteint environ 3 à 5 centimètres verticalement. Pour les applications d'inspection d'aérodrome nécessitant une localisation précise des défauts, les drones équipés RTK offrent une précision de niveau topographique, bien que le GPS grand public permette toujours une navigation photo cartographique utile.
Les données GPS EXIF peuvent-elles être modifiées ou ajoutées après la prise de la photo ?
Oui, les données GPS EXIF peuvent être ajoutées, modifiées ou supprimées des fichiers image après la capture en utilisant des outils de métadonnées spécialisés. ExifTool par Phil Harvey est l'utilitaire en ligne de commande le plus utilisé à cette fin, prenant en charge le géotaggage par lots de milliers de photos à partir de fichiers de journal de trace GPS. Adobe Lightroom et Bridge offrent des capacités de géotaggage intégrées. Des outils en ligne comme GeoTag.world fournissent une édition GPS basée sur navigateur. L'analyse médico-légale doit noter que les horodatages GPS EXIF peuvent être modifiés, donc des preuves corroborantes provenant de journaux de vol ou de traces GPS indépendantes sont recommandées lorsque l'intégrité des données est critique.
Quel format de coordonnées le GPS EXIF utilise-t-il et comment le convertir en degrés décimaux ?
Le GPS EXIF stocke la latitude et la longitude sous forme de trois nombres rationnels (fractionnaires) non signés séparés représentant les degrés, les minutes et les secondes. Une balise associée (GPSLatitudeRef/GPSLongitudeRef) enregistre l'hémisphère comme un caractère unique (N/S/E/O). Pour convertir en degrés décimaux : Décimal = Degrés + (Minutes/60) + (Secondes/3600). Appliquez un signe négatif pour les latitudes Sud et les longitudes Ouest. Par exemple, une latitude stockée comme [40/1, 45/1, 3000/100] signifie 40 degrés, 45 minutes, 30,00 secondes, ce qui se convertit en 40 + 45/60 + 30/3600 = 40,7583 degrés. La plupart des bibliothèques logicielles, y compris Pillow de Python et ExifTool, gèrent cette conversion automatiquement.

Ceci est une entrée de référence. TarmacView fournit des services d'inspection par drone et ne vend pas l'équipement ou les matériaux décrits dans ce glossaire.

Commencer Besoin de vérifier l'éclairage de votre aérodrome ? TarmacView inspecte l'éclairage PAPI, de piste et d'approche par drone, entre les mouvements d'aéronefs, et fournit un rapport de conformité conçu pour votre régulateur. L'inspection de la chaussée et des obstacles est en développement.