+ Le chant du vario +

Forum de parapente

28 Mars 2024 - 18:01:06 *
Bienvenue, Invité. Veuillez vous connecter ou vous inscrire.
Avez-vous perdu votre mot de passe ?
Avez-vous perdu votre courriel d'activation?

Connexion avec identifiant, mot de passe et durée de la session
  Site   forum   Aide Groupes Calendrier Identifiez-vous Inscrivez-vous        GPS2GE Balises  
Pages: 1 [2]  Toutes   Bas de page
  Imprimer  
Auteur Fil de discussion: Outil de recherche de vols CFD (SIG / BdD géospatiales)  (Lu 18751 fois)
0 Membres et 1 Invité sur ce fil de discussion.
PiRK
les_modos
plouffeur(se)
***
Hors ligne Hors ligne

Aile: None
pratique principale: autre (?)
vols: 400 vols
Messages: 30



« Répondre #25 le: 20 Octobre 2011 - 10:14:47 »

Tu veux dire qu'on considere des coordonnees spheriques  comme des coordonnées lineaires ?  effray
C'est vrai que pour ce que jeux en faire, a l'echelle de la France on peut faire une bidouille dans ton genre, mais faut voir si ca va encore marcher convenablement pour les traces GPS de la reunion  hein ?
Signaler au modérateur   parapente Enregistrée
marc
G33k, option ligne de commande
Rampant
*
Hors ligne Hors ligne

Aile: Freestyle2, Aspen2, BiStromboli
pratique principale: vol / site
Messages: 0


Aime le jus de betterave ! Plouf !


« Répondre #26 le: 20 Octobre 2011 - 10:44:51 »

Je suis pas sûr qu'on se soit compris... Mais si tu prends 2 points dont les coords sont données par (lon1, lat1) et (lon2, lat2), la distance euclidienne (sqrt( (lon2-lon1)²+(lat2-lat1)²)) te donnes bien une distance... Elle est juste pas en mètre, et tu as le droit de t'en servir très heureux. Ça va coincer dès que tu va avoir besoin de raisonner "distance classique" (en mètre, projetée sur un plan).

Mon approximation, c'est qu'une distance X calculée comme ça aura une valeur projetée constante Y. Plus la distance considérée est petite, moins ça va nous gêner. Les 2 trucs qui sont approximer:
 - la terre est ronde, pas plate
 - la terre n'est pas une sphère parfaite

Pour des distance de 50m, je doute que ça vienne perturber nos calculs. Très souvent les calculs qu'on croisent font l'approximation que la terre est une sphère, ça ne choque personne (à juste titre). Ce genre d'approximation est par contre gênante si tu cherches à calculer la vitesse de neutrinos. Les parapente, je pense que ça va aller Sourire

Utiliser des coordonnées sphérique "comme ci" c'était des coordonnées linéaire, ça marche pour plein de chose... tant que tu n'a pas besoin de la distance projetée au sol. Si tu regardes par exemple la bibliothèque "shapely" (souvent utilisée avec des coords sphériques), c'est ce qui se passe.
Signaler au modérateur   parapente Enregistrée

Hub
zéroteur (se)
****
Hors ligne Hors ligne

Aile: Hook2 + Escape airbag
pratique principale: apprends à voler
vols: env. 350 vols
Messages: 69



« Répondre #27 le: 20 Octobre 2011 - 11:33:48 »

Donner comme tu le suggères, le même poids relatif aux minutes de latitude et aux minutes de longitude dans un calcul de distance est suffisamment OK pour une 1ère approximation, tant qu'on ne monte pas dans des latitudes importantes.

Plus près des pôles, on peut franchir des milliers de minutes de longitude en un seul pas.

C'est pourquoi la formule "correcte" utilise plutôt : (lon2-lon1)/cos(lat moyenne)
Signaler au modérateur   parapente Enregistrée

Il faut être fou pour sauter d'une montagne en parfait état de marche.
marc
G33k, option ligne de commande
Rampant
*
Hors ligne Hors ligne

Aile: Freestyle2, Aspen2, BiStromboli
pratique principale: vol / site
Messages: 0


Aime le jus de betterave ! Plouf !


« Répondre #28 le: 20 Octobre 2011 - 11:37:57 »

Effectivement, je n'y avais pas pensé Sourire
Signaler au modérateur   parapente Enregistrée

PiRK
les_modos
plouffeur(se)
***
Hors ligne Hors ligne

