


[D +] Grosse différence avec autres logicielsBonjour
Le même GPX ouvert dans VisuGPX indique +1144m de D+ avec les données d'origine, puis +1004m en lui demandant de remplacer les données d'altitude, mais… +2183m (!) dans GpsPrune et GPSVisualizer (données SRTM).
Pourquoi une telle différence, qui n'a rien de mineure quand on se déplace à la force des mollets ?
Qui croire ?
Merci.
[8902 posts] - Le 07/08/2022 14:25Bonjour, question maintes et maintes fois débattue, vous pourrez trouver plein d'éléments de réponse en parcourant le forum.
Qui croire ? Visugpx bien sûr 😜
Personnellement entre mes tracés (base alti donc) et mes activités (enregistrées avec gps baro), j'ai toujours moins de 5% d'erreur, généralement 1 ou 2%.
Pour apporter une réponse un peu plus complète, le résultat de l'analyse va dépendre de la fiabilité des données d'entrée. Un gps barométrique est beaucoup beaucoup plus fiable. Sinon un recalage s'impose. Visugpx utilise par défaut une base alti Europe bien plus fiable que celle du srtm (qui est aussi utilisée par Visu, mais pour le reste du monde). Visugpx applique aussi par défaut un filtre qui lisse les altitudes et ajoute un seuil sur le calcul du dénivelé. Ça permet de corriger une entrée peu fiable.
Auriez vous l'adresse de la trace hébergée sans correction d'altitude, que je puisse regarder ça plus précisément ?
Cdlt
Merci beaucoup pour l'info.
Le parcours dessiné avec BRouter : https://we.tl/t-lhzP8iWyOA
Je profite du fil : serait-il possible d'appeler VisuGPX d'un script en commande en ligne pour corriger les données d'altitude?
Pseudo-code:
==========
import requests
myurl = 'https://www.visugpx.com/elevation'
files = {'file': open('input.gpx', 'rb')}
getdata = requests.post(myurl, files=files)
with open('output.gpx', 'w') as f:
f.write(getdata.text))
==========
[8902 posts] - Le 07/08/2022 16:58Gilles a dit :Merci beaucoup pour l'info.
Le parcours dessiné avec BRouter : https://we.tl/t-lhzP8iWyOA
Ok merci,
Votre trace originale est ici https://www.visugpx.com/pTGNW6WRon et je l'ai enregistrée par défaut sans calcul de seuil ni de lissage : les dénivelés sont calculés simplement en ajoutant les altitudes quand ça monte ou quand ça descend, sans aucun traitement, et on trouve... 2183 mètres. Donc GpsPrune et GPSVisualizer n'appliquent aucun traitement sur le calcul des dénivelé, rendant le résultat bien surestimé. Pourquoi ? parce que les données d'altitudes sont mauvaises. Regardez la courbe du profil, principalement entre les km 35 et 45, vous verrez qu'elles est complètement bruitée : le dénivelé "brut" sur cette section est de 450m de dénivelé, alors que la route est en fait certainement plate (ou presque....).
Si vous appelez la trace originale avec un faible traitement des altitudes (seuil 10 mètres / lissage sur 5 points) vous avez ça : https://www.visugpx.com/pTGNW6WRon?f=1 : D+ 1144m, et plus que 100m sur la portion 35/45km. Vous pouvez voir que le profil est déjà bien plus lissé. Vous pouvez aussi appeler un correction plus importante avec les paramètres f=2 ou f=3.
Si vous passez la trace au recalace d'altitude utilisé par VisuGPX, vous avez le résultat ici (toujours enregistré sans lissage ni seuil pour le calcul des denivelé) https://www.visugpx.com/RjypwREkpm Donc déjà on trouve 1495m de D+ (et 166m sur la portion allant du 35eme au 45eme km), un profil déjà bien plus propre donc (alors que pas corrigé). Seul défaut au niveau du km 98, mais c'est complètement normal car la trace passe dans un tunnel, et le recalage la projette sur le relief réel. Personnellement quand ça arrive, je gomme les points dans le tunnel (pour ça EditGPX est magique).
Si vous appliquez un filtre sur la trace recalée, ça donne ça https://www.visugpx.com/RjypwREkpm?f=1 : D+ 1004m, et 0m sur la portion entre les km 35 et 45, ce qui me semble bien cohérent.
Pour info j'ai réalisé une partie de cet itinéraire cette année, enregistré avec un GPS baro. Les données brutes sont ici : https://www.visugpx.com/iULkwL4JYa?f=0 . Si vous prenez la partie commune, entre le lac de lamoura et lajoux, le GPS donne 36m (pour l'afficher, touche CTRL + sélectionnez la zone sur le profil). On va donc considérer que c'est la valeur étalon. La trace originale non filtrée donne 57mètres (soit près du double), la trace recalée sur visu (mais non filtrée) donne 32 mètres 😎
Donc je confirme, que ce soit au niveau de l'estimation des dénivelé ou du recalage des altitudes, VisuGPX gagne par KO 😁
[8902 posts] - Le 07/08/2022 17:02Je ne sais pas s'il est possible de réaliser un script pour appeler directement visu, car c'est une application web (qui tourne sous un navigateur), et pas une application autonome.
Sous Windows 11, vous pouvez cependant ouvrir directement vos traces GPS dans VisuGPX https://www.visugpx.com/forum/read_15833.html?goto=15839#goto
Ensuite en un clic vous pouvez recaler, puis en un autre clic exporter, ce n'est donc pas très long.
Merci beaucoup pour les explications.
Il est tout à fait possible d'interagir avec une appli web à partir d'autre chose que d'un navigateur. C'est juste un peu de développement côté serveur et n'intéresse probablement pas énormément de gens. C'était juste une idée, vu la non-fiabilité des autres sites pour obtenir des altitudes.
En l'occurence, la fonction accepterait simplement un fichier (éventuellement zippé, comme GPSVisuliser), remplacerait/ajouterait les infos d'altitude, et renverrait le résultat.
Exemple ; www.php.net/manual/en/features.file-upload.post-method.php
[8902 posts] - Le 07/08/2022 20:15Alors oui, je me suis un peu emmêlé les pinceaux mais ce que je voulais dire c'est que ça se fera obligatoirement en ligne.
Tu peux passer par cURL, en ligne de commande, avec une clé API à demander dans la page de modification de ton profil
Exemple :
curl -X POST -H "cle: ta_cle_api" -F "gpx=@d:fichier_a_recaler.gpx" -o "d:fichier_recale.gpx" "https://www.visugpx.com/api/recaler"
La requête enverra ton fichier_a_recaler.gpx qui se trouve à la racine de d: et tu récupéreras un fichier_recale.gpx au même endroit.
Cdlt
Super.
Par contre, j'ai fait plusieurs essais, ça coince avec le chemin du fichier :
C:curl.exe -X POST -H "cle:Av7A…3Vhx" -F "gpx=input.gpx" -o "output.gpx" "https://www.visugpx.com/api/recaler"
{"ERROR": "NO FILE"}
C:curl.exe -X POST -H "cle:Av7A…3Vhx" -F "gpx=.input.gpx" -o ".output.gpx" "https://www.visugpx.com/api/recaler"
{"ERROR": "NO FILE"}
C:curl.exe -X POST -H "cle:Av7A…3Vhx" -F "gpx=c:TempVisuGPXinput.gpx" -o "c:TempVisuGPXoutput.gpx" "https://www.visugpx.com/api/recaler"
{"ERROR": "NO FILE"}
L'édition du message ne fonctionne pas, donc je rajoute : le serveur vire les backslashes, mais ils y sont bien dans mes tests.
C'est bon : il manquait le @ avant le fichier d'entrée. Il n'est même pas nécessaire d'indiquer un chemin si le fichier se trouver dans le répertoire local :
curl.exe -X POST -H "cle:Av7A…Vhx" -F "gpx=@input.gpx" -o "output.gpx" "https://www.visugpx.com/api/recaler"
Merci !
Pour les gens sous Windows, un ficher batch pour simplifier l'usage :
======
@echo off
if "%~1"=="" GOTO PARAM
echo Handling %1
curl.exe -X POST -H "cle:Av7…3Vhx" -F "gpx=@%1" -o "%~n1.VisuGPX.gpx" "https://www.visugpx.com/api/recaler"
GOTO DONE
😜ARAM
echo Usage : %0 myfile.gpx
😄ONE
echo Done
======

Connectez-vous pour poster
Pour soutenir VisuGPX, faites le bon choix