Et bien apparement ma config JOSM n’arrive pas à correctement lire les coordonnées en sortie du script, qui sont des les exifs.
Alors que dans Panoramax il n’y a pas de soucis.
Avant (mauvais positionnement)
Après (bon positionnement)
La seule différence se trouve dans l’écriture des coordonnées dans les exifs :
Dans ton script :
def set_timestamp(filename, epoch, lat, lon, direction, speed):
...
gps = {
piexif.GPSIFD.GPSVersionID: (2, 0, 0, 0),
piexif.GPSIFD.GPSMapDatum: 'WGS-84',
piexif.GPSIFD.GPSLatitudeRef: 'N' if lat>=0 else 'S',
piexif.GPSIFD.GPSLatitude: (int(abs(lat) * 1000000), 1000000),
piexif.GPSIFD.GPSLongitudeRef: 'E' if lon>=0 else 'W',
piexif.GPSIFD.GPSLongitude: (int(abs(lon) * 1000000), 1000000),
...
}
...
La fonction mis à jour par Perplexity :
def decimal_to_dms_rational(decimal):
degrees = int(abs(decimal))
minutes_float = (abs(decimal) - degrees) * 60
minutes = int(minutes_float)
seconds = (minutes_float - minutes) * 60
frac = Fraction(seconds).limit_denominator(1000000)
return ((degrees, 1), (minutes, 1), (frac.numerator, frac.denominator))
Un tableau des différences :
Et cette modification m’a permis de retrouver le bon positionnement des photos dans JOSM ![]()
J’espère que mes explications sont assez clair, j’ai utilisé Perplexity pour essayer de trouver une solution faute de compétence sur cette thématique, mais je pense qu’il y a moyen de faire ça plus proprement ![]()
Même si en regardant les exifs il n’y a pas plus de différence.
Mais c’est le seul paramètre qui semble correctement fonctionne dans JOSM. Sinon pour info, remettre les coordonnées en EPSG 2154 ça fonctionne aussi ![]()