Aile: None
pratique principale: autre (?)
vols: 400 vols
Messages: 30



« Répondre #29 le: 20 Octobre 2011 - 11:44:56 »

Le soucis c'est qu'un degre de longitude a une longueur variable et generalement differente d'un degre de latitude, donc ca va introduire de l'anisotropie dans la simplification, je vais avoir moins de precision dans la direction Nord-Sud que dans la direction Est-Ouest. Et c'est pas negligeable, en France ca fait un rapport de 1/1.42.
http://www.paraglidingforum.com/xcplanner/?location=Fiesch&flightType=cfd2&turnpoints=[[45.0,5.5],[46.0,5.5]]
http://www.paraglidingforum.com/xcplanner/?location=Fiesch&flightType=cfd2&turnpoints=[[45.25,6.0],[45.25,5.0]]

Au minimum il faudrait multiplier toutes les longitudes par le sinus cosinus de la latitude.

EDIT : grillé par Hub
Signaler au modérateur   parapente Enregistrée
marc
G33k, option ligne de commande
Rampant
*
Hors ligne Hors ligne

Aile: Freestyle2, Aspen2, BiStromboli
pratique principale: vol / site
Messages: 0


Aime le jus de betterave ! Plouf !


« Répondre #30 le: 20 Octobre 2011 - 11:57:36 »

Dans ce cas, le mieux (je pense) est de projeter tes données avant de faire le calcul, mais ça risque de te coûter assez chers et il va falloir choisir la projection judicieusement en fonction des données traitées.

Et cette imprécision, ça va donner quoi au final tu penses ? J'ai du mal à voir l'impact que ça peut avoir sur la simplification des données.
Signaler au modérateur   parapente Enregistrée

PiRK
les_modos
plouffeur(se)
***
Hors ligne Hors ligne

Aile: None
pratique principale: autre (?)
vols: 400 vols
Messages: 30



« Répondre #31 le: 20 Octobre 2011 - 13:23:41 »

Et cette imprécision, ça va donner quoi au final tu penses ? J'ai du mal à voir l'impact que ça peut avoir sur la simplification des données.

Si je convertissais 1 m en x degrés en me basant uniquement sur les degrés de latitude, avec une tolerance de 100 m j'aurais effectivement une tolerance de 100 m dans la direction N-S mais une tolerance de seulement 70 m dans la direction E-W parcequ'un point situé  x degrés de longitude d'une ligne N-S seraient considéré comme étant 100 m alors qu'il n'est  qu'a 70 m (et dans une direction intermediaire, ca serait une valeur intermediaire entre 70 et 100). Ca serait pas critique, mais par rapport a la simplification rigoureuse on perdrait en efficacité si on se base sur la direction N-S pour la conversion m<->degrés et on perdrait en précision si on se base sur la direction E-W.
Signaler au modérateur   parapente Enregistrée
Hub
zéroteur (se)
****
Hors ligne Hors ligne

Aile: Hook2 + Escape airbag
pratique principale: apprends à voler
vols: env. 350 vols
Messages: 69



« Répondre #32 le: 20 Octobre 2011 - 13:34:39 »

C'est quand même pas la mort de diviser par un cos(lat1+lat2/2) précalculé, pour avoir une distance plus "correcte" ?
Signaler au modérateur   parapente Enregistrée

Il faut être fou pour sauter d'une montagne en parfait état de marche.
Hub
zéroteur (se)
****
Hors ligne Hors ligne

Aile: Hook2 + Escape airbag
pratique principale: apprends à voler
vols: env. 350 vols
Messages: 69



« Répondre #33 le: 20 Octobre 2011 - 13:35:56 »

[je veux dire cos(latmin+latmax/2) bien sûr, pas la peine de recaculer le bazar pour tous les points]
Signaler au modérateur   parapente Enregistrée

Il faut être fou pour sauter d'une montagne en parfait état de marche.
PiRK
les_modos
plouffeur(se)
***
Hors ligne Hors ligne

Aile: None
pratique principale: autre (?)
vols: 400 vols
Messages: 30



« Répondre #34 le: 20 Octobre 2011 - 13:51:37 »

C'est quand même pas la mort de diviser par un cos(lat1+lat2/2) précalculé, pour avoir une distance plus "correcte" ?
Oui, c'est une solution simple qui va bien marcher (sauf pour la Reunion et la Polynesie). Mais rien que pour le plaisir de faire un peu d'algorithmique, je reprogrammerais bien un Douglas-Peucker avec la distance rigoureuse en coordonnees geographiques. On verra si j'ai le temps. Pour ce qui est de la performance qui sera probablement degradee, c'est pas tres grave vu qu'on parle d'un bout de code qui ne sera appliqué qu'une seule fois au moment de charger les traces dans la base de donnees. Au lieu de 2 heures ca va prendre 6h, juste le temps d'aller faire un cross et de revenir en stop  parapente .
Signaler au modérateur   parapente Enregistrée
thanjuzo
Rampant
*
Hors ligne Hors ligne

Aile: Alpina4, X'Alps GTO / Kolibri (was Promise, Spirit, Aspen, Aspen2, XC2, Delta2, Alpina2)
pratique principale: vol / site
vols: since 1997 vols
Messages: 1




WWW
« Répondre #35 le: 20 Octobre 2011 - 22:32:57 »

Si vous voulez du millimètre, c'est ceci qu'il vous faut :
http://geodesie.ign.fr/contenu/fichiers/Calcul_distance_volOiseau.pdf

 vol initiation
Signaler au modérateur   parapente Enregistrée

Hub
zéroteur (se)
****
Hors ligne Hors ligne

Aile: Hook2 + Escape airbag
pratique principale: apprends à voler
vols: env. 350 vols
Messages: 69



« Répondre #36 le: 20 Octobre 2011 - 22:55:47 »

C'est quand même pas la mort de diviser par un cos(lat1+lat2/2) précalculé, pour avoir une distance plus "correcte" ?
Oui, c'est une solution simple qui va bien marcher (sauf pour la Reunion et la Polynesie).
Bah pourquoi ça marcherait pas pour léziles? 
Ca marche pour toute distance entre 2 points quelconques pas "trop" éloignés l'un de l'autre, en divisant le delta-longitude par le cosinus de la latitude moyenne de ces 2 points.
Mébon, je n'ai ptêt pas comprite la distance que tu veux calculer, c'est bien possible que ça marche pas trop bien pour la distance entre la métropole et léziles.
Signaler au modérateur   parapente Enregistrée

Il faut être fou pour sauter d'une montagne en parfait état de marche.
PiRK
les_modos
plouffeur(se)
***
Hors ligne Hors ligne

Aile: None
pratique principale: autre (?)
vols: 400 vols
Messages: 30



« Répondre #37 le: 21 Octobre 2011 - 00:04:14 »

J'avais dans l'idee de faire la bidouille en prenant une latitude moyenne pour toute la France, donc j'aurais ete oblige d'en definir une autre pour leziles.
Signaler au modérateur   parapente Enregistrée
Hub
zéroteur (se)
****
Hors ligne Hors ligne

Aile: Hook2 + Escape airbag
pratique principale: apprends à voler
vols: env. 350 vols
Messages: 69



« Répondre #38 le: 21 Octobre 2011 - 08:37:24 »

Ah OK, vu.  Je pensais (je n'ai pas lu toute la discussion) prendre une latitude moyenne pour un vol, ce qui (en l'état actuel de nos performances) ne s'étale pas sur plus de 2-3 degrés de latitude...
Signaler au modérateur   parapente Enregistrée

Il faut être fou pour sauter d'une montagne en parfait état de marche.
PiRK
les_modos
plouffeur(se)
***
Hors ligne Hors ligne

Aile: None
pratique principale: autre (?)
vols: 400 vols
Messages: 30



« Répondre #39 le: 27 Octobre 2011 - 02:16:17 »

J'ai les resultats suivants :
* sur mes ~ 14500 traces GPS, j'ai un total de 43 millions de points
* si je decime en prenant pour critere un minimum de 10 secondes entre 2 points, j'ai 15 M de points
* si je decime en prenant pour critere un minimum de 20 secondes entre 2 points, j'ai  8 M de points
* si je decime en prenant pour critere un minimum de 50 metres entre 2 points, j'ai 18 M de points
* si je decime en prenant pour critere un minimum de 100 m entre 2 points, j'ai 9 M de points
* si je decime en prenant pour critere un minimum de 150 m entre 2 points, j'ai 6 M de points
* si je decime en prenant pour critere un minimum de 200 m entre 2 points, j'ai 4.6 M de points
* si je decime en prenant pour critere un minimum de 300 m entre 2 points, j'ai 3 M de points
* si je decime en prenant pour critere un minimum de 400 m entre 2 points, j'ai 2.3 M de points
* si je decime en prenant pour critere un minimum de 500 m entre 2 points, j'ai 1.8 M de points
 

Et avec une simplifcation de Douglas-Peucker:
* tolerance 10 m : 15.0 M de points (~34.4 % du nombre initial)
* tolerance 25 m : 9.5 M de points (~21.8 %)
* tolerance 50 m : 4.4 M de points (~10.1 %)
* tolerance 75 m : 2.4 M de points (~5.5 %)
* tolerance 100 m : 1.6 M de points (~3.7 %)
* tolerance 150 m : 1 M de points (~2.3 %)
* tolerance 200 m : 0.7 M de points (~1.7 %)
* tolerance 500 m : 0.3 M de points (~ 0.67 %)



C'est mucho bueno ! A 10 m de tolerance on divise deja le nombre de points par 3 ! Je vais essayer de charger les traces avec une tolerance de 75 m pour voir de combien ca ameliore la vitesse de la recherche.

Pour le calcul de la distance j'ai corrigé la longitude avec la latitude moyenne du vol comme tu le suggerais, Hub. La distance du grand cercle c'est plus complique que ce que je croyais, il ne suffit pas de connaitre la formule entre deux points, il faut aussi trouver la distance du grand cercle entre un point et un autre grand cercle et ca fait mal a la tete.
« Dernière édition: 28 Octobre 2011 - 04:25:13 par PiRK » Signaler au modérateur   parapente Enregistrée
PiRK
les_modos
plouffeur(se)
***
Hors ligne Hors ligne

Aile: None
pratique principale: autre (?)
vols: 400 vols
Messages: 30



« Répondre #40 le: 01 Novembre 2011 - 02:15:25 »

J'ai une carte pour la recherche maintenant. Voila a quoi ca ressemble pour l'instant :


Uploaded with ImageShack.us

Il faut encore que je corrige ma liste de vols, j'ai un paquet de vols qui ne sont pas assignés aux bonnes traces GPS. Je vais peut-être aussi ajouter d'autres options de recherche (intervalle de dates, distance mini, nom du pilote, tri par date...).  Pour le côté bling-bling on peut éventuellement aussi envisager d'afficher quelques-uns des premiers vols de la liste sur la carte, même si ca sera pas très intéressant (pas de données d'altitude pour le moment) et que le but est plutôt de fournir les liens vers le site de la FFVL.
Signaler au modérateur   parapente Enregistrée
marc
G33k, option ligne de commande
Rampant
*
Hors ligne Hors ligne

Aile: Freestyle2, Aspen2, BiStromboli
pratique principale: vol / site
Messages: 0


Aime le jus de betterave ! Plouf !


« Répondre #41 le: 01 Novembre 2011 - 09:36:57 »

Si tu convertis les traces en GPX et que tu les mets sur ton site web dans un coin, Openlayer peut les afficher gratuitement sur ta carte Sourire Bravo !
Signaler au modérateur   parapente Enregistrée

ttamttam
Rampant
*
Hors ligne Hors ligne

Aile: Blacklight
pratique principale: vol / site
vols: 380 vols
Messages: 0


Les canards sont stupides !


« Répondre #42 le: 01 Novembre 2011 - 12:48:27 »

Au cas où, voici un lien vers une page que j’ai trouvée assez complète :

http://www.movable-type.co.uk/scripts/latlong.html

Désolé pour ceusses qui ne pratiquent pas la langue anglaise.

Sportivement (ou pas)
Signaler au modérateur   parapente Enregistrée
marc
G33k, option ligne de commande
Rampant
*
Hors ligne Hors ligne

Aile: Freestyle2, Aspen2, BiStromboli
pratique principale: vol / site
Messages: 0


Aime le jus de betterave ! Plouf !


« Répondre #43 le: 02 Novembre 2011 - 18:41:28 »

J'ai été fouillé un peu mon code pour voir quelle approximation je fais, et si je risque le problème cité plus haut (suivant la latitude, l'approximation passe d'insignifiante à pas pas du tout insignifiante Mr. Green), et j'ai vu que je ne faisais pas ce dont je me rappelais Sourire
Mon "pas" X d'interpolation est un angle, dont je me sers pour trouver "le point situé à une distance X d'un point P" le long d'un trajet. Je ne me soucis pas de la localisation précise, c'est sensé être géré par les couches inférieures (GEOS en l’occurrence). En principe, il pousse même jusqu'à utiliser un modèle non sphérique de la Terre, mais j'avoue être passé un peu vite là dessus, je lui fais confiance... Et puis de toute façon, en principe, aucun calcul n'a besoin de projection...

Bref, finalement, j'ai peut être pas fait tant de la me*** que ça  Mr. Green  trinquer
Signaler au modérateur   parapente Enregistrée

Seb26
Rampant
*
Hors ligne Hors ligne

Aile: Zeno, Aspen3, Beta6, Wild
pratique principale: cross
vols: 900 vols
Messages: 0



« Répondre #44 le: 12 Juin 2014 - 12:54:43 »


Ta base de recherche est-elle accessible?
Il existe en effet une recherche qui m'intéresserait bien mais qui n'est pas possible sur le site de la cfd: identifier les traces passant à proximité d'un point (dans la cfd il n'est question que de site de décollage ou de département de décollage).

Signaler au modérateur   parapente Enregistrée
PiRK
les_modos
plouffeur(se)
***
Hors ligne Hors ligne

Aile: None
pratique principale: autre (?)
vols: 400 vols
Messages: 30



« Répondre #45 le: 12 Juin 2014 - 16:35:23 »

Je n'ai jamais mis le truc en ligne. Le programme fait quelques dizaines de lignes de code et traine sur un vieux netbook. Pour le mettre sur le net il faudrait un bout de serveur bien configuré et quelques compétences additionnelles (je crois que ce qui coinçait pour moi c'était l'installation du plugin apache pour faire tourner du python).
Signaler au modérateur   parapente Enregistrée
Seb26
Rampant
*
Hors ligne Hors ligne

Aile: Zeno, Aspen3, Beta6, Wild
pratique principale: cross
vols: 900 vols
Messages: 0



« Répondre #46 le: 13 Juin 2014 - 07:54:00 »

Je n'ai jamais mis le truc en ligne. Le programme fait quelques dizaines de lignes de code et traine sur un vieux netbook. Pour le mettre sur le net il faudrait un bout de serveur bien configuré et quelques compétences additionnelles (je crois que ce qui coinçait pour moi c'était l'installation du plugin apache pour faire tourner du python).

Ah ok, sinon, il faudrait peut être voir avec la fédé ou plutôt ceux qui gèrent les quelques applis autour de la cfd pour voir s'il n'y aurait pas moyen d'intégrer ta moulinette sur le site cfd...
Signaler au modérateur   parapente Enregistrée
PiRK
les_modos
plouffeur(se)
***
Hors ligne Hors ligne

Aile: None
pratique principale: autre (?)
vols: 400 vols
Messages: 30



« Répondre #47 le: 13 Juin 2014 - 21:06:03 »

Il faut que je remette le nez dans le projet. Peut-être que si j'arrive à retrouver tous les morceaux (du chargement de traces GPS dans la base de données à l'affichage d'une carte pour dessiner les zones de recherche) et à documenter tout ça proprement, on pourrait peut-être convaincre le webmaster du site de la FFVL de le faire tourner et de mettre en place une mise à jour régulière des traces GPS pour rajouter les nouveaux vols au fur et à mesure.
Signaler au modérateur   parapente Enregistrée
marc
G33k, option ligne de commande
Rampant
*
Hors ligne Hors ligne

Aile: Freestyle2, Aspen2, BiStromboli
pratique principale: vol / site
Messages: 0


Aime le jus de betterave ! Plouf !


« Répondre #48 le: 13 Juin 2014 - 21:16:45 »

On en parle début de semaine PiRK. Sinon, on se fait ça sur mon serveur Sourire
Signaler au modérateur   parapente Enregistrée

Seb26
Rampant
*
Hors ligne Hors ligne

Aile: Zeno, Aspen3, Beta6, Wild
pratique principale: cross
vols: 900 vols
Messages: 0



« Répondre #49 le: 14 Juin 2014 - 12:24:15 »


Cool  pouce
Signaler au modérateur   parapente Enregistrée
Pages: 1 [2]  Toutes   Haut de page
  Imprimer  
 
Aller à:  

parapente gratuit
Propulsé par MySQL Propulsé par PHP Powered by SMF 1.1.19 | SMF © 2006, Simple Machines XHTML 1.0 Transitionnel valide ! CSS valide !
Page générée en 0.107 secondes avec 22 requêtes.